@funidata/ngx-fudis
Version:
Funidata Design System.
69 lines (68 loc) • 2.77 kB
TypeScript
import { EventEmitter, OnInit, OnDestroy } from '@angular/core';
import { FudisIdService } from '../../../../services/id/id.service';
import { CheckboxGroupComponent } from '../checkbox-group.component';
import { FudisCheckboxChangeEvent } from '../../../../types/forms';
import { FormControl } from '@angular/forms';
import * as i0 from "@angular/core";
export declare class CheckboxGroupOptionComponent implements OnInit, OnDestroy {
private _idService;
protected _checkboxGroup: CheckboxGroupComponent<object>;
constructor(_idService: FudisIdService, _checkboxGroup: CheckboxGroupComponent<object>);
/**
* HTML input element of checkbox
*/
private _inputRef;
/**
* Control name for this checkbox from FormGroup. Required if FormGroup is given to the parent.
* Used to link each Checkbox with their Checkbox Group parent's FormGroup.
*/
controlName: string;
/**
* Provide FormControl for each checkbox, when you do not provide FormGroup for the parent
* Checkbox Group.
*/
control: FormControl<boolean | null>;
/**
* Visible label of checkbox
*/
label: string;
/**
* Id for single checkbox. By default generated.
*/
id: string;
/**
* Emits changed Checkbox and its control.
*/
handleChange: EventEmitter<FudisCheckboxChangeEvent>;
/**
* If checkbox has focus
*/
protected _focused: boolean;
/**
* Boolean for syncing, if this Checkbox had 'control' property provided and parent had no
* 'formGroup' provided.
*/
private _controlAddedToParent;
ngOnInit(): void;
ngOnDestroy(): void;
/**
* For toggling checkbox
*/
protected _onChange(): void;
/**
* When focusing out from checkbox, determine if next focus target is outside of the same checkbox
* group. If yes, then tell parent Checkbox Group, that focus has moved outside. --> If there are
* validation errors, those should become visible.
*/
protected _onBlur(event: FocusEvent): void;
/**
* When Checkbox is focused
*/
protected _onFocus(event: FocusEvent): void;
/**
* If control is disabled, prevent toggling it.
*/
_checkboxClick(event: Event): void;
static ɵfac: i0.ɵɵFactoryDeclaration<CheckboxGroupOptionComponent, [null, { host: true; }]>;
static ɵcmp: i0.ɵɵComponentDeclaration<CheckboxGroupOptionComponent, "fudis-checkbox-group-option", never, { "controlName": { "alias": "controlName"; "required": false; }; "control": { "alias": "control"; "required": false; }; "label": { "alias": "label"; "required": true; }; "id": { "alias": "id"; "required": false; }; }, { "handleChange": "handleChange"; }, never, never, false, never>;
}