summaryrefslogtreecommitdiffstats
path: root/web_src/js/utils
diff options
context:
space:
mode:
Diffstat (limited to 'web_src/js/utils')
-rw-r--r--web_src/js/utils/dom.js13
1 files changed, 13 insertions, 0 deletions
diff --git a/web_src/js/utils/dom.js b/web_src/js/utils/dom.js
index 6a9ee56eeb..cdc52b1a74 100644
--- a/web_src/js/utils/dom.js
+++ b/web_src/js/utils/dom.js
@@ -1,3 +1,5 @@
+import {debounce} from 'throttle-debounce';
+
function elementsCall(el, func, ...args) {
if (typeof el === 'string' || el instanceof String) {
el = document.querySelectorAll(el);
@@ -42,6 +44,13 @@ export function toggleElem(el, force) {
elementsCall(el, toggleShown, force);
}
+export function isElemHidden(el) {
+ const res = [];
+ elementsCall(el, (e) => res.push(e.classList.contains('gt-hidden')));
+ if (res.length > 1) throw new Error(`isElemHidden doesn't work for multiple elements`);
+ return res[0];
+}
+
export function onDomReady(cb) {
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', cb);
@@ -170,3 +179,7 @@ export function autosize(textarea, {viewportMarginBottom = 0} = {}) {
}
};
}
+
+export function onInputDebounce(fn) {
+ return debounce(300, fn);
+}