Files
DzzOffice/static/js/pace.min.js

801 lines
22 KiB
JavaScript

/*!
* pace.js v1.2.4
* https://github.com/CodeByZach/pace/
* Licensed MIT © HubSpot, Inc.
*/
!function () {
function o(t, e) {
return function () {
return t.apply(e, arguments);
};
}
var u,
c,
i,
s,
n,
y,
t,
l,
v,
r,
a,
p,
e,
h,
w,
b,
f,
g,
d,
m,
k,
S,
q,
L,
x,
P,
T,
R,
j,
O,
E,
M,
A,
C,
N,
_,
F,
U,
W,
X,
D,
H,
I,
z,
G,
B,
J = [].slice,
K = {}.hasOwnProperty,
Q = function (t, e) {
for (var n in e) K.call(e, n) && (t[n] = e[n]);
function r() {
this.constructor = t;
}
return (
(r.prototype = e.prototype),
(t.prototype = new r()),
(t.__super__ = e.prototype),
t
);
},
V =
[].indexOf ||
function (t) {
for (var e = 0, n = this.length; e < n; e++)
if (e in this && this[e] === t) return e;
return -1;
};
function Y() {}
for (
g = {
className: "",
catchupTime: 100,
initialRate: 0.03,
minTime: 250,
ghostTime: 100,
maxProgressPerFrame: 20,
easeFactor: 1.25,
startOnPageLoad: !0,
restartOnPushState: !0,
restartOnRequestAfter: 500,
target: "body",
elements: { checkInterval: 100, selectors: ["body"] },
eventLag: { minSamples: 10, sampleCount: 3, lagThreshold: 3 },
ajax: { trackMethods: ["GET"], trackWebSockets: !0, ignoreURLs: [] },
},
P = function () {
var t;
return null !=
(t =
"undefined" != typeof performance &&
null !== performance &&
"function" == typeof performance.now
? performance.now()
: void 0)
? t
: +new Date();
},
R =
window.requestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.msRequestAnimationFrame,
f = window.cancelAnimationFrame || window.mozCancelAnimationFrame,
p = function (t, e, n) {
if ("function" == typeof t.addEventListener)
return t.addEventListener(e, n, !1);
var r;
"function" != typeof t["on" + e] ||
"object" != typeof t["on" + e].eventListeners
? ((r = new s()),
"function" == typeof t["on" + e] && r.on(e, t["on" + e]),
(t["on" + e] = function (t) {
return r.trigger(e, t);
}),
(t["on" + e].eventListeners = r))
: (r = t["on" + e].eventListeners),
r.on(e, n);
},
null == R &&
((R = function (t) {
return setTimeout(t, 50);
}),
(f = function (t) {
return clearTimeout(t);
})),
O = function (e) {
var n = P(),
r = function () {
var t = P() - n;
return 33 <= t
? ((n = P()),
e(t, function () {
return R(r);
}))
: setTimeout(r, 33 - t);
};
return r();
},
j = function () {
var t = arguments[0],
e = arguments[1],
n = 3 <= arguments.length ? J.call(arguments, 2) : [];
return "function" == typeof t[e] ? t[e].apply(t, n) : t[e];
},
d = function () {
for (
var t,
e,
n,
r = arguments[0],
s = 2 <= arguments.length ? J.call(arguments, 1) : [],
o = 0,
i = s.length;
o < i;
o++
)
if ((e = s[o]))
for (t in e)
K.call(e, t) &&
((n = e[t]),
null != r[t] &&
"object" == typeof r[t] &&
null != n &&
"object" == typeof n
? d(r[t], n)
: (r[t] = n));
return r;
},
h = function (t) {
for (var e, n, r = (e = 0), s = 0, o = t.length; s < o; s++)
(n = t[s]), (r += Math.abs(n)), e++;
return r / e;
},
k = function (t, e) {
var n, r;
if (
(null == t && (t = "options"),
null == e && (e = !0),
(r = document.querySelector("[data-pace-" + t + "]")))
) {
if (((n = r.getAttribute("data-pace-" + t)), !e)) return n;
try {
return JSON.parse(n);
} catch (t) {
return "undefined" != typeof console && null !== console
? console.error("Error parsing inline pace options", t)
: void 0;
}
}
},
Y.prototype.on = function (t, e, n, r) {
var s;
return (
null == r && (r = !1),
null == this.bindings && (this.bindings = {}),
null == (s = this.bindings)[t] && (s[t] = []),
this.bindings[t].push({ handler: e, ctx: n, once: r })
);
},
Y.prototype.once = function (t, e, n) {
return this.on(t, e, n, !0);
},
Y.prototype.off = function (t, e) {
var n, r, s;
if (null != (null != (r = this.bindings) ? r[t] : void 0)) {
if (null == e) return delete this.bindings[t];
for (n = 0, s = []; n < this.bindings[t].length; )
this.bindings[t][n].handler === e
? s.push(this.bindings[t].splice(n, 1))
: s.push(n++);
return s;
}
},
Y.prototype.trigger = function () {
var t,
e,
n,
r,
s,
o,
i = arguments[0],
a = 2 <= arguments.length ? J.call(arguments, 1) : [];
if (null != (r = this.bindings) && r[i]) {
for (n = 0, o = []; n < this.bindings[i].length; )
(e = (s = this.bindings[i][n]).handler),
(t = s.ctx),
(s = s.once),
e.apply(null != t ? t : this, a),
s ? o.push(this.bindings[i].splice(n, 1)) : o.push(n++);
return o;
}
},
B = Y,
y = window.Pace || {},
window.Pace = y,
d(y, B.prototype),
T = y.options = d({}, g, window.paceOptions, k()),
X = 0,
H = (z = ["ajax", "document", "eventLag", "elements"]).length;
X < H;
X++
)
!0 === T[(C = z[X])] && (T[C] = g[C]);
function Z() {
return Z.__super__.constructor.apply(this, arguments);
}
function $() {
this.progress = 0;
}
function tt() {
this.bindings = {};
}
function et() {
var e,
o = this;
et.__super__.constructor.apply(this, arguments),
(e = function (r) {
var s = r.open;
return (r.open = function (t, e, n) {
return (
A(t) && o.trigger("request", { type: t, url: e, request: r }),
s.apply(r, arguments)
);
});
}),
(window.XMLHttpRequest = function (t) {
t = new W(t);
return e(t), t;
});
try {
m(window.XMLHttpRequest, W);
} catch (t) {}
if (null != U) {
window.XDomainRequest = function () {
var t = new U();
return e(t), t;
};
try {
m(window.XDomainRequest, U);
} catch (t) {}
}
if (null != F && T.ajax.trackWebSockets) {
window.WebSocket = function (t, e) {
var n = null != e ? new F(t, e) : new F(t);
return (
A("socket") &&
o.trigger("request", {
type: "socket",
url: t,
protocols: e,
request: n,
}),
n
);
};
try {
m(window.WebSocket, F);
} catch (t) {}
}
}
function nt() {
this.complete = o(this.complete, this);
var t = this;
(this.elements = []),
S().on("request", function () {
return t.watch.apply(t, arguments);
});
}
function rt(t) {
var e, n, r, s;
for (
null == t && (t = {}),
this.complete = o(this.complete, this),
this.elements = [],
null == t.selectors && (t.selectors = []),
n = 0,
r = (s = t.selectors).length;
n < r;
n++
)
(e = s[n]), this.elements.push(new i(e, this.complete));
}
function st(t, e) {
(this.selector = t),
(this.completeCallback = e),
(this.progress = 0),
this.check();
}
function ot() {
var t,
e,
n = this;
(this.progress = null != (e = this.states[document.readyState]) ? e : 100),
(t = document.onreadystatechange),
(document.onreadystatechange = function () {
return (
null != n.states[document.readyState] &&
(n.progress = n.states[document.readyState]),
"function" == typeof t ? t.apply(null, arguments) : void 0
);
});
}
function it(t) {
(this.source = t),
(this.last = this.sinceLastUpdate = 0),
(this.rate = T.initialRate),
(this.catchup = 0),
(this.progress = this.lastProgress = 0),
null != this.source && (this.progress = j(this.source, "progress"));
}
(B = Error),
Q(Z, B),
(n = Z),
($.prototype.getElement = function () {
var t;
if (null == this.el) {
if (!(t = document.querySelector(T.target))) throw new n();
(this.el = document.createElement("div")),
(this.el.className = "pace pace-active"),
(document.body.className = document.body.className.replace(
/(pace-done )|/,
"pace-running "
));
var e = "" !== T.className ? " " + T.className : "";
(this.el.innerHTML =
'<div class="pace-progress' +
e +
'">\n <div class="pace-progress-inner"></div>\n</div>\n<div class="pace-activity"></div>'),
null != t.firstChild
? t.insertBefore(this.el, t.firstChild)
: t.appendChild(this.el);
}
return this.el;
}),
($.prototype.finish = function () {
var t = this.getElement();
return (
(t.className = t.className.replace("pace-active", "pace-inactive")),
(document.body.className = document.body.className.replace(
"pace-running ",
"pace-done "
))
);
}),
($.prototype.update = function (t) {
return (this.progress = t), y.trigger("progress", t), this.render();
}),
($.prototype.destroy = function () {
try {
this.getElement().parentNode.removeChild(this.getElement());
} catch (t) {
n = t;
}
return (this.el = void 0);
}),
($.prototype.render = function () {
var t, e, n, r, s, o, i;
if (null == document.querySelector(T.target)) return !1;
for (
t = this.getElement(),
r = "translate3d(" + this.progress + "%, 0, 0)",
s = 0,
o = (i = ["webkitTransform", "msTransform", "transform"]).length;
s < o;
s++
)
(e = i[s]), (t.children[0].style[e] = r);
return (
(!this.lastRenderedProgress ||
this.lastRenderedProgress | (0 !== this.progress) | 0) &&
(t.children[0].setAttribute(
"data-progress-text",
(0 | this.progress) + "%"
),
100 <= this.progress
? (n = "99")
: ((n = this.progress < 10 ? "0" : ""), (n += 0 | this.progress)),
t.children[0].setAttribute("data-progress", "" + n)),
y.trigger("change", this.progress),
(this.lastRenderedProgress = this.progress)
);
}),
($.prototype.done = function () {
return 100 <= this.progress;
}),
(c = $),
(tt.prototype.trigger = function (t, e) {
var n, r, s, o, i;
if (null != this.bindings[t]) {
for (i = [], r = 0, s = (o = this.bindings[t]).length; r < s; r++)
(n = o[r]), i.push(n.call(this, e));
return i;
}
}),
(tt.prototype.on = function (t, e) {
var n;
return (
null == (n = this.bindings)[t] && (n[t] = []), this.bindings[t].push(e)
);
}),
(s = tt),
(W = window.XMLHttpRequest),
(U = window.XDomainRequest),
(F = window.WebSocket),
(m = function (t, e) {
var n,
r = [];
for (n in e.prototype)
try {
null == t[n] && "function" != typeof e[n]
? "function" == typeof Object.defineProperty
? r.push(
Object.defineProperty(t, n, {
get: (function (t) {
return function () {
return e.prototype[t];
};
})(n),
configurable: !0,
enumerable: !0,
})
)
: r.push((t[n] = e.prototype[n]))
: r.push(void 0);
} catch (t) {
0;
}
return r;
}),
(L = []),
(y.ignore = function () {
var t = arguments[0],
e = 2 <= arguments.length ? J.call(arguments, 1) : [];
return L.unshift("ignore"), (e = t.apply(null, e)), L.shift(), e;
}),
(y.track = function () {
var t = arguments[0],
e = 2 <= arguments.length ? J.call(arguments, 1) : [];
return L.unshift("track"), (e = t.apply(null, e)), L.shift(), e;
}),
(A = function (t) {
if ((null == t && (t = "GET"), "track" === L[0])) return "force";
if (!L.length && T.ajax) {
if ("socket" === t && T.ajax.trackWebSockets) return !0;
if (((t = t.toUpperCase()), 0 <= V.call(T.ajax.trackMethods, t)))
return !0;
}
return !1;
}),
Q(et, s),
(t = et),
(D = null),
(M = function (t) {
for (var e, n = T.ajax.ignoreURLs, r = 0, s = n.length; r < s; r++)
if ("string" == typeof (e = n[r])) {
if (-1 !== t.indexOf(e)) return !0;
} else if (e.test(t)) return !0;
return !1;
}),
(S = function () {
return (D = null == D ? new t() : D);
})().on("request", function (t) {
var o,
i = t.type,
a = t.request,
e = t.url;
if (!M(e))
return y.running || (!1 === T.restartOnRequestAfter && "force" !== A(i))
? void 0
: ((o = arguments),
"boolean" == typeof (e = T.restartOnRequestAfter || 0) && (e = 0),
setTimeout(function () {
var t,
e,
n,
r,
s =
"socket" === i
? a.readyState < 1
: 0 < (s = a.readyState) && s < 4;
if (s) {
for (
y.restart(), r = [], t = 0, e = (n = y.sources).length;
t < e;
t++
) {
if ((C = n[t]) instanceof u) {
C.watch.apply(C, o);
break;
}
r.push(void 0);
}
return r;
}
}, e));
}),
(nt.prototype.watch = function (t) {
var e = t.type,
n = t.request,
t = t.url;
if (!M(t))
return (
(n = new ("socket" === e ? r : a)(n, this.complete)),
this.elements.push(n)
);
}),
(nt.prototype.complete = function (e) {
return (this.elements = this.elements.filter(function (t) {
return t !== e;
}));
}),
(u = nt),
(a = function (e, n) {
var t,
r,
s,
o,
i = this;
if (((this.progress = 0), null != window.ProgressEvent))
for (
p(e, "progress", function (t) {
return t.lengthComputable
? (i.progress = (100 * t.loaded) / t.total)
: (i.progress = i.progress + (100 - i.progress) / 2);
}),
t = 0,
r = (o = ["load", "abort", "timeout", "error"]).length;
t < r;
t++
)
p(e, o[t], function () {
return n(i), (i.progress = 100);
});
else
(s = e.onreadystatechange),
(e.onreadystatechange = function () {
var t;
return (
0 === (t = e.readyState) || 4 === t
? (n(i), (i.progress = 100))
: 3 === e.readyState && (i.progress = 50),
"function" == typeof s ? s.apply(null, arguments) : void 0
);
});
}),
(r = function (t, e) {
for (
var n,
r = this,
s = (this.progress = 0),
o = (n = ["error", "open"]).length;
s < o;
s++
)
p(t, n[s], function () {
return e(r), (r.progress = 100);
});
}),
(rt.prototype.complete = function (e) {
return (this.elements = this.elements.filter(function (t) {
return t !== e;
}));
}),
(k = rt),
(st.prototype.check = function () {
var t = this;
return document.querySelector(this.selector)
? this.done()
: setTimeout(function () {
return t.check();
}, T.elements.checkInterval);
}),
(st.prototype.done = function () {
return (
this.completeCallback(this),
(this.completeCallback = null),
(this.progress = 100)
);
}),
(i = st),
(ot.prototype.states = { loading: 0, interactive: 50, complete: 100 }),
(B = ot),
(Q = function () {
var e,
n,
r,
s,
o,
i = this;
(this.progress = 0),
(o = []),
(s = 0),
(r = P()),
(n = setInterval(function () {
var t = P() - r - 50;
return (
(r = P()),
o.push(t),
o.length > T.eventLag.sampleCount && o.shift(),
(e = h(o)),
++s >= T.eventLag.minSamples && e < T.eventLag.lagThreshold
? ((i.progress = 100), clearInterval(n))
: (i.progress = (3 / (e + 3)) * 100)
);
}, 50));
}),
(it.prototype.tick = function (t, e) {
return (
100 <= (e = null == e ? j(this.source, "progress") : e) &&
(this.done = !0),
e === this.last
? (this.sinceLastUpdate += t)
: (this.sinceLastUpdate &&
(this.rate = (e - this.last) / this.sinceLastUpdate),
(this.catchup = (e - this.progress) / T.catchupTime),
(this.sinceLastUpdate = 0),
(this.last = e)),
e > this.progress && (this.progress += this.catchup * t),
(e = 1 - Math.pow(this.progress / 100, T.easeFactor)),
(this.progress += e * this.rate * t),
(this.progress = Math.min(
this.lastProgress + T.maxProgressPerFrame,
this.progress
)),
(this.progress = Math.max(0, this.progress)),
(this.progress = Math.min(100, this.progress)),
(this.lastProgress = this.progress),
this.progress
);
}),
(v = it),
(b = e = _ = w = E = N = null),
(y.running = !1),
(q = function () {
if (T.restartOnPushState) return y.restart();
}),
null != window.history.pushState &&
((I = window.history.pushState),
(window.history.pushState = function () {
return q(), I.apply(window.history, arguments);
})),
null != window.history.replaceState &&
((G = window.history.replaceState),
(window.history.replaceState = function () {
return q(), G.apply(window.history, arguments);
})),
(l = { ajax: u, elements: k, document: B, eventLag: Q }),
(x = function () {
var t, e, n, r, s, o, i, a;
for (
y.sources = N = [],
e = 0,
r = (o = ["ajax", "elements", "document", "eventLag"]).length;
e < r;
e++
)
!1 !== T[(t = o[e])] && N.push(new l[t](T[t]));
for (
n = 0, s = (a = null != (i = T.extraSources) ? i : []).length;
n < s;
n++
)
(C = a[n]), N.push(new C(T));
return (y.bar = w = new c()), (E = []), (_ = new v());
})(),
(y.stop = function () {
return (
y.trigger("stop"),
(y.running = !1),
w.destroy(),
(b = !0),
null != e && ("function" == typeof f && f(e), (e = null)),
x()
);
}),
(y.restart = function () {
return y.trigger("restart"), y.stop(), y.start();
}),
(y.go = function () {
var m;
return (
(y.running = !0),
w.render(),
(m = P()),
(b = !1),
(e = O(function (t, e) {
w.progress;
for (
var n,
r,
s,
o,
i,
a,
u,
c,
l,
p,
h = (a = 0),
f = !0,
g = (u = 0),
d = N.length;
u < d;
g = ++u
)
for (
C = N[g],
i = null != E[g] ? E[g] : (E[g] = []),
s = c = 0,
l = (r = null != (p = C.elements) ? p : [C]).length;
c < l;
s = ++c
)
(o = r[s]),
(f &= (o = null != i[s] ? i[s] : (i[s] = new v(o))).done),
o.done || (h++, (a += o.tick(t)));
return (
(n = a / h),
w.update(_.tick(t, n)),
w.done() || f || b
? (w.update(100),
y.trigger("done"),
setTimeout(function () {
return w.finish(), (y.running = !1), y.trigger("hide");
}, Math.max(T.ghostTime, Math.max(T.minTime - (P() - m), 0))))
: e()
);
}))
);
}),
(y.start = function (t) {
d(T, t), (y.running = !0);
try {
w.render();
} catch (t) {
n = t;
}
return document.querySelector(".pace")
? (y.trigger("start"), y.go())
: setTimeout(y.start, 50);
}),
"function" == typeof define && define.amd
? define(function () {
return y;
})
: "object" == typeof exports
? (module.exports = y)
: T.startOnPageLoad && y.start();
}.call(this);