{"version":3,"file":"eui-components-eui-overlay.mjs","sources":["../../eui-overlay/eui-overlay.component.ts","../../eui-overlay/eui-overlay.component.html","../../eui-overlay/components/eui-overlay-body/eui-overlay-body.component.ts","../../eui-overlay/components/eui-overlay-footer/eui-overlay-footer.component.ts","../../eui-overlay/components/eui-overlay-header/eui-overlay-header-title/eui-overlay-header-title.component.ts","../../eui-overlay/components/eui-overlay-header/eui-overlay-header-title/eui-overlay-header-title.component.html","../../eui-overlay/components/eui-overlay-header/eui-overlay-header.component.ts","../../eui-overlay/components/eui-overlay-header/eui-overlay-header.component.html","../../eui-overlay/components/eui-overlay-content/eui-overlay-content.component.ts","../../eui-overlay/index.ts","../../eui-overlay/eui-components-eui-overlay.ts"],"sourcesContent":["import {\n    Component,\n    HostBinding,\n    ViewEncapsulation,\n    Input,\n    HostListener,\n    Output,\n    EventEmitter,\n    booleanAttribute,\n    inject,\n    ElementRef,\n    Renderer2,\n} from '@angular/core';\nimport { CdkTrapFocus } from '@angular/cdk/a11y';\n\n/**\n * @description\n * Modal overlay component that displays content in a layer above the main application.\n * Provides slide-in panel functionality with configurable positioning and width options.\n * Supports focus trapping, keyboard navigation, and click-outside-to-close behavior.\n * Implements ARIA dialog role for accessibility compliance.\n * Commonly used for side panels, drawers, settings menus, and contextual information displays.\n *\n * @usageNotes\n * ### Basic Usage\n * ```html\n * <eui-overlay [isActive]=\"showPanel\" (activeState)=\"showPanel = $event\">\n *   <eui-overlay-header>\n *     <h2>Panel Title</h2>\n *   </eui-overlay-header>\n *   <eui-overlay-content>\n *     <p>Panel content goes here</p>\n *   </eui-overlay-content>\n *   <eui-overlay-footer>\n *     <button euiButton (click)=\"showPanel = false\">Close</button>\n *   </eui-overlay-footer>\n * </eui-overlay>\n * ```\n *\n * ### Right Side Panel\n * ```html\n * <eui-overlay [isActive]=\"true\" position=\"right\" width=\"medium\">\n *   <eui-overlay-content>Content</eui-overlay-content>\n * </eui-overlay>\n * ```\n *\n * ### With Click Outside to Close\n * ```html\n * <eui-overlay [isActive]=\"true\" [hasClosedOnClickOutside]=\"true\">\n *   <eui-overlay-content>Dismissible content</eui-overlay-content>\n * </eui-overlay>\n * ```\n *\n * ### Accessibility\n * - Uses `dialog` role for screen readers\n * - Traps focus within overlay when active\n * - Escape key closes overlay\n * - Inert attribute prevents interaction when inactive\n *\n * ### Notes\n * - Position options: 'right', 'left', 'top', 'bottom'\n * - Width can be responsive or fixed\n * - Automatically handles slide-in animations\n * - Use with overlay sub-components for structured layout\n */\n@Component({\n    selector: 'eui-overlay',\n    templateUrl: './eui-overlay.component.html',\n    styleUrls: ['./styles/_index.scss'],\n    encapsulation: ViewEncapsulation.None,\n    imports: [CdkTrapFocus],\n})\nexport class EuiOverlayComponent {\n    @HostBinding('class')\n    get cssClasses(): string {\n        return [\n            'eui-overlay',\n            this.isActive ? 'eui-overlay--is-active' : '',\n            this.euiHighlighted ? 'eui-overlay--highlighted' : '',\n            this.position ? 'eui-overlay-offset eui-overlay-offset--position-' + this.position : '',\n            this.width ? 'eui-overlay-offset eui-overlay-offset--width-' + this.width : '',\n            this.fixedWidth ? 'eui-overlay-offset eui-overlay-offset--fixed-width-' + this.fixedWidth : '',\n            this.hasClosedOnClickOutside ? 'eui-overlay--slideInRight' : '',\n        ]\n            .join(' ')\n            .trim();\n    }\n\n    @HostBinding('attr.role') role = 'dialog';\n    @HostBinding('attr.aria-label') 'aria-label' = 'dialogOverlay';\n    @HostBinding('attr.inert')\n    get inert(): string {\n        return this.isActive ? null : '';\n    }\n\n    /**\n     * Controls the visibility and active state of the overlay.\n     * When true, displays the overlay with animation and enables interaction.\n     * When false, hides the overlay and applies inert attribute to prevent interaction.\n     * @default false\n     */\n    @Input({ transform: booleanAttribute }) isActive = false;\n    /**\n     * Applies highlighted visual styling to emphasize the overlay.\n     * Adds distinct background or border treatment for visual prominence.\n     * @default false\n     */\n    @Input({ transform: booleanAttribute }) euiHighlighted = false;\n    /**\n     * Enables automatic closing when user clicks outside the overlay boundaries.\n     * Also applies slide-in animation from the right side.\n     * Useful for dismissible panels and temporary contextual menus.\n     * @default false\n     */\n    @Input({ transform: booleanAttribute }) hasClosedOnClickOutside = false;\n    /**\n     * Screen position where the overlay appears.\n     * Determines the slide-in direction and alignment of the overlay panel.\n     * Common values: 'right', 'left', 'top', 'bottom'.\n     * @default 'right'\n     */\n    @Input() position = 'right';\n    /**\n     * Responsive width variant for the overlay panel.\n     * Applies predefined width classes that adapt to viewport size.\n     * Values correspond to CSS width modifier classes.\n     */\n    @Input() width: string;\n    /**\n     * Fixed width value for the overlay panel.\n     * Applies a specific width that does not respond to viewport changes.\n     * Overrides responsive width settings when specified.\n     */\n    @Input() fixedWidth: string;\n\n    /**\n     * Emitted when the overlay's active state changes.\n     * Payload: boolean indicating the requested active state (typically false for close requests).\n     * Triggered by Escape key press or click outside when hasClosedOnClickOutside is enabled.\n     */\n    @Output() activeState = new EventEmitter<boolean>();\n    private readonly elementRef: ElementRef = inject(ElementRef);\n    private readonly renderer: Renderer2 = inject(Renderer2);\n\n    @HostListener('keydown', ['$event'])\n    onKeydown(event: KeyboardEvent): void {\n        if (event.key === 'Escape') {\n            this.activeState.emit(false);\n        }\n    }\n\n    @HostListener('document:click', ['$event'])\n    onClick(event: MouseEvent): void {\n        if (this.hasClosedOnClickOutside) {\n            let targetElement = event.target as HTMLElement;\n            let isInsideOverlay = false;\n\n            while (targetElement) {\n                if (targetElement.classList.contains('eui-overlay')) {\n                    isInsideOverlay = true;\n                    break;\n                }\n                targetElement = targetElement.parentElement;\n            }\n\n            if (!isInsideOverlay && this.isActive) {\n                this.activeState.emit(false);\n            }\n        }\n    }\n}\n","<div class=\"eui-overlay-wrapper\"\n   [cdkTrapFocus]=\"isActive\"\n   [cdkTrapFocusAutoCapture]=\"isActive\">\n    <ng-content select=\"eui-overlay-header\"></ng-content>\n    <ng-content select=\"eui-overlay-content\"></ng-content>\n    <ng-content select=\"eui-overlay-body\"></ng-content>\n    <ng-content select=\"eui-overlay-footer\"></ng-content>\n</div>\n","import { Component, ChangeDetectionStrategy, HostBinding, ViewEncapsulation } from '@angular/core';\n\n/**\n * @description\n * Body component for `eui-overlay` that provides a structured content container within the overlay content area.\n * Serves as a semantic wrapper for main body content with consistent padding and spacing.\n * Typically used within `eui-overlay-content` to organize content sections.\n * Must be used as a child of `eui-overlay-content` to maintain proper layout hierarchy.\n *\n * @usageNotes\n * ### Basic Usage\n * ```html\n * <eui-overlay [isActive]=\"true\">\n *   <eui-overlay-content>\n *     <eui-overlay-body>\n *       <p>Body content with consistent padding</p>\n *     </eui-overlay-body>\n *   </eui-overlay-content>\n * </eui-overlay>\n * ```\n *\n * ### Accessibility\n * - Provides semantic structure for content organization\n * - Maintains proper content hierarchy\n *\n * ### Notes\n * - Used within `eui-overlay-content`\n * - Applies consistent padding to content\n */\n@Component({\n    selector: 'eui-overlay-body',\n    template: '<ng-content/>',\n    changeDetection: ChangeDetectionStrategy.Default,\n    encapsulation: ViewEncapsulation.None,\n})\nexport class EuiOverlayBodyComponent {\n    @HostBinding('class')\n    get cssClasses(): string {\n        return 'eui-overlay-body';\n    }\n}\n","import { Component, ChangeDetectionStrategy, HostBinding, ViewEncapsulation } from '@angular/core';\n\n/**\n * @description\n * Footer component for `eui-overlay` that provides a structured bottom section.\n * Typically contains action buttons such as submit, cancel, or other footer controls.\n * Applies consistent styling and spacing for overlay footer content.\n * Must be used as a direct child of `eui-overlay` to maintain proper layout structure.\n *\n * @usageNotes\n * ### Basic Usage\n * ```html\n * <eui-overlay [isActive]=\"true\">\n *   <eui-overlay-content>\n *     <p>Content</p>\n *   </eui-overlay-content>\n *   <eui-overlay-footer>\n *     <button euiButton euiPrimary>Save</button>\n *     <button euiButton euiSecondary>Cancel</button>\n *   </eui-overlay-footer>\n * </eui-overlay>\n * ```\n *\n * ### Accessibility\n * - Action buttons should have clear labels\n * - Primary action typically comes first in DOM order\n *\n * ### Notes\n * - Must be direct child of `eui-overlay`\n * - Commonly used for action buttons\n */\n@Component({\n    selector: 'eui-overlay-footer',\n    template: '<ng-content/>',\n    changeDetection: ChangeDetectionStrategy.Default,\n    encapsulation: ViewEncapsulation.None,\n})\nexport class EuiOverlayFooterComponent {\n    @HostBinding('class')\n    get cssClasses(): string {\n        return 'eui-overlay-footer';\n    }\n}\n","import { Component, HostBinding, ViewEncapsulation, Input, Output, EventEmitter } from '@angular/core';\nimport { BaseStatesDirective } from '@eui/components/shared';\nimport { EUI_BADGE } from '@eui/components/eui-badge';\nimport { EUI_BUTTON } from '@eui/components/eui-button';\nimport { EUI_ICON } from '@eui/components/eui-icon';\nimport { EUI_ICON_BUTTON } from '@eui/components/eui-icon-button';\n\n/**\n * Title component for eui-overlay-header that displays a labeled heading with optional count badge and close button.\n * Provides structured title area with consistent styling and accessibility features.\n * Automatically includes a close/hide button that emits events for overlay dismissal.\n * Must be used within eui-overlay-header to maintain proper header structure.\n */\n@Component({\n    selector: 'eui-overlay-header-title',\n    templateUrl: './eui-overlay-header-title.component.html',\n    encapsulation: ViewEncapsulation.None,\n    imports: [\n        BaseStatesDirective,\n        ...EUI_BADGE,\n        ...EUI_ICON_BUTTON,\n        ...EUI_ICON,\n    ],\n})\nexport class EuiOverlayHeaderTitleComponent {\n    @HostBinding('class')\n    get cssClasses(): string {\n        return 'eui-overlay-header-title';\n    }\n\n    /**\n     * Primary text label displayed as the overlay header title.\n     * Provides the main heading text for the overlay content.\n     * @default null\n     */\n    @Input() headerTitleLabel: string = null;\n    /**\n     * Accessible label for the close/hide button in the header.\n     * Provides screen reader text describing the button's action.\n     * @default null\n     */\n    @Input() headerTitleHideLabel: string = null;\n    /**\n     * Count value displayed as a badge next to the title.\n     * Typically shows the number of items, notifications, or related content.\n     * Rendered as a visual badge component when provided.\n     * @default null\n     */\n    @Input() headerTitleCount: string = null;\n\n    /**\n     * Emitted when the close/hide button in the header is clicked.\n     * Signals that the overlay should be dismissed or hidden.\n     * No specific payload is provided.\n     */\n    // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n    // eslint-disable-next-line @typescript-eslint/no-explicit-any\n    @Output() hide: EventEmitter<any> = new EventEmitter<any>();\n\n    onHide(): void {\n        this.hide.emit();\n    }\n}\n","<div class=\"eui-overlay-header-title\">\n  <div class=\"eui-overlay-header-title__label-wrapper\">\n    <div class=\"eui-overlay-header-title__label\">\n      {{ headerTitleLabel }}\n      @if (headerTitleCount) {\n        <eui-badge euiSizeL class=\"eui-overlay-header-title__label-count\">\n          {{ headerTitleCount }}\n        </eui-badge>\n      }\n    </div>\n\n    <div class=\"eui-overlay-header-title__actions\">\n      @if (headerTitleHideLabel) {\n        <div class=\"eui-overlay-header-title__actions-hide\">\n          <eui-icon-button icon=\"eui-close\" (buttonClick)=\"onHide()\" size=\"l\" euiRounded ariaLabel=\"Dialog close icon\"/>\n        </div>\n      }\n    </div>\n  </div>\n\n  <div class=\"eui-overlay-header-title__subactions-bar\">\n    <ng-content></ng-content>\n  </div>\n</div>\n","import { Component, ContentChild, HostBinding, QueryList, ViewEncapsulation, forwardRef } from '@angular/core';\n\nimport { EuiOverlayHeaderTitleComponent } from '../eui-overlay-header/eui-overlay-header-title/eui-overlay-header-title.component';\n\n/**\n * @description\n * Header component for eui-overlay that provides a structured top section.\n * Automatically detects and styles content based on the presence of a title component.\n * Typically contains title, close button, and optional action buttons.\n * Must be used as a direct child of eui-overlay to maintain proper layout structure.\n *\n * @usageNotes\n * ### Basic Usage\n * ```html\n * <eui-overlay [isActive]=\"true\">\n *   <eui-overlay-header>\n *     <h2>Overlay Title</h2>\n *   </eui-overlay-header>\n * </eui-overlay>\n * ```\n *\n * ### Accessibility\n * - Use heading elements for titles\n * - Ensure close buttons have appropriate ARIA labels\n *\n * ### Notes\n * - Must be direct child of `eui-overlay`\n * - Automatically styled based on content\n */\n@Component({\n    selector: 'eui-overlay-header',\n    templateUrl: './eui-overlay-header.component.html',\n    encapsulation: ViewEncapsulation.None,\n})\nexport class EuiOverlayHeaderComponent {\n\n    @ContentChild(forwardRef(() => EuiOverlayHeaderTitleComponent), { static: false }) hasHeaderTitle: QueryList<EuiOverlayHeaderTitleComponent>;\n\n    @HostBinding('class')\n    get cssClasses(): string {\n        return [\n            'eui-overlay-header',\n            this.hasHeaderTitle ? 'eui-overlay-header--with-title' : '',\n        ].join(' ').trim();\n    }\n}\n","<ng-content select=\"eui-overlay-header-title\" />\n<ng-content />\n","import { Component, ChangeDetectionStrategy, HostBinding, ViewEncapsulation } from '@angular/core';\n\n/**\n * @description\n * Content component for `eui-overlay` that provides a structured main content area.\n * Serves as the primary container for overlay body content between header and footer.\n * Applies consistent styling, spacing, and scrolling behavior for overlay content.\n * Must be used as a direct child of `eui-overlay` to maintain proper layout structure.\n *\n * @usageNotes\n * ### Basic Usage\n * ```html\n * <eui-overlay [isActive]=\"true\">\n *   <eui-overlay-content>\n *     <p>Main content goes here</p>\n *   </eui-overlay-content>\n * </eui-overlay>\n * ```\n *\n * ### Accessibility\n * - Content is scrollable when it exceeds available space\n * - Maintains focus within overlay structure\n *\n * ### Notes\n * - Must be direct child of `eui-overlay`\n * - Automatically handles overflow scrolling\n */\n@Component({\n    selector: 'eui-overlay-content',\n    template: '<ng-content/>',\n    changeDetection: ChangeDetectionStrategy.Default,\n    encapsulation: ViewEncapsulation.None,\n\n})\nexport class EuiOverlayContentComponent {\n    @HostBinding('class')\n    get cssClasses(): string {\n        return 'eui-overlay-content';\n    }\n}\n","export * from './eui-overlay.component';\nexport * from './components/eui-overlay-body/eui-overlay-body.component';\nexport * from './components/eui-overlay-footer/eui-overlay-footer.component';\nexport * from './components/eui-overlay-header/eui-overlay-header.component';\nexport * from './components/eui-overlay-content/eui-overlay-content.component';\nexport * from './components/eui-overlay-header/eui-overlay-header-title/eui-overlay-header-title.component';\n\nimport { EuiOverlayHeaderComponent } from './components/eui-overlay-header/eui-overlay-header.component';\nimport { EuiOverlayBodyComponent } from './components/eui-overlay-body/eui-overlay-body.component';\nimport { EuiOverlayFooterComponent } from './components/eui-overlay-footer/eui-overlay-footer.component';\nimport { EuiOverlayHeaderTitleComponent } from './components/eui-overlay-header/eui-overlay-header-title/eui-overlay-header-title.component';\nimport { EuiOverlayContentComponent } from './components/eui-overlay-content/eui-overlay-content.component';\nimport { EuiOverlayComponent } from './eui-overlay.component';\n\nexport const EUI_OVERLAY = [\n    EuiOverlayHeaderComponent,\n    EuiOverlayHeaderTitleComponent,\n    EuiOverlayBodyComponent,\n    EuiOverlayContentComponent,\n    EuiOverlayFooterComponent,\n    EuiOverlayComponent,\n] as const;","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}