import { CommonModule } from '@angular/common';
import { Component, Input } from '@angular/core';
import { MatGridListModule } from '@angular/material/grid-list';
import { MatIconModule } from '@angular/material/icon';
import * as i0 from "@angular/core";
import * as i1 from "@angular/common";
import * as i2 from "@angular/material/icon";
export class FieldGroupComponent {
    constructor() {
        this.collapsible = false;
        this.collapsed = false;
    }
    headerClickHandler() {
        this.collapsed = !this.collapsed;
    }
    static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FieldGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
    static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FieldGroupComponent, isStandalone: true, selector: "app-field-group", inputs: { name: "name", collapsible: "collapsible", instructions: "instructions", childrenTemplate: "childrenTemplate" }, ngImport: i0, template: "<div class=\"field-group-container\">\n  <div *ngIf=\"name\" class=\"field-group-heading\">\n    <span *ngIf=\"collapsible; else no_collapse\" id=\"field-group-header\" class=\"field-group-header\" (click)=\"headerClickHandler()\">\n      <mat-icon *ngIf=\"collapsed; else down_arrow\" aria-hidden=\"false\" aria-label=\"Arrow Right\" fontIcon=\"keyboard_arrow_right\"></mat-icon>\n      <ng-template #down_arrow>\n        <mat-icon aria-hidden=\"false\" aria-label=\"Arrow Down\" fontIcon=\"keyboard_arrow_down\"></mat-icon>\n      </ng-template>\n      <b>{{ name }}</b>\n    </span>\n    <ng-template #no_collapse>\n      <span>{{ name }}</span>\n    </ng-template>\n  </div>\n\n  <div *ngIf=\"instructions && instructions !== 'none'\" class=\"field-group-instructions\">\n    <div key=\"instructions\" id=\"instruction-text\" [innerHTML]=\"instructions\"></div>\n  </div>\n  <div *ngIf=\"!collapsed\" class=\"field-group-content\">\n    <ng-container [ngTemplateOutlet]=\"childrenTemplate\"></ng-container>\n  </div>\n</div>\n", styles: [".field-group-container .field-group-heading{padding-top:8px;padding-bottom:8px;font-weight:700}.field-group-container .field-group-heading .field-group-header{gap:5px;display:flex;align-items:center;cursor:pointer}.field-group-container .field-group-instructions{padding:5px 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: MatGridListModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FieldGroupComponent, decorators: [{
            type: Component,
            args: [{ selector: 'app-field-group', standalone: true, imports: [CommonModule, MatGridListModule, MatIconModule], template: "<div class=\"field-group-container\">\n  <div *ngIf=\"name\" class=\"field-group-heading\">\n    <span *ngIf=\"collapsible; else no_collapse\" id=\"field-group-header\" class=\"field-group-header\" (click)=\"headerClickHandler()\">\n      <mat-icon *ngIf=\"collapsed; else down_arrow\" aria-hidden=\"false\" aria-label=\"Arrow Right\" fontIcon=\"keyboard_arrow_right\"></mat-icon>\n      <ng-template #down_arrow>\n        <mat-icon aria-hidden=\"false\" aria-label=\"Arrow Down\" fontIcon=\"keyboard_arrow_down\"></mat-icon>\n      </ng-template>\n      <b>{{ name }}</b>\n    </span>\n    <ng-template #no_collapse>\n      <span>{{ name }}</span>\n    </ng-template>\n  </div>\n\n  <div *ngIf=\"instructions && instructions !== 'none'\" class=\"field-group-instructions\">\n    <div key=\"instructions\" id=\"instruction-text\" [innerHTML]=\"instructions\"></div>\n  </div>\n  <div *ngIf=\"!collapsed\" class=\"field-group-content\">\n    <ng-container [ngTemplateOutlet]=\"childrenTemplate\"></ng-container>\n  </div>\n</div>\n", styles: [".field-group-container .field-group-heading{padding-top:8px;padding-bottom:8px;font-weight:700}.field-group-container .field-group-heading .field-group-header{gap:5px;display:flex;align-items:center;cursor:pointer}.field-group-container .field-group-instructions{padding:5px 0}\n"] }]
        }], propDecorators: { name: [{
                type: Input
            }], collapsible: [{
                type: Input
            }], instructions: [{
                type: Input
            }], childrenTemplate: [{
                type: Input
            }] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1zZGstY29tcG9uZW50cy9zcmMvbGliL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9maWVsZC1ncm91cC9maWVsZC1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL2ZpZWxkLWdyb3VwL2ZpZWxkLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFTdkQsTUFBTSxPQUFPLG1CQUFtQjtJQVBoQztRQVNXLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBSTdCLGNBQVMsR0FBRyxLQUFLLENBQUM7S0FLbkI7SUFIQyxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDbkMsQ0FBQzsrR0FWVSxtQkFBbUI7bUdBQW5CLG1CQUFtQixxTUNaaEMsd2dDQXFCQSxnVkRYWSxZQUFZLHlTQUFFLGlCQUFpQiw4QkFBRSxhQUFhOzs0RkFFN0MsbUJBQW1CO2tCQVAvQixTQUFTOytCQUNFLGlCQUFpQixjQUdmLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxpQkFBaUIsRUFBRSxhQUFhLENBQUM7OEJBR2hELElBQUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRHcmlkTGlzdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2dyaWQtbGlzdCc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1maWVsZC1ncm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWVsZC1ncm91cC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpZWxkLWdyb3VwLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdEdyaWRMaXN0TW9kdWxlLCBNYXRJY29uTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZEdyb3VwQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbmFtZT86IHN0cmluZztcbiAgQElucHV0KCkgY29sbGFwc2libGUgPSBmYWxzZTtcbiAgQElucHV0KCkgaW5zdHJ1Y3Rpb25zOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGNoaWxkcmVuVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgY29sbGFwc2VkID0gZmFsc2U7XG5cbiAgaGVhZGVyQ2xpY2tIYW5kbGVyKCkge1xuICAgIHRoaXMuY29sbGFwc2VkID0gIXRoaXMuY29sbGFwc2VkO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmllbGQtZ3JvdXAtY29udGFpbmVyXCI+XG4gIDxkaXYgKm5nSWY9XCJuYW1lXCIgY2xhc3M9XCJmaWVsZC1ncm91cC1oZWFkaW5nXCI+XG4gICAgPHNwYW4gKm5nSWY9XCJjb2xsYXBzaWJsZTsgZWxzZSBub19jb2xsYXBzZVwiIGlkPVwiZmllbGQtZ3JvdXAtaGVhZGVyXCIgY2xhc3M9XCJmaWVsZC1ncm91cC1oZWFkZXJcIiAoY2xpY2spPVwiaGVhZGVyQ2xpY2tIYW5kbGVyKClcIj5cbiAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImNvbGxhcHNlZDsgZWxzZSBkb3duX2Fycm93XCIgYXJpYS1oaWRkZW49XCJmYWxzZVwiIGFyaWEtbGFiZWw9XCJBcnJvdyBSaWdodFwiIGZvbnRJY29uPVwia2V5Ym9hcmRfYXJyb3dfcmlnaHRcIj48L21hdC1pY29uPlxuICAgICAgPG5nLXRlbXBsYXRlICNkb3duX2Fycm93PlxuICAgICAgICA8bWF0LWljb24gYXJpYS1oaWRkZW49XCJmYWxzZVwiIGFyaWEtbGFiZWw9XCJBcnJvdyBEb3duXCIgZm9udEljb249XCJrZXlib2FyZF9hcnJvd19kb3duXCI+PC9tYXQtaWNvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8Yj57eyBuYW1lIH19PC9iPlxuICAgIDwvc3Bhbj5cbiAgICA8bmctdGVtcGxhdGUgI25vX2NvbGxhcHNlPlxuICAgICAgPHNwYW4+e3sgbmFtZSB9fTwvc3Bhbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cblxuICA8ZGl2ICpuZ0lmPVwiaW5zdHJ1Y3Rpb25zICYmIGluc3RydWN0aW9ucyAhPT0gJ25vbmUnXCIgY2xhc3M9XCJmaWVsZC1ncm91cC1pbnN0cnVjdGlvbnNcIj5cbiAgICA8ZGl2IGtleT1cImluc3RydWN0aW9uc1wiIGlkPVwiaW5zdHJ1Y3Rpb24tdGV4dFwiIFtpbm5lckhUTUxdPVwiaW5zdHJ1Y3Rpb25zXCI+PC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiIWNvbGxhcHNlZFwiIGNsYXNzPVwiZmllbGQtZ3JvdXAtY29udGVudFwiPlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2hpbGRyZW5UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19