{"version":3,"file":"primeng-toast.mjs","sources":["../../src/toast/style/toaststyle.ts","../../src/toast/toast.ts","../../src/toast/primeng-toast.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = ({ dt }) => `\n.p-toast {\n    width: ${dt('toast.width')};\n    white-space: pre-line;\n    word-break: break-word;\n}\n\n.p-toast-message {\n    margin: 0 0 1rem 0;\n}\n\n.p-toast-message-icon {\n    flex-shrink: 0;\n    font-size: ${dt('toast.icon.size')};\n    width: ${dt('toast.icon.size')};\n    height: ${dt('toast.icon.size')};\n}\n\n.p-toast-message-content {\n    display: flex;\n    align-items: flex-start;\n    padding: ${dt('toast.content.padding')};\n    gap: ${dt('toast.content.gap')};\n}\n\n.p-toast-message-text {\n    flex: 1 1 auto;\n    display: flex;\n    flex-direction: column;\n    gap: ${dt('toast.text.gap')};\n}\n\n.p-toast-summary {\n    font-weight: ${dt('toast.summary.font.weight')};\n    font-size: ${dt('toast.summary.font.size')};\n}\n\n.p-toast-detail {\n    font-weight: ${dt('toast.detail.font.weight')};\n    font-size: ${dt('toast.detail.font.size')};\n}\n\n.p-toast-close-button {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    overflow: hidden;\n    position: relative;\n    cursor: pointer;\n    background: transparent;\n    transition: background ${dt('toast.transition.duration')}, color ${dt('toast.transition.duration')}, outline-color ${dt('toast.transition.duration')}, box-shadow ${dt('toast.transition.duration')};\n    outline-color: transparent;\n    color: inherit;\n    width: ${dt('toast.close.button.width')};\n    height: ${dt('toast.close.button.height')};\n    border-radius: ${dt('toast.close.button.border.radius')};\n    margin: -25% 0 0 0;\n    right: -25%;\n    padding: 0;\n    border: none;\n    user-select: none;\n}\n\n.p-toast-close-button:dir(rtl) {\n    margin: -25% 0 0 auto;\n    left: -25%;\n    right: auto;\n}\n\n.p-toast-message-info,\n.p-toast-message-success,\n.p-toast-message-warn,\n.p-toast-message-error,\n.p-toast-message-secondary,\n.p-toast-message-contrast {\n    border-width: ${dt('toast.border.width')};\n    border-style: solid;\n    backdrop-filter: blur(${dt('toast.blur')});\n    border-radius: ${dt('toast.border.radius')};\n}\n\n.p-toast-close-icon {\n    font-size: ${dt('toast.close.icon.size')};\n    width: ${dt('toast.close.icon.size')};\n    height: ${dt('toast.close.icon.size')};\n}\n\n.p-toast-close-button:focus-visible {\n    outline-width: ${dt('focus.ring.width')};\n    outline-style: ${dt('focus.ring.style')};\n    outline-offset: ${dt('focus.ring.offset')};\n}\n\n.p-toast-message-info {\n    background: ${dt('toast.info.background')};\n    border-color: ${dt('toast.info.border.color')};\n    color: ${dt('toast.info.color')};\n    box-shadow: ${dt('toast.info.shadow')};\n}\n\n.p-toast-message-info .p-toast-detail {\n    color: ${dt('toast.info.detail.color')};\n}\n\n.p-toast-message-info .p-toast-close-button:focus-visible {\n    outline-color: ${dt('toast.info.close.button.focus.ring.color')};\n    box-shadow: ${dt('toast.info.close.button.focus.ring.shadow')};\n}\n\n.p-toast-message-info .p-toast-close-button:hover {\n    background: ${dt('toast.info.close.button.hover.background')};\n}\n\n.p-toast-message-success {\n    background: ${dt('toast.success.background')};\n    border-color: ${dt('toast.success.border.color')};\n    color: ${dt('toast.success.color')};\n    box-shadow: ${dt('toast.success.shadow')};\n}\n\n.p-toast-message-success .p-toast-detail {\n    color: ${dt('toast.success.detail.color')};\n}\n\n.p-toast-message-success .p-toast-close-button:focus-visible {\n    outline-color: ${dt('toast.success.close.button.focus.ring.color')};\n    box-shadow: ${dt('toast.success.close.button.focus.ring.shadow')};\n}\n\n.p-toast-message-success .p-toast-close-button:hover {\n    background: ${dt('toast.success.close.button.hover.background')};\n}\n\n.p-toast-message-warn {\n    background: ${dt('toast.warn.background')};\n    border-color: ${dt('toast.warn.border.color')};\n    color: ${dt('toast.warn.color')};\n    box-shadow: ${dt('toast.warn.shadow')};\n}\n\n.p-toast-message-warn .p-toast-detail {\n    color: ${dt('toast.warn.detail.color')};\n}\n\n.p-toast-message-warn .p-toast-close-button:focus-visible {\n    outline-color: ${dt('toast.warn.close.button.focus.ring.color')};\n    box-shadow: ${dt('toast.warn.close.button.focus.ring.shadow')};\n}\n\n.p-toast-message-warn .p-toast-close-button:hover {\n    background: ${dt('toast.warn.close.button.hover.background')};\n}\n\n.p-toast-message-error {\n    background: ${dt('toast.error.background')};\n    border-color: ${dt('toast.error.border.color')};\n    color: ${dt('toast.error.color')};\n    box-shadow: ${dt('toast.error.shadow')};\n}\n\n.p-toast-message-error .p-toast-detail {\n    color: ${dt('toast.error.detail.color')};\n}\n\n.p-toast-message-error .p-toast-close-button:focus-visible {\n    outline-color: ${dt('toast.error.close.button.focus.ring.color')};\n    box-shadow: ${dt('toast.error.close.button.focus.ring.shadow')};\n}\n\n.p-toast-message-error .p-toast-close-button:hover {\n    background: ${dt('toast.error.close.button.hover.background')};\n}\n\n.p-toast-message-secondary {\n    background: ${dt('toast.secondary.background')};\n    border-color: ${dt('toast.secondary.border.color')};\n    color: ${dt('toast.secondary.color')};\n    box-shadow: ${dt('toast.secondary.shadow')};\n}\n\n.p-toast-message-secondary .p-toast-detail {\n    color: ${dt('toast.secondary.detail.color')};\n}\n\n.p-toast-message-secondary .p-toast-close-button:focus-visible {\n    outline-color: ${dt('toast.secondary.close.button.focus.ring.color')};\n    box-shadow: ${dt('toast.secondary.close.button.focus.ring.shadow')};\n}\n\n.p-toast-message-secondary .p-toast-close-button:hover {\n    background: ${dt('toast.secondary.close.button.hover.background')};\n}\n\n.p-toast-message-contrast {\n    background: ${dt('toast.contrast.background')};\n    border-color: ${dt('toast.contrast.border.color')};\n    color: ${dt('toast.contrast.color')};\n    box-shadow: ${dt('toast.contrast.shadow')};\n}\n\n.p-toast-message-contrast .p-toast-detail {\n    color: ${dt('toast.contrast.detail.color')};\n}\n\n.p-toast-message-contrast .p-toast-close-button:focus-visible {\n    outline-color: ${dt('toast.contrast.close.button.focus.ring.color')};\n    box-shadow: ${dt('toast.contrast.close.button.focus.ring.shadow')};\n}\n\n.p-toast-message-contrast .p-toast-close-button:hover {\n    background: ${dt('toast.contrast.close.button.hover.background')};\n}\n\n.p-toast-top-center {\n    transform: translateX(-50%);\n}\n\n.p-toast-bottom-center {\n    transform: translateX(-50%);\n}\n\n.p-toast-center {\n    min-width: 20vw;\n    transform: translate(-50%, -50%);\n}\n\n.p-toast-message-enter-from {\n    opacity: 0;\n    transform: translateY(50%);\n}\n\n.p-toast-message-leave-from {\n    max-height: 1000px;\n}\n\n.p-toast .p-toast-message.p-toast-message-leave-to {\n    max-height: 0;\n    opacity: 0;\n    margin-bottom: 0;\n    overflow: hidden;\n}\n\n.p-toast-message-enter-active {\n    transition: transform 0.3s, opacity 0.3s;\n}\n\n.p-toast-message-leave-active {\n    transition: max-height 0.45s cubic-bezier(0, 1, 0, 1), opacity 0.3s, margin-bottom 0.3s;\n}\n`;\n\n// Position\nconst inlineStyles = {\n    root: ({ instance }) => {\n        const { _position } = instance;\n\n        return {\n            position: 'fixed',\n            top: _position === 'top-right' || _position === 'top-left' || _position === 'top-center' ? '20px' : _position === 'center' ? '50%' : null,\n            right: (_position === 'top-right' || _position === 'bottom-right') && '20px',\n            bottom: (_position === 'bottom-left' || _position === 'bottom-right' || _position === 'bottom-center') && '20px',\n            left: _position === 'top-left' || _position === 'bottom-left' ? '20px' : _position === 'center' || _position === 'top-center' || _position === 'bottom-center' ? '50%' : null\n        };\n    }\n};\n\nconst classes = {\n    root: ({ instance }) => ({ 'p-toast p-component': true, [`p-toast-${instance._position}`]: !!instance._position }),\n    message: ({ instance }) => ({\n        'p-toast-message': true,\n        'p-toast-message-info': instance.message.severity === 'info' || instance.message.severity === undefined,\n        'p-toast-message-warn': instance.message.severity === 'warn',\n        'p-toast-message-error': instance.message.severity === 'error',\n        'p-toast-message-success': instance.message.severity === 'success',\n        'p-toast-message-secondary': instance.message.severity === 'secondary',\n        'p-toast-message-contrast': instance.message.severity === 'contrast'\n    }),\n    messageContent: 'p-toast-message-content',\n    messageIcon: ({ instance }) => ({\n        'p-toast-message-icon': true,\n        [`pi ${instance.message.icon}`]: !!instance.message.icon\n    }),\n    messageText: 'p-toast-message-text',\n    summary: 'p-toast-summary',\n    detail: 'p-toast-detail',\n    closeButton: 'p-toast-close-button',\n    closeIcon: ({ instance }) => ({\n        'p-toast-close-icon': true,\n        [`pi ${instance.message.closeIcon}`]: !!instance.message.closeIcon\n    })\n};\n\n@Injectable()\nexport class ToastStyle extends BaseStyle {\n    name = 'toast';\n\n    theme = theme;\n\n    classes = classes;\n\n    inlineStyles = inlineStyles;\n}\n\n/**\n *\n * Toast is used to display messages in an overlay.\n *\n * [Live Demo](https://www.primeng.org/toast/)\n *\n * @module toaststyle\n *\n */\nexport enum ToastClasses {\n    /**\n     * Class name of the root element\n     */\n    root = 'p-toast',\n    /**\n     * Class name of the message element\n     */\n    message = 'p-toast-message',\n    /**\n     * Class name of the message content element\n     */\n    messageContent = 'p-toast-message-content',\n    /**\n     * Class name of the message icon element\n     */\n    messageIcon = 'p-toast-message-icon',\n    /**\n     * Class name of the message text element\n     */\n    messageText = 'p-toast-message-text',\n    /**\n     * Class name of the summary element\n     */\n    summary = 'p-toast-summary',\n    /**\n     * Class name of the detail element\n     */\n    detail = 'p-toast-detail',\n    /**\n     * Class name of the close button element\n     */\n    closeButton = 'p-toast-close-button',\n    /**\n     * Class name of the close icon element\n     */\n    closeIcon = 'p-toast-close-icon'\n}\n\nexport interface ToastStyle extends BaseStyle {}\n","import { AnimationEvent, animate, animateChild, query, state, style, transition, trigger } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport {\n    AfterViewInit,\n    ChangeDetectionStrategy,\n    Component,\n    ContentChild,\n    ContentChildren,\n    ElementRef,\n    EventEmitter,\n    Input,\n    NgModule,\n    NgZone,\n    OnDestroy,\n    OnInit,\n    Output,\n    QueryList,\n    TemplateRef,\n    ViewChild,\n    ViewEncapsulation,\n    booleanAttribute,\n    inject,\n    numberAttribute\n} from '@angular/core';\nimport { isEmpty, setAttribute, uuid } from '@primeuix/utils';\nimport { MessageService, PrimeTemplate, SharedModule, ToastMessageOptions } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { CheckIcon, ExclamationTriangleIcon, InfoCircleIcon, TimesCircleIcon, TimesIcon } from 'primeng/icons';\nimport { ZIndexUtils } from 'primeng/utils';\nimport { Subscription } from 'rxjs';\nimport { ToastStyle } from './style/toaststyle';\nimport { ToastCloseEvent, ToastItemCloseEvent, ToastPositionType } from './toast.interface';\n\n@Component({\n    selector: 'p-toastItem',\n    standalone: true,\n    imports: [CommonModule, CheckIcon, ExclamationTriangleIcon, InfoCircleIcon, TimesIcon, TimesCircleIcon, SharedModule],\n    template: `\n        <div\n            #container\n            [attr.id]=\"message?.id\"\n            [class]=\"message?.styleClass\"\n            [ngClass]=\"cx('message')\"\n            [@messageState]=\"{\n                value: 'visible',\n                params: {\n                    showTransformParams: showTransformOptions,\n                    hideTransformParams: hideTransformOptions,\n                    showTransitionParams: showTransitionOptions,\n                    hideTransitionParams: hideTransitionOptions\n                }\n            }\"\n            (mouseenter)=\"onMouseEnter()\"\n            (mouseleave)=\"onMouseLeave()\"\n            role=\"alert\"\n            aria-live=\"assertive\"\n            aria-atomic=\"true\"\n            [attr.data-pc-name]=\"'toast'\"\n            [attr.data-pc-section]=\"'root'\"\n        >\n            @if (headlessTemplate) {\n                <ng-container *ngTemplateOutlet=\"headlessTemplate; context: { $implicit: message, closeFn: onCloseIconClick }\"></ng-container>\n            } @else {\n                <div [ngClass]=\"cx('messageContent')\" [class]=\"message?.contentStyleClass\" [attr.data-pc-section]=\"'content'\">\n                    <ng-container *ngIf=\"!template\">\n                        <span *ngIf=\"message.icon\" [ngClass]=\"cx('messageIcon')\"></span>\n                        <span [ngClass]=\"cx('messageIcon')\" *ngIf=\"!message.icon\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\">\n                            @switch (message.severity) {\n                                @case ('success') {\n                                    <CheckIcon [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\" />\n                                }\n                                @case ('info') {\n                                    <InfoCircleIcon [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\" />\n                                }\n                                @case ('error') {\n                                    <TimesCircleIcon [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\" />\n                                }\n                                @case ('warn') {\n                                    <ExclamationTriangleIcon [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\" />\n                                }\n                                @default {\n                                    <InfoCircleIcon [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'icon'\" />\n                                }\n                            }\n                        </span>\n                        <div [ngClass]=\"cx('messageText')\" [attr.data-pc-section]=\"'text'\">\n                            <div [ngClass]=\"cx('summary')\" [attr.data-pc-section]=\"'summary'\">\n                                {{ message.summary }}\n                            </div>\n                            <div [ngClass]=\"cx('detail')\" [attr.data-pc-section]=\"'detail'\">{{ message.detail }}</div>\n                        </div>\n                    </ng-container>\n                    <ng-container *ngTemplateOutlet=\"template; context: { $implicit: message }\"></ng-container>\n                    @if (message?.closable !== false) {\n                        <div>\n                            <button type=\"button\" [attr.class]=\"cx('closeButton')\" (click)=\"onCloseIconClick($event)\" (keydown.enter)=\"onCloseIconClick($event)\" [ariaLabel]=\"closeAriaLabel\" [attr.data-pc-section]=\"'closebutton'\" autofocus>\n                                @if (message.closeIcon) {\n                                    <span *ngIf=\"message.closeIcon\" [ngClass]=\"cx('closeIcon')\"></span>\n                                } @else {\n                                    <TimesIcon [ngClass]=\"cx('closeIcon')\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'closeicon'\" />\n                                }\n                            </button>\n                        </div>\n                    }\n                </div>\n            }\n        </div>\n    `,\n    animations: [\n        trigger('messageState', [\n            state(\n                'visible',\n                style({\n                    transform: 'translateY(0)',\n                    opacity: 1\n                })\n            ),\n            transition('void => *', [\n                style({\n                    transform: '{{showTransformParams}}',\n                    opacity: 0\n                }),\n                animate('{{showTransitionParams}}')\n            ]),\n            transition('* => void', [\n                animate(\n                    '{{hideTransitionParams}}',\n                    style({\n                        height: 0,\n                        opacity: 0,\n                        transform: '{{hideTransformParams}}'\n                    })\n                )\n            ])\n        ])\n    ],\n    encapsulation: ViewEncapsulation.None,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    providers: [ToastStyle]\n})\nexport class ToastItem extends BaseComponent implements AfterViewInit, OnDestroy {\n    @Input() message: ToastMessageOptions | null | undefined;\n\n    @Input({ transform: numberAttribute }) index: number | null | undefined;\n\n    @Input({ transform: numberAttribute }) life: number;\n\n    @Input() template: TemplateRef<any> | undefined;\n\n    @Input() headlessTemplate: TemplateRef<any> | undefined;\n\n    @Input() showTransformOptions: string | undefined;\n\n    @Input() hideTransformOptions: string | undefined;\n\n    @Input() showTransitionOptions: string | undefined;\n\n    @Input() hideTransitionOptions: string | undefined;\n\n    @Output() onClose: EventEmitter<ToastItemCloseEvent> = new EventEmitter();\n\n    @ViewChild('container') containerViewChild: ElementRef | undefined;\n\n    _componentStyle = inject(ToastStyle);\n\n    timeout: any;\n\n    constructor(private zone: NgZone) {\n        super();\n    }\n\n    ngAfterViewInit() {\n        super.ngAfterViewInit();\n        this.initTimeout();\n    }\n\n    initTimeout() {\n        if (!this.message?.sticky) {\n            this.zone.runOutsideAngular(() => {\n                this.timeout = setTimeout(\n                    () => {\n                        this.onClose.emit({\n                            index: <number>this.index,\n                            message: <ToastMessageOptions>this.message\n                        });\n                    },\n                    this.message?.life || this.life || 3000\n                );\n            });\n        }\n    }\n\n    clearTimeout() {\n        if (this.timeout) {\n            clearTimeout(this.timeout);\n            this.timeout = null;\n        }\n    }\n\n    onMouseEnter() {\n        this.clearTimeout();\n    }\n\n    onMouseLeave() {\n        this.initTimeout();\n    }\n\n    onCloseIconClick = (event: Event) => {\n        this.clearTimeout();\n\n        this.onClose.emit({\n            index: <number>this.index,\n            message: <ToastMessageOptions>this.message\n        });\n\n        event.preventDefault();\n    };\n\n    get closeAriaLabel() {\n        return this.config.translation.aria ? this.config.translation.aria.close : undefined;\n    }\n\n    ngOnDestroy() {\n        this.clearTimeout();\n        super.ngOnDestroy();\n    }\n}\n\n/**\n * Toast is used to display messages in an overlay.\n * @group Components\n */\n@Component({\n    selector: 'p-toast',\n    standalone: true,\n    imports: [CommonModule, ToastItem, SharedModule],\n    template: `\n        <div #container [ngClass]=\"cx('root')\" [ngStyle]=\"sx('root')\" [style]=\"style\" [class]=\"styleClass\">\n            <p-toastItem\n                *ngFor=\"let msg of messages; let i = index\"\n                [message]=\"msg\"\n                [index]=\"i\"\n                [life]=\"life\"\n                (onClose)=\"onMessageClose($event)\"\n                [template]=\"template || _template\"\n                [headlessTemplate]=\"headlessTemplate || _headlessTemplate\"\n                @toastAnimation\n                (@toastAnimation.start)=\"onAnimationStart($event)\"\n                (@toastAnimation.done)=\"onAnimationEnd($event)\"\n                [showTransformOptions]=\"showTransformOptions\"\n                [hideTransformOptions]=\"hideTransformOptions\"\n                [showTransitionOptions]=\"showTransitionOptions\"\n                [hideTransitionOptions]=\"hideTransitionOptions\"\n            ></p-toastItem>\n        </div>\n    `,\n    animations: [trigger('toastAnimation', [transition(':enter, :leave', [query('@*', animateChild())])])],\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    encapsulation: ViewEncapsulation.None,\n    providers: [ToastStyle]\n})\nexport class Toast extends BaseComponent implements OnInit, OnDestroy {\n    /**\n     * Key of the message in case message is targeted to a specific toast component.\n     * @group Props\n     */\n    @Input() key: string | undefined;\n    /**\n     * Whether to automatically manage layering.\n     * @group Props\n     */\n    @Input({ transform: booleanAttribute }) autoZIndex: boolean = true;\n    /**\n     * Base zIndex value to use in layering.\n     * @group Props\n     */\n    @Input({ transform: numberAttribute }) baseZIndex: number = 0;\n    /**\n     * The default time to display messages for in milliseconds.\n     * @group Props\n     */\n    @Input({ transform: numberAttribute }) life: number = 3000;\n    /**\n     * Inline style of the component.\n     * @group Props\n     */\n    @Input() style: { [klass: string]: any } | null | undefined;\n    /**\n     * Inline class of the component.\n     * @group Props\n     */\n    @Input() styleClass: string | undefined;\n\n    /**\n     * Position of the toast in viewport.\n     * @group Props\n     */\n    @Input() get position(): ToastPositionType {\n        return this._position;\n    }\n\n    set position(value: ToastPositionType) {\n        this._position = value;\n        this.cd.markForCheck();\n    }\n\n    /**\n     * It does not add the new message if there is already a toast displayed with the same content\n     * @group Props\n     */\n    @Input({ transform: booleanAttribute }) preventOpenDuplicates: boolean = false;\n    /**\n     * Displays only once a message with the same content.\n     * @group Props\n     */\n    @Input({ transform: booleanAttribute }) preventDuplicates: boolean = false;\n    /**\n     * Transform options of the show animation.\n     * @group Props\n     */\n    @Input() showTransformOptions: string = 'translateY(100%)';\n    /**\n     * Transform options of the hide animation.\n     * @group Props\n     */\n    @Input() hideTransformOptions: string = 'translateY(-100%)';\n    /**\n     * Transition options of the show animation.\n     * @group Props\n     */\n    @Input() showTransitionOptions: string = '300ms ease-out';\n    /**\n     * Transition options of the hide animation.\n     * @group Props\n     */\n    @Input() hideTransitionOptions: string = '250ms ease-in';\n    /**\n     * Object literal to define styles per screen size.\n     * @group Props\n     */\n    @Input() breakpoints: { [key: string]: any } | undefined;\n    /**\n     * Callback to invoke when a message is closed.\n     * @param {ToastCloseEvent} event - custom close event.\n     * @group Emits\n     */\n    @Output() onClose: EventEmitter<ToastCloseEvent> = new EventEmitter<ToastCloseEvent>();\n    /**\n     * Custom template of message.\n     * @group Templates\n     */\n    @ContentChild('message') template: TemplateRef<any> | undefined;\n    /**\n     * Custom headless template.\n     * @group Templates\n     */\n    @ContentChild('headless') headlessTemplate: TemplateRef<any> | undefined;\n\n    @ViewChild('container') containerViewChild: ElementRef | undefined;\n\n    messageSubscription: Subscription | undefined;\n\n    clearSubscription: Subscription | undefined;\n\n    messages: ToastMessageOptions[] | null | undefined;\n\n    messagesArchieve: ToastMessageOptions[] | undefined;\n\n    _position: ToastPositionType = 'top-right';\n\n    messageService: MessageService = inject(MessageService);\n\n    _componentStyle = inject(ToastStyle);\n\n    styleElement: any;\n\n    id: string = uuid('pn_id_');\n\n    @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n    ngOnInit() {\n        super.ngOnInit();\n\n        this.messageSubscription = this.messageService.messageObserver.subscribe((messages) => {\n            if (messages) {\n                if (Array.isArray(messages)) {\n                    const filteredMessages = messages.filter((m) => this.canAdd(m));\n                    this.add(filteredMessages);\n                } else if (this.canAdd(messages)) {\n                    this.add([messages]);\n                }\n            }\n        });\n\n        this.clearSubscription = this.messageService.clearObserver.subscribe((key) => {\n            if (key) {\n                if (this.key === key) {\n                    this.messages = null;\n                }\n            } else {\n                this.messages = null;\n            }\n\n            this.cd.markForCheck();\n        });\n    }\n\n    _template: TemplateRef<any> | undefined;\n\n    _headlessTemplate: TemplateRef<any> | undefined;\n\n    ngAfterContentInit() {\n        this.templates?.forEach((item) => {\n            switch (item.getType()) {\n                case 'message':\n                    this._template = item.template;\n                    break;\n                case 'headless':\n                    this._headlessTemplate = item.template;\n                    break;\n\n                default:\n                    this._template = item.template;\n                    break;\n            }\n        });\n    }\n\n    ngAfterViewInit() {\n        super.ngAfterViewInit();\n        if (this.breakpoints) {\n            this.createStyle();\n        }\n    }\n\n    add(messages: ToastMessageOptions[]): void {\n        this.messages = this.messages ? [...this.messages, ...messages] : [...messages];\n\n        if (this.preventDuplicates) {\n            this.messagesArchieve = this.messagesArchieve ? [...this.messagesArchieve, ...messages] : [...messages];\n        }\n\n        this.cd.markForCheck();\n    }\n\n    canAdd(message: ToastMessageOptions): boolean {\n        let allow = this.key === message.key;\n\n        if (allow && this.preventOpenDuplicates) {\n            allow = !this.containsMessage(this.messages!, message);\n        }\n\n        if (allow && this.preventDuplicates) {\n            allow = !this.containsMessage(this.messagesArchieve!, message);\n        }\n\n        return allow;\n    }\n\n    containsMessage(collection: ToastMessageOptions[], message: ToastMessageOptions): boolean {\n        if (!collection) {\n            return false;\n        }\n\n        return (\n            collection.find((m) => {\n                return m.summary === message.summary && m.detail == message.detail && m.severity === message.severity;\n            }) != null\n        );\n    }\n\n    onMessageClose(event: ToastItemCloseEvent) {\n        this.messages?.splice(event.index, 1);\n\n        this.onClose.emit({\n            message: event.message\n        });\n\n        this.cd.detectChanges();\n    }\n\n    onAnimationStart(event: AnimationEvent) {\n        if (event.fromState === 'void') {\n            this.renderer.setAttribute(this.containerViewChild?.nativeElement, this.id, '');\n            if (this.autoZIndex && this.containerViewChild?.nativeElement.style.zIndex === '') {\n                ZIndexUtils.set('modal', this.containerViewChild?.nativeElement, this.baseZIndex || this.config.zIndex.modal);\n            }\n        }\n    }\n\n    onAnimationEnd(event: AnimationEvent) {\n        if (event.toState === 'void') {\n            if (this.autoZIndex && isEmpty(this.messages)) {\n                ZIndexUtils.clear(this.containerViewChild?.nativeElement);\n            }\n        }\n    }\n\n    createStyle() {\n        if (!this.styleElement) {\n            this.styleElement = this.renderer.createElement('style');\n            this.styleElement.type = 'text/css';\n            this.renderer.appendChild(this.document.head, this.styleElement);\n            let innerHTML = '';\n            for (let breakpoint in this.breakpoints) {\n                let breakpointStyle = '';\n                for (let styleProp in this.breakpoints[breakpoint]) {\n                    breakpointStyle += styleProp + ':' + this.breakpoints[breakpoint][styleProp] + ' !important;';\n                }\n                innerHTML += `\n                    @media screen and (max-width: ${breakpoint}) {\n                        .p-toast[${this.id}] {\n                           ${breakpointStyle}\n                        }\n                    }\n                `;\n            }\n\n            this.renderer.setProperty(this.styleElement, 'innerHTML', innerHTML);\n            setAttribute(this.styleElement, 'nonce', this.config?.csp()?.nonce);\n        }\n    }\n\n    destroyStyle() {\n        if (this.styleElement) {\n            this.renderer.removeChild(this.document.head, this.styleElement);\n            this.styleElement = null;\n        }\n    }\n\n    ngOnDestroy() {\n        if (this.messageSubscription) {\n            this.messageSubscription.unsubscribe();\n        }\n\n        if (this.containerViewChild && this.autoZIndex) {\n            ZIndexUtils.clear(this.containerViewChild.nativeElement);\n        }\n\n        if (this.clearSubscription) {\n            this.clearSubscription.unsubscribe();\n        }\n\n        this.destroyStyle();\n        super.ngOnDestroy();\n    }\n}\n\n@NgModule({\n    imports: [Toast, SharedModule],\n    exports: [Toast, SharedModule]\n})\nexport class ToastModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}