diff options
Diffstat (limited to 'app/assets/javascripts/ajax_loading_spinner.js')
-rw-r--r-- | app/assets/javascripts/ajax_loading_spinner.js | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/app/assets/javascripts/ajax_loading_spinner.js b/app/assets/javascripts/ajax_loading_spinner.js deleted file mode 100644 index 54e86f329e4..00000000000 --- a/app/assets/javascripts/ajax_loading_spinner.js +++ /dev/null @@ -1,34 +0,0 @@ -import $ from 'jquery'; - -export default class AjaxLoadingSpinner { - static init() { - const $elements = $('.js-ajax-loading-spinner'); - - $elements.on('ajax:beforeSend', AjaxLoadingSpinner.ajaxBeforeSend); - $elements.on('ajax:complete', AjaxLoadingSpinner.ajaxComplete); - } - - static ajaxBeforeSend(e) { - e.target.setAttribute('disabled', ''); - const iconElement = e.target.querySelector('i'); - // get first fa- icon - const originalIcon = iconElement.className.match(/(fa-)([^\s]+)/g)[0]; - iconElement.dataset.icon = originalIcon; - AjaxLoadingSpinner.toggleLoadingIcon(iconElement); - $(e.target).off('ajax:beforeSend', AjaxLoadingSpinner.ajaxBeforeSend); - } - - static ajaxComplete(e) { - e.target.removeAttribute('disabled'); - const iconElement = e.target.querySelector('i'); - AjaxLoadingSpinner.toggleLoadingIcon(iconElement); - $(e.target).off('ajax:complete', AjaxLoadingSpinner.ajaxComplete); - } - - static toggleLoadingIcon(iconElement) { - const { classList } = iconElement; - classList.toggle(iconElement.dataset.icon); - classList.toggle('fa-spinner'); - classList.toggle('fa-spin'); - } -} |