{"version":3,"sources":["progress.js"],"names":["$","window","document","undefined","Math","self","Function","fn","progress","parameters","returnedValue","$allModules","this","moduleSelector","selector","time","Date","getTime","performance","query","arguments","methodInvoked","queryArguments","slice","call","each","transitionEnd","module","settings","isPlainObject","extend","className","metadata","namespace","error","eventNamespace","moduleNamespace","$module","$bar","find","bar","$progress","$label","label","element","instance","data","animating","initialize","debug","set","duration","transitionEvent","read","instantiate","verbose","destroy","clearInterval","interval","remove","state","removeData","reset","nextValue","update","complete","percent","progressPoll","total","value","bind","callback","get","one","event","clearTimeout","failSafeTimer","setTimeout","triggerHandler","failSafeDelay","timer","increment","incrementValue","maxValue","startValue","newValue","has","randomValue","normalizedValue","decrement","decrementValue","text","templateText","displayPercent","left","replace","updateInterval","floor","random","max","min","numericValue","transition","createElement","transitions","OTransition","MozTransition","WebkitTransition","style","barWidth","width","totalWidth","minDisplay","parseInt","css","precision","round","create","toNextValue","is","success","warning","hasClass","active","visible","removeClass","tooHigh","tooLow","attr","transition-duration","limitValues","labelInterval","labels","onChange","animationCallback","setInterval","isInDOM","contains","documentElement","framerate","barLabel","autoSuccess","ratio","showActivity","addClass","onLabelUpdate","onActive","onSuccess","onWarning","onError","totalValue","percentComplete","nonNumeric","setting","name","internal","silent","log","prototype","console","info","apply","message","currentTime","executionTime","previousTime","push","Name","Arguments","Element","Execution Time","display","title","totalTime","index","group","table","length","groupCollapsed","groupEnd","invoke","passedArguments","context","maxDepth","found","response","object","split","depth","camelCaseValue","charAt","toUpperCase","method","isFunction","isArray","regExp","variable","jQuery"],"mappings":"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","file":"progress.min.js","sourcesContent":["/*!\n * # Semantic UI 2.2.6 - Progress\n * http://github.com/semantic-org/semantic-ui/\n *\n *\n * Released under the MIT license\n * http://opensource.org/licenses/MIT\n *\n */\n\n;(function ($, window, document, undefined) {\n\n\"use strict\";\n\nwindow = (typeof window != 'undefined' && window.Math == Math)\n ? window\n : (typeof self != 'undefined' && self.Math == Math)\n ? self\n : Function('return this')()\n;\n\nvar\n global = (typeof window != 'undefined' && window.Math == Math)\n ? window\n : (typeof self != 'undefined' && self.Math == Math)\n ? self\n : Function('return this')()\n;\n\n$.fn.progress = function(parameters) {\n var\n $allModules = $(this),\n\n moduleSelector = $allModules.selector || '',\n\n time = new Date().getTime(),\n performance = [],\n\n query = arguments[0],\n methodInvoked = (typeof query == 'string'),\n queryArguments = [].slice.call(arguments, 1),\n\n returnedValue\n ;\n\n $allModules\n .each(function() {\n var\n settings = ( $.isPlainObject(parameters) )\n ? $.extend(true, {}, $.fn.progress.settings, parameters)\n : $.extend({}, $.fn.progress.settings),\n\n className = settings.className,\n metadata = settings.metadata,\n namespace = settings.namespace,\n selector = settings.selector,\n error = settings.error,\n\n eventNamespace = '.' + namespace,\n moduleNamespace = 'module-' + namespace,\n\n $module = $(this),\n $bar = $(this).find(selector.bar),\n $progress = $(this).find(selector.progress),\n $label = $(this).find(selector.label),\n\n element = this,\n instance = $module.data(moduleNamespace),\n\n animating = false,\n transitionEnd,\n module\n ;\n\n module = {\n\n initialize: function() {\n module.debug('Initializing progress bar', settings);\n\n module.set.duration();\n module.set.transitionEvent();\n\n module.read.metadata();\n module.read.settings();\n\n module.instantiate();\n },\n\n instantiate: function() {\n module.verbose('Storing instance of progress', module);\n instance = module;\n $module\n .data(moduleNamespace, module)\n ;\n },\n destroy: function() {\n module.verbose('Destroying previous progress for', $module);\n clearInterval(instance.interval);\n module.remove.state();\n $module.removeData(moduleNamespace);\n instance = undefined;\n },\n\n reset: function() {\n module.remove.nextValue();\n module.update.progress(0);\n },\n\n complete: function() {\n if(module.percent === undefined || module.percent < 100) {\n module.remove.progressPoll();\n module.set.percent(100);\n }\n },\n\n read: {\n metadata: function() {\n var\n data = {\n percent : $module.data(metadata.percent),\n total : $module.data(metadata.total),\n value : $module.data(metadata.value)\n }\n ;\n if(data.percent) {\n module.debug('Current percent value set from metadata', data.percent);\n module.set.percent(data.percent);\n }\n if(data.total) {\n module.debug('Total value set from metadata', data.total);\n module.set.total(data.total);\n }\n if(data.value) {\n module.debug('Current value set from metadata', data.value);\n module.set.value(data.value);\n module.set.progress(data.value);\n }\n },\n settings: function() {\n if(settings.total !== false) {\n module.debug('Current total set in settings', settings.total);\n module.set.total(settings.total);\n }\n if(settings.value !== false) {\n module.debug('Current value set in settings', settings.value);\n module.set.value(settings.value);\n module.set.progress(module.value);\n }\n if(settings.percent !== false) {\n module.debug('Current percent set in settings', settings.percent);\n module.set.percent(settings.percent);\n }\n }\n },\n\n bind: {\n transitionEnd: function(callback) {\n var\n transitionEnd = module.get.transitionEnd()\n ;\n $bar\n .one(transitionEnd + eventNamespace, function(event) {\n clearTimeout(module.failSafeTimer);\n callback.call(this, event);\n })\n ;\n module.failSafeTimer = setTimeout(function() {\n $bar.triggerHandler(transitionEnd);\n }, settings.duration + settings.failSafeDelay);\n module.verbose('Adding fail safe timer', module.timer);\n }\n },\n\n increment: function(incrementValue) {\n var\n maxValue,\n startValue,\n newValue\n ;\n if( module.has.total() ) {\n startValue = module.get.value();\n incrementValue = incrementValue || 1;\n newValue = startValue + incrementValue;\n }\n else {\n startValue = module.get.percent();\n incrementValue = incrementValue || module.get.randomValue();\n\n newValue = startValue + incrementValue;\n maxValue = 100;\n module.debug('Incrementing percentage by', startValue, newValue);\n }\n newValue = module.get.normalizedValue(newValue);\n module.set.progress(newValue);\n },\n decrement: function(decrementValue) {\n var\n total = module.get.total(),\n startValue,\n newValue\n ;\n if(total) {\n startValue = module.get.value();\n decrementValue = decrementValue || 1;\n newValue = startValue - decrementValue;\n module.debug('Decrementing value by', decrementValue, startValue);\n }\n else {\n startValue = module.get.percent();\n decrementValue = decrementValue || module.get.randomValue();\n newValue = startValue - decrementValue;\n module.debug('Decrementing percentage by', decrementValue, startValue);\n }\n newValue = module.get.normalizedValue(newValue);\n module.set.progress(newValue);\n },\n\n has: {\n progressPoll: function() {\n return module.progressPoll;\n },\n total: function() {\n return (module.get.total() !== false);\n }\n },\n\n get: {\n text: function(templateText) {\n var\n value = module.value || 0,\n total = module.total || 0,\n percent = (animating)\n ? module.get.displayPercent()\n : module.percent || 0,\n left = (module.total > 0)\n ? (total - value)\n : (100 - percent)\n ;\n templateText = templateText || '';\n templateText = templateText\n .replace('{value}', value)\n .replace('{total}', total)\n .replace('{left}', left)\n .replace('{percent}', percent)\n ;\n module.verbose('Adding variables to progress bar text', templateText);\n return templateText;\n },\n\n normalizedValue: function(value) {\n if(value < 0) {\n module.debug('Value cannot decrement below 0');\n return 0;\n }\n if(module.has.total()) {\n if(value > module.total) {\n module.debug('Value cannot increment above total', module.total);\n return module.total;\n }\n }\n else if(value > 100 ) {\n module.debug('Value cannot increment above 100 percent');\n return 100;\n }\n return value;\n },\n\n updateInterval: function() {\n if(settings.updateInterval == 'auto') {\n return settings.duration;\n }\n return settings.updateInterval;\n },\n\n randomValue: function() {\n module.debug('Generating random increment percentage');\n return Math.floor((Math.random() * settings.random.max) + settings.random.min);\n },\n\n numericValue: function(value) {\n return (typeof value === 'string')\n ? (value.replace(/[^\\d.]/g, '') !== '')\n ? +(value.replace(/[^\\d.]/g, ''))\n : false\n : value\n ;\n },\n\n transitionEnd: function() {\n var\n element = document.createElement('element'),\n transitions = {\n 'transition' :'transitionend',\n 'OTransition' :'oTransitionEnd',\n 'MozTransition' :'transitionend',\n 'WebkitTransition' :'webkitTransitionEnd'\n },\n transition\n ;\n for(transition in transitions){\n if( element.style[transition] !== undefined ){\n return transitions[transition];\n }\n }\n },\n\n // gets current displayed percentage (if animating values this is the intermediary value)\n displayPercent: function() {\n var\n barWidth = $bar.width(),\n totalWidth = $module.width(),\n minDisplay = parseInt($bar.css('min-width'), 10),\n displayPercent = (barWidth > minDisplay)\n ? (barWidth / totalWidth * 100)\n : module.percent\n ;\n return (settings.precision > 0)\n ? Math.round(displayPercent * (10 * settings.precision)) / (10 * settings.precision)\n : Math.round(displayPercent)\n ;\n },\n\n percent: function() {\n return module.percent || 0;\n },\n value: function() {\n return module.nextValue || module.value || 0;\n },\n total: function() {\n return module.total || false;\n }\n },\n\n create: {\n progressPoll: function() {\n module.progressPoll = setTimeout(function() {\n module.update.toNextValue();\n module.remove.progressPoll();\n }, module.get.updateInterval());\n },\n },\n\n is: {\n complete: function() {\n return module.is.success() || module.is.warning() || module.is.error();\n },\n success: function() {\n return $module.hasClass(className.success);\n },\n warning: function() {\n return $module.hasClass(className.warning);\n },\n error: function() {\n return $module.hasClass(className.error);\n },\n active: function() {\n return $module.hasClass(className.active);\n },\n visible: function() {\n return $module.is(':visible');\n }\n },\n\n remove: {\n progressPoll: function() {\n module.verbose('Removing progress poll timer');\n if(module.progressPoll) {\n clearTimeout(module.progressPoll);\n delete module.progressPoll;\n }\n },\n nextValue: function() {\n module.verbose('Removing progress value stored for next update');\n delete module.nextValue;\n },\n state: function() {\n module.verbose('Removing stored state');\n delete module.total;\n delete module.percent;\n delete module.value;\n },\n active: function() {\n module.verbose('Removing active state');\n $module.removeClass(className.active);\n },\n success: function() {\n module.verbose('Removing success state');\n $module.removeClass(className.success);\n },\n warning: function() {\n module.verbose('Removing warning state');\n $module.removeClass(className.warning);\n },\n error: function() {\n module.verbose('Removing error state');\n $module.removeClass(className.error);\n }\n },\n\n set: {\n barWidth: function(value) {\n if(value > 100) {\n module.error(error.tooHigh, value);\n }\n else if (value < 0) {\n module.error(error.tooLow, value);\n }\n else {\n $bar\n .css('width', value + '%')\n ;\n $module\n .attr('data-percent', parseInt(value, 10))\n ;\n }\n },\n duration: function(duration) {\n duration = duration || settings.duration;\n duration = (typeof duration == 'number')\n ? duration + 'ms'\n : duration\n ;\n module.verbose('Setting progress bar transition duration', duration);\n $bar\n .css({\n 'transition-duration': duration\n })\n ;\n },\n percent: function(percent) {\n percent = (typeof percent == 'string')\n ? +(percent.replace('%', ''))\n : percent\n ;\n // round display percentage\n percent = (settings.precision > 0)\n ? Math.round(percent * (10 * settings.precision)) / (10 * settings.precision)\n : Math.round(percent)\n ;\n module.percent = percent;\n if( !module.has.total() ) {\n module.value = (settings.precision > 0)\n ? Math.round( (percent / 100) * module.total * (10 * settings.precision)) / (10 * settings.precision)\n : Math.round( (percent / 100) * module.total * 10) / 10\n ;\n if(settings.limitValues) {\n module.value = (module.value > 100)\n ? 100\n : (module.value < 0)\n ? 0\n : module.value\n ;\n }\n }\n module.set.barWidth(percent);\n module.set.labelInterval();\n module.set.labels();\n settings.onChange.call(element, percent, module.value, module.total);\n },\n labelInterval: function() {\n var\n animationCallback = function() {\n module.verbose('Bar finished animating, removing continuous label updates');\n clearInterval(module.interval);\n animating = false;\n module.set.labels();\n }\n ;\n clearInterval(module.interval);\n module.bind.transitionEnd(animationCallback);\n animating = true;\n module.interval = setInterval(function() {\n var\n isInDOM = $.contains(document.documentElement, element)\n ;\n if(!isInDOM) {\n clearInterval(module.interval);\n animating = false;\n }\n module.set.labels();\n }, settings.framerate);\n },\n labels: function() {\n module.verbose('Setting both bar progress and outer label text');\n module.set.barLabel();\n module.set.state();\n },\n label: function(text) {\n text = text || '';\n if(text) {\n text = module.get.text(text);\n module.verbose('Setting label to text', text);\n $label.text(text);\n }\n },\n state: function(percent) {\n percent = (percent !== undefined)\n ? percent\n : module.percent\n ;\n if(percent === 100) {\n if(settings.autoSuccess && !(module.is.warning() || module.is.error() || module.is.success())) {\n module.set.success();\n module.debug('Automatically triggering success at 100%');\n }\n else {\n module.verbose('Reached 100% removing active state');\n module.remove.active();\n module.remove.progressPoll();\n }\n }\n else if(percent > 0) {\n module.verbose('Adjusting active progress bar label', percent);\n module.set.active();\n }\n else {\n module.remove.active();\n module.set.label(settings.text.active);\n }\n },\n barLabel: function(text) {\n if(text !== undefined) {\n $progress.text( module.get.text(text) );\n }\n else if(settings.label == 'ratio' && module.total) {\n module.verbose('Adding ratio to bar label');\n $progress.text( module.get.text(settings.text.ratio) );\n }\n else if(settings.label == 'percent') {\n module.verbose('Adding percentage to bar label');\n $progress.text( module.get.text(settings.text.percent) );\n }\n },\n active: function(text) {\n text = text || settings.text.active;\n module.debug('Setting active state');\n if(settings.showActivity && !module.is.active() ) {\n $module.addClass(className.active);\n }\n module.remove.warning();\n module.remove.error();\n module.remove.success();\n text = settings.onLabelUpdate('active', text, module.value, module.total);\n if(text) {\n module.set.label(text);\n }\n module.bind.transitionEnd(function() {\n settings.onActive.call(element, module.value, module.total);\n });\n },\n success : function(text) {\n text = text || settings.text.success || settings.text.active;\n module.debug('Setting success state');\n $module.addClass(className.success);\n module.remove.active();\n module.remove.warning();\n module.remove.error();\n module.complete();\n if(settings.text.success) {\n text = settings.onLabelUpdate('success', text, module.value, module.total);\n module.set.label(text);\n }\n else {\n text = settings.onLabelUpdate('active', text, module.value, module.total);\n module.set.label(text);\n }\n module.bind.transitionEnd(function() {\n settings.onSuccess.call(element, module.total);\n });\n },\n warning : function(text) {\n text = text || settings.text.warning;\n module.debug('Setting warning state');\n $module.addClass(className.warning);\n module.remove.active();\n module.remove.success();\n module.remove.error();\n module.complete();\n text = settings.onLabelUpdate('warning', text, module.value, module.total);\n if(text) {\n module.set.label(text);\n }\n module.bind.transitionEnd(function() {\n settings.onWarning.call(element, module.value, module.total);\n });\n },\n error : function(text) {\n text = text || settings.text.error;\n module.debug('Setting error state');\n $module.addClass(className.error);\n module.remove.active();\n module.remove.success();\n module.remove.warning();\n module.complete();\n text = settings.onLabelUpdate('error', text, module.value, module.total);\n if(text) {\n module.set.label(text);\n }\n module.bind.transitionEnd(function() {\n settings.onError.call(element, module.value, module.total);\n });\n },\n transitionEvent: function() {\n transitionEnd = module.get.transitionEnd();\n },\n total: function(totalValue) {\n module.total = totalValue;\n },\n value: function(value) {\n module.value = value;\n },\n progress: function(value) {\n if(!module.has.progressPoll()) {\n module.debug('First update in progress update interval, immediately updating', value);\n module.update.progress(value);\n module.create.progressPoll();\n }\n else {\n module.debug('Updated within interval, setting next update to use new value', value);\n module.set.nextValue(value);\n }\n },\n nextValue: function(value) {\n module.nextValue = value;\n }\n },\n\n update: {\n toNextValue: function() {\n var\n nextValue = module.nextValue\n ;\n if(nextValue) {\n module.debug('Update interval complete using last updated value', nextValue);\n module.update.progress(nextValue);\n module.remove.nextValue();\n }\n },\n progress: function(value) {\n var\n percentComplete\n ;\n value = module.get.numericValue(value);\n if(value === false) {\n module.error(error.nonNumeric, value);\n }\n value = module.get.normalizedValue(value);\n if( module.has.total() ) {\n module.set.value(value);\n percentComplete = (value / module.total) * 100;\n module.debug('Calculating percent complete from total', percentComplete);\n module.set.percent( percentComplete );\n }\n else {\n percentComplete = value;\n module.debug('Setting value to exact percentage value', percentComplete);\n module.set.percent( percentComplete );\n }\n }\n },\n\n setting: function(name, value) {\n module.debug('Changing setting', name, value);\n if( $.isPlainObject(name) ) {\n $.extend(true, settings, name);\n }\n else if(value !== undefined) {\n if($.isPlainObject(settings[name])) {\n $.extend(true, settings[name], value);\n }\n else {\n settings[name] = value;\n }\n }\n else {\n return settings[name];\n }\n },\n internal: function(name, value) {\n if( $.isPlainObject(name) ) {\n $.extend(true, module, name);\n }\n else if(value !== undefined) {\n module[name] = value;\n }\n else {\n return module[name];\n }\n },\n debug: function() {\n if(!settings.silent && settings.debug) {\n if(settings.performance) {\n module.performance.log(arguments);\n }\n else {\n module.debug = Function.prototype.bind.call(console.info, console, settings.name + ':');\n module.debug.apply(console, arguments);\n }\n }\n },\n verbose: function() {\n if(!settings.silent && settings.verbose && settings.debug) {\n if(settings.performance) {\n module.performance.log(arguments);\n }\n else {\n module.verbose = Function.prototype.bind.call(console.info, console, settings.name + ':');\n module.verbose.apply(console, arguments);\n }\n }\n },\n error: function() {\n if(!settings.silent) {\n module.error = Function.prototype.bind.call(console.error, console, settings.name + ':');\n module.error.apply(console, arguments);\n }\n },\n performance: {\n log: function(message) {\n var\n currentTime,\n executionTime,\n previousTime\n ;\n if(settings.performance) {\n currentTime = new Date().getTime();\n previousTime = time || currentTime;\n executionTime = currentTime - previousTime;\n time = currentTime;\n performance.push({\n 'Name' : message[0],\n 'Arguments' : [].slice.call(message, 1) || '',\n 'Element' : element,\n 'Execution Time' : executionTime\n });\n }\n clearTimeout(module.performance.timer);\n module.performance.timer = setTimeout(module.performance.display, 500);\n },\n display: function() {\n var\n title = settings.name + ':',\n totalTime = 0\n ;\n time = false;\n clearTimeout(module.performance.timer);\n $.each(performance, function(index, data) {\n totalTime += data['Execution Time'];\n });\n title += ' ' + totalTime + 'ms';\n if(moduleSelector) {\n title += ' \\'' + moduleSelector + '\\'';\n }\n if( (console.group !== undefined || console.table !== undefined) && performance.length > 0) {\n console.groupCollapsed(title);\n if(console.table) {\n console.table(performance);\n }\n else {\n $.each(performance, function(index, data) {\n console.log(data['Name'] + ': ' + data['Execution Time']+'ms');\n });\n }\n console.groupEnd();\n }\n performance = [];\n }\n },\n invoke: function(query, passedArguments, context) {\n var\n object = instance,\n maxDepth,\n found,\n response\n ;\n passedArguments = passedArguments || queryArguments;\n context = element || context;\n if(typeof query == 'string' && object !== undefined) {\n query = query.split(/[\\. ]/);\n maxDepth = query.length - 1;\n $.each(query, function(depth, value) {\n var camelCaseValue = (depth != maxDepth)\n ? value + query[depth + 1].charAt(0).toUpperCase() + query[depth + 1].slice(1)\n : query\n ;\n if( $.isPlainObject( object[camelCaseValue] ) && (depth != maxDepth) ) {\n object = object[camelCaseValue];\n }\n else if( object[camelCaseValue] !== undefined ) {\n found = object[camelCaseValue];\n return false;\n }\n else if( $.isPlainObject( object[value] ) && (depth != maxDepth) ) {\n object = object[value];\n }\n else if( object[value] !== undefined ) {\n found = object[value];\n return false;\n }\n else {\n module.error(error.method, query);\n return false;\n }\n });\n }\n if ( $.isFunction( found ) ) {\n response = found.apply(context, passedArguments);\n }\n else if(found !== undefined) {\n response = found;\n }\n if($.isArray(returnedValue)) {\n returnedValue.push(response);\n }\n else if(returnedValue !== undefined) {\n returnedValue = [returnedValue, response];\n }\n else if(response !== undefined) {\n returnedValue = response;\n }\n return found;\n }\n };\n\n if(methodInvoked) {\n if(instance === undefined) {\n module.initialize();\n }\n module.invoke(query);\n }\n else {\n if(instance !== undefined) {\n instance.invoke('destroy');\n }\n module.initialize();\n }\n })\n ;\n\n return (returnedValue !== undefined)\n ? returnedValue\n : this\n ;\n};\n\n$.fn.progress.settings = {\n\n name : 'Progress',\n namespace : 'progress',\n\n silent : false,\n debug : false,\n verbose : false,\n performance : true,\n\n random : {\n min : 2,\n max : 5\n },\n\n duration : 300,\n\n updateInterval : 'auto',\n\n autoSuccess : true,\n showActivity : true,\n limitValues : true,\n\n label : 'percent',\n precision : 0,\n framerate : (1000 / 30), /// 30 fps\n\n percent : false,\n total : false,\n value : false,\n\n // delay in ms for fail safe animation callback\n failSafeDelay : 100,\n\n onLabelUpdate : function(state, text, value, total){\n return text;\n },\n onChange : function(percent, value, total){},\n onSuccess : function(total){},\n onActive : function(value, total){},\n onError : function(value, total){},\n onWarning : function(value, total){},\n\n error : {\n method : 'The method you called is not defined.',\n nonNumeric : 'Progress value is non numeric',\n tooHigh : 'Value specified is above 100%',\n tooLow : 'Value specified is below 0%'\n },\n\n regExp: {\n variable: /\\{\\$*[A-z0-9]+\\}/g\n },\n\n metadata: {\n percent : 'percent',\n total : 'total',\n value : 'value'\n },\n\n selector : {\n bar : '> .bar',\n label : '> .label',\n progress : '.bar > .progress'\n },\n\n text : {\n active : false,\n error : false,\n success : false,\n warning : false,\n percent : '{percent}%',\n ratio : '{value} of {total}'\n },\n\n className : {\n active : 'active',\n error : 'error',\n success : 'success',\n warning : 'warning'\n }\n\n};\n\n\n})( jQuery, window, document );\n"]}