@covalent/core 11.5.8 → 11.5.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/covalent-core-breadcrumbs.mjs.map +1 -1
- package/fesm2022/covalent-core-common.mjs.map +1 -1
- package/fesm2022/covalent-core-dialogs.mjs +2 -2
- package/fesm2022/covalent-core-dialogs.mjs.map +1 -1
- package/fesm2022/covalent-core-dynamic-menu.mjs.map +1 -1
- package/fesm2022/covalent-core-file.mjs.map +1 -1
- package/fesm2022/covalent-core-json-formatter.mjs.map +1 -1
- package/fesm2022/covalent-core-layout.mjs +2 -2
- package/fesm2022/covalent-core-layout.mjs.map +1 -1
- package/fesm2022/covalent-core-loading.mjs.map +1 -1
- package/fesm2022/covalent-core-menu.mjs.map +1 -1
- package/fesm2022/covalent-core-message.mjs.map +1 -1
- package/fesm2022/covalent-core-search.mjs.map +1 -1
- package/fesm2022/covalent-core-side-sheet.mjs +2 -2
- package/fesm2022/covalent-core-side-sheet.mjs.map +1 -1
- package/fesm2022/covalent-core-user-profile.mjs.map +1 -1
- package/package.json +2 -2
- package/side-sheet/index.d.ts +2 -2
|
@@ -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, 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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"}
|
|
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)(\"id\", ctx.idAttr);\n i0.ɵɵsyntheticHostProperty(\"@sideSheetContainer\", ctx.sideSheetAnimationState);\n i0.ɵɵattribute(\"aria-modal\", ctx.arialModal)(\"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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1zaGVldC1jb250YWluZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc2lkZS1zaGVldC9zcmMvc2lkZS1zaGVldC1jb250YWluZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUVMLDRCQUE0QixFQUM1QixZQUFZLEdBRWIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGVBQWUsR0FJaEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUVULFNBQVMsRUFDVCxVQUFVLEVBRVYsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osU0FBUyxFQUNULGlCQUFpQixFQUNqQixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQUU5RCxNQUFNLFVBQVUsaUNBQWlDO0lBQy9DLElBQUksYUFBYSxHQUNmLE9BQU8sUUFBUSxLQUFLLFdBQVcsSUFBSSxRQUFRO1FBQ3pDLENBQUMsQ0FBRSxRQUFRLENBQUMsYUFBb0M7UUFDaEQsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUVYLE9BQU8sYUFBYSxJQUFJLGFBQWEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNqRCxNQUFNLGdCQUFnQixHQUFHLGFBQWEsQ0FBQyxVQUFVO2FBQzlDLGFBQW1DLENBQUM7UUFDdkMsSUFBSSxnQkFBZ0IsS0FBSyxhQUFhLEVBQUUsQ0FBQztZQUN2QyxNQUFNO1FBQ1IsQ0FBQzthQUFNLENBQUM7WUFDTixhQUFhLEdBQUcsZ0JBQWdCLENBQUM7UUFDbkMsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPLGFBQWEsQ0FBQztBQUN2QixDQUFDO0FBRUQ7OztHQUdHO0FBRUgsTUFBTSxPQUFnQiwrQkFBZ0MsU0FBUSxnQkFBZ0I7SUFDbEUsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxpQkFBaUIsR0FBRyxNQUFNLENBQUMsNEJBQTRCLENBQUMsQ0FBQztJQUN6RCxrQkFBa0IsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUN6RCxPQUFPLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDbEMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUVuQyxTQUFTLEdBQW9CLElBQUksQ0FBQztJQUU1QyxtR0FBbUc7SUFDckQsYUFBYSxDQUFtQjtJQUU5RSxvRUFBb0U7SUFDNUQsVUFBVSxDQUF5QjtJQUUzQyw2Q0FBNkM7SUFDN0Msc0JBQXNCLEdBQUcsSUFBSSxZQUFZLEVBR3JDLENBQUM7SUFFTCxrR0FBa0c7SUFDMUYsdUNBQXVDLEdBQXVCLElBQUksQ0FBQztJQUUzRTs7OztPQUlHO0lBQ0gscUJBQXFCLEdBQXVCLElBQUksQ0FBQztJQUVqRCw2RUFBNkU7SUFDN0UsZUFBZSxDQUFnQjtJQUUvQix3Q0FBd0M7SUFDeEMsR0FBRyxDQUFVO0lBRWI7UUFDRSxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsUUFBUSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFdkQsS0FBSyxFQUFFLENBQUM7UUFDUixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBRTdCLElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUM7UUFDdEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7SUFDN0IsQ0FBQztJQUtELHNFQUFzRTtJQUN0RSw4QkFBOEI7UUFDNUIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3ZCLHVFQUF1RTtRQUN2RSw4QkFBOEI7UUFDOUIsSUFBSSxDQUFDLGdDQUFnQyxFQUFFLENBQUM7SUFDMUMsQ0FBQztJQUVEOzs7T0FHRztJQUNILHFCQUFxQixDQUFJLE1BQTBCO1FBQ2pELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsb0JBQW9CLENBQUksTUFBeUI7UUFDL0MsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRDs7OztPQUlHO0lBQ00sZUFBZSxHQUFHLENBQUMsTUFBaUIsRUFBRSxFQUFFO1FBQy9DLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEQsQ0FBQyxDQUFDO0lBRUYsZ0VBQWdFO0lBQ2hFLGVBQWU7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ08sVUFBVTtRQUNsQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztRQUMvQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUM7Z0JBQzNCLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQixDQUFDO1FBQ0gsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsVUFBVTtpQkFDWiw0QkFBNEIsRUFBRTtpQkFDOUIsSUFBSSxDQUFDLENBQUMsbUJBQW1CLEVBQUUsRUFBRTtnQkFDNUIsOEZBQThGO2dCQUM5RixxQkFBcUI7Z0JBQ3JCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO29CQUN6QixJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztnQkFDbEMsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztJQUNILENBQUM7SUFFRCxtRkFBbUY7SUFDekUsYUFBYTtRQUNyQixNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsdUNBQXVDLENBQUM7UUFFckUseUZBQXlGO1FBQ3pGLElBQ0UsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZO1lBQ3pCLGVBQWU7WUFDZixPQUFPLGVBQWUsQ0FBQyxLQUFLLEtBQUssVUFBVSxFQUMzQyxDQUFDO1lBQ0QsTUFBTSxhQUFhLEdBQUcsaUNBQWlDLEVBQUUsQ0FBQztZQUMxRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztZQUUvQywyRkFBMkY7WUFDM0YsNEZBQTRGO1lBQzVGLDZGQUE2RjtZQUM3RixlQUFlO1lBQ2YsSUFDRSxDQUFDLGFBQWE7Z0JBQ2QsYUFBYSxLQUFLLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSTtnQkFDdEMsYUFBYSxLQUFLLE9BQU87Z0JBQ3pCLE9BQU8sQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQy9CLENBQUM7Z0JBQ0QsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7b0JBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUN6QixlQUFlLEVBQ2YsSUFBSSxDQUFDLHFCQUFxQixDQUMzQixDQUFDO29CQUNGLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUM7Z0JBQ3BDLENBQUM7cUJBQU0sQ0FBQztvQkFDTixlQUFlLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQzFCLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDNUIsQ0FBQztJQUNILENBQUM7SUFFRCw4QkFBOEI7SUFDdEIsZUFBZTtRQUNyQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQzdDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUMvQixDQUFDO0lBQ0osQ0FBQztJQUVELDhFQUE4RTtJQUN0RSxnQ0FBZ0M7UUFDdEMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLHVDQUF1QztnQkFDMUMsaUNBQWlDLEVBQUUsQ0FBQztRQUN4QyxDQUFDO0lBQ0gsQ0FBQztJQUVELHdDQUF3QztJQUNoQyx3QkFBd0I7UUFDOUIsbUVBQW1FO1FBQ25FLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDekMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDekMsQ0FBQztJQUNILENBQUM7SUFFRCxzREFBc0Q7SUFDOUMsY0FBYztRQUNwQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztRQUMvQyxNQUFNLGFBQWEsR0FBRyxpQ0FBaUMsRUFBRSxDQUFDO1FBQzFELE9BQU8sT0FBTyxLQUFLLGFBQWEsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7eUhBckxtQiwrQkFBK0I7NkRBQS9CLCtCQUErQjsyQkFVeEMsZUFBZTs7Ozs7O2lGQVZOLCtCQUErQjtjQURwRCxTQUFTOztrQkFXUCxTQUFTO21CQUFDLGVBQWUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7O0FBOEs5Qzs7O0dBR0c7QUFVSCxNQUFNLE9BQU8sbUNBQW9DLFNBQVEsK0JBQStCO0lBQ3RGLHlDQUF5QztJQUN6QyxNQUFNLEdBQThCLE9BQU8sQ0FBQztJQUVFLHlCQUF5QixHQUNyRSxJQUFJLENBQUM7SUFDa0IsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ1osVUFBVSxHQUFHLElBQUksQ0FBQztJQUMxQixNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUNYLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztJQUNsQixnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVM7UUFDNUUsQ0FBQyxDQUFDLElBQUk7UUFDTixDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNhLG1CQUFtQixHQUN2RCxJQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUM7SUFDUCxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7SUFDeEUsSUFBd0MsdUJBQXVCO1FBQzdELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ3NELGNBQWMsQ0FDbkUsTUFBc0I7UUFFdEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFcUQsYUFBYSxDQUNqRSxNQUFzQjtRQUV0QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELHFFQUFxRTtJQUNyRSxnQkFBZ0IsQ0FBQyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQWtCO1FBQ3JELElBQUksT0FBTyxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLENBQUM7YUFBTSxJQUFJLE9BQU8sS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUM5QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUNuRSxDQUFDO0lBQ0gsQ0FBQztJQUVELDhEQUE4RDtJQUM5RCxpQkFBaUIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQWtCO1FBQ3RELElBQUksT0FBTyxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDcEUsQ0FBQzthQUFNLElBQUksT0FBTyxLQUFLLE1BQU0sSUFBSSxPQUFPLEtBQUssTUFBTSxFQUFFLENBQUM7WUFDcEQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUNwRSxDQUFDO0lBQ0gsQ0FBQztJQUVELDRDQUE0QztJQUM1QyxtQkFBbUI7UUFDakIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pDLENBQUM7eVRBdkRVLG1DQUFtQyx5QkFBbkMsbUNBQW1DOzZEQUFuQyxtQ0FBbUM7WUFBbkMsNEtBQUEsMEJBQXNCLElBQWEsZ0pBQW5DLHlCQUFxQixJQUFjOztZQUFuQywwQ0FBbUMsa0JBQUE7WUFBbkMsOEVBQW1DOztZQUFuQyx3RUFBbUM7O1lBUGxDLG9HQUE2Qjs0QkFLL0IsZUFBZSxxL0JBRGIsQ0FBQyxxQkFBcUIsQ0FBQyxrQkFBa0IsQ0FBQzs7aUZBRzNDLG1DQUFtQztjQVQvQyxTQUFTOzJCQUNFLHlCQUF5QixZQUN6QiwrQ0FBK0MsaUJBRTFDLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE9BQU8sY0FDcEMsQ0FBQyxxQkFBcUIsQ0FBQyxrQkFBa0IsQ0FBQyxXQUM3QyxDQUFDLGVBQWUsQ0FBQzs7a0JBTXpCLFdBQVc7bUJBQUMsK0JBQStCOztrQkFFM0MsV0FBVzttQkFBQyxVQUFVOztrQkFDdEIsV0FBVzttQkFBQyxZQUFZOztrQkFDeEIsV0FBVzttQkFBQyxJQUFJOztrQkFDaEIsV0FBVzttQkFBQyxXQUFXOztrQkFDdkIsV0FBVzttQkFBQyxzQkFBc0I7O2tCQUdsQyxXQUFXO21CQUFDLHVCQUF1Qjs7a0JBRW5DLFdBQVc7bUJBQUMsaUJBQWlCOztrQkFDN0IsV0FBVzttQkFBQyxxQkFBcUI7O2tCQUdqQyxZQUFZO21CQUFDLDJCQUEyQixFQUFFLENBQUMsUUFBUSxDQUFDOztrQkFNcEQsWUFBWTttQkFBQywwQkFBMEIsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7a0ZBekJ6QyxtQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiB0c2xpbnQ6ZGlzYWJsZSAqL1xuaW1wb3J0IHsgQW5pbWF0aW9uRXZlbnQgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7XG4gIENvbmZpZ3VyYWJsZUZvY3VzVHJhcCxcbiAgQ29uZmlndXJhYmxlRm9jdXNUcmFwRmFjdG9yeSxcbiAgRm9jdXNNb25pdG9yLFxuICBGb2N1c09yaWdpbixcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtcbiAgQmFzZVBvcnRhbE91dGxldCxcbiAgQ2RrUG9ydGFsT3V0bGV0LFxuICBDb21wb25lbnRQb3J0YWwsXG4gIERvbVBvcnRhbCxcbiAgVGVtcGxhdGVQb3J0YWwsXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudFJlZixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBFbWJlZGRlZFZpZXdSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRkU2lkZVNoZWV0QW5pbWF0aW9ucyB9IGZyb20gJy4vc2lkZS1zaGVldC5hbmltYXRpb24nO1xuaW1wb3J0IHsgQ292YWxlbnRTaWRlU2hlZXRDb25maWcgfSBmcm9tICcuL3NpZGUtc2hlZXQuY29uZmlnJztcblxuZXhwb3J0IGZ1bmN0aW9uIF9nZXRGb2N1c2VkRWxlbWVudFBpZXJjZVNoYWRvd0RvbSgpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICBsZXQgYWN0aXZlRWxlbWVudCA9XG4gICAgdHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJyAmJiBkb2N1bWVudFxuICAgICAgPyAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCB8IG51bGwpXG4gICAgICA6IG51bGw7XG5cbiAgd2hpbGUgKGFjdGl2ZUVsZW1lbnQgJiYgYWN0aXZlRWxlbWVudC5zaGFkb3dSb290KSB7XG4gICAgY29uc3QgbmV3QWN0aXZlRWxlbWVudCA9IGFjdGl2ZUVsZW1lbnQuc2hhZG93Um9vdFxuICAgICAgLmFjdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQgfCBudWxsO1xuICAgIGlmIChuZXdBY3RpdmVFbGVtZW50ID09PSBhY3RpdmVFbGVtZW50KSB7XG4gICAgICBicmVhaztcbiAgICB9IGVsc2Uge1xuICAgICAgYWN0aXZlRWxlbWVudCA9IG5ld0FjdGl2ZUVsZW1lbnQ7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGFjdGl2ZUVsZW1lbnQ7XG59XG5cbi8qKlxuICogQmFzZSBjbGFzcyBmb3IgdGhlIGBDb3ZhbGVudFNpZGVTaGVldENvbnRhaW5lcmAuIFRoZSBiYXNlIGNsYXNzIGRvZXMgbm90IGltcGxlbWVudFxuICogYW5pbWF0aW9ucyBhcyB0aGVzZSBhcmUgbGVmdCB0byBpbXBsZW1lbnRlcnMgb2YgdGhlIHNpZGUtc2hlZXQgY29udGFpbmVyLlxuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBfQ292YWxlbnRTaWRlU2hlZXRDb250YWluZXJCYXNlIGV4dGVuZHMgQmFzZVBvcnRhbE91dGxldCB7XG4gIHByb3RlY3RlZCBfZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcHJvdGVjdGVkIF9mb2N1c1RyYXBGYWN0b3J5ID0gaW5qZWN0KENvbmZpZ3VyYWJsZUZvY3VzVHJhcEZhY3RvcnkpO1xuICBwcm90ZWN0ZWQgX2NoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgX2NvbmZpZyA9IGluamVjdChDb3ZhbGVudFNpZGVTaGVldENvbmZpZyk7XG4gIHByaXZhdGUgX2ZvY3VzTW9uaXRvciA9IGluamVjdChGb2N1c01vbml0b3IpO1xuXG4gIHByb3RlY3RlZCBfZG9jdW1lbnQ6IERvY3VtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIFRoZSBwb3J0YWwgb3V0bGV0IGluc2lkZSBvZiB0aGlzIGNvbnRhaW5lciBpbnRvIHdoaWNoIHRoZSBzaWRlLXNoZWV0IGNvbnRlbnQgd2lsbCBiZSBsb2FkZWQuICovXG4gIEBWaWV3Q2hpbGQoQ2RrUG9ydGFsT3V0bGV0LCB7IHN0YXRpYzogdHJ1ZSB9KSBfcG9ydGFsT3V0bGV0ITogQ2RrUG9ydGFsT3V0bGV0O1xuXG4gIC8qKiBUaGUgY2xhc3MgdGhhdCB0cmFwcyBhbmQgbWFuYWdlcyBmb2N1cyB3aXRoaW4gdGhlIHNpZGUtc2hlZXQuICovXG4gIHByaXZhdGUgX2ZvY3VzVHJhcCE6IENvbmZpZ3VyYWJsZUZvY3VzVHJhcDtcblxuICAvKiogRW1pdHMgd2hlbiBhbiBhbmltYXRpb24gc3RhdGUgY2hhbmdlcy4gKi9cbiAgX2FuaW1hdGlvblN0YXRlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8e1xuICAgIHN0YXRlOiAnb3BlbmVkJyB8ICdvcGVuaW5nJyB8ICdjbG9zaW5nJyB8ICdjbG9zZWQnO1xuICAgIHRvdGFsVGltZTogbnVtYmVyO1xuICB9PigpO1xuXG4gIC8qKiBFbGVtZW50IHRoYXQgd2FzIGZvY3VzZWQgYmVmb3JlIHRoZSBzaWRlLXNoZWV0IHdhcyBvcGVuZWQuIFNhdmUgdGhpcyB0byByZXN0b3JlIHVwb24gY2xvc2UuICovXG4gIHByaXZhdGUgX2VsZW1lbnRGb2N1c2VkQmVmb3JlU2lkZVNoZWV0V2FzT3BlbmVkOiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIGludGVyYWN0aW9uIHRoYXQgbGVkIHRvIHRoZSBzaWRlLXNoZWV0IGJlaW5nIGNsb3NlZC4gVGhpcyBpcyB1c2VkIHRvIGRldGVybWluZVxuICAgKiB3aGV0aGVyIHRoZSBmb2N1cyBzdHlsZSB3aWxsIGJlIGFwcGxpZWQgd2hlbiByZXR1cm5pbmcgZm9jdXMgdG8gaXRzIG9yaWdpbmFsIGxvY2F0aW9uXG4gICAqIGFmdGVyIHRoZSBzaWRlLXNoZWV0IGlzIGNsb3NlZC5cbiAgICovXG4gIF9jbG9zZUludGVyYWN0aW9uVHlwZTogRm9jdXNPcmlnaW4gfCBudWxsID0gbnVsbDtcblxuICAvKiogSUQgb2YgdGhlIGVsZW1lbnQgdGhhdCBzaG91bGQgYmUgY29uc2lkZXJlZCBhcyB0aGUgc2lkZS1zaGVldCdzIGxhYmVsLiAqL1xuICBfYXJpYUxhYmVsbGVkQnk6IHN0cmluZyB8IG51bGw7XG5cbiAgLyoqIElEIGZvciB0aGUgY29udGFpbmVyIERPTSBlbGVtZW50LiAqL1xuICBfaWQhOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3QgX2RvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5ULCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gICAgc3VwZXIoKTtcbiAgICBjb25zdCBfY29uZmlnID0gdGhpcy5fY29uZmlnO1xuXG4gICAgdGhpcy5fYXJpYUxhYmVsbGVkQnkgPSBfY29uZmlnLmFyaWFMYWJlbGxlZEJ5IHx8IG51bGw7XG4gICAgdGhpcy5fZG9jdW1lbnQgPSBfZG9jdW1lbnQ7XG4gIH1cblxuICAvKiogU3RhcnRzIHRoZSBzaWRlLXNoZWV0IGV4aXQgYW5pbWF0aW9uLiAqL1xuICBhYnN0cmFjdCBfc3RhcnRFeGl0QW5pbWF0aW9uKCk6IHZvaWQ7XG5cbiAgLyoqIEluaXRpYWxpemVzIHRoZSBzaWRlLXNoZWV0IGNvbnRhaW5lciB3aXRoIHRoZSBhdHRhY2hlZCBjb250ZW50LiAqL1xuICBfaW5pdGlhbGl6ZVdpdGhBdHRhY2hlZENvbnRlbnQoKSB7XG4gICAgdGhpcy5fc2V0dXBGb2N1c1RyYXAoKTtcbiAgICAvLyBTYXZlIHRoZSBwcmV2aW91c2x5IGZvY3VzZWQgZWxlbWVudC4gVGhpcyBlbGVtZW50IHdpbGwgYmUgcmUtZm9jdXNlZFxuICAgIC8vIHdoZW4gdGhlIHNpZGUtc2hlZXQgY2xvc2VzLlxuICAgIHRoaXMuX2NhcHR1cmVQcmV2aW91c2x5Rm9jdXNlZEVsZW1lbnQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBdHRhY2ggYSBDb21wb25lbnRQb3J0YWwgYXMgY29udGVudCB0byB0aGlzIHNpZGUtc2hlZXQgY29udGFpbmVyLlxuICAgKiBAcGFyYW0gcG9ydGFsIFBvcnRhbCB0byBiZSBhdHRhY2hlZCBhcyB0aGUgc2lkZS1zaGVldCBjb250ZW50LlxuICAgKi9cbiAgYXR0YWNoQ29tcG9uZW50UG9ydGFsPFQ+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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Q3ZFLE1BQU0sR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxPQUFPLE1BQU07UUFDWCxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLE1BQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGUgKi9cbmltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ292YWxlbnRTaWRlU2hlZXQgfSBmcm9tICcuL3NpZGUtc2hlZXQnO1xuaW1wb3J0IHsgX2Nsb3NlU2lkZVNoZWV0VmlhLCBDb3ZhbGVudFNpZGVTaGVldFJlZiB9IGZyb20gJy4vc2lkZS1zaGVldC1yZWYnO1xuXG4vKiogQ291bnRlciB1c2VkIHRvIGdlbmVyYXRlIHVuaXF1ZSBJRHMgZm9yIGRpYWxvZyBlbGVtZW50cy4gKi9cbmxldCBkaWFsb2dFbGVtZW50VWlkID0gMDtcblxuLyoqXG4gKiBCdXR0b24gdGhhdCB3aWxsIGNsb3NlIHRoZSBjdXJyZW50IGRpYWxvZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3RkLXNpZGUtc2hlZXQtY2xvc2VdLCBbQ292YWxlbnRTaWRlU2hlZXRDbG9zZV0nLFxuICBleHBvcnRBczogJ0NvdmFsZW50U2lkZVNoZWV0Q2xvc2UnLFxufSlcbmV4cG9ydCBjbGFzcyBDb3ZhbGVudFNpZGVTaGVldENsb3NlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBkaWFsb2dSZWYgPSBpbmplY3Q8Q292YWxlbnRTaWRlU2hlZXRSZWY8YW55Pj4oQ292YWxlbnRTaWRlU2hlZXRSZWYsIHtcbiAgICBvcHRpb25hbDogdHJ1ZSxcbiAgfSk7XG4gIHByaXZhdGUgX2VsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIF9kaWFsb2cgPSBpbmplY3QoQ292YWxlbnRTaWRlU2hlZXQpO1xuXG4gIC8qKiBTY3JlZW5yZWFkZXIgbGFiZWwgZm9yIHRoZSBidXR0b24uICovXG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhbC1sYWJlbCcpXG4gIEBJbnB1dCgnYXJpYS1sYWJlbCcpXG4gIGFyaWFMYWJlbD86IHN0cmluZztcblxuICAvKiogRGVmYXVsdCB0byBcImJ1dHRvblwiIHRvIHByZXZlbnRzIGFjY2lkZW50YWwgZm9ybSBzdWJtaXRzLiAqL1xuICBASG9zdEJpbmRpbmcoJ2F0dHIudHlwZScpXG4gIEBJbnB1dCgpXG4gIHR5cGU6ICdzdWJtaXQnIHwgJ2J1dHRvbicgfCAncmVzZXQnID0gJ2J1dHRvbic7XG5cbiAgLyoqIERpYWxvZyBjbG9zZSBpbnB1dC4gKi9cbiAgQElucHV0KCd0ZC1zaWRlLXNoZWV0LWNsb3NlJykgZGlhbG9nUmVzdWx0OiBhbnk7XG5cbiAgQElucHV0KCdDb3ZhbGVudFNpZGVTaGVldENsb3NlJykgX0NvdmFsZW50U2lkZVNoZWV0Q2xvc2U6IGFueTtcblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pIG9uQ2xpY2soJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5fb25CdXR0b25DbGljaygkZXZlbnQpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRpYWxvZ1JlZikge1xuICAgICAgLy8gV2hlbiB0aGlzIGRpcmVjdGl2ZSBpcyBpbmNsdWRlZCBpbiBhIGRpYWxvZyB2aWEgVGVtcGxhdGVSZWYgKHJhdGhlciB0aGFuIGJlaW5nXG4gICAgICAvLyBpbiBhIENvbXBvbmVudCksIHRoZSBEaWFsb2dSZWYgaXNuJ3QgYXZhaWxhYmxlIHZpYSBpbmplY3Rpb24gYmVjYXVzZSBlbWJlZGRlZFxuICAgICAgLy8gdmlld3MgY2Fubm90IGJlIGdpdmVuIGEgY3VzdG9tIGluamVjdG9yLiBJbnN0ZWFkLCB3ZSBsb29rIHVwIHRoZSBEaWFsb2dSZWYgYnlcbiAgICAgIC8vIElELiBUaGlzIG11c3Qgb2NjdXIgaW4gYG9uSW5pdGAsIGFzIHRoZSBJRCBiaW5kaW5nIGZvciB0aGUgZGlhbG9nIGNvbnRhaW5lciB3b24ndFxuICAgICAgLy8gYmUgcmVzb2x2ZWQgYXQgY29uc3RydWN0b3IgdGltZS5cbiAgICAgIHRoaXMuZGlhbG9nUmVmID0gZ2V0Q2xvc2VzdERpYWxvZyhcbiAgICAgICAgdGhpcy5fZWxlbWVudFJlZixcbiAgICAgICAgdGhpcy5fZGlhbG9nLm9wZW5TaWRlU2hlZXRzLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgY29uc3QgcHJveGllZENoYW5nZSA9XG4gICAgICBjaGFuZ2VzWydfQ292YWxlbnRTaWRlU2hlZXRDbG9zZSddIHx8XG4gICAgICBjaGFuZ2VzWydfQ292YWxlbnRTaWRlU2hlZXRDbG9zZVJlc3VsdCddO1xuXG4gICAgaWYgKHByb3hpZWRDaGFuZ2UpIHtcbiAgICAgIHRoaXMuZGlhbG9nUmVzdWx0ID0gcHJveGllZENoYW5nZS5jdXJyZW50VmFsdWU7XG4gICAgfVxuICB9XG5cbiAgX29uQnV0dG9uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAvLyBEZXRlcm1pbmF0ZSB0aGUgZm9jdXMgb3JpZ2luIHVzaW5nIHRoZSBjbGljayBldmVudCwgYmVjYXVzZSB1c2luZyB0aGUgRm9jdXNNb25pdG9yIHdpbGxcbiAgICAvLyByZXN1bHQgaW4gaW5jb3JyZWN0IG9yaWdpbnMuIE1vc3Qgb2YgdGhlIHRpbWUsIGNsb3NlIGJ1dHRvbnMgd2lsbCBiZSBhdXRvIGZvY3VzZWQgaW4gdGhlXG4gICAgLy8gZGlhbG9nLCBhbmQgdGhlcmVmb3JlIGNsaWNraW5nIHRoZSBidXR0b24gd29uJ3QgcmVzdWx0IGluIGEgZm9jdXMgY2hhbmdlLiBUaGlzIG1lYW5zIHRoYXRcbiAgICAvLyB0aGUgRm9jdXNNb25pdG9yIHdvbid0IGRldGVjdCBhbnkgb3JpZ2luIGNoYW5nZSwgYW5kIHdpbGwgYWx3YXlzIG91dHB1dCBgcHJvZ3JhbWAuXG5cbiAgICBpZiAoIXRoaXMuZGlhbG9nUmVmKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgX2Nsb3NlU2lkZVNoZWV0VmlhKFxuICAgICAgdGhpcy5kaWFsb2dSZWYsXG4gICAgICBldmVudC5zY3JlZW5YID09PSAwICYmIGV2ZW50LnNjcmVlblkgPT09IDAgPyAna2V5Ym9hcmQnIDogJ21vdXNlJyxcbiAgICAgIHRoaXMuZGlhbG9nUmVzdWx0LFxuICAgICk7XG4gIH1cbn1cblxuLyoqXG4gKiBUaXRsZSBvZiBhIHNpZGUgc2hlZXQgZWxlbWVudC4gU3RheXMgZml4ZWQgdG8gdGhlIHRvcCBvZiB0aGUgc2lkZSBzaGVldCB3aGVuIHNjcm9sbGluZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3RkLXNpZGUtc2hlZXQtdGl0bGVdLCBbQ292YWxlbnRTaWRlU2hlZXRUaXRsZV0nLFxuICBleHBvcnRBczogJ0NvdmFsZW50U2lkZVNoZWV0VGl0bGUnLFxufSlcbmV4cG9ydCBjbGFzcyBDb3ZhbGVudFNpZGVTaGVldFRpdGxlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSBfZGlhbG9nUmVmID0gaW5qZWN0PENvdmFsZW50U2lkZVNoZWV0UmVmPGFueT4+KENvdmFsZW50U2lkZVNoZWV0UmVmLCB7XG4gICAgb3B0aW9uYWw6IHRydWUsXG4gIH0pO1xuICBwcml2YXRlIF9lbGVtZW50UmVmID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSBfZGlhbG9nID0gaW5qZWN0KENvdmFsZW50U2lkZVNoZWV0KTtcblxuICAvKiogVW5pcXVlIGlkIGZvciB0aGUgZGlhbG9nIHRpdGxlLiBJZiBub25lIGlzIHN1cHBsaWVkLCBpdCB3aWxsIGJlIGF1dG8tZ2VuZXJhdGVkLiAqL1xuICBASW5wdXQoKSBpZCA9IGB0ZC1zaWRlLXNoZWV0LXRpdGxlLSR7ZGlhbG9nRWxlbWVudFVpZCsrfWA7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy50ZC1zaWRlLXNoZWV0LXRpdGxlJykgdGRTaWRlU2hlZXRUaXRsZSA9IHRydWU7XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmlkJykgaWRBdHRyID0gdGhpcy5pZDtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZGlhbG9nUmVmKSB7XG4gICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcbiAgICAgICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5fZGlhbG9nUmVmPy5fY29udGFpbmVySW5zdGFuY2U7XG5cbiAgICAgICAgaWYgKGNvbnRhaW5lciAmJiAhY29udGFpbmVyLl9hcmlhTGFiZWxsZWRCeVF1ZXVlLmluY2x1ZGVzKHRoaXMuaWQpKSB7XG4gICAgICAgICAgY29udGFpbmVyLl9hcmlhTGFiZWxsZWRCeVF1ZXVlLnB1c2godGhpcy5pZCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9kaWFsb2dSZWYgPSBnZXRDbG9zZXN0RGlhbG9nKFxuICAgICAgICB0aGlzLl9lbGVtZW50UmVmLFxuICAgICAgICB0aGlzLl9kaWFsb2cub3BlblNpZGVTaGVldHMsXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFNjcm9sbGFibGUgY29udGVudCBjb250YWluZXIgb2YgYSBkaWFsb2cuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogYFt0ZC1zaWRlLXNoZWV0LWNvbnRlbnRdLCB0ZC1zaWRlLXNoZWV0LWNvbnRlbnQsIFtDb3ZhbGVudFNpZGVTaGVldENvbnRlbnRdYCxcbn0pXG5leHBvcnQgY2xhc3MgQ292YWxlbnRTaWRlU2hlZXRDb250ZW50RGlyZWN0aXZlIHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy50ZC1zaWRlLXNoZWV0LWNvbnRlbnQnKSB0ZFNpZGVTaGVldENvbnRlbnQgPSB0cnVlO1xufVxuXG4vKipcbiAqIENvbnRhaW5lciBmb3IgdGhlIGJvdHRvbSBhY3Rpb24gYnV0dG9ucyBpbiBhIGRpYWxvZy5cbiAqIFN0YXlzIGZpeGVkIHRvIHRoZSBib3R0b20gd2hlbiBzY3JvbGxpbmcuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogYFt0ZC1zaWRlLXNoZWV0LWFjdGlvbnNdLCB0ZC1zaWRlLXNoZWV0LWFjdGlvbnMsIFtDb3ZhbGVudFNpZGVTaGVldEFjdGlvbnNdYCxcbn0pXG5leHBvcnQgY2xhc3MgQ292YWxlbnRTaWRlU2hlZXRBY3Rpb25zRGlyZWN0aXZlIHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy50ZC1zaWRlLXNoZWV0LWFjdGlvbnMnKSB0ZFNpZGVTaGVldEFjdGlvbnMgPSB0cnVlO1xufVxuXG4vKipcbiAqIENvbnRhaW5lciBmb3IgdGhlIHdyYXBwZXIgcGFydCBvZiB0aGUgZGlhbG9nXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogYFt0ZC1zaWRlLXNoZWV0LXdyYXBwZXJdLCB0ZC1zaWRlLXNoZWV0LXdyYXBwZXIsIFtDb3ZhbGVudFNpZGVTaGVldFdyYXBwZXJdYCxcbn0pXG5leHBvcnQgY2xhc3MgQ292YWxlbnRTaWRlU2hlZXRXcmFwcGVyRGlyZWN0aXZlIHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy50ZC1zaWRlLXNoZWV0LXdyYXBwZXInKSB0ZFNpZGVTaGVldFdyYXBwZXIgPSB0cnVlO1xufVxuXG4vKipcbiAqIEZpbmRzIHRoZSBjbG9zZXN0IENvdmFsZW50U2lkZVNoZWV0UmVmIHRvIGFuIGVsZW1lbnQgYnkgbG9va2luZyBhdCB0aGUgRE9NLlxuICogQHBhcmFtIGVsZW1lbnQgRWxlbWVudCByZWxhdGl2ZSB0byB3aGljaCB0byBsb29rIGZvciBhIGRpYWxvZy5cbiAqIEBwYXJhbSBvcGVuRGlhbG9ncyBSZWZlcmVuY2VzIHRvIHRoZSBjdXJyZW50bHktb3BlbiBkaWFsb2dzLlxuICovXG5mdW5jdGlvbiBnZXRDbG9zZXN0RGlhbG9nKFxuICBlbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgb3BlbkRpYWxvZ3M6IENvdmFsZW50U2lkZVNoZWV0UmVmPGFueT5bXSxcbik6IENvdmFsZW50U2lkZVNoZWV0UmVmPGFueT4ge1xuICBsZXQgcGFyZW50OiBIVE1MRWxlbWVudCB8IG51bGwgPSBlbGVtZW50Lm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudDtcblxuICB3aGlsZSAocGFyZW50ICYmICFwYXJlbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCd0ZC1zaWRlLXNoZWV0LWNvbnRhaW5lcicpKSB7XG4gICAgcGFyZW50ID0gcGFyZW50LnBhcmVudEVsZW1lbnQ7XG4gIH1cblxuICByZXR1cm4gcGFyZW50XG4gICAgPyAob3BlbkRpYWxvZ3MuZmluZCgoZGlhbG9nKSA9PiBkaWFsb2cuaWQgPT09IHBhcmVudD8uaWQpID8/IG9wZW5EaWFsb2dzWzBdKVxuICAgIDogb3BlbkRpYWxvZ3NbMF07XG59XG4iXX0=","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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"}
|