(
type: DelegatedEvent['type'],
selector: string
)
| 181 | * Method decorator of DOM Event delegation |
| 182 | */ |
| 183 | export function on<T extends HTMLElement>( |
| 184 | type: DelegatedEvent['type'], |
| 185 | selector: string |
| 186 | ) { |
| 187 | return ( |
| 188 | method: DelegateEventHandler, |
| 189 | { addInitializer }: ClassMethodDecoratorContext<T> |
| 190 | ) => |
| 191 | addInitializer(function () { |
| 192 | const events = eventMap.get(this) || [], |
| 193 | handler = delegate(selector, method.bind(this)); |
| 194 | |
| 195 | events.push({ type, selector, handler }); |
| 196 | |
| 197 | eventMap.set(this, events); |
| 198 | }); |
| 199 | } |
no outgoing calls
no test coverage detected