import { ChangeDetectionStrategy, Component, HostBinding, ViewEncapsulation } from '@angular/core';
import { BaseStatesDirective } from '../base-states.directive';
import * as i0 from "@angular/core";
import * as i1 from "../base-states.directive";
import * as i2 from "@ionic/angular";
/**
 * @deprecated It will be removed on v20 release. Use {@link EuimAlertMessageComponent} instead.
 */
export class EuimMessageComponent {
    get icon() {
        switch (this.baseStatesDirective.color) {
            case 'warning':
                return 'alert-circle';
            case 'danger':
                return 'close-circle';
            case 'success':
                return 'checkmark-circle';
            default:
                return 'information-circle';
        }
    }
    get cssClasses() {
        return this.getCssClasses();
    }
    constructor(baseStatesDirective) {
        this.baseStatesDirective = baseStatesDirective;
    }
    getCssClasses() {
        return [
            this.baseStatesDirective.getCssClasses('euim-message'),
            this.baseStatesDirective.color !== 'warning' &&
                this.baseStatesDirective.color !== 'danger' &&
                this.baseStatesDirective.color !== 'success' &&
                this.baseStatesDirective.color !== 'info' ? 'euim-message--info' : '',
        ].join(' ');
    }
    /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuimMessageComponent, deps: [{ token: i1.BaseStatesDirective }], target: i0.ɵɵFactoryTarget.Component }); }
    /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: EuimMessageComponent, selector: "euim-message", host: { properties: { "class": "this.cssClasses" } }, hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["color", "color"] }], ngImport: i0, template: "<div class=\"euim-message__wrappericon\">\n    <ion-icon [name]=\"icon\" class=\"euim-message__icon\"></ion-icon>\n</div>\n<div class=\"euim-message__wrapper\">\n    <ng-content select=\"euim-message-title\"></ng-content>\n    <ng-content></ng-content>\n</div>\n", styles: [".euim-message{border-width:2px;border-style:solid;display:flex;padding:var(--eui-s-m)}.euim-message__wrappericon{width:var(--eui-is-m);height:var(--eui-is-m);padding:0;margin:0}.euim-message__icon{padding:0;margin:0;width:var(--eui-is-m);height:var(--eui-is-m)}.euim-message__wrapper{margin-left:var(--eui-s-xs)}.euim-message--danger{border-color:var(--eui-c-danger-dark)}.euim-message--danger ion-icon{color:var(--eui-c-danger-dark)}.euim-message--info{border-color:var(--eui-c-info)}.euim-message--info ion-icon{color:var(--eui-c-info)}.euim-message--success{border-color:var(--eui-c-success-dark)}.euim-message--success ion-icon{color:var(--eui-c-success-dark)}.euim-message--warning{border-color:var(--eui-c-warning)}.euim-message--warning ion-icon{color:var(--eui-c-warning)}.euim-message-title{display:flex;align-items:center;font:var(--eui-f-m-bold-compact);padding:0;margin:0 0 var(--eui-s-xs)}\n"], dependencies: [{ kind: "component", type: i2.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuimMessageComponent, decorators: [{
            type: Component,
            args: [{ selector: 'euim-message', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, hostDirectives: [
                        {
                            directive: BaseStatesDirective,
                            inputs: [
                                'color',
                            ],
                        },
                    ], template: "<div class=\"euim-message__wrappericon\">\n    <ion-icon [name]=\"icon\" class=\"euim-message__icon\"></ion-icon>\n</div>\n<div class=\"euim-message__wrapper\">\n    <ng-content select=\"euim-message-title\"></ng-content>\n    <ng-content></ng-content>\n</div>\n", styles: [".euim-message{border-width:2px;border-style:solid;display:flex;padding:var(--eui-s-m)}.euim-message__wrappericon{width:var(--eui-is-m);height:var(--eui-is-m);padding:0;margin:0}.euim-message__icon{padding:0;margin:0;width:var(--eui-is-m);height:var(--eui-is-m)}.euim-message__wrapper{margin-left:var(--eui-s-xs)}.euim-message--danger{border-color:var(--eui-c-danger-dark)}.euim-message--danger ion-icon{color:var(--eui-c-danger-dark)}.euim-message--info{border-color:var(--eui-c-info)}.euim-message--info ion-icon{color:var(--eui-c-info)}.euim-message--success{border-color:var(--eui-c-success-dark)}.euim-message--success ion-icon{color:var(--eui-c-success-dark)}.euim-message--warning{border-color:var(--eui-c-warning)}.euim-message--warning ion-icon{color:var(--eui-c-warning)}.euim-message-title{display:flex;align-items:center;font:var(--eui-f-m-bold-compact);padding:0;margin:0 0 var(--eui-s-xs)}\n"] }]
        }], ctorParameters: () => [{ type: i1.BaseStatesDirective }], propDecorators: { cssClasses: [{
                type: HostBinding,
                args: ['class']
            }] } });
//# sourceMappingURL=data:application/json;base64, 