1
0
Fork 0
mirror of synced 2024-09-14 00:08:25 +12:00
budibase/packages/bbui/src/Actions/click_outside.js

18 lines
429 B
JavaScript

export default function clickOutside(element, callbackFunction) {
function onClick(event) {
if (!element.contains(event.target)) {
callbackFunction()
}
}
document.body.addEventListener("mousedown", onClick, true)
return {
update(newCallbackFunction) {
callbackFunction = newCallbackFunction
},
destroy() {
document.body.removeEventListener("mousedown", onClick, true)
},
}
}