perlite
Version:
[]()
13 lines (10 loc) • 377 B
text/typescript
import { directive, EventPart } from 'lit-html';
export const once = directive((handleEvent) => (part) => {
if (!(part instanceof EventPart)) {
throw new Error('"once" directive can only be used in event listeners');
}
part.setValue(typeof handleEvent === 'object' ?
{ ...handleEvent, once: true } :
{ handleEvent, once: true }
);
});