import { Component, ElementRef, Inject, Injector, Optional, ViewEncapsulation } from '@angular/core';
import { NgStyle } from '@angular/common';
import { MatExpansionModule } from '@angular/material/expansion';
import { MatIconModule } from '@angular/material/icon';
import { MAT_FORM_FIELD_DEFAULT_OPTIONS } from '@angular/material/form-field';
import { OTranslatePipe } from '../../../pipes/o-translate.pipe';
import { OContainerCollapsibleComponent } from '../o-container-collapsible-component.class';
import * as i0 from "@angular/core";
import * as i1 from "@angular/material/expansion";
import * as i2 from "@angular/material/icon";
export class OColumnCollapsibleComponent extends OContainerCollapsibleComponent {
    constructor(elRef, injector, matFormDefaultOption) {
        super(elRef, injector, matFormDefaultOption);
        this.elRef = elRef;
        this.injector = injector;
        this.matFormDefaultOption = matFormDefaultOption;
    }
    static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: OColumnCollapsibleComponent, deps: [{ token: i0.ElementRef }, { token: i0.Injector }, { token: MAT_FORM_FIELD_DEFAULT_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
    static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: OColumnCollapsibleComponent, isStandalone: true, selector: "o-column-collapsible", host: { properties: { "class.o-column-collapsible": "true", "class.o-appearance-outline": "isAppearanceOutline()", "class.o-appearance-outline-title": "hasTitleInAppearanceOutline()" } }, usesInheritance: true, ngImport: i0, template: "<mat-expansion-panel #expPanel [expanded]=\"expanded\" class=\"o-container\" (opened)=\"updateInnerHeight(null)\" (closed)=\"updateInnerHeight(0)\">\n  <mat-expansion-panel-header #containerTitle [expandedHeight]=\"expandedHeight\" [collapsedHeight]=\"collapsedHeight\">\n    <mat-panel-title class=\"o-container-title o-flex-row o-layout-align-start-center\">\n      @if (icon) {\n        <mat-icon>{{ icon }}</mat-icon>\n      }\n      @if (title) {\n        <span>{{ title | oTranslate }}</span>\n      }\n    </mat-panel-title>\n    <mat-panel-description class=\"o-flex-row o-layout-align-start-center\">\n      <span>{{ description | oTranslate }}</span>\n    </mat-panel-description>\n  </mat-expansion-panel-header>\n  <div #containerContent id=\"innerCol\" [ngStyle]=\"layoutAlignStyles\" [style.gap]=\"layoutGap\"\n    class=\"o-container-scroll o-scroll o-flex-column o-flex-grow\">\n    <ng-content></ng-content>\n  </div>\n</mat-expansion-panel>\n@if (isAppearanceOutline()) {\n  <div #oContainerOutline [class.o-container-outline-expanded]=\"expPanel.expanded\" class=\"o-container-outline\">\n    <div class=\"o-container-outline-start\"></div>\n    <div class=\"o-container-outline-gap-title\"></div>\n    <div class=\"o-container-outline-gap-empty1\"></div>\n    <div class=\"o-container-outline-gap-description\"></div>\n    <div class=\"o-container-outline-gap-empty2\"></div>\n    <div class=\"o-container-outline-gap-icon\"></div>\n    <div class=\"o-container-outline-end\"></div>\n  </div>\n}\n", dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: MatExpansionModule }, { kind: "component", type: i1.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["hideToggle", "togglePosition"], outputs: ["afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: i1.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["expandedHeight", "collapsedHeight", "tabIndex"] }, { kind: "directive", type: i1.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "directive", type: i1.MatExpansionPanelDescription, selector: "mat-panel-description" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: OTranslatePipe, name: "oTranslate" }], encapsulation: i0.ViewEncapsulation.None }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: OColumnCollapsibleComponent, decorators: [{
            type: Component,
            args: [{ standalone: true, imports: [NgStyle, MatExpansionModule, MatIconModule, OTranslatePipe], selector: 'o-column-collapsible', encapsulation: ViewEncapsulation.None, host: {
                        '[class.o-column-collapsible]': 'true',
                        '[class.o-appearance-outline]': 'isAppearanceOutline()',
                        '[class.o-appearance-outline-title]': 'hasTitleInAppearanceOutline()'
                    }, template: "<mat-expansion-panel #expPanel [expanded]=\"expanded\" class=\"o-container\" (opened)=\"updateInnerHeight(null)\" (closed)=\"updateInnerHeight(0)\">\n  <mat-expansion-panel-header #containerTitle [expandedHeight]=\"expandedHeight\" [collapsedHeight]=\"collapsedHeight\">\n    <mat-panel-title class=\"o-container-title o-flex-row o-layout-align-start-center\">\n      @if (icon) {\n        <mat-icon>{{ icon }}</mat-icon>\n      }\n      @if (title) {\n        <span>{{ title | oTranslate }}</span>\n      }\n    </mat-panel-title>\n    <mat-panel-description class=\"o-flex-row o-layout-align-start-center\">\n      <span>{{ description | oTranslate }}</span>\n    </mat-panel-description>\n  </mat-expansion-panel-header>\n  <div #containerContent id=\"innerCol\" [ngStyle]=\"layoutAlignStyles\" [style.gap]=\"layoutGap\"\n    class=\"o-container-scroll o-scroll o-flex-column o-flex-grow\">\n    <ng-content></ng-content>\n  </div>\n</mat-expansion-panel>\n@if (isAppearanceOutline()) {\n  <div #oContainerOutline [class.o-container-outline-expanded]=\"expPanel.expanded\" class=\"o-container-outline\">\n    <div class=\"o-container-outline-start\"></div>\n    <div class=\"o-container-outline-gap-title\"></div>\n    <div class=\"o-container-outline-gap-empty1\"></div>\n    <div class=\"o-container-outline-gap-description\"></div>\n    <div class=\"o-container-outline-gap-empty2\"></div>\n    <div class=\"o-container-outline-gap-icon\"></div>\n    <div class=\"o-container-outline-end\"></div>\n  </div>\n}\n" }]
        }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Injector }, { type: undefined, decorators: [{
                    type: Optional
                }, {
                    type: Inject,
                    args: [MAT_FORM_FIELD_DEFAULT_OPTIONS]
                }] }] });
//# sourceMappingURL=data:application/json;base64, 