import { Component, ContentChild, HostBinding, Input } from '@angular/core';
import { TranslateService } from '@ngx-translate/core';
import { EclLanguageService } from '../../../services/ecl-language.service';
import { EclSiteHeaderLoginComponent } from '../common/ecl-site-header-login.component';
import { EclSiteHeaderSearchComponent } from '../common/ecl-site-header-search.component';
import { EclSiteHeaderLanguageComponent } from '../common/ecl-site-header-language.component';
import { EclSiteHeaderComponent } from '../common/ecl-site-header.component';
import { EclSiteHeaderHarmonisedLanguageComponent } from './language/ecl-site-header-harmonised-language.component';
import { EclSiteHeaderHarmonisedLoginComponent } from './login/ecl-site-header-harmonised-login.component';
import { EclSiteHeaderHarmonisedSearchComponent } from './search/ecl-site-header-harmonised-search.component';
import * as i0 from "@angular/core";
import * as i1 from "../../../services/ecl-language.service";
import * as i2 from "@ngx-translate/core";
import * as i3 from "@angular/common";
import * as i4 from "../../ecl-link/ecl-link.directive";
export class EclSiteHeaderHarmonisedComponent extends EclSiteHeaderComponent {
    constructor(eclLanguageService, translateService) {
        super(eclLanguageService, translateService);
        this.eclLanguageService = eclLanguageService;
        this.translateService = translateService;
    }
    get cssClasses() {
        return [
            super.getCssClasses('ecl-site-header-harmonised'),
            `ecl-site-header-harmonised--group${this.group}`,
        ].join(' ').trim();
    }
}
/** @nocollapse */ EclSiteHeaderHarmonisedComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: EclSiteHeaderHarmonisedComponent, deps: [{ token: i1.EclLanguageService }, { token: i2.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
/** @nocollapse */ EclSiteHeaderHarmonisedComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: EclSiteHeaderHarmonisedComponent, selector: "ecl-site-header-harmonised", inputs: { logoUrl: "logoUrl" }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "eclLoginComponent", first: true, predicate: EclSiteHeaderHarmonisedLoginComponent, descendants: true }, { propertyName: "eclSearchComponent", first: true, predicate: EclSiteHeaderHarmonisedSearchComponent, descendants: true }, { propertyName: "eclLanguageComponent", first: true, predicate: EclSiteHeaderHarmonisedLanguageComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ecl-site-header-harmonised__container ecl-container\">\n    <div *ngIf=\"isGroup('1') || isGroup('2')\" class=\"ecl-site-header-harmonised__top\">\n        <a eclLink \n            variant=\"standalone\" \n            class=\"ecl-site-header-harmonised__logo-link\"\n            href=\"https://ec.europa.eu/info/index_{{ languageCode }}\"\n            (click)=\"onECLogoClick($event)\" \n            [attr.aria-label]=\"'ecl.footer.EUROPEAN-COMMISSION' | translate\">\n\n            <ng-container *ngTemplateOutlet=\"contentEnvironment\"></ng-container>\n\n            <img alt=\"European Commission logo\" \n                [attr.title]=\"'ecl.footer.EUROPEAN-COMMISSION' | translate\" \n                class=\"ecl-site-header-harmonised__logo-image\" \n                src=\"./assets/images/ecl/ec/logo/logo-ec--{{ languageCode }}.svg\"/>\n        </a>\n        <ng-content select=\"ecl-site-header-harmonised-action\"></ng-content>\n    </div>\n\n    <div *ngIf=\"isGroup('3')\" class=\"ecl-site-header-harmonised__top\">\n        <a eclLink \n            *ngIf=\"logoUrl\"\n            variant=\"standalone\" \n            class=\"ecl-site-header-harmonised__logo-link\" \n            href=\"#\" \n            aria-label=\"Site name\"\n            (click)=\"onECLogoClick($event)\">\n            <img alt=\"Site logo\" \n                    title=\"Site name\" \n                    class=\"ecl-site-header-harmonised__logo-image\" \n                    [src]=\"logoUrl\"/>\n            <ng-container *ngTemplateOutlet=\"contentEnvironment\"></ng-container>\n        </a>\n        <div class=\"ecl-site-header-harmonised__site-name\">{{ siteName }}</div>\n    </div>\n</div>\n\n<ng-content select=\"ecl-site-header-harmonised-banner-top\"></ng-content>\n\n<div *ngIf=\"isGroup('1') && siteName\" class=\"ecl-site-header-harmonised__banner\">\n    <div class=\"ecl-container\">\n        <div class=\"ecl-site-header-harmonised__site-name\">{{ siteName }}</div>\n    </div>\n</div>\n\n<ng-content select=\"ecl-menu\"></ng-content>\n<ng-content select=\"ecl-language-list\"></ng-content>\n\n<ng-template #contentEnvironment><ng-content select=\"[eclSiteHeaderEnvironment]\"></ng-content></ng-template>", styles: [":host{display:block}\n"], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.EclLinkDirective, selector: "[eclLink]", inputs: ["variant", "isNegative", "isNoVisited"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "translate": i2.TranslatePipe } });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: EclSiteHeaderHarmonisedComponent, decorators: [{
            type: Component,
            args: [{ selector: 'ecl-site-header-harmonised', styles: [`
        :host {
            display: block;
        }
    `], template: "<div class=\"ecl-site-header-harmonised__container ecl-container\">\n    <div *ngIf=\"isGroup('1') || isGroup('2')\" class=\"ecl-site-header-harmonised__top\">\n        <a eclLink \n            variant=\"standalone\" \n            class=\"ecl-site-header-harmonised__logo-link\"\n            href=\"https://ec.europa.eu/info/index_{{ languageCode }}\"\n            (click)=\"onECLogoClick($event)\" \n            [attr.aria-label]=\"'ecl.footer.EUROPEAN-COMMISSION' | translate\">\n\n            <ng-container *ngTemplateOutlet=\"contentEnvironment\"></ng-container>\n\n            <img alt=\"European Commission logo\" \n                [attr.title]=\"'ecl.footer.EUROPEAN-COMMISSION' | translate\" \n                class=\"ecl-site-header-harmonised__logo-image\" \n                src=\"./assets/images/ecl/ec/logo/logo-ec--{{ languageCode }}.svg\"/>\n        </a>\n        <ng-content select=\"ecl-site-header-harmonised-action\"></ng-content>\n    </div>\n\n    <div *ngIf=\"isGroup('3')\" class=\"ecl-site-header-harmonised__top\">\n        <a eclLink \n            *ngIf=\"logoUrl\"\n            variant=\"standalone\" \n            class=\"ecl-site-header-harmonised__logo-link\" \n            href=\"#\" \n            aria-label=\"Site name\"\n            (click)=\"onECLogoClick($event)\">\n            <img alt=\"Site logo\" \n                    title=\"Site name\" \n                    class=\"ecl-site-header-harmonised__logo-image\" \n                    [src]=\"logoUrl\"/>\n            <ng-container *ngTemplateOutlet=\"contentEnvironment\"></ng-container>\n        </a>\n        <div class=\"ecl-site-header-harmonised__site-name\">{{ siteName }}</div>\n    </div>\n</div>\n\n<ng-content select=\"ecl-site-header-harmonised-banner-top\"></ng-content>\n\n<div *ngIf=\"isGroup('1') && siteName\" class=\"ecl-site-header-harmonised__banner\">\n    <div class=\"ecl-container\">\n        <div class=\"ecl-site-header-harmonised__site-name\">{{ siteName }}</div>\n    </div>\n</div>\n\n<ng-content select=\"ecl-menu\"></ng-content>\n<ng-content select=\"ecl-language-list\"></ng-content>\n\n<ng-template #contentEnvironment><ng-content select=\"[eclSiteHeaderEnvironment]\"></ng-content></ng-template>" }]
        }], ctorParameters: function () { return [{ type: i1.EclLanguageService }, { type: i2.TranslateService }]; }, propDecorators: { logoUrl: [{
                type: Input
            }], cssClasses: [{
                type: HostBinding,
                args: ['class']
            }], eclLoginComponent: [{
                type: ContentChild,
                args: [EclSiteHeaderHarmonisedLoginComponent]
            }], eclSearchComponent: [{
                type: ContentChild,
                args: [EclSiteHeaderHarmonisedSearchComponent]
            }], eclLanguageComponent: [{
                type: ContentChild,
                args: [EclSiteHeaderHarmonisedLanguageComponent]
            }] } });
//# sourceMappingURL=data:application/json;base64, 