angular-theme-spinner
Version:
angular-theme-spinner used to tell people the data is loading
1 lines • 2.37 kB
JavaScript
!function(i){"use strict";var c=function(i){var c=["size-sm","size-md","size-lg"],e=["tailing","audio-wave","windcatcher","spinner-section","spinner-section-far","circular","initspin"],s=function(s){return{restrict:"AE",scope:{theme:"=",display:"=",size:"="},link:function(s,l){l.parent();s.curTheme=void 0,s.curSize=void 0;var d=function(){s.thClasses=[s.curTheme,s.curSize]};s.$watch("display",function(c){var e=l.children();if(0!==e.length){var s=i.element(e[0]);c?(s.css("display","block"),l.css("display","block")):(s.css("display","none"),l.css("display","none"))}}),s.$watch("size",function(i){c.indexOf(i)>-1?s.curSize=i:s.curSize=c[1],d()}),s.$watch("theme",function(i){e.indexOf(i)>-1?s.curTheme=i:s.curTheme=e[0],d()})},template:'<div ng-if="display" class="spinner" ng-class="thClasses"><span ng-if="theme === \'tailing\'">{{ curSize !== \'size-sm\' ? \'Loading\' : \'\' }}</span><windcatcher ng-if="theme === \'windcatcher\'"><div class="blade"></div><div class="blade"></div><div class="blade"></div><div class="blade"></div><div class="blade"></div><div class="blade"></div><div class="blade"></div><div class="blade"></div></windcatcher><circular ng-if="theme === \'circular\'"><div class="spinner-layer spinner-blue"><div class="circle-clipper left"><div class="circle"></div></div><div class="gap-patch"><div class="circle"></div></div><div class="circle-clipper right"><div class="circle"></div></div></div><div class="spinner-layer spinner-red"><div class="circle-clipper left"><div class="circle"></div></div><div class="gap-patch"><div class="circle"></div></div><div class="circle-clipper right"><div class="circle"></div></div></div><div class="spinner-layer spinner-yellow"><div class="circle-clipper left"><div class="circle"></div></div><div class="gap-patch"><div class="circle"></div></div><div class="circle-clipper right"><div class="circle"></div></div></div><div class="spinner-layer spinner-green"><div class="circle-clipper left"><div class="circle"></div></div><div class="gap-patch"><div class="circle"></div></div><div class="circle-clipper right"><div class="circle"></div></div></div></circular></div>'}},l=i.module("angular-theme-spinner",[]);l.directive("thSpinner",["$timeout",s])};"object"==typeof exports?module.exports=c(require("angular")):"function"==typeof define&&define.amd?define(["angular"],c):c(i.angular)}(window);