govbr-ds-angular
Version:
Implementação em Angular do Design System GovBR.
88 lines (87 loc) • 3.27 kB
TypeScript
import { AfterViewInit, EventEmitter } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { SelectOption } from '../../models/select.model';
import * as i0 from "@angular/core";
/**
* Componente MultiSelectComponent é responsável por exibir um seletor múltiplo de itens.
* Implementa a interface ControlValueAccessor para integração com formulários Angular.
* @example
* <app-multi-select [label]="'Selecione Itens'" [id]="'multiSelect1'" [(ngModel)]="selectedItems"></app-multi-select>
*
* @public
* {@link https://www.gov.br/ds/components/select?tab=desenvolvedor|Documentação oficial}
*/
export declare class MultiSelectComponent implements AfterViewInit, ControlValueAccessor {
/**
* Rótulo do seletor múltiplo.
* @type {string}
* @required
*/
label: string;
/**
* ID do seletor múltiplo.
* @type {string}
* @required
*/
id: string;
/**
* Placeholder do campo de entrada.
* @type {string}
* @default 'Selecione o item'
*/
placeholder: string;
/**
* Dica de uso para o campo de entrada.
* @type {string}
*/
hint: string;
/**
* Indica se o seletor múltiplo está desabilitado.
* @type {boolean}
* @default false
*/
disabled: boolean;
/**
* Dados de opções do seletor múltiplo.
* @type {SelectOption[]}
*/
options: SelectOption[];
/**
* Evento emitido quando os itens selecionados mudam.
* @type {EventEmitter<Array<string>>}
*/
selectedEvent: EventEmitter<Array<string>>;
/** Instância do componente BRSelect. */
instance: any;
protected _value: Array<string>;
/** Obtém o valor do seletor múltiplo. */
get value(): Array<string>;
/** Define o valor do seletor múltiplo. */
set value(val: Array<string>);
protected _touched: () => void;
protected _change: (value: Array<string>) => void;
private brSelect;
private renderer;
constructor();
/**
* Método do ciclo de vida do Angular chamado após a visualização ser inicializada.
* Inicializa a instância do componente BRSelect e popula os itens selecionados.
* @internal
*/
ngAfterViewInit(): void;
/**
* Popula os itens selecionados no seletor.
* @internal
*/
private _populateItensSelected;
private _resetOptions;
setSelected(): void;
writeValue(value: Array<string>): void;
setDisabledState(disabled: boolean): void;
registerOnChange(fn: (value: Array<string>) => void): void;
registerOnTouched(fn: () => void): void;
onBlur(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<MultiSelectComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<MultiSelectComponent, "app-multi-select", never, { "label": { "alias": "label"; "required": true; }; "id": { "alias": "id"; "required": true; }; "placeholder": { "alias": "placeholder"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "options": { "alias": "options"; "required": false; }; }, { "selectedEvent": "selectedEvent"; }, never, ["*"], true, never>;
static ngAcceptInputType_disabled: unknown;
}