All Downloads are FREE. Search and download functionalities are using the official Maven repository.

META-INF.resources.bower_components.angular-progress-button-styles.js.angular-progress-button-styles.min.js Maven / Gradle / Ivy


"use strict";(function(c){function e(g){var h={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var f in h){if(g.style[f]!==undefined){return h[f]}}}var d=c.module("angular-progress-button-styles",[]);d.provider("progressButtonConfig",b);function b(){var g={};var h=null;var f={style:"fill",direction:"horizontal",randomProgress:true};this.profile=function(j,i){if(arguments.length==1){if(h){throw Error("Default profile already set.")}h=j}else{if(g[j]){throw Error("Profile ["+j+"] aready set.")}g[j]=i}};this.$get=function(){return{getProfile:function(i){if(i&&g[i]){return g[i]}else{return h||f}}}}}d.directive("progressButton",a);a.$inject=["$q","progressButtonConfig","$interval"];function a(f,g,h){return{restrict:"A",transclude:true,scope:{progressButton:"&",pbStyle:"@",pbDirection:"@",pbProfile:"@"},template:'',controller:function(){},link:function(r,s,q){m();var n=e(s[0]);var i=r.pbDirection=="vertical"?"height":"width";if(r.pbPerspective){var l=c.element('');l.append(s.children());s.append(l);s.addClass("progress-button-perspective")}r.progressStyles={};r.disabled=false;r.allowProgressTransition=false;s.addClass("progress-button");s.addClass("progress-button-dir-"+r.pbDirection);s.addClass("progress-button-style-"+r.pbStyle);r.$watch("disabled",function(t){s.toggleClass("disabled",t)});s.on("click",function(){r.$apply(function(){if(r.disabled){return}r.disabled=true;s.addClass("state-loading");r.allowProgressTransition=true;var t=null;f.when(r.progressButton()).then(function w(){o(1);t&&h.cancel(t);k(1)},function u(){t&&h.cancel(t);k(-1)},function v(x){!r.pbRandomProgress&&o(x)});if(r.pbRandomProgress){t=j()}})});function m(){var t=g.getProfile(r.pbProfile);r.pbStyle=r.pbStyle||t.style||"fill";if(r.pbStyle!="lateral-lines"){r.pbDirection=r.pbDirection||t.direction||"horizontal"}else{r.pbDirection="vertical"}r.pbPerspective=r.pbStyle.indexOf("rotate")==0||r.pbStyle.indexOf("flip-open")==0;r.pbRandomProgress=q.pbRandomProgress?q.pbRandomProgress!=="false":(t.randomProgress||true)}function o(t){r.progressStyles[i]=100*t+"%"}function j(){var t=0;return h(function(){t+=(1-t)*Math.random()*0.5;o(t)},200)}function p(){r.$apply(function(){r.disabled=false})}function k(u){function t(w){if(w.propertyName!=="opacity"&&(!w.originalEvent||w.originalEvent.propertyName!=="opacity")){return}s.off(n,t);r.$apply(function(){r.allowProgressTransition=false;o(0);r.progressStyles.opacity=1})}if(n){r.progressStyles.opacity=0;s.on(n,t)}if(typeof u==="number"){var v=u>=0?"state-success":"state-error";s.addClass(v);setTimeout(function(){s.removeClass(v);p()},1500)}else{p()}s.removeClass("state-loading")}}}}})(angular);

 




© 2015 - 2025 Weber Informatics LLC | Privacy Policy