diff --git a/angular-loading.js b/angular-loading.js index 87bbeb5..59500a5 100644 --- a/angular-loading.js +++ b/angular-loading.js @@ -101,6 +101,10 @@ body, spinnerContainer, text; + + attrs.$observe('dwLoading', function (val) { + key = val || false; + }); /** * Starts spinner @@ -247,4 +251,4 @@ return dst; } -})); \ No newline at end of file +})); diff --git a/angular-loading.min.js b/angular-loading.min.js index a2c443f..1b98414 100644 --- a/angular-loading.min.js +++ b/angular-loading.min.js @@ -1 +1 @@ -!function(a){"function"==typeof define&&define.amd?define(["angular","spinjs"],a):"object"==typeof exports?a(require("angular"),require("spinjs")):a(window.angular,window.Spinner)}(function(a,b){"use strict";function c(b){var d=!1,e=1;return"boolean"==typeof b&&(d=b,b=arguments[1]||{},e++),a.forEach([].slice.call(arguments,e),function(e){var f,g,h,i,j;for(i in e)j=b[i],h=e[i],b!==h&&(d&&h&&(a.isObject(h)||(f=a.isArray(h)))?(g=f?j&&a.isArray(j)?j:[]:j&&a.isObject(j)?j:{},b[i]=c(d,g,h)):void 0!==h&&(b[i]=h))}),b}a.module("darthwade.loading",[]).value("loadingOptions",{active:!1,text:"Loading...",className:"",overlay:!0,spinner:!0,spinnerOptions:{lines:12,length:7,width:4,radius:10,rotate:0,corners:1,color:"#000",direction:1,speed:2,trail:100,opacity:.25,fps:20,zIndex:2e9,className:"dw-spinner",top:"auto",left:"auto",position:"relative"}}).service("$loading",["$timeout","$rootScope","loadingOptions",function(a,b,d){var e=this;e.setDefaultOptions=function(a){c(!0,d,a)},e.start=function(c){a(function(){b.$broadcast("$loadingStart",c)})},e.finish=function(c){a(function(){b.$broadcast("$loadingFinish",c)})}}]).directive("dwLoading",["$rootScope","loadingOptions",function(d,e){return{link:function(f,g,h){var i,j,k,l,m,n=null,o=h.dwLoading||!1,p=function(){j&&j.addClass("dw-loading-active"),n&&n.spin(l[0])},q=function(){j&&j.removeClass("dw-loading-active"),n&&n.stop()};f.$watch(h.dwLoadingOptions,function(d){q(),i=c(!0,{},e,d),k=a.element("
").addClass("dw-loading-body"),j=a.element("").addClass("dw-loading").append(k),i.overlay&&j.addClass("dw-loading-overlay"),i.className&&j.addClass(i.className),i.spinner&&(l=a.element("").addClass("dw-loading-spinner"),k.append(l),n=new b(i.spinnerOptions)),i.text&&(m=a.element("").addClass("dw-loading-text").text(i.text),k.append(m)),g.append(j),(i.active||!o)&&p()},!0),d.$on("$loadingStart",function(a,b){b===o&&p()}),d.$on("$loadingFinish",function(a,b){b===o&&q()}),f.$on("$destroy",function(){q(),n=null})}}}])}); \ No newline at end of file +!function(a,b){"function"==typeof define&&define.amd?define(["angular","spinjs"],b):b(window.angular,window.Spinner)}(this,function(a,b){"use strict";function c(b){var d=!1,e=1;return"boolean"==typeof b&&(d=b,b=arguments[1]||{},e++),a.forEach([].slice.call(arguments,e),function(e){var f,g,h,i,j;for(i in e)j=b[i],h=e[i],b!==h&&(d&&h&&(a.isObject(h)||(f=a.isArray(h)))?(g=f?j&&a.isArray(j)?j:[]:j&&a.isObject(j)?j:{},b[i]=c(d,g,h)):void 0!==h&&(b[i]=h))}),b}a.module("darthwade.dwLoading",[]).value("dwLoadingOptions",{active:!1,text:"Loading...",className:"",overlay:!0,spinner:!0,spinnerOptions:{lines:12,length:7,width:4,radius:10,rotate:0,corners:1,color:"#000",direction:1,speed:2,trail:100,opacity:.25,fps:20,zIndex:2e9,className:"dw-spinner",top:"auto",left:"auto",position:"relative"}}).service("dwLoading",["$timeout","$rootScope","dwLoadingOptions",function(a,b,d){var e=this;e.setDefaultOptions=function(a){c(!0,d,a)},e.start=function(c){a(function(){b.$broadcast("$dwLoadingStart",c)})},e.finish=function(c){a(function(){b.$broadcast("$dwLoadingFinish",c)})}}]).factory("$loading",["dwLoading",function(a){return a}]).directive("dwLoading",["$rootScope","dwLoadingOptions",function(d,e){return{link:function(f,g,h){var i,j,k,l,m,n=null,o=h.dwLoading||!1;h.$observe("dwLoading",function(a){o=a||!1});var p=function(){j&&j.addClass("dw-loading-active"),n&&n.spin(l[0])},q=function(){j&&j.removeClass("dw-loading-active"),n&&n.stop()};f.$watch(h.dwLoadingOptions,function(d){q(),i=c(!0,{},e,d),k=a.element("").addClass("dw-loading-body"),j=a.element("").addClass("dw-loading").append(k),i.overlay&&j.addClass("dw-loading-overlay"),i.className&&j.addClass(i.className),i.spinner&&(l=a.element("").addClass("dw-loading-spinner"),k.append(l),n=new b(i.spinnerOptions)),i.text&&(m=a.element("").addClass("dw-loading-text").text(i.text),k.append(m)),g.append(j),(i.active||!o)&&p()},!0),d.$on("$dwLoadingStart",function(a,b){b===o&&p()}),d.$on("$dwLoadingFinish",function(a,b){b===o&&q()}),f.$on("$destroy",function(){q(),n=null})}}}])}); diff --git a/bower.json b/bower.json index 44d5de4..4455207 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "angular-loading", - "version": "1.0", + "version": "1.0.1", "description": "Angular directive that lets you to prevent user interaction with part of the page and display loading/busy indicator (spinner based on spin.js)", "homepage": "https://github.com/darthwade/angular-loading", "bugs": "https://github.com/darthwade/angular-loading/issues",