{"version":3,"file":"eui-components-eui-message-box.mjs","sources":["../../eui-message-box/services/eui-message-box.service.ts","../../eui-message-box/eui-message-box.component.ts","../../eui-message-box/eui-message-box.component.html","../../eui-message-box/models/eui-message-box.config.ts","../../eui-message-box/index.ts","../../eui-message-box/eui-components-eui-message-box.ts"],"sourcesContent":["import { Injectable, inject } from '@angular/core';\nimport { EuiDialogInterface, EuiDialogService } from '@eui/components/eui-dialog';\n\n/**\n * @description\n * Service for programmatically creating, opening, and controlling message boxes in the eui application.\n *\n * The EuiMessageBoxService wraps the EuiDialogService to provide a simplified API specifically\n * for message box functionality. Message boxes are specialized dialog windows typically used\n * for alerts, confirmations, and prompts.\n *\n * The service handles the configuration of common message box properties and delegates to the\n * underlying dialog service for rendering.\n *\n *\n * @see EuiMessageBoxComponent\n * @see EuiDialogService\n */\n@Injectable({ providedIn: 'root' })\nexport class EuiMessageBoxService {\n    private euiDialogService = inject(EuiDialogService);\n\n    /**\n     * Opens a message box with the specified configuration.\n     *\n     * This method sets default message box properties and delegates to the dialog service\n     * to render the message box. Message boxes don't close on outside click or escape key,\n     * and have no header component or close button by default.\n     *\n     * @param config - Configuration options for the message box\n     * @typeParam HC - Header content type\n     * @typeParam HCC - Header component context type\n     * @typeParam BC - Body content type\n     * @typeParam BCC - Body component context type\n     * @typeParam FC - Footer content type\n     * @typeParam FCC - Footer component context type\n     */\n    public openMessageBox<HC, HCC, BC, BCC, FC, FCC>(config: EuiDialogInterface<HC, HCC, BC, BCC, FC, FCC> = {}): void {\n        this.euiDialogService.openDialog({\n            ...config,\n            header: null,\n            headerComponent: null,\n            hasClosedOnClickOutside: false,\n            hasCloseButton: false,\n            hasClosedOnEscape: false,\n            hasFooter: true,\n        });\n    }\n\n    /**\n     * Closes the currently active message box.\n     *\n     * This method delegates to the dialog service to close any open dialog.\n     */\n    public closeMessageBox(): void {\n        this.euiDialogService.closeDialog();\n    }\n}\n","import {\n    Component,\n    ChangeDetectionStrategy,\n    ViewEncapsulation,\n    Input,\n    ViewChild,\n    TemplateRef,\n    ViewContainerRef,\n    AfterViewInit,\n    OnDestroy,\n    Output,\n    EventEmitter,\n    Directive,\n    ContentChild,\n    forwardRef,\n    QueryList,\n    ElementRef,\n    booleanAttribute,\n    inject,\n} from '@angular/core';\nimport { TemplatePortal } from '@angular/cdk/portal';\nimport { Subject } from 'rxjs';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { DragDropModule } from '@angular/cdk/drag-drop';\nimport { EUI_BUTTON } from '@eui/components/eui-button';\nimport { EUI_ICON } from '@eui/components/eui-icon';\n\nimport { BaseStatesDirective } from '@eui/components/shared';\nimport { EuiDialogInterface } from '@eui/components/eui-dialog';\n\nimport { EuiMessageBoxService } from './services/eui-message-box.service';\n\n/**\n * @description\n * Component for displaying modal message boxes with structured content and customizable actions.\n * This component provides a user-friendly interface for confirmation dialogs, alerts, and other\n * types of modal messages.\n *\n * The component supports various styling variants through the BaseStatesDirective hostDirective,\n * customizable buttons, and configurable behavior for dialog actions.\n *\n * @usageNotes\n * ### Basic Usage\n * ```html\n * <eui-message-box #messageBox\n *   title=\"Confirm Action\"\n *   (accept)=\"onConfirm()\"\n *   (dismiss)=\"onCancel()\">\n *   Are you sure you want to proceed?\n * </eui-message-box>\n * ```\n *\n * ```typescript\n * @ViewChild('messageBox') messageBox: EuiMessageBoxComponent;\n *\n * showMessage() {\n *   this.messageBox.openMessageBox();\n * }\n * ```\n *\n * ### With Custom Footer\n * ```html\n * <eui-message-box title=\"Custom Actions\">\n *   <p>Message content</p>\n *   <eui-message-box-footer>\n *     <button euiButton>Custom Action</button>\n *   </eui-message-box-footer>\n * </eui-message-box>\n * ```\n *\n * ### Accessibility\n * - Modal traps focus within the dialog\n * - Escape key closes the dialog by default\n * - Accept/Dismiss buttons are keyboard accessible\n *\n * ### Notes\n * - Use `openMessageBox()` and `closeMessageBox()` methods to control visibility\n * - Supports draggable positioning with `isDraggable` input\n * - Variant styling (primary, danger, warning, etc.) via BaseStatesDirective\n */\n@Component({\n    selector: 'eui-message-box',\n    templateUrl: './eui-message-box.component.html',\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    encapsulation: ViewEncapsulation.None,\n    imports: [\n        TranslateModule,\n        PortalModule,\n        OverlayModule,\n        A11yModule,\n        DragDropModule,\n        ...EUI_BUTTON,\n        ...EUI_ICON,\n    ],\n    hostDirectives: [\n        {\n            directive: BaseStatesDirective,\n            inputs: [\n                'euiPrimary',\n                'euiSecondary',\n                'euiInfo',\n                'euiSuccess',\n                'euiWarning',\n                'euiDanger',\n                'euiVariant',\n            ],\n        },\n    ],\n})\nexport class EuiMessageBoxComponent implements AfterViewInit, OnDestroy {\n    /**\n     * Data attribute for e2e testing purposes.\n     * @default 'eui-dialog'\n     */\n    @Input() e2eAttr = 'eui-dialog';\n\n    /**\n     * Title text displayed in the message box header.\n     */\n    @Input() title: string;\n\n    /**\n     * Width of the message box.\n     * @default '33rem'\n     */\n    @Input() width = '33rem';\n\n    /**\n     * Height of the message box.\n     * @default 'auto'\n     */\n    @Input() height = 'auto';\n\n    /**\n     * Whether to show the accept/confirm button.\n     * @default true\n     */\n    @Input({ transform: booleanAttribute }) hasAcceptButton = true;\n\n    /**\n     * Whether to show the dismiss/cancel button.\n     * @default true\n     */\n    @Input({ transform: booleanAttribute }) hasDismissButton = true;\n\n    /**\n     * Label for the accept/confirm button. Can be a translation key.\n     * @default 'eui.OK'\n     */\n    @Input() acceptLabel = 'eui.OK';\n\n    /**\n     * Label for the dismiss/cancel button. Can be a translation key.\n     * @default 'eui.CANCEL'\n     */\n    @Input() dismissLabel = 'eui.CANCEL';\n\n    /**\n     * Whether to manually handle closing the dialog on dismiss button click.\n     * @default false\n     */\n    @Input({ transform: booleanAttribute }) isHandleCloseOnDismiss = false;\n\n    /**\n     * Whether to manually handle closing the dialog on close button click.\n     * @default false\n     */\n    @Input({ transform: booleanAttribute }) isHandleCloseOnClose = false;\n\n    /**\n     * Whether to manually handle closing the dialog on accept button click.\n     * @default false\n     */\n    @Input({ transform: booleanAttribute }) isHandleCloseOnAccept = false;\n\n    /**\n     * Whether the message box can be dragged around the screen.\n     * @default false\n     */\n    @Input({ transform: booleanAttribute }) isDraggable = false;\n\n    /**\n     * Whether to remove padding from the message box body.\n     * @default false\n     */\n    @Input({ transform: booleanAttribute }) hasNoBodyPadding = false;\n\n    /**\n     * Event emitted when the message box opens.\n     */\n    @Output() messageBoxOpen = new EventEmitter();\n\n    /**\n     * Event emitted when the message box closes.\n     */\n    @Output() messageBoxClose = new EventEmitter();\n\n    /**\n     * Event emitted when the dismiss/cancel button is clicked.\n     */\n    @Output() dismiss = new EventEmitter();\n\n    /**\n     * Event emitted when the accept/confirm button is clicked.\n     */\n    @Output() accept = new EventEmitter();\n\n    /**\n     * Reference to the template containing the message box content.\n     * This will be used to create a portal for the content section.\n     */\n    @ViewChild('templateRefContent') templateRefContent: TemplateRef<ElementRef>;\n\n    /**\n     * Reference to the template containing the message box footer.\n     * This will be used to create a portal for the footer section.\n     */\n    @ViewChild('templateRefFooter') templateRefFooter: TemplateRef<EuiMessageBoxFooterDirective>;\n\n    /**\n     * Reference to any custom footer content provided through the eui-message-box-footer directive.\n     * Forward reference is used to resolve the circular dependency between the component and directive.\n     */\n    @ContentChild(forwardRef(() => EuiMessageBoxFooterDirective)) euiMessageBoxFooterDirective: QueryList<EuiMessageBoxFooterDirective>;\n\n    baseStatesDirective = inject(BaseStatesDirective);\n    /**\n     * Content that will be displayed in the message box body.\n     * Can be either a simple string message or a TemplatePortal for more complex content.\n     */\n    public content: string | TemplatePortal;\n\n    /**\n     * Portal instance for the content section of the message box.\n     * Created from the templateRefContent template reference.\n     */\n    private templatePortalContent: TemplatePortal<ElementRef>;\n\n    /**\n     * Portal instance for the footer section of the message box.\n     * Created from the templateRefFooter template reference when a custom footer is provided.\n     */\n    private templatePortalFooter: TemplatePortal<EuiMessageBoxFooterDirective>;\n\n    /**\n     * Subject used for cleaning up subscriptions when the component is destroyed.\n     */\n    private destroy$: Subject<boolean> = new Subject<boolean>();\n    private viewContainerRef = inject(ViewContainerRef);\n    private euiMessageBoxService = inject(EuiMessageBoxService);\n\n    /**\n     * Lifecycle hook called after Angular has fully initialized the component's view.\n     * Creates the template portals for content and footer (if available).\n     */\n    ngAfterViewInit(): void {\n        this.templatePortalContent = new TemplatePortal(this.templateRefContent, this.viewContainerRef);\n\n        if (this.euiMessageBoxFooterDirective) {\n            this.templatePortalFooter = new TemplatePortal(this.templateRefFooter, this.viewContainerRef);\n        }\n    }\n\n    /**\n     * Lifecycle hook that's called when the component is destroyed.\n     * Cleans up any subscriptions to prevent memory leaks.\n     */\n    ngOnDestroy(): void {\n        this.destroy$.next(true);\n        this.destroy$.unsubscribe();\n    }\n\n    /**\n     * Opens the message box with the current configuration.\n     * This method configures and displays the message box using the EuiMessageBoxService.\n     */\n    public openMessageBox<HC, HCC, BC, BCC, FC, FCC>(): void {\n        const config: EuiDialogInterface<HC, HCC, BC, BCC, FC, FCC> = {\n            e2eAttr: this.e2eAttr,\n            title: this.title,\n            width: this.width,\n            height: this.height,\n            variant: this.baseStatesDirective.euiVariant.length > 0 ? this.baseStatesDirective.euiVariant : 'primary',\n            acceptLabel: this.acceptLabel,\n            dismissLabel: this.dismissLabel,\n            hasCloseButton: false,\n            hasAcceptButton: this.hasAcceptButton,\n            hasDismissButton: this.hasDismissButton,\n            hasClosedOnClickOutside: false,\n            hasClosedOnEscape: false,\n            isHandleCloseOnDismiss: this.isHandleCloseOnDismiss,\n            isHandleCloseOnClose: this.isHandleCloseOnClose,\n            isHandleCloseOnAccept: this.isHandleCloseOnAccept,\n            isHandleCloseOnClickOutside: false,\n            isHandleCloseOnEscape: false,\n            isDraggable: coerceBooleanProperty(this.isDraggable),\n            hasNoBodyPadding: coerceBooleanProperty(this.hasNoBodyPadding),\n            content: this.templatePortalContent,\n            footer: this.templatePortalFooter,\n            isMessageBox: true,\n            open: () => {\n                this.messageBoxOpen.emit();\n            },\n            close: () => {\n                this.messageBoxClose.emit();\n            },\n            dismiss: () => {\n                this.dismiss.emit();\n            },\n            accept: () => {\n                this.accept.emit();\n            },\n        };\n\n        this.euiMessageBoxService.openMessageBox(config);\n    }\n\n    /**\n     * Closes the currently open message box.\n     * This method uses the EuiMessageBoxService to close the dialog.\n     */\n    public closeMessageBox(): void {\n        this.euiMessageBoxService.closeMessageBox();\n    }\n}\n\n/* eslint-disable */\n@Directive({ selector: 'eui-message-box-footer' })\nexport class EuiMessageBoxFooterDirective {}\n/* eslint-enable */\n","<ng-template #templateRefContent>\n    <ng-content />\n</ng-template>\n<ng-template #templateRefFooter>\n    <ng-content select=\"eui-message-box-footer\" />\n</ng-template>\n","import { EuiDialogInterface } from '@eui/components/eui-dialog';\n\nexport class EuiMessageBoxConfig<HC, HCC, BC, BCC, FC, FCC> implements EuiDialogInterface<HC, HCC, BC, BCC, FC, FCC> {\n    e2eAttr = 'eui-message-box';\n    acceptLabel = 'eui.OK';\n    dismissLabel = 'eui.CANCEL';\n    variant: 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'danger' | 'accent' | string = 'primary';\n    width = '33rem';\n    height = 'auto';\n    hasCloseButton = false;\n    hasAcceptButton = true;\n    hasDismissButton = true;\n    hasClosedOnClickOutside = false;\n    hasClosedOnEscape = false;\n    isHandleCloseOnDismiss = false;\n    isHandleCloseOnClose = false;\n    isHandleCloseOnAccept = false;\n    isHandleCloseOnClickOutside = false;\n    isHandleCloseOnEscape = false;\n    hasFooter = true;\n    isMessageBox = true;\n    header = null;\n    headerComponent = null;\n\n    constructor(values: EuiDialogInterface<HC, HCC, BC, BCC, FC, FCC>) {\n        Object.assign(this, values);\n    }\n}\n\nexport class EuiMessageBoxComponentInstances<HC, BC, FC> {\n    headerComponent: HC = null;\n    bodyComponent: BC = null;\n    footerComponent: FC = null;\n}\n","import { EuiMessageBoxComponent, EuiMessageBoxFooterDirective } from './eui-message-box.component';\n\nexport const EUI_MESSAGE_BOX = [\n    EuiMessageBoxComponent,\n    EuiMessageBoxFooterDirective,\n] as const;\n\nexport * from './eui-message-box.component';\nexport * from './services/eui-message-box.service';\nexport * from './models/eui-message-box.config';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}