Вход Регистрация
Файл: CloudBox-main/CloudBox/admin_assets/js/loader/ladda.js
Строк: 221
<?php
(function (rootfactory) {
    if (
typeof exports === "object") {
        
module.exports factory();
    } else if (
typeof define === "function" && define.amd) {
        
define([ "spin" ], factory);
    } else {
        
root.Ladda factory(root.Spinner);
    }
})(
this, function (Spinner) {
    
"use strict";
    var 
ALL_INSTANCES = [];

    function 
create(button) {
        if (
typeof button === "undefined") {
            
console.warn("Ladda button target must be defined.");
            return;
        }
        if (!
button.querySelector(".ladda-label")) {
            
button.innerHTML '<span class="ladda-label">' button.innerHTML "</span>";
        }
        var 
spinner createSpinner(button);
        var 
spinnerWrapper document.createElement("span");
        
spinnerWrapper.className "ladda-spinner";
        
button.appendChild(spinnerWrapper);
        var 
timer;
        var 
instance = {
            
start: function () {
                
button.setAttribute("disabled""");
                
button.setAttribute("data-loading""");
                
clearTimeout(timer);
                
spinner.spin(spinnerWrapper);
                
this.setProgress(0);
                return 
this;
            },
            
startAfter: function (delay) {
                
clearTimeout(timer);
                
timer setTimeout(function () {
                    
instance.start();
                }, 
delay);
                return 
this;
            },
            
stop: function () {
                
button.removeAttribute("disabled");
                
button.removeAttribute("data-loading");
                
clearTimeout(timer);
                
timer setTimeout(function () {
                    
spinner.stop();
                }, 
1e3);
                return 
this;
            },
            
toggle: function () {
                if (
this.isLoading()) {
                    
this.stop();
                } else {
                    
this.start();
                }
                return 
this;
            },
            
setProgress: function (progress) {
                
progress Math.max(Math.min(progress1), 0);
                var 
progressElement button.querySelector(".ladda-progress");
                if (
progress === && progressElement && progressElement.parentNode) {
                    
progressElement.parentNode.removeChild(progressElement);
                } else {
                    if (!
progressElement) {
                        
progressElement document.createElement("div");
                        
progressElement.className "ladda-progress";
                        
button.appendChild(progressElement);
                    }
                    
progressElement.style.width = (progress || 0) * button.offsetWidth "px";
                }
            },
            
enable: function () {
                
this.stop();
                return 
this;
            },
            
disable: function () {
                
this.stop();
                
button.setAttribute("disabled""");
                return 
this;
            },
            
isLoading: function () {
                return 
button.hasAttribute("data-loading");
            }
        };
        
ALL_INSTANCES.push(instance);
        return 
instance;
    }

    function 
bind(targetoptions) {
        
options options || {};
        var 
targets = [];
        if (
typeof target === "string") {
            
targets toArray(document.querySelectorAll(target));
        } else if (
typeof target === "object" && typeof target.nodeName === "string") {
            
targets = [ target ];
        }
        for (var 
0len targets.lengthleni++) {
            (function () {
                var 
element targets[i];
                if (
typeof element.addEventListener === "function") {
                    var 
instance create(element);
                    var 
timeout = -1;
                    
element.addEventListener("click", function () {
                        
instance.startAfter(1);
                        if (
typeof options.timeout === "number") {
                            
clearTimeout(timeout);
                            
timeout setTimeout(instance.stopoptions.timeout);
                        }
                        if (
typeof options.callback === "function") {
                            
options.callback.apply(null, [ instance ]);
                        }
                    }, 
false);
                }
            })();
        }
    }

    function 
stopAll() {
        for (var 
0len ALL_INSTANCES.lengthleni++) {
            
ALL_INSTANCES[i].stop();
        }
    }

    function 
createSpinner(button) {
        var 
height button.offsetHeightspinnerColor;
        if (
height 32) {
            
height *= .8;
        }
        if (
button.hasAttribute("data-spinner-size")) {
            
height parseInt(button.getAttribute("data-spinner-size"), 10);
        }
        if (
button.hasAttribute("data-spinner-color")) {
            
spinnerColor button.getAttribute("data-spinner-color");
        }
        var 
lines 12radius height .2length radius .6width radius 3;
        return new 
Spinner({
            
colorspinnerColor || "#fff",
            
lineslines,
            
radiusradius,
            
lengthlength,
            
widthwidth,
            
zIndex"auto",
            
top"auto",
            
left"auto",
            
className""
        
});
    }

    function 
toArray(nodes) {
        var 
= [];
        for (var 
0nodes.lengthi++) {
            
a.push(nodes[i]);
        }
        return 
a;
    }

    return {
        
bindbind,
        
createcreate,
        
stopAllstopAll
    
};
});
?>
Онлайн: 0
Реклама