ngx-sp-infra
Version:
Biblioteca de utilitários da Infra.
36 lines (35 loc) • 1.43 kB
TypeScript
import { EventEmitter } from '@angular/core';
import * as i0 from "@angular/core";
/**
* Diretiva `libA11yClick`
*
* Torna elementos clicáveis acessíveis via teclado, emitindo um único evento (`a11yClick`)
* tanto ao clicar com o mouse quanto ao pressionar Enter ou Espaço.
*
* 🔧 Antes de usar:
* - Use em elementos interativos como `<button>`, `<div>` ou `<span>`.
* - Para elementos não-nativos, adicione `tabindex="0"` para permitir foco via teclado.
*
* 📤 Output:
* @Output() a11yClick - Evento emitido ao clicar ou pressionar Enter/Espaço.
*
* 🧠 Exemplo de uso:
* ```html
* <button libA11yClick (a11yClick)="executarAcao()">Salvar</button>
* <div libA11yClick tabindex="0" (a11yClick)="executarAcao()">Ação acessível</div>
* ```
*
* 🧪 Testes sugeridos:
* - Deve emitir ao `click`
* - Deve emitir ao `keyup.enter`
* - Deve emitir ao `keyup.space` (opcional)
* - Não deve emitir para outras teclas
*/
export declare class A11yClickDirective {
/** Evento emitido ao clicar ou pressionar Enter/Espaço. */
a11yClick: EventEmitter<MouseEvent | KeyboardEvent>;
handleClick(event: MouseEvent): void;
handleKeyup(event: KeyboardEvent): void;
static ɵfac: i0.ɵɵFactoryDeclaration<A11yClickDirective, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<A11yClickDirective, "[libA11yClick]", never, {}, { "a11yClick": "a11yClick"; }, never, never, true, never>;
}