angular-loading-bar
Advanced tools
Comparing version 0.4.3 to 0.5.0
{ | ||
"name": "angular-loading-bar", | ||
"version": "0.4.3", | ||
"main": ["src/loading-bar.js", "src/loading-bar.css"], | ||
"version": "0.5.0", | ||
"main": ["build/loading-bar.js", "build/loading-bar.css"], | ||
"ignore": [ | ||
@@ -6,0 +6,0 @@ "**/.*", |
/*! | ||
* angular-loading-bar v0.4.3 | ||
* angular-loading-bar v0.5.0 | ||
* https://chieffancypants.github.io/angular-loading-bar | ||
@@ -168,2 +168,3 @@ * Copyright (c) 2014 Wes Cruver | ||
this.parentSelector = 'body'; | ||
this.spinnerTemplate = '<div id="loading-bar-spinner"><div class="spinner-icon"></div></div>'; | ||
@@ -175,3 +176,3 @@ this.$get = ['$document', '$timeout', '$animate', '$rootScope', function ($document, $timeout, $animate, $rootScope) { | ||
loadingBar = loadingBarContainer.find('div').eq(0), | ||
spinner = angular.element('<div id="loading-bar-spinner"><div class="spinner-icon"></div></div>'); | ||
spinner = angular.element(this.spinnerTemplate); | ||
@@ -278,2 +279,4 @@ var incTimeout, | ||
$timeout.cancel(completeTimeout); | ||
// Attempt to aggregate any start/complete calls within 500ms: | ||
@@ -280,0 +283,0 @@ completeTimeout = $timeout(function() { |
/*! | ||
* angular-loading-bar v0.4.3 | ||
* angular-loading-bar v0.5.0 | ||
* https://chieffancypants.github.io/angular-loading-bar | ||
@@ -7,2 +7,2 @@ * Copyright (c) 2014 Wes Cruver | ||
*/ | ||
!function(){"use strict";angular.module("angular-loading-bar",["cfp.loadingBarInterceptor"]),angular.module("chieffancypants.loadingBar",["cfp.loadingBarInterceptor"]),angular.module("cfp.loadingBarInterceptor",["cfp.loadingBar"]).config(["$httpProvider",function(a){var b=["$q","$cacheFactory","$timeout","$rootScope","cfpLoadingBar",function(b,c,d,e,f){function g(){d.cancel(i),f.complete(),k=0,j=0}function h(b){var d,e=a.defaults;if("GET"!==b.method||b.cache===!1)return b.cached=!1,!1;d=b.cache===!0&&void 0===e.cache?c.get("$http"):void 0!==e.cache?e.cache:b.cache;var f=void 0!==d?void 0!==d.get(b.url):!1;return void 0!==b.cached&&f!==b.cached?b.cached:(b.cached=f,f)}var i,j=0,k=0,l=f.latencyThreshold;return{request:function(a){return a.ignoreLoadingBar||h(a)||(e.$broadcast("cfpLoadingBar:loading",{url:a.url}),0===j&&(i=d(function(){f.start()},l)),j++,f.set(k/j)),a},response:function(a){return a.config.ignoreLoadingBar||h(a.config)||(k++,e.$broadcast("cfpLoadingBar:loaded",{url:a.config.url}),k>=j?g():f.set(k/j)),a},responseError:function(a){return a.config.ignoreLoadingBar||h(a.config)||(k++,e.$broadcast("cfpLoadingBar:loaded",{url:a.config.url}),k>=j?g():f.set(k/j)),b.reject(a)}}}];a.interceptors.push(b)}]),angular.module("cfp.loadingBar",[]).provider("cfpLoadingBar",function(){this.includeSpinner=!0,this.includeBar=!0,this.latencyThreshold=100,this.startSize=.02,this.parentSelector="body",this.$get=["$document","$timeout","$animate","$rootScope",function(a,b,c,d){function e(){var e=a.find(l);b.cancel(k),p||(d.$broadcast("cfpLoadingBar:started"),p=!0,s&&c.enter(m,e),r&&c.enter(o,e),f(t))}function f(a){if(p){var c=100*a+"%";n.css("width",c),q=a,b.cancel(j),j=b(function(){g()},250)}}function g(){if(!(h()>=1)){var a=0,b=h();a=b>=0&&.25>b?(3*Math.random()+3)/100:b>=.25&&.65>b?3*Math.random()/100:b>=.65&&.9>b?2*Math.random()/100:b>=.9&&.99>b?.005:0;var c=h()+a;f(c)}}function h(){return q}function i(){d.$broadcast("cfpLoadingBar:completed"),f(1),k=b(function(){c.leave(m,function(){q=0,p=!1}),c.leave(o)},500)}var j,k,l=this.parentSelector,m=angular.element('<div id="loading-bar"><div class="bar"><div class="peg"></div></div></div>'),n=m.find("div").eq(0),o=angular.element('<div id="loading-bar-spinner"><div class="spinner-icon"></div></div>'),p=!1,q=0,r=this.includeSpinner,s=this.includeBar,t=this.startSize;return{start:e,set:f,status:h,inc:g,complete:i,includeSpinner:this.includeSpinner,latencyThreshold:this.latencyThreshold,parentSelector:this.parentSelector,startSize:this.startSize}}]})}(); | ||
!function(){"use strict";angular.module("angular-loading-bar",["cfp.loadingBarInterceptor"]),angular.module("chieffancypants.loadingBar",["cfp.loadingBarInterceptor"]),angular.module("cfp.loadingBarInterceptor",["cfp.loadingBar"]).config(["$httpProvider",function(a){var b=["$q","$cacheFactory","$timeout","$rootScope","cfpLoadingBar",function(b,c,d,e,f){function g(){d.cancel(i),f.complete(),k=0,j=0}function h(b){var d,e=a.defaults;if("GET"!==b.method||b.cache===!1)return b.cached=!1,!1;d=b.cache===!0&&void 0===e.cache?c.get("$http"):void 0!==e.cache?e.cache:b.cache;var f=void 0!==d?void 0!==d.get(b.url):!1;return void 0!==b.cached&&f!==b.cached?b.cached:(b.cached=f,f)}var i,j=0,k=0,l=f.latencyThreshold;return{request:function(a){return a.ignoreLoadingBar||h(a)||(e.$broadcast("cfpLoadingBar:loading",{url:a.url}),0===j&&(i=d(function(){f.start()},l)),j++,f.set(k/j)),a},response:function(a){return a.config.ignoreLoadingBar||h(a.config)||(k++,e.$broadcast("cfpLoadingBar:loaded",{url:a.config.url}),k>=j?g():f.set(k/j)),a},responseError:function(a){return a.config.ignoreLoadingBar||h(a.config)||(k++,e.$broadcast("cfpLoadingBar:loaded",{url:a.config.url}),k>=j?g():f.set(k/j)),b.reject(a)}}}];a.interceptors.push(b)}]),angular.module("cfp.loadingBar",[]).provider("cfpLoadingBar",function(){this.includeSpinner=!0,this.includeBar=!0,this.latencyThreshold=100,this.startSize=.02,this.parentSelector="body",this.spinnerTemplate='<div id="loading-bar-spinner"><div class="spinner-icon"></div></div>',this.$get=["$document","$timeout","$animate","$rootScope",function(a,b,c,d){function e(){var e=a.find(l);b.cancel(k),p||(d.$broadcast("cfpLoadingBar:started"),p=!0,s&&c.enter(m,e),r&&c.enter(o,e),f(t))}function f(a){if(p){var c=100*a+"%";n.css("width",c),q=a,b.cancel(j),j=b(function(){g()},250)}}function g(){if(!(h()>=1)){var a=0,b=h();a=b>=0&&.25>b?(3*Math.random()+3)/100:b>=.25&&.65>b?3*Math.random()/100:b>=.65&&.9>b?2*Math.random()/100:b>=.9&&.99>b?.005:0;var c=h()+a;f(c)}}function h(){return q}function i(){d.$broadcast("cfpLoadingBar:completed"),f(1),b.cancel(k),k=b(function(){c.leave(m,function(){q=0,p=!1}),c.leave(o)},500)}var j,k,l=this.parentSelector,m=angular.element('<div id="loading-bar"><div class="bar"><div class="peg"></div></div></div>'),n=m.find("div").eq(0),o=angular.element(this.spinnerTemplate),p=!1,q=0,r=this.includeSpinner,s=this.includeBar,t=this.startSize;return{start:e,set:f,status:h,inc:g,complete:i,includeSpinner:this.includeSpinner,latencyThreshold:this.latencyThreshold,parentSelector:this.parentSelector,startSize:this.startSize}}]})}(); |
Changelog | ||
========== | ||
## 0.5.0 | ||
- Added spinner template configuration ([#82](https://github.com/chieffancypants/angular-loading-bar/pull/82)) | ||
- $timeout was not canceled properly ([#79](https://github.com/chieffancypants/angular-loading-bar/pull/79)) | ||
## 0.4.3 | ||
@@ -5,0 +9,0 @@ - update z-index to work with other css frameworks ([#69](https://github.com/chieffancypants/angular-loading-bar/pull/69)) |
{ | ||
"name": "angular-loading-bar", | ||
"version": "0.4.3", | ||
"version": "0.5.0", | ||
"description": "An automatic loading bar for AngularJS", | ||
@@ -5,0 +5,0 @@ "main": "src/loading-bar.js", |
@@ -162,2 +162,3 @@ /* | ||
this.parentSelector = 'body'; | ||
this.spinnerTemplate = '<div id="loading-bar-spinner"><div class="spinner-icon"></div></div>'; | ||
@@ -169,3 +170,3 @@ this.$get = ['$document', '$timeout', '$animate', '$rootScope', function ($document, $timeout, $animate, $rootScope) { | ||
loadingBar = loadingBarContainer.find('div').eq(0), | ||
spinner = angular.element('<div id="loading-bar-spinner"><div class="spinner-icon"></div></div>'); | ||
spinner = angular.element(this.spinnerTemplate); | ||
@@ -272,2 +273,4 @@ var incTimeout, | ||
$timeout.cancel(completeTimeout); | ||
// Attempt to aggregate any start/complete calls within 500ms: | ||
@@ -274,0 +277,0 @@ completeTimeout = $timeout(function() { |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
72718
1049