import { __decorate } from "tslib";
import { Component, ChangeDetectionStrategy } from '@angular/core';
import { ReactiveFormsModule } from '@angular/forms';
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 { CheckboxLayoutMetadataLoader, CheckboxRelationsMetadataLoader } from './checkbox.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";
/**
 * Component used for displaying  checkbox
 */
let CheckboxSAComponent = class CheckboxSAComponent extends FormComponentBase {
};
CheckboxSAComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: CheckboxSAComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
CheckboxSAComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: CheckboxSAComponent, isStandalone: true, selector: "form-checkbox", usesInheritance: true, ngImport: i0, template: "<label><input type=\"checkbox\" [formControl]=\"control|asFormControl|asRequired\">{{options?.label}}</label>", 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.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
CheckboxSAComponent = __decorate([
    RelationsEditorMetadata(CheckboxRelationsMetadataLoader),
    LayoutEditorMetadata(CheckboxLayoutMetadataLoader)
], CheckboxSAComponent);
export { CheckboxSAComponent };
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: CheckboxSAComponent, decorators: [{
            type: Component,
            args: [{ selector: 'form-checkbox', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
                        FormPipesModule,
                        CastPipesModule,
                        FormComponentControlSAPipe,
                        ReactiveFormsModule,
                    ], template: "<label><input type=\"checkbox\" [formControl]=\"control|asFormControl|asRequired\">{{options?.label}}</label>", styles: [":host{display: block;}"] }]
        }] });
//# sourceMappingURL=checkbox.component.js.map