{"version":3,"file":"taiga-ui-core-portals-alert.mjs","sources":["../../../projects/core/portals/alert/alert.directive.ts","../../../projects/core/portals/alert/alert.service.ts","../../../projects/core/portals/alert/taiga-ui-core-portals-alert.ts"],"sourcesContent":["import {\n    ChangeDetectionStrategy,\n    Component,\n    Directive,\n    ViewEncapsulation,\n} from '@angular/core';\nimport {TUI_VERSION} from '@taiga-ui/cdk/constants';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {injectContext} from '@taiga-ui/polymorpheus';\n\nexport interface TuiPositionOptions {\n    readonly block: 'end' | 'start';\n    readonly inline: 'center' | 'end' | 'start';\n}\n\n@Component({\n    template: '',\n    styles: `\n        [data-tui-version='${TUI_VERSION}'] {\n            @import './alert.style.less';\n        }\n    `,\n    encapsulation: ViewEncapsulation.None,\n    changeDetection: ChangeDetectionStrategy.OnPush,\n    exportAs: `tui-alert-${TUI_VERSION}`,\n})\nclass Styles {}\n\n@Directive({\n    host: {\n        'data-tui-version': TUI_VERSION,\n        role: 'alert',\n        tuiAlert: '',\n        '[attr.data-block]': 'context.block',\n        '[attr.data-inline]': 'context.inline',\n    },\n})\nexport class TuiAlertDirective {\n    protected readonly nothing = tuiWithStyles(Styles);\n    protected readonly context = injectContext<TuiPositionOptions>();\n}\n","import {type ComponentRef, inject, Injectable} from '@angular/core';\nimport {TuiPortal} from '@taiga-ui/cdk/portals';\nimport {TuiPopupService} from '@taiga-ui/core/portals/popup';\nimport {type PolymorpheusComponent} from '@taiga-ui/polymorpheus';\n\n@Injectable()\nexport abstract class TuiAlertService<T, K = void> extends TuiPortal<T, K> {\n    private readonly concurrency: number;\n    private readonly current = new Map<unknown, ComponentRef<unknown>>();\n    private readonly queue = new Set<PolymorpheusComponent<unknown>>();\n\n    constructor(concurrency: number, service = inject(TuiPopupService)) {\n        super(service);\n        this.concurrency = Math.min(concurrency, 5);\n    }\n\n    protected override add(component: PolymorpheusComponent<unknown>): () => void {\n        if (this.current.size < this.concurrency) {\n            this.current.set(component, this.service.add(component));\n        } else {\n            this.queue.add(component);\n        }\n\n        return () => {\n            this.current.get(component)?.destroy();\n            this.current.delete(component);\n            this.queue.delete(component);\n\n            const [next] = this.queue;\n\n            if (this.current.size < this.concurrency && next) {\n                this.current.set(next, this.service.add(next));\n                this.queue.delete(next);\n            }\n        };\n    }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}