UNPKG

@govbr-ds/webcomponents

Version:

Biblioteca de Web Components baseado no GovBR-DS

65 lines (64 loc) 2.11 kB
/** * Para uma descrição detalhada, consulte a [documentação do GovBR-DS](https://www.gov.br/ds/components/magicbutton?tab=designer). * * @slot default - Conteúdo interno do botão (texto ou ícone). */ export declare class MagicButton { /** * Referência ao elemento host do componente. * Utilize esta propriedade para acessar e manipular o elemento DOM associado ao componente. */ el: HTMLBrMagicButtonElement; /** * Identificador único. * Se não for fornecido, será gerado automaticamente. */ readonly customId: string; /** * Texto do rótulo do botão. * Utilizado como conteúdo principal quando presente. */ readonly label: string; /** * Nome do ícone a ser exibido. * Deve corresponder a um ícone disponível no sistema de ícones. */ readonly icon: string; /** * Densidade do botão. * Define o tamanho do componente: * - `large` para grande * - `medium` para médio * - `small` para pequeno */ readonly density: 'large' | 'medium' | 'small'; /** * Define se o botão terá formato circular. * Aplica contorno arredondado completo quando `true` e não houver `label`. */ readonly circle: boolean; /** * Texto de acessibilidade (ARIA label). * Deve ser fornecido para ícones sem texto para garantir acessibilidade. */ readonly ariaLabel: string; /** * Gera o mapeamento de classes CSS baseado nas propriedades de densidade. * @returns Mapa de classes CSS para o container do botão mágico. */ private getCssClassMap; /** * Gera o mapeamento de classes CSS para aplicar o estilo de botão circular. * @returns Mapa contendo a classe `circle` quando aplicável. */ private getCircleClass; /** * Retorna a classe de CSS para posicionar ícone e label juntos. * @returns `label-icon` quando houver `label` e `icon`; string vazia caso contrário. */ private getLabelIconClass; /** * Renderiza o componente. */ render(): any; }