summaryrefslogtreecommitdiff
path: root/docs/static/js/application.js
diff options
context:
space:
mode:
Diffstat (limited to 'docs/static/js/application.js')
-rw-r--r--docs/static/js/application.js1577
1 files changed, 1577 insertions, 0 deletions
diff --git a/docs/static/js/application.js b/docs/static/js/application.js
new file mode 100644
index 00000000..6245bb4f
--- /dev/null
+++ b/docs/static/js/application.js
@@ -0,0 +1,1577 @@
+function pegasus(t, e) {
+ return (
+ (e = new XMLHttpRequest()),
+ e.open("GET", t),
+ (t = []),
+ (e.onreadystatechange = e.then = function (n, o, i, r) {
+ if (
+ (n && n.call && (t = [, n, o]),
+ 4 == e.readyState && (i = t[0 | (e.status / 200)]))
+ ) {
+ try {
+ r = JSON.parse(e.responseText);
+ } catch (s) {
+ r = null;
+ }
+ i(r, e);
+ }
+ }),
+ e.send(),
+ e
+ );
+}
+if (
+ ("document" in self &&
+ ("classList" in document.createElement("_")
+ ? !(function () {
+ "use strict";
+ var t = document.createElement("_");
+ if ((t.classList.add("c1", "c2"), !t.classList.contains("c2"))) {
+ var e = function (t) {
+ var e = DOMTokenList.prototype[t];
+ DOMTokenList.prototype[t] = function (t) {
+ var n,
+ o = arguments.length;
+ for (n = 0; o > n; n++) (t = arguments[n]), e.call(this, t);
+ };
+ };
+ e("add"), e("remove");
+ }
+ if ((t.classList.toggle("c3", !1), t.classList.contains("c3"))) {
+ var n = DOMTokenList.prototype.toggle;
+ DOMTokenList.prototype.toggle = function (t, e) {
+ return 1 in arguments && !this.contains(t) == !e
+ ? e
+ : n.call(this, t);
+ };
+ }
+ t = null;
+ })()
+ : !(function (t) {
+ "use strict";
+ if ("Element" in t) {
+ var e = "classList",
+ n = "prototype",
+ o = t.Element[n],
+ i = Object,
+ r =
+ String[n].trim ||
+ function () {
+ return this.replace(/^\s+|\s+$/g, "");
+ },
+ s =
+ Array[n].indexOf ||
+ function (t) {
+ for (var e = 0, n = this.length; n > e; e++)
+ if (e in this && this[e] === t) return e;
+ return -1;
+ },
+ a = function (t, e) {
+ (this.name = t),
+ (this.code = DOMException[t]),
+ (this.message = e);
+ },
+ c = function (t, e) {
+ if ("" === e)
+ throw new a(
+ "SYNTAX_ERR",
+ "An invalid or illegal string was specified"
+ );
+ if (/\s/.test(e))
+ throw new a(
+ "INVALID_CHARACTER_ERR",
+ "String contains an invalid character"
+ );
+ return s.call(t, e);
+ },
+ l = function (t) {
+ for (
+ var e = r.call(t.getAttribute("class") || ""),
+ n = e ? e.split(/\s+/) : [],
+ o = 0,
+ i = n.length;
+ i > o;
+ o++
+ )
+ this.push(n[o]);
+ this._updateClassName = function () {
+ t.setAttribute("class", this.toString());
+ };
+ },
+ u = (l[n] = []),
+ d = function () {
+ return new l(this);
+ };
+ if (
+ ((a[n] = Error[n]),
+ (u.item = function (t) {
+ return this[t] || null;
+ }),
+ (u.contains = function (t) {
+ return (t += ""), -1 !== c(this, t);
+ }),
+ (u.add = function () {
+ var t,
+ e = arguments,
+ n = 0,
+ o = e.length,
+ i = !1;
+ do
+ (t = e[n] + ""),
+ -1 === c(this, t) && (this.push(t), (i = !0));
+ while (++n < o);
+ i && this._updateClassName();
+ }),
+ (u.remove = function () {
+ var t,
+ e,
+ n = arguments,
+ o = 0,
+ i = n.length,
+ r = !1;
+ do
+ for (t = n[o] + "", e = c(this, t); -1 !== e;)
+ this.splice(e, 1), (r = !0), (e = c(this, t));
+ while (++o < i);
+ r && this._updateClassName();
+ }),
+ (u.toggle = function (t, e) {
+ t += "";
+ var n = this.contains(t),
+ o = n ? e !== !0 && "remove" : e !== !1 && "add";
+ return o && this[o](t), e === !0 || e === !1 ? e : !n;
+ }),
+ (u.toString = function () {
+ return this.join(" ");
+ }),
+ i.defineProperty)
+ ) {
+ var h = { get: d, enumerable: !0, configurable: !0 };
+ try {
+ i.defineProperty(o, e, h);
+ } catch (f) {
+ -2146823252 === f.number &&
+ ((h.enumerable = !1), i.defineProperty(o, e, h));
+ }
+ } else i[n].__defineGetter__ && o.__defineGetter__(e, d);
+ }
+ })(self)),
+ (function () {
+ "use strict";
+ function t(e, o) {
+ function i(t, e) {
+ return function () {
+ return t.apply(e, arguments);
+ };
+ }
+ var r;
+ if (
+ ((o = o || {}),
+ (this.trackingClick = !1),
+ (this.trackingClickStart = 0),
+ (this.targetElement = null),
+ (this.touchStartX = 0),
+ (this.touchStartY = 0),
+ (this.lastTouchIdentifier = 0),
+ (this.touchBoundary = o.touchBoundary || 10),
+ (this.layer = e),
+ (this.tapDelay = o.tapDelay || 200),
+ (this.tapTimeout = o.tapTimeout || 700),
+ !t.notNeeded(e))
+ ) {
+ for (
+ var s = [
+ "onMouse",
+ "onClick",
+ "onTouchStart",
+ "onTouchMove",
+ "onTouchEnd",
+ "onTouchCancel"
+ ],
+ a = this,
+ c = 0,
+ l = s.length;
+ l > c;
+ c++
+ )
+ a[s[c]] = i(a[s[c]], a);
+ n &&
+ (e.addEventListener("mouseover", this.onMouse, !0),
+ e.addEventListener("mousedown", this.onMouse, !0),
+ e.addEventListener("mouseup", this.onMouse, !0)),
+ e.addEventListener("click", this.onClick, !0),
+ e.addEventListener("touchstart", this.onTouchStart, !1),
+ e.addEventListener("touchmove", this.onTouchMove, !1),
+ e.addEventListener("touchend", this.onTouchEnd, !1),
+ e.addEventListener("touchcancel", this.onTouchCancel, !1),
+ Event.prototype.stopImmediatePropagation ||
+ ((e.removeEventListener = function (t, n, o) {
+ var i = Node.prototype.removeEventListener;
+ "click" === t
+ ? i.call(e, t, n.hijacked || n, o)
+ : i.call(e, t, n, o);
+ }),
+ (e.addEventListener = function (t, n, o) {
+ var i = Node.prototype.addEventListener;
+ "click" === t
+ ? i.call(
+ e,
+ t,
+ n.hijacked ||
+ (n.hijacked = function (t) {
+ t.propagationStopped || n(t);
+ }),
+ o
+ )
+ : i.call(e, t, n, o);
+ })),
+ "function" == typeof e.onclick &&
+ ((r = e.onclick),
+ e.addEventListener(
+ "click",
+ function (t) {
+ r(t);
+ },
+ !1
+ ),
+ (e.onclick = null));
+ }
+ }
+ var e = navigator.userAgent.indexOf("Windows Phone") >= 0,
+ n = navigator.userAgent.indexOf("Android") > 0 && !e,
+ o = /iP(ad|hone|od)/.test(navigator.userAgent) && !e,
+ i = o && /OS 4_\d(_\d)?/.test(navigator.userAgent),
+ r = o && /OS [6-7]_\d/.test(navigator.userAgent),
+ s = navigator.userAgent.indexOf("BB10") > 0;
+ (t.prototype.needsClick = function (t) {
+ switch (t.nodeName.toLowerCase()) {
+ case "button":
+ case "select":
+ case "textarea":
+ if (t.disabled) return !0;
+ break;
+ case "input":
+ if ((o && "file" === t.type) || t.disabled) return !0;
+ break;
+ case "label":
+ case "iframe":
+ case "video":
+ return !0;
+ }
+ return /\bneedsclick\b/.test(t.className);
+ }),
+ (t.prototype.needsFocus = function (t) {
+ switch (t.nodeName.toLowerCase()) {
+ case "textarea":
+ return !0;
+ case "select":
+ return !n;
+ case "input":
+ switch (t.type) {
+ case "button":
+ case "checkbox":
+ case "file":
+ case "image":
+ case "radio":
+ case "submit":
+ return !1;
+ }
+ return !t.disabled && !t.readOnly;
+ default:
+ return /\bneedsfocus\b/.test(t.className);
+ }
+ }),
+ (t.prototype.sendClick = function (t, e) {
+ var n, o;
+ document.activeElement &&
+ document.activeElement !== t &&
+ document.activeElement.blur(),
+ (o = e.changedTouches[0]),
+ (n = document.createEvent("MouseEvents")),
+ n.initMouseEvent(
+ this.determineEventType(t),
+ !0,
+ !0,
+ window,
+ 1,
+ o.screenX,
+ o.screenY,
+ o.clientX,
+ o.clientY,
+ !1,
+ !1,
+ !1,
+ !1,
+ 0,
+ null
+ ),
+ (n.forwardedTouchEvent = !0),
+ t.dispatchEvent(n);
+ }),
+ (t.prototype.determineEventType = function (t) {
+ return n && "select" === t.tagName.toLowerCase()
+ ? "mousedown"
+ : "click";
+ }),
+ (t.prototype.focus = function (t) {
+ var e;
+ o &&
+ t.setSelectionRange &&
+ 0 !== t.type.indexOf("date") &&
+ "time" !== t.type &&
+ "month" !== t.type
+ ? ((e = t.value.length), t.setSelectionRange(e, e))
+ : t.focus();
+ }),
+ (t.prototype.updateScrollParent = function (t) {
+ var e, n;
+ if (((e = t.fastClickScrollParent), !e || !e.contains(t))) {
+ n = t;
+ do {
+ if (n.scrollHeight > n.offsetHeight) {
+ (e = n), (t.fastClickScrollParent = n);
+ break;
+ }
+ n = n.parentElement;
+ } while (n);
+ }
+ e && (e.fastClickLastScrollTop = e.scrollTop);
+ }),
+ (t.prototype.getTargetElementFromEventTarget = function (t) {
+ return t.nodeType === Node.TEXT_NODE ? t.parentNode : t;
+ }),
+ (t.prototype.onTouchStart = function (t) {
+ var e, n, r;
+ if (t.targetTouches.length > 1) return !0;
+ if (
+ ((e = this.getTargetElementFromEventTarget(t.target)),
+ (n = t.targetTouches[0]),
+ o)
+ ) {
+ if (((r = window.getSelection()), r.rangeCount && !r.isCollapsed))
+ return !0;
+ if (!i) {
+ if (n.identifier && n.identifier === this.lastTouchIdentifier)
+ return t.preventDefault(), !1;
+ (this.lastTouchIdentifier = n.identifier),
+ this.updateScrollParent(e);
+ }
+ }
+ return (
+ (this.trackingClick = !0),
+ (this.trackingClickStart = t.timeStamp),
+ (this.targetElement = e),
+ (this.touchStartX = n.pageX),
+ (this.touchStartY = n.pageY),
+ t.timeStamp - this.lastClickTime < this.tapDelay &&
+ t.preventDefault(),
+ !0
+ );
+ }),
+ (t.prototype.touchHasMoved = function (t) {
+ var e = t.changedTouches[0],
+ n = this.touchBoundary;
+ return Math.abs(e.pageX - this.touchStartX) > n ||
+ Math.abs(e.pageY - this.touchStartY) > n
+ ? !0
+ : !1;
+ }),
+ (t.prototype.onTouchMove = function (t) {
+ return this.trackingClick
+ ? ((this.targetElement !==
+ this.getTargetElementFromEventTarget(t.target) ||
+ this.touchHasMoved(t)) &&
+ ((this.trackingClick = !1), (this.targetElement = null)),
+ !0)
+ : !0;
+ }),
+ (t.prototype.findControl = function (t) {
+ return void 0 !== t.control
+ ? t.control
+ : t.htmlFor
+ ? document.getElementById(t.htmlFor)
+ : t.querySelector(
+ "button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea"
+ );
+ }),
+ (t.prototype.onTouchEnd = function (t) {
+ var e,
+ s,
+ a,
+ c,
+ l,
+ u = this.targetElement;
+ if (!this.trackingClick) return !0;
+ if (t.timeStamp - this.lastClickTime < this.tapDelay)
+ return (this.cancelNextClick = !0), !0;
+ if (t.timeStamp - this.trackingClickStart > this.tapTimeout) return !0;
+ if (
+ ((this.cancelNextClick = !1),
+ (this.lastClickTime = t.timeStamp),
+ (s = this.trackingClickStart),
+ (this.trackingClick = !1),
+ (this.trackingClickStart = 0),
+ r &&
+ ((l = t.changedTouches[0]),
+ (u =
+ document.elementFromPoint(
+ l.pageX - window.pageXOffset,
+ l.pageY - window.pageYOffset
+ ) || u),
+ (u.fastClickScrollParent = this.targetElement.fastClickScrollParent)),
+ (a = u.tagName.toLowerCase()),
+ "label" === a)
+ ) {
+ if ((e = this.findControl(u))) {
+ if ((this.focus(u), n)) return !1;
+ u = e;
+ }
+ } else if (this.needsFocus(u))
+ return t.timeStamp - s > 100 ||
+ (o && window.top !== window && "input" === a)
+ ? ((this.targetElement = null), !1)
+ : (this.focus(u),
+ this.sendClick(u, t),
+ (o && "select" === a) ||
+ ((this.targetElement = null), t.preventDefault()),
+ !1);
+ return o &&
+ !i &&
+ ((c = u.fastClickScrollParent),
+ c && c.fastClickLastScrollTop !== c.scrollTop)
+ ? !0
+ : (this.needsClick(u) || (t.preventDefault(), this.sendClick(u, t)),
+ !1);
+ }),
+ (t.prototype.onTouchCancel = function () {
+ (this.trackingClick = !1), (this.targetElement = null);
+ }),
+ (t.prototype.onMouse = function (t) {
+ return this.targetElement
+ ? t.forwardedTouchEvent
+ ? !0
+ : t.cancelable &&
+ (!this.needsClick(this.targetElement) || this.cancelNextClick)
+ ? (t.stopImmediatePropagation
+ ? t.stopImmediatePropagation()
+ : (t.propagationStopped = !0),
+ t.stopPropagation(),
+ t.preventDefault(),
+ !1)
+ : !0
+ : !0;
+ }),
+ (t.prototype.onClick = function (t) {
+ var e;
+ return this.trackingClick
+ ? ((this.targetElement = null), (this.trackingClick = !1), !0)
+ : "submit" === t.target.type && 0 === t.detail
+ ? !0
+ : ((e = this.onMouse(t)), e || (this.targetElement = null), e);
+ }),
+ (t.prototype.destroy = function () {
+ var t = this.layer;
+ n &&
+ (t.removeEventListener("mouseover", this.onMouse, !0),
+ t.removeEventListener("mousedown", this.onMouse, !0),
+ t.removeEventListener("mouseup", this.onMouse, !0)),
+ t.removeEventListener("click", this.onClick, !0),
+ t.removeEventListener("touchstart", this.onTouchStart, !1),
+ t.removeEventListener("touchmove", this.onTouchMove, !1),
+ t.removeEventListener("touchend", this.onTouchEnd, !1),
+ t.removeEventListener("touchcancel", this.onTouchCancel, !1);
+ }),
+ (t.notNeeded = function (t) {
+ var e, o, i, r;
+ if ("undefined" == typeof window.ontouchstart) return !0;
+ if ((o = +(/Chrome\/([0-9]+)/.exec(navigator.userAgent) || [, 0])[1])) {
+ if (!n) return !0;
+ if ((e = document.querySelector("meta[name=viewport]"))) {
+ if (-1 !== e.content.indexOf("user-scalable=no")) return !0;
+ if (
+ o > 31 &&
+ document.documentElement.scrollWidth <= window.outerWidth
+ )
+ return !0;
+ }
+ }
+ if (
+ s &&
+ ((i = navigator.userAgent.match(/Version\/([0-9]*)\.([0-9]*)/)),
+ i[1] >= 10 &&
+ i[2] >= 3 &&
+ (e = document.querySelector("meta[name=viewport]")))
+ ) {
+ if (-1 !== e.content.indexOf("user-scalable=no")) return !0;
+ if (document.documentElement.scrollWidth <= window.outerWidth)
+ return !0;
+ }
+ return "none" === t.style.msTouchAction ||
+ "manipulation" === t.style.touchAction
+ ? !0
+ : ((r = +(/Firefox\/([0-9]+)/.exec(navigator.userAgent) || [, 0])[1]),
+ r >= 27 &&
+ ((e = document.querySelector("meta[name=viewport]")),
+ e &&
+ (-1 !== e.content.indexOf("user-scalable=no") ||
+ document.documentElement.scrollWidth <= window.outerWidth))
+ ? !0
+ : "none" === t.style.touchAction ||
+ "manipulation" === t.style.touchAction
+ ? !0
+ : !1);
+ }),
+ (t.attach = function (e, n) {
+ return new t(e, n);
+ }),
+ "function" == typeof define && "object" == typeof define.amd && define.amd
+ ? define(function () {
+ return t;
+ })
+ : "undefined" != typeof module && module.exports
+ ? ((module.exports = t.attach), (module.exports.FastClick = t))
+ : (window.FastClick = t);
+ })(),
+ (function () {
+ var t = function (e) {
+ var n = new t.Index();
+ return (
+ n.pipeline.add(t.trimmer, t.stopWordFilter, t.stemmer),
+ e && e.call(n, n),
+ n
+ );
+ };
+ (t.version = "0.6.0"),
+ (t.utils = {}),
+ (t.utils.warn = (function (t) {
+ return function (e) {
+ t.console && console.warn && console.warn(e);
+ };
+ })(this)),
+ (t.utils.asString = function (t) {
+ return void 0 === t || null === t ? "" : t.toString();
+ }),
+ (t.EventEmitter = function () {
+ this.events = {};
+ }),
+ (t.EventEmitter.prototype.addListener = function () {
+ var t = Array.prototype.slice.call(arguments),
+ e = t.pop(),
+ n = t;
+ if ("function" != typeof e)
+ throw new TypeError("last argument must be a function");
+ n.forEach(function (t) {
+ this.hasHandler(t) || (this.events[t] = []), this.events[t].push(e);
+ }, this);
+ }),
+ (t.EventEmitter.prototype.removeListener = function (t, e) {
+ if (this.hasHandler(t)) {
+ var n = this.events[t].indexOf(e);
+ this.events[t].splice(n, 1),
+ this.events[t].length || delete this.events[t];
+ }
+ }),
+ (t.EventEmitter.prototype.emit = function (t) {
+ if (this.hasHandler(t)) {
+ var e = Array.prototype.slice.call(arguments, 1);
+ this.events[t].forEach(function (t) {
+ t.apply(void 0, e);
+ });
+ }
+ }),
+ (t.EventEmitter.prototype.hasHandler = function (t) {
+ return t in this.events;
+ }),
+ (t.tokenizer = function (e) {
+ return arguments.length && null != e && void 0 != e
+ ? Array.isArray(e)
+ ? e.map(function (e) {
+ return t.utils.asString(e).toLowerCase();
+ })
+ : e
+ .toString()
+ .trim()
+ .toLowerCase()
+ .split(t.tokenizer.seperator)
+ : [];
+ }),
+ (t.tokenizer.seperator = /[\s\-]+/),
+ (t.Pipeline = function () {
+ this._stack = [];
+ }),
+ (t.Pipeline.registeredFunctions = {}),
+ (t.Pipeline.registerFunction = function (e, n) {
+ n in this.registeredFunctions &&
+ t.utils.warn("Overwriting existing registered function: " + n),
+ (e.label = n),
+ (t.Pipeline.registeredFunctions[e.label] = e);
+ }),
+ (t.Pipeline.warnIfFunctionNotRegistered = function (e) {
+ var n = e.label && e.label in this.registeredFunctions;
+ n ||
+ t.utils.warn(
+ "Function is not registered with pipeline. This may cause problems when serialising the index.\n",
+ e
+ );
+ }),
+ (t.Pipeline.load = function (e) {
+ var n = new t.Pipeline();
+ return (
+ e.forEach(function (e) {
+ var o = t.Pipeline.registeredFunctions[e];
+ if (!o) throw new Error("Cannot load un-registered function: " + e);
+ n.add(o);
+ }),
+ n
+ );
+ }),
+ (t.Pipeline.prototype.add = function () {
+ var e = Array.prototype.slice.call(arguments);
+ e.forEach(function (e) {
+ t.Pipeline.warnIfFunctionNotRegistered(e), this._stack.push(e);
+ }, this);
+ }),
+ (t.Pipeline.prototype.after = function (e, n) {
+ t.Pipeline.warnIfFunctionNotRegistered(n);
+ var o = this._stack.indexOf(e);
+ if (-1 == o) throw new Error("Cannot find existingFn");
+ (o += 1), this._stack.splice(o, 0, n);
+ }),
+ (t.Pipeline.prototype.before = function (e, n) {
+ t.Pipeline.warnIfFunctionNotRegistered(n);
+ var o = this._stack.indexOf(e);
+ if (-1 == o) throw new Error("Cannot find existingFn");
+ this._stack.splice(o, 0, n);
+ }),
+ (t.Pipeline.prototype.remove = function (t) {
+ var e = this._stack.indexOf(t);
+ -1 != e && this._stack.splice(e, 1);
+ }),
+ (t.Pipeline.prototype.run = function (t) {
+ for (
+ var e = [], n = t.length, o = this._stack.length, i = 0;
+ n > i;
+ i++
+ ) {
+ for (
+ var r = t[i], s = 0;
+ o > s && ((r = this._stack[s](r, i, t)), void 0 !== r && "" !== r);
+ s++
+ );
+ void 0 !== r && "" !== r && e.push(r);
+ }
+ return e;
+ }),
+ (t.Pipeline.prototype.reset = function () {
+ this._stack = [];
+ }),
+ (t.Pipeline.prototype.toJSON = function () {
+ return this._stack.map(function (e) {
+ return t.Pipeline.warnIfFunctionNotRegistered(e), e.label;
+ });
+ }),
+ (t.Vector = function () {
+ (this._magnitude = null), (this.list = void 0), (this.length = 0);
+ }),
+ (t.Vector.Node = function (t, e, n) {
+ (this.idx = t), (this.val = e), (this.next = n);
+ }),
+ (t.Vector.prototype.insert = function (e, n) {
+ this._magnitude = void 0;
+ var o = this.list;
+ if (!o) return (this.list = new t.Vector.Node(e, n, o)), this.length++;
+ if (e < o.idx)
+ return (this.list = new t.Vector.Node(e, n, o)), this.length++;
+ for (var i = o, r = o.next; void 0 != r;) {
+ if (e < r.idx)
+ return (i.next = new t.Vector.Node(e, n, r)), this.length++;
+ (i = r), (r = r.next);
+ }
+ return (i.next = new t.Vector.Node(e, n, r)), this.length++;
+ }),
+ (t.Vector.prototype.magnitude = function () {
+ if (this._magnitude) return this._magnitude;
+ for (var t, e = this.list, n = 0; e;)
+ (t = e.val), (n += t * t), (e = e.next);
+ return (this._magnitude = Math.sqrt(n));
+ }),
+ (t.Vector.prototype.dot = function (t) {
+ for (var e = this.list, n = t.list, o = 0; e && n;)
+ e.idx < n.idx
+ ? (e = e.next)
+ : e.idx > n.idx
+ ? (n = n.next)
+ : ((o += e.val * n.val), (e = e.next), (n = n.next));
+ return o;
+ }),
+ (t.Vector.prototype.similarity = function (t) {
+ return this.dot(t) / (this.magnitude() * t.magnitude());
+ }),
+ (t.SortedSet = function () {
+ (this.length = 0), (this.elements = []);
+ }),
+ (t.SortedSet.load = function (t) {
+ var e = new this();
+ return (e.elements = t), (e.length = t.length), e;
+ }),
+ (t.SortedSet.prototype.add = function () {
+ var t, e;
+ for (t = 0; t < arguments.length; t++)
+ (e = arguments[t]),
+ ~this.indexOf(e) || this.elements.splice(this.locationFor(e), 0, e);
+ this.length = this.elements.length;
+ }),
+ (t.SortedSet.prototype.toArray = function () {
+ return this.elements.slice();
+ }),
+ (t.SortedSet.prototype.map = function (t, e) {
+ return this.elements.map(t, e);
+ }),
+ (t.SortedSet.prototype.forEach = function (t, e) {
+ return this.elements.forEach(t, e);
+ }),
+ (t.SortedSet.prototype.indexOf = function (t) {
+ for (
+ var e = 0,
+ n = this.elements.length,
+ o = n - e,
+ i = e + Math.floor(o / 2),
+ r = this.elements[i];
+ o > 1;
+
+ ) {
+ if (r === t) return i;
+ t > r && (e = i),
+ r > t && (n = i),
+ (o = n - e),
+ (i = e + Math.floor(o / 2)),
+ (r = this.elements[i]);
+ }
+ return r === t ? i : -1;
+ }),
+ (t.SortedSet.prototype.locationFor = function (t) {
+ for (
+ var e = 0,
+ n = this.elements.length,
+ o = n - e,
+ i = e + Math.floor(o / 2),
+ r = this.elements[i];
+ o > 1;
+
+ )
+ t > r && (e = i),
+ r > t && (n = i),
+ (o = n - e),
+ (i = e + Math.floor(o / 2)),
+ (r = this.elements[i]);
+ return r > t ? i : t > r ? i + 1 : void 0;
+ }),
+ (t.SortedSet.prototype.intersect = function (e) {
+ for (
+ var n = new t.SortedSet(),
+ o = 0,
+ i = 0,
+ r = this.length,
+ s = e.length,
+ a = this.elements,
+ c = e.elements;
+ ;
+
+ ) {
+ if (o > r - 1 || i > s - 1) break;
+ a[o] !== c[i]
+ ? a[o] < c[i]
+ ? o++
+ : a[o] > c[i] && i++
+ : (n.add(a[o]), o++ , i++);
+ }
+ return n;
+ }),
+ (t.SortedSet.prototype.clone = function () {
+ var e = new t.SortedSet();
+ return (e.elements = this.toArray()), (e.length = e.elements.length), e;
+ }),
+ (t.SortedSet.prototype.union = function (t) {
+ var e, n, o;
+ return (
+ this.length >= t.length
+ ? ((e = this), (n = t))
+ : ((e = t), (n = this)),
+ (o = e.clone()),
+ o.add.apply(o, n.toArray()),
+ o
+ );
+ }),
+ (t.SortedSet.prototype.toJSON = function () {
+ return this.toArray();
+ }),
+ (t.Index = function () {
+ (this._fields = []),
+ (this._ref = "id"),
+ (this.pipeline = new t.Pipeline()),
+ (this.documentStore = new t.Store()),
+ (this.tokenStore = new t.TokenStore()),
+ (this.corpusTokens = new t.SortedSet()),
+ (this.eventEmitter = new t.EventEmitter()),
+ (this._idfCache = {}),
+ this.on(
+ "add",
+ "remove",
+ "update",
+ function () {
+ this._idfCache = {};
+ }.bind(this)
+ );
+ }),
+ (t.Index.prototype.on = function () {
+ var t = Array.prototype.slice.call(arguments);
+ return this.eventEmitter.addListener.apply(this.eventEmitter, t);
+ }),
+ (t.Index.prototype.off = function (t, e) {
+ return this.eventEmitter.removeListener(t, e);
+ }),
+ (t.Index.load = function (e) {
+ e.version !== t.version &&
+ t.utils.warn(
+ "version mismatch: current " + t.version + " importing " + e.version
+ );
+ var n = new this();
+ return (
+ (n._fields = e.fields),
+ (n._ref = e.ref),
+ (n.documentStore = t.Store.load(e.documentStore)),
+ (n.tokenStore = t.TokenStore.load(e.tokenStore)),
+ (n.corpusTokens = t.SortedSet.load(e.corpusTokens)),
+ (n.pipeline = t.Pipeline.load(e.pipeline)),
+ n
+ );
+ }),
+ (t.Index.prototype.field = function (t, e) {
+ var e = e || {},
+ n = { name: t, boost: e.boost || 1 };
+ return this._fields.push(n), this;
+ }),
+ (t.Index.prototype.ref = function (t) {
+ return (this._ref = t), this;
+ }),
+ (t.Index.prototype.add = function (e, n) {
+ var o = {},
+ i = new t.SortedSet(),
+ r = e[this._ref],
+ n = void 0 === n ? !0 : n;
+ this._fields.forEach(function (n) {
+ var r = this.pipeline.run(t.tokenizer(e[n.name]));
+ (o[n.name] = r), t.SortedSet.prototype.add.apply(i, r);
+ }, this),
+ this.documentStore.set(r, i),
+ t.SortedSet.prototype.add.apply(this.corpusTokens, i.toArray());
+ for (var s = 0; s < i.length; s++) {
+ var a = i.elements[s],
+ c = this._fields.reduce(function (t, e) {
+ var n = o[e.name].length;
+ if (!n) return t;
+ var i = o[e.name].filter(function (t) {
+ return t === a;
+ }).length;
+ return t + (i / n) * e.boost;
+ }, 0);
+ this.tokenStore.add(a, { ref: r, tf: c });
+ }
+ n && this.eventEmitter.emit("add", e, this);
+ }),
+ (t.Index.prototype.remove = function (t, e) {
+ var n = t[this._ref],
+ e = void 0 === e ? !0 : e;
+ if (this.documentStore.has(n)) {
+ var o = this.documentStore.get(n);
+ this.documentStore.remove(n),
+ o.forEach(function (t) {
+ this.tokenStore.remove(t, n);
+ }, this),
+ e && this.eventEmitter.emit("remove", t, this);
+ }
+ }),
+ (t.Index.prototype.update = function (t, e) {
+ var e = void 0 === e ? !0 : e;
+ this.remove(t, !1),
+ this.add(t, !1),
+ e && this.eventEmitter.emit("update", t, this);
+ }),
+ (t.Index.prototype.idf = function (t) {
+ var e = "@" + t;
+ if (Object.prototype.hasOwnProperty.call(this._idfCache, e))
+ return this._idfCache[e];
+ var n = this.tokenStore.count(t),
+ o = 1;
+ return (
+ n > 0 && (o = 1 + Math.log(this.documentStore.length / n)),
+ (this._idfCache[e] = o)
+ );
+ }),
+ (t.Index.prototype.search = function (e) {
+ var n = this.pipeline.run(t.tokenizer(e)),
+ o = new t.Vector(),
+ i = [],
+ r = this._fields.reduce(function (t, e) {
+ return t + e.boost;
+ }, 0),
+ s = n.some(function (t) {
+ return this.tokenStore.has(t);
+ }, this);
+ if (!s) return [];
+ n.forEach(function (e, n, s) {
+ var a = (1 / s.length) * this._fields.length * r,
+ c = this,
+ l = this.tokenStore.expand(e).reduce(function (n, i) {
+ var r = c.corpusTokens.indexOf(i),
+ s = c.idf(i),
+ l = 1,
+ u = new t.SortedSet();
+ if (i !== e) {
+ var d = Math.max(3, i.length - e.length);
+ l = 1 / Math.log(d);
+ }
+ r > -1 && o.insert(r, a * s * l);
+ for (
+ var h = c.tokenStore.get(i),
+ f = Object.keys(h),
+ p = f.length,
+ m = 0;
+ p > m;
+ m++
+ )
+ u.add(h[f[m]].ref);
+ return n.union(u);
+ }, new t.SortedSet());
+ i.push(l);
+ }, this);
+ var a = i.reduce(function (t, e) {
+ return t.intersect(e);
+ });
+ return a
+ .map(function (t) {
+ return { ref: t, score: o.similarity(this.documentVector(t)) };
+ }, this)
+ .sort(function (t, e) {
+ return e.score - t.score;
+ });
+ }),
+ (t.Index.prototype.documentVector = function (e) {
+ for (
+ var n = this.documentStore.get(e),
+ o = n.length,
+ i = new t.Vector(),
+ r = 0;
+ o > r;
+ r++
+ ) {
+ var s = n.elements[r],
+ a = this.tokenStore.get(s)[e].tf,
+ c = this.idf(s);
+ i.insert(this.corpusTokens.indexOf(s), a * c);
+ }
+ return i;
+ }),
+ (t.Index.prototype.toJSON = function () {
+ return {
+ version: t.version,
+ fields: this._fields,
+ ref: this._ref,
+ documentStore: this.documentStore.toJSON(),
+ tokenStore: this.tokenStore.toJSON(),
+ corpusTokens: this.corpusTokens.toJSON(),
+ pipeline: this.pipeline.toJSON()
+ };
+ }),
+ (t.Index.prototype.use = function (t) {
+ var e = Array.prototype.slice.call(arguments, 1);
+ e.unshift(this), t.apply(this, e);
+ }),
+ (t.Store = function () {
+ (this.store = {}), (this.length = 0);
+ }),
+ (t.Store.load = function (e) {
+ var n = new this();
+ return (
+ (n.length = e.length),
+ (n.store = Object.keys(e.store).reduce(function (n, o) {
+ return (n[o] = t.SortedSet.load(e.store[o])), n;
+ }, {})),
+ n
+ );
+ }),
+ (t.Store.prototype.set = function (t, e) {
+ this.has(t) || this.length++ , (this.store[t] = e);
+ }),
+ (t.Store.prototype.get = function (t) {
+ return this.store[t];
+ }),
+ (t.Store.prototype.has = function (t) {
+ return t in this.store;
+ }),
+ (t.Store.prototype.remove = function (t) {
+ this.has(t) && (delete this.store[t], this.length--);
+ }),
+ (t.Store.prototype.toJSON = function () {
+ return { store: this.store, length: this.length };
+ }),
+ (t.stemmer = (function () {
+ var t = {
+ ational: "ate",
+ tional: "tion",
+ enci: "ence",
+ anci: "ance",
+ izer: "ize",
+ bli: "ble",
+ alli: "al",
+ entli: "ent",
+ eli: "e",
+ ousli: "ous",
+ ization: "ize",
+ ation: "ate",
+ ator: "ate",
+ alism: "al",
+ iveness: "ive",
+ fulness: "ful",
+ ousness: "ous",
+ aliti: "al",
+ iviti: "ive",
+ biliti: "ble",
+ logi: "log"
+ },
+ e = {
+ icate: "ic",
+ ative: "",
+ alize: "al",
+ iciti: "ic",
+ ical: "ic",
+ ful: "",
+ ness: ""
+ },
+ n = "[^aeiou]",
+ o = "[aeiouy]",
+ i = n + "[^aeiouy]*",
+ r = o + "[aeiou]*",
+ s = "^(" + i + ")?" + r + i,
+ a = "^(" + i + ")?" + r + i + "(" + r + ")?$",
+ c = "^(" + i + ")?" + r + i + r + i,
+ l = "^(" + i + ")?" + o,
+ u = new RegExp(s),
+ d = new RegExp(c),
+ h = new RegExp(a),
+ f = new RegExp(l),
+ p = /^(.+?)(ss|i)es$/,
+ m = /^(.+?)([^s])s$/,
+ v = /^(.+?)eed$/,
+ g = /^(.+?)(ed|ing)$/,
+ y = /.$/,
+ w = /(at|bl|iz)$/,
+ S = new RegExp("([^aeiouylsz])\\1$"),
+ k = new RegExp("^" + i + o + "[^aeiouwxy]$"),
+ E = /^(.+?[^aeiou])y$/,
+ x = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/,
+ b = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,
+ T = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,
+ C = /^(.+?)(s|t)(ion)$/,
+ L = /^(.+?)e$/,
+ _ = /ll$/,
+ A = new RegExp("^" + i + o + "[^aeiouwxy]$"),
+ O = function (n) {
+ var o, i, r, s, a, c, l;
+ if (n.length < 3) return n;
+ if (
+ ((r = n.substr(0, 1)),
+ "y" == r && (n = r.toUpperCase() + n.substr(1)),
+ (s = p),
+ (a = m),
+ s.test(n)
+ ? (n = n.replace(s, "$1$2"))
+ : a.test(n) && (n = n.replace(a, "$1$2")),
+ (s = v),
+ (a = g),
+ s.test(n))
+ ) {
+ var O = s.exec(n);
+ (s = u), s.test(O[1]) && ((s = y), (n = n.replace(s, "")));
+ } else if (a.test(n)) {
+ var O = a.exec(n);
+ (o = O[1]),
+ (a = f),
+ a.test(o) &&
+ ((n = o),
+ (a = w),
+ (c = S),
+ (l = k),
+ a.test(n)
+ ? (n += "e")
+ : c.test(n)
+ ? ((s = y), (n = n.replace(s, "")))
+ : l.test(n) && (n += "e"));
+ }
+ if (((s = E), s.test(n))) {
+ var O = s.exec(n);
+ (o = O[1]), (n = o + "i");
+ }
+ if (((s = x), s.test(n))) {
+ var O = s.exec(n);
+ (o = O[1]), (i = O[2]), (s = u), s.test(o) && (n = o + t[i]);
+ }
+ if (((s = b), s.test(n))) {
+ var O = s.exec(n);
+ (o = O[1]), (i = O[2]), (s = u), s.test(o) && (n = o + e[i]);
+ }
+ if (((s = T), (a = C), s.test(n))) {
+ var O = s.exec(n);
+ (o = O[1]), (s = d), s.test(o) && (n = o);
+ } else if (a.test(n)) {
+ var O = a.exec(n);
+ (o = O[1] + O[2]), (a = d), a.test(o) && (n = o);
+ }
+ if (((s = L), s.test(n))) {
+ var O = s.exec(n);
+ (o = O[1]),
+ (s = d),
+ (a = h),
+ (c = A),
+ (s.test(o) || (a.test(o) && !c.test(o))) && (n = o);
+ }
+ return (
+ (s = _),
+ (a = d),
+ s.test(n) && a.test(n) && ((s = y), (n = n.replace(s, ""))),
+ "y" == r && (n = r.toLowerCase() + n.substr(1)),
+ n
+ );
+ };
+ return O;
+ })()),
+ t.Pipeline.registerFunction(t.stemmer, "stemmer"),
+ (t.generateStopWordFilter = function (t) {
+ var e = t.reduce(function (t, e) {
+ return (t[e] = e), t;
+ }, {});
+ return function (t) {
+ return t && e[t] !== t ? t : void 0;
+ };
+ }),
+ (t.stopWordFilter = t.generateStopWordFilter([
+ "a",
+ "able",
+ "about",
+ "across",
+ "after",
+ "all",
+ "almost",
+ "also",
+ "am",
+ "among",
+ "an",
+ "and",
+ "any",
+ "are",
+ "as",
+ "at",
+ "be",
+ "because",
+ "been",
+ "but",
+ "by",
+ "can",
+ "cannot",
+ "could",
+ "dear",
+ "did",
+ "do",
+ "does",
+ "either",
+ "else",
+ "ever",
+ "every",
+ "for",
+ "from",
+ "get",
+ "got",
+ "had",
+ "has",
+ "have",
+ "he",
+ "her",
+ "hers",
+ "him",
+ "his",
+ "how",
+ "however",
+ "i",
+ "if",
+ "in",
+ "into",
+ "is",
+ "it",
+ "its",
+ "just",
+ "least",
+ "let",
+ "like",
+ "likely",
+ "may",
+ "me",
+ "might",
+ "most",
+ "must",
+ "my",
+ "neither",
+ "no",
+ "nor",
+ "not",
+ "of",
+ "off",
+ "often",
+ "on",
+ "only",
+ "or",
+ "other",
+ "our",
+ "own",
+ "rather",
+ "said",
+ "say",
+ "says",
+ "she",
+ "should",
+ "since",
+ "so",
+ "some",
+ "than",
+ "that",
+ "the",
+ "their",
+ "them",
+ "then",
+ "there",
+ "these",
+ "they",
+ "this",
+ "tis",
+ "to",
+ "too",
+ "twas",
+ "us",
+ "wants",
+ "was",
+ "we",
+ "were",
+ "what",
+ "when",
+ "where",
+ "which",
+ "while",
+ "who",
+ "whom",
+ "why",
+ "will",
+ "with",
+ "would",
+ "yet",
+ "you",
+ "your"
+ ])),
+ t.Pipeline.registerFunction(t.stopWordFilter, "stopWordFilter"),
+ (t.trimmer = function (t) {
+ return t.replace(/^\W+/, "").replace(/\W+$/, "");
+ }),
+ t.Pipeline.registerFunction(t.trimmer, "trimmer"),
+ (t.TokenStore = function () {
+ (this.root = { docs: {} }), (this.length = 0);
+ }),
+ (t.TokenStore.load = function (t) {
+ var e = new this();
+ return (e.root = t.root), (e.length = t.length), e;
+ }),
+ (t.TokenStore.prototype.add = function (t, e, n) {
+ var n = n || this.root,
+ o = t.charAt(0),
+ i = t.slice(1);
+ return (
+ o in n || (n[o] = { docs: {} }),
+ 0 === i.length
+ ? ((n[o].docs[e.ref] = e), void (this.length += 1))
+ : this.add(i, e, n[o])
+ );
+ }),
+ (t.TokenStore.prototype.has = function (t) {
+ if (!t) return !1;
+ for (var e = this.root, n = 0; n < t.length; n++) {
+ if (!e[t.charAt(n)]) return !1;
+ e = e[t.charAt(n)];
+ }
+ return !0;
+ }),
+ (t.TokenStore.prototype.getNode = function (t) {
+ if (!t) return {};
+ for (var e = this.root, n = 0; n < t.length; n++) {
+ if (!e[t.charAt(n)]) return {};
+ e = e[t.charAt(n)];
+ }
+ return e;
+ }),
+ (t.TokenStore.prototype.get = function (t, e) {
+ return this.getNode(t, e).docs || {};
+ }),
+ (t.TokenStore.prototype.count = function (t, e) {
+ return Object.keys(this.get(t, e)).length;
+ }),
+ (t.TokenStore.prototype.remove = function (t, e) {
+ if (t) {
+ for (var n = this.root, o = 0; o < t.length; o++) {
+ if (!(t.charAt(o) in n)) return;
+ n = n[t.charAt(o)];
+ }
+ delete n.docs[e];
+ }
+ }),
+ (t.TokenStore.prototype.expand = function (t, e) {
+ var n = this.getNode(t),
+ o = n.docs || {},
+ e = e || [];
+ return (
+ Object.keys(o).length && e.push(t),
+ Object.keys(n).forEach(function (n) {
+ "docs" !== n && e.concat(this.expand(t + n, e));
+ }, this),
+ e
+ );
+ }),
+ (t.TokenStore.prototype.toJSON = function () {
+ return { root: this.root, length: this.length };
+ }),
+ (function (t, e) {
+ "function" == typeof define && define.amd
+ ? define(e)
+ : "object" == typeof exports
+ ? (module.exports = e())
+ : (t.lunr = e());
+ })(this, function () {
+ return t;
+ });
+ })(),
+ (String.prototype.truncate = function (t) {
+ if (this.length > t) {
+ for (; " " != this[t] && --t > 0;);
+ return this.substring(0, t) + "&hellip;";
+ }
+ return this;
+ }),
+ (HTMLElement.prototype.wrap = function (t) {
+ t.length || (t = [t]);
+ for (var e = t.length - 1; e >= 0; e--) {
+ var n = e > 0 ? this.cloneNode(!0) : this,
+ o = t[e],
+ i = o.parentNode,
+ r = o.nextSibling;
+ n.appendChild(o), r ? i.insertBefore(n, r) : i.appendChild(n);
+ }
+ }),
+ document.addEventListener("DOMContentLoaded", function () {
+ "use strict";
+ Modernizr.addTest("ios", function () {
+ return !!navigator.userAgent.match(/(iPad|iPhone|iPod)/g);
+ }),
+ Modernizr.addTest("standalone", function () {
+ return !!navigator.standalone;
+ }),
+ FastClick.attach(document.body);
+ var t = document.getElementById("toggle-search"),
+ e = (document.getElementById("reset-search"),
+ document.querySelector(".drawer")),
+ n = document.querySelectorAll(".anchor"),
+ o = document.querySelector(".search .field"),
+ i = document.querySelector(".query"),
+ r = document.querySelector(".results .meta");
+ Array.prototype.forEach.call(n, function (t) {
+ t.querySelector("a").addEventListener("click", function () {
+ (document.getElementById("toggle-drawer").checked = !1),
+ document.body.classList.remove("toggle-drawer");
+ });
+ });
+ var s = window.pageYOffset,
+ a = function () {
+ var t = window.pageYOffset + window.innerHeight,
+ n = Math.max(0, window.innerHeight - e.offsetHeight);
+ t > document.body.clientHeight - (96 - n)
+ ? "absolute" != e.style.position &&
+ ((e.style.position = "absolute"),
+ (e.style.top = null),
+ (e.style.bottom = 0))
+ : e.offsetHeight < window.innerHeight
+ ? "fixed" != e.style.position &&
+ ((e.style.position = "fixed"),
+ (e.style.top = 0),
+ (e.style.bottom = null))
+ : "fixed" != e.style.position
+ ? t > e.offsetTop + e.offsetHeight
+ ? ((e.style.position = "fixed"),
+ (e.style.top = null),
+ (e.style.bottom = "-96px"))
+ : window.pageYOffset < e.offsetTop &&
+ ((e.style.position = "fixed"),
+ (e.style.top = 0),
+ (e.style.bottom = null))
+ : window.pageYOffset > s
+ ? e.style.top &&
+ ((e.style.position = "absolute"),
+ (e.style.top = Math.max(0, s) + "px"),
+ (e.style.bottom = null))
+ : e.style.bottom &&
+ ((e.style.position = "absolute"),
+ (e.style.top = t - e.offsetHeight + "px"),
+ (e.style.bottom = null)),
+ (s = Math.max(0, window.pageYOffset));
+ },
+ c = function () {
+ var t = document.querySelector(".main");
+ window.removeEventListener("scroll", a),
+ matchMedia("only screen and (max-width: 959px)").matches
+ ? ((e.style.position = null),
+ (e.style.top = null),
+ (e.style.bottom = null))
+ : e.offsetHeight + 96 < t.offsetHeight &&
+ (window.addEventListener("scroll", a), a());
+ };
+ Modernizr.ios || (window.addEventListener("resize", c), c());
+ var u = 0;
+ t.addEventListener("click", function (t) {
+ var e = document.body.classList,
+ n = !matchMedia("only screen and (min-width: 960px)").matches;
+ e.contains("locked")
+ ? (e.remove("locked"),
+ n &&
+ setTimeout(function () {
+ window.scrollTo(0, u);
+ }, 100))
+ : ((u = window.scrollY),
+ n &&
+ setTimeout(function () {
+ window.scrollTo(0, 0);
+ }, 400),
+ setTimeout(
+ function () {
+ this.checked &&
+ (n && e.add("locked"),
+ setTimeout(function () {
+ i.focus();
+ }, 200));
+ }.bind(this),
+ 450
+ ));
+ }),
+ o.addEventListener("touchstart", function () {
+ i.focus();
+ }),
+ window.addEventListener("keyup", function (e) {
+ var n = e.keyCode || e.which;
+ 27 == n &&
+ (i.blur(),
+ document.body.classList.remove("toggle-search"),
+ document.body.classList.remove("locked"),
+ (t.checked = !1));
+ });
+ var d = document.getElementById("reset-search");
+ d.addEventListener("click", function () {
+ for (var t = document.querySelector(".results .list"); t.firstChild;)
+ t.removeChild(t.firstChild);
+ var e = document.querySelector(".bar.search");
+ e.classList.remove("non-empty"),
+ (r.innerHTML = ""),
+ (i.value = ""),
+ i.focus();
+ });
+ var h = document.querySelectorAll("h2");
+ h = Array.prototype.map.call(h, function (t) {
+ return t.offsetTop;
+ });
+ var f = null;
+ document.addEventListener("scroll", function () {
+ for (
+ var t = window.scrollY + window.innerHeight / 3,
+ e = h.length - 1,
+ o = 0;
+ e > o;
+ o++
+ )
+ t < h[o + 1] && (e = o);
+ e != f &&
+ ((f = e),
+ Array.prototype.forEach.call(n, function (t, e) {
+ var n = t.querySelector("a");
+ (e != f || n.classList.add("current")) &&
+ n.classList.remove("current");
+ }));
+ });
+ var p = document.querySelectorAll(".n + .p");
+ Array.prototype.forEach.call(p, function (t) {
+ var e = t.innerText || t.textContent;
+ e && "(" == e[0] && t.previousSibling.classList.add("f");
+ });
+ var m = document.querySelectorAll("table");
+ if (
+ (Array.prototype.forEach.call(m, function (t) {
+ var e = document.createElement("div");
+ e.classList.add("data"), e.wrap(t);
+ }),
+ Modernizr.ios)
+ ) {
+ var v = document.querySelectorAll(".scrollable, .standalone .article");
+ Array.prototype.forEach.call(v, function (t) {
+ t.addEventListener("touchstart", function () {
+ var t = this.scrollTop;
+ 0 == t
+ ? (this.scrollTop = 1)
+ : t + this.offsetHeight == this.scrollHeight &&
+ (this.scrollTop = t - 1);
+ });
+ });
+ }
+ var g = document.querySelectorAll(".project, .overlay, .header");
+ Array.prototype.forEach.call(g, function (t) {
+ t.addEventListener("touchmove", function (t) {
+ t.preventDefault();
+ });
+ });
+ var y = document.querySelectorAll(".toggle");
+ Array.prototype.forEach.call(y, function (t) {
+ t.addEventListener("click", function () {
+ document.body.classList.toggle(this.id);
+ });
+ }),
+ repo_id &&
+ pegasus("https://api.github.com/repos/" + repo_id).then(
+ function (t, e) {
+ var n = t.stargazers_count;
+ n > 1e4
+ ? (n = (n / 1e3).toFixed(0) + "k")
+ : n > 1e3 && (n = (n / 1e3).toFixed(1) + "k");
+ var o = document.querySelector(".repo-stars .count");
+ o.innerHTML = n;
+ },
+ function (t, e) {
+ console.error(t, e.status);
+ }
+ );
+ }),
+ "standalone" in window.navigator && window.navigator.standalone)
+) {
+ var node,
+ remotes = !1;
+ document.addEventListener(
+ "click",
+ function (t) {
+ for (node = t.target; "A" !== node.nodeName && "HTML" !== node.nodeName;)
+ node = node.parentNode;
+ "href" in node &&
+ -1 !== node.href.indexOf("http") &&
+ (-1 !== node.href.indexOf(document.location.host) || remotes) &&
+ (t.preventDefault(), (document.location.href = node.href));
+ },
+ !1
+ );
+}