{"version":3,"file":"ironsource-fusion-ui-components-notification-common-base.mjs","sources":["../../../projects/fusion-ui/components/notification/common/base/notification.base.component.ts","../../../projects/fusion-ui/components/notification/common/base/ironsource-fusion-ui-components-notification-common-base.ts"],"sourcesContent":["import {AfterViewInit, Directive, ElementRef, EventEmitter, Inject, Input, Output, Renderer2} from '@angular/core';\nimport {DOCUMENT} from '@angular/common';\nimport {NotificationService} from '@ironsource/fusion-ui/components/notification/common/services';\nimport {Notification, NotificationType} from '@ironsource/fusion-ui/components/notification/common/entities';\nimport {isFunction} from '@ironsource/fusion-ui/utils';\nimport {BehaviorSubject} from 'rxjs';\nimport {IconData} from '@ironsource/fusion-ui/components/icon/common/entities';\n\n@Directive()\nexport abstract class NotificationBaseComponent implements AfterViewInit {\n    @Input() data: Notification = {\n        type: NotificationType.Basic,\n        title: '',\n        content: '',\n        shown: false\n    };\n    // eslint-disable-next-line\n    @Output() onClose = new EventEmitter();\n\n    closeIconName$ = new BehaviorSubject<IconData>({iconName: 'close', iconVersion: 'v2'});\n\n    get notificationType(): string {\n        return NotificationType[this.data.type].toLowerCase();\n    }\n\n    constructor(\n        @Inject(DOCUMENT) private document: Document,\n        private notificationService: NotificationService,\n        private elRef: ElementRef,\n        private renderer: Renderer2\n    ) {}\n\n    ngAfterViewInit() {\n        this.renderer.appendChild(this.document.body, this.elRef.nativeElement);\n    }\n\n    close() {\n        this.notificationService.hideNotification();\n        this.onClose.emit(this.elRef.nativeElement);\n    }\n\n    secondaryButtonClicked(): void {\n        if (this.data && this.data.buttons && this.data.buttons.secondary && isFunction(this.data.buttons.secondary.onClick)) {\n            this.data.buttons.secondary.onClick();\n        } else {\n            this.close();\n        }\n    }\n\n    primaryButtonClicked(): void {\n        if (this.data && isFunction(this.data.buttons.primary.onClick)) {\n            this.data.buttons.primary.onClick();\n        } else {\n            this.close();\n        }\n    }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}