|
@@ -6,11 +6,19 @@ export function clickOutside(node: Node) {
|
|
|
}
|
|
|
};
|
|
|
|
|
|
+ const handleKey = (event: KeyboardEvent) => {
|
|
|
+ if (event.key == 'Escape') {
|
|
|
+ node.dispatchEvent(new CustomEvent('outclick'));
|
|
|
+ }
|
|
|
+ };
|
|
|
+
|
|
|
document.addEventListener('click', handleClick, true);
|
|
|
+ document.addEventListener('keydown', handleKey, true);
|
|
|
|
|
|
return {
|
|
|
destroy() {
|
|
|
document.removeEventListener('click', handleClick, true);
|
|
|
+ document.removeEventListener('keydown', handleKey, true);
|
|
|
}
|
|
|
};
|
|
|
}
|