import { booleanAttribute, ChangeDetectionStrategy, Component, HostBinding, Input, 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 "@angular/common";
export class EuimMediaHeaderComponent {
    get cssClasses() {
        return this.getCssClasses();
    }
    constructor(baseStatesDirective) {
        this.baseStatesDirective = baseStatesDirective;
        this.euimNoGradient = false;
        this.euimTwoSidesGradient = false;
        this.hasBlur = false;
    }
    getCssClasses() {
        let size;
        if (this.baseStatesDirective.euimSizeM) {
            size = 'm';
        }
        if (this.baseStatesDirective.euimSizeS) {
            size = 's';
        }
        if (this.baseStatesDirective.euimSizeL) {
            size = 'l';
        }
        return [
            this.baseStatesDirective.getCssClasses('euim-media-header'),
            size ? `euim-media-header__size-${size}` : '',
        ].join(' ').trim();
    }
    /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuimMediaHeaderComponent, deps: [{ token: i1.BaseStatesDirective }], target: i0.ɵɵFactoryTarget.Component }); }
    /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EuimMediaHeaderComponent, selector: "euim-media-header", inputs: { euimNoGradient: ["euimNoGradient", "euimNoGradient", booleanAttribute], euimTwoSidesGradient: ["euimTwoSidesGradient", "euimTwoSidesGradient", booleanAttribute], hasBlur: ["hasBlur", "hasBlur", booleanAttribute] }, host: { properties: { "class": "this.cssClasses" } }, hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["euimSizeM", "euimSizeM", "euimSizeS", "euimSizeS", "euimSizeL", "euimSizeL"] }], ngImport: i0, template: "<ng-content select=\"[euimMediaHeaderImage]\"></ng-content>\n@if (!euimNoGradient) {\n  <div [ngClass]=\"euimTwoSidesGradient ? 'euim-media-header__gradient euim-media-header__gradient--two-sides' : 'euim-media-header__gradient'\">\n  </div>\n}\n@if (hasBlur) {\n    <div class=\"euim-media-header__blur\">\n    </div>\n}\n<div class=\"euim-media-header__content\">\n  <ng-content></ng-content>\n</div>\n", styles: [".euim-media-header{position:relative;display:flex}.euim-media-header__content{position:absolute;bottom:var(--eui-s-m);color:var(--eui-c-neutral-min);padding-left:var(--eui-s-m);padding-right:var(--eui-s-m)}.euim-media-header__content .euim-media-header__title{font:var(--eui-f-l-bold-compact);color:var(--eui-c-neutral-min)}.euim-media-header__content .euim-media-header__sub-title{color:var(--eui-c-neutral-min);font:var(--eui-f-m-compact)}.euim-media-header__content:has(.euim-media-header__custom-content){padding:0;top:0;right:0;width:100%;height:100%;overflow:auto}.euim-media-header__content:has(.euim-align-center){top:50%;right:50%;transform:translate(50%,-50%);width:100%;bottom:auto;text-align:center}.euim-media-header__blur{position:absolute;inset:0;background-color:#0003;-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px)}.euim-media-header__gradient{width:100%;height:100%;background:linear-gradient(to bottom,#fff0,#000);background-blend-mode:multiply;background-size:100%;position:absolute;inset:0}.euim-media-header__gradient--two-sides{background:linear-gradient(180deg,#000,#fff0 46.35%,#000 86.98%)!important}.euim-media-header__image{width:100%;height:100%;object-fit:cover}.euim-media-header__title{font:var(--eui-f-xl-bold-compact);color:var(--eui-c-neutral-min)}.euim-media-header__sub-title{color:var(--eui-c-neutral-min);font:var(--eui-f-m-compact)}.euim-media-header__title+.euim-media-header__sub-title{margin-top:var(--eui-s-2xs)}.euim-media-header p,.euim-media-header span{margin:0}.euim-media-header span[euimMediaHeaderTitle],.euim-media-header span[euimMediaHeaderSubTitle]{display:block}.euim-media-header__size-s{height:calc(var(--eui-s-m) * 8)}.euim-media-header__size-m{height:calc(var(--eui-s-m) * 16)}.euim-media-header__size-l{height:calc(var(--eui-s-m) * 25)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuimMediaHeaderComponent, decorators: [{
            type: Component,
            args: [{ selector: 'euim-media-header', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, hostDirectives: [
                        {
                            directive: BaseStatesDirective,
                            inputs: [
                                'euimSizeM',
                                'euimSizeS',
                                'euimSizeL',
                            ],
                        },
                    ], template: "<ng-content select=\"[euimMediaHeaderImage]\"></ng-content>\n@if (!euimNoGradient) {\n  <div [ngClass]=\"euimTwoSidesGradient ? 'euim-media-header__gradient euim-media-header__gradient--two-sides' : 'euim-media-header__gradient'\">\n  </div>\n}\n@if (hasBlur) {\n    <div class=\"euim-media-header__blur\">\n    </div>\n}\n<div class=\"euim-media-header__content\">\n  <ng-content></ng-content>\n</div>\n", styles: [".euim-media-header{position:relative;display:flex}.euim-media-header__content{position:absolute;bottom:var(--eui-s-m);color:var(--eui-c-neutral-min);padding-left:var(--eui-s-m);padding-right:var(--eui-s-m)}.euim-media-header__content .euim-media-header__title{font:var(--eui-f-l-bold-compact);color:var(--eui-c-neutral-min)}.euim-media-header__content .euim-media-header__sub-title{color:var(--eui-c-neutral-min);font:var(--eui-f-m-compact)}.euim-media-header__content:has(.euim-media-header__custom-content){padding:0;top:0;right:0;width:100%;height:100%;overflow:auto}.euim-media-header__content:has(.euim-align-center){top:50%;right:50%;transform:translate(50%,-50%);width:100%;bottom:auto;text-align:center}.euim-media-header__blur{position:absolute;inset:0;background-color:#0003;-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px)}.euim-media-header__gradient{width:100%;height:100%;background:linear-gradient(to bottom,#fff0,#000);background-blend-mode:multiply;background-size:100%;position:absolute;inset:0}.euim-media-header__gradient--two-sides{background:linear-gradient(180deg,#000,#fff0 46.35%,#000 86.98%)!important}.euim-media-header__image{width:100%;height:100%;object-fit:cover}.euim-media-header__title{font:var(--eui-f-xl-bold-compact);color:var(--eui-c-neutral-min)}.euim-media-header__sub-title{color:var(--eui-c-neutral-min);font:var(--eui-f-m-compact)}.euim-media-header__title+.euim-media-header__sub-title{margin-top:var(--eui-s-2xs)}.euim-media-header p,.euim-media-header span{margin:0}.euim-media-header span[euimMediaHeaderTitle],.euim-media-header span[euimMediaHeaderSubTitle]{display:block}.euim-media-header__size-s{height:calc(var(--eui-s-m) * 8)}.euim-media-header__size-m{height:calc(var(--eui-s-m) * 16)}.euim-media-header__size-l{height:calc(var(--eui-s-m) * 25)}\n"] }]
        }], ctorParameters: () => [{ type: i1.BaseStatesDirective }], propDecorators: { euimNoGradient: [{
                type: Input,
                args: [{ transform: booleanAttribute }]
            }], euimTwoSidesGradient: [{
                type: Input,
                args: [{ transform: booleanAttribute }]
            }], hasBlur: [{
                type: Input,
                args: [{ transform: booleanAttribute }]
            }], cssClasses: [{
                type: HostBinding,
                args: ['class']
            }] } });
//# sourceMappingURL=data:application/json;base64, 