diff options
author | ManeraKai <manerakai@protonmail.com> | 2022-01-30 15:38:55 +0300 |
---|---|---|
committer | ManeraKai <manerakai@protonmail.com> | 2022-01-30 15:38:55 +0300 |
commit | d1ec4ac2af2d644b0b493818bf698dc314d45d25 (patch) | |
tree | 8004530f5752cbb508bb64cb872e0ba7b698e557 /src/assets/javascripts | |
parent | Updating options UI (diff) | |
download | libredirect-d1ec4ac2af2d644b0b493818bf698dc314d45d25.zip |
Splitted options.js
Diffstat (limited to 'src/assets/javascripts')
-rw-r--r-- | src/assets/javascripts/helpers/common.js | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/assets/javascripts/helpers/common.js b/src/assets/javascripts/helpers/common.js index 14abbe27..c700fd85 100644 --- a/src/assets/javascripts/helpers/common.js +++ b/src/assets/javascripts/helpers/common.js @@ -36,9 +36,26 @@ function getInstances() { return false; } +function debounce(func, wait, immediate) { + let timeout; + return () => { + let context = this, + args = arguments; + let later = () => { + timeout = null; + if (!immediate) func.apply(context, args); + }; + let callNow = immediate && !timeout; + clearTimeout(timeout); + timeout = setTimeout(later, wait); + if (callNow) func.apply(context, args); + }; +} + export default { filterInstances, getRandomInstance, getInstances, addHttps, + debounce }; |