import { __decorate } from "tslib";
import { Component, ChangeDetectionStrategy } from '@angular/core';
import { ReactiveFormsModule } from '@angular/forms';
import { MatRadioModule } from '@angular/material/radio';
import { LayoutEditorMetadata } from '@anglr/dynamic/layout-editor';
import { CastPipesModule, HostDisplayBlockStyle } from '@anglr/common';
import { FormPipesModule } from '@anglr/common/forms';
import { FormComponentBase, FormComponentControlSAPipe } from '@anglr/dynamic/form';
import { RelationsEditorMetadata } from '@anglr/dynamic/relations-editor';
import { MaterialRadioLayoutMetadataLoader, MaterialRadioRelationsMetadataLoader } from './radio.metadata';
import * as i0 from "@angular/core";
import * as i1 from "@anglr/common/forms";
import * as i2 from "@anglr/common";
import * as i3 from "@angular/forms";
import * as i4 from "@angular/material/radio";
/**
 * Component used for displaying material radio
 */
let MaterialRadioSAComponent = class MaterialRadioSAComponent extends FormComponentBase {
};
MaterialRadioSAComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: MaterialRadioSAComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
MaterialRadioSAComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: MaterialRadioSAComponent, isStandalone: true, selector: "material-radio", usesInheritance: true, ngImport: i0, template: "<mat-radio-group [formControl]=\"control|asFormControl|asRequired\">\n    <mat-radio-button value=\"1\">{{options?.options}}</mat-radio-button>\n</mat-radio-group>", styles: [":host{display: block;}"], dependencies: [{ kind: "ngmodule", type: FormPipesModule }, { kind: "pipe", type: i1.AsFormControlPipe, name: "asFormControl" }, { kind: "ngmodule", type: CastPipesModule }, { kind: "pipe", type: i2.AsRequiredTypePipe, name: "asRequired" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i4.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i4.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex", "id", "name", "aria-label", "aria-labelledby", "aria-describedby", "checked", "value", "labelPosition", "disabled", "required", "color"], outputs: ["change"], exportAs: ["matRadioButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
MaterialRadioSAComponent = __decorate([
    RelationsEditorMetadata(MaterialRadioRelationsMetadataLoader),
    LayoutEditorMetadata(MaterialRadioLayoutMetadataLoader)
], MaterialRadioSAComponent);
export { MaterialRadioSAComponent };
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: MaterialRadioSAComponent, decorators: [{
            type: Component,
            args: [{ selector: 'material-radio', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
                        FormPipesModule,
                        CastPipesModule,
                        FormComponentControlSAPipe,
                        ReactiveFormsModule,
                        MatRadioModule,
                    ], template: "<mat-radio-group [formControl]=\"control|asFormControl|asRequired\">\n    <mat-radio-button value=\"1\">{{options?.options}}</mat-radio-button>\n</mat-radio-group>", styles: [":host{display: block;}"] }]
        }] });
//# sourceMappingURL=radio.component.js.map