{"version":3,"sourceRoot":"/cv/scripts/DAC0/eng/include/lib","sources":["spin.js"],"sourcesContent":["/**\r\n * Copyright (c) 2011-2014 Felix Gnass\r\n * Licensed under the MIT license\r\n * http://spin.js.org/\r\n *\r\n * Example:\r\n var opts = {\r\n lines: 12 // The number of lines to draw\r\n , length: 7 // The length of each line\r\n , width: 5 // The line thickness\r\n , radius: 10 // The radius of the inner circle\r\n , scale: 1.0 // Scales overall size of the spinner\r\n , corners: 1 // Roundness (0..1)\r\n , color: '#000' // #rgb or #rrggbb\r\n , opacity: 1/4 // Opacity of the lines\r\n , rotate: 0 // Rotation offset\r\n , direction: 1 // 1: clockwise, -1: counterclockwise\r\n , speed: 1 // Rounds per second\r\n , trail: 100 // Afterglow percentage\r\n , fps: 20 // Frames per second when using setTimeout()\r\n , zIndex: 2e9 // Use a high z-index by default\r\n , className: 'spinner' // CSS class to assign to the element\r\n , top: '50%' // center vertically\r\n , left: '50%' // center horizontally\r\n , shadow: false // Whether to render a shadow\r\n , hwaccel: false // Whether to use hardware acceleration (might be buggy)\r\n , position: 'absolute' // Element positioning\r\n }\r\n var target = document.getElementById('foo')\r\n var spinner = new Spinner(opts).spin(target)\r\n */\r\n;(function (root, factory) {\r\n\r\n /* CommonJS */\r\n if (typeof module == 'object' && module.exports) module.exports = factory()\r\n\r\n /* AMD module */\r\n else if (typeof define == 'function' && define.amd) define(factory)\r\n\r\n /* Browser global */\r\n else root.Spinner = factory()\r\n}(this, function () {\r\n \"use strict\"\r\n\r\n var prefixes = ['webkit', 'Moz', 'ms', 'O'] /* Vendor prefixes */\r\n , animations = {} /* Animation rules keyed by their name */\r\n , useCssAnimations /* Whether to use CSS animations or setTimeout */\r\n , sheet /* A stylesheet to hold the @keyframe or VML rules. */\r\n\r\n /**\r\n * Utility function to create elements. If no tag name is given,\r\n * a DIV is created. Optionally properties can be passed.\r\n */\r\n function createEl (tag, prop) {\r\n var el = document.createElement(tag || 'div')\r\n , n\r\n\r\n for (n in prop) el[n] = prop[n]\r\n return el\r\n }\r\n\r\n /**\r\n * Appends children and returns the parent.\r\n */\r\n function ins (parent /* child1, child2, ...*/) {\r\n for (var i = 1, n = arguments.length; i < n; i++) {\r\n parent.appendChild(arguments[i])\r\n }\r\n\r\n return parent\r\n }\r\n\r\n /**\r\n * Creates an opacity keyframe animation rule and returns its name.\r\n * Since most mobile Webkits have timing issues with animation-delay,\r\n * we create separate rules for each line/segment.\r\n */\r\n function addAnimation (alpha, trail, i, lines) {\r\n var name = ['opacity', trail, ~~(alpha * 100), i, lines].join('-')\r\n , start = 0.01 + i/lines * 100\r\n , z = Math.max(1 - (1-alpha) / trail * (100-start), alpha)\r\n , prefix = useCssAnimations.substring(0, useCssAnimations.indexOf('Animation')).toLowerCase()\r\n , pre = prefix && '-' + prefix + '-' || ''\r\n\r\n if (!animations[name]) {\r\n sheet.insertRule(\r\n '@' + pre + 'keyframes ' + name + '{' +\r\n '0%{opacity:' + z + '}' +\r\n start + '%{opacity:' + alpha + '}' +\r\n (start+0.01) + '%{opacity:1}' +\r\n (start+trail) % 100 + '%{opacity:' + alpha + '}' +\r\n '100%{opacity:' + z + '}' +\r\n '}', sheet.cssRules.length)\r\n\r\n animations[name] = 1\r\n }\r\n\r\n return name\r\n }\r\n\r\n /**\r\n * Tries various vendor prefixes and returns the first supported property.\r\n */\r\n function vendor (el, prop) {\r\n var s = el.style\r\n , pp\r\n , i\r\n\r\n prop = prop.charAt(0).toUpperCase() + prop.slice(1)\r\n if (s[prop] !== undefined) return prop\r\n for (i = 0; i < prefixes.length; i++) {\r\n pp = prefixes[i]+prop\r\n if (s[pp] !== undefined) return pp\r\n }\r\n }\r\n\r\n /**\r\n * Sets multiple style properties at once.\r\n */\r\n function css (el, prop) {\r\n for (var n in prop) {\r\n el.style[vendor(el, n) || n] = prop[n]\r\n }\r\n\r\n return el\r\n }\r\n\r\n /**\r\n * Fills in default values.\r\n */\r\n function merge (obj) {\r\n for (var i = 1; i < arguments.length; i++) {\r\n var def = arguments[i]\r\n for (var n in def) {\r\n if (obj[n] === undefined) obj[n] = def[n]\r\n }\r\n }\r\n return obj\r\n }\r\n\r\n /**\r\n * Returns the line color from the given string or array.\r\n */\r\n function getColor (color, idx) {\r\n return typeof color == 'string' ? color : color[idx % color.length]\r\n }\r\n\r\n // Built-in defaults\r\n\r\n var defaults = {\r\n lines: 12 // The number of lines to draw\r\n , length: 7 // The length of each line\r\n , width: 5 // The line thickness\r\n , radius: 10 // The radius of the inner circle\r\n , scale: 1.0 // Scales overall size of the spinner\r\n , corners: 1 // Roundness (0..1)\r\n , color: '#000' // #rgb or #rrggbb\r\n , opacity: 1/4 // Opacity of the lines\r\n , rotate: 0 // Rotation offset\r\n , direction: 1 // 1: clockwise, -1: counterclockwise\r\n , speed: 1 // Rounds per second\r\n , trail: 100 // Afterglow percentage\r\n , fps: 20 // Frames per second when using setTimeout()\r\n , zIndex: 2e9 // Use a high z-index by default\r\n , className: 'spinner' // CSS class to assign to the element\r\n , top: '50%' // center vertically\r\n , left: '50%' // center horizontally\r\n , shadow: false // Whether to render a shadow\r\n , hwaccel: false // Whether to use hardware acceleration (might be buggy)\r\n , position: 'absolute' // Element positioning\r\n }\r\n\r\n /** The constructor */\r\n function Spinner (o) {\r\n this.opts = merge(o || {}, Spinner.defaults, defaults)\r\n }\r\n\r\n // Global defaults that override the built-ins:\r\n Spinner.defaults = {}\r\n\r\n merge(Spinner.prototype, {\r\n /**\r\n * Adds the spinner to the given target element. If this instance is already\r\n * spinning, it is automatically removed from its previous target b calling\r\n * stop() internally.\r\n */\r\n spin: function (target) {\r\n this.stop()\r\n\r\n var self = this\r\n , o = self.opts\r\n , el = self.el = createEl(null, {className: o.className})\r\n\r\n css(el, {\r\n position: o.position\r\n , width: 0\r\n , zIndex: o.zIndex\r\n , left: o.left\r\n , top: o.top\r\n })\r\n\r\n if (target) {\r\n target.insertBefore(el, target.firstChild || null)\r\n }\r\n\r\n el.setAttribute('role', 'progressbar')\r\n self.lines(el, self.opts)\r\n\r\n if (!useCssAnimations) {\r\n // No CSS animation support, use setTimeout() instead\r\n var i = 0\r\n , start = (o.lines - 1) * (1 - o.direction) / 2\r\n , alpha\r\n , fps = o.fps\r\n , f = fps / o.speed\r\n , ostep = (1 - o.opacity) / (f * o.trail / 100)\r\n , astep = f / o.lines\r\n\r\n ;(function anim () {\r\n i++\r\n for (var j = 0; j < o.lines; j++) {\r\n alpha = Math.max(1 - (i + (o.lines - j) * astep) % f * ostep, o.opacity)\r\n\r\n self.opacity(el, j * o.direction + start, alpha, o)\r\n }\r\n self.timeout = self.el && setTimeout(anim, ~~(1000 / fps))\r\n })()\r\n }\r\n return self\r\n }\r\n\r\n /**\r\n * Stops and removes the Spinner.\r\n */\r\n , stop: function () {\r\n var el = this.el\r\n if (el) {\r\n clearTimeout(this.timeout)\r\n if (el.parentNode) el.parentNode.removeChild(el)\r\n this.el = undefined\r\n }\r\n return this\r\n }\r\n\r\n /**\r\n * Internal method that draws the individual lines. Will be overwritten\r\n * in VML fallback mode below.\r\n */\r\n , lines: function (el, o) {\r\n var i = 0\r\n , start = (o.lines - 1) * (1 - o.direction) / 2\r\n , seg\r\n\r\n function fill (color, shadow) {\r\n return css(createEl(), {\r\n position: 'absolute'\r\n , width: o.scale * (o.length + o.width) + 'px'\r\n , height: o.scale * o.width + 'px'\r\n , background: color\r\n , boxShadow: shadow\r\n , transformOrigin: 'left'\r\n , transform: 'rotate(' + ~~(360/o.lines*i + o.rotate) + 'deg) translate(' + o.scale*o.radius + 'px' + ',0)'\r\n , borderRadius: (o.corners * o.scale * o.width >> 1) + 'px'\r\n })\r\n }\r\n\r\n for (; i < o.lines; i++) {\r\n seg = css(createEl(), {\r\n position: 'absolute'\r\n , top: 1 + ~(o.scale * o.width / 2) + 'px'\r\n , transform: o.hwaccel ? 'translate3d(0,0,0)' : ''\r\n , opacity: o.opacity\r\n , animation: useCssAnimations && addAnimation(o.opacity, o.trail, start + i * o.direction, o.lines) + ' ' + 1 / o.speed + 's linear infinite'\r\n })\r\n\r\n if (o.shadow) ins(seg, css(fill('#000', '0 0 4px #000'), {top: '2px'}))\r\n ins(el, ins(seg, fill(getColor(o.color, i), '0 0 1px rgba(0,0,0,.1)')))\r\n }\r\n return el\r\n }\r\n\r\n /**\r\n * Internal method that adjusts the opacity of a single line.\r\n * Will be overwritten in VML fallback mode below.\r\n */\r\n , opacity: function (el, i, val) {\r\n if (i < el.childNodes.length) el.childNodes[i].style.opacity = val\r\n }\r\n\r\n })\r\n\r\n\r\n function initVML () {\r\n\r\n /* Utility function to create a VML tag */\r\n function vml (tag, attr) {\r\n return createEl('<' + tag + ' xmlns=\"urn:schemas-microsoft.com:vml\" class=\"spin-vml\">', attr)\r\n }\r\n\r\n // No CSS transforms but VML support, add a CSS rule for VML elements:\r\n sheet.addRule('.spin-vml', 'behavior:url(#default#VML)')\r\n\r\n Spinner.prototype.lines = function (el, o) {\r\n var r = o.scale * (o.length + o.width)\r\n , s = o.scale * 2 * r\r\n\r\n function grp () {\r\n return css(\r\n vml('group', {\r\n coordsize: s + ' ' + s\r\n , coordorigin: -r + ' ' + -r\r\n })\r\n , { width: s, height: s }\r\n )\r\n }\r\n\r\n var margin = -(o.width + o.length) * o.scale * 2 + 'px'\r\n , g = css(grp(), {position: 'absolute', top: margin, left: margin})\r\n , i\r\n\r\n function seg (i, dx, filter) {\r\n ins(\r\n g\r\n , ins(\r\n css(grp(), {rotation: 360 / o.lines * i + 'deg', left: ~~dx})\r\n , ins(\r\n css(\r\n vml('roundrect', {arcsize: o.corners})\r\n , { width: r\r\n , height: o.scale * o.width\r\n , left: o.scale * o.radius\r\n , top: -o.scale * o.width >> 1\r\n , filter: filter\r\n }\r\n )\r\n , vml('fill', {color: getColor(o.color, i), opacity: o.opacity})\r\n , vml('stroke', {opacity: 0}) // transparent stroke to fix color bleeding upon opacity change\r\n )\r\n )\r\n )\r\n }\r\n\r\n if (o.shadow)\r\n for (i = 1; i <= o.lines; i++) {\r\n seg(i, -2, 'progid:DXImageTransform.Microsoft.Blur(pixelradius=2,makeshadow=1,shadowopacity=.3)')\r\n }\r\n\r\n for (i = 1; i <= o.lines; i++) seg(i)\r\n return ins(el, g)\r\n }\r\n\r\n Spinner.prototype.opacity = function (el, i, val, o) {\r\n var c = el.firstChild\r\n o = o.shadow && o.lines || 0\r\n if (c && i + o < c.childNodes.length) {\r\n c = c.childNodes[i + o]; c = c && c.firstChild; c = c && c.firstChild\r\n if (c) c.opacity = val\r\n }\r\n }\r\n }\r\n\r\n if (typeof document !== 'undefined') {\r\n sheet = (function () {\r\n var el = createEl('style', {type : 'text/css'})\r\n ins(document.getElementsByTagName('head')[0], el)\r\n return el.sheet || el.styleSheet\r\n }())\r\n\r\n var probe = css(createEl('group'), {behavior: 'url(#default#VML)'})\r\n\r\n if (!vendor(probe, 'transform') && probe.adj) initVML()\r\n else useCssAnimations = vendor(probe, 'animation')\r\n }\r\n\r\n return Spinner\r\n\r\n}));"],"names":["root","factory","module","exports","define","amd","Spinner","this","useCssAnimations","prefixes","animations","createEl","tag","prop","n","el","document","createElement","ins","parent","i","arguments","length","appendChild","vendor","pp","s","style","undefined","charAt","toUpperCase","slice","css","merge","obj","def","getColor","color","idx","sheet","defaults","lines","width","radius","scale","corners","opacity","rotate","direction","speed","trail","fps","zIndex","className","top","left","shadow","hwaccel","position","o","opts","vml","attr","prototype","spin","target","stop","start","alpha","f","ostep","astep","self","insertBefore","firstChild","setAttribute","anim","j","Math","max","timeout","setTimeout","clearTimeout","parentNode","removeChild","name","prefix","fill","height","background","boxShadow","transformOrigin","transform","borderRadius","seg","animation","join","z","substring","indexOf","toLowerCase","insertRule","cssRules","val","childNodes","type","getElementsByTagName","styleSheet","probe","behavior","adj","addRule","r","grp","coordsize","coordorigin","margin","g","dx","filter","rotation","arcsize","c"],"mappings":"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"}