{"version":3,"sources":["../bower_components/pace/pace.js"],"names":["__extends","child","parent","key","__hasProp","call","ctor","this","constructor","prototype","__super__","AjaxMonitor","Bar","ElementTracker","EventLagMonitor","NoTargetError","Pace","RequestIntercept","SOURCE_KEYS","Scaler","SocketRequestTracker","XHRRequestTracker","animation","avgAmplitude","bar","cancelAnimation","cancelAnimationFrame","defaultOptions","extend","extendNative","getFromDOM","getIntercept","handlePushState","ignoreStack","init","now","options","requestAnimationFrame","result","runAnimation","scalers","shouldIgnoreURL","shouldTrack","source","sources","uniScaler","_WebSocket","_XDomainRequest","_XMLHttpRequest","_i","_intercept","_len","_pushState","_ref","_replaceState","_super","__slice","slice","hasOwnProperty","__indexOf","indexOf","item","i","l","length","Evented","catchupTime","initialRate","minTime","ghostTime","maxProgressPerFrame","easeFactor","startOnPageLoad","restartOnPushState","restartOnRequestAfter","target","elements","checkInterval","selectors","eventLag","minSamples","sampleCount","lagThreshold","ajax","trackMethods","trackWebSockets","ignoreURLs","performance","Date","window","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","mozCancelAnimationFrame","fn","setTimeout","id","clearTimeout","last","tick","diff","obj","arguments","args","apply","val","out","arr","count","v","sum","Math","abs","json","el","document","querySelector","data","getAttribute","JSON","parse","_error","console","error","on","event","handler","ctx","once","_base","bindings","push","off","_results","splice","trigger","_ref1","paceOptions","progress","Events","monitorXHR","_this","req","_open","open","type","url","async","request","XMLHttpRequest","flags","XDomainRequest","WebSocket","protocols","watch","selector","check","DocumentMonitor","_onreadystatechange","_ref2","states","readyState","onreadystatechange","sinceLastUpdate","rate","catchup","lastProgress","Error","getElement","targetElement","createElement","className","body","replace","innerHTML","firstChild","insertBefore","appendChild","finish","update","prog","render","destroy","parentNode","removeChild","progressStr","transform","_j","_len1","children","style","lastRenderedProgress","setAttribute","done","name","binding","to","from","Object","defineProperty","get","configurable","enumerable","e","ignore","unshift","ret","shift","track","method","toUpperCase","pattern","test","_arg","running","after","_ref3","stillActive","restart","tracker","ProgressEvent","addEventListener","evt","lengthComputable","loaded","total","ElementMonitor","loading","interactive","complete","avg","interval","points","samples","setInterval","clearInterval","frameTime","scaling","pow","min","max","history","pushState","replaceState","_k","_len2","_ref4","extraSources","stop","start","go","enqueueNextFrame","j","scaler","scalerList","element","_options","define","amd","exports","module"],"mappings":"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","file":"pace.js","sourcesContent":["(function() {\n var AjaxMonitor, Bar, DocumentMonitor, ElementMonitor, ElementTracker, EventLagMonitor, Evented, Events, NoTargetError, Pace, RequestIntercept, SOURCE_KEYS, Scaler, SocketRequestTracker, XHRRequestTracker, animation, avgAmplitude, bar, cancelAnimation, cancelAnimationFrame, defaultOptions, extend, extendNative, getFromDOM, getIntercept, handlePushState, ignoreStack, init, now, options, requestAnimationFrame, result, runAnimation, scalers, shouldIgnoreURL, shouldTrack, source, sources, uniScaler, _WebSocket, _XDomainRequest, _XMLHttpRequest, _i, _intercept, _len, _pushState, _ref, _ref1, _replaceState,\n __slice = [].slice,\n __hasProp = {}.hasOwnProperty,\n __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; };\n\n defaultOptions = {\n catchupTime: 100,\n initialRate: .03,\n minTime: 250,\n ghostTime: 100,\n maxProgressPerFrame: 20,\n easeFactor: 1.25,\n startOnPageLoad: true,\n restartOnPushState: true,\n restartOnRequestAfter: 500,\n target: 'body',\n elements: {\n checkInterval: 100,\n selectors: ['body']\n },\n eventLag: {\n minSamples: 10,\n sampleCount: 3,\n lagThreshold: 3\n },\n ajax: {\n trackMethods: ['GET'],\n trackWebSockets: true,\n ignoreURLs: []\n }\n };\n\n now = function() {\n var _ref;\n return (_ref = typeof performance !== \"undefined\" && performance !== null ? typeof performance.now === \"function\" ? performance.now() : void 0 : void 0) != null ? _ref : +(new Date);\n };\n\n requestAnimationFrame = window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || window.msRequestAnimationFrame;\n\n cancelAnimationFrame = window.cancelAnimationFrame || window.mozCancelAnimationFrame;\n\n if (requestAnimationFrame == null) {\n requestAnimationFrame = function(fn) {\n return setTimeout(fn, 50);\n };\n cancelAnimationFrame = function(id) {\n return clearTimeout(id);\n };\n }\n\n runAnimation = function(fn) {\n var last, tick;\n last = now();\n tick = function() {\n var diff;\n diff = now() - last;\n if (diff >= 33) {\n last = now();\n return fn(diff, function() {\n return requestAnimationFrame(tick);\n });\n } else {\n return setTimeout(tick, 33 - diff);\n }\n };\n return tick();\n };\n\n result = function() {\n var args, key, obj;\n obj = arguments[0], key = arguments[1], args = 3 <= arguments.length ? __slice.call(arguments, 2) : [];\n if (typeof obj[key] === 'function') {\n return obj[key].apply(obj, args);\n } else {\n return obj[key];\n }\n };\n\n extend = function() {\n var key, out, source, sources, val, _i, _len;\n out = arguments[0], sources = 2 <= arguments.length ? __slice.call(arguments, 1) : [];\n for (_i = 0, _len = sources.length; _i < _len; _i++) {\n source = sources[_i];\n if (source) {\n for (key in source) {\n if (!__hasProp.call(source, key)) continue;\n val = source[key];\n if ((out[key] != null) && typeof out[key] === 'object' && (val != null) && typeof val === 'object') {\n extend(out[key], val);\n } else {\n out[key] = val;\n }\n }\n }\n }\n return out;\n };\n\n avgAmplitude = function(arr) {\n var count, sum, v, _i, _len;\n sum = count = 0;\n for (_i = 0, _len = arr.length; _i < _len; _i++) {\n v = arr[_i];\n sum += Math.abs(v);\n count++;\n }\n return sum / count;\n };\n\n getFromDOM = function(key, json) {\n var data, e, el;\n if (key == null) {\n key = 'options';\n }\n if (json == null) {\n json = true;\n }\n el = document.querySelector(\"[data-pace-\" + key + \"]\");\n if (!el) {\n return;\n }\n data = el.getAttribute(\"data-pace-\" + key);\n if (!json) {\n return data;\n }\n try {\n return JSON.parse(data);\n } catch (_error) {\n e = _error;\n return typeof console !== \"undefined\" && console !== null ? console.error(\"Error parsing inline pace options\", e) : void 0;\n }\n };\n\n Evented = (function() {\n function Evented() {}\n\n Evented.prototype.on = function(event, handler, ctx, once) {\n var _base;\n if (once == null) {\n once = false;\n }\n if (this.bindings == null) {\n this.bindings = {};\n }\n if ((_base = this.bindings)[event] == null) {\n _base[event] = [];\n }\n return this.bindings[event].push({\n handler: handler,\n ctx: ctx,\n once: once\n });\n };\n\n Evented.prototype.once = function(event, handler, ctx) {\n return this.on(event, handler, ctx, true);\n };\n\n Evented.prototype.off = function(event, handler) {\n var i, _ref, _results;\n if (((_ref = this.bindings) != null ? _ref[event] : void 0) == null) {\n return;\n }\n if (handler == null) {\n return delete this.bindings[event];\n } else {\n i = 0;\n _results = [];\n while (i < this.bindings[event].length) {\n if (this.bindings[event][i].handler === handler) {\n _results.push(this.bindings[event].splice(i, 1));\n } else {\n _results.push(i++);\n }\n }\n return _results;\n }\n };\n\n Evented.prototype.trigger = function() {\n var args, ctx, event, handler, i, once, _ref, _ref1, _results;\n event = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];\n if ((_ref = this.bindings) != null ? _ref[event] : void 0) {\n i = 0;\n _results = [];\n while (i < this.bindings[event].length) {\n _ref1 = this.bindings[event][i], handler = _ref1.handler, ctx = _ref1.ctx, once = _ref1.once;\n handler.apply(ctx != null ? ctx : this, args);\n if (once) {\n _results.push(this.bindings[event].splice(i, 1));\n } else {\n _results.push(i++);\n }\n }\n return _results;\n }\n };\n\n return Evented;\n\n })();\n\n Pace = window.Pace || {};\n\n window.Pace = Pace;\n\n extend(Pace, Evented.prototype);\n\n options = Pace.options = extend({}, defaultOptions, window.paceOptions, getFromDOM());\n\n _ref = ['ajax', 'document', 'eventLag', 'elements'];\n for (_i = 0, _len = _ref.length; _i < _len; _i++) {\n source = _ref[_i];\n if (options[source] === true) {\n options[source] = defaultOptions[source];\n }\n }\n\n NoTargetError = (function(_super) {\n __extends(NoTargetError, _super);\n\n function NoTargetError() {\n _ref1 = NoTargetError.__super__.constructor.apply(this, arguments);\n return _ref1;\n }\n\n return NoTargetError;\n\n })(Error);\n\n Bar = (function() {\n function Bar() {\n this.progress = 0;\n }\n\n Bar.prototype.getElement = function() {\n var targetElement;\n if (this.el == null) {\n targetElement = document.querySelector(options.target);\n if (!targetElement) {\n throw new NoTargetError;\n }\n this.el = document.createElement('div');\n this.el.className = \"pace pace-active\";\n document.body.className = document.body.className.replace(/pace-done/g, '');\n document.body.className += ' pace-running';\n this.el.innerHTML = '
\\n
\\n
\\n
';\n if (targetElement.firstChild != null) {\n targetElement.insertBefore(this.el, targetElement.firstChild);\n } else {\n targetElement.appendChild(this.el);\n }\n }\n return this.el;\n };\n\n Bar.prototype.finish = function() {\n var el;\n el = this.getElement();\n el.className = el.className.replace('pace-active', '');\n el.className += ' pace-inactive';\n document.body.className = document.body.className.replace('pace-running', '');\n return document.body.className += ' pace-done';\n };\n\n Bar.prototype.update = function(prog) {\n this.progress = prog;\n return this.render();\n };\n\n Bar.prototype.destroy = function() {\n try {\n this.getElement().parentNode.removeChild(this.getElement());\n } catch (_error) {\n NoTargetError = _error;\n }\n return this.el = void 0;\n };\n\n Bar.prototype.render = function() {\n var el, key, progressStr, transform, _j, _len1, _ref2;\n if (document.querySelector(options.target) == null) {\n return false;\n }\n el = this.getElement();\n transform = \"translate3d(\" + this.progress + \"%, 0, 0)\";\n _ref2 = ['webkitTransform', 'msTransform', 'transform'];\n for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {\n key = _ref2[_j];\n el.children[0].style[key] = transform;\n }\n if (!this.lastRenderedProgress || this.lastRenderedProgress | 0 !== this.progress | 0) {\n el.children[0].setAttribute('data-progress-text', \"\" + (this.progress | 0) + \"%\");\n if (this.progress >= 100) {\n progressStr = '99';\n } else {\n progressStr = this.progress < 10 ? \"0\" : \"\";\n progressStr += this.progress | 0;\n }\n el.children[0].setAttribute('data-progress', \"\" + progressStr);\n }\n return this.lastRenderedProgress = this.progress;\n };\n\n Bar.prototype.done = function() {\n return this.progress >= 100;\n };\n\n return Bar;\n\n })();\n\n Events = (function() {\n function Events() {\n this.bindings = {};\n }\n\n Events.prototype.trigger = function(name, val) {\n var binding, _j, _len1, _ref2, _results;\n if (this.bindings[name] != null) {\n _ref2 = this.bindings[name];\n _results = [];\n for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {\n binding = _ref2[_j];\n _results.push(binding.call(this, val));\n }\n return _results;\n }\n };\n\n Events.prototype.on = function(name, fn) {\n var _base;\n if ((_base = this.bindings)[name] == null) {\n _base[name] = [];\n }\n return this.bindings[name].push(fn);\n };\n\n return Events;\n\n })();\n\n _XMLHttpRequest = window.XMLHttpRequest;\n\n _XDomainRequest = window.XDomainRequest;\n\n _WebSocket = window.WebSocket;\n\n extendNative = function(to, from) {\n var e, key, _results;\n _results = [];\n for (key in from.prototype) {\n try {\n if ((to[key] == null) && typeof from[key] !== 'function') {\n if (typeof Object.defineProperty === 'function') {\n _results.push(Object.defineProperty(to, key, {\n get: function() {\n return from.prototype[key];\n },\n configurable: true,\n enumerable: true\n }));\n } else {\n _results.push(to[key] = from.prototype[key]);\n }\n } else {\n _results.push(void 0);\n }\n } catch (_error) {\n e = _error;\n }\n }\n return _results;\n };\n\n ignoreStack = [];\n\n Pace.ignore = function() {\n var args, fn, ret;\n fn = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];\n ignoreStack.unshift('ignore');\n ret = fn.apply(null, args);\n ignoreStack.shift();\n return ret;\n };\n\n Pace.track = function() {\n var args, fn, ret;\n fn = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];\n ignoreStack.unshift('track');\n ret = fn.apply(null, args);\n ignoreStack.shift();\n return ret;\n };\n\n shouldTrack = function(method) {\n var _ref2;\n if (method == null) {\n method = 'GET';\n }\n if (ignoreStack[0] === 'track') {\n return 'force';\n }\n if (!ignoreStack.length && options.ajax) {\n if (method === 'socket' && options.ajax.trackWebSockets) {\n return true;\n } else if (_ref2 = method.toUpperCase(), __indexOf.call(options.ajax.trackMethods, _ref2) >= 0) {\n return true;\n }\n }\n return false;\n };\n\n RequestIntercept = (function(_super) {\n __extends(RequestIntercept, _super);\n\n function RequestIntercept() {\n var monitorXHR,\n _this = this;\n RequestIntercept.__super__.constructor.apply(this, arguments);\n monitorXHR = function(req) {\n var _open;\n _open = req.open;\n return req.open = function(type, url, async) {\n if (shouldTrack(type)) {\n _this.trigger('request', {\n type: type,\n url: url,\n request: req\n });\n }\n return _open.apply(req, arguments);\n };\n };\n window.XMLHttpRequest = function(flags) {\n var req;\n req = new _XMLHttpRequest(flags);\n monitorXHR(req);\n return req;\n };\n try {\n extendNative(window.XMLHttpRequest, _XMLHttpRequest);\n } catch (_error) {}\n if (_XDomainRequest != null) {\n window.XDomainRequest = function() {\n var req;\n req = new _XDomainRequest;\n monitorXHR(req);\n return req;\n };\n try {\n extendNative(window.XDomainRequest, _XDomainRequest);\n } catch (_error) {}\n }\n if ((_WebSocket != null) && options.ajax.trackWebSockets) {\n window.WebSocket = function(url, protocols) {\n var req;\n if (protocols != null) {\n req = new _WebSocket(url, protocols);\n } else {\n req = new _WebSocket(url);\n }\n if (shouldTrack('socket')) {\n _this.trigger('request', {\n type: 'socket',\n url: url,\n protocols: protocols,\n request: req\n });\n }\n return req;\n };\n try {\n extendNative(window.WebSocket, _WebSocket);\n } catch (_error) {}\n }\n }\n\n return RequestIntercept;\n\n })(Events);\n\n _intercept = null;\n\n getIntercept = function() {\n if (_intercept == null) {\n _intercept = new RequestIntercept;\n }\n return _intercept;\n };\n\n shouldIgnoreURL = function(url) {\n var pattern, _j, _len1, _ref2;\n _ref2 = options.ajax.ignoreURLs;\n for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {\n pattern = _ref2[_j];\n if (typeof pattern === 'string') {\n if (url.indexOf(pattern) !== -1) {\n return true;\n }\n } else {\n if (pattern.test(url)) {\n return true;\n }\n }\n }\n return false;\n };\n\n getIntercept().on('request', function(_arg) {\n var after, args, request, type, url;\n type = _arg.type, request = _arg.request, url = _arg.url;\n if (shouldIgnoreURL(url)) {\n return;\n }\n if (!Pace.running && (options.restartOnRequestAfter !== false || shouldTrack(type) === 'force')) {\n args = arguments;\n after = options.restartOnRequestAfter || 0;\n if (typeof after === 'boolean') {\n after = 0;\n }\n return setTimeout(function() {\n var stillActive, _j, _len1, _ref2, _ref3, _results;\n if (type === 'socket') {\n stillActive = request.readyState < 2;\n } else {\n stillActive = (0 < (_ref2 = request.readyState) && _ref2 < 4);\n }\n if (stillActive) {\n Pace.restart();\n _ref3 = Pace.sources;\n _results = [];\n for (_j = 0, _len1 = _ref3.length; _j < _len1; _j++) {\n source = _ref3[_j];\n if (source instanceof AjaxMonitor) {\n source.watch.apply(source, args);\n break;\n } else {\n _results.push(void 0);\n }\n }\n return _results;\n }\n }, after);\n }\n });\n\n AjaxMonitor = (function() {\n function AjaxMonitor() {\n var _this = this;\n this.elements = [];\n getIntercept().on('request', function() {\n return _this.watch.apply(_this, arguments);\n });\n }\n\n AjaxMonitor.prototype.watch = function(_arg) {\n var request, tracker, type, url;\n type = _arg.type, request = _arg.request, url = _arg.url;\n if (shouldIgnoreURL(url)) {\n return;\n }\n if (type === 'socket') {\n tracker = new SocketRequestTracker(request);\n } else {\n tracker = new XHRRequestTracker(request);\n }\n return this.elements.push(tracker);\n };\n\n return AjaxMonitor;\n\n })();\n\n XHRRequestTracker = (function() {\n function XHRRequestTracker(request) {\n var event, size, _j, _len1, _onreadystatechange, _ref2,\n _this = this;\n this.progress = 0;\n if (window.ProgressEvent != null) {\n size = null;\n request.addEventListener('progress', function(evt) {\n if (evt.lengthComputable) {\n return _this.progress = 100 * evt.loaded / evt.total;\n } else {\n return _this.progress = _this.progress + (100 - _this.progress) / 2;\n }\n }, false);\n _ref2 = ['load', 'abort', 'timeout', 'error'];\n for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {\n event = _ref2[_j];\n request.addEventListener(event, function() {\n return _this.progress = 100;\n }, false);\n }\n } else {\n _onreadystatechange = request.onreadystatechange;\n request.onreadystatechange = function() {\n var _ref3;\n if ((_ref3 = request.readyState) === 0 || _ref3 === 4) {\n _this.progress = 100;\n } else if (request.readyState === 3) {\n _this.progress = 50;\n }\n return typeof _onreadystatechange === \"function\" ? _onreadystatechange.apply(null, arguments) : void 0;\n };\n }\n }\n\n return XHRRequestTracker;\n\n })();\n\n SocketRequestTracker = (function() {\n function SocketRequestTracker(request) {\n var event, _j, _len1, _ref2,\n _this = this;\n this.progress = 0;\n _ref2 = ['error', 'open'];\n for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {\n event = _ref2[_j];\n request.addEventListener(event, function() {\n return _this.progress = 100;\n }, false);\n }\n }\n\n return SocketRequestTracker;\n\n })();\n\n ElementMonitor = (function() {\n function ElementMonitor(options) {\n var selector, _j, _len1, _ref2;\n if (options == null) {\n options = {};\n }\n this.elements = [];\n if (options.selectors == null) {\n options.selectors = [];\n }\n _ref2 = options.selectors;\n for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {\n selector = _ref2[_j];\n this.elements.push(new ElementTracker(selector));\n }\n }\n\n return ElementMonitor;\n\n })();\n\n ElementTracker = (function() {\n function ElementTracker(selector) {\n this.selector = selector;\n this.progress = 0;\n this.check();\n }\n\n ElementTracker.prototype.check = function() {\n var _this = this;\n if (document.querySelector(this.selector)) {\n return this.done();\n } else {\n return setTimeout((function() {\n return _this.check();\n }), options.elements.checkInterval);\n }\n };\n\n ElementTracker.prototype.done = function() {\n return this.progress = 100;\n };\n\n return ElementTracker;\n\n })();\n\n DocumentMonitor = (function() {\n DocumentMonitor.prototype.states = {\n loading: 0,\n interactive: 50,\n complete: 100\n };\n\n function DocumentMonitor() {\n var _onreadystatechange, _ref2,\n _this = this;\n this.progress = (_ref2 = this.states[document.readyState]) != null ? _ref2 : 100;\n _onreadystatechange = document.onreadystatechange;\n document.onreadystatechange = function() {\n if (_this.states[document.readyState] != null) {\n _this.progress = _this.states[document.readyState];\n }\n return typeof _onreadystatechange === \"function\" ? _onreadystatechange.apply(null, arguments) : void 0;\n };\n }\n\n return DocumentMonitor;\n\n })();\n\n EventLagMonitor = (function() {\n function EventLagMonitor() {\n var avg, interval, last, points, samples,\n _this = this;\n this.progress = 0;\n avg = 0;\n samples = [];\n points = 0;\n last = now();\n interval = setInterval(function() {\n var diff;\n diff = now() - last - 50;\n last = now();\n samples.push(diff);\n if (samples.length > options.eventLag.sampleCount) {\n samples.shift();\n }\n avg = avgAmplitude(samples);\n if (++points >= options.eventLag.minSamples && avg < options.eventLag.lagThreshold) {\n _this.progress = 100;\n return clearInterval(interval);\n } else {\n return _this.progress = 100 * (3 / (avg + 3));\n }\n }, 50);\n }\n\n return EventLagMonitor;\n\n })();\n\n Scaler = (function() {\n function Scaler(source) {\n this.source = source;\n this.last = this.sinceLastUpdate = 0;\n this.rate = options.initialRate;\n this.catchup = 0;\n this.progress = this.lastProgress = 0;\n if (this.source != null) {\n this.progress = result(this.source, 'progress');\n }\n }\n\n Scaler.prototype.tick = function(frameTime, val) {\n var scaling;\n if (val == null) {\n val = result(this.source, 'progress');\n }\n if (val >= 100) {\n this.done = true;\n }\n if (val === this.last) {\n this.sinceLastUpdate += frameTime;\n } else {\n if (this.sinceLastUpdate) {\n this.rate = (val - this.last) / this.sinceLastUpdate;\n }\n this.catchup = (val - this.progress) / options.catchupTime;\n this.sinceLastUpdate = 0;\n this.last = val;\n }\n if (val > this.progress) {\n this.progress += this.catchup * frameTime;\n }\n scaling = 1 - Math.pow(this.progress / 100, options.easeFactor);\n this.progress += scaling * this.rate * frameTime;\n this.progress = Math.min(this.lastProgress + options.maxProgressPerFrame, this.progress);\n this.progress = Math.max(0, this.progress);\n this.progress = Math.min(100, this.progress);\n this.lastProgress = this.progress;\n return this.progress;\n };\n\n return Scaler;\n\n })();\n\n sources = null;\n\n scalers = null;\n\n bar = null;\n\n uniScaler = null;\n\n animation = null;\n\n cancelAnimation = null;\n\n Pace.running = false;\n\n handlePushState = function() {\n if (options.restartOnPushState) {\n return Pace.restart();\n }\n };\n\n if (window.history.pushState != null) {\n _pushState = window.history.pushState;\n window.history.pushState = function() {\n handlePushState();\n return _pushState.apply(window.history, arguments);\n };\n }\n\n if (window.history.replaceState != null) {\n _replaceState = window.history.replaceState;\n window.history.replaceState = function() {\n handlePushState();\n return _replaceState.apply(window.history, arguments);\n };\n }\n\n SOURCE_KEYS = {\n ajax: AjaxMonitor,\n elements: ElementMonitor,\n document: DocumentMonitor,\n eventLag: EventLagMonitor\n };\n\n (init = function() {\n var type, _j, _k, _len1, _len2, _ref2, _ref3, _ref4;\n Pace.sources = sources = [];\n _ref2 = ['ajax', 'elements', 'document', 'eventLag'];\n for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {\n type = _ref2[_j];\n if (options[type] !== false) {\n sources.push(new SOURCE_KEYS[type](options[type]));\n }\n }\n _ref4 = (_ref3 = options.extraSources) != null ? _ref3 : [];\n for (_k = 0, _len2 = _ref4.length; _k < _len2; _k++) {\n source = _ref4[_k];\n sources.push(new source(options));\n }\n Pace.bar = bar = new Bar;\n scalers = [];\n return uniScaler = new Scaler;\n })();\n\n Pace.stop = function() {\n Pace.trigger('stop');\n Pace.running = false;\n bar.destroy();\n cancelAnimation = true;\n if (animation != null) {\n if (typeof cancelAnimationFrame === \"function\") {\n cancelAnimationFrame(animation);\n }\n animation = null;\n }\n return init();\n };\n\n Pace.restart = function() {\n Pace.trigger('restart');\n Pace.stop();\n return Pace.start();\n };\n\n Pace.go = function() {\n var start;\n Pace.running = true;\n bar.render();\n start = now();\n cancelAnimation = false;\n return animation = runAnimation(function(frameTime, enqueueNextFrame) {\n var avg, count, done, element, elements, i, j, remaining, scaler, scalerList, sum, _j, _k, _len1, _len2, _ref2;\n remaining = 100 - bar.progress;\n count = sum = 0;\n done = true;\n for (i = _j = 0, _len1 = sources.length; _j < _len1; i = ++_j) {\n source = sources[i];\n scalerList = scalers[i] != null ? scalers[i] : scalers[i] = [];\n elements = (_ref2 = source.elements) != null ? _ref2 : [source];\n for (j = _k = 0, _len2 = elements.length; _k < _len2; j = ++_k) {\n element = elements[j];\n scaler = scalerList[j] != null ? scalerList[j] : scalerList[j] = new Scaler(element);\n done &= scaler.done;\n if (scaler.done) {\n continue;\n }\n count++;\n sum += scaler.tick(frameTime);\n }\n }\n avg = sum / count;\n bar.update(uniScaler.tick(frameTime, avg));\n if (bar.done() || done || cancelAnimation) {\n bar.update(100);\n Pace.trigger('done');\n return setTimeout(function() {\n bar.finish();\n Pace.running = false;\n return Pace.trigger('hide');\n }, Math.max(options.ghostTime, Math.max(options.minTime - (now() - start), 0)));\n } else {\n return enqueueNextFrame();\n }\n });\n };\n\n Pace.start = function(_options) {\n extend(options, _options);\n Pace.running = true;\n try {\n bar.render();\n } catch (_error) {\n NoTargetError = _error;\n }\n if (!document.querySelector('.pace')) {\n return setTimeout(Pace.start, 50);\n } else {\n Pace.trigger('start');\n return Pace.go();\n }\n };\n\n if (typeof define === 'function' && define.amd) {\n define(['pace'], function() {\n return Pace;\n });\n } else if (typeof exports === 'object') {\n module.exports = Pace;\n } else {\n if (options.startOnPageLoad) {\n Pace.start();\n }\n }\n\n}).call(this);\n"],"sourceRoot":"assets/scripts/"}