@covalent/core 11.0.0-beta.2 → 11.0.0-beta.4

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":"covalent-core-side-sheet.mjs","sources":["../tmp-esm2022/side-sheet/side-sheet.animation.js","../tmp-esm2022/side-sheet/side-sheet.config.js","../tmp-esm2022/side-sheet/side-sheet-container.js","../tmp-esm2022/side-sheet/side-sheet-ref.js","../tmp-esm2022/side-sheet/side-sheet.js","../tmp-esm2022/side-sheet/side-sheet.content-directives.js","../tmp-esm2022/side-sheet/side-sheet.module.js","../tmp-esm2022/side-sheet/covalent-core-side-sheet.js"],"sourcesContent":["import { animate, state, style, transition, trigger, } from '@angular/animations';\nimport { AnimationCurves, AnimationDurations } from '@angular/material/core';\nexport const tdSideSheetAnimations = {\n /** Animation that is applied on the side-sheet container by default. */\n sideSheetContainer: trigger('sideSheetContainer', [\n state('void, exit', style({ transform: 'translateX(100%)' })),\n state('enter', style({ transform: 'translateX(0%)', opacity: 1 })),\n transition('* => enter', animate(`${AnimationDurations.ENTERING} ${AnimationCurves.ACCELERATION_CURVE}`, style({ transform: 'translateX(0)', opacity: 1 }))),\n transition('* => void, * => exit', animate(`${AnimationDurations.EXITING} ${AnimationCurves.ACCELERATION_CURVE}`, style({ transform: 'translateX(100%)' }))),\n ]),\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC5hbmltYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC5hbmltYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLE9BQU8sRUFDUCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEdBRVIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsZUFBZSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFN0UsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBRTlCO0lBQ0Ysd0VBQXdFO0lBQ3hFLGtCQUFrQixFQUFFLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRTtRQUNoRCxLQUFLLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUM7UUFDN0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEUsVUFBVSxDQUNSLFlBQVksRUFDWixPQUFPLENBQ0wsR0FBRyxrQkFBa0IsQ0FBQyxRQUFRLElBQUksZUFBZSxDQUFDLGtCQUFrQixFQUFFLEVBQ3RFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQ2xELENBQ0Y7UUFDRCxVQUFVLENBQ1Isc0JBQXNCLEVBQ3RCLE9BQU8sQ0FDTCxHQUFHLGtCQUFrQixDQUFDLE9BQU8sSUFBSSxlQUFlLENBQUMsa0JBQWtCLEVBQUUsRUFDckUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGtCQUFrQixFQUFFLENBQUMsQ0FDekMsQ0FDRjtLQUNGLENBQUM7Q0FDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYW5pbWF0ZSxcbiAgc3RhdGUsXG4gIHN0eWxlLFxuICB0cmFuc2l0aW9uLFxuICB0cmlnZ2VyLFxuICBBbmltYXRpb25UcmlnZ2VyTWV0YWRhdGEsXG59IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQW5pbWF0aW9uQ3VydmVzLCBBbmltYXRpb25EdXJhdGlvbnMgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcblxuZXhwb3J0IGNvbnN0IHRkU2lkZVNoZWV0QW5pbWF0aW9uczoge1xuICByZWFkb25seSBzaWRlU2hlZXRDb250YWluZXI6IEFuaW1hdGlvblRyaWdnZXJNZXRhZGF0YTtcbn0gPSB7XG4gIC8qKiBBbmltYXRpb24gdGhhdCBpcyBhcHBsaWVkIG9uIHRoZSBzaWRlLXNoZWV0IGNvbnRhaW5lciBieSBkZWZhdWx0LiAqL1xuICBzaWRlU2hlZXRDb250YWluZXI6IHRyaWdnZXIoJ3NpZGVTaGVldENvbnRhaW5lcicsIFtcbiAgICBzdGF0ZSgndm9pZCwgZXhpdCcsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxMDAlKScgfSkpLFxuICAgIHN0YXRlKCdlbnRlcicsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgwJSknLCBvcGFjaXR5OiAxIH0pKSxcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgJyogPT4gZW50ZXInLFxuICAgICAgYW5pbWF0ZShcbiAgICAgICAgYCR7QW5pbWF0aW9uRHVyYXRpb25zLkVOVEVSSU5HfSAke0FuaW1hdGlvbkN1cnZlcy5BQ0NFTEVSQVRJT05fQ1VSVkV9YCxcbiAgICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJywgb3BhY2l0eTogMSB9KVxuICAgICAgKVxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICcqID0+IHZvaWQsICogPT4gZXhpdCcsXG4gICAgICBhbmltYXRlKFxuICAgICAgICBgJHtBbmltYXRpb25EdXJhdGlvbnMuRVhJVElOR30gJHtBbmltYXRpb25DdXJ2ZXMuQUNDRUxFUkFUSU9OX0NVUlZFfWAsXG4gICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxMDAlKScgfSlcbiAgICAgIClcbiAgICApLFxuICBdKSxcbn07XG4iXX0=","import { MatDialogConfig } from '@angular/material/dialog';\nexport var SubPageMode;\n(function (SubPageMode) {\n SubPageMode[\"pushed\"] = \"pushed\";\n SubPageMode[\"shifted\"] = \"shifted\";\n SubPageMode[\"none\"] = \"none\";\n})(SubPageMode || (SubPageMode = {}));\nexport class CovalentSideSheetConfig extends MatDialogConfig {\n subPageMode = SubPageMode.pushed;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE1BQU0sQ0FBTixJQUFZLFdBSVg7QUFKRCxXQUFZLFdBQVc7SUFDckIsZ0NBQWlCLENBQUE7SUFDakIsa0NBQW1CLENBQUE7SUFDbkIsNEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFKVyxXQUFXLEtBQVgsV0FBVyxRQUl0QjtBQUVELE1BQU0sT0FBTyx1QkFBaUMsU0FBUSxlQUFrQjtJQUN0RSxXQUFXLEdBQVksV0FBVyxDQUFDLE1BQU0sQ0FBQztDQUMzQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hdERpYWxvZ0NvbmZpZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbmV4cG9ydCBlbnVtIFN1YlBhZ2VNb2RlIHtcbiAgcHVzaGVkID0gJ3B1c2hlZCcsXG4gIHNoaWZ0ZWQgPSAnc2hpZnRlZCcsXG4gIG5vbmUgPSAnbm9uZScsXG59XG5cbmV4cG9ydCBjbGFzcyBDb3ZhbGVudFNpZGVTaGVldENvbmZpZzxEID0gYW55PiBleHRlbmRzIE1hdERpYWxvZ0NvbmZpZzxEPiB7XG4gIHN1YlBhZ2VNb2RlPzogc3RyaW5nID0gU3ViUGFnZU1vZGUucHVzaGVkO1xufVxuIl19","import { ConfigurableFocusTrapFactory, FocusMonitor, } from '@angular/cdk/a11y';\nimport { BasePortalOutlet, CdkPortalOutlet, } from '@angular/cdk/portal';\nimport { DOCUMENT } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, Directive, ElementRef, EventEmitter, HostBinding, HostListener, Inject, Optional, ViewChild, ViewEncapsulation, } from '@angular/core';\nimport { tdSideSheetAnimations } from './side-sheet.animation';\nimport { CovalentSideSheetConfig } from './side-sheet.config';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/cdk/a11y\";\nimport * as i2 from \"./side-sheet.config\";\nfunction CovalentSideSheetContainerComponent_ng_template_0_Template(rf, ctx) { }\nexport function _getFocusedElementPierceShadowDom() {\n let activeElement = typeof document !== 'undefined' && document\n ? document.activeElement\n : null;\n while (activeElement && activeElement.shadowRoot) {\n const newActiveElement = activeElement.shadowRoot\n .activeElement;\n if (newActiveElement === activeElement) {\n break;\n }\n else {\n activeElement = newActiveElement;\n }\n }\n return activeElement;\n}\n/**\n * Base class for the `CovalentSideSheetContainer`. The base class does not implement\n * animations as these are left to implementers of the side-sheet container.\n */\nexport class _CovalentSideSheetContainerBase extends BasePortalOutlet {\n _elementRef;\n _focusTrapFactory;\n _changeDetectorRef;\n _config;\n _focusMonitor;\n _document;\n /** The portal outlet inside of this container into which the side-sheet content will be loaded. */\n _portalOutlet;\n /** The class that traps and manages focus within the side-sheet. */\n _focusTrap;\n /** Emits when an animation state changes. */\n _animationStateChanged = new EventEmitter();\n /** Element that was focused before the side-sheet was opened. Save this to restore upon close. */\n _elementFocusedBeforeSideSheetWasOpened = null;\n /**\n * Type of interaction that led to the side-sheet being closed. This is used to determine\n * whether the focus style will be applied when returning focus to its original location\n * after the side-sheet is closed.\n */\n _closeInteractionType = null;\n /** ID of the element that should be considered as the side-sheet's label. */\n _ariaLabelledBy;\n /** ID for the container DOM element. */\n _id;\n constructor(_elementRef, _focusTrapFactory, _changeDetectorRef, _document, \n /** The side-sheet configuration. */\n _config, _focusMonitor) {\n super();\n this._elementRef = _elementRef;\n this._focusTrapFactory = _focusTrapFactory;\n this._changeDetectorRef = _changeDetectorRef;\n this._config = _config;\n this._focusMonitor = _focusMonitor;\n this._ariaLabelledBy = _config.ariaLabelledBy || null;\n this._document = _document;\n }\n /** Initializes the side-sheet container with the attached content. */\n _initializeWithAttachedContent() {\n this._setupFocusTrap();\n // Save the previously focused element. This element will be re-focused\n // when the side-sheet closes.\n this._capturePreviouslyFocusedElement();\n }\n /**\n * Attach a ComponentPortal as content to this side-sheet container.\n * @param portal Portal to be attached as the side-sheet content.\n */\n attachComponentPortal(portal) {\n return this._portalOutlet.attachComponentPortal(portal);\n }\n /**\n * Attach a TemplatePortal as content to this side-sheet container.\n * @param portal Portal to be attached as the side-sheet content.\n */\n attachTemplatePortal(portal) {\n return this._portalOutlet.attachTemplatePortal(portal);\n }\n /**\n * Attaches a DOM portal to the side-sheet container.\n * @param portal Portal to be attached.\n * @deprecated To be turned into a method.\n */\n attachDomPortal = (portal) => {\n return this._portalOutlet.attachDomPortal(portal);\n };\n /** Moves focus back into the side-sheet if it was moved out. */\n _recaptureFocus() {\n if (!this._containsFocus()) {\n this._trapFocus();\n }\n }\n /**\n * Moves the focus inside the focus trap. When autoFocus is not set to 'side-sheet', if focus\n * cannot be moved then focus will go to the side-sheet container.\n */\n _trapFocus() {\n const element = this._elementRef.nativeElement;\n if (!this._config.autoFocus) {\n if (!this._containsFocus()) {\n element.focus();\n }\n }\n else {\n this._focusTrap\n .focusInitialElementWhenReady()\n .then((focusedSuccessfully) => {\n // If we weren't able to find a focusable element in the side-sheet, then focus the side-sheet\n // container instead.\n if (!focusedSuccessfully) {\n this._focusSideSheetContainer();\n }\n });\n }\n }\n /** Restores focus to the element that was focused before the side-sheet opened. */\n _restoreFocus() {\n const previousElement = this._elementFocusedBeforeSideSheetWasOpened;\n // We need the extra check, because IE can set the `activeElement` to null in some cases.\n if (this._config.restoreFocus &&\n previousElement &&\n typeof previousElement.focus === 'function') {\n const activeElement = _getFocusedElementPierceShadowDom();\n const element = this._elementRef.nativeElement;\n // Make sure that focus is still inside the side-sheet or is on the body (usually because a\n // non-focusable element like the backdrop was clicked) before moving it. It's possible that\n // the consumer moved it themselves before the animation was done, in which case we shouldn't\n // do anything.\n if (!activeElement ||\n activeElement === this._document.body ||\n activeElement === element ||\n element.contains(activeElement)) {\n if (this._focusMonitor) {\n this._focusMonitor.focusVia(previousElement, this._closeInteractionType);\n this._closeInteractionType = null;\n }\n else {\n previousElement.focus();\n }\n }\n }\n if (this._focusTrap) {\n this._focusTrap.destroy();\n }\n }\n /** Sets up the focus trap. */\n _setupFocusTrap() {\n this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);\n }\n /** Captures the element that was focused before the side-sheet was opened. */\n _capturePreviouslyFocusedElement() {\n if (this._document) {\n this._elementFocusedBeforeSideSheetWasOpened =\n _getFocusedElementPierceShadowDom();\n }\n }\n /** Focuses the side-sheet container. */\n _focusSideSheetContainer() {\n // Note that there is no focus method when rendering on the server.\n if (this._elementRef.nativeElement.focus) {\n this._elementRef.nativeElement.focus();\n }\n }\n /** Returns whether focus is inside the side-sheet. */\n _containsFocus() {\n const element = this._elementRef.nativeElement;\n const activeElement = _getFocusedElementPierceShadowDom();\n return element === activeElement || element.contains(activeElement);\n }\n static ɵfac = function _CovalentSideSheetContainerBase_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || _CovalentSideSheetContainerBase)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1.ConfigurableFocusTrapFactory), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(DOCUMENT, 8), i0.ɵɵdirectiveInject(i2.CovalentSideSheetConfig), i0.ɵɵdirectiveInject(i1.FocusMonitor)); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: _CovalentSideSheetContainerBase, viewQuery: function _CovalentSideSheetContainerBase_Query(rf, ctx) { if (rf & 1) {\n i0.ɵɵviewQuery(CdkPortalOutlet, 7);\n } if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._portalOutlet = _t.first);\n } }, features: [i0.ɵɵInheritDefinitionFeature] });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(_CovalentSideSheetContainerBase, [{\n type: Directive\n }], () => [{ type: i0.ElementRef }, { type: i1.ConfigurableFocusTrapFactory }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: i2.CovalentSideSheetConfig }, { type: i1.FocusMonitor }], { _portalOutlet: [{\n type: ViewChild,\n args: [CdkPortalOutlet, { static: true }]\n }] }); })();\n/**\n * Internal component that wraps the generated side-sheet content.\n * This animation below is the only reason for duplicating most of the Material dialog code\n */\nexport class CovalentSideSheetContainerComponent extends _CovalentSideSheetContainerBase {\n /** State of the side-sheet animation. */\n _state = 'enter';\n tdSideSheetContainerClass = true;\n tabIndex = -1;\n arialModal = true;\n idAttr = this._id;\n roleAttr = this._config.role;\n arialLabelByAttr = this._config.ariaLabel\n ? null\n : this._ariaLabelledBy;\n arialDescribeByAttr = this._config.ariaDescribedBy || null;\n arialLabelAttr = this._config.ariaLabel;\n get sideSheetAnimationState() {\n return this._state;\n }\n onAnimateStart($event) {\n this._onAnimationStart($event);\n }\n onAnimateDone($event) {\n this._onAnimationDone($event);\n }\n /** Callback, invoked whenever an animation on the host completes. */\n _onAnimationDone({ toState, totalTime }) {\n if (toState === 'enter') {\n this._trapFocus();\n this._animationStateChanged.next({ state: 'opened', totalTime });\n }\n else if (toState === 'exit') {\n this._restoreFocus();\n this._animationStateChanged.next({ state: 'closed', totalTime });\n }\n }\n /** Callback, invoked when an animation on the host starts. */\n _onAnimationStart({ toState, totalTime }) {\n if (toState === 'enter') {\n this._animationStateChanged.next({ state: 'opening', totalTime });\n }\n else if (toState === 'exit' || toState === 'void') {\n this._animationStateChanged.next({ state: 'closing', totalTime });\n }\n }\n /** Starts the side-sheet exit animation. */\n _startExitAnimation() {\n this._state = 'exit';\n this._changeDetectorRef.markForCheck();\n }\n static ɵfac = /*@__PURE__*/ (() => { let ɵCovalentSideSheetContainerComponent_BaseFactory; return function CovalentSideSheetContainerComponent_Factory(__ngFactoryType__) { return (ɵCovalentSideSheetContainerComponent_BaseFactory || (ɵCovalentSideSheetContainerComponent_BaseFactory = i0.ɵɵgetInheritedFactory(CovalentSideSheetContainerComponent)))(__ngFactoryType__ || CovalentSideSheetContainerComponent); }; })();\n static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CovalentSideSheetContainerComponent, selectors: [[\"td-side-sheet-container\"]], hostVars: 10, hostBindings: function CovalentSideSheetContainerComponent_HostBindings(rf, ctx) { if (rf & 1) {\n i0.ɵɵsyntheticHostListener(\"@sideSheetContainer.start\", function CovalentSideSheetContainerComponent_animation_sideSheetContainer_start_HostBindingHandler($event) { return ctx.onAnimateStart($event); })(\"@sideSheetContainer.done\", function CovalentSideSheetContainerComponent_animation_sideSheetContainer_done_HostBindingHandler($event) { return ctx.onAnimateDone($event); });\n } if (rf & 2) {\n i0.ɵɵdomProperty(\"tabindex\", ctx.tabIndex)(\"aria-modal\", ctx.arialModal)(\"id\", ctx.idAttr);\n i0.ɵɵsyntheticHostProperty(\"@sideSheetContainer\", ctx.sideSheetAnimationState);\n i0.ɵɵattribute(\"role\", ctx.roleAttr)(\"aria-labelledby\", ctx.arialLabelByAttr)(\"aria-describedby\", ctx.arialDescribeByAttr)(\"aria-label\", ctx.arialLabelAttr);\n i0.ɵɵclassProp(\"td-side-sheet-container\", ctx.tdSideSheetContainerClass);\n } }, features: [i0.ɵɵInheritDefinitionFeature], decls: 1, vars: 0, consts: [[\"cdkPortalOutlet\", \"\"]], template: function CovalentSideSheetContainerComponent_Template(rf, ctx) { if (rf & 1) {\n i0.ɵɵtemplate(0, CovalentSideSheetContainerComponent_ng_template_0_Template, 0, 0, \"ng-template\", 0);\n } }, dependencies: [CdkPortalOutlet], styles: [\".td-side-sheet-container{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f;display:block;padding:24px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.td-side-sheet-wrapper{display:flex;flex-direction:column;height:100%}.td-side-sheet-content{margin:0 -24px;padding:0 24px;overflow:auto;flex:1;-webkit-overflow-scrolling:touch}.td-side-sheet-title{margin:-16px 0 20px;display:flex;align-items:center}.td-side-sheet-actions{padding:8px 0;margin:0 -16px -24px;display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;box-sizing:content-box}.td-side-sheet-actions[align=end]{justify-content:flex-end}.td-side-sheet-actions[align=center]{justify-content:center}.td-side-sheet-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .td-side-sheet-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\\n\"], encapsulation: 2, data: { animation: [tdSideSheetAnimations.sideSheetContainer] } });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetContainerComponent, [{\n type: Component,\n args: [{ selector: 'td-side-sheet-container', template: ` <ng-template cdkPortalOutlet></ng-template> `, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, animations: [tdSideSheetAnimations.sideSheetContainer], imports: [CdkPortalOutlet], styles: [\".td-side-sheet-container{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f;display:block;padding:24px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.td-side-sheet-wrapper{display:flex;flex-direction:column;height:100%}.td-side-sheet-content{margin:0 -24px;padding:0 24px;overflow:auto;flex:1;-webkit-overflow-scrolling:touch}.td-side-sheet-title{margin:-16px 0 20px;display:flex;align-items:center}.td-side-sheet-actions{padding:8px 0;margin:0 -16px -24px;display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;box-sizing:content-box}.td-side-sheet-actions[align=end]{justify-content:flex-end}.td-side-sheet-actions[align=center]{justify-content:center}.td-side-sheet-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .td-side-sheet-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\\n\"] }]\n }], null, { tdSideSheetContainerClass: [{\n type: HostBinding,\n args: ['class.td-side-sheet-container']\n }], tabIndex: [{\n type: HostBinding,\n args: ['tabindex']\n }], arialModal: [{\n type: HostBinding,\n args: ['aria-modal']\n }], idAttr: [{\n type: HostBinding,\n args: ['id']\n }], roleAttr: [{\n type: HostBinding,\n args: ['attr.role']\n }], arialLabelByAttr: [{\n type: HostBinding,\n args: ['attr.aria-labelledby']\n }], arialDescribeByAttr: [{\n type: HostBinding,\n args: ['attr.aria-describedby']\n }], arialLabelAttr: [{\n type: HostBinding,\n args: ['attr.aria-label']\n }], sideSheetAnimationState: [{\n type: HostBinding,\n args: ['@sideSheetContainer']\n }], onAnimateStart: [{\n type: HostListener,\n args: ['@sideSheetContainer.start', ['$event']]\n }], onAnimateDone: [{\n type: HostListener,\n args: ['@sideSheetContainer.done', ['$event']]\n }] }); })();\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassDebugInfo(CovalentSideSheetContainerComponent, { className: \"CovalentSideSheetContainerComponent\", filePath: \"side-sheet-container.ts\", lineNumber: 255 }); })();\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC1jb250YWluZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUVMLDRCQUE0QixFQUM1QixZQUFZLEdBRWIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGVBQWUsR0FJaEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUVULFNBQVMsRUFDVCxVQUFVLEVBRVYsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLFFBQVEsRUFDUixTQUFTLEVBQ1QsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7OztBQUU5RCxNQUFNLFVBQVUsaUNBQWlDO0lBQy9DLElBQUksYUFBYSxHQUNmLE9BQU8sUUFBUSxLQUFLLFdBQVcsSUFBSSxRQUFRO1FBQ3pDLENBQUMsQ0FBRSxRQUFRLENBQUMsYUFBb0M7UUFDaEQsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUVYLE9BQU8sYUFBYSxJQUFJLGFBQWEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNqRCxNQUFNLGdCQUFnQixHQUFHLGFBQWEsQ0FBQyxVQUFVO2FBQzlDLGFBQW1DLENBQUM7UUFDdkMsSUFBSSxnQkFBZ0IsS0FBSyxhQUFhLEVBQUUsQ0FBQztZQUN2QyxNQUFNO1FBQ1IsQ0FBQzthQUFNLENBQUM7WUFDTixhQUFhLEdBQUcsZ0JBQWdCLENB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QyxXQUFXO1lBQ2EsZ0JBQWdCO2tCQUFwRCxXQUFXO21CQUFDLHNCQUFzQjtZQUdHLG1CQUFtQjtrQkFBeEQsV0FBVzttQkFBQyx1QkFBdUI7WUFFSixjQUFjO2tCQUE3QyxXQUFXO21CQUFDLGlCQUFpQjtZQUNVLHVCQUF1QjtrQkFBOUQsV0FBVzttQkFBQyxxQkFBcUI7WUFHcUIsY0FBYztrQkFBcEUsWUFBWTttQkFBQywyQkFBMkIsRUFBRSxDQUFDLFFBQVEsQ0FBQztZQU1DLGFBQWE7a0JBQWxFLFlBQVk7bUJBQUMsMEJBQTBCLEVBQUUsQ0FBQyxRQUFRLENBQUM7O2tGQXpCekMsbUNBQW1DIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGUgKi9cbmltcG9ydCB7IEFuaW1hdGlvbkV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICBDb25maWd1cmFibGVGb2N1c1RyYXAsXG4gIENvbmZpZ3VyYWJsZUZvY3VzVHJhcEZhY3RvcnksXG4gIEZvY3VzTW9uaXRvcixcbiAgRm9jdXNPcmlnaW4sXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7XG4gIEJhc2VQb3J0YWxPdXRsZXQsXG4gIENka1BvcnRhbE91dGxldCxcbiAgQ29tcG9uZW50UG9ydGFsLFxuICBEb21Qb3J0YWwsXG4gIFRlbXBsYXRlUG9ydGFsLFxufSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRW1iZWRkZWRWaWV3UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdCxcbiAgT3B0aW9uYWwsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGRTaWRlU2hlZXRBbmltYXRpb25zIH0gZnJvbSAnLi9zaWRlLXNoZWV0LmFuaW1hdGlvbic7XG5pbXBvcnQgeyBDb3ZhbGVudFNpZGVTaGVldENvbmZpZyB9IGZyb20gJy4vc2lkZS1zaGVldC5jb25maWcnO1xuXG5leHBvcnQgZnVuY3Rpb24gX2dldEZvY3VzZWRFbGVtZW50UGllcmNlU2hhZG93RG9tKCk6IEhUTUxFbGVtZW50IHwgbnVsbCB7XG4gIGxldCBhY3RpdmVFbGVtZW50ID1cbiAgICB0eXBlb2YgZG9jdW1lbnQgIT09ICd1bmRlZmluZWQnICYmIGRvY3VtZW50XG4gICAgICA/IChkb2N1bWVudC5hY3RpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50IHwgbnVsbClcbiAgICAgIDogbnVsbDtcblxuICB3aGlsZSAoYWN0aXZlRWxlbWVudCAmJiBhY3RpdmVFbGVtZW50LnNoYWRvd1Jvb3QpIHtcbiAgICBjb25zdCBuZXdBY3RpdmVFbGVtZW50ID0gYWN0aXZlRWxlbWVudC5zaGFkb3dSb290XG4gICAgICAuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCB8IG51bGw7XG4gICAgaWYgKG5ld0FjdGl2ZUVsZW1lbnQgPT09IGFjdGl2ZUVsZW1lbnQpIHtcbiAgICAgIGJyZWFrO1xuICAgIH0gZWxzZSB7XG4gICAgICBhY3RpdmVFbGVtZW50ID0gbmV3QWN0aXZlRWxlbWVudDtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gYWN0aXZlRWxlbWVudDtcbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciB0aGUgYENvdmFsZW50U2lkZVNoZWV0Q29udGFpbmVyYC4gVGhlIGJhc2UgY2xhc3MgZG9lcyBub3QgaW1wbGVtZW50XG4gKiBhbmltYXRpb25zIGFzIHRoZXNlIGFyZSBsZWZ0IHRvIGltcGxlbWVudGVycyBvZiB0aGUgc2lkZS1zaGVldCBjb250YWluZXIuXG4gKi9cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIF9Db3ZhbGVudFNpZGVTaGVldENvbnRhaW5lckJhc2UgZXh0ZW5kcyBCYXNlUG9ydGFsT3V0bGV0IHtcbiAgcHJvdGVjdGVkIF9kb2N1bWVudDogRG9jdW1lbnQ7XG5cbiAgLyoqIFRoZSBwb3J0YWwgb3V0bGV0IGluc2lkZSBvZiB0aGlzIGNvbnRhaW5lciBpbnRvIHdoaWNoIHRoZSBzaWRlLXNoZWV0IGNvbnRlbnQgd2lsbCBiZSBsb2FkZWQuICovXG4gIEBWaWV3Q2hpbGQoQ2RrUG9ydGFsT3V0bGV0LCB7IHN0YXRpYzogdHJ1ZSB9KSBfcG9ydGFsT3V0bGV0ITogQ2RrUG9ydGFsT3V0bGV0O1xuXG4gIC8qKiBUaGUgY2xhc3MgdGhhdCB0cmFwcyBhbmQgbWFuYWdlcyBmb2N1cyB3aXRoaW4gdGhlIHNpZGUtc2hlZXQuICovXG4gIHByaXZhdGUgX2ZvY3VzVHJhcCE6IENvbmZpZ3VyYWJsZUZvY3VzVHJhcDtcblxuICAvKiogRW1pdHMgd2hlbiBhbiBhbmltYXRpb24gc3RhdGUgY2hhbmdlcy4gKi9cbiAgX2FuaW1hdGlvblN0YXRlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8e1xuICAgIHN0YXRlOiAnb3BlbmVkJyB8ICdvcGVuaW5nJyB8ICdjbG9zaW5nJyB8ICdjbG9zZWQnO1xuICAgIHRvdGFsVGltZTogbnVtYmVyO1xuICB9PigpO1xuXG4gIC8qKiBFbGVtZW50IHRoYXQgd2FzIGZvY3VzZWQgYmVmb3JlIHRoZSBzaWRlLXNoZWV0IHdhcyBvcGVuZWQuIFNhdmUgdGhpcyB0byByZXN0b3JlIHVwb24gY2xvc2UuICovXG4gIHByaXZhdGUgX2VsZW1lbnRGb2N1c2VkQmVmb3JlU2lkZVNoZWV0V2FzT3BlbmVkOiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBzaWRlLXNoZWV0IGJlaW5nIGNsb3NlZC4gVGhpcyBpcyB1c2VkIHRvIGRldGVybWluZVxuICAgKiB3aGV0aGVyIHRoZSBmb2N1cyBzdHlsZSB3aWxsIGJlIGFwcGxpZWQgd2hlbiByZXR1cm5pbmcgZm9jdXMgdG8gaXRzIG9yaWdpbmFsIGxvY2F0aW9uXG4gICAqIGFmdGVyIHRoZSBzaWRlLXNoZWV0IGlzIGNsb3NlZC5cbiAgICovXG4gIF9jbG9zZUludGVyYWN0aW9uVHlwZTogRm9jdXNPcmlnaW4gfCBudWxsID0gbnVsbDtcblxuICAvKiogSUQgb2YgdGhlIGVsZW1lbnQgdGhhdCBzaG91bGQgYmUgY29uc2lkZXJlZCBhcyB0aGUgc2lkZS1zaGVldCdzIGxhYmVsLiAqL1xuICBfYXJpYUxhYmVsbGVkQnk6IHN0cmluZyB8IG51bGw7XG5cbiAgLyoqIElEIGZvciB0aGUgY29udGFpbmVyIERPTSBlbGVtZW50LiAqL1xuICBfaWQhOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByb3RlY3RlZCBfZm9jdXNUcmFwRmFjdG9yeTogQ29uZmlndXJhYmxlRm9jdXNUcmFwRmFjdG9yeSxcbiAgICBwcm90ZWN0ZWQgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KERPQ1VNRU5UKSBfZG9jdW1lbnQ6IGFueSxcbiAgICAvKiogVGhlIHNpZGUtc2hlZXQgY29uZmlndXJhdGlvbi4gKi9cbiAgICBwdWJsaWMgX2NvbmZpZzogQ292YWxlbnRTaWRlU2hlZXRDb25maWcsXG4gICAgcHJpdmF0ZSBfZm9jdXNNb25pdG9yPzogRm9jdXNNb25pdG9yXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5fYXJpYUxhYmVsbGVkQnkgPSBfY29uZmlnLmFyaWFMYWJlbGxlZEJ5IHx8IG51bGw7XG4gICAgdGhpcy5fZG9jdW1lbnQgPSBfZG9jdW1lbnQ7XG4gIH1cblxuICAvKiogU3RhcnRzIHRoZSBzaWRlLXNoZWV0IGV4aXQgYW5pbWF0aW9uLiAqL1xuICBhYnN0cmFjdCBfc3RhcnRFeGl0QW5pbWF0aW9uKCk6IHZvaWQ7XG5cbiAgLyoqIEluaXRpYWxpemVzIHRoZSBzaWRlLXNoZWV0IGNvbnRhaW5lciB3aXRoIHRoZSBhdHRhY2hlZCBjb250ZW50LiAqL1xuICBfaW5pdGlhbGl6ZVdpdGhBdHRhY2hlZENvbnRlbnQoKSB7XG4gICAgdGhpcy5fc2V0dXBGb2N1c1RyYXAoKTtcbiAgICAvLyBTYXZlIHRoZSBwcmV2aW91c2x5IGZvY3VzZWQgZWxlbWVudC4gVGhpcyBlbGVtZW50IHdpbGwgYmUgcmUtZm9jdXNlZFxuICAgIC8vIHdoZW4gdGhlIHNpZGUtc2hlZXQgY2xvc2VzLlxuICAgIHRoaXMuX2NhcHR1cmVQcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdHRhY2ggYSBDb21wb25lbnRQb3J0YWwgYXMgY29udGVudCB0byB0aGlzIHNpZGUtc2hlZXQgY29udGFpbmVyLlxuICAgKiBAcGFyYW0gcG9ydGFsIFBvcnRhbCB0byBiZSBhdHRhY2hlZCBhcyB0aGUgc2lkZS1zaGVldCBjb250ZW50LlxuICAgKi9cbiAgYXR0YWNoQ29tcG9uZW50UG9ydGFsPFQ+KHBvcnRhbDogQ29tcG9uZW50UG9ydGFsPFQ+KTogQ29tcG9uZW50UmVmPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5fcG9ydGFsT3V0bGV0LmF0dGFjaENvbXBvbmVudFBvcnRhbChwb3J0YWwpO1xuICB9XG5cbiAgLyoqXG4gICAqIEF0dGFjaCBhIFRlbXBsYXRlUG9ydGFsIGFzIGNvbnRlbnQgdG8gdGhpcyBzaWRlLXNoZWV0IGNvbnRhaW5lci5cbiAgICogQHBhcmFtIHBvcnRhbCBQb3J0YWwgdG8gYmUgYXR0YWNoZWQgYXMgdGhlIHNpZGUtc2hlZXQgY29udGVudC5cbiAgICovXG4gIGF0dGFjaFRlbXBsYXRlUG9ydGFsPEM+KHBvcnRhbDogVGVtcGxhdGVQb3J0YWw8Qz4pOiBFbWJlZGRlZFZpZXdSZWY8Qz4ge1xuICAgIHJldHVybiB0aGlzLl9wb3J0YWxPdXRsZXQuYXR0YWNoVGVtcGxhdGVQb3J0YWwocG9ydGFsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdHRhY2hlcyBhIERPTSBwb3J0YWwgdG8gdGhlIHNpZGUtc2hlZXQgY29udGFpbmVyLlxuICAgKiBAcGFyYW0gcG9ydGFsIFBvcnRhbCB0byBiZSBhdHRhY2hlZC5cbiAgICogQGRlcHJlY2F0ZWQgVG8gYmUgdHVybmVkIGludG8gYSBtZXRob2QuXG4gICAqL1xuICBvdmVycmlkZSBhdHRhY2hEb21Qb3J0YWwgPSAocG9ydGFsOiBEb21Qb3J0YWwpID0+IHtcbiAgICByZXR1cm4gdGhpcy5fcG9ydGFsT3V0bGV0LmF0dGFjaERvbVBvcnRhbChwb3J0YWwpO1xuICB9O1xuXG4gIC8qKiBNb3ZlcyBmb2N1cyBiYWNrIGludG8gdGhlIHNpZGUtc2hlZXQgaWYgaXQgd2FzIG1vdmVkIG91dC4gKi9cbiAgX3JlY2FwdHVyZUZvY3VzKCkge1xuICAgIGlmICghdGhpcy5fY29udGFpbnNGb2N1cygpKSB7XG4gICAgICB0aGlzLl90cmFwRm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTW92ZXMgdGhlIGZvY3VzIGluc2lkZSB0aGUgZm9jdXMgdHJhcC4gV2hlbiBhdXRvRm9jdXMgaXMgbm90IHNldCB0byAnc2lkZS1zaGVldCcsIGlmIGZvY3VzXG4gICAqIGNhbm5vdCBiZSBtb3ZlZCB0aGVuIGZvY3VzIHdpbGwgZ28gdG8gdGhlIHNpZGUtc2hlZXQgY29udGFpbmVyLlxuICAgKi9cbiAgcHJvdGVjdGVkIF90cmFwRm9jdXMoKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBpZiAoIXRoaXMuX2NvbmZpZy5hdXRvRm9jdXMpIHtcbiAgICAgIGlmICghdGhpcy5fY29udGFpbnNGb2N1cygpKSB7XG4gICAgICAgIGVsZW1lbnQuZm9jdXMoKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fZm9jdXNUcmFwXG4gICAgICAgIC5mb2N1c0luaXRpYWxFbGVtZW50V2hlblJlYWR5KClcbiAgICAgICAgLnRoZW4oKGZvY3VzZWRTdWNjZXNzZnVsbHkpID0+IHtcbiAgICAgICAgICAvLyBJZiB3ZSB3ZXJlbid0IGFibGUgdG8gZmluZCBhIGZvY3VzYWJsZSBlbGVtZW50IGluIHRoZSBzaWRlLXNoZWV0LCB0aGVuIGZvY3VzIHRoZSBzaWRlLXNoZWV0XG4gICAgICAgICAgLy8gY29udGFpbmVyIGluc3RlYWQuXG4gICAgICAgICAgaWYgKCFmb2N1c2VkU3VjY2Vzc2Z1bGx5KSB7XG4gICAgICAgICAgICB0aGlzLl9mb2N1c1NpZGVTaGVldENvbnRhaW5lcigpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFJlc3RvcmVzIGZvY3VzIHRvIHRoZSBlbGVtZW50IHRoYXQgd2FzIGZvY3VzZWQgYmVmb3JlIHRoZSBzaWRlLXNoZWV0IG9wZW5lZC4gKi9cbiAgcHJvdGVjdGVkIF9yZXN0b3JlRm9jdXMoKSB7XG4gICAgY29uc3QgcHJldmlvdXNFbGVtZW50ID0gdGhpcy5fZWxlbWVudEZvY3VzZWRCZWZvcmVTaWRlU2hlZXRXYXNPcGVuZWQ7XG5cbiAgICAvLyBXZSBuZWVkIHRoZSBleHRyYSBjaGVjaywgYmVjYXVzZSBJRSBjYW4gc2V0IHRoZSBgYWN0aXZlRWxlbWVudGAgdG8gbnVsbCBpbiBzb21lIGNhc2VzLlxuICAgIGlmIChcbiAgICAgIHRoaXMuX2NvbmZpZy5yZXN0b3JlRm9jdXMgJiZcbiAgICAgIHByZXZpb3VzRWxlbWVudCAmJlxuICAgICAgdHlwZW9mIHByZXZpb3VzRWxlbWVudC5mb2N1cyA9PT0gJ2Z1bmN0aW9uJ1xuICAgICkge1xuICAgICAgY29uc3QgYWN0aXZlRWxlbWVudCA9IF9nZXRGb2N1c2VkRWxlbWVudFBpZXJjZVNoYWRvd0RvbSgpO1xuICAgICAgY29uc3QgZWxlbWVudCA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgICAgLy8gTWFrZSBzdXJlIHRoYXQgZm9jdXMgaXMgc3RpbGwgaW5zaWRlIHRoZSBzaWRlLXNoZWV0IG9yIGlzIG9uIHRoZSBib2R5ICh1c3VhbGx5IGJlY2F1c2UgYVxuICAgICAgLy8gbm9uLWZvY3VzYWJsZSBlbGVtZW50IGxpa2UgdGhlIGJhY2tkcm9wIHdhcyBjbGlja2VkKSBiZWZvcmUgbW92aW5nIGl0LiBJdCdzIHBvc3NpYmxlIHRoYXRcbiAgICAgIC8vIHRoZSBjb25zdW1lciBtb3ZlZCBpdCB0aGVtc2VsdmVzIGJlZm9yZSB0aGUgYW5pbWF0aW9uIHdhcyBkb25lLCBpbiB3aGljaCBjYXNlIHdlIHNob3VsZG4ndFxuICAgICAgLy8gZG8gYW55dGhpbmcuXG4gICAgICBpZiAoXG4gICAgICAgICFhY3RpdmVFbGVtZW50IHx8XG4gICAgICAgIGFjdGl2ZUVsZW1lbnQgPT09IHRoaXMuX2RvY3VtZW50LmJvZHkgfHxcbiAgICAgICAgYWN0aXZlRWxlbWVudCA9PT0gZWxlbWVudCB8fFxuICAgICAgICBlbGVtZW50LmNvbnRhaW5zKGFjdGl2ZUVsZW1lbnQpXG4gICAgICApIHtcbiAgICAgICAgaWYgKHRoaXMuX2ZvY3VzTW9uaXRvcikge1xuICAgICAgICAgIHRoaXMuX2ZvY3VzTW9uaXRvci5mb2N1c1ZpYShcbiAgICAgICAgICAgIHByZXZpb3VzRWxlbWVudCxcbiAgICAgICAgICAgIHRoaXMuX2Nsb3NlSW50ZXJhY3Rpb25UeXBlXG4gICAgICAgICAgKTtcbiAgICAgICAgICB0aGlzLl9jbG9zZUludGVyYWN0aW9uVHlwZSA9IG51bGw7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcHJldmlvdXNFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5fZm9jdXNUcmFwKSB7XG4gICAgICB0aGlzLl9mb2N1c1RyYXAuZGVzdHJveSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBTZXRzIHVwIHRoZSBmb2N1cyB0cmFwLiAqL1xuICBwcml2YXRlIF9zZXR1cEZvY3VzVHJhcCgpIHtcbiAgICB0aGlzLl9mb2N1c1RyYXAgPSB0aGlzLl9mb2N1c1RyYXBGYWN0b3J5LmNyZWF0ZShcbiAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudFxuICAgICk7XG4gIH1cblxuICAvKiogQ2FwdHVyZXMgdGhlIGVsZW1lbnQgdGhhdCB3YXMgZm9jdXNlZCBiZWZvcmUgdGhlIHNpZGUtc2hlZXQgd2FzIG9wZW5lZC4gKi9cbiAgcHJpdmF0ZSBfY2FwdHVyZVByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCgpIHtcbiAgICBpZiAodGhpcy5fZG9jdW1lbnQpIHtcbiAgICAgIHRoaXMuX2VsZW1lbnRGb2N1c2VkQmVmb3JlU2lkZVNoZWV0V2FzT3BlbmVkID1cbiAgICAgICAgX2dldEZvY3VzZWRFbGVtZW50UGllcmNlU2hhZG93RG9tKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEZvY3VzZXMgdGhlIHNpZGUtc2hlZXQgY29udGFpbmVyLiAqL1xuICBwcml2YXRlIF9mb2N1c1NpZGVTaGVldENvbnRhaW5lcigpIHtcbiAgICAvLyBOb3RlIHRoYXQgdGhlcmUgaXMgbm8gZm9jdXMgbWV0aG9kIHdoZW4gcmVuZGVyaW5nIG9uIHRoZSBzZXJ2ZXIuXG4gICAgaWYgKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cykge1xuICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFJldHVybnMgd2hldGhlciBmb2N1cyBpcyBpbnNpZGUgdGhlIHNpZGUtc2hlZXQuICovXG4gIHByaXZhdGUgX2NvbnRhaW5zRm9jdXMoKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBhY3RpdmVFbGVtZW50ID0gX2dldEZvY3VzZWRFbGVtZW50UGllcmNlU2hhZG93RG9tKCk7XG4gICAgcmV0dXJuIGVsZW1lbnQgPT09IGFjdGl2ZUVsZW1lbnQgfHwgZWxlbWVudC5jb250YWlucyhhY3RpdmVFbGVtZW50KTtcbiAgfVxufVxuXG4vKipcbiAqIEludGVybmFsIGNvbXBvbmVudCB0aGF0IHdyYXBzIHRoZSBnZW5lcmF0ZWQgc2lkZS1zaGVldCBjb250ZW50LlxuICogVGhpcyBhbmltYXRpb24gYmVsb3cgaXMgdGhlIG9ubHkgcmVhc29uIGZvciBkdXBsaWNhdGluZyBtb3N0IG9mIHRoZSBNYXRlcmlhbCBkaWFsb2cgY29kZVxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZC1zaWRlLXNoZWV0LWNvbnRhaW5lcicsXG4gIHRlbXBsYXRlOiBgIDxuZy10ZW1wbGF0ZSBjZGtQb3J0YWxPdXRsZXQ+PC9uZy10ZW1wbGF0ZT4gYCxcbiAgc3R5bGVVcmxzOiBbJ3NpZGUtc2hlZXQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gIGFuaW1hdGlvbnM6IFt0ZFNpZGVTaGVldEFuaW1hdGlvbnMuc2lkZVNoZWV0Q29udGFpbmVyXSxcbiAgaW1wb3J0czogW0Nka1BvcnRhbE91dGxldF0sXG59KVxuZXhwb3J0IGNsYXNzIENvdmFsZW50U2lkZVNoZWV0Q29udGFpbmVyQ29tcG9uZW50IGV4dGVuZHMgX0NvdmFsZW50U2lkZVNoZWV0Q29udGFpbmVyQmFzZSB7XG4gIC8qKiBTdGF0ZSBvZiB0aGUgc2lkZS1zaGVldCBhbmltYXRpb24uICovXG4gIF9zdGF0ZTogJ3ZvaWQnIHwgJ2VudGVyJyB8ICdleGl0JyA9ICdlbnRlcic7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy50ZC1zaWRlLXNoZWV0LWNvbnRhaW5lcicpIHRkU2lkZVNoZWV0Q29udGFpbmVyQ2xhc3MgPVxuICAgIHRydWU7XG4gIEBIb3N0QmluZGluZygndGFiaW5kZXgnKSB0YWJJbmRleCA9IC0xO1xuICBASG9zdEJpbmRpbmcoJ2FyaWEtbW9kYWwnKSBhcmlhbE1vZGFsID0gdHJ1ZTtcbiAgQEhvc3RCaW5kaW5nKCdpZCcpIGlkQXR0ciA9IHRoaXMuX2lkO1xuICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpIHJvbGVBdHRyID0gdGhpcy5fY29uZmlnLnJvbGU7XG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWxhYmVsbGVkYnknKSBhcmlhbExhYmVsQnlBdHRyID0gdGhpcy5fY29uZmlnLmFyaWFMYWJlbFxuICAgID8gbnVsbFxuICAgIDogdGhpcy5fYXJpYUxhYmVsbGVkQnk7XG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWRlc2NyaWJlZGJ5JykgYXJpYWxEZXNjcmliZUJ5QXR0ciA9XG4gICAgdGhpcy5fY29uZmlnLmFyaWFEZXNjcmliZWRCeSB8fCBudWxsO1xuICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1sYWJlbCcpIGFyaWFsTGFiZWxBdHRyID0gdGhpcy5fY29uZmlnLmFyaWFMYWJlbDtcbiAgQEhvc3RCaW5kaW5nKCdAc2lkZVNoZWV0Q29udGFpbmVyJykgZ2V0IHNpZGVTaGVldEFuaW1hdGlvblN0YXRlKCkge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcbiAgfVxuICBASG9zdExpc3RlbmVyKCdAc2lkZVNoZWV0Q29udGFpbmVyLnN0YXJ0JywgWyckZXZlbnQnXSkgb25BbmltYXRlU3RhcnQoXG4gICAgJGV2ZW50OiBBbmltYXRpb25FdmVudFxuICApIHtcbiAgICB0aGlzLl9vbkFuaW1hdGlvblN0YXJ0KCRldmVudCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdAc2lkZVNoZWV0Q29udGFpbmVyLmRvbmUnLCBbJyRldmVudCddKSBvbkFuaW1hdGVEb25lKFxuICAgICRldmVudDogQW5pbWF0aW9uRXZlbnRcbiAgKSB7XG4gICAgdGhpcy5fb25BbmltYXRpb25Eb25lKCRldmVudCk7XG4gIH1cblxuICAvKiogQ2FsbGJhY2ssIGludm9rZWQgd2hlbmV2ZXIgYW4gYW5pbWF0aW9uIG9uIHRoZSBob3N0IGNvbXBsZXRlcy4gKi9cbiAgX29uQW5pbWF0aW9uRG9uZSh7IHRvU3RhdGUsIHRvdGFsVGltZSB9OiBBbmltYXRpb25FdmVudCkge1xuICAgIGlmICh0b1N0YXRlID09PSAnZW50ZXInKSB7XG4gICAgICB0aGlzLl90cmFwRm9jdXMoKTtcbiAgICAgIHRoaXMuX2FuaW1hdGlvblN0YXRlQ2hhbmdlZC5uZXh0KHsgc3RhdGU6ICdvcGVuZWQnLCB0b3RhbFRpbWUgfSk7XG4gICAgfSBlbHNlIGlmICh0b1N0YXRlID09PSAnZXhpdCcpIHtcbiAgICAgIHRoaXMuX3Jlc3RvcmVGb2N1cygpO1xuICAgICAgdGhpcy5fYW5pbWF0aW9uU3RhdGVDaGFuZ2VkLm5leHQoeyBzdGF0ZTogJ2Nsb3NlZCcsIHRvdGFsVGltZSB9KTtcbiAgICB9XG4gIH1cblxuICAvKiogQ2FsbGJhY2ssIGludm9rZWQgd2hlbiBhbiBhbmltYXRpb24gb24gdGhlIGhvc3Qgc3RhcnRzLiAqL1xuICBfb25BbmltYXRpb25TdGFydCh7IHRvU3RhdGUsIHRvdGFsVGltZSB9OiBBbmltYXRpb25FdmVudCkge1xuICAgIGlmICh0b1N0YXRlID09PSAnZW50ZXInKSB7XG4gICAgICB0aGlzLl9hbmltYXRpb25TdGF0ZUNoYW5nZWQubmV4dCh7IHN0YXRlOiAnb3BlbmluZycsIHRvdGFsVGltZSB9KTtcbiAgICB9IGVsc2UgaWYgKHRvU3RhdGUgPT09ICdleGl0JyB8fCB0b1N0YXRlID09PSAndm9pZCcpIHtcbiAgICAgIHRoaXMuX2FuaW1hdGlvblN0YXRlQ2hhbmdlZC5uZXh0KHsgc3RhdGU6ICdjbG9zaW5nJywgdG90YWxUaW1lIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBTdGFydHMgdGhlIHNpZGUtc2hlZXQgZXhpdCBhbmltYXRpb24uICovXG4gIF9zdGFydEV4aXRBbmltYXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fc3RhdGUgPSAnZXhpdCc7XG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cbn1cbiJdfQ==","import { DialogRef } from '@angular/cdk/dialog';\nimport { MatDialogRef } from '@angular/material/dialog';\n// Counter for unique dialog ids.\nlet uniqueId = 0;\n// Create a new side sheet ref to change the id of the ref\nexport class CovalentSideSheetRef extends MatDialogRef {\n overlayRef;\n config;\n _containerInstance;\n id;\n constructor(overlayRef, config, _containerInstance, id = `td-side-sheet-${uniqueId++}`) {\n const ref = new DialogRef(overlayRef, config);\n super(ref, config, _containerInstance);\n this.overlayRef = overlayRef;\n this.config = config;\n this._containerInstance = _containerInstance;\n this.id = id;\n ref.containerInstance =\n this._containerInstance;\n }\n}\nexport function _closeSideSheetVia(ref, interactionType, result) {\n // Some mock dialog ref instances in tests do not have the `_containerInstance` property.\n // For those, we keep the behavior as is and do not deal with the interaction type.\n if (ref._containerInstance !== undefined) {\n ref._containerInstance._closeInteractionType = interactionType;\n }\n return ref.close(result);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC1yZWYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC1yZWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR2hELE9BQU8sRUFBRSxZQUFZLEVBQXNCLE1BQU0sMEJBQTBCLENBQUM7QUFHNUUsaUNBQWlDO0FBQ2pDLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQztBQUVqQiwwREFBMEQ7QUFDMUQsTUFBTSxPQUFPLG9CQUFpQyxTQUFRLFlBQWtCO0lBRTdEO0lBQ0E7SUFDUztJQUNFO0lBSnBCLFlBQ1MsVUFBc0IsRUFDdEIsTUFBK0IsRUFDdEIsa0JBQXNDLEVBQ3BDLEtBQUssaUJBQWlCLFFBQVEsRUFBRSxFQUFFO1FBRXBELE1BQU0sR0FBRyxHQUFHLElBQUksU0FBUyxDQUFPLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNwRCxLQUFLLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1FBTmhDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsV0FBTSxHQUFOLE1BQU0sQ0FBeUI7UUFDdEIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUNwQyxPQUFFLEdBQUYsRUFBRSxDQUFnQztRQUluRCxHQUErQyxDQUFDLGlCQUFpQjtZQUNoRSxJQUFJLENBQUMsa0JBQWtCLENBQUM7SUFDNUIsQ0FBQztDQUNGO0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUNoQyxHQUE0QixFQUM1QixlQUE0QixFQUM1QixNQUFVO0lBRVYseUZBQXlGO0lBQ3pGLG1GQUFtRjtJQUNuRixJQUFJLEdBQUcsQ0FBQyxrQkFBa0IsS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUN6QyxHQUFHLENBQUMsa0JBQWtCLENBQUMscUJBQXFCLEdBQUcsZUFBZSxDQUFDO0lBQ2pFLENBQUM7SUFDRCxPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDM0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIHRzbGludDpkaXNhYmxlICovXG5pbXBvcnQgeyBGb2N1c09yaWdpbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kaWFsb2cnO1xuaW1wb3J0IHsgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IEJhc2VQb3J0YWxPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTWF0RGlhbG9nQ29udGFpbmVyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IENvdmFsZW50U2lkZVNoZWV0Q29uZmlnIH0gZnJvbSAnLi9zaWRlLXNoZWV0LmNvbmZpZyc7XG5cbi8vIENvdW50ZXIgZm9yIHVuaXF1ZSBkaWFsb2cgaWRzLlxubGV0IHVuaXF1ZUlkID0gMDtcblxuLy8gQ3JlYXRlIGEgbmV3IHNpZGUgc2hlZXQgcmVmIHRvIGNoYW5nZSB0aGUgaWQgb2YgdGhlIHJlZlxuZXhwb3J0IGNsYXNzIENvdmFsZW50U2lkZVNoZWV0UmVmPFQsIFIgPSBhbnk+IGV4dGVuZHMgTWF0RGlhbG9nUmVmPFQsIFI+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYsXG4gICAgcHVibGljIGNvbmZpZzogQ292YWxlbnRTaWRlU2hlZXRDb25maWcsXG4gICAgcHVibGljIG92ZXJyaWRlIF9jb250YWluZXJJbnN0YW5jZTogTWF0RGlhbG9nQ29udGFpbmVyLFxuICAgIG92ZXJyaWRlIHJlYWRvbmx5IGlkID0gYHRkLXNpZGUtc2hlZXQtJHt1bmlxdWVJZCsrfWBcbiAgKSB7XG4gICAgY29uc3QgcmVmID0gbmV3IERpYWxvZ1JlZjxSLCBUPihvdmVybGF5UmVmLCBjb25maWcpO1xuICAgIHN1cGVyKHJlZiwgY29uZmlnLCBfY29udGFpbmVySW5zdGFuY2UpO1xuICAgIChyZWYgYXMgeyBjb250YWluZXJJbnN0YW5jZTogQmFzZVBvcnRhbE91dGxldCB9KS5jb250YWluZXJJbnN0YW5jZSA9XG4gICAgICB0aGlzLl9jb250YWluZXJJbnN0YW5jZTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gX2Nsb3NlU2lkZVNoZWV0VmlhPFI+KFxuICByZWY6IENvdmFsZW50U2lkZVNoZWV0UmVmPFI+LFxuICBpbnRlcmFjdGlvblR5cGU6IEZvY3VzT3JpZ2luLFxuICByZXN1bHQ/OiBSXG4pIHtcbiAgLy8gU29tZSBtb2NrIGRpYWxvZyByZWYgaW5zdGFuY2VzIGluIHRlc3RzIGRvIG5vdCBoYXZlIHRoZSBgX2NvbnRhaW5lckluc3RhbmNlYCBwcm9wZXJ0eS5cbiAgLy8gRm9yIHRob3NlLCB3ZSBrZWVwIHRoZSBiZWhhdmlvciBhcyBpcyBhbmQgZG8gbm90IGRlYWwgd2l0aCB0aGUgaW50ZXJhY3Rpb24gdHlwZS5cbiAgaWYgKHJlZi5fY29udGFpbmVySW5zdGFuY2UgIT09IHVuZGVmaW5lZCkge1xuICAgIHJlZi5fY29udGFpbmVySW5zdGFuY2UuX2Nsb3NlSW50ZXJhY3Rpb25UeXBlID0gaW50ZXJhY3Rpb25UeXBlO1xuICB9XG4gIHJldHVybiByZWYuY2xvc2UocmVzdWx0KTtcbn1cbiJdfQ==","/* tslint:disable */\nimport { Directive, Inject, Injectable, InjectionToken, Injector, Optional, SkipSelf, TemplateRef, Type, } from '@angular/core';\nimport { Overlay, OverlayConfig, } from '@angular/cdk/overlay';\nimport { ComponentPortal, TemplatePortal, } from '@angular/cdk/portal';\nimport { MAT_DIALOG_DATA, MAT_DIALOG_DEFAULT_OPTIONS, } from '@angular/material/dialog';\nimport { AnimationCurves, AnimationDurations } from '@angular/material/core';\nimport { CovalentSideSheetContainerComponent, } from './side-sheet-container';\nimport { Subject, of } from 'rxjs';\nimport { filter, take } from 'rxjs/operators';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { CovalentSideSheetRef } from './side-sheet-ref';\nimport { SubPageMode, CovalentSideSheetConfig } from './side-sheet.config';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/cdk/overlay\";\nimport * as i2 from \"./side-sheet.config\";\nexport class _CovalentSideSheetBase {\n _overlay;\n _injector;\n _defaultOptions;\n _parentSideSheet;\n _sideSheetRefConstructor;\n _sideSheetContainerType;\n _sideSheetDataToken;\n _openSideSheetsAtThisLevel = [];\n _afterAllClosedAtThisLevel = new Subject();\n _afterOpenedAtThisLevel = new Subject();\n _animationStateSubscriptions;\n defaultSidebarConfig = {\n minWidth: '400px',\n maxWidth: '100vw',\n };\n constructor(_overlay, _injector, _defaultOptions, _parentSideSheet, _sideSheetRefConstructor, _sideSheetContainerType, _sideSheetDataToken) {\n this._overlay = _overlay;\n this._injector = _injector;\n this._defaultOptions = _defaultOptions;\n this._parentSideSheet = _parentSideSheet;\n this._sideSheetRefConstructor = _sideSheetRefConstructor;\n this._sideSheetContainerType = _sideSheetContainerType;\n this._sideSheetDataToken = _sideSheetDataToken;\n }\n /** Keeps track of the currently-open side-sheets. */\n get openSideSheets() {\n return this._parentSideSheet\n ? this._parentSideSheet.openSideSheets\n : this._openSideSheetsAtThisLevel;\n }\n open(componentOrTemplateRef, config) {\n config = {\n ...(this._defaultOptions || new CovalentSideSheetConfig()),\n ...this.defaultSidebarConfig,\n ...config,\n };\n const overlayRef = this._createOverlay(config);\n const sideSheetContainer = this._attachSideSheetContainer(overlayRef, config);\n const sideSheetRef = this._attachSideSheetContent(componentOrTemplateRef, sideSheetContainer, overlayRef, config);\n const prevSideSheetRef = this.openSideSheets.slice(-1)[0];\n const prevOverlayRef = prevSideSheetRef?.overlayRef;\n if (prevOverlayRef?.overlayElement &&\n config.subPageMode !== SubPageMode.none) {\n prevOverlayRef.overlayElement.style.transition = `${AnimationDurations.COMPLEX} ${AnimationCurves.DECELERATION_CURVE}`;\n if (config.subPageMode === SubPageMode.pushed) {\n // Animate previous side sheet to full width\n prevOverlayRef.overlayElement.style.minWidth = `${window.innerWidth}px`;\n }\n else if (config.subPageMode === SubPageMode.shifted) {\n // Animate previous side sheet to current sidesheet width + 200px\n prevOverlayRef.overlayElement.style.minWidth = `${sideSheetRef.overlayRef.overlayElement.offsetWidth + 200}px`;\n }\n }\n // Revert the previous side sheet config & size\n sideSheetRef._containerInstance._animationStateChanged\n .pipe(filter((event) => event.state === 'closing' && !!(prevSideSheetRef && prevOverlayRef)), take(1))\n .subscribe(() => {\n prevOverlayRef.overlayElement.style.transition = `${AnimationDurations.EXITING} ${AnimationCurves.DECELERATION_CURVE}`;\n prevSideSheetRef.updateSize();\n });\n // Add new side sheet to open list\n this.openSideSheets.push(sideSheetRef);\n // Remove side sheet ref after closed\n sideSheetRef\n .afterClosed()\n .pipe(take(1))\n .subscribe(() => this._removeOpenSideSheet(sideSheetRef));\n // Notify the side-sheet container that the content has been attached.\n sideSheetContainer._initializeWithAttachedContent();\n return sideSheetRef;\n }\n ngOnDestroy() {\n // Only close the side-sheets at this level on destroy\n // since the parent service may still be active.\n this._closeSideSheets(this._openSideSheetsAtThisLevel);\n this._afterAllClosedAtThisLevel.complete();\n this._afterOpenedAtThisLevel.complete();\n // Clean up any subscriptions to side-sheet that never finished opening.\n if (this._animationStateSubscriptions) {\n this._animationStateSubscriptions.unsubscribe();\n }\n }\n /**\n * Closes all of the currently-open side-sheets.\n */\n closeAll() {\n this._closeSideSheets(this.openSideSheets);\n }\n _createOverlay(config) {\n const overlayConfig = new OverlayConfig({\n positionStrategy: this._overlay.position().global(),\n scrollStrategy: this._overlay.scrollStrategies.block(),\n panelClass: config.panelClass,\n hasBackdrop: config.hasBackdrop,\n direction: config.direction,\n minWidth: config.minWidth,\n minHeight: config.minHeight,\n maxWidth: config.maxWidth,\n });\n const overlayRef = this._overlay.create(overlayConfig);\n const positionStrategy = overlayRef.getConfig()\n .positionStrategy;\n positionStrategy.right('0px');\n return overlayRef;\n }\n /**\n * Attaches a container to a side-sheets's already-created overlay.\n * @param overlay Reference to the side-sheet's underlying overlay.\n * @param config The side-sheet configuration.\n * @returns A promise resolving to a ComponentRef for the attached container.\n */\n _attachSideSheetContainer(overlay, config) {\n const userInjector = config && config.viewContainerRef && config.viewContainerRef.injector;\n const injector = Injector.create({\n parent: userInjector || this._injector,\n providers: [{ provide: CovalentSideSheetConfig, useValue: config }],\n });\n const containerPortal = new ComponentPortal(this._sideSheetContainerType, config.viewContainerRef, injector);\n const containerRef = overlay.attach(containerPortal);\n return containerRef.instance;\n }\n /**\n * Attaches the user-provided component to the already-created side sheet container.\n * @param componentOrTemplateRef The type of component being loaded into the side-sheet,\n * or a TemplateRef to instantiate as the content.\n * @param dialogContainer Reference to the wrapping side-sheet container.\n * @param overlayRef Reference to the overlay in which the side-sheet resides.\n * @param config The side-sheet configuration.\n * @returns A promise resolving to the CovalentSideSheetRef that should be returned to the user.\n */\n _attachSideSheetContent(componentOrTemplateRef, sideSheetContainer, overlayRef, config) {\n // Create a reference to the side-sheet we're creating in order to give the user a handle\n // to modify and close it.\n const sideSheetRef = new this._sideSheetRefConstructor(overlayRef, config, sideSheetContainer, config.id);\n if (componentOrTemplateRef instanceof TemplateRef) {\n sideSheetContainer.attachTemplatePortal(\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n new TemplatePortal(componentOrTemplateRef, null, {\n $implicit: config.data,\n sideSheetRef,\n }));\n }\n else {\n const injector = this._createInjector(config, sideSheetRef, sideSheetContainer);\n const contentRef = sideSheetContainer.attach(new ComponentPortal(componentOrTemplateRef, config.viewContainerRef, injector));\n sideSheetRef.componentInstance = contentRef.instance;\n }\n sideSheetRef.updateSize(config.width, config.height);\n return sideSheetRef;\n }\n _createInjector(config, sideSheetRef, sideSheetContainer) {\n const userInjector = config && config.viewContainerRef && config.viewContainerRef.injector;\n // The side-sheet container should be provided as the side-sheet container and the side-sheet's\n // content are created out of the same `ViewContainerRef` and as such, are siblings\n // for injector purposes. To allow the hierarchy that is expected, the side-sheet\n // container is explicitly provided in the injector.\n const providers = [\n { provide: this._sideSheetContainerType, useValue: sideSheetContainer },\n { provide: this._sideSheetDataToken, useValue: config.data },\n { provide: this._sideSheetRefConstructor, useValue: sideSheetRef },\n ];\n if (config.direction &&\n (!userInjector ||\n !userInjector.get(Directionality, null, {\n optional: true,\n }))) {\n providers.push({\n provide: Directionality,\n useValue: { value: config.direction, change: of() },\n });\n }\n return Injector.create({\n parent: userInjector || this._injector,\n providers,\n });\n }\n /**\n * Removes a side sheet from the array of open side sheets.\n * @param sideSheetRef Side Sheet to be removed.\n */\n _removeOpenSideSheet(sideSheetRef) {\n const index = this.openSideSheets.indexOf(sideSheetRef);\n if (index > -1) {\n this.openSideSheets.splice(index, 1);\n }\n }\n /** Closes all of the side-sheet in an array. */\n _closeSideSheets(sideSheets) {\n let i = sideSheets.length;\n while (i--) {\n sideSheets[i].close();\n }\n }\n static ɵfac = function _CovalentSideSheetBase_Factory(__ngFactoryType__) { i0.ɵɵinvalidFactory(); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: _CovalentSideSheetBase });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(_CovalentSideSheetBase, [{\n type: Directive\n }], () => [{ type: i1.Overlay }, { type: i0.Injector }, { type: undefined }, { type: undefined }, { type: i0.Type }, { type: i0.Type }, { type: i0.InjectionToken }], null); })();\n/**\n * Service to open Covalent Design side-sheet.\n */\nexport class CovalentSideSheet extends _CovalentSideSheetBase {\n constructor(overlay, injector, defaultOptions, parentSideSheet) {\n super(overlay, injector, defaultOptions, parentSideSheet, CovalentSideSheetRef, CovalentSideSheetContainerComponent, MAT_DIALOG_DATA);\n }\n static ɵfac = function CovalentSideSheet_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheet)(i0.ɵɵinject(i1.Overlay), i0.ɵɵinject(i0.Injector), i0.ɵɵinject(MAT_DIALOG_DEFAULT_OPTIONS, 8), i0.ɵɵinject(CovalentSideSheet, 12)); };\n static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: CovalentSideSheet, factory: CovalentSideSheet.ɵfac });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheet, [{\n type: Injectable\n }], () => [{ type: i1.Overlay }, { type: i0.Injector }, { type: i2.CovalentSideSheetConfig, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [MAT_DIALOG_DEFAULT_OPTIONS]\n }] }, { type: CovalentSideSheet, decorators: [{\n type: Optional\n }, {\n type: SkipSelf\n }] }], null); })();\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zaWRlLXNoZWV0L3NyYy9zaWRlLXNoZWV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9CQUFvQjtBQUNwQixPQUFPLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFDTixVQUFVLEVBQ1YsY0FBYyxFQUNkLFFBQVEsRUFFUixRQUFRLEVBQ1IsUUFBUSxFQUVSLFdBQVcsRUFDWCxJQUFJLEdBQ0wsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLE9BQU8sRUFDUCxhQUFhLEdBR2QsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQ0wsZUFBZSxFQUVmLGNBQWMsR0FDZixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFDTCxlQUFlLEVBQ2YsMEJBQTBCLEdBQzNCLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdFLE9BQU8sRUFDTCxtQ0FBbUMsR0FFcEMsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUUsT0FBTyxFQUFnQixFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7O0FBRzNFLE1BQU0sT0FBTyxzQkFBc0I7SUFnQnZCO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBbkJGLDBCQUEwQixHQUFvQyxFQUFFLENBQUM7SUFDeEQsMEJBQTBCLEdBQUcs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LFlBQTJDO1FBQ3RFLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRXhELElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDZixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7SUFFRCxnREFBZ0Q7SUFDeEMsZ0JBQWdCLENBQUMsVUFBdUM7UUFDOUQsSUFBSSxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUUxQixPQUFPLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDWCxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDeEIsQ0FBQztJQUNILENBQUM7OzZEQXRSVSxzQkFBc0I7O2lGQUF0QixzQkFBc0I7Y0FEbEMsU0FBUzs7QUEwUlY7O0dBRUc7QUFFSCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsc0JBQTJEO0lBQ2hHLFlBQ0UsT0FBZ0IsRUFDaEIsUUFBa0IsRUFHbEIsY0FBdUMsRUFDZixlQUFrQztRQUUxRCxLQUFLLENBQ0gsT0FBTyxFQUNQLFFBQVEsRUFDUixjQUFjLEVBQ2QsZUFBZSxFQUNmLG9CQUFvQixFQUNwQixtQ0FBbUMsRUFDbkMsZUFBZSxDQUNoQixDQUFDO0lBQ0osQ0FBQzsyR0FsQlUsaUJBQWlCLGlFQUtsQiwwQkFBMEI7Z0VBTHpCLGlCQUFpQixXQUFqQixpQkFBaUI7O2lGQUFqQixpQkFBaUI7Y0FEN0IsVUFBVTs7c0JBS04sUUFBUTs7c0JBQ1IsTUFBTTt1QkFBQywwQkFBMEI7O3NCQUVqQyxRQUFROztzQkFBSSxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGUgKi9cbmltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgSW5qZWN0LFxuICBJbmplY3RhYmxlLFxuICBJbmplY3Rpb25Ub2tlbixcbiAgSW5qZWN0b3IsXG4gIE9uRGVzdHJveSxcbiAgT3B0aW9uYWwsXG4gIFNraXBTZWxmLFxuICBTdGF0aWNQcm92aWRlcixcbiAgVGVtcGxhdGVSZWYsXG4gIFR5cGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgT3ZlcmxheSxcbiAgT3ZlcmxheUNvbmZpZyxcbiAgT3ZlcmxheVJlZixcbiAgR2xvYmFsUG9zaXRpb25TdHJhdGVneSxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50UG9ydGFsLFxuICBDb21wb25lbnRUeXBlLFxuICBUZW1wbGF0ZVBvcnRhbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICBNQVRfRElBTE9HX0RBVEEsXG4gIE1BVF9ESUFMT0dfREVGQVVMVF9PUFRJT05TLFxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgQW5pbWF0aW9uQ3VydmVzLCBBbmltYXRpb25EdXJhdGlvbnMgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7XG4gIENvdmFsZW50U2lkZVNoZWV0Q29udGFpbmVyQ29tcG9uZW50LFxuICBfQ292YWxlbnRTaWRlU2hlZXRDb250YWluZXJCYXNlLFxufSBmcm9tICcuL3NpZGUtc2hlZXQtY29udGFpbmVyJztcbmltcG9ydCB7IFN1YmplY3QsIFN1YnNjcmlwdGlvbiwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERpcmVjdGlvbmFsaXR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuXG5pbXBvcnQgeyBDb3ZhbGVudFNpZGVTaGVldFJlZiB9IGZyb20gJy4vc2lkZS1zaGVldC1yZWYnO1xuaW1wb3J0IHsgU3ViUGFnZU1vZGUsIENvdmFsZW50U2lkZVNoZWV0Q29uZmlnIH0gZnJvbSAnLi9zaWRlLXNoZWV0LmNvbmZpZyc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIF9Db3ZhbGVudFNpZGVTaGVldEJhc2U8QyBleHRlbmRzIF9Db3ZhbGVudFNpZGVTaGVldENvbnRhaW5lckJhc2U+XG4gIGltcGxlbWVudHMgT25EZXN0cm95XG57XG4gIHByaXZhdGUgX29wZW5TaWRlU2hlZXRzQXRUaGlzTGV2ZWw6IENvdmFsZW50U2lkZVNoZWV0UmVmPHVua25vd24+W10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWZ0ZXJBbGxDbG9zZWRBdFRoaXNMZXZlbCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FmdGVyT3BlbmVkQXRUaGlzTGV2ZWwgPSBuZXcgU3ViamVjdDxcbiAgICBDb3ZhbGVudFNpZGVTaGVldFJlZjx1bmtub3duPlxuICA+KCk7XG4gIHByaXZhdGUgX2FuaW1hdGlvblN0YXRlU3Vic2NyaXB0aW9ucyE6IFN1YnNjcmlwdGlvbjtcblxuICBwcml2YXRlIGRlZmF1bHRTaWRlYmFyQ29uZmlnID0ge1xuICAgIG1pbldpZHRoOiAnNDAwcHgnLFxuICAgIG1heFdpZHRoOiAnMTAwdncnLFxuICB9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksXG4gICAgcHJpdmF0ZSBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByaXZhdGUgX2RlZmF1bHRPcHRpb25zOiBDb3ZhbGVudFNpZGVTaGVldENvbmZpZyB8IHVuZGVmaW5lZCxcbiAgICBwcml2YXRlIF9wYXJlbnRTaWRlU2hlZXQ6IF9Db3ZhbGVudFNpZGVTaGVldEJhc2U8Qz4gfCB1bmRlZmluZWQsXG4gICAgcHJpdmF0ZSBfc2lkZVNoZWV0UmVmQ29uc3RydWN0b3I6IFR5cGU8Q292YWxlbnRTaWRlU2hlZXRSZWY8YW55Pj4sXG4gICAgcHJpdmF0ZSBfc2lkZVNoZWV0Q29udGFpbmVyVHlwZTogVHlwZTxDPixcbiAgICBwcml2YXRlIF9zaWRlU2hlZXREYXRhVG9rZW46IEluamVjdGlvblRva2VuPHVua25vd24+LFxuICApIHt9XG5cbiAgLyoqIEtlZXBzIHRyYWNrIG9mIHRoZSBjdXJyZW50bHktb3BlbiBzaWRlLXNoZWV0cy4gKi9cbiAgZ2V0IG9wZW5TaWRlU2hlZXRzKCk6IENvdmFsZW50U2lkZVNoZWV0UmVmPHVua25vd24+W10ge1xuICAgIHJldHVybiB0aGlzLl9wYXJlbnRTaWRlU2hlZXRcbiAgICAgID8gdGhpcy5fcGFyZW50U2lkZVNoZWV0Lm9wZW5TaWRlU2hlZXRzXG4gICAgICA6IHRoaXMuX29wZW5TaWRlU2hlZXRzQXRUaGlzTGV2ZWw7XG4gIH1cblxuICBvcGVuPFQsIEQgPSB1bmtub3duLCBSID0gdW5rbm93bj4oXG4gICAgY29tcG9uZW50T3JUZW1wbGF0ZVJlZjogQ29tcG9uZW50VHlwZTxUPiB8IFRlbXBsYXRlUmVmPFQ+LFxuICAgIGNvbmZpZz86IENvdmFsZW50U2lkZVNoZWV0Q29uZmlnPEQ+LFxuICApOiBDb3ZhbGVudFNpZGVTaGVldFJlZjxULCBSPiB7XG4gICAgY29uZmlnID0ge1xuICAgICAgLi4uKHRoaXMuX2RlZmF1bHRPcHRpb25zIHx8IG5ldyBDb3ZhbGVudFNpZGVTaGVldENvbmZpZygpKSxcbiAgICAgIC4uLnRoaXMuZGVmYXVsdFNpZGViYXJDb25maWcsXG4gICAgICAuLi5jb25maWcsXG4gICAgfTtcblxuICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLl9jcmVhdGVPdmVybGF5KGNvbmZpZyk7XG4gICAgY29uc3Qgc2lkZVNoZWV0Q29udGFpbmVyID0gdGhpcy5fYXR0YWNoU2lkZVNoZWV0Q29udGFpbmVyKFxuICAgICAgb3ZlcmxheVJlZixcbiAgICAgIGNvbmZpZyxcbiAgICApO1xuICAgIGNvbnN0IHNpZGVTaGVldFJlZiA9IHRoaXMuX2F0dGFjaFNpZGVTaGVldENvbnRlbnQ8VCwgUj4oXG4gICAgICBjb21wb25lbnRPclRlbXBsYXRlUmVmLFxuICAgICAgc2lkZVNoZWV0Q29udGFpbmVyLFxuICAgICAgb3ZlcmxheVJlZixcbiAgICAgIGNvbmZpZyxcbiAgICApO1xuICAgIGNvbnN0IHByZXZTaWRlU2hlZXRSZWY6IENvdmFsZW50U2lkZVNoZWV0UmVmPHVua25vd24+ID1cbiAgICAgIHRoaXMub3BlblNpZGVTaGVldHMuc2xpY2UoLTEpWzBdO1xuICAgIGNvbnN0IHByZXZPdmVybGF5UmVmID0gcHJldlNpZGVTaGVldFJlZj8ub3ZlcmxheVJlZjtcblxuICAgIGlmIChcbiAgICAgIHByZXZPdmVybGF5UmVmPy5vdmVybGF5RWxlbWVudCAmJlxuICAgICAgY29uZmlnLnN1YlBhZ2VNb2RlICE9PSBTdWJQYWdlTW9kZS5ub25lXG4gICAgKSB7XG4gICAgICBwcmV2T3ZlcmxheVJlZi5vdmVybGF5RWxlbWVudC5zdHlsZS50cmFuc2l0aW9uID0gYCR7QW5pbWF0aW9uRHVyYXRpb25zLkNPTVBMRVh9ICR7QW5pbWF0aW9uQ3VydmVzLkRFQ0VMRVJBVElPTl9DVVJWRX1gO1xuICAgICAgaWYgKGNvbmZpZy5zdWJQYWdlTW9kZSA9PT0gU3ViUGFnZU1vZGUucHVzaGVkKSB7XG4gICAgICAgIC8vIEFuaW1hdGUgcHJldmlvdXMgc2lkZSBzaGVldCB0byBmdWxsIHdpZHRoXG4gICAgICAgIHByZXZPdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LnN0eWxlLm1pbldpZHRoID0gYCR7XG4gICAgICAgICAgKHdpbmRvdyBhcyBhbnkpLmlubmVyV2lkdGhcbiAgICAgICAgfXB4YDtcbiAgICAgIH0gZWxzZSBpZiAoY29uZmlnLnN1YlBhZ2VNb2RlID09PSBTdWJQYWdlTW9kZS5zaGlmdGVkKSB7XG4gICAgICAgIC8vIEFuaW1hdGUgcHJldmlvdXMgc2lkZSBzaGVldCB0byBjdXJyZW50IHNpZGVzaGVldCB3aWR0aCArIDIwMHB4XG4gICAgICAgIHByZXZPdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LnN0eWxlLm1pbldpZHRoID0gYCR7XG4gICAgICAgICAgc2lkZVNoZWV0UmVmLm92ZXJsYXlSZWYub3ZlcmxheUVsZW1lbnQub2Zmc2V0V2lkdGggKyAyMDBcbiAgICAgICAgfXB4YDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXZlcnQgdGhlIHByZXZpb3VzIHNpZGUgc2hlZXQgY29uZmlnICYgc2l6ZVxuICAgIHNpZGVTaGVldFJlZi5fY29udGFpbmVySW5zdGFuY2UuX2FuaW1hdGlvblN0YXRlQ2hhbmdlZFxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcihcbiAgICAgICAgICAoZXZlbnQpID0+XG4gICAgICAgICAgICBldmVudC5zdGF0ZSA9PT0gJ2Nsb3NpbmcnICYmICEhKHByZXZTaWRlU2hlZXRSZWYgJiYgcHJldk92ZXJsYXlSZWYpLFxuICAgICAgICApLFxuICAgICAgICB0YWtlKDEpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHByZXZPdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LnN0eWxlLnRyYW5zaXRpb24gPSBgJHtBbmltYXRpb25EdXJhdGlvbnMuRVhJVElOR30gJHtBbmltYXRpb25DdXJ2ZXMuREVDRUxFUkFUSU9OX0NVUlZFfWA7XG4gICAgICAgIHByZXZTaWRlU2hlZXRSZWYudXBkYXRlU2l6ZSgpO1xuICAgICAgfSk7XG5cbiAgICAvLyBBZGQgbmV3IHNpZGUgc2hlZXQgdG8gb3BlbiBsaXN0XG4gICAgdGhpcy5vcGVuU2lkZVNoZWV0cy5wdXNoKHNpZGVTaGVldFJlZik7XG5cbiAgICAvLyBSZW1vdmUgc2lkZSBzaGVldCByZWYgYWZ0ZXIgY2xvc2VkXG4gICAgc2lkZVNoZWV0UmVmXG4gICAgICAuYWZ0ZXJDbG9zZWQoKVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fcmVtb3ZlT3BlblNpZGVTaGVldChzaWRlU2hlZXRSZWYpKTtcblxuICAgIC8vIE5vdGlmeSB0aGUgc2lkZS1zaGVldCBjb250YWluZXIgdGhhdCB0aGUgY29udGVudCBoYXMgYmVlbiBhdHRhY2hlZC5cbiAgICBzaWRlU2hlZXRDb250YWluZXIuX2luaXRpYWxpemVXaXRoQXR0YWNoZWRDb250ZW50KCk7XG5cbiAgICByZXR1cm4gc2lkZVNoZWV0UmVmO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgLy8gT25seSBjbG9zZSB0aGUgc2lkZS1zaGVldHMgYXQgdGhpcyBsZXZlbCBvbiBkZXN0cm95XG4gICAgLy8gc2luY2UgdGhlIHBhcmVudCBzZXJ2aWNlIG1heSBzdGlsbCBiZSBhY3RpdmUuXG4gICAgdGhpcy5fY2xvc2VTaWRlU2hlZXRzKHRoaXMuX29wZW5TaWRlU2hlZXRzQXRUaGlzTGV2ZWwpO1xuICAgIHRoaXMuX2FmdGVyQWxsQ2xvc2VkQXRUaGlzTGV2ZWwuY29tcGxldGUoKTtcbiAgICB0aGlzLl9hZnRlck9wZW5lZEF0VGhpc0xldmVsLmNvbXBsZXRlKCk7XG4gICAgLy8gQ2xlYW4gdXAgYW55IHN1YnNjcmlwdGlvbnMgdG8gc2lkZS1zaGVldCB0aGF0IG5ldmVyIGZpbmlzaGVkIG9wZW5pbmcuXG4gICAgaWYgKHRoaXMuX2FuaW1hdGlvblN0YXRlU3Vic2NyaXB0aW9ucykge1xuICAgICAgdGhpcy5fYW5pbWF0aW9uU3RhdGVTdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlcyBhbGwgb2YgdGhlIGN1cnJlbnRseS1vcGVuIHNpZGUtc2hlZXRzLlxuICAgKi9cbiAgY2xvc2VBbGwoKTogdm9pZCB7XG4gICAgdGhpcy5fY2xvc2VTaWRlU2hlZXRzKHRoaXMub3BlblNpZGVTaGVldHMpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY3JlYXRlT3ZlcmxheTxUPihjb25maWc6IENvdmFsZW50U2lkZVNoZWV0Q29uZmlnKTogT3ZlcmxheVJlZiB7XG4gICAgY29uc3Qgb3ZlcmxheUNvbmZpZyA9IG5ldyBPdmVybGF5Q29uZmlnKHtcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXkucG9zaXRpb24oKS5nbG9iYWwoKSxcbiAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLl9vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMuYmxvY2soKSxcbiAgICAgIHBhbmVsQ2xhc3M6IGNvbmZpZy5wYW5lbENsYXNzLFxuICAgICAgaGFzQmFja2Ryb3A6IGNvbmZpZy5oYXNCYWNrZHJvcCxcbiAgICAgIGRpcmVjdGlvbjogY29uZmlnLmRpcmVjdGlvbixcbiAgICAgIG1pbldpZHRoOiBjb25maWcubWluV2lkdGgsXG4gICAgICBtaW5IZWlnaHQ6IGNvbmZpZy5taW5IZWlnaHQsXG4gICAgICBtYXhXaWR0aDogY29uZmlnLm1heFdpZHRoLFxuICAgIH0pO1xuICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5LmNyZWF0ZShvdmVybGF5Q29uZmlnKTtcbiAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gb3ZlcmxheVJlZi5nZXRDb25maWcoKVxuICAgICAgLnBvc2l0aW9uU3RyYXRlZ3kgYXMgR2xvYmFsUG9zaXRpb25TdHJhdGVneTtcbiAgICBwb3NpdGlvblN0cmF0ZWd5LnJpZ2h0KCcwcHgnKTtcblxuICAgIHJldHVybiBvdmVybGF5UmVmO1xuICB9XG5cbiAgLyoqXG4gICAqIEF0dGFjaGVzIGEgY29udGFpbmVyIHRvIGEgc2lkZS1zaGVldHMncyBhbHJlYWR5LWNyZWF0ZWQgb3ZlcmxheS5cbiAgICogQHBhcmFtIG92ZXJsYXkgUmVmZXJlbmNlIHRvIHRoZSBzaWRlLXNoZWV0J3MgdW5kZXJseWluZyBvdmVybGF5LlxuICAgKiBAcGFyYW0gY29uZmlnIFRoZSBzaWRlLXNoZWV0IGNvbmZpZ3VyYXRpb24uXG4gICAqIEByZXR1cm5zIEEgcHJvbWlzZSByZXNvbHZpbmcgdG8gYSBDb21wb25lbnRSZWYgZm9yIHRoZSBhdHRhY2hlZCBjb250YWluZXIuXG4gICAqL1xuICBwcml2YXRlIF9hdHRhY2hTaWRlU2hlZXRDb250YWluZXIoXG4gICAgb3ZlcmxheTogT3ZlcmxheVJlZixcbiAgICBjb25maWc6IENvdmFsZW50U2lkZVNoZWV0Q29uZmlnLFxuICApOiBDIHtcbiAgICBjb25zdCB1c2VySW5qZWN0b3IgPVxuICAgICAgY29uZmlnICYmIGNvbmZpZy52aWV3Q29udGFpbmVyUmVmICYmIGNvbmZpZy52aWV3Q29udGFpbmVyUmVmLmluamVjdG9yO1xuICAgIGNvbnN0IGluamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHBhcmVudDogdXNlckluamVjdG9yIHx8IHRoaXMuX2luamVjdG9yLFxuICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBDb3ZhbGVudFNpZGVTaGVldENvbmZpZywgdXNlVmFsdWU6IGNvbmZpZyB9XSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGNvbnRhaW5lclBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoXG4gICAgICB0aGlzLl9zaWRlU2hlZXRDb250YWluZXJUeXBlLFxuICAgICAgY29uZmlnLnZpZXdDb250YWluZXJSZWYsXG4gICAgICBpbmplY3RvcixcbiAgICApO1xuICAgIGNvbnN0IGNvbnRhaW5lclJlZiA9IG92ZXJsYXkuYXR0YWNoPEM+KGNvbnRhaW5lclBvcnRhbCk7XG5cbiAgICByZXR1cm4gY29udGFpbmVyUmVmLmluc3RhbmNlO1xuICB9XG5cbiAgLyoqXG4gICAqIEF0dGFjaGVzIHRoZSB1c2VyLXByb3ZpZGVkIGNvbXBvbmVudCB0byB0aGUgYWxyZWFkeS1jcmVhdGVkIHNpZGUgc2hlZXQgY29udGFpbmVyLlxuICAgKiBAcGFyYW0gY29tcG9uZW50T3JUZW1wbGF0ZVJlZiBUaGUgdHlwZSBvZiBjb21wb25lbnQgYmVpbmcgbG9hZGVkIGludG8gdGhlIHNpZGUtc2hlZXQsXG4gICAqICAgICBvciBhIFRlbXBsYXRlUmVmIHRvIGluc3RhbnRpYXRlIGFzIHRoZSBjb250ZW50LlxuICAgKiBAcGFyYW0gZGlhbG9nQ29udGFpbmVyIFJlZmVyZW5jZSB0byB0aGUgd3JhcHBpbmcgc2lkZS1zaGVldCBjb250YWluZXIuXG4gICAqIEBwYXJhbSBvdmVybGF5UmVmIFJlZmVyZW5jZSB0byB0aGUgb3ZlcmxheSBpbiB3aGljaCB0aGUgc2lkZS1zaGVldCByZXNpZGVzLlxuICAgKiBAcGFyYW0gY29uZmlnIFRoZSBzaWRlLXNoZWV0IGNvbmZpZ3VyYXRpb24uXG4gICAqIEByZXR1cm5zIEEgcHJvbWlzZSByZXNvbHZpbmcgdG8gdGhlIENvdmFsZW50U2lkZVNoZWV0UmVmIHRoYXQgc2hvdWxkIGJlIHJldHVybmVkIHRvIHRoZSB1c2VyLlxuICAgKi9cbiAgcHJpdmF0ZSBfYXR0YWNoU2lkZVNoZWV0Q29udGVudDxULCBSPihcbiAgICBjb21wb25lbnRPclRlbXBsYXRlUmVmOiBDb21wb25lbnRUeXBlPFQ+IHwgVGVtcGxhdGVSZWY8VD4sXG4gICAgc2lkZVNoZWV0Q29udGFpbmVyOiBDLFxuICAgIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYsXG4gICAgY29uZmlnOiBDb3ZhbGVudFNpZGVTaGVldENvbmZpZyxcbiAgKTogQ292YWxlbnRTaWRlU2hlZXRSZWY8VCwgUj4ge1xuICAgIC8vIENyZWF0ZSBhIHJlZmVyZW5jZSB0byB0aGUgc2lkZS1zaGVldCB3ZSdyZSBjcmVhdGluZyBpbiBvcmRlciB0byBnaXZlIHRoZSB1c2VyIGEgaGFuZGxlXG4gICAgLy8gdG8gbW9kaWZ5IGFuZCBjbG9zZSBpdC5cbiAgICBjb25zdCBzaWRlU2hlZXRSZWYgPSBuZXcgdGhpcy5fc2lkZVNoZWV0UmVmQ29uc3RydWN0b3IoXG4gICAgICBvdmVybGF5UmVmLFxuICAgICAgY29uZmlnLFxuICAgICAgc2lkZVNoZWV0Q29udGFpbmVyLFxuICAgICAgY29uZmlnLmlkLFxuICAgICk7XG5cbiAgICBpZiAoY29tcG9uZW50T3JUZW1wbGF0ZVJlZiBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmKSB7XG4gICAgICBzaWRlU2hlZXRDb250YWluZXIuYXR0YWNoVGVtcGxhdGVQb3J0YWwoXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgICAgIG5ldyBUZW1wbGF0ZVBvcnRhbDxUPihjb21wb25lbnRPclRlbXBsYXRlUmVmLCBudWxsISwgPGFueT57XG4gICAgICAgICAgJGltcGxpY2l0OiBjb25maWcuZGF0YSxcbiAgICAgICAgICBzaWRlU2hlZXRSZWYsXG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgaW5qZWN0b3IgPSB0aGlzLl9jcmVhdGVJbmplY3RvcjxUPihcbiAgICAgICAgY29uZmlnLFxuICAgICAgICBzaWRlU2hlZXRSZWYsXG4gICAgICAgIHNpZGVTaGVldENvbnRhaW5lcixcbiAgICAgICk7XG4gICAgICBjb25zdCBjb250ZW50UmVmID0gc2lkZVNoZWV0Q29udGFpbmVyLmF0dGFjaDxUPihcbiAgICAgICAgbmV3IENvbXBvbmVudFBvcnRhbChcbiAgICAgICAgICBjb21wb25lbnRPclRlbXBsYXRlUmVmLFxuICAgICAgICAgIGNvbmZpZy52aWV3Q29udGFpbmVyUmVmLFxuICAgICAgICAgIGluamVjdG9yLFxuICAgICAgICApLFxuICAgICAgKTtcbiAgICAgIHNpZGVTaGVldFJlZi5jb21wb25lbnRJbnN0YW5jZSA9IGNvbnRlbnRSZWYuaW5zdGFuY2U7XG4gICAgfVxuXG4gICAgc2lkZVNoZWV0UmVmLnVwZGF0ZVNpemUoY29uZmlnLndpZHRoLCBjb25maWcuaGVpZ2h0KTtcblxuICAgIHJldHVybiBzaWRlU2hlZXRSZWY7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVJbmplY3RvcjxUPihcbiAgICBjb25maWc6IENvdmFsZW50U2lkZVNoZWV0Q29uZmlnLFxuICAgIHNpZGVTaGVldFJlZjogQ292YWxlbnRTaWRlU2hlZXRSZWY8VD4sXG4gICAgc2lkZVNoZWV0Q29udGFpbmVyOiBDLFxuICApOiBJbmplY3RvciB7XG4gICAgY29uc3QgdXNlckluamVjdG9yID1cbiAgICAgIGNvbmZpZyAmJiBjb25maWcudmlld0NvbnRhaW5lclJlZiAmJiBjb25maWcudmlld0NvbnRhaW5lclJlZi5pbmplY3RvcjtcblxuICAgIC8vIFRoZSBzaWRlLXNoZWV0IGNvbnRhaW5lciBzaG91bGQgYmUgcHJvdmlkZWQgYXMgdGhlIHNpZGUtc2hlZXQgY29udGFpbmVyIGFuZCB0aGUgc2lkZS1zaGVldCdzXG4gICAgLy8gY29udGVudCBhcmUgY3JlYXRlZCBvdXQgb2YgdGhlIHNhbWUgYFZpZXdDb250YWluZXJSZWZgIGFuZCBhcyBzdWNoLCBhcmUgc2libGluZ3NcbiAgICAvLyBmb3IgaW5qZWN0b3IgcHVycG9zZXMuIFRvIGFsbG93IHRoZSBoaWVyYXJjaHkgdGhhdCBpcyBleHBlY3RlZCwgdGhlIHNpZGUtc2hlZXRcbiAgICAvLyBjb250YWluZXIgaXMgZXhwbGljaXRseSBwcm92aWRlZCBpbiB0aGUgaW5qZWN0b3IuXG4gICAgY29uc3QgcHJvdmlkZXJzOiBTdGF0aWNQcm92aWRlcltdID0gW1xuICAgICAgeyBwcm92aWRlOiB0aGlzLl9zaWRlU2hlZXRDb250YWluZXJUeXBlLCB1c2VWYWx1ZTogc2lkZVNoZWV0Q29udGFpbmVyIH0sXG4gICAgICB7IHByb3ZpZGU6IHRoaXMuX3NpZGVTaGVldERhdGFUb2tlbiwgdXNlVmFsdWU6IGNvbmZpZy5kYXRhIH0sXG4gICAgICB7IHByb3ZpZGU6IHRoaXMuX3NpZGVTaGVldFJlZkNvbnN0cnVjdG9yLCB1c2VWYWx1ZTogc2lkZVNoZWV0UmVmIH0sXG4gICAgXTtcblxuICAgIGlmIChcbiAgICAgIGNvbmZpZy5kaXJlY3Rpb24gJiZcbiAgICAgICghdXNlckluamVjdG9yIHx8XG4gICAgICAgICF1c2VySW5qZWN0b3IuZ2V0PERpcmVjdGlvbmFsaXR5IHwgbnVsbD4oRGlyZWN0aW9uYWxpdHksIG51bGwsIHtcbiAgICAgICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICAgICAgfSkpXG4gICAgKSB7XG4gICAgICBwcm92aWRlcnMucHVzaCh7XG4gICAgICAgIHByb3ZpZGU6IERpcmVjdGlvbmFsaXR5LFxuICAgICAgICB1c2VWYWx1ZTogeyB2YWx1ZTogY29uZmlnLmRpcmVjdGlvbiwgY2hhbmdlOiBvZigpIH0sXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHBhcmVudDogdXNlckluamVjdG9yIHx8IHRoaXMuX2luamVjdG9yLFxuICAgICAgcHJvdmlkZXJzLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYSBzaWRlIHNoZWV0IGZyb20gdGhlIGFycmF5IG9mIG9wZW4gc2lkZSBzaGVldHMuXG4gICAqIEBwYXJhbSBzaWRlU2hlZXRSZWYgU2lkZSBTaGVldCB0byBiZSByZW1vdmVkLlxuICAgKi9cbiAgcHJpdmF0ZSBfcmVtb3ZlT3BlblNpZGVTaGVldChzaWRlU2hlZXRSZWY6IENvdmFsZW50U2lkZVNoZWV0UmVmPHVua25vd24+KSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLm9wZW5TaWRlU2hlZXRzLmluZGV4T2Yoc2lkZVNoZWV0UmVmKTtcblxuICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICB0aGlzLm9wZW5TaWRlU2hlZXRzLnNwbGljZShpbmRleCwgMSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIENsb3NlcyBhbGwgb2YgdGhlIHNpZGUtc2hlZXQgaW4gYW4gYXJyYXkuICovXG4gIHByaXZhdGUgX2Nsb3NlU2lkZVNoZWV0cyhzaWRlU2hlZXRzOiBDb3ZhbGVudFNpZGVTaGVldFJlZjxhbnk+W10pIHtcbiAgICBsZXQgaSA9IHNpZGVTaGVldHMubGVuZ3RoO1xuXG4gICAgd2hpbGUgKGktLSkge1xuICAgICAgc2lkZVNoZWV0c1tpXS5jbG9zZSgpO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFNlcnZpY2UgdG8gb3BlbiBDb3ZhbGVudCBEZXNpZ24gc2lkZS1zaGVldC5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENvdmFsZW50U2lkZVNoZWV0IGV4dGVuZHMgX0NvdmFsZW50U2lkZVNoZWV0QmFzZTxDb3ZhbGVudFNpZGVTaGVldENvbnRhaW5lckNvbXBvbmVudD4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBvdmVybGF5OiBPdmVybGF5LFxuICAgIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBAT3B0aW9uYWwoKVxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19ERUZBVUxUX09QVElPTlMpXG4gICAgZGVmYXVsdE9wdGlvbnM6IENvdmFsZW50U2lkZVNoZWV0Q29uZmlnLFxuICAgIEBPcHRpb25hbCgpIEBTa2lwU2VsZigpIHBhcmVudFNpZGVTaGVldDogQ292YWxlbnRTaWRlU2hlZXQsXG4gICkge1xuICAgIHN1cGVyKFxuICAgICAgb3ZlcmxheSxcbiAgICAgIGluamVjdG9yLFxuICAgICAgZGVmYXVsdE9wdGlvbnMsXG4gICAgICBwYXJlbnRTaWRlU2hlZXQsXG4gICAgICBDb3ZhbGVudFNpZGVTaGVldFJlZixcbiAgICAgIENvdmFsZW50U2lkZVNoZWV0Q29udGFpbmVyQ29tcG9uZW50LFxuICAgICAgTUFUX0RJQUxPR19EQVRBLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==","/* tslint:disable */\nimport { Directive, Input, Optional, ElementRef, HostBinding, HostListener, } from '@angular/core';\nimport { CovalentSideSheet } from './side-sheet';\nimport { _closeSideSheetVia, CovalentSideSheetRef } from './side-sheet-ref';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"./side-sheet-ref\";\nimport * as i2 from \"./side-sheet\";\n/** Counter used to generate unique IDs for dialog elements. */\nlet dialogElementUid = 0;\n/**\n * Button that will close the current dialog.\n */\nexport class CovalentSideSheetCloseDirective {\n dialogRef;\n _elementRef;\n _dialog;\n /** Screenreader label for the button. */\n ariaLabel;\n /** Default to \"button\" to prevents accidental form submits. */\n type = 'button';\n /** Dialog close input. */\n dialogResult;\n _CovalentSideSheetClose;\n onClick($event) {\n this._onButtonClick($event);\n }\n constructor(dialogRef, _elementRef, _dialog) {\n this.dialogRef = dialogRef;\n this._elementRef = _elementRef;\n this._dialog = _dialog;\n }\n ngOnInit() {\n if (!this.dialogRef) {\n // When this directive is included in a dialog via TemplateRef (rather than being\n // in a Component), the DialogRef isn't available via injection because embedded\n // views cannot be given a custom injector. Instead, we look up the DialogRef by\n // ID. This must occur in `onInit`, as the ID binding for the dialog container won't\n // be resolved at constructor time.\n this.dialogRef = getClosestDialog(this._elementRef, this._dialog.openSideSheets);\n }\n }\n ngOnChanges(changes) {\n const proxiedChange = changes['_CovalentSideSheetClose'] ||\n changes['_CovalentSideSheetCloseResult'];\n if (proxiedChange) {\n this.dialogResult = proxiedChange.currentValue;\n }\n }\n _onButtonClick(event) {\n // Determinate the focus origin using the click event, because using the FocusMonitor will\n // result in incorrect origins. Most of the time, close buttons will be auto focused in the\n // dialog, and therefore clicking the button won't result in a focus change. This means that\n // the FocusMonitor won't detect any origin change, and will always output `program`.\n _closeSideSheetVia(this.dialogRef, event.screenX === 0 && event.screenY === 0 ? 'keyboard' : 'mouse', this.dialogResult);\n }\n static ɵfac = function CovalentSideSheetCloseDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheetCloseDirective)(i0.ɵɵdirectiveInject(i1.CovalentSideSheetRef, 8), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i2.CovalentSideSheet)); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: CovalentSideSheetCloseDirective, selectors: [[\"\", \"td-side-sheet-close\", \"\"], [\"\", \"CovalentSideSheetClose\", \"\"]], hostVars: 2, hostBindings: function CovalentSideSheetCloseDirective_HostBindings(rf, ctx) { if (rf & 1) {\n i0.ɵɵlistener(\"click\", function CovalentSideSheetCloseDirective_click_HostBindingHandler($event) { return ctx.onClick($event); });\n } if (rf & 2) {\n i0.ɵɵattribute(\"arial-label\", ctx.ariaLabel)(\"type\", ctx.type);\n } }, inputs: { ariaLabel: [0, \"aria-label\", \"ariaLabel\"], type: \"type\", dialogResult: [0, \"td-side-sheet-close\", \"dialogResult\"], _CovalentSideSheetClose: [0, \"CovalentSideSheetClose\", \"_CovalentSideSheetClose\"] }, exportAs: [\"CovalentSideSheetClose\"], features: [i0.ɵɵNgOnChangesFeature] });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetCloseDirective, [{\n type: Directive,\n args: [{\n selector: '[td-side-sheet-close], [CovalentSideSheetClose]',\n exportAs: 'CovalentSideSheetClose',\n }]\n }], () => [{ type: i1.CovalentSideSheetRef, decorators: [{\n type: Optional\n }] }, { type: i0.ElementRef }, { type: i2.CovalentSideSheet }], { ariaLabel: [{\n type: HostBinding,\n args: ['attr.arial-label']\n }, {\n type: Input,\n args: ['aria-label']\n }], type: [{\n type: HostBinding,\n args: ['attr.type']\n }, {\n type: Input\n }], dialogResult: [{\n type: Input,\n args: ['td-side-sheet-close']\n }], _CovalentSideSheetClose: [{\n type: Input,\n args: ['CovalentSideSheetClose']\n }], onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] }); })();\n/**\n * Title of a side sheet element. Stays fixed to the top of the side sheet when scrolling.\n */\nexport class CovalentSideSheetTitleDirective {\n _dialogRef;\n _elementRef;\n _dialog;\n /** Unique id for the dialog title. If none is supplied, it will be auto-generated. */\n id = `td-side-sheet-title-${dialogElementUid++}`;\n tdSideSheetTitle = true;\n idAttr = this.id;\n constructor(\n // The dialog title directive is always used in combination with a `CovalentSideSheetRef`.\n // tslint:disable-next-line: lightweight-tokens\n _dialogRef, _elementRef, _dialog) {\n this._dialogRef = _dialogRef;\n this._elementRef = _elementRef;\n this._dialog = _dialog;\n }\n ngOnInit() {\n if (this._dialogRef) {\n Promise.resolve().then(() => {\n const container = this._dialogRef._containerInstance;\n if (container && !container._ariaLabelledByQueue.includes(this.id)) {\n container._ariaLabelledByQueue.push(this.id);\n }\n });\n }\n else {\n this._dialogRef = getClosestDialog(this._elementRef, this._dialog.openSideSheets);\n }\n }\n static ɵfac = function CovalentSideSheetTitleDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheetTitleDirective)(i0.ɵɵdirectiveInject(i1.CovalentSideSheetRef, 8), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i2.CovalentSideSheet)); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: CovalentSideSheetTitleDirective, selectors: [[\"\", \"td-side-sheet-title\", \"\"], [\"\", \"CovalentSideSheetTitle\", \"\"]], hostVars: 3, hostBindings: function CovalentSideSheetTitleDirective_HostBindings(rf, ctx) { if (rf & 2) {\n i0.ɵɵattribute(\"id\", ctx.idAttr);\n i0.ɵɵclassProp(\"td-side-sheet-title\", ctx.tdSideSheetTitle);\n } }, inputs: { id: \"id\" }, exportAs: [\"CovalentSideSheetTitle\"] });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetTitleDirective, [{\n type: Directive,\n args: [{\n selector: '[td-side-sheet-title], [CovalentSideSheetTitle]',\n exportAs: 'CovalentSideSheetTitle',\n }]\n }], () => [{ type: i1.CovalentSideSheetRef, decorators: [{\n type: Optional\n }] }, { type: i0.ElementRef }, { type: i2.CovalentSideSheet }], { id: [{\n type: Input\n }], tdSideSheetTitle: [{\n type: HostBinding,\n args: ['class.td-side-sheet-title']\n }], idAttr: [{\n type: HostBinding,\n args: ['attr.id']\n }] }); })();\n/**\n * Scrollable content container of a dialog.\n */\nexport class CovalentSideSheetContentDirective {\n tdSideSheetContent = true;\n static ɵfac = function CovalentSideSheetContentDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheetContentDirective)(); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: CovalentSideSheetContentDirective, selectors: [[\"\", \"td-side-sheet-content\", \"\"], [\"td-side-sheet-content\"], [\"\", \"CovalentSideSheetContent\", \"\"]], hostVars: 2, hostBindings: function CovalentSideSheetContentDirective_HostBindings(rf, ctx) { if (rf & 2) {\n i0.ɵɵclassProp(\"td-side-sheet-content\", ctx.tdSideSheetContent);\n } } });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetContentDirective, [{\n type: Directive,\n args: [{\n selector: `[td-side-sheet-content], td-side-sheet-content, [CovalentSideSheetContent]`,\n }]\n }], null, { tdSideSheetContent: [{\n type: HostBinding,\n args: ['class.td-side-sheet-content']\n }] }); })();\n/**\n * Container for the bottom action buttons in a dialog.\n * Stays fixed to the bottom when scrolling.\n */\nexport class CovalentSideSheetActionsDirective {\n tdSideSheetActions = true;\n static ɵfac = function CovalentSideSheetActionsDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheetActionsDirective)(); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: CovalentSideSheetActionsDirective, selectors: [[\"\", \"td-side-sheet-actions\", \"\"], [\"td-side-sheet-actions\"], [\"\", \"CovalentSideSheetActions\", \"\"]], hostVars: 2, hostBindings: function CovalentSideSheetActionsDirective_HostBindings(rf, ctx) { if (rf & 2) {\n i0.ɵɵclassProp(\"td-side-sheet-actions\", ctx.tdSideSheetActions);\n } } });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetActionsDirective, [{\n type: Directive,\n args: [{\n selector: `[td-side-sheet-actions], td-side-sheet-actions, [CovalentSideSheetActions]`,\n }]\n }], null, { tdSideSheetActions: [{\n type: HostBinding,\n args: ['class.td-side-sheet-actions']\n }] }); })();\n/**\n * Container for the wrapper part of the dialog\n */\nexport class CovalentSideSheetWrapperDirective {\n tdSideSheetWrapper = true;\n static ɵfac = function CovalentSideSheetWrapperDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheetWrapperDirective)(); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: CovalentSideSheetWrapperDirective, selectors: [[\"\", \"td-side-sheet-wrapper\", \"\"], [\"td-side-sheet-wrapper\"], [\"\", \"CovalentSideSheetWrapper\", \"\"]], hostVars: 2, hostBindings: function CovalentSideSheetWrapperDirective_HostBindings(rf, ctx) { if (rf & 2) {\n i0.ɵɵclassProp(\"td-side-sheet-wrapper\", ctx.tdSideSheetWrapper);\n } } });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetWrapperDirective, [{\n type: Directive,\n args: [{\n selector: `[td-side-sheet-wrapper], td-side-sheet-wrapper, [CovalentSideSheetWrapper]`,\n }]\n }], null, { tdSideSheetWrapper: [{\n type: HostBinding,\n args: ['class.td-side-sheet-wrapper']\n }] }); })();\n/**\n * Finds the closest CovalentSideSheetRef to an element by looking at the DOM.\n * @param element Element relative to which to look for a dialog.\n * @param openDialogs References to the currently-open dialogs.\n */\nfunction getClosestDialog(element, openDialogs) {\n let parent = element.nativeElement.parentElement;\n while (parent && !parent.classList.contains('td-side-sheet-container')) {\n parent = parent.parentElement;\n }\n return parent\n ? openDialogs.find((dialog) => dialog.id === parent?.id) ?? openDialogs[0]\n : openDialogs[0];\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC5jb250ZW50LWRpcmVjdGl2ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC5jb250ZW50LWRpcmVjdGl2ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0JBQW9CO0FBQ3BCLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUdMLFFBQVEsRUFFUixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksR0FDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7QUFFNUUsK0RBQStEO0FBQy9ELElBQUksZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO0FBRXpCOztHQUVHO0FBS0gsTUFBTSxPQUFPLCtCQUErQjtJQXFCckI7SUFDWDtJQUNBO0lBdEJWLHlDQUF5QztJQUd6QyxTQUFTLENBQVU7SUFFbkIsK0RBQStEO0lBRy9ELElBQUksR0FBa0MsUUFBUSxDQUFDO0lBRS9DLDBCQUEwQjtJQUNJLFlBQVksQ0FBTTtJQUVmLHVCQUF1QixDQUFNO0lBRTNCLE9BQU8sQ0FBQyxNQUFrQjtRQUMzRCxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxZQUNxQixTQUFvQyxFQUMvQyxXQUFvQyxFQUNwQyxPQUEwQjtRQUZmLGNBQVMsR0FBVCxTQUFTLENBQTJCO1FBQy9DLGdCQUFXLEdBQVgsV0FBVyxDQUF5QjtRQUNwQyxZQUFPLEdBQVAsT0FBTyxDQUFtQjtJQUNqQyxDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDcEIsaUZBQWlGO1lBQ2pGLGdGQUFnRjtZQUNoRixnRkFBZ0Y7WUFD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YSxDQUFDLGFBQWEsQ0FBQztJQUVyRSxPQUFPLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLHlCQUF5QixDQUFDLEVBQUUsQ0FBQztRQUN2RSxNQUFNLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQztJQUNoQyxDQUFDO0lBRUQsT0FBTyxNQUFNO1FBQ1gsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssTUFBTSxFQUFFLEVBQUUsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDMUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGUgKi9cbmltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPcHRpb25hbCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgRWxlbWVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb3ZhbGVudFNpZGVTaGVldCB9IGZyb20gJy4vc2lkZS1zaGVldCc7XG5pbXBvcnQgeyBfY2xvc2VTaWRlU2hlZXRWaWEsIENvdmFsZW50U2lkZVNoZWV0UmVmIH0gZnJvbSAnLi9zaWRlLXNoZWV0LXJlZic7XG5cbi8qKiBDb3VudGVyIHVzZWQgdG8gZ2VuZXJhdGUgdW5pcXVlIElEcyBmb3IgZGlhbG9nIGVsZW1lbnRzLiAqL1xubGV0IGRpYWxvZ0VsZW1lbnRVaWQgPSAwO1xuXG4vKipcbiAqIEJ1dHRvbiB0aGF0IHdpbGwgY2xvc2UgdGhlIGN1cnJlbnQgZGlhbG9nLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbdGQtc2lkZS1zaGVldC1jbG9zZV0sIFtDb3ZhbGVudFNpZGVTaGVldENsb3NlXScsXG4gIGV4cG9ydEFzOiAnQ292YWxlbnRTaWRlU2hlZXRDbG9zZScsXG59KVxuZXhwb3J0IGNsYXNzIENvdmFsZW50U2lkZVNoZWV0Q2xvc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIC8qKiBTY3JlZW5yZWFkZXIgbGFiZWwgZm9yIHRoZSBidXR0b24uICovXG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhbC1sYWJlbCcpXG4gIEBJbnB1dCgnYXJpYS1sYWJlbCcpXG4gIGFyaWFMYWJlbD86IHN0cmluZztcblxuICAvKiogRGVmYXVsdCB0byBcImJ1dHRvblwiIHRvIHByZXZlbnRzIGFjY2lkZW50YWwgZm9ybSBzdWJtaXRzLiAqL1xuICBASG9zdEJpbmRpbmcoJ2F0dHIudHlwZScpXG4gIEBJbnB1dCgpXG4gIHR5cGU6ICdzdWJtaXQnIHwgJ2J1dHRvbicgfCAncmVzZXQnID0gJ2J1dHRvbic7XG5cbiAgLyoqIERpYWxvZyBjbG9zZSBpbnB1dC4gKi9cbiAgQElucHV0KCd0ZC1zaWRlLXNoZWV0LWNsb3NlJykgZGlhbG9nUmVzdWx0OiBhbnk7XG5cbiAgQElucHV0KCdDb3ZhbGVudFNpZGVTaGVldENsb3NlJykgX0NvdmFsZW50U2lkZVNoZWV0Q2xvc2U6IGFueTtcblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pIG9uQ2xpY2soJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5fb25CdXR0b25DbGljaygkZXZlbnQpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKCkgcHVibGljIGRpYWxvZ1JlZjogQ292YWxlbnRTaWRlU2hlZXRSZWY8YW55PixcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIF9kaWFsb2c6IENvdmFsZW50U2lkZVNoZWV0XG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGlhbG9nUmVmKSB7XG4gICAgICAvLyBXaGVuIHRoaXMgZGlyZWN0aXZlIGlzIGluY2x1ZGVkIGluIGEgZGlhbG9nIHZpYSBUZW1wbGF0ZVJlZiAocmF0aGVyIHRoYW4gYmVpbmdcbiAgICAgIC8vIGluIGEgQ29tcG9uZW50KSwgdGhlIERpYWxvZ1JlZiBpc24ndCBhdmFpbGFibGUgdmlhIGluamVjdGlvbiBiZWNhdXNlIGVtYmVkZGVkXG4gICAgICAvLyB2aWV3cyBjYW5ub3QgYmUgZ2l2ZW4gYSBjdXN0b20gaW5qZWN0b3IuIEluc3RlYWQsIHdlIGxvb2sgdXAgdGhlIERpYWxvZ1JlZiBieVxuICAgICAgLy8gSUQuIFRoaXMgbXVzdCBvY2N1ciBpbiBgb25Jbml0YCwgYXMgdGhlIElEIGJpbmRpbmcgZm9yIHRoZSBkaWFsb2cgY29udGFpbmVyIHdvbid0XG4gICAgICAvLyBiZSByZXNvbHZlZCBhdCBjb25zdHJ1Y3RvciB0aW1lLlxuICAgICAgdGhpcy5kaWFsb2dSZWYgPSBnZXRDbG9zZXN0RGlhbG9nKFxuICAgICAgICB0aGlzLl9lbGVtZW50UmVmLFxuICAgICAgICB0aGlzLl9kaWFsb2cub3BlblNpZGVTaGVldHNcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGNvbnN0IHByb3hpZWRDaGFuZ2UgPVxuICAgICAgY2hhbmdlc1snX0NvdmFsZW50U2lkZVNoZWV0Q2xvc2UnXSB8fFxuICAgICAgY2hhbmdlc1snX0NvdmFsZW50U2lkZVNoZWV0Q2xvc2VSZXN1bHQnXTtcblxuICAgIGlmIChwcm94aWVkQ2hhbmdlKSB7XG4gICAgICB0aGlzLmRpYWxvZ1Jlc3VsdCA9IHByb3hpZWRDaGFuZ2UuY3VycmVudFZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIF9vbkJ1dHRvbkNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgLy8gRGV0ZXJtaW5hdGUgdGhlIGZvY3VzIG9yaWdpbiB1c2luZyB0aGUgY2xpY2sgZXZlbnQsIGJlY2F1c2UgdXNpbmcgdGhlIEZvY3VzTW9uaXRvciB3aWxsXG4gICAgLy8gcmVzdWx0IGluIGluY29ycmVjdCBvcmlnaW5zLiBNb3N0IG9mIHRoZSB0aW1lLCBjbG9zZSBidXR0b25zIHdpbGwgYmUgYXV0byBmb2N1c2VkIGluIHRoZVxuICAgIC8vIGRpYWxvZywgYW5kIHRoZXJlZm9yZSBjbGlja2luZyB0aGUgYnV0dG9uIHdvbid0IHJlc3VsdCBpbiBhIGZvY3VzIGNoYW5nZS4gVGhpcyBtZWFucyB0aGF0XG4gICAgLy8gdGhlIEZvY3VzTW9uaXRvciB3b24ndCBkZXRlY3QgYW55IG9yaWdpbiBjaGFuZ2UsIGFuZCB3aWxsIGFsd2F5cyBvdXRwdXQgYHByb2dyYW1gLlxuICAgIF9jbG9zZVNpZGVTaGVldFZpYShcbiAgICAgIHRoaXMuZGlhbG9nUmVmLFxuICAgICAgZXZlbnQuc2NyZWVuWCA9PT0gMCAmJiBldmVudC5zY3JlZW5ZID09PSAwID8gJ2tleWJvYXJkJyA6ICdtb3VzZScsXG4gICAgICB0aGlzLmRpYWxvZ1Jlc3VsdFxuICAgICk7XG4gIH1cbn1cblxuLyoqXG4gKiBUaXRsZSBvZiBhIHNpZGUgc2hlZXQgZWxlbWVudC4gU3RheXMgZml4ZWQgdG8gdGhlIHRvcCBvZiB0aGUgc2lkZSBzaGVldCB3aGVuIHNjcm9sbGluZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3RkLXNpZGUtc2hlZXQtdGl0bGVdLCBbQ292YWxlbnRTaWRlU2hlZXRUaXRsZV0nLFxuICBleHBvcnRBczogJ0NvdmFsZW50U2lkZVNoZWV0VGl0bGUnLFxufSlcbmV4cG9ydCBjbGFzcyBDb3ZhbGVudFNpZGVTaGVldFRpdGxlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgLyoqIFVuaXF1ZSBpZCBmb3IgdGhlIGRpYWxvZyB0aXRsZS4gSWYgbm9uZSBpcyBzdXBwbGllZCwgaXQgd2lsbCBiZSBhdXRvLWdlbmVyYXRlZC4gKi9cbiAgQElucHV0KCkgaWQgPSBgdGQtc2lkZS1zaGVldC10aXRsZS0ke2RpYWxvZ0VsZW1lbnRVaWQrK31gO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MudGQtc2lkZS1zaGVldC10aXRsZScpIHRkU2lkZVNoZWV0VGl0bGUgPSB0cnVlO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5pZCcpIGlkQXR0ciA9IHRoaXMuaWQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgLy8gVGhlIGRpYWxvZyB0aXRsZSBkaXJlY3RpdmUgaXMgYWx3YXlzIHVzZWQgaW4gY29tYmluYXRpb24gd2l0aCBhIGBDb3ZhbGVudFNpZGVTaGVldFJlZmAuXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBsaWdodHdlaWdodC10b2tlbnNcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF9kaWFsb2dSZWY6IENvdmFsZW50U2lkZVNoZWV0UmVmPGFueT4sXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBfZGlhbG9nOiBDb3ZhbGVudFNpZGVTaGVldFxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2RpYWxvZ1JlZikge1xuICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuX2RpYWxvZ1JlZi5fY29udGFpbmVySW5zdGFuY2U7XG5cbiAgICAgICAgaWYgKGNvbnRhaW5lciAmJiAhY29udGFpbmVyLl9hcmlhTGFiZWxsZWRCeVF1ZXVlLmluY2x1ZGVzKHRoaXMuaWQpKSB7XG4gICAgICAgICAgY29udGFpbmVyLl9hcmlhTGFiZWxsZWRCeVF1ZXVlLnB1c2godGhpcy5pZCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9kaWFsb2dSZWYgPSBnZXRDbG9zZXN0RGlhbG9nKFxuICAgICAgICB0aGlzLl9lbGVtZW50UmVmLFxuICAgICAgICB0aGlzLl9kaWFsb2cub3BlblNpZGVTaGVldHNcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogU2Nyb2xsYWJsZSBjb250ZW50IGNvbnRhaW5lciBvZiBhIGRpYWxvZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiBgW3RkLXNpZGUtc2hlZXQtY29udGVudF0sIHRkLXNpZGUtc2hlZXQtY29udGVudCwgW0NvdmFsZW50U2lkZVNoZWV0Q29udGVudF1gLFxufSlcbmV4cG9ydCBjbGFzcyBDb3ZhbGVudFNpZGVTaGVldENvbnRlbnREaXJlY3RpdmUge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRkLXNpZGUtc2hlZXQtY29udGVudCcpIHRkU2lkZVNoZWV0Q29udGVudCA9IHRydWU7XG59XG5cbi8qKlxuICogQ29udGFpbmVyIGZvciB0aGUgYm90dG9tIGFjdGlvbiBidXR0b25zIGluIGEgZGlhbG9nLlxuICogU3RheXMgZml4ZWQgdG8gdGhlIGJvdHRvbSB3aGVuIHNjcm9sbGluZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiBgW3RkLXNpZGUtc2hlZXQtYWN0aW9uc10sIHRkLXNpZGUtc2hlZXQtYWN0aW9ucywgW0NvdmFsZW50U2lkZVNoZWV0QWN0aW9uc11gLFxufSlcbmV4cG9ydCBjbGFzcyBDb3ZhbGVudFNpZGVTaGVldEFjdGlvbnNEaXJlY3RpdmUge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRkLXNpZGUtc2hlZXQtYWN0aW9ucycpIHRkU2lkZVNoZWV0QWN0aW9ucyA9IHRydWU7XG59XG5cbi8qKlxuICogQ29udGFpbmVyIGZvciB0aGUgd3JhcHBlciBwYXJ0IG9mIHRoZSBkaWFsb2dcbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiBgW3RkLXNpZGUtc2hlZXQtd3JhcHBlcl0sIHRkLXNpZGUtc2hlZXQtd3JhcHBlciwgW0NvdmFsZW50U2lkZVNoZWV0V3JhcHBlcl1gLFxufSlcbmV4cG9ydCBjbGFzcyBDb3ZhbGVudFNpZGVTaGVldFdyYXBwZXJEaXJlY3RpdmUge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRkLXNpZGUtc2hlZXQtd3JhcHBlcicpIHRkU2lkZVNoZWV0V3JhcHBlciA9IHRydWU7XG59XG5cbi8qKlxuICogRmluZHMgdGhlIGNsb3Nlc3QgQ292YWxlbnRTaWRlU2hlZXRSZWYgdG8gYW4gZWxlbWVudCBieSBsb29raW5nIGF0IHRoZSBET00uXG4gKiBAcGFyYW0gZWxlbWVudCBFbGVtZW50IHJlbGF0aXZlIHRvIHdoaWNoIHRvIGxvb2sgZm9yIGEgZGlhbG9nLlxuICogQHBhcmFtIG9wZW5EaWFsb2dzIFJlZmVyZW5jZXMgdG8gdGhlIGN1cnJlbnRseS1vcGVuIGRpYWxvZ3MuXG4gKi9cbmZ1bmN0aW9uIGdldENsb3Nlc3REaWFsb2coXG4gIGVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICBvcGVuRGlhbG9nczogQ292YWxlbnRTaWRlU2hlZXRSZWY8YW55PltdXG4pOiBDb3ZhbGVudFNpZGVTaGVldFJlZjxhbnk+IHtcbiAgbGV0IHBhcmVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gZWxlbWVudC5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQ7XG5cbiAgd2hpbGUgKHBhcmVudCAmJiAhcGFyZW50LmNsYXNzTGlzdC5jb250YWlucygndGQtc2lkZS1zaGVldC1jb250YWluZXInKSkge1xuICAgIHBhcmVudCA9IHBhcmVudC5wYXJlbnRFbGVtZW50O1xuICB9XG5cbiAgcmV0dXJuIHBhcmVudFxuICAgID8gb3BlbkRpYWxvZ3MuZmluZCgoZGlhbG9nKSA9PiBkaWFsb2cuaWQgPT09IHBhcmVudD8uaWQpID8/IG9wZW5EaWFsb2dzWzBdXG4gICAgOiBvcGVuRGlhbG9nc1swXTtcbn1cbiJdfQ==","import { NgModule } from '@angular/core';\nimport { CovalentSideSheet } from './side-sheet';\nimport { CovalentSideSheetContainerComponent } from './side-sheet-container';\nimport { CovalentSideSheetActionsDirective, CovalentSideSheetCloseDirective, CovalentSideSheetContentDirective, CovalentSideSheetTitleDirective, CovalentSideSheetWrapperDirective, } from './side-sheet.content-directives';\nimport * as i0 from \"@angular/core\";\n/**\n * @deprecated This module is deprecated and will be removed in future versions.\n * Please migrate to using standalone components as soon as possible.\n */\nexport class CovalentSideSheetModule {\n static ɵfac = function CovalentSideSheetModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheetModule)(); };\n static ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: CovalentSideSheetModule });\n static ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ providers: [CovalentSideSheet] });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetModule, [{\n type: NgModule,\n args: [{\n imports: [\n CovalentSideSheetContainerComponent,\n CovalentSideSheetActionsDirective,\n CovalentSideSheetCloseDirective,\n CovalentSideSheetContentDirective,\n CovalentSideSheetTitleDirective,\n CovalentSideSheetWrapperDirective,\n ],\n exports: [\n CovalentSideSheetActionsDirective,\n CovalentSideSheetCloseDirective,\n CovalentSideSheetContentDirective,\n CovalentSideSheetTitleDirective,\n CovalentSideSheetWrapperDirective,\n ],\n providers: [CovalentSideSheet],\n }]\n }], null, null); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && i0.ɵɵsetNgModuleScope(CovalentSideSheetModule, { imports: [CovalentSideSheetContainerComponent,\n CovalentSideSheetActionsDirective,\n CovalentSideSheetCloseDirective,\n CovalentSideSheetContentDirective,\n CovalentSideSheetTitleDirective,\n CovalentSideSheetWrapperDirective], exports: [CovalentSideSheetActionsDirective,\n CovalentSideSheetCloseDirective,\n CovalentSideSheetContentDirective,\n CovalentSideSheetTitleDirective,\n CovalentSideSheetWrapperDirective] }); })();\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUt6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDakQsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0UsT0FBTyxFQUNMLGlDQUFpQyxFQUNqQywrQkFBK0IsRUFDL0IsaUNBQWlDLEVBQ2pDLCtCQUErQixFQUMvQixpQ0FBaUMsR0FDbEMsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFFekM7OztHQUdHO0FBbUJILE1BQU0sT0FBTyx1QkFBdUI7aUhBQXZCLHVCQUF1Qjs0REFBdkIsdUJBQXVCO2lFQUZ2QixDQUFDLGlCQUFpQixDQUFDOztpRkFFbkIsdUJBQXVCO2NBbEJuQyxRQUFRO2VBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLG1DQUFtQztvQkFDbkMsaUNBQWlDO29CQUNqQywrQkFBK0I7b0JBQy9CLGlDQUFpQztvQkFDakMsK0JBQStCO29CQUMvQixpQ0FBaUM7aUJBQ2xDO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxpQ0FBaUM7b0JBQ2pDLCtCQUErQjtvQkFDL0IsaUNBQWlDO29CQUNqQywrQkFBK0I7b0JBQy9CLGlDQUFpQztpQkFDbEM7Z0JBQ0QsU0FBUyxFQUFFLENBQUMsaUJBQWlCLENBQUM7YUFDL0I7O3dGQUNZLHVCQUF1QixjQWhCaEMsbUNBQW1DO1FBQ25DLGlDQUFpQztRQUNqQywrQkFBK0I7UUFDL0IsaUNBQWlDO1FBQ2pDLCtCQUErQjtRQUMvQixpQ0FBaUMsYUFHakMsaUNBQWlDO1FBQ2pDLCtCQUErQjtRQUMvQixpQ0FBaUM7UUFDakMsK0JBQStCO1FBQy9CLGlDQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQb3J0YWxNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IE1hdENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcblxuaW1wb3J0IHsgQ292YWxlbnRTaWRlU2hlZXQgfSBmcm9tICcuL3NpZGUtc2hlZXQnO1xuaW1wb3J0IHsgQ292YWxlbnRTaWRlU2hlZXRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3NpZGUtc2hlZXQtY29udGFpbmVyJztcbmltcG9ydCB7XG4gIENvdmFsZW50U2lkZVNoZWV0QWN0aW9uc0RpcmVjdGl2ZSxcbiAgQ292YWxlbnRTaWRlU2hlZXRDbG9zZURpcmVjdGl2ZSxcbiAgQ292YWxlbnRTaWRlU2hlZXRDb250ZW50RGlyZWN0aXZlLFxuICBDb3ZhbGVudFNpZGVTaGVldFRpdGxlRGlyZWN0aXZlLFxuICBDb3ZhbGVudFNpZGVTaGVldFdyYXBwZXJEaXJlY3RpdmUsXG59IGZyb20gJy4vc2lkZS1zaGVldC5jb250ZW50LWRpcmVjdGl2ZXMnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIFRoaXMgbW9kdWxlIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiBmdXR1cmUgdmVyc2lvbnMuXG4gKiBQbGVhc2UgbWlncmF0ZSB0byB1c2luZyBzdGFuZGFsb25lIGNvbXBvbmVudHMgYXMgc29vbiBhcyBwb3NzaWJsZS5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvdmFsZW50U2lkZVNoZWV0Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIENvdmFsZW50U2lkZVNoZWV0QWN0aW9uc0RpcmVjdGl2ZSxcbiAgICBDb3ZhbGVudFNpZGVTaGVldENsb3NlRGlyZWN0aXZlLFxuICAgIENvdmFsZW50U2lkZVNoZWV0Q29udGVudERpcmVjdGl2ZSxcbiAgICBDb3ZhbGVudFNpZGVTaGVldFRpdGxlRGlyZWN0aXZlLFxuICAgIENvdmFsZW50U2lkZVNoZWV0V3JhcHBlckRpcmVjdGl2ZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIENvdmFsZW50U2lkZVNoZWV0QWN0aW9uc0RpcmVjdGl2ZSxcbiAgICBDb3ZhbGVudFNpZGVTaGVldENsb3NlRGlyZWN0aXZlLFxuICAgIENvdmFsZW50U2lkZVNoZWV0Q29udGVudERpcmVjdGl2ZSxcbiAgICBDb3ZhbGVudFNpZGVTaGVldFRpdGxlRGlyZWN0aXZlLFxuICAgIENvdmFsZW50U2lkZVNoZWV0V3JhcHBlckRpcmVjdGl2ZSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbQ292YWxlbnRTaWRlU2hlZXRdLFxufSlcbmV4cG9ydCBjbGFzcyBDb3ZhbGVudFNpZGVTaGVldE1vZHVsZSB7fVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './public_api';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY292YWxlbnQtY29yZS1zaWRlLXNoZWV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NpZGUtc2hlZXQvc3JjL2NvdmFsZW50LWNvcmUtc2lkZS1zaGVldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19"],"names":["i2.CovalentSideSheetConfig","i1","i1.CovalentSideSheetRef","i2.CovalentSideSheet"],"mappings":"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"}
1
+ {"version":3,"file":"covalent-core-side-sheet.mjs","sources":["../tmp-esm2022/side-sheet/side-sheet.animation.js","../tmp-esm2022/side-sheet/side-sheet.config.js","../tmp-esm2022/side-sheet/side-sheet-container.js","../tmp-esm2022/side-sheet/side-sheet-ref.js","../tmp-esm2022/side-sheet/side-sheet.js","../tmp-esm2022/side-sheet/side-sheet.content-directives.js","../tmp-esm2022/side-sheet/side-sheet.module.js","../tmp-esm2022/side-sheet/covalent-core-side-sheet.js"],"sourcesContent":["import { animate, state, style, transition, trigger, } from '@angular/animations';\nimport { AnimationCurves, AnimationDurations } from '@angular/material/core';\nexport const tdSideSheetAnimations = {\n /** Animation that is applied on the side-sheet container by default. */\n sideSheetContainer: trigger('sideSheetContainer', [\n state('void, exit', style({ transform: 'translateX(100%)' })),\n state('enter', style({ transform: 'translateX(0%)', opacity: 1 })),\n transition('* => enter', animate(`${AnimationDurations.ENTERING} ${AnimationCurves.ACCELERATION_CURVE}`, style({ transform: 'translateX(0)', opacity: 1 }))),\n transition('* => void, * => exit', animate(`${AnimationDurations.EXITING} ${AnimationCurves.ACCELERATION_CURVE}`, style({ transform: 'translateX(100%)' }))),\n ]),\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC5hbmltYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC5hbmltYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLE9BQU8sRUFDUCxLQUFLLEVBQ0wsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEdBRVIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsZUFBZSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFN0UsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBRTlCO0lBQ0Ysd0VBQXdFO0lBQ3hFLGtCQUFrQixFQUFFLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRTtRQUNoRCxLQUFLLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUM7UUFDN0QsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEUsVUFBVSxDQUNSLFlBQVksRUFDWixPQUFPLENBQ0wsR0FBRyxrQkFBa0IsQ0FBQyxRQUFRLElBQUksZUFBZSxDQUFDLGtCQUFrQixFQUFFLEVBQ3RFLEtBQUssQ0FBQyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQ2xELENBQ0Y7UUFDRCxVQUFVLENBQ1Isc0JBQXNCLEVBQ3RCLE9BQU8sQ0FDTCxHQUFHLGtCQUFrQixDQUFDLE9BQU8sSUFBSSxlQUFlLENBQUMsa0JBQWtCLEVBQUUsRUFDckUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGtCQUFrQixFQUFFLENBQUMsQ0FDekMsQ0FDRjtLQUNGLENBQUM7Q0FDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgYW5pbWF0ZSxcbiAgc3RhdGUsXG4gIHN0eWxlLFxuICB0cmFuc2l0aW9uLFxuICB0cmlnZ2VyLFxuICBBbmltYXRpb25UcmlnZ2VyTWV0YWRhdGEsXG59IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgQW5pbWF0aW9uQ3VydmVzLCBBbmltYXRpb25EdXJhdGlvbnMgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcblxuZXhwb3J0IGNvbnN0IHRkU2lkZVNoZWV0QW5pbWF0aW9uczoge1xuICByZWFkb25seSBzaWRlU2hlZXRDb250YWluZXI6IEFuaW1hdGlvblRyaWdnZXJNZXRhZGF0YTtcbn0gPSB7XG4gIC8qKiBBbmltYXRpb24gdGhhdCBpcyBhcHBsaWVkIG9uIHRoZSBzaWRlLXNoZWV0IGNvbnRhaW5lciBieSBkZWZhdWx0LiAqL1xuICBzaWRlU2hlZXRDb250YWluZXI6IHRyaWdnZXIoJ3NpZGVTaGVldENvbnRhaW5lcicsIFtcbiAgICBzdGF0ZSgndm9pZCwgZXhpdCcsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxMDAlKScgfSkpLFxuICAgIHN0YXRlKCdlbnRlcicsIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgwJSknLCBvcGFjaXR5OiAxIH0pKSxcbiAgICB0cmFuc2l0aW9uKFxuICAgICAgJyogPT4gZW50ZXInLFxuICAgICAgYW5pbWF0ZShcbiAgICAgICAgYCR7QW5pbWF0aW9uRHVyYXRpb25zLkVOVEVSSU5HfSAke0FuaW1hdGlvbkN1cnZlcy5BQ0NFTEVSQVRJT05fQ1VSVkV9YCxcbiAgICAgICAgc3R5bGUoeyB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJywgb3BhY2l0eTogMSB9KVxuICAgICAgKVxuICAgICksXG4gICAgdHJhbnNpdGlvbihcbiAgICAgICcqID0+IHZvaWQsICogPT4gZXhpdCcsXG4gICAgICBhbmltYXRlKFxuICAgICAgICBgJHtBbmltYXRpb25EdXJhdGlvbnMuRVhJVElOR30gJHtBbmltYXRpb25DdXJ2ZXMuQUNDRUxFUkFUSU9OX0NVUlZFfWAsXG4gICAgICAgIHN0eWxlKHsgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxMDAlKScgfSlcbiAgICAgIClcbiAgICApLFxuICBdKSxcbn07XG4iXX0=","import { MatDialogConfig } from '@angular/material/dialog';\nexport var SubPageMode;\n(function (SubPageMode) {\n SubPageMode[\"pushed\"] = \"pushed\";\n SubPageMode[\"shifted\"] = \"shifted\";\n SubPageMode[\"none\"] = \"none\";\n})(SubPageMode || (SubPageMode = {}));\nexport class CovalentSideSheetConfig extends MatDialogConfig {\n subPageMode = SubPageMode.pushed;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE1BQU0sQ0FBTixJQUFZLFdBSVg7QUFKRCxXQUFZLFdBQVc7SUFDckIsZ0NBQWlCLENBQUE7SUFDakIsa0NBQW1CLENBQUE7SUFDbkIsNEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFKVyxXQUFXLEtBQVgsV0FBVyxRQUl0QjtBQUVELE1BQU0sT0FBTyx1QkFBaUMsU0FBUSxlQUFrQjtJQUN0RSxXQUFXLEdBQVksV0FBVyxDQUFDLE1BQU0sQ0FBQztDQUMzQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hdERpYWxvZ0NvbmZpZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbmV4cG9ydCBlbnVtIFN1YlBhZ2VNb2RlIHtcbiAgcHVzaGVkID0gJ3B1c2hlZCcsXG4gIHNoaWZ0ZWQgPSAnc2hpZnRlZCcsXG4gIG5vbmUgPSAnbm9uZScsXG59XG5cbmV4cG9ydCBjbGFzcyBDb3ZhbGVudFNpZGVTaGVldENvbmZpZzxEID0gYW55PiBleHRlbmRzIE1hdERpYWxvZ0NvbmZpZzxEPiB7XG4gIHN1YlBhZ2VNb2RlPzogc3RyaW5nID0gU3ViUGFnZU1vZGUucHVzaGVkO1xufVxuIl19","import { ConfigurableFocusTrapFactory, FocusMonitor, } from '@angular/cdk/a11y';\nimport { BasePortalOutlet, CdkPortalOutlet, } from '@angular/cdk/portal';\nimport { DOCUMENT } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, Directive, ElementRef, EventEmitter, HostBinding, HostListener, ViewChild, ViewEncapsulation, inject, } from '@angular/core';\nimport { tdSideSheetAnimations } from './side-sheet.animation';\nimport { CovalentSideSheetConfig } from './side-sheet.config';\nimport * as i0 from \"@angular/core\";\nfunction CovalentSideSheetContainerComponent_ng_template_0_Template(rf, ctx) { }\nexport function _getFocusedElementPierceShadowDom() {\n let activeElement = typeof document !== 'undefined' && document\n ? document.activeElement\n : null;\n while (activeElement && activeElement.shadowRoot) {\n const newActiveElement = activeElement.shadowRoot\n .activeElement;\n if (newActiveElement === activeElement) {\n break;\n }\n else {\n activeElement = newActiveElement;\n }\n }\n return activeElement;\n}\n/**\n * Base class for the `CovalentSideSheetContainer`. The base class does not implement\n * animations as these are left to implementers of the side-sheet container.\n */\nexport class _CovalentSideSheetContainerBase extends BasePortalOutlet {\n _elementRef = inject(ElementRef);\n _focusTrapFactory = inject(ConfigurableFocusTrapFactory);\n _changeDetectorRef = inject(ChangeDetectorRef);\n _config = inject(CovalentSideSheetConfig);\n _focusMonitor = inject(FocusMonitor);\n _document = null;\n /** The portal outlet inside of this container into which the side-sheet content will be loaded. */\n _portalOutlet;\n /** The class that traps and manages focus within the side-sheet. */\n _focusTrap;\n /** Emits when an animation state changes. */\n _animationStateChanged = new EventEmitter();\n /** Element that was focused before the side-sheet was opened. Save this to restore upon close. */\n _elementFocusedBeforeSideSheetWasOpened = null;\n /**\n * Type of interaction that led to the side-sheet being closed. This is used to determine\n * whether the focus style will be applied when returning focus to its original location\n * after the side-sheet is closed.\n */\n _closeInteractionType = null;\n /** ID of the element that should be considered as the side-sheet's label. */\n _ariaLabelledBy;\n /** ID for the container DOM element. */\n _id;\n constructor() {\n const _document = inject(DOCUMENT, { optional: true });\n super();\n const _config = this._config;\n this._ariaLabelledBy = _config.ariaLabelledBy || null;\n this._document = _document;\n }\n /** Initializes the side-sheet container with the attached content. */\n _initializeWithAttachedContent() {\n this._setupFocusTrap();\n // Save the previously focused element. This element will be re-focused\n // when the side-sheet closes.\n this._capturePreviouslyFocusedElement();\n }\n /**\n * Attach a ComponentPortal as content to this side-sheet container.\n * @param portal Portal to be attached as the side-sheet content.\n */\n attachComponentPortal(portal) {\n return this._portalOutlet.attachComponentPortal(portal);\n }\n /**\n * Attach a TemplatePortal as content to this side-sheet container.\n * @param portal Portal to be attached as the side-sheet content.\n */\n attachTemplatePortal(portal) {\n return this._portalOutlet.attachTemplatePortal(portal);\n }\n /**\n * Attaches a DOM portal to the side-sheet container.\n * @param portal Portal to be attached.\n * @deprecated To be turned into a method.\n */\n attachDomPortal = (portal) => {\n return this._portalOutlet.attachDomPortal(portal);\n };\n /** Moves focus back into the side-sheet if it was moved out. */\n _recaptureFocus() {\n if (!this._containsFocus()) {\n this._trapFocus();\n }\n }\n /**\n * Moves the focus inside the focus trap. When autoFocus is not set to 'side-sheet', if focus\n * cannot be moved then focus will go to the side-sheet container.\n */\n _trapFocus() {\n const element = this._elementRef.nativeElement;\n if (!this._config.autoFocus) {\n if (!this._containsFocus()) {\n element.focus();\n }\n }\n else {\n this._focusTrap\n .focusInitialElementWhenReady()\n .then((focusedSuccessfully) => {\n // If we weren't able to find a focusable element in the side-sheet, then focus the side-sheet\n // container instead.\n if (!focusedSuccessfully) {\n this._focusSideSheetContainer();\n }\n });\n }\n }\n /** Restores focus to the element that was focused before the side-sheet opened. */\n _restoreFocus() {\n const previousElement = this._elementFocusedBeforeSideSheetWasOpened;\n // We need the extra check, because IE can set the `activeElement` to null in some cases.\n if (this._config.restoreFocus &&\n previousElement &&\n typeof previousElement.focus === 'function') {\n const activeElement = _getFocusedElementPierceShadowDom();\n const element = this._elementRef.nativeElement;\n // Make sure that focus is still inside the side-sheet or is on the body (usually because a\n // non-focusable element like the backdrop was clicked) before moving it. It's possible that\n // the consumer moved it themselves before the animation was done, in which case we shouldn't\n // do anything.\n if (!activeElement ||\n activeElement === this._document?.body ||\n activeElement === element ||\n element.contains(activeElement)) {\n if (this._focusMonitor) {\n this._focusMonitor.focusVia(previousElement, this._closeInteractionType);\n this._closeInteractionType = null;\n }\n else {\n previousElement.focus();\n }\n }\n }\n if (this._focusTrap) {\n this._focusTrap.destroy();\n }\n }\n /** Sets up the focus trap. */\n _setupFocusTrap() {\n this._focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement);\n }\n /** Captures the element that was focused before the side-sheet was opened. */\n _capturePreviouslyFocusedElement() {\n if (this._document) {\n this._elementFocusedBeforeSideSheetWasOpened =\n _getFocusedElementPierceShadowDom();\n }\n }\n /** Focuses the side-sheet container. */\n _focusSideSheetContainer() {\n // Note that there is no focus method when rendering on the server.\n if (this._elementRef.nativeElement.focus) {\n this._elementRef.nativeElement.focus();\n }\n }\n /** Returns whether focus is inside the side-sheet. */\n _containsFocus() {\n const element = this._elementRef.nativeElement;\n const activeElement = _getFocusedElementPierceShadowDom();\n return element === activeElement || element.contains(activeElement);\n }\n static ɵfac = function _CovalentSideSheetContainerBase_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || _CovalentSideSheetContainerBase)(); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: _CovalentSideSheetContainerBase, viewQuery: function _CovalentSideSheetContainerBase_Query(rf, ctx) { if (rf & 1) {\n i0.ɵɵviewQuery(CdkPortalOutlet, 7);\n } if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._portalOutlet = _t.first);\n } }, features: [i0.ɵɵInheritDefinitionFeature] });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(_CovalentSideSheetContainerBase, [{\n type: Directive\n }], () => [], { _portalOutlet: [{\n type: ViewChild,\n args: [CdkPortalOutlet, { static: true }]\n }] }); })();\n/**\n * Internal component that wraps the generated side-sheet content.\n * This animation below is the only reason for duplicating most of the Material dialog code\n */\nexport class CovalentSideSheetContainerComponent extends _CovalentSideSheetContainerBase {\n /** State of the side-sheet animation. */\n _state = 'enter';\n tdSideSheetContainerClass = true;\n tabIndex = -1;\n arialModal = true;\n idAttr = this._id;\n roleAttr = this._config.role;\n arialLabelByAttr = this._config.ariaLabel\n ? null\n : this._ariaLabelledBy;\n arialDescribeByAttr = this._config.ariaDescribedBy || null;\n arialLabelAttr = this._config.ariaLabel;\n get sideSheetAnimationState() {\n return this._state;\n }\n onAnimateStart($event) {\n this._onAnimationStart($event);\n }\n onAnimateDone($event) {\n this._onAnimationDone($event);\n }\n /** Callback, invoked whenever an animation on the host completes. */\n _onAnimationDone({ toState, totalTime }) {\n if (toState === 'enter') {\n this._trapFocus();\n this._animationStateChanged.next({ state: 'opened', totalTime });\n }\n else if (toState === 'exit') {\n this._restoreFocus();\n this._animationStateChanged.next({ state: 'closed', totalTime });\n }\n }\n /** Callback, invoked when an animation on the host starts. */\n _onAnimationStart({ toState, totalTime }) {\n if (toState === 'enter') {\n this._animationStateChanged.next({ state: 'opening', totalTime });\n }\n else if (toState === 'exit' || toState === 'void') {\n this._animationStateChanged.next({ state: 'closing', totalTime });\n }\n }\n /** Starts the side-sheet exit animation. */\n _startExitAnimation() {\n this._state = 'exit';\n this._changeDetectorRef.markForCheck();\n }\n static ɵfac = /*@__PURE__*/ (() => { let ɵCovalentSideSheetContainerComponent_BaseFactory; return function CovalentSideSheetContainerComponent_Factory(__ngFactoryType__) { return (ɵCovalentSideSheetContainerComponent_BaseFactory || (ɵCovalentSideSheetContainerComponent_BaseFactory = i0.ɵɵgetInheritedFactory(CovalentSideSheetContainerComponent)))(__ngFactoryType__ || CovalentSideSheetContainerComponent); }; })();\n static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CovalentSideSheetContainerComponent, selectors: [[\"td-side-sheet-container\"]], hostVars: 10, hostBindings: function CovalentSideSheetContainerComponent_HostBindings(rf, ctx) { if (rf & 1) {\n i0.ɵɵsyntheticHostListener(\"@sideSheetContainer.start\", function CovalentSideSheetContainerComponent_animation_sideSheetContainer_start_HostBindingHandler($event) { return ctx.onAnimateStart($event); })(\"@sideSheetContainer.done\", function CovalentSideSheetContainerComponent_animation_sideSheetContainer_done_HostBindingHandler($event) { return ctx.onAnimateDone($event); });\n } if (rf & 2) {\n i0.ɵɵdomProperty(\"tabindex\", ctx.tabIndex)(\"aria-modal\", ctx.arialModal)(\"id\", ctx.idAttr);\n i0.ɵɵsyntheticHostProperty(\"@sideSheetContainer\", ctx.sideSheetAnimationState);\n i0.ɵɵattribute(\"role\", ctx.roleAttr)(\"aria-labelledby\", ctx.arialLabelByAttr)(\"aria-describedby\", ctx.arialDescribeByAttr)(\"aria-label\", ctx.arialLabelAttr);\n i0.ɵɵclassProp(\"td-side-sheet-container\", ctx.tdSideSheetContainerClass);\n } }, features: [i0.ɵɵInheritDefinitionFeature], decls: 1, vars: 0, consts: [[\"cdkPortalOutlet\", \"\"]], template: function CovalentSideSheetContainerComponent_Template(rf, ctx) { if (rf & 1) {\n i0.ɵɵtemplate(0, CovalentSideSheetContainerComponent_ng_template_0_Template, 0, 0, \"ng-template\", 0);\n } }, dependencies: [CdkPortalOutlet], styles: [\".td-side-sheet-container{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f;display:block;padding:24px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.td-side-sheet-wrapper{display:flex;flex-direction:column;height:100%}.td-side-sheet-content{margin:0 -24px;padding:0 24px;overflow:auto;flex:1;-webkit-overflow-scrolling:touch}.td-side-sheet-title{margin:-16px 0 20px;display:flex;align-items:center}.td-side-sheet-actions{padding:8px 0;margin:0 -16px -24px;display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;box-sizing:content-box}.td-side-sheet-actions[align=end]{justify-content:flex-end}.td-side-sheet-actions[align=center]{justify-content:center}.td-side-sheet-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .td-side-sheet-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\\n\"], encapsulation: 2, data: { animation: [tdSideSheetAnimations.sideSheetContainer] } });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetContainerComponent, [{\n type: Component,\n args: [{ selector: 'td-side-sheet-container', template: ` <ng-template cdkPortalOutlet></ng-template> `, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.Default, animations: [tdSideSheetAnimations.sideSheetContainer], imports: [CdkPortalOutlet], styles: [\".td-side-sheet-container{box-shadow:0 8px 10px -5px #0003,0 16px 24px 2px #00000024,0 6px 30px 5px #0000001f;display:block;padding:24px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.td-side-sheet-wrapper{display:flex;flex-direction:column;height:100%}.td-side-sheet-content{margin:0 -24px;padding:0 24px;overflow:auto;flex:1;-webkit-overflow-scrolling:touch}.td-side-sheet-title{margin:-16px 0 20px;display:flex;align-items:center}.td-side-sheet-actions{padding:8px 0;margin:0 -16px -24px;display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;box-sizing:content-box}.td-side-sheet-actions[align=end]{justify-content:flex-end}.td-side-sheet-actions[align=center]{justify-content:center}.td-side-sheet-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .td-side-sheet-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\\n\"] }]\n }], null, { tdSideSheetContainerClass: [{\n type: HostBinding,\n args: ['class.td-side-sheet-container']\n }], tabIndex: [{\n type: HostBinding,\n args: ['tabindex']\n }], arialModal: [{\n type: HostBinding,\n args: ['aria-modal']\n }], idAttr: [{\n type: HostBinding,\n args: ['id']\n }], roleAttr: [{\n type: HostBinding,\n args: ['attr.role']\n }], arialLabelByAttr: [{\n type: HostBinding,\n args: ['attr.aria-labelledby']\n }], arialDescribeByAttr: [{\n type: HostBinding,\n args: ['attr.aria-describedby']\n }], arialLabelAttr: [{\n type: HostBinding,\n args: ['attr.aria-label']\n }], sideSheetAnimationState: [{\n type: HostBinding,\n args: ['@sideSheetContainer']\n }], onAnimateStart: [{\n type: HostListener,\n args: ['@sideSheetContainer.start', ['$event']]\n }], onAnimateDone: [{\n type: HostListener,\n args: ['@sideSheetContainer.done', ['$event']]\n }] }); })();\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassDebugInfo(CovalentSideSheetContainerComponent, { className: \"CovalentSideSheetContainerComponent\", filePath: \"side-sheet-container.ts\", lineNumber: 256 }); })();\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC1jb250YWluZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUVMLDRCQUE0QixFQUM1QixZQUFZLEdBRWIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGVBQWUsR0FJaEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUVULFNBQVMsRUFDVCxVQUFVLEVBRVYsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osU0FBUyxFQUNULGlCQUFpQixFQUNqQixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQUU5RCxNQUFNLFVBQVUsaUNBQWlDO0lBQy9DLElBQUksYUFBYSxHQUNmLE9BQU8sUUFBUSxLQUFLLFdBQVcsSUFBSSxRQUFRO1FBQ3pDLENBQUMsQ0FBRSxRQUFRLENBQUMsYUFBb0M7UUFDaEQsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUVYLE9BQU8sYUFBYSxJQUFJLGFBQWEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNqRCxNQUFNLGdCQUFnQixHQUFHLGFBQWEsQ0FBQyxVQUFVO2FBQzlDLGFBQW1DLENBQUM7UUFDdkMsSUFBSSxnQkFBZ0IsS0FBSyxhQUFhLEVBQUUsQ0FBQztZQUN2QyxNQUFNO1FBQ1IsQ0FBQzthQUFNLENBQUM7WUFDTixhQUFhLEdBQUcsZ0JBQWdCLENBQUM7UUFDbkMsQ0FB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UyxRQUFRO2tCQUFqQyxXQUFXO21CQUFDLFdBQVc7WUFDYSxnQkFBZ0I7a0JBQXBELFdBQVc7bUJBQUMsc0JBQXNCO1lBR0csbUJBQW1CO2tCQUF4RCxXQUFXO21CQUFDLHVCQUF1QjtZQUVKLGNBQWM7a0JBQTdDLFdBQVc7bUJBQUMsaUJBQWlCO1lBQ1UsdUJBQXVCO2tCQUE5RCxXQUFXO21CQUFDLHFCQUFxQjtZQUdxQixjQUFjO2tCQUFwRSxZQUFZO21CQUFDLDJCQUEyQixFQUFFLENBQUMsUUFBUSxDQUFDO1lBTUMsYUFBYTtrQkFBbEUsWUFBWTttQkFBQywwQkFBMEIsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7a0ZBekJ6QyxtQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiB0c2xpbnQ6ZGlzYWJsZSAqL1xuaW1wb3J0IHsgQW5pbWF0aW9uRXZlbnQgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7XG4gIENvbmZpZ3VyYWJsZUZvY3VzVHJhcCxcbiAgQ29uZmlndXJhYmxlRm9jdXNUcmFwRmFjdG9yeSxcbiAgRm9jdXNNb25pdG9yLFxuICBGb2N1c09yaWdpbixcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtcbiAgQmFzZVBvcnRhbE91dGxldCxcbiAgQ2RrUG9ydGFsT3V0bGV0LFxuICBDb21wb25lbnRQb3J0YWwsXG4gIERvbVBvcnRhbCxcbiAgVGVtcGxhdGVQb3J0YWwsXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudFJlZixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBFbWJlZGRlZFZpZXdSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRkU2lkZVNoZWV0QW5pbWF0aW9ucyB9IGZyb20gJy4vc2lkZS1zaGVldC5hbmltYXRpb24nO1xuaW1wb3J0IHsgQ292YWxlbnRTaWRlU2hlZXRDb25maWcgfSBmcm9tICcuL3NpZGUtc2hlZXQuY29uZmlnJztcblxuZXhwb3J0IGZ1bmN0aW9uIF9nZXRGb2N1c2VkRWxlbWVudFBpZXJjZVNoYWRvd0RvbSgpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICBsZXQgYWN0aXZlRWxlbWVudCA9XG4gICAgdHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJyAmJiBkb2N1bWVudFxuICAgICAgPyAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCB8IG51bGwpXG4gICAgICA6IG51bGw7XG5cbiAgd2hpbGUgKGFjdGl2ZUVsZW1lbnQgJiYgYWN0aXZlRWxlbWVudC5zaGFkb3dSb290KSB7XG4gICAgY29uc3QgbmV3QWN0aXZlRWxlbWVudCA9IGFjdGl2ZUVsZW1lbnQuc2hhZG93Um9vdFxuICAgICAgLmFjdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQgfCBudWxsO1xuICAgIGlmIChuZXdBY3RpdmVFbGVtZW50ID09PSBhY3RpdmVFbGVtZW50KSB7XG4gICAgICBicmVhaztcbiAgICB9IGVsc2Uge1xuICAgICAgYWN0aXZlRWxlbWVudCA9IG5ld0FjdGl2ZUVsZW1lbnQ7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGFjdGl2ZUVsZW1lbnQ7XG59XG5cbi8qKlxuICogQmFzZSBjbGFzcyBmb3IgdGhlIGBDb3ZhbGVudFNpZGVTaGVldENvbnRhaW5lcmAuIFRoZSBiYXNlIGNsYXNzIGRvZXMgbm90IGltcGxlbWVudFxuICogYW5pbWF0aW9ucyBhcyB0aGVzZSBhcmUgbGVmdCB0byBpbXBsZW1lbnRlcnMgb2YgdGhlIHNpZGUtc2hlZXQgY29udGFpbmVyLlxuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBfQ292YWxlbnRTaWRlU2hlZXRDb250YWluZXJCYXNlIGV4dGVuZHMgQmFzZVBvcnRhbE91dGxldCB7XG4gIHByb3RlY3RlZCBfZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcHJvdGVjdGVkIF9mb2N1c1RyYXBGYWN0b3J5ID0gaW5qZWN0KENvbmZpZ3VyYWJsZUZvY3VzVHJhcEZhY3RvcnkpO1xuICBwcm90ZWN0ZWQgX2NoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgX2NvbmZpZyA9IGluamVjdChDb3ZhbGVudFNpZGVTaGVldENvbmZpZyk7XG4gIHByaXZhdGUgX2ZvY3VzTW9uaXRvciA9IGluamVjdChGb2N1c01vbml0b3IpO1xuXG4gIHByb3RlY3RlZCBfZG9jdW1lbnQ6IERvY3VtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIFRoZSBwb3J0YWwgb3V0bGV0IGluc2lkZSBvZiB0aGlzIGNvbnRhaW5lciBpbnRvIHdoaWNoIHRoZSBzaWRlLXNoZWV0IGNvbnRlbnQgd2lsbCBiZSBsb2FkZWQuICovXG4gIEBWaWV3Q2hpbGQoQ2RrUG9ydGFsT3V0bGV0LCB7IHN0YXRpYzogdHJ1ZSB9KSBfcG9ydGFsT3V0bGV0ITogQ2RrUG9ydGFsT3V0bGV0O1xuXG4gIC8qKiBUaGUgY2xhc3MgdGhhdCB0cmFwcyBhbmQgbWFuYWdlcyBmb2N1cyB3aXRoaW4gdGhlIHNpZGUtc2hlZXQuICovXG4gIHByaXZhdGUgX2ZvY3VzVHJhcCE6IENvbmZpZ3VyYWJsZUZvY3VzVHJhcDtcblxuICAvKiogRW1pdHMgd2hlbiBhbiBhbmltYXRpb24gc3RhdGUgY2hhbmdlcy4gKi9cbiAgX2FuaW1hdGlvblN0YXRlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8e1xuICAgIHN0YXRlOiAnb3BlbmVkJyB8ICdvcGVuaW5nJyB8ICdjbG9zaW5nJyB8ICdjbG9zZWQnO1xuICAgIHRvdGFsVGltZTogbnVtYmVyO1xuICB9PigpO1xuXG4gIC8qKiBFbGVtZW50IHRoYXQgd2FzIGZvY3VzZWQgYmVmb3JlIHRoZSBzaWRlLXNoZWV0IHdhcyBvcGVuZWQuIFNhdmUgdGhpcyB0byByZXN0b3JlIHVwb24gY2xvc2UuICovXG4gIHByaXZhdGUgX2VsZW1lbnRGb2N1c2VkQmVmb3JlU2lkZVNoZWV0V2FzT3BlbmVkOiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBzaWRlLXNoZWV0IGJlaW5nIGNsb3NlZC4gVGhpcyBpcyB1c2VkIHRvIGRldGVybWluZVxuICAgKiB3aGV0aGVyIHRoZSBmb2N1cyBzdHlsZSB3aWxsIGJlIGFwcGxpZWQgd2hlbiByZXR1cm5pbmcgZm9jdXMgdG8gaXRzIG9yaWdpbmFsIGxvY2F0aW9uXG4gICAqIGFmdGVyIHRoZSBzaWRlLXNoZWV0IGlzIGNsb3NlZC5cbiAgICovXG4gIF9jbG9zZUludGVyYWN0aW9uVHlwZTogRm9jdXNPcmlnaW4gfCBudWxsID0gbnVsbDtcblxuICAvKiogSUQgb2YgdGhlIGVsZW1lbnQgdGhhdCBzaG91bGQgYmUgY29uc2lkZXJlZCBhcyB0aGUgc2lkZS1zaGVldCdzIGxhYmVsLiAqL1xuICBfYXJpYUxhYmVsbGVkQnk6IHN0cmluZyB8IG51bGw7XG5cbiAgLyoqIElEIGZvciB0aGUgY29udGFpbmVyIERPTSBlbGVtZW50LiAqL1xuICBfaWQhOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3QgX2RvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5ULCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gICAgc3VwZXIoKTtcbiAgICBjb25zdCBfY29uZmlnID0gdGhpcy5fY29uZmlnO1xuXG4gICAgdGhpcy5fYXJpYUxhYmVsbGVkQnkgPSBfY29uZmlnLmFyaWFMYWJlbGxlZEJ5IHx8IG51bGw7XG4gICAgdGhpcy5fZG9jdW1lbnQgPSBfZG9jdW1lbnQ7XG4gIH1cblxuICAvKiogU3RhcnRzIHRoZSBzaWRlLXNoZWV0IGV4aXQgYW5pbWF0aW9uLiAqL1xuICBhYnN0cmFjdCBfc3RhcnRFeGl0QW5pbWF0aW9uKCk6IHZvaWQ7XG5cbiAgLyoqIEluaXRpYWxpemVzIHRoZSBzaWRlLXNoZWV0IGNvbnRhaW5lciB3aXRoIHRoZSBhdHRhY2hlZCBjb250ZW50LiAqL1xuICBfaW5pdGlhbGl6ZVdpdGhBdHRhY2hlZENvbnRlbnQoKSB7XG4gICAgdGhpcy5fc2V0dXBGb2N1c1RyYXAoKTtcbiAgICAvLyBTYXZlIHRoZSBwcmV2aW91c2x5IGZvY3VzZWQgZWxlbWVudC4gVGhpcyBlbGVtZW50IHdpbGwgYmUgcmUtZm9jdXNlZFxuICAgIC8vIHdoZW4gdGhlIHNpZGUtc2hlZXQgY2xvc2VzLlxuICAgIHRoaXMuX2NhcHR1cmVQcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdHRhY2ggYSBDb21wb25lbnRQb3J0YWwgYXMgY29udGVudCB0byB0aGlzIHNpZGUtc2hlZXQgY29udGFpbmVyLlxuICAgKiBAcGFyYW0gcG9ydGFsIFBvcnRhbCB0byBiZSBhdHRhY2hlZCBhcyB0aGUgc2lkZS1zaGVldCBjb250ZW50LlxuICAgKi9cbiAgYXR0YWNoQ29tcG9uZW50UG9ydGFsPFQ+KHBvcnRhbDogQ29tcG9uZW50UG9ydGFsPFQ+KTogQ29tcG9uZW50UmVmPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5fcG9ydGFsT3V0bGV0LmF0dGFjaENvbXBvbmVudFBvcnRhbChwb3J0YWwpO1xuICB9XG5cbiAgLyoqXG4gICAqIEF0dGFjaCBhIFRlbXBsYXRlUG9ydGFsIGFzIGNvbnRlbnQgdG8gdGhpcyBzaWRlLXNoZWV0IGNvbnRhaW5lci5cbiAgICogQHBhcmFtIHBvcnRhbCBQb3J0YWwgdG8gYmUgYXR0YWNoZWQgYXMgdGhlIHNpZGUtc2hlZXQgY29udGVudC5cbiAgICovXG4gIGF0dGFjaFRlbXBsYXRlUG9ydGFsPEM+KHBvcnRhbDogVGVtcGxhdGVQb3J0YWw8Qz4pOiBFbWJlZGRlZFZpZXdSZWY8Qz4ge1xuICAgIHJldHVybiB0aGlzLl9wb3J0YWxPdXRsZXQuYXR0YWNoVGVtcGxhdGVQb3J0YWwocG9ydGFsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdHRhY2hlcyBhIERPTSBwb3J0YWwgdG8gdGhlIHNpZGUtc2hlZXQgY29udGFpbmVyLlxuICAgKiBAcGFyYW0gcG9ydGFsIFBvcnRhbCB0byBiZSBhdHRhY2hlZC5cbiAgICogQGRlcHJlY2F0ZWQgVG8gYmUgdHVybmVkIGludG8gYSBtZXRob2QuXG4gICAqL1xuICBvdmVycmlkZSBhdHRhY2hEb21Qb3J0YWwgPSAocG9ydGFsOiBEb21Qb3J0YWwpID0+IHtcbiAgICByZXR1cm4gdGhpcy5fcG9ydGFsT3V0bGV0LmF0dGFjaERvbVBvcnRhbChwb3J0YWwpO1xuICB9O1xuXG4gIC8qKiBNb3ZlcyBmb2N1cyBiYWNrIGludG8gdGhlIHNpZGUtc2hlZXQgaWYgaXQgd2FzIG1vdmVkIG91dC4gKi9cbiAgX3JlY2FwdHVyZUZvY3VzKCkge1xuICAgIGlmICghdGhpcy5fY29udGFpbnNGb2N1cygpKSB7XG4gICAgICB0aGlzLl90cmFwRm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTW92ZXMgdGhlIGZvY3VzIGluc2lkZSB0aGUgZm9jdXMgdHJhcC4gV2hlbiBhdXRvRm9jdXMgaXMgbm90IHNldCB0byAnc2lkZS1zaGVldCcsIGlmIGZvY3VzXG4gICAqIGNhbm5vdCBiZSBtb3ZlZCB0aGVuIGZvY3VzIHdpbGwgZ28gdG8gdGhlIHNpZGUtc2hlZXQgY29udGFpbmVyLlxuICAgKi9cbiAgcHJvdGVjdGVkIF90cmFwRm9jdXMoKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBpZiAoIXRoaXMuX2NvbmZpZy5hdXRvRm9jdXMpIHtcbiAgICAgIGlmICghdGhpcy5fY29udGFpbnNGb2N1cygpKSB7XG4gICAgICAgIGVsZW1lbnQuZm9jdXMoKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fZm9jdXNUcmFwXG4gICAgICAgIC5mb2N1c0luaXRpYWxFbGVtZW50V2hlblJlYWR5KClcbiAgICAgICAgLnRoZW4oKGZvY3VzZWRTdWNjZXNzZnVsbHkpID0+IHtcbiAgICAgICAgICAvLyBJZiB3ZSB3ZXJlbid0IGFibGUgdG8gZmluZCBhIGZvY3VzYWJsZSBlbGVtZW50IGluIHRoZSBzaWRlLXNoZWV0LCB0aGVuIGZvY3VzIHRoZSBzaWRlLXNoZWV0XG4gICAgICAgICAgLy8gY29udGFpbmVyIGluc3RlYWQuXG4gICAgICAgICAgaWYgKCFmb2N1c2VkU3VjY2Vzc2Z1bGx5KSB7XG4gICAgICAgICAgICB0aGlzLl9mb2N1c1NpZGVTaGVldENvbnRhaW5lcigpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFJlc3RvcmVzIGZvY3VzIHRvIHRoZSBlbGVtZW50IHRoYXQgd2FzIGZvY3VzZWQgYmVmb3JlIHRoZSBzaWRlLXNoZWV0IG9wZW5lZC4gKi9cbiAgcHJvdGVjdGVkIF9yZXN0b3JlRm9jdXMoKSB7XG4gICAgY29uc3QgcHJldmlvdXNFbGVtZW50ID0gdGhpcy5fZWxlbWVudEZvY3VzZWRCZWZvcmVTaWRlU2hlZXRXYXNPcGVuZWQ7XG5cbiAgICAvLyBXZSBuZWVkIHRoZSBleHRyYSBjaGVjaywgYmVjYXVzZSBJRSBjYW4gc2V0IHRoZSBgYWN0aXZlRWxlbWVudGAgdG8gbnVsbCBpbiBzb21lIGNhc2VzLlxuICAgIGlmIChcbiAgICAgIHRoaXMuX2NvbmZpZy5yZXN0b3JlRm9jdXMgJiZcbiAgICAgIHByZXZpb3VzRWxlbWVudCAmJlxuICAgICAgdHlwZW9mIHByZXZpb3VzRWxlbWVudC5mb2N1cyA9PT0gJ2Z1bmN0aW9uJ1xuICAgICkge1xuICAgICAgY29uc3QgYWN0aXZlRWxlbWVudCA9IF9nZXRGb2N1c2VkRWxlbWVudFBpZXJjZVNoYWRvd0RvbSgpO1xuICAgICAgY29uc3QgZWxlbWVudCA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcblxuICAgICAgLy8gTWFrZSBzdXJlIHRoYXQgZm9jdXMgaXMgc3RpbGwgaW5zaWRlIHRoZSBzaWRlLXNoZWV0IG9yIGlzIG9uIHRoZSBib2R5ICh1c3VhbGx5IGJlY2F1c2UgYVxuICAgICAgLy8gbm9uLWZvY3VzYWJsZSBlbGVtZW50IGxpa2UgdGhlIGJhY2tkcm9wIHdhcyBjbGlja2VkKSBiZWZvcmUgbW92aW5nIGl0LiBJdCdzIHBvc3NpYmxlIHRoYXRcbiAgICAgIC8vIHRoZSBjb25zdW1lciBtb3ZlZCBpdCB0aGVtc2VsdmVzIGJlZm9yZSB0aGUgYW5pbWF0aW9uIHdhcyBkb25lLCBpbiB3aGljaCBjYXNlIHdlIHNob3VsZG4ndFxuICAgICAgLy8gZG8gYW55dGhpbmcuXG4gICAgICBpZiAoXG4gICAgICAgICFhY3RpdmVFbGVtZW50IHx8XG4gICAgICAgIGFjdGl2ZUVsZW1lbnQgPT09IHRoaXMuX2RvY3VtZW50Py5ib2R5IHx8XG4gICAgICAgIGFjdGl2ZUVsZW1lbnQgPT09IGVsZW1lbnQgfHxcbiAgICAgICAgZWxlbWVudC5jb250YWlucyhhY3RpdmVFbGVtZW50KVxuICAgICAgKSB7XG4gICAgICAgIGlmICh0aGlzLl9mb2N1c01vbml0b3IpIHtcbiAgICAgICAgICB0aGlzLl9mb2N1c01vbml0b3IuZm9jdXNWaWEoXG4gICAgICAgICAgICBwcmV2aW91c0VsZW1lbnQsXG4gICAgICAgICAgICB0aGlzLl9jbG9zZUludGVyYWN0aW9uVHlwZSxcbiAgICAgICAgICApO1xuICAgICAgICAgIHRoaXMuX2Nsb3NlSW50ZXJhY3Rpb25UeXBlID0gbnVsbDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBwcmV2aW91c0VsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLl9mb2N1c1RyYXApIHtcbiAgICAgIHRoaXMuX2ZvY3VzVHJhcC5kZXN0cm95KCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFNldHMgdXAgdGhlIGZvY3VzIHRyYXAuICovXG4gIHByaXZhdGUgX3NldHVwRm9jdXNUcmFwKCkge1xuICAgIHRoaXMuX2ZvY3VzVHJhcCA9IHRoaXMuX2ZvY3VzVHJhcEZhY3RvcnkuY3JlYXRlKFxuICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICk7XG4gIH1cblxuICAvKiogQ2FwdHVyZXMgdGhlIGVsZW1lbnQgdGhhdCB3YXMgZm9jdXNlZCBiZWZvcmUgdGhlIHNpZGUtc2hlZXQgd2FzIG9wZW5lZC4gKi9cbiAgcHJpdmF0ZSBfY2FwdHVyZVByZXZpb3VzbHlGb2N1c2VkRWxlbWVudCgpIHtcbiAgICBpZiAodGhpcy5fZG9jdW1lbnQpIHtcbiAgICAgIHRoaXMuX2VsZW1lbnRGb2N1c2VkQmVmb3JlU2lkZVNoZWV0V2FzT3BlbmVkID1cbiAgICAgICAgX2dldEZvY3VzZWRFbGVtZW50UGllcmNlU2hhZG93RG9tKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEZvY3VzZXMgdGhlIHNpZGUtc2hlZXQgY29udGFpbmVyLiAqL1xuICBwcml2YXRlIF9mb2N1c1NpZGVTaGVldENvbnRhaW5lcigpIHtcbiAgICAvLyBOb3RlIHRoYXQgdGhlcmUgaXMgbm8gZm9jdXMgbWV0aG9kIHdoZW4gcmVuZGVyaW5nIG9uIHRoZSBzZXJ2ZXIuXG4gICAgaWYgKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5mb2N1cykge1xuICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFJldHVybnMgd2hldGhlciBmb2N1cyBpcyBpbnNpZGUgdGhlIHNpZGUtc2hlZXQuICovXG4gIHByaXZhdGUgX2NvbnRhaW5zRm9jdXMoKSB7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBhY3RpdmVFbGVtZW50ID0gX2dldEZvY3VzZWRFbGVtZW50UGllcmNlU2hhZG93RG9tKCk7XG4gICAgcmV0dXJuIGVsZW1lbnQgPT09IGFjdGl2ZUVsZW1lbnQgfHwgZWxlbWVudC5jb250YWlucyhhY3RpdmVFbGVtZW50KTtcbiAgfVxufVxuXG4vKipcbiAqIEludGVybmFsIGNvbXBvbmVudCB0aGF0IHdyYXBzIHRoZSBnZW5lcmF0ZWQgc2lkZS1zaGVldCBjb250ZW50LlxuICogVGhpcyBhbmltYXRpb24gYmVsb3cgaXMgdGhlIG9ubHkgcmVhc29uIGZvciBkdXBsaWNhdGluZyBtb3N0IG9mIHRoZSBNYXRlcmlhbCBkaWFsb2cgY29kZVxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZC1zaWRlLXNoZWV0LWNvbnRhaW5lcicsXG4gIHRlbXBsYXRlOiBgIDxuZy10ZW1wbGF0ZSBjZGtQb3J0YWxPdXRsZXQ+PC9uZy10ZW1wbGF0ZT4gYCxcbiAgc3R5bGVVcmxzOiBbJ3NpZGUtc2hlZXQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHQsXG4gIGFuaW1hdGlvbnM6IFt0ZFNpZGVTaGVldEFuaW1hdGlvbnMuc2lkZVNoZWV0Q29udGFpbmVyXSxcbiAgaW1wb3J0czogW0Nka1BvcnRhbE91dGxldF0sXG59KVxuZXhwb3J0IGNsYXNzIENvdmFsZW50U2lkZVNoZWV0Q29udGFpbmVyQ29tcG9uZW50IGV4dGVuZHMgX0NvdmFsZW50U2lkZVNoZWV0Q29udGFpbmVyQmFzZSB7XG4gIC8qKiBTdGF0ZSBvZiB0aGUgc2lkZS1zaGVldCBhbmltYXRpb24uICovXG4gIF9zdGF0ZTogJ3ZvaWQnIHwgJ2VudGVyJyB8ICdleGl0JyA9ICdlbnRlcic7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy50ZC1zaWRlLXNoZWV0LWNvbnRhaW5lcicpIHRkU2lkZVNoZWV0Q29udGFpbmVyQ2xhc3MgPVxuICAgIHRydWU7XG4gIEBIb3N0QmluZGluZygndGFiaW5kZXgnKSB0YWJJbmRleCA9IC0xO1xuICBASG9zdEJpbmRpbmcoJ2FyaWEtbW9kYWwnKSBhcmlhbE1vZGFsID0gdHJ1ZTtcbiAgQEhvc3RCaW5kaW5nKCdpZCcpIGlkQXR0ciA9IHRoaXMuX2lkO1xuICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpIHJvbGVBdHRyID0gdGhpcy5fY29uZmlnLnJvbGU7XG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWxhYmVsbGVkYnknKSBhcmlhbExhYmVsQnlBdHRyID0gdGhpcy5fY29uZmlnLmFyaWFMYWJlbFxuICAgID8gbnVsbFxuICAgIDogdGhpcy5fYXJpYUxhYmVsbGVkQnk7XG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWRlc2NyaWJlZGJ5JykgYXJpYWxEZXNjcmliZUJ5QXR0ciA9XG4gICAgdGhpcy5fY29uZmlnLmFyaWFEZXNjcmliZWRCeSB8fCBudWxsO1xuICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1sYWJlbCcpIGFyaWFsTGFiZWxBdHRyID0gdGhpcy5fY29uZmlnLmFyaWFMYWJlbDtcbiAgQEhvc3RCaW5kaW5nKCdAc2lkZVNoZWV0Q29udGFpbmVyJykgZ2V0IHNpZGVTaGVldEFuaW1hdGlvblN0YXRlKCkge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcbiAgfVxuICBASG9zdExpc3RlbmVyKCdAc2lkZVNoZWV0Q29udGFpbmVyLnN0YXJ0JywgWyckZXZlbnQnXSkgb25BbmltYXRlU3RhcnQoXG4gICAgJGV2ZW50OiBBbmltYXRpb25FdmVudCxcbiAgKSB7XG4gICAgdGhpcy5fb25BbmltYXRpb25TdGFydCgkZXZlbnQpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignQHNpZGVTaGVldENvbnRhaW5lci5kb25lJywgWyckZXZlbnQnXSkgb25BbmltYXRlRG9uZShcbiAgICAkZXZlbnQ6IEFuaW1hdGlvbkV2ZW50LFxuICApIHtcbiAgICB0aGlzLl9vbkFuaW1hdGlvbkRvbmUoJGV2ZW50KTtcbiAgfVxuXG4gIC8qKiBDYWxsYmFjaywgaW52b2tlZCB3aGVuZXZlciBhbiBhbmltYXRpb24gb24gdGhlIGhvc3QgY29tcGxldGVzLiAqL1xuICBfb25BbmltYXRpb25Eb25lKHsgdG9TdGF0ZSwgdG90YWxUaW1lIH06IEFuaW1hdGlvbkV2ZW50KSB7XG4gICAgaWYgKHRvU3RhdGUgPT09ICdlbnRlcicpIHtcbiAgICAgIHRoaXMuX3RyYXBGb2N1cygpO1xuICAgICAgdGhpcy5fYW5pbWF0aW9uU3RhdGVDaGFuZ2VkLm5leHQoeyBzdGF0ZTogJ29wZW5lZCcsIHRvdGFsVGltZSB9KTtcbiAgICB9IGVsc2UgaWYgKHRvU3RhdGUgPT09ICdleGl0Jykge1xuICAgICAgdGhpcy5fcmVzdG9yZUZvY3VzKCk7XG4gICAgICB0aGlzLl9hbmltYXRpb25TdGF0ZUNoYW5nZWQubmV4dCh7IHN0YXRlOiAnY2xvc2VkJywgdG90YWxUaW1lIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBDYWxsYmFjaywgaW52b2tlZCB3aGVuIGFuIGFuaW1hdGlvbiBvbiB0aGUgaG9zdCBzdGFydHMuICovXG4gIF9vbkFuaW1hdGlvblN0YXJ0KHsgdG9TdGF0ZSwgdG90YWxUaW1lIH06IEFuaW1hdGlvbkV2ZW50KSB7XG4gICAgaWYgKHRvU3RhdGUgPT09ICdlbnRlcicpIHtcbiAgICAgIHRoaXMuX2FuaW1hdGlvblN0YXRlQ2hhbmdlZC5uZXh0KHsgc3RhdGU6ICdvcGVuaW5nJywgdG90YWxUaW1lIH0pO1xuICAgIH0gZWxzZSBpZiAodG9TdGF0ZSA9PT0gJ2V4aXQnIHx8IHRvU3RhdGUgPT09ICd2b2lkJykge1xuICAgICAgdGhpcy5fYW5pbWF0aW9uU3RhdGVDaGFuZ2VkLm5leHQoeyBzdGF0ZTogJ2Nsb3NpbmcnLCB0b3RhbFRpbWUgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFN0YXJ0cyB0aGUgc2lkZS1zaGVldCBleGl0IGFuaW1hdGlvbi4gKi9cbiAgX3N0YXJ0RXhpdEFuaW1hdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSA9ICdleGl0JztcbiAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgfVxufVxuIl19","import { DialogRef } from '@angular/cdk/dialog';\nimport { MatDialogRef } from '@angular/material/dialog';\n// Counter for unique dialog ids.\nlet uniqueId = 0;\n// Create a new side sheet ref to change the id of the ref\nexport class CovalentSideSheetRef extends MatDialogRef {\n overlayRef;\n config;\n _containerInstance;\n id;\n constructor(overlayRef, config, _containerInstance, id = `td-side-sheet-${uniqueId++}`) {\n const ref = new DialogRef(overlayRef, config);\n super(ref, config, _containerInstance);\n this.overlayRef = overlayRef;\n this.config = config;\n this._containerInstance = _containerInstance;\n this.id = id;\n ref.containerInstance =\n this._containerInstance;\n }\n}\nexport function _closeSideSheetVia(ref, interactionType, result) {\n // Some mock dialog ref instances in tests do not have the `_containerInstance` property.\n // For those, we keep the behavior as is and do not deal with the interaction type.\n if (ref._containerInstance !== undefined) {\n ref._containerInstance._closeInteractionType = interactionType;\n }\n return ref.close(result);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC1yZWYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC1yZWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR2hELE9BQU8sRUFBRSxZQUFZLEVBQXNCLE1BQU0sMEJBQTBCLENBQUM7QUFHNUUsaUNBQWlDO0FBQ2pDLElBQUksUUFBUSxHQUFHLENBQUMsQ0FBQztBQUVqQiwwREFBMEQ7QUFDMUQsTUFBTSxPQUFPLG9CQUFpQyxTQUFRLFlBQWtCO0lBRTdEO0lBQ0E7SUFDUztJQUNFO0lBSnBCLFlBQ1MsVUFBc0IsRUFDdEIsTUFBK0IsRUFDdEIsa0JBQXNDLEVBQ3BDLEtBQUssaUJBQWlCLFFBQVEsRUFBRSxFQUFFO1FBRXBELE1BQU0sR0FBRyxHQUFHLElBQUksU0FBUyxDQUFPLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNwRCxLQUFLLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1FBTmhDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsV0FBTSxHQUFOLE1BQU0sQ0FBeUI7UUFDdEIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUNwQyxPQUFFLEdBQUYsRUFBRSxDQUFnQztRQUluRCxHQUErQyxDQUFDLGlCQUFpQjtZQUNoRSxJQUFJLENBQUMsa0JBQWtCLENBQUM7SUFDNUIsQ0FBQztDQUNGO0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUNoQyxHQUE0QixFQUM1QixlQUE0QixFQUM1QixNQUFVO0lBRVYseUZBQXlGO0lBQ3pGLG1GQUFtRjtJQUNuRixJQUFJLEdBQUcsQ0FBQyxrQkFBa0IsS0FBSyxTQUFTLEVBQUUsQ0FBQztRQUN6QyxHQUFHLENBQUMsa0JBQWtCLENBQUMscUJBQXFCLEdBQUcsZUFBZSxDQUFDO0lBQ2pFLENBQUM7SUFDRCxPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDM0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIHRzbGludDpkaXNhYmxlICovXG5pbXBvcnQgeyBGb2N1c09yaWdpbiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kaWFsb2cnO1xuaW1wb3J0IHsgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IEJhc2VQb3J0YWxPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTWF0RGlhbG9nQ29udGFpbmVyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IENvdmFsZW50U2lkZVNoZWV0Q29uZmlnIH0gZnJvbSAnLi9zaWRlLXNoZWV0LmNvbmZpZyc7XG5cbi8vIENvdW50ZXIgZm9yIHVuaXF1ZSBkaWFsb2cgaWRzLlxubGV0IHVuaXF1ZUlkID0gMDtcblxuLy8gQ3JlYXRlIGEgbmV3IHNpZGUgc2hlZXQgcmVmIHRvIGNoYW5nZSB0aGUgaWQgb2YgdGhlIHJlZlxuZXhwb3J0IGNsYXNzIENvdmFsZW50U2lkZVNoZWV0UmVmPFQsIFIgPSBhbnk+IGV4dGVuZHMgTWF0RGlhbG9nUmVmPFQsIFI+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYsXG4gICAgcHVibGljIGNvbmZpZzogQ292YWxlbnRTaWRlU2hlZXRDb25maWcsXG4gICAgcHVibGljIG92ZXJyaWRlIF9jb250YWluZXJJbnN0YW5jZTogTWF0RGlhbG9nQ29udGFpbmVyLFxuICAgIG92ZXJyaWRlIHJlYWRvbmx5IGlkID0gYHRkLXNpZGUtc2hlZXQtJHt1bmlxdWVJZCsrfWBcbiAgKSB7XG4gICAgY29uc3QgcmVmID0gbmV3IERpYWxvZ1JlZjxSLCBUPihvdmVybGF5UmVmLCBjb25maWcpO1xuICAgIHN1cGVyKHJlZiwgY29uZmlnLCBfY29udGFpbmVySW5zdGFuY2UpO1xuICAgIChyZWYgYXMgeyBjb250YWluZXJJbnN0YW5jZTogQmFzZVBvcnRhbE91dGxldCB9KS5jb250YWluZXJJbnN0YW5jZSA9XG4gICAgICB0aGlzLl9jb250YWluZXJJbnN0YW5jZTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gX2Nsb3NlU2lkZVNoZWV0VmlhPFI+KFxuICByZWY6IENvdmFsZW50U2lkZVNoZWV0UmVmPFI+LFxuICBpbnRlcmFjdGlvblR5cGU6IEZvY3VzT3JpZ2luLFxuICByZXN1bHQ/OiBSXG4pIHtcbiAgLy8gU29tZSBtb2NrIGRpYWxvZyByZWYgaW5zdGFuY2VzIGluIHRlc3RzIGRvIG5vdCBoYXZlIHRoZSBgX2NvbnRhaW5lckluc3RhbmNlYCBwcm9wZXJ0eS5cbiAgLy8gRm9yIHRob3NlLCB3ZSBrZWVwIHRoZSBiZWhhdmlvciBhcyBpcyBhbmQgZG8gbm90IGRlYWwgd2l0aCB0aGUgaW50ZXJhY3Rpb24gdHlwZS5cbiAgaWYgKHJlZi5fY29udGFpbmVySW5zdGFuY2UgIT09IHVuZGVmaW5lZCkge1xuICAgIHJlZi5fY29udGFpbmVySW5zdGFuY2UuX2Nsb3NlSW50ZXJhY3Rpb25UeXBlID0gaW50ZXJhY3Rpb25UeXBlO1xuICB9XG4gIHJldHVybiByZWYuY2xvc2UocmVzdWx0KTtcbn1cbiJdfQ==","/* eslint-disable @angular-eslint/prefer-inject */\n/* tslint:disable */\nimport { Directive, Inject, Injectable, InjectionToken, Injector, Optional, SkipSelf, TemplateRef, Type, } from '@angular/core';\nimport { Overlay, OverlayConfig, } from '@angular/cdk/overlay';\nimport { ComponentPortal, TemplatePortal, } from '@angular/cdk/portal';\nimport { MAT_DIALOG_DATA, MAT_DIALOG_DEFAULT_OPTIONS, } from '@angular/material/dialog';\nimport { AnimationCurves, AnimationDurations } from '@angular/material/core';\nimport { CovalentSideSheetContainerComponent, } from './side-sheet-container';\nimport { Subject, of } from 'rxjs';\nimport { filter, take } from 'rxjs/operators';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { CovalentSideSheetRef } from './side-sheet-ref';\nimport { SubPageMode, CovalentSideSheetConfig } from './side-sheet.config';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/cdk/overlay\";\nimport * as i2 from \"./side-sheet.config\";\nexport class _CovalentSideSheetBase {\n _overlay;\n _injector;\n _defaultOptions;\n _parentSideSheet;\n _sideSheetRefConstructor;\n _sideSheetContainerType;\n _sideSheetDataToken;\n _openSideSheetsAtThisLevel = [];\n _afterAllClosedAtThisLevel = new Subject();\n _afterOpenedAtThisLevel = new Subject();\n _animationStateSubscriptions;\n defaultSidebarConfig = {\n minWidth: '400px',\n maxWidth: '100vw',\n };\n constructor(_overlay, _injector, _defaultOptions, _parentSideSheet, _sideSheetRefConstructor, _sideSheetContainerType, _sideSheetDataToken) {\n this._overlay = _overlay;\n this._injector = _injector;\n this._defaultOptions = _defaultOptions;\n this._parentSideSheet = _parentSideSheet;\n this._sideSheetRefConstructor = _sideSheetRefConstructor;\n this._sideSheetContainerType = _sideSheetContainerType;\n this._sideSheetDataToken = _sideSheetDataToken;\n }\n /** Keeps track of the currently-open side-sheets. */\n get openSideSheets() {\n return this._parentSideSheet\n ? this._parentSideSheet.openSideSheets\n : this._openSideSheetsAtThisLevel;\n }\n open(componentOrTemplateRef, config) {\n config = {\n ...(this._defaultOptions || new CovalentSideSheetConfig()),\n ...this.defaultSidebarConfig,\n ...config,\n };\n const overlayRef = this._createOverlay(config);\n const sideSheetContainer = this._attachSideSheetContainer(overlayRef, config);\n const sideSheetRef = this._attachSideSheetContent(componentOrTemplateRef, sideSheetContainer, overlayRef, config);\n const prevSideSheetRef = this.openSideSheets.slice(-1)[0];\n const prevOverlayRef = prevSideSheetRef?.overlayRef;\n if (prevOverlayRef?.overlayElement &&\n config.subPageMode !== SubPageMode.none) {\n prevOverlayRef.overlayElement.style.transition = `${AnimationDurations.COMPLEX} ${AnimationCurves.DECELERATION_CURVE}`;\n if (config.subPageMode === SubPageMode.pushed) {\n // Animate previous side sheet to full width\n prevOverlayRef.overlayElement.style.minWidth = `${window.innerWidth}px`;\n }\n else if (config.subPageMode === SubPageMode.shifted) {\n // Animate previous side sheet to current sidesheet width + 200px\n prevOverlayRef.overlayElement.style.minWidth = `${sideSheetRef.overlayRef.overlayElement.offsetWidth + 200}px`;\n }\n }\n // Revert the previous side sheet config & size\n sideSheetRef._containerInstance._animationStateChanged\n .pipe(filter((event) => event.state === 'closing' && !!(prevSideSheetRef && prevOverlayRef)), take(1))\n .subscribe(() => {\n prevOverlayRef.overlayElement.style.transition = `${AnimationDurations.EXITING} ${AnimationCurves.DECELERATION_CURVE}`;\n prevSideSheetRef.updateSize();\n });\n // Add new side sheet to open list\n this.openSideSheets.push(sideSheetRef);\n // Remove side sheet ref after closed\n sideSheetRef\n .afterClosed()\n .pipe(take(1))\n .subscribe(() => this._removeOpenSideSheet(sideSheetRef));\n // Notify the side-sheet container that the content has been attached.\n sideSheetContainer._initializeWithAttachedContent();\n return sideSheetRef;\n }\n ngOnDestroy() {\n // Only close the side-sheets at this level on destroy\n // since the parent service may still be active.\n this._closeSideSheets(this._openSideSheetsAtThisLevel);\n this._afterAllClosedAtThisLevel.complete();\n this._afterOpenedAtThisLevel.complete();\n // Clean up any subscriptions to side-sheet that never finished opening.\n if (this._animationStateSubscriptions) {\n this._animationStateSubscriptions.unsubscribe();\n }\n }\n /**\n * Closes all of the currently-open side-sheets.\n */\n closeAll() {\n this._closeSideSheets(this.openSideSheets);\n }\n _createOverlay(config) {\n const overlayConfig = new OverlayConfig({\n positionStrategy: this._overlay.position().global(),\n scrollStrategy: this._overlay.scrollStrategies.block(),\n panelClass: config.panelClass,\n hasBackdrop: config.hasBackdrop,\n direction: config.direction,\n minWidth: config.minWidth,\n minHeight: config.minHeight,\n maxWidth: config.maxWidth,\n });\n const overlayRef = this._overlay.create(overlayConfig);\n const positionStrategy = overlayRef.getConfig()\n .positionStrategy;\n positionStrategy.right('0px');\n return overlayRef;\n }\n /**\n * Attaches a container to a side-sheets's already-created overlay.\n * @param overlay Reference to the side-sheet's underlying overlay.\n * @param config The side-sheet configuration.\n * @returns A promise resolving to a ComponentRef for the attached container.\n */\n _attachSideSheetContainer(overlay, config) {\n const userInjector = config && config.viewContainerRef && config.viewContainerRef.injector;\n const injector = Injector.create({\n parent: userInjector || this._injector,\n providers: [{ provide: CovalentSideSheetConfig, useValue: config }],\n });\n const containerPortal = new ComponentPortal(this._sideSheetContainerType, config.viewContainerRef, injector);\n const containerRef = overlay.attach(containerPortal);\n return containerRef.instance;\n }\n /**\n * Attaches the user-provided component to the already-created side sheet container.\n * @param componentOrTemplateRef The type of component being loaded into the side-sheet,\n * or a TemplateRef to instantiate as the content.\n * @param dialogContainer Reference to the wrapping side-sheet container.\n * @param overlayRef Reference to the overlay in which the side-sheet resides.\n * @param config The side-sheet configuration.\n * @returns A promise resolving to the CovalentSideSheetRef that should be returned to the user.\n */\n _attachSideSheetContent(componentOrTemplateRef, sideSheetContainer, overlayRef, config) {\n // Create a reference to the side-sheet we're creating in order to give the user a handle\n // to modify and close it.\n const sideSheetRef = new this._sideSheetRefConstructor(overlayRef, config, sideSheetContainer, config.id);\n if (componentOrTemplateRef instanceof TemplateRef) {\n sideSheetContainer.attachTemplatePortal(\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n new TemplatePortal(componentOrTemplateRef, null, {\n $implicit: config.data,\n sideSheetRef,\n }));\n }\n else {\n const injector = this._createInjector(config, sideSheetRef, sideSheetContainer);\n const contentRef = sideSheetContainer.attach(new ComponentPortal(componentOrTemplateRef, config.viewContainerRef, injector));\n sideSheetRef.componentInstance = contentRef.instance;\n }\n sideSheetRef.updateSize(config.width, config.height);\n return sideSheetRef;\n }\n _createInjector(config, sideSheetRef, sideSheetContainer) {\n const userInjector = config && config.viewContainerRef && config.viewContainerRef.injector;\n // The side-sheet container should be provided as the side-sheet container and the side-sheet's\n // content are created out of the same `ViewContainerRef` and as such, are siblings\n // for injector purposes. To allow the hierarchy that is expected, the side-sheet\n // container is explicitly provided in the injector.\n const providers = [\n { provide: this._sideSheetContainerType, useValue: sideSheetContainer },\n { provide: this._sideSheetDataToken, useValue: config.data },\n { provide: this._sideSheetRefConstructor, useValue: sideSheetRef },\n ];\n if (config.direction &&\n (!userInjector ||\n !userInjector.get(Directionality, null, {\n optional: true,\n }))) {\n providers.push({\n provide: Directionality,\n useValue: { value: config.direction, change: of() },\n });\n }\n return Injector.create({\n parent: userInjector || this._injector,\n providers,\n });\n }\n /**\n * Removes a side sheet from the array of open side sheets.\n * @param sideSheetRef Side Sheet to be removed.\n */\n _removeOpenSideSheet(sideSheetRef) {\n const index = this.openSideSheets.indexOf(sideSheetRef);\n if (index > -1) {\n this.openSideSheets.splice(index, 1);\n }\n }\n /** Closes all of the side-sheet in an array. */\n _closeSideSheets(sideSheets) {\n let i = sideSheets.length;\n while (i--) {\n sideSheets[i].close();\n }\n }\n static ɵfac = function _CovalentSideSheetBase_Factory(__ngFactoryType__) { i0.ɵɵinvalidFactory(); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: _CovalentSideSheetBase });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(_CovalentSideSheetBase, [{\n type: Directive\n }], () => [{ type: i1.Overlay }, { type: i0.Injector }, { type: undefined }, { type: undefined }, { type: i0.Type }, { type: i0.Type }, { type: i0.InjectionToken }], null); })();\n/**\n * Service to open Covalent Design side-sheet.\n */\nexport class CovalentSideSheet extends _CovalentSideSheetBase {\n constructor(overlay, injector, defaultOptions, parentSideSheet) {\n super(overlay, injector, defaultOptions, parentSideSheet, CovalentSideSheetRef, CovalentSideSheetContainerComponent, MAT_DIALOG_DATA);\n }\n static ɵfac = function CovalentSideSheet_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheet)(i0.ɵɵinject(i1.Overlay), i0.ɵɵinject(i0.Injector), i0.ɵɵinject(MAT_DIALOG_DEFAULT_OPTIONS, 8), i0.ɵɵinject(CovalentSideSheet, 12)); };\n static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: CovalentSideSheet, factory: CovalentSideSheet.ɵfac });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheet, [{\n type: Injectable\n }], () => [{ type: i1.Overlay }, { type: i0.Injector }, { type: i2.CovalentSideSheetConfig, decorators: [{\n type: Optional\n }, {\n type: Inject,\n args: [MAT_DIALOG_DEFAULT_OPTIONS]\n }] }, { type: CovalentSideSheet, decorators: [{\n type: Optional\n }, {\n type: SkipSelf\n }] }], null); })();\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zaWRlLXNoZWV0L3NyYy9zaWRlLXNoZWV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGtEQUFrRDtBQUNsRCxvQkFBb0I7QUFDcEIsT0FBTyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sVUFBVSxFQUNWLGNBQWMsRUFDZCxRQUFRLEVBRVIsUUFBUSxFQUNSLFFBQVEsRUFFUixXQUFXLEVBQ1gsSUFBSSxHQUNMLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxPQUFPLEVBQ1AsYUFBYSxHQUdkLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUNMLGVBQWUsRUFFZixjQUFjLEdBQ2YsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQ0wsZUFBZSxFQUNmLDBCQUEwQixHQUMzQixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RSxPQUFPLEVBQ0wsbUNBQW1DLEdBRXBDLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7OztBQUczRSxNQUFNLE9BQU8sc0JBQXNCO0lBZ0J2QjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQW5CRiwwQkFBMEIsR0FBb0MsRUFBRSxDQUFDO0lBQ3hE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SyxvQkFBb0IsQ0FBQyxZQUEyQztRQUN0RSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUV4RCxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7SUFDSCxDQUFDO0lBRUQsZ0RBQWdEO0lBQ3hDLGdCQUFnQixDQUFDLFVBQXVDO1FBQzlELElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUM7UUFFMUIsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1gsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3hCLENBQUM7SUFDSCxDQUFDOzs2REF0UlUsc0JBQXNCOztpRkFBdEIsc0JBQXNCO2NBRGxDLFNBQVM7O0FBMFJWOztHQUVHO0FBRUgsTUFBTSxPQUFPLGlCQUFrQixTQUFRLHNCQUEyRDtJQUNoRyxZQUNFLE9BQWdCLEVBQ2hCLFFBQWtCLEVBR2xCLGNBQXVDLEVBQ2YsZUFBa0M7UUFFMUQsS0FBSyxDQUNILE9BQU8sRUFDUCxRQUFRLEVBQ1IsY0FBYyxFQUNkLGVBQWUsRUFDZixvQkFBb0IsRUFDcEIsbUNBQW1DLEVBQ25DLGVBQWUsQ0FDaEIsQ0FBQztJQUNKLENBQUM7MkdBbEJVLGlCQUFpQixpRUFLbEIsMEJBQTBCO2dFQUx6QixpQkFBaUIsV0FBakIsaUJBQWlCOztpRkFBakIsaUJBQWlCO2NBRDdCLFVBQVU7O3NCQUtOLFFBQVE7O3NCQUNSLE1BQU07dUJBQUMsMEJBQTBCOztzQkFFakMsUUFBUTs7c0JBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9wcmVmZXItaW5qZWN0ICovXG4vKiB0c2xpbnQ6ZGlzYWJsZSAqL1xuaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBJbmplY3QsXG4gIEluamVjdGFibGUsXG4gIEluamVjdGlvblRva2VuLFxuICBJbmplY3RvcixcbiAgT25EZXN0cm95LFxuICBPcHRpb25hbCxcbiAgU2tpcFNlbGYsXG4gIFN0YXRpY1Byb3ZpZGVyLFxuICBUZW1wbGF0ZVJlZixcbiAgVHlwZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBPdmVybGF5LFxuICBPdmVybGF5Q29uZmlnLFxuICBPdmVybGF5UmVmLFxuICBHbG9iYWxQb3NpdGlvblN0cmF0ZWd5LFxufSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQge1xuICBDb21wb25lbnRQb3J0YWwsXG4gIENvbXBvbmVudFR5cGUsXG4gIFRlbXBsYXRlUG9ydGFsLFxufSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7XG4gIE1BVF9ESUFMT0dfREFUQSxcbiAgTUFUX0RJQUxPR19ERUZBVUxUX09QVElPTlMsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBBbmltYXRpb25DdXJ2ZXMsIEFuaW1hdGlvbkR1cmF0aW9ucyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHtcbiAgQ292YWxlbnRTaWRlU2hlZXRDb250YWluZXJDb21wb25lbnQsXG4gIF9Db3ZhbGVudFNpZGVTaGVldENvbnRhaW5lckJhc2UsXG59IGZyb20gJy4vc2lkZS1zaGVldC1jb250YWluZXInO1xuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRGlyZWN0aW9uYWxpdHkgfSBmcm9tICdAYW5ndWxhci9jZGsvYmlkaSc7XG5cbmltcG9ydCB7IENvdmFsZW50U2lkZVNoZWV0UmVmIH0gZnJvbSAnLi9zaWRlLXNoZWV0LXJlZic7XG5pbXBvcnQgeyBTdWJQYWdlTW9kZSwgQ292YWxlbnRTaWRlU2hlZXRDb25maWcgfSBmcm9tICcuL3NpZGUtc2hlZXQuY29uZmlnJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgX0NvdmFsZW50U2lkZVNoZWV0QmFzZTxDIGV4dGVuZHMgX0NvdmFsZW50U2lkZVNoZWV0Q29udGFpbmVyQmFzZT5cbiAgaW1wbGVtZW50cyBPbkRlc3Ryb3lcbntcbiAgcHJpdmF0ZSBfb3BlblNpZGVTaGVldHNBdFRoaXNMZXZlbDogQ292YWxlbnRTaWRlU2hlZXRSZWY8dW5rbm93bj5bXSA9IFtdO1xuICBwcml2YXRlIHJlYWRvbmx5IF9hZnRlckFsbENsb3NlZEF0VGhpc0xldmVsID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWZ0ZXJPcGVuZWRBdFRoaXNMZXZlbCA9IG5ldyBTdWJqZWN0PFxuICAgIENvdmFsZW50U2lkZVNoZWV0UmVmPHVua25vd24+XG4gID4oKTtcbiAgcHJpdmF0ZSBfYW5pbWF0aW9uU3RhdGVTdWJzY3JpcHRpb25zITogU3Vic2NyaXB0aW9uO1xuXG4gIHByaXZhdGUgZGVmYXVsdFNpZGViYXJDb25maWcgPSB7XG4gICAgbWluV2lkdGg6ICc0MDBweCcsXG4gICAgbWF4V2lkdGg6ICcxMDB2dycsXG4gIH07XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBfZGVmYXVsdE9wdGlvbnM6IENvdmFsZW50U2lkZVNoZWV0Q29uZmlnIHwgdW5kZWZpbmVkLFxuICAgIHByaXZhdGUgX3BhcmVudFNpZGVTaGVldDogX0NvdmFsZW50U2lkZVNoZWV0QmFzZTxDPiB8IHVuZGVmaW5lZCxcbiAgICBwcml2YXRlIF9zaWRlU2hlZXRSZWZDb25zdHJ1Y3RvcjogVHlwZTxDb3ZhbGVudFNpZGVTaGVldFJlZjxhbnk+PixcbiAgICBwcml2YXRlIF9zaWRlU2hlZXRDb250YWluZXJUeXBlOiBUeXBlPEM+LFxuICAgIHByaXZhdGUgX3NpZGVTaGVldERhdGFUb2tlbjogSW5qZWN0aW9uVG9rZW48dW5rbm93bj4sXG4gICkge31cblxuICAvKiogS2VlcHMgdHJhY2sgb2YgdGhlIGN1cnJlbnRseS1vcGVuIHNpZGUtc2hlZXRzLiAqL1xuICBnZXQgb3BlblNpZGVTaGVldHMoKTogQ292YWxlbnRTaWRlU2hlZXRSZWY8dW5rbm93bj5bXSB7XG4gICAgcmV0dXJuIHRoaXMuX3BhcmVudFNpZGVTaGVldFxuICAgICAgPyB0aGlzLl9wYXJlbnRTaWRlU2hlZXQub3BlblNpZGVTaGVldHNcbiAgICAgIDogdGhpcy5fb3BlblNpZGVTaGVldHNBdFRoaXNMZXZlbDtcbiAgfVxuXG4gIG9wZW48VCwgRCA9IHVua25vd24sIFIgPSB1bmtub3duPihcbiAgICBjb21wb25lbnRPclRlbXBsYXRlUmVmOiBDb21wb25lbnRUeXBlPFQ+IHwgVGVtcGxhdGVSZWY8VD4sXG4gICAgY29uZmlnPzogQ292YWxlbnRTaWRlU2hlZXRDb25maWc8RD4sXG4gICk6IENvdmFsZW50U2lkZVNoZWV0UmVmPFQsIFI+IHtcbiAgICBjb25maWcgPSB7XG4gICAgICAuLi4odGhpcy5fZGVmYXVsdE9wdGlvbnMgfHwgbmV3IENvdmFsZW50U2lkZVNoZWV0Q29uZmlnKCkpLFxuICAgICAgLi4udGhpcy5kZWZhdWx0U2lkZWJhckNvbmZpZyxcbiAgICAgIC4uLmNvbmZpZyxcbiAgICB9O1xuXG4gICAgY29uc3Qgb3ZlcmxheVJlZiA9IHRoaXMuX2NyZWF0ZU92ZXJsYXkoY29uZmlnKTtcbiAgICBjb25zdCBzaWRlU2hlZXRDb250YWluZXIgPSB0aGlzLl9hdHRhY2hTaWRlU2hlZXRDb250YWluZXIoXG4gICAgICBvdmVybGF5UmVmLFxuICAgICAgY29uZmlnLFxuICAgICk7XG4gICAgY29uc3Qgc2lkZVNoZWV0UmVmID0gdGhpcy5fYXR0YWNoU2lkZVNoZWV0Q29udGVudDxULCBSPihcbiAgICAgIGNvbXBvbmVudE9yVGVtcGxhdGVSZWYsXG4gICAgICBzaWRlU2hlZXRDb250YWluZXIsXG4gICAgICBvdmVybGF5UmVmLFxuICAgICAgY29uZmlnLFxuICAgICk7XG4gICAgY29uc3QgcHJldlNpZGVTaGVldFJlZjogQ292YWxlbnRTaWRlU2hlZXRSZWY8dW5rbm93bj4gPVxuICAgICAgdGhpcy5vcGVuU2lkZVNoZWV0cy5zbGljZSgtMSlbMF07XG4gICAgY29uc3QgcHJldk92ZXJsYXlSZWYgPSBwcmV2U2lkZVNoZWV0UmVmPy5vdmVybGF5UmVmO1xuXG4gICAgaWYgKFxuICAgICAgcHJldk92ZXJsYXlSZWY/Lm92ZXJsYXlFbGVtZW50ICYmXG4gICAgICBjb25maWcuc3ViUGFnZU1vZGUgIT09IFN1YlBhZ2VNb2RlLm5vbmVcbiAgICApIHtcbiAgICAgIHByZXZPdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50LnN0eWxlLnRyYW5zaXRpb24gPSBgJHtBbmltYXRpb25EdXJhdGlvbnMuQ09NUExFWH0gJHtBbmltYXRpb25DdXJ2ZXMuREVDRUxFUkFUSU9OX0NVUlZFfWA7XG4gICAgICBpZiAoY29uZmlnLnN1YlBhZ2VNb2RlID09PSBTdWJQYWdlTW9kZS5wdXNoZWQpIHtcbiAgICAgICAgLy8gQW5pbWF0ZSBwcmV2aW91cyBzaWRlIHNoZWV0IHRvIGZ1bGwgd2lkdGhcbiAgICAgICAgcHJldk92ZXJsYXlSZWYub3ZlcmxheUVsZW1lbnQuc3R5bGUubWluV2lkdGggPSBgJHtcbiAgICAgICAgICAod2luZG93IGFzIGFueSkuaW5uZXJXaWR0aFxuICAgICAgICB9cHhgO1xuICAgICAgfSBlbHNlIGlmIChjb25maWcuc3ViUGFnZU1vZGUgPT09IFN1YlBhZ2VNb2RlLnNoaWZ0ZWQpIHtcbiAgICAgICAgLy8gQW5pbWF0ZSBwcmV2aW91cyBzaWRlIHNoZWV0IHRvIGN1cnJlbnQgc2lkZXNoZWV0IHdpZHRoICsgMjAwcHhcbiAgICAgICAgcHJldk92ZXJsYXlSZWYub3ZlcmxheUVsZW1lbnQuc3R5bGUubWluV2lkdGggPSBgJHtcbiAgICAgICAgICBzaWRlU2hlZXRSZWYub3ZlcmxheVJlZi5vdmVybGF5RWxlbWVudC5vZmZzZXRXaWR0aCArIDIwMFxuICAgICAgICB9cHhgO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJldmVydCB0aGUgcHJldmlvdXMgc2lkZSBzaGVldCBjb25maWcgJiBzaXplXG4gICAgc2lkZVNoZWV0UmVmLl9jb250YWluZXJJbnN0YW5jZS5fYW5pbWF0aW9uU3RhdGVDaGFuZ2VkXG4gICAgICAucGlwZShcbiAgICAgICAgZmlsdGVyKFxuICAgICAgICAgIChldmVudCkgPT5cbiAgICAgICAgICAgIGV2ZW50LnN0YXRlID09PSAnY2xvc2luZycgJiYgISEocHJldlNpZGVTaGVldFJlZiAmJiBwcmV2T3ZlcmxheVJlZiksXG4gICAgICAgICksXG4gICAgICAgIHRha2UoMSksXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgcHJldk92ZXJsYXlSZWYub3ZlcmxheUVsZW1lbnQuc3R5bGUudHJhbnNpdGlvbiA9IGAke0FuaW1hdGlvbkR1cmF0aW9ucy5FWElUSU5HfSAke0FuaW1hdGlvbkN1cnZlcy5ERUNFTEVSQVRJT05fQ1VSVkV9YDtcbiAgICAgICAgcHJldlNpZGVTaGVldFJlZi51cGRhdGVTaXplKCk7XG4gICAgICB9KTtcblxuICAgIC8vIEFkZCBuZXcgc2lkZSBzaGVldCB0byBvcGVuIGxpc3RcbiAgICB0aGlzLm9wZW5TaWRlU2hlZXRzLnB1c2goc2lkZVNoZWV0UmVmKTtcblxuICAgIC8vIFJlbW92ZSBzaWRlIHNoZWV0IHJlZiBhZnRlciBjbG9zZWRcbiAgICBzaWRlU2hlZXRSZWZcbiAgICAgIC5hZnRlckNsb3NlZCgpXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLl9yZW1vdmVPcGVuU2lkZVNoZWV0KHNpZGVTaGVldFJlZikpO1xuXG4gICAgLy8gTm90aWZ5IHRoZSBzaWRlLXNoZWV0IGNvbnRhaW5lciB0aGF0IHRoZSBjb250ZW50IGhhcyBiZWVuIGF0dGFjaGVkLlxuICAgIHNpZGVTaGVldENvbnRhaW5lci5faW5pdGlhbGl6ZVdpdGhBdHRhY2hlZENvbnRlbnQoKTtcblxuICAgIHJldHVybiBzaWRlU2hlZXRSZWY7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICAvLyBPbmx5IGNsb3NlIHRoZSBzaWRlLXNoZWV0cyBhdCB0aGlzIGxldmVsIG9uIGRlc3Ryb3lcbiAgICAvLyBzaW5jZSB0aGUgcGFyZW50IHNlcnZpY2UgbWF5IHN0aWxsIGJlIGFjdGl2ZS5cbiAgICB0aGlzLl9jbG9zZVNpZGVTaGVldHModGhpcy5fb3BlblNpZGVTaGVldHNBdFRoaXNMZXZlbCk7XG4gICAgdGhpcy5fYWZ0ZXJBbGxDbG9zZWRBdFRoaXNMZXZlbC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX2FmdGVyT3BlbmVkQXRUaGlzTGV2ZWwuY29tcGxldGUoKTtcbiAgICAvLyBDbGVhbiB1cCBhbnkgc3Vic2NyaXB0aW9ucyB0byBzaWRlLXNoZWV0IHRoYXQgbmV2ZXIgZmluaXNoZWQgb3BlbmluZy5cbiAgICBpZiAodGhpcy5fYW5pbWF0aW9uU3RhdGVTdWJzY3JpcHRpb25zKSB7XG4gICAgICB0aGlzLl9hbmltYXRpb25TdGF0ZVN1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2VzIGFsbCBvZiB0aGUgY3VycmVudGx5LW9wZW4gc2lkZS1zaGVldHMuXG4gICAqL1xuICBjbG9zZUFsbCgpOiB2b2lkIHtcbiAgICB0aGlzLl9jbG9zZVNpZGVTaGVldHModGhpcy5vcGVuU2lkZVNoZWV0cyk7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVPdmVybGF5PFQ+KGNvbmZpZzogQ292YWxlbnRTaWRlU2hlZXRDb25maWcpOiBPdmVybGF5UmVmIHtcbiAgICBjb25zdCBvdmVybGF5Q29uZmlnID0gbmV3IE92ZXJsYXlDb25maWcoe1xuICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5fb3ZlcmxheS5wb3NpdGlvbigpLmdsb2JhbCgpLFxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5ibG9jaygpLFxuICAgICAgcGFuZWxDbGFzczogY29uZmlnLnBhbmVsQ2xhc3MsXG4gICAgICBoYXNCYWNrZHJvcDogY29uZmlnLmhhc0JhY2tkcm9wLFxuICAgICAgZGlyZWN0aW9uOiBjb25maWcuZGlyZWN0aW9uLFxuICAgICAgbWluV2lkdGg6IGNvbmZpZy5taW5XaWR0aCxcbiAgICAgIG1pbkhlaWdodDogY29uZmlnLm1pbkhlaWdodCxcbiAgICAgIG1heFdpZHRoOiBjb25maWcubWF4V2lkdGgsXG4gICAgfSk7XG4gICAgY29uc3Qgb3ZlcmxheVJlZiA9IHRoaXMuX292ZXJsYXkuY3JlYXRlKG92ZXJsYXlDb25maWcpO1xuICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSBvdmVybGF5UmVmLmdldENvbmZpZygpXG4gICAgICAucG9zaXRpb25TdHJhdGVneSBhcyBHbG9iYWxQb3NpdGlvblN0cmF0ZWd5O1xuICAgIHBvc2l0aW9uU3RyYXRlZ3kucmlnaHQoJzBweCcpO1xuXG4gICAgcmV0dXJuIG92ZXJsYXlSZWY7XG4gIH1cblxuICAvKipcbiAgICogQXR0YWNoZXMgYSBjb250YWluZXIgdG8gYSBzaWRlLXNoZWV0cydzIGFscmVhZHktY3JlYXRlZCBvdmVybGF5LlxuICAgKiBAcGFyYW0gb3ZlcmxheSBSZWZlcmVuY2UgdG8gdGhlIHNpZGUtc2hlZXQncyB1bmRlcmx5aW5nIG92ZXJsYXkuXG4gICAqIEBwYXJhbSBjb25maWcgVGhlIHNpZGUtc2hlZXQgY29uZmlndXJhdGlvbi5cbiAgICogQHJldHVybnMgQSBwcm9taXNlIHJlc29sdmluZyB0byBhIENvbXBvbmVudFJlZiBmb3IgdGhlIGF0dGFjaGVkIGNvbnRhaW5lci5cbiAgICovXG4gIHByaXZhdGUgX2F0dGFjaFNpZGVTaGVldENvbnRhaW5lcihcbiAgICBvdmVybGF5OiBPdmVybGF5UmVmLFxuICAgIGNvbmZpZzogQ292YWxlbnRTaWRlU2hlZXRDb25maWcsXG4gICk6IEMge1xuICAgIGNvbnN0IHVzZXJJbmplY3RvciA9XG4gICAgICBjb25maWcgJiYgY29uZmlnLnZpZXdDb250YWluZXJSZWYgJiYgY29uZmlnLnZpZXdDb250YWluZXJSZWYuaW5qZWN0b3I7XG4gICAgY29uc3QgaW5qZWN0b3IgPSBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcGFyZW50OiB1c2VySW5qZWN0b3IgfHwgdGhpcy5faW5qZWN0b3IsXG4gICAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IENvdmFsZW50U2lkZVNoZWV0Q29uZmlnLCB1c2VWYWx1ZTogY29uZmlnIH1dLFxuICAgIH0pO1xuXG4gICAgY29uc3QgY29udGFpbmVyUG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChcbiAgICAgIHRoaXMuX3NpZGVTaGVldENvbnRhaW5lclR5cGUsXG4gICAgICBjb25maWcudmlld0NvbnRhaW5lclJlZixcbiAgICAgIGluamVjdG9yLFxuICAgICk7XG4gICAgY29uc3QgY29udGFpbmVyUmVmID0gb3ZlcmxheS5hdHRhY2g8Qz4oY29udGFpbmVyUG9ydGFsKTtcblxuICAgIHJldHVybiBjb250YWluZXJSZWYuaW5zdGFuY2U7XG4gIH1cblxuICAvKipcbiAgICogQXR0YWNoZXMgdGhlIHVzZXItcHJvdmlkZWQgY29tcG9uZW50IHRvIHRoZSBhbHJlYWR5LWNyZWF0ZWQgc2lkZSBzaGVldCBjb250YWluZXIuXG4gICAqIEBwYXJhbSBjb21wb25lbnRPclRlbXBsYXRlUmVmIFRoZSB0eXBlIG9mIGNvbXBvbmVudCBiZWluZyBsb2FkZWQgaW50byB0aGUgc2lkZS1zaGVldCxcbiAgICogICAgIG9yIGEgVGVtcGxhdGVSZWYgdG8gaW5zdGFudGlhdGUgYXMgdGhlIGNvbnRlbnQuXG4gICAqIEBwYXJhbSBkaWFsb2dDb250YWluZXIgUmVmZXJlbmNlIHRvIHRoZSB3cmFwcGluZyBzaWRlLXNoZWV0IGNvbnRhaW5lci5cbiAgICogQHBhcmFtIG92ZXJsYXlSZWYgUmVmZXJlbmNlIHRvIHRoZSBvdmVybGF5IGluIHdoaWNoIHRoZSBzaWRlLXNoZWV0IHJlc2lkZXMuXG4gICAqIEBwYXJhbSBjb25maWcgVGhlIHNpZGUtc2hlZXQgY29uZmlndXJhdGlvbi5cbiAgICogQHJldHVybnMgQSBwcm9taXNlIHJlc29sdmluZyB0byB0aGUgQ292YWxlbnRTaWRlU2hlZXRSZWYgdGhhdCBzaG91bGQgYmUgcmV0dXJuZWQgdG8gdGhlIHVzZXIuXG4gICAqL1xuICBwcml2YXRlIF9hdHRhY2hTaWRlU2hlZXRDb250ZW50PFQsIFI+KFxuICAgIGNvbXBvbmVudE9yVGVtcGxhdGVSZWY6IENvbXBvbmVudFR5cGU8VD4gfCBUZW1wbGF0ZVJlZjxUPixcbiAgICBzaWRlU2hlZXRDb250YWluZXI6IEMsXG4gICAgb3ZlcmxheVJlZjogT3ZlcmxheVJlZixcbiAgICBjb25maWc6IENvdmFsZW50U2lkZVNoZWV0Q29uZmlnLFxuICApOiBDb3ZhbGVudFNpZGVTaGVldFJlZjxULCBSPiB7XG4gICAgLy8gQ3JlYXRlIGEgcmVmZXJlbmNlIHRvIHRoZSBzaWRlLXNoZWV0IHdlJ3JlIGNyZWF0aW5nIGluIG9yZGVyIHRvIGdpdmUgdGhlIHVzZXIgYSBoYW5kbGVcbiAgICAvLyB0byBtb2RpZnkgYW5kIGNsb3NlIGl0LlxuICAgIGNvbnN0IHNpZGVTaGVldFJlZiA9IG5ldyB0aGlzLl9zaWRlU2hlZXRSZWZDb25zdHJ1Y3RvcihcbiAgICAgIG92ZXJsYXlSZWYsXG4gICAgICBjb25maWcsXG4gICAgICBzaWRlU2hlZXRDb250YWluZXIsXG4gICAgICBjb25maWcuaWQsXG4gICAgKTtcblxuICAgIGlmIChjb21wb25lbnRPclRlbXBsYXRlUmVmIGluc3RhbmNlb2YgVGVtcGxhdGVSZWYpIHtcbiAgICAgIHNpZGVTaGVldENvbnRhaW5lci5hdHRhY2hUZW1wbGF0ZVBvcnRhbChcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cbiAgICAgICAgbmV3IFRlbXBsYXRlUG9ydGFsPFQ+KGNvbXBvbmVudE9yVGVtcGxhdGVSZWYsIG51bGwhLCA8YW55PntcbiAgICAgICAgICAkaW1wbGljaXQ6IGNvbmZpZy5kYXRhLFxuICAgICAgICAgIHNpZGVTaGVldFJlZixcbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBpbmplY3RvciA9IHRoaXMuX2NyZWF0ZUluamVjdG9yPFQ+KFxuICAgICAgICBjb25maWcsXG4gICAgICAgIHNpZGVTaGVldFJlZixcbiAgICAgICAgc2lkZVNoZWV0Q29udGFpbmVyLFxuICAgICAgKTtcbiAgICAgIGNvbnN0IGNvbnRlbnRSZWYgPSBzaWRlU2hlZXRDb250YWluZXIuYXR0YWNoPFQ+KFxuICAgICAgICBuZXcgQ29tcG9uZW50UG9ydGFsKFxuICAgICAgICAgIGNvbXBvbmVudE9yVGVtcGxhdGVSZWYsXG4gICAgICAgICAgY29uZmlnLnZpZXdDb250YWluZXJSZWYsXG4gICAgICAgICAgaW5qZWN0b3IsXG4gICAgICAgICksXG4gICAgICApO1xuICAgICAgc2lkZVNoZWV0UmVmLmNvbXBvbmVudEluc3RhbmNlID0gY29udGVudFJlZi5pbnN0YW5jZTtcbiAgICB9XG5cbiAgICBzaWRlU2hlZXRSZWYudXBkYXRlU2l6ZShjb25maWcud2lkdGgsIGNvbmZpZy5oZWlnaHQpO1xuXG4gICAgcmV0dXJuIHNpZGVTaGVldFJlZjtcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZUluamVjdG9yPFQ+KFxuICAgIGNvbmZpZzogQ292YWxlbnRTaWRlU2hlZXRDb25maWcsXG4gICAgc2lkZVNoZWV0UmVmOiBDb3ZhbGVudFNpZGVTaGVldFJlZjxUPixcbiAgICBzaWRlU2hlZXRDb250YWluZXI6IEMsXG4gICk6IEluamVjdG9yIHtcbiAgICBjb25zdCB1c2VySW5qZWN0b3IgPVxuICAgICAgY29uZmlnICYmIGNvbmZpZy52aWV3Q29udGFpbmVyUmVmICYmIGNvbmZpZy52aWV3Q29udGFpbmVyUmVmLmluamVjdG9yO1xuXG4gICAgLy8gVGhlIHNpZGUtc2hlZXQgY29udGFpbmVyIHNob3VsZCBiZSBwcm92aWRlZCBhcyB0aGUgc2lkZS1zaGVldCBjb250YWluZXIgYW5kIHRoZSBzaWRlLXNoZWV0J3NcbiAgICAvLyBjb250ZW50IGFyZSBjcmVhdGVkIG91dCBvZiB0aGUgc2FtZSBgVmlld0NvbnRhaW5lclJlZmAgYW5kIGFzIHN1Y2gsIGFyZSBzaWJsaW5nc1xuICAgIC8vIGZvciBpbmplY3RvciBwdXJwb3Nlcy4gVG8gYWxsb3cgdGhlIGhpZXJhcmNoeSB0aGF0IGlzIGV4cGVjdGVkLCB0aGUgc2lkZS1zaGVldFxuICAgIC8vIGNvbnRhaW5lciBpcyBleHBsaWNpdGx5IHByb3ZpZGVkIGluIHRoZSBpbmplY3Rvci5cbiAgICBjb25zdCBwcm92aWRlcnM6IFN0YXRpY1Byb3ZpZGVyW10gPSBbXG4gICAgICB7IHByb3ZpZGU6IHRoaXMuX3NpZGVTaGVldENvbnRhaW5lclR5cGUsIHVzZVZhbHVlOiBzaWRlU2hlZXRDb250YWluZXIgfSxcbiAgICAgIHsgcHJvdmlkZTogdGhpcy5fc2lkZVNoZWV0RGF0YVRva2VuLCB1c2VWYWx1ZTogY29uZmlnLmRhdGEgfSxcbiAgICAgIHsgcHJvdmlkZTogdGhpcy5fc2lkZVNoZWV0UmVmQ29uc3RydWN0b3IsIHVzZVZhbHVlOiBzaWRlU2hlZXRSZWYgfSxcbiAgICBdO1xuXG4gICAgaWYgKFxuICAgICAgY29uZmlnLmRpcmVjdGlvbiAmJlxuICAgICAgKCF1c2VySW5qZWN0b3IgfHxcbiAgICAgICAgIXVzZXJJbmplY3Rvci5nZXQ8RGlyZWN0aW9uYWxpdHkgfCBudWxsPihEaXJlY3Rpb25hbGl0eSwgbnVsbCwge1xuICAgICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICB9KSlcbiAgICApIHtcbiAgICAgIHByb3ZpZGVycy5wdXNoKHtcbiAgICAgICAgcHJvdmlkZTogRGlyZWN0aW9uYWxpdHksXG4gICAgICAgIHVzZVZhbHVlOiB7IHZhbHVlOiBjb25maWcuZGlyZWN0aW9uLCBjaGFuZ2U6IG9mKCkgfSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgcGFyZW50OiB1c2VySW5qZWN0b3IgfHwgdGhpcy5faW5qZWN0b3IsXG4gICAgICBwcm92aWRlcnMsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBhIHNpZGUgc2hlZXQgZnJvbSB0aGUgYXJyYXkgb2Ygb3BlbiBzaWRlIHNoZWV0cy5cbiAgICogQHBhcmFtIHNpZGVTaGVldFJlZiBTaWRlIFNoZWV0IHRvIGJlIHJlbW92ZWQuXG4gICAqL1xuICBwcml2YXRlIF9yZW1vdmVPcGVuU2lkZVNoZWV0KHNpZGVTaGVldFJlZjogQ292YWxlbnRTaWRlU2hlZXRSZWY8dW5rbm93bj4pIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMub3BlblNpZGVTaGVldHMuaW5kZXhPZihzaWRlU2hlZXRSZWYpO1xuXG4gICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgIHRoaXMub3BlblNpZGVTaGVldHMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICB9XG4gIH1cblxuICAvKiogQ2xvc2VzIGFsbCBvZiB0aGUgc2lkZS1zaGVldCBpbiBhbiBhcnJheS4gKi9cbiAgcHJpdmF0ZSBfY2xvc2VTaWRlU2hlZXRzKHNpZGVTaGVldHM6IENvdmFsZW50U2lkZVNoZWV0UmVmPGFueT5bXSkge1xuICAgIGxldCBpID0gc2lkZVNoZWV0cy5sZW5ndGg7XG5cbiAgICB3aGlsZSAoaS0tKSB7XG4gICAgICBzaWRlU2hlZXRzW2ldLmNsb3NlKCk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogU2VydmljZSB0byBvcGVuIENvdmFsZW50IERlc2lnbiBzaWRlLXNoZWV0LlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ292YWxlbnRTaWRlU2hlZXQgZXh0ZW5kcyBfQ292YWxlbnRTaWRlU2hlZXRCYXNlPENvdmFsZW50U2lkZVNoZWV0Q29udGFpbmVyQ29tcG9uZW50PiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIEBPcHRpb25hbCgpXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RFRkFVTFRfT1BUSU9OUylcbiAgICBkZWZhdWx0T3B0aW9uczogQ292YWxlbnRTaWRlU2hlZXRDb25maWcsXG4gICAgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcGFyZW50U2lkZVNoZWV0OiBDb3ZhbGVudFNpZGVTaGVldCxcbiAgKSB7XG4gICAgc3VwZXIoXG4gICAgICBvdmVybGF5LFxuICAgICAgaW5qZWN0b3IsXG4gICAgICBkZWZhdWx0T3B0aW9ucyxcbiAgICAgIHBhcmVudFNpZGVTaGVldCxcbiAgICAgIENvdmFsZW50U2lkZVNoZWV0UmVmLFxuICAgICAgQ292YWxlbnRTaWRlU2hlZXRDb250YWluZXJDb21wb25lbnQsXG4gICAgICBNQVRfRElBTE9HX0RBVEEsXG4gICAgKTtcbiAgfVxufVxuIl19","/* tslint:disable */\nimport { Directive, Input, ElementRef, HostBinding, HostListener, inject, } from '@angular/core';\nimport { CovalentSideSheet } from './side-sheet';\nimport { _closeSideSheetVia, CovalentSideSheetRef } from './side-sheet-ref';\nimport * as i0 from \"@angular/core\";\n/** Counter used to generate unique IDs for dialog elements. */\nlet dialogElementUid = 0;\n/**\n * Button that will close the current dialog.\n */\nexport class CovalentSideSheetCloseDirective {\n dialogRef = inject(CovalentSideSheetRef, {\n optional: true,\n });\n _elementRef = inject(ElementRef);\n _dialog = inject(CovalentSideSheet);\n /** Screenreader label for the button. */\n ariaLabel;\n /** Default to \"button\" to prevents accidental form submits. */\n type = 'button';\n /** Dialog close input. */\n dialogResult;\n _CovalentSideSheetClose;\n onClick($event) {\n this._onButtonClick($event);\n }\n ngOnInit() {\n if (!this.dialogRef) {\n // When this directive is included in a dialog via TemplateRef (rather than being\n // in a Component), the DialogRef isn't available via injection because embedded\n // views cannot be given a custom injector. Instead, we look up the DialogRef by\n // ID. This must occur in `onInit`, as the ID binding for the dialog container won't\n // be resolved at constructor time.\n this.dialogRef = getClosestDialog(this._elementRef, this._dialog.openSideSheets);\n }\n }\n ngOnChanges(changes) {\n const proxiedChange = changes['_CovalentSideSheetClose'] ||\n changes['_CovalentSideSheetCloseResult'];\n if (proxiedChange) {\n this.dialogResult = proxiedChange.currentValue;\n }\n }\n _onButtonClick(event) {\n // Determinate the focus origin using the click event, because using the FocusMonitor will\n // result in incorrect origins. Most of the time, close buttons will be auto focused in the\n // dialog, and therefore clicking the button won't result in a focus change. This means that\n // the FocusMonitor won't detect any origin change, and will always output `program`.\n if (!this.dialogRef) {\n return;\n }\n _closeSideSheetVia(this.dialogRef, event.screenX === 0 && event.screenY === 0 ? 'keyboard' : 'mouse', this.dialogResult);\n }\n static ɵfac = function CovalentSideSheetCloseDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheetCloseDirective)(); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: CovalentSideSheetCloseDirective, selectors: [[\"\", \"td-side-sheet-close\", \"\"], [\"\", \"CovalentSideSheetClose\", \"\"]], hostVars: 2, hostBindings: function CovalentSideSheetCloseDirective_HostBindings(rf, ctx) { if (rf & 1) {\n i0.ɵɵlistener(\"click\", function CovalentSideSheetCloseDirective_click_HostBindingHandler($event) { return ctx.onClick($event); });\n } if (rf & 2) {\n i0.ɵɵattribute(\"arial-label\", ctx.ariaLabel)(\"type\", ctx.type);\n } }, inputs: { ariaLabel: [0, \"aria-label\", \"ariaLabel\"], type: \"type\", dialogResult: [0, \"td-side-sheet-close\", \"dialogResult\"], _CovalentSideSheetClose: [0, \"CovalentSideSheetClose\", \"_CovalentSideSheetClose\"] }, exportAs: [\"CovalentSideSheetClose\"], features: [i0.ɵɵNgOnChangesFeature] });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetCloseDirective, [{\n type: Directive,\n args: [{\n selector: '[td-side-sheet-close], [CovalentSideSheetClose]',\n exportAs: 'CovalentSideSheetClose',\n }]\n }], null, { ariaLabel: [{\n type: HostBinding,\n args: ['attr.arial-label']\n }, {\n type: Input,\n args: ['aria-label']\n }], type: [{\n type: HostBinding,\n args: ['attr.type']\n }, {\n type: Input\n }], dialogResult: [{\n type: Input,\n args: ['td-side-sheet-close']\n }], _CovalentSideSheetClose: [{\n type: Input,\n args: ['CovalentSideSheetClose']\n }], onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] }); })();\n/**\n * Title of a side sheet element. Stays fixed to the top of the side sheet when scrolling.\n */\nexport class CovalentSideSheetTitleDirective {\n _dialogRef = inject(CovalentSideSheetRef, {\n optional: true,\n });\n _elementRef = inject(ElementRef);\n _dialog = inject(CovalentSideSheet);\n /** Unique id for the dialog title. If none is supplied, it will be auto-generated. */\n id = `td-side-sheet-title-${dialogElementUid++}`;\n tdSideSheetTitle = true;\n idAttr = this.id;\n ngOnInit() {\n if (this._dialogRef) {\n Promise.resolve().then(() => {\n const container = this._dialogRef?._containerInstance;\n if (container && !container._ariaLabelledByQueue.includes(this.id)) {\n container._ariaLabelledByQueue.push(this.id);\n }\n });\n }\n else {\n this._dialogRef = getClosestDialog(this._elementRef, this._dialog.openSideSheets);\n }\n }\n static ɵfac = function CovalentSideSheetTitleDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheetTitleDirective)(); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: CovalentSideSheetTitleDirective, selectors: [[\"\", \"td-side-sheet-title\", \"\"], [\"\", \"CovalentSideSheetTitle\", \"\"]], hostVars: 3, hostBindings: function CovalentSideSheetTitleDirective_HostBindings(rf, ctx) { if (rf & 2) {\n i0.ɵɵattribute(\"id\", ctx.idAttr);\n i0.ɵɵclassProp(\"td-side-sheet-title\", ctx.tdSideSheetTitle);\n } }, inputs: { id: \"id\" }, exportAs: [\"CovalentSideSheetTitle\"] });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetTitleDirective, [{\n type: Directive,\n args: [{\n selector: '[td-side-sheet-title], [CovalentSideSheetTitle]',\n exportAs: 'CovalentSideSheetTitle',\n }]\n }], null, { id: [{\n type: Input\n }], tdSideSheetTitle: [{\n type: HostBinding,\n args: ['class.td-side-sheet-title']\n }], idAttr: [{\n type: HostBinding,\n args: ['attr.id']\n }] }); })();\n/**\n * Scrollable content container of a dialog.\n */\nexport class CovalentSideSheetContentDirective {\n tdSideSheetContent = true;\n static ɵfac = function CovalentSideSheetContentDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheetContentDirective)(); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: CovalentSideSheetContentDirective, selectors: [[\"\", \"td-side-sheet-content\", \"\"], [\"td-side-sheet-content\"], [\"\", \"CovalentSideSheetContent\", \"\"]], hostVars: 2, hostBindings: function CovalentSideSheetContentDirective_HostBindings(rf, ctx) { if (rf & 2) {\n i0.ɵɵclassProp(\"td-side-sheet-content\", ctx.tdSideSheetContent);\n } } });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetContentDirective, [{\n type: Directive,\n args: [{\n selector: `[td-side-sheet-content], td-side-sheet-content, [CovalentSideSheetContent]`,\n }]\n }], null, { tdSideSheetContent: [{\n type: HostBinding,\n args: ['class.td-side-sheet-content']\n }] }); })();\n/**\n * Container for the bottom action buttons in a dialog.\n * Stays fixed to the bottom when scrolling.\n */\nexport class CovalentSideSheetActionsDirective {\n tdSideSheetActions = true;\n static ɵfac = function CovalentSideSheetActionsDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheetActionsDirective)(); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: CovalentSideSheetActionsDirective, selectors: [[\"\", \"td-side-sheet-actions\", \"\"], [\"td-side-sheet-actions\"], [\"\", \"CovalentSideSheetActions\", \"\"]], hostVars: 2, hostBindings: function CovalentSideSheetActionsDirective_HostBindings(rf, ctx) { if (rf & 2) {\n i0.ɵɵclassProp(\"td-side-sheet-actions\", ctx.tdSideSheetActions);\n } } });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetActionsDirective, [{\n type: Directive,\n args: [{\n selector: `[td-side-sheet-actions], td-side-sheet-actions, [CovalentSideSheetActions]`,\n }]\n }], null, { tdSideSheetActions: [{\n type: HostBinding,\n args: ['class.td-side-sheet-actions']\n }] }); })();\n/**\n * Container for the wrapper part of the dialog\n */\nexport class CovalentSideSheetWrapperDirective {\n tdSideSheetWrapper = true;\n static ɵfac = function CovalentSideSheetWrapperDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheetWrapperDirective)(); };\n static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: CovalentSideSheetWrapperDirective, selectors: [[\"\", \"td-side-sheet-wrapper\", \"\"], [\"td-side-sheet-wrapper\"], [\"\", \"CovalentSideSheetWrapper\", \"\"]], hostVars: 2, hostBindings: function CovalentSideSheetWrapperDirective_HostBindings(rf, ctx) { if (rf & 2) {\n i0.ɵɵclassProp(\"td-side-sheet-wrapper\", ctx.tdSideSheetWrapper);\n } } });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetWrapperDirective, [{\n type: Directive,\n args: [{\n selector: `[td-side-sheet-wrapper], td-side-sheet-wrapper, [CovalentSideSheetWrapper]`,\n }]\n }], null, { tdSideSheetWrapper: [{\n type: HostBinding,\n args: ['class.td-side-sheet-wrapper']\n }] }); })();\n/**\n * Finds the closest CovalentSideSheetRef to an element by looking at the DOM.\n * @param element Element relative to which to look for a dialog.\n * @param openDialogs References to the currently-open dialogs.\n */\nfunction getClosestDialog(element, openDialogs) {\n let parent = element.nativeElement.parentElement;\n while (parent && !parent.classList.contains('td-side-sheet-container')) {\n parent = parent.parentElement;\n }\n return parent\n ? (openDialogs.find((dialog) => dialog.id === parent?.id) ?? openDialogs[0])\n : openDialogs[0];\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC5jb250ZW50LWRpcmVjdGl2ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC5jb250ZW50LWRpcmVjdGl2ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0JBQW9CO0FBQ3BCLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUlMLFVBQVUsRUFDVixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBRTVFLCtEQUErRDtBQUMvRCxJQUFJLGdCQUFnQixHQUFHLENBQUMsQ0FBQztBQUV6Qjs7R0FFRztBQUtILE1BQU0sT0FBTywrQkFBK0I7SUFDMUMsU0FBUyxHQUFHLE1BQU0sQ0FBNEIsb0JBQW9CLEVBQUU7UUFDbEUsUUFBUSxFQUFFLElBQUk7S0FDZixDQUFDLENBQUM7SUFDSyxXQUFXLEdBQUcsTUFBTSxDQUEwQixVQUFVLENBQUMsQ0FBQztJQUMxRCxPQUFPLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFFNUMseUNBQXlDO0lBR3pDLFNBQVMsQ0FBVTtJQUVuQiwrREFBK0Q7SUFHL0QsSUFBSSxHQUFrQyxRQUFRLENBQUM7SUFFL0MsMEJBQTBCO0lBQ0ksWUFBWSxDQUFNO0lBRWYsdUJBQXVCLENBQU07SUFFM0IsT0FBTyxDQUFDLE1BQWtCO1FBQzNELElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3BCLGlGQUFpRjtZQUNqRixnRkFBZ0Y7WUFDaEYsZ0ZB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QUFJLE1BQU0sR0FBdUIsT0FBTyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUM7SUFFckUsT0FBTyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFLENBQUM7UUFDdkUsTUFBTSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUM7SUFDaEMsQ0FBQztJQUVELE9BQU8sTUFBTTtRQUNYLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssTUFBTSxFQUFFLEVBQUUsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM1RSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3JCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiB0c2xpbnQ6ZGlzYWJsZSAqL1xuaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIGluamVjdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb3ZhbGVudFNpZGVTaGVldCB9IGZyb20gJy4vc2lkZS1zaGVldCc7XG5pbXBvcnQgeyBfY2xvc2VTaWRlU2hlZXRWaWEsIENvdmFsZW50U2lkZVNoZWV0UmVmIH0gZnJvbSAnLi9zaWRlLXNoZWV0LXJlZic7XG5cbi8qKiBDb3VudGVyIHVzZWQgdG8gZ2VuZXJhdGUgdW5pcXVlIElEcyBmb3IgZGlhbG9nIGVsZW1lbnRzLiAqL1xubGV0IGRpYWxvZ0VsZW1lbnRVaWQgPSAwO1xuXG4vKipcbiAqIEJ1dHRvbiB0aGF0IHdpbGwgY2xvc2UgdGhlIGN1cnJlbnQgZGlhbG9nLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbdGQtc2lkZS1zaGVldC1jbG9zZV0sIFtDb3ZhbGVudFNpZGVTaGVldENsb3NlXScsXG4gIGV4cG9ydEFzOiAnQ292YWxlbnRTaWRlU2hlZXRDbG9zZScsXG59KVxuZXhwb3J0IGNsYXNzIENvdmFsZW50U2lkZVNoZWV0Q2xvc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIGRpYWxvZ1JlZiA9IGluamVjdDxDb3ZhbGVudFNpZGVTaGVldFJlZjxhbnk+PihDb3ZhbGVudFNpZGVTaGVldFJlZiwge1xuICAgIG9wdGlvbmFsOiB0cnVlLFxuICB9KTtcbiAgcHJpdmF0ZSBfZWxlbWVudFJlZiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oRWxlbWVudFJlZik7XG4gIHByaXZhdGUgX2RpYWxvZyA9IGluamVjdChDb3ZhbGVudFNpZGVTaGVldCk7XG5cbiAgLyoqIFNjcmVlbnJlYWRlciBsYWJlbCBmb3IgdGhlIGJ1dHRvbi4gKi9cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWFsLWxhYmVsJylcbiAgQElucHV0KCdhcmlhLWxhYmVsJylcbiAgYXJpYUxhYmVsPzogc3RyaW5nO1xuXG4gIC8qKiBEZWZhdWx0IHRvIFwiYnV0dG9uXCIgdG8gcHJldmVudHMgYWNjaWRlbnRhbCBmb3JtIHN1Ym1pdHMuICovXG4gIEBIb3N0QmluZGluZygnYXR0ci50eXBlJylcbiAgQElucHV0KClcbiAgdHlwZTogJ3N1Ym1pdCcgfCAnYnV0dG9uJyB8ICdyZXNldCcgPSAnYnV0dG9uJztcblxuICAvKiogRGlhbG9nIGNsb3NlIGlucHV0LiAqL1xuICBASW5wdXQoJ3RkLXNpZGUtc2hlZXQtY2xvc2UnKSBkaWFsb2dSZXN1bHQ6IGFueTtcblxuICBASW5wdXQoJ0NvdmFsZW50U2lkZVNoZWV0Q2xvc2UnKSBfQ292YWxlbnRTaWRlU2hlZXRDbG9zZTogYW55O1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSkgb25DbGljaygkZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICB0aGlzLl9vbkJ1dHRvbkNsaWNrKCRldmVudCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGlhbG9nUmVmKSB7XG4gICAgICAvLyBXaGVuIHRoaXMgZGlyZWN0aXZlIGlzIGluY2x1ZGVkIGluIGEgZGlhbG9nIHZpYSBUZW1wbGF0ZVJlZiAocmF0aGVyIHRoYW4gYmVpbmdcbiAgICAgIC8vIGluIGEgQ29tcG9uZW50KSwgdGhlIERpYWxvZ1JlZiBpc24ndCBhdmFpbGFibGUgdmlhIGluamVjdGlvbiBiZWNhdXNlIGVtYmVkZGVkXG4gICAgICAvLyB2aWV3cyBjYW5ub3QgYmUgZ2l2ZW4gYSBjdXN0b20gaW5qZWN0b3IuIEluc3RlYWQsIHdlIGxvb2sgdXAgdGhlIERpYWxvZ1JlZiBieVxuICAgICAgLy8gSUQuIFRoaXMgbXVzdCBvY2N1ciBpbiBgb25Jbml0YCwgYXMgdGhlIElEIGJpbmRpbmcgZm9yIHRoZSBkaWFsb2cgY29udGFpbmVyIHdvbid0XG4gICAgICAvLyBiZSByZXNvbHZlZCBhdCBjb25zdHJ1Y3RvciB0aW1lLlxuICAgICAgdGhpcy5kaWFsb2dSZWYgPSBnZXRDbG9zZXN0RGlhbG9nKFxuICAgICAgICB0aGlzLl9lbGVtZW50UmVmLFxuICAgICAgICB0aGlzLl9kaWFsb2cub3BlblNpZGVTaGVldHMsXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBjb25zdCBwcm94aWVkQ2hhbmdlID1cbiAgICAgIGNoYW5nZXNbJ19Db3ZhbGVudFNpZGVTaGVldENsb3NlJ10gfHxcbiAgICAgIGNoYW5nZXNbJ19Db3ZhbGVudFNpZGVTaGVldENsb3NlUmVzdWx0J107XG5cbiAgICBpZiAocHJveGllZENoYW5nZSkge1xuICAgICAgdGhpcy5kaWFsb2dSZXN1bHQgPSBwcm94aWVkQ2hhbmdlLmN1cnJlbnRWYWx1ZTtcbiAgICB9XG4gIH1cblxuICBfb25CdXR0b25DbGljayhldmVudDogTW91c2VFdmVudCkge1xuICAgIC8vIERldGVybWluYXRlIHRoZSBmb2N1cyBvcmlnaW4gdXNpbmcgdGhlIGNsaWNrIGV2ZW50LCBiZWNhdXNlIHVzaW5nIHRoZSBGb2N1c01vbml0b3Igd2lsbFxuICAgIC8vIHJlc3VsdCBpbiBpbmNvcnJlY3Qgb3JpZ2lucy4gTW9zdCBvZiB0aGUgdGltZSwgY2xvc2UgYnV0dG9ucyB3aWxsIGJlIGF1dG8gZm9jdXNlZCBpbiB0aGVcbiAgICAvLyBkaWFsb2csIGFuZCB0aGVyZWZvcmUgY2xpY2tpbmcgdGhlIGJ1dHRvbiB3b24ndCByZXN1bHQgaW4gYSBmb2N1cyBjaGFuZ2UuIFRoaXMgbWVhbnMgdGhhdFxuICAgIC8vIHRoZSBGb2N1c01vbml0b3Igd29uJ3QgZGV0ZWN0IGFueSBvcmlnaW4gY2hhbmdlLCBhbmQgd2lsbCBhbHdheXMgb3V0cHV0IGBwcm9ncmFtYC5cblxuICAgIGlmICghdGhpcy5kaWFsb2dSZWYpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBfY2xvc2VTaWRlU2hlZXRWaWEoXG4gICAgICB0aGlzLmRpYWxvZ1JlZixcbiAgICAgIGV2ZW50LnNjcmVlblggPT09IDAgJiYgZXZlbnQuc2NyZWVuWSA9PT0gMCA/ICdrZXlib2FyZCcgOiAnbW91c2UnLFxuICAgICAgdGhpcy5kaWFsb2dSZXN1bHQsXG4gICAgKTtcbiAgfVxufVxuXG4vKipcbiAqIFRpdGxlIG9mIGEgc2lkZSBzaGVldCBlbGVtZW50LiBTdGF5cyBmaXhlZCB0byB0aGUgdG9wIG9mIHRoZSBzaWRlIHNoZWV0IHdoZW4gc2Nyb2xsaW5nLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbdGQtc2lkZS1zaGVldC10aXRsZV0sIFtDb3ZhbGVudFNpZGVTaGVldFRpdGxlXScsXG4gIGV4cG9ydEFzOiAnQ292YWxlbnRTaWRlU2hlZXRUaXRsZScsXG59KVxuZXhwb3J0IGNsYXNzIENvdmFsZW50U2lkZVNoZWV0VGl0bGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQge1xuICBwcml2YXRlIF9kaWFsb2dSZWYgPSBpbmplY3Q8Q292YWxlbnRTaWRlU2hlZXRSZWY8YW55Pj4oQ292YWxlbnRTaWRlU2hlZXRSZWYsIHtcbiAgICBvcHRpb25hbDogdHJ1ZSxcbiAgfSk7XG4gIHByaXZhdGUgX2VsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIF9kaWFsb2cgPSBpbmplY3QoQ292YWxlbnRTaWRlU2hlZXQpO1xuXG4gIC8qKiBVbmlxdWUgaWQgZm9yIHRoZSBkaWFsb2cgdGl0bGUuIElmIG5vbmUgaXMgc3VwcGxpZWQsIGl0IHdpbGwgYmUgYXV0by1nZW5lcmF0ZWQuICovXG4gIEBJbnB1dCgpIGlkID0gYHRkLXNpZGUtc2hlZXQtdGl0bGUtJHtkaWFsb2dFbGVtZW50VWlkKyt9YDtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRkLXNpZGUtc2hlZXQtdGl0bGUnKSB0ZFNpZGVTaGVldFRpdGxlID0gdHJ1ZTtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuaWQnKSBpZEF0dHIgPSB0aGlzLmlkO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9kaWFsb2dSZWYpIHtcbiAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLl9kaWFsb2dSZWY/Ll9jb250YWluZXJJbnN0YW5jZTtcblxuICAgICAgICBpZiAoY29udGFpbmVyICYmICFjb250YWluZXIuX2FyaWFMYWJlbGxlZEJ5UXVldWUuaW5jbHVkZXModGhpcy5pZCkpIHtcbiAgICAgICAgICBjb250YWluZXIuX2FyaWFMYWJlbGxlZEJ5UXVldWUucHVzaCh0aGlzLmlkKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2RpYWxvZ1JlZiA9IGdldENsb3Nlc3REaWFsb2coXG4gICAgICAgIHRoaXMuX2VsZW1lbnRSZWYsXG4gICAgICAgIHRoaXMuX2RpYWxvZy5vcGVuU2lkZVNoZWV0cyxcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogU2Nyb2xsYWJsZSBjb250ZW50IGNvbnRhaW5lciBvZiBhIGRpYWxvZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiBgW3RkLXNpZGUtc2hlZXQtY29udGVudF0sIHRkLXNpZGUtc2hlZXQtY29udGVudCwgW0NvdmFsZW50U2lkZVNoZWV0Q29udGVudF1gLFxufSlcbmV4cG9ydCBjbGFzcyBDb3ZhbGVudFNpZGVTaGVldENvbnRlbnREaXJlY3RpdmUge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRkLXNpZGUtc2hlZXQtY29udGVudCcpIHRkU2lkZVNoZWV0Q29udGVudCA9IHRydWU7XG59XG5cbi8qKlxuICogQ29udGFpbmVyIGZvciB0aGUgYm90dG9tIGFjdGlvbiBidXR0b25zIGluIGEgZGlhbG9nLlxuICogU3RheXMgZml4ZWQgdG8gdGhlIGJvdHRvbSB3aGVuIHNjcm9sbGluZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiBgW3RkLXNpZGUtc2hlZXQtYWN0aW9uc10sIHRkLXNpZGUtc2hlZXQtYWN0aW9ucywgW0NvdmFsZW50U2lkZVNoZWV0QWN0aW9uc11gLFxufSlcbmV4cG9ydCBjbGFzcyBDb3ZhbGVudFNpZGVTaGVldEFjdGlvbnNEaXJlY3RpdmUge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRkLXNpZGUtc2hlZXQtYWN0aW9ucycpIHRkU2lkZVNoZWV0QWN0aW9ucyA9IHRydWU7XG59XG5cbi8qKlxuICogQ29udGFpbmVyIGZvciB0aGUgd3JhcHBlciBwYXJ0IG9mIHRoZSBkaWFsb2dcbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiBgW3RkLXNpZGUtc2hlZXQtd3JhcHBlcl0sIHRkLXNpZGUtc2hlZXQtd3JhcHBlciwgW0NvdmFsZW50U2lkZVNoZWV0V3JhcHBlcl1gLFxufSlcbmV4cG9ydCBjbGFzcyBDb3ZhbGVudFNpZGVTaGVldFdyYXBwZXJEaXJlY3RpdmUge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRkLXNpZGUtc2hlZXQtd3JhcHBlcicpIHRkU2lkZVNoZWV0V3JhcHBlciA9IHRydWU7XG59XG5cbi8qKlxuICogRmluZHMgdGhlIGNsb3Nlc3QgQ292YWxlbnRTaWRlU2hlZXRSZWYgdG8gYW4gZWxlbWVudCBieSBsb29raW5nIGF0IHRoZSBET00uXG4gKiBAcGFyYW0gZWxlbWVudCBFbGVtZW50IHJlbGF0aXZlIHRvIHdoaWNoIHRvIGxvb2sgZm9yIGEgZGlhbG9nLlxuICogQHBhcmFtIG9wZW5EaWFsb2dzIFJlZmVyZW5jZXMgdG8gdGhlIGN1cnJlbnRseS1vcGVuIGRpYWxvZ3MuXG4gKi9cbmZ1bmN0aW9uIGdldENsb3Nlc3REaWFsb2coXG4gIGVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICBvcGVuRGlhbG9nczogQ292YWxlbnRTaWRlU2hlZXRSZWY8YW55PltdLFxuKTogQ292YWxlbnRTaWRlU2hlZXRSZWY8YW55PiB7XG4gIGxldCBwYXJlbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IGVsZW1lbnQubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50O1xuXG4gIHdoaWxlIChwYXJlbnQgJiYgIXBhcmVudC5jbGFzc0xpc3QuY29udGFpbnMoJ3RkLXNpZGUtc2hlZXQtY29udGFpbmVyJykpIHtcbiAgICBwYXJlbnQgPSBwYXJlbnQucGFyZW50RWxlbWVudDtcbiAgfVxuXG4gIHJldHVybiBwYXJlbnRcbiAgICA/IChvcGVuRGlhbG9ncy5maW5kKChkaWFsb2cpID0+IGRpYWxvZy5pZCA9PT0gcGFyZW50Py5pZCkgPz8gb3BlbkRpYWxvZ3NbMF0pXG4gICAgOiBvcGVuRGlhbG9nc1swXTtcbn1cbiJdfQ==","import { NgModule } from '@angular/core';\nimport { CovalentSideSheet } from './side-sheet';\nimport { CovalentSideSheetContainerComponent } from './side-sheet-container';\nimport { CovalentSideSheetActionsDirective, CovalentSideSheetCloseDirective, CovalentSideSheetContentDirective, CovalentSideSheetTitleDirective, CovalentSideSheetWrapperDirective, } from './side-sheet.content-directives';\nimport * as i0 from \"@angular/core\";\n/**\n * @deprecated This module is deprecated and will be removed in future versions.\n * Please migrate to using standalone components as soon as possible.\n */\nexport class CovalentSideSheetModule {\n static ɵfac = function CovalentSideSheetModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CovalentSideSheetModule)(); };\n static ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: CovalentSideSheetModule });\n static ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ providers: [CovalentSideSheet] });\n}\n(() => { (typeof ngDevMode === \"undefined\" || ngDevMode) && i0.ɵsetClassMetadata(CovalentSideSheetModule, [{\n type: NgModule,\n args: [{\n imports: [\n CovalentSideSheetContainerComponent,\n CovalentSideSheetActionsDirective,\n CovalentSideSheetCloseDirective,\n CovalentSideSheetContentDirective,\n CovalentSideSheetTitleDirective,\n CovalentSideSheetWrapperDirective,\n ],\n exports: [\n CovalentSideSheetActionsDirective,\n CovalentSideSheetCloseDirective,\n CovalentSideSheetContentDirective,\n CovalentSideSheetTitleDirective,\n CovalentSideSheetWrapperDirective,\n ],\n providers: [CovalentSideSheet],\n }]\n }], null, null); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && i0.ɵɵsetNgModuleScope(CovalentSideSheetModule, { imports: [CovalentSideSheetContainerComponent,\n CovalentSideSheetActionsDirective,\n CovalentSideSheetCloseDirective,\n CovalentSideSheetContentDirective,\n CovalentSideSheetTitleDirective,\n CovalentSideSheetWrapperDirective], exports: [CovalentSideSheetActionsDirective,\n CovalentSideSheetCloseDirective,\n CovalentSideSheetContentDirective,\n CovalentSideSheetTitleDirective,\n CovalentSideSheetWrapperDirective] }); })();\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUt6QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDakQsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0UsT0FBTyxFQUNMLGlDQUFpQyxFQUNqQywrQkFBK0IsRUFDL0IsaUNBQWlDLEVBQ2pDLCtCQUErQixFQUMvQixpQ0FBaUMsR0FDbEMsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFFekM7OztHQUdHO0FBbUJILE1BQU0sT0FBTyx1QkFBdUI7aUhBQXZCLHVCQUF1Qjs0REFBdkIsdUJBQXVCO2lFQUZ2QixDQUFDLGlCQUFpQixDQUFDOztpRkFFbkIsdUJBQXVCO2NBbEJuQyxRQUFRO2VBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLG1DQUFtQztvQkFDbkMsaUNBQWlDO29CQUNqQywrQkFBK0I7b0JBQy9CLGlDQUFpQztvQkFDakMsK0JBQStCO29CQUMvQixpQ0FBaUM7aUJBQ2xDO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxpQ0FBaUM7b0JBQ2pDLCtCQUErQjtvQkFDL0IsaUNBQWlDO29CQUNqQywrQkFBK0I7b0JBQy9CLGlDQUFpQztpQkFDbEM7Z0JBQ0QsU0FBUyxFQUFFLENBQUMsaUJBQWlCLENBQUM7YUFDL0I7O3dGQUNZLHVCQUF1QixjQWhCaEMsbUNBQW1DO1FBQ25DLGlDQUFpQztRQUNqQywrQkFBK0I7UUFDL0IsaUNBQWlDO1FBQ2pDLCtCQUErQjtRQUMvQixpQ0FBaUMsYUFHakMsaUNBQWlDO1FBQ2pDLCtCQUErQjtRQUMvQixpQ0FBaUM7UUFDakMsK0JBQStCO1FBQy9CLGlDQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQb3J0YWxNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IE1hdENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcblxuaW1wb3J0IHsgQ292YWxlbnRTaWRlU2hlZXQgfSBmcm9tICcuL3NpZGUtc2hlZXQnO1xuaW1wb3J0IHsgQ292YWxlbnRTaWRlU2hlZXRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3NpZGUtc2hlZXQtY29udGFpbmVyJztcbmltcG9ydCB7XG4gIENvdmFsZW50U2lkZVNoZWV0QWN0aW9uc0RpcmVjdGl2ZSxcbiAgQ292YWxlbnRTaWRlU2hlZXRDbG9zZURpcmVjdGl2ZSxcbiAgQ292YWxlbnRTaWRlU2hlZXRDb250ZW50RGlyZWN0aXZlLFxuICBDb3ZhbGVudFNpZGVTaGVldFRpdGxlRGlyZWN0aXZlLFxuICBDb3ZhbGVudFNpZGVTaGVldFdyYXBwZXJEaXJlY3RpdmUsXG59IGZyb20gJy4vc2lkZS1zaGVldC5jb250ZW50LWRpcmVjdGl2ZXMnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIFRoaXMgbW9kdWxlIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiBmdXR1cmUgdmVyc2lvbnMuXG4gKiBQbGVhc2UgbWlncmF0ZSB0byB1c2luZyBzdGFuZGFsb25lIGNvbXBvbmVudHMgYXMgc29vbiBhcyBwb3NzaWJsZS5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvdmFsZW50U2lkZVNoZWV0Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIENvdmFsZW50U2lkZVNoZWV0QWN0aW9uc0RpcmVjdGl2ZSxcbiAgICBDb3ZhbGVudFNpZGVTaGVldENsb3NlRGlyZWN0aXZlLFxuICAgIENvdmFsZW50U2lkZVNoZWV0Q29udGVudERpcmVjdGl2ZSxcbiAgICBDb3ZhbGVudFNpZGVTaGVldFRpdGxlRGlyZWN0aXZlLFxuICAgIENvdmFsZW50U2lkZVNoZWV0V3JhcHBlckRpcmVjdGl2ZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIENvdmFsZW50U2lkZVNoZWV0QWN0aW9uc0RpcmVjdGl2ZSxcbiAgICBDb3ZhbGVudFNpZGVTaGVldENsb3NlRGlyZWN0aXZlLFxuICAgIENvdmFsZW50U2lkZVNoZWV0Q29udGVudERpcmVjdGl2ZSxcbiAgICBDb3ZhbGVudFNpZGVTaGVldFRpdGxlRGlyZWN0aXZlLFxuICAgIENvdmFsZW50U2lkZVNoZWV0V3JhcHBlckRpcmVjdGl2ZSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbQ292YWxlbnRTaWRlU2hlZXRdLFxufSlcbmV4cG9ydCBjbGFzcyBDb3ZhbGVudFNpZGVTaGVldE1vZHVsZSB7fVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './public_api';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY292YWxlbnQtY29yZS1zaWRlLXNoZWV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NpZGUtc2hlZXQvc3JjL2NvdmFsZW50LWNvcmUtc2lkZS1zaGVldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19"],"names":["i2.CovalentSideSheetConfig"],"mappings":"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"}