function busy (yes) { $('#draft-busy').css('opacity', yes ? 1 : 0) } let loaderHideTimeout; function query (route, data, sucfn, erfn) { if (!sucfn) sucfn = () => {} if (!erfn) erfn = () => {} clearTimeout(loaderHideTimeout) busy(true) window.axios.post(route, data) .then(sucfn) .catch((error) => { console.error(error.message) erfn(error.response.data) }) .finally(() => { loaderHideTimeout = setTimeout(() => busy(false), 50) }) } export { busy, query }