12 lines
409 B
TypeScript
12 lines
409 B
TypeScript
|
import { onCleanup } from "solid-js";
|
||
|
|
||
|
export function click_out_directive(el:any, accessor:any) {
|
||
|
const onClick = (e:any) => !el.contains(e.target) && accessor()?.();
|
||
|
document.body.addEventListener("click", onClick);
|
||
|
|
||
|
onCleanup(() => document.body.removeEventListener("click", onClick));
|
||
|
}
|
||
|
|
||
|
export const delay = (delayInms:number) => {
|
||
|
return new Promise(resolve => setTimeout(resolve, delayInms));
|
||
|
}
|