UNPKG

@govbr-ds/webcomponents

Version:

Biblioteca de Web Components baseado no GovBR-DS

77 lines (76 loc) 2.97 kB
/** * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/upload?tab=designer). * * @slot default - Texto personalizado para o botão de upload. Se não fornecido, será exibido "Selecione o arquivo" como texto padrão. * Use este slot para personalizar o texto do botão de acordo com o contexto do upload, por exemplo: "Anexar documentos", * "Enviar imagens", etc. */ export declare class Upload { /** * Identificador único. * Caso não seja fornecido, um ID gerado automaticamente será usado. */ readonly customId: string; /** * Referência ao elemento host do componente. * Utilize esta propriedade para acessar e manipular o elemento do DOM associado ao componente. */ el: HTMLBrUploadElement; /** * Tipos de arquivo permitidos (ex: 'image/*'). * Esta propriedade define quais tipos de arquivos podem ser selecionados para upload. */ accept: string; /** * Rótulo principal do campo de upload. * Este texto ajuda usuários de leitores de tela a identificarem o propósito do upload. * Exemplos: "Anexar comprovante", "Enviar foto do documento". * * @default "Envio de arquivo" */ label: string; /** * Evento emitido quando um arquivo é selecionado. * Este estado armazena os arquivos que foram selecionados pelo usuário. */ filesSelected: FileList | null; /** * Referência ao elemento de arquivo selecionado. * Este estado armazena o arquivo que foi selecionado para upload. */ file: File | null; /** * Indica se o componente está desativado. * Quando definido como `true`, o campo de upload se torna não interativo, * impedindo que o usuário selecione ou envie arquivos. * Isso é útil para controlar a interação do usuário em situações específicas, * como durante o carregamento de dados ou quando o formulário está em um estado inválido. */ disabled: boolean; /** * Define o estado visual da mensagem. * Os possíveis valores são: * - 'info': Mensagem informativa. * - 'warning': Mensagem de aviso. * - 'danger': Mensagem de erro ou alerta. * - 'success': Mensagem de sucesso. * O valor padrão é 'info'. */ state: 'info' | 'warning' | 'danger' | 'success'; /** * Indica se o componente permite a seleção de múltiplos arquivos. * Quando definido como `true`, o usuário pode selecionar mais de um arquivo para upload. */ multiple: boolean; elementInternals: ElementInternals; private getCssClassMap; private handleRemoveFileSelection; private renderFilesUploaded; private onInputChange; private _calculateFileSize; private handleDrop; private handleDragOver; private handleFileSelection; private readonly handleInputChange; render(): any; }