import * as i0 from '@angular/core';
import { Component, Inject, Optional, NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { PROP_STRING, register, StylableComponent, APPLY_STYLES_TYPE, styler, provideAsWidgetRef, WmComponentsModule } from '@wm/components/base';

const registerProps = () => {
    register('wm-header', new Map([
        ['name', PROP_STRING],
        ['class', PROP_STRING],
        ['content', PROP_STRING],
        ['hint', PROP_STRING],
        ['arialabel', PROP_STRING]
    ]));
};

const _c0 = ["wmHeader", ""];
const DEFAULT_CLS = 'app-header clearfix';
const WIDGET_CONFIG = {
    widgetType: 'wm-header',
    hostClass: DEFAULT_CLS
};
class HeaderComponent extends StylableComponent {
    static { this.initializeProps = registerProps(); }
    constructor(inj, explicitContext) {
        super(inj, WIDGET_CONFIG, explicitContext);
        styler(this.nativeElement, this, APPLY_STYLES_TYPE.CONTAINER);
    }
    static { this.ɵfac = function HeaderComponent_Factory(t) { return new (t || HeaderComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject('EXPLICIT_CONTEXT', 8)); }; }
    static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: HeaderComponent, selectors: [["", "wmHeader", ""]], exportAs: ["wmHeader"], features: [i0.ɵɵProvidersFeature([
                provideAsWidgetRef(HeaderComponent)
            ]), i0.ɵɵInheritDefinitionFeature], attrs: _c0, decls: 4, vars: 0, consts: [["data-role", "page-left-panel-icon", 1, "app-header-menu"], ["href", "javascript:void(0)", "aria-expanded", "false", "aria-label", "Expand Left navigation", "role", "button", 1, "app-header-action"], [1, "wi", "wi-menu"], ["partial-container-target", "", 1, "app-header-container"]], template: function HeaderComponent_Template(rf, ctx) { if (rf & 1) {
            i0.ɵɵelementStart(0, "div", 0)(1, "a", 1);
            i0.ɵɵelement(2, "i", 2);
            i0.ɵɵelementEnd()();
            i0.ɵɵelement(3, "div", 3);
        } }, encapsulation: 2 }); }
}
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(HeaderComponent, [{
        type: Component,
        args: [{ selector: '[wmHeader]', providers: [
                    provideAsWidgetRef(HeaderComponent)
                ], exportAs: 'wmHeader', template: "<div class=\"app-header-menu\" data-role=\"page-left-panel-icon\">\n    <a class=\"app-header-action\" href=\"javascript:void(0)\" aria-expanded=\"false\" aria-label=\"Expand Left navigation\" role=\"button\">\n        <i class=\"wi wi-menu\"></i>\n    </a>\n</div>\n<div class=\"app-header-container\" partial-container-target></div>\n" }]
    }], () => [{ type: i0.Injector }, { type: undefined, decorators: [{
                type: Inject,
                args: ['EXPLICIT_CONTEXT']
            }, {
                type: Optional
            }] }], null); })();
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(HeaderComponent, { className: "HeaderComponent", filePath: "header.component.ts", lineNumber: 20 }); })();

const components = [
    HeaderComponent
];
class HeaderModule {
    static { this.ɵfac = function HeaderModule_Factory(t) { return new (t || HeaderModule)(); }; }
    static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: HeaderModule }); }
    static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule,
            WmComponentsModule] }); }
}
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(HeaderModule, [{
        type: NgModule,
        args: [{
                imports: [
                    CommonModule,
                    WmComponentsModule
                ],
                declarations: [...components],
                exports: [...components]
            }]
    }], null, null); })();
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(HeaderModule, { declarations: [HeaderComponent], imports: [CommonModule,
        WmComponentsModule], exports: [HeaderComponent] }); })();

/**
 * Generated bundle index. Do not edit.
 */

export { HeaderComponent, HeaderModule };
//# sourceMappingURL=index.mjs.map
