"use strict"; (function(K, M, A, la) { const D = function() { const w = {}; return { register: function(r, E) { w[r] = E; }, require: function(r) { var E; if (!(E = w[r])) throw Error("Bad module [" + r + "]"); return E; }, include: function(r) { return w[r]; }, noop: function() {} }; }(); D.register("1", function(w, r, E) { function y(p) { const t = typeof p; if ("string" === t) if (/[^ <>!=()%^&|?:n0-9]/.test(p)) console.error("Invalid plural: " + p); else return new Function("n", "return " + p); "function" !== t && (p = function(e) { return 1 != e; }); return p; } w.init = function(p) { function t(l, m, q) { return (l = g[l]) && l[q] ? l[q] : m || ""; } function e(l) { return t(l, l, 0); } function b(l, m) { return t(m + "" + l, l, 0); } function k(l, m, q) { q = Number(p(q)); isNaN(q) && (q = 0); return t(l, q ? m : l, q); } p = y(p); let g = {}; return { __: e, _x: b, _n: k, _: e, x: b, n: k, load: function(l) { g = l || {}; return this; }, pluraleq: function(l) { p = y(l); return this; } }; }; return w; }({}, K, M)); D.register("2", function(w, r, E) { w.ie = function() { return !1; }; w.init = function() { return w; }; return w; }({}, K, M)); D.register("3", function(w, r, E) { Number.prototype.format = function(y, p, t) { var e = Math.pow(10, y || 0); y = []; e = String(Math.round(e * this) / e); var b = e.split("."); e = b[0]; b = b[1]; let k = e.length; do { y.unshift(e.substring(k - 3, k)); } while (0 < (k -= 3)); e = y.join(t || ","); if (b) { { t = b; y = t.length; let g; for (;"0" === t.charAt(--y); ) g = y; g && (t = t.substring(0, g)); b = t; } b && (e += (p || ".") + b); } return e; }; Number.prototype.percent = function(y) { let p = 0, t = this && y ? this / y * 100 : 0; if (0 === t) return "0"; if (100 === t) return "100"; if (99 < t) t = Math.min(t, 99.9), y = t.format(++p); else if (.5 > t) { t = Math.max(t, 1e-4); do { y = t.format(++p); } while ("0" === y && 4 > p); y = y.substring(1); } else y = t.format(0); return y; }; return w; }({}, K, M)); D.register("4", function(w, r, E) { Array.prototype.indexOf || (Array.prototype.indexOf = function(y) { if (null == this) throw new TypeError(); var p = Object(this), t = p.length >>> 0; if (0 === t) return -1; var e = 0; 1 < arguments.length && (e = Number(arguments[1]), e != e ? e = 0 : 0 != e && Infinity != e && -Infinity != e && (e = (0 < e || -1) * Math.floor(Math.abs(e)))); if (e >= t) return -1; for (e = 0 <= e ? e : Math.max(t - Math.abs(e), 0); e < t; e++) if (e in p && p[e] === y) return e; return -1; }); return w; }({}, K, M)); D.register("5", function(w, r, E) { E = r.JSON; E || (E = { parse: A.parseJSON, stringify: null }, r.JSON = E); w.parse = E.parse; w.stringify = E.stringify; return w; }({}, K, M)); D.register("6", function(w, r, E) { w.trim = function(y, p) { for (p || (p = " \n"); y && -1 !== p.indexOf(y.charAt(0)); ) y = y.substring(1); for (;y && -1 !== p.indexOf(y.slice(-1)); ) y = y.substring(0, y.length - 1); return y; }; w.sprintf = function(y) { return w.vsprintf(y, [].slice.call(arguments, 1)); }; w.vsprintf = function(y, p) { let t = 0; return y.replace(/%(?:([1-9][0-9]*)\$)?([sud%])/g, function(e, b, k) { if ("%" === k) return "%"; e = b ? p[Number(b) - 1] : p[t++]; return null != e ? String(e) : "s" === k ? "" : "0"; }); }; return w; }({}, K, M)); D.register("1a", function(w, r, E) { function y(p) { return function(t, e) { let b = t[p] || 0; for (;(t = t.offsetParent) && t !== (e || E.body); ) b += t[p] || 0; return b; }; } w.top = y("offsetTop"); w.left = y("offsetLeft"); w.el = function(p, t) { p = E.createElement(p || "div"); t && (p.className = t); return p; }; w.txt = function(p) { return E.createTextNode(p || ""); }; w.rect = function(p) { return p.getBoundingClientRect(); }; return w; }({}, K, M)); D.register("7", function(w, r, E) { function y(c, d, h) { function n() { v(); C = setTimeout(d, h); } function v() { C && clearTimeout(C); C = 0; } let C = 0; n(); A(c).on("mouseenter", v).on("mouseleave", n); return { die: function() { v(); A(c).off("mouseenter mouseleave"); } }; } function p(c, d) { c.fadeTo(d, 0, function() { c.slideUp(d, function() { c.remove(); A(r).triggerHandler("resize"); }); }); return c; } function t(c, d) { function h(G) { q[B] = null; p(A(c), 250); C && C.die(); var H; if (H = G) G.stopPropagation(), G.preventDefault(), H = !1; return H; } function n(G) { C && C.die(); return C = y(c, h, G); } const v = A(c); let C, B, z, F = v.find("button"); 0 === F.length && (v.addClass("is-dismissible"), F = A(''); D.require("c").init(g); return g; } function t(g) { return p("cloud").attr("title", g.labels[8] + " (Ctrl-U)").on("click", function(l) { l.preventDefault(); g.focus().fuzzy(!g.fuzzy()); }); } function e(g) { return p("robot").attr("title", g.labels[9] + " (Ctrl-J)").on("click", function(l) { l.preventDefault(); g.fire("poHint"); }); } function b(g, l) { return D.require("6").vsprintf(g, l); } w.init = function(g) { const l = new y(); g = l.setRootCell(g); var m = g.splity("po-list", "po-edit"); let q = m[0], x = m[1]; m = x.splitx("po-trans", "po-comment"); var u = m[0]; let f = m[1].header("Loading.."); m = u.splity("po-source", "po-target"); u = m[0].header("Loading.."); m = m[1].header("Loading.."); g.distribute([ .34 ]); x.distribute([ .8 ]); l.setListCell(q); l.setSourceCell(u); l.setTargetCell(m); l.commentCell = f; l.editable.source = !1; return l; }; r = y.prototype = D.require("1d").extend(y); r.getListHeadings = function() { const g = this.t(), l = [ g._x("Source text", "Editor") ]; this.targetLocale && (l[1] = g._x("Translation", "Editor")); return l; }; r.getListColumns = function() { const g = { source: 0 }; this.targetLocale && (g.target = 1); return g; }; r.getListEntry = function(g) { const l = this.cellText, m = [ function() { let q, x = l(g.source() || ""), u = g.context(); return u ? (q = E.createElement("p"), q.appendChild(E.createElement("mark")).innerText = u, q.appendChild(E.createTextNode(" " + x)), q) : x; } ]; this.targetLocale && (m[1] = function() { return l(g.translation() || ""); }); return m; }; r.stats = function() { let g = this.po, l = g.length, m = 0, q = 0, x = 0; g.each(function(u, f) { f.fuzzy() ? x++ : f.translated() ? m++ : q++; }); return { t: l, p: m.percent(l) + "%", f: x, u: q }; }; r.unlock = function() { const g = this.targetLocale; this._unlocked || (this.editable = { source: !0, context: !0, target: !1 }, this.po && this.po.unlock(), this.contextCell = this.targetCell, delete this.targetCell, g && (this._unlocked = g, delete this.targetLocale, this.reload(), this.fire("poLock", [ !1 ])), this.active && this.loadMessage(this.active)); }; r.lock = function() { const g = this._unlocked; g && (this.targetLocale = g, delete this._unlocked, this.po && this.po.lock(g), this.editable = { source: !1, context: !1, target: !0 }, this.targetCell = this.contextCell, delete this.contextCell, this.reload(), this.fire("poLock", [ !0, g ]), this.active && this.loadMessage(this.active)); }; r.locked = function() { return !this._unlocked; }; r.setStatus = function(g) { let l = this.$tnav; if (null == g) l && (l.remove(), this.$tnav = null); else { l || (this.$tnav = l = A("").append(t(this)).append(e(this)).appendTo(this.targetCell.header())); var m = []; g.translated() ? g.fuzzy() && m.push("po-fuzzy") : m.push("po-empty"); l.attr("class", m.join(" ")); } }; r.getSorter = function() { function g(q, x) { const u = q.weight(), f = x.weight(); return u === f ? l(q, x) : u > f ? -1 : 1; } function l(q, x) { return q.hash().localeCompare(x.hash()); } const m = this; return function(q) { const x = m.po, u = m.locked() ? g : l; q.sort(function(f, a) { return u(x.row(f), x.row(a)); }); }; }; r.validate = function(g) { g.err = null; if (g.untranslated(0)) return 0; const l = []; let m = this.validateMessagePrintf(g, l); m && (g.err = l); return m; }; r.validateMessagePrintf = function(g, l) { const m = g.format(); if ("no-" === m.substring(0, 3)) return 0; const q = g.msgid(), x = g.msgidPlural(); null == k && (k = D.require("1e").init()); var u = k; if (!("" !== m || u.sniff(q) || "" !== x && u.sniff(x))) return 0; let f = 0, a = u.parse(q); x && a.valid && (a = u.parse(x, a)); if (!a.valid) return 0; let c = a.count; if (0 !== c || "" !== m) { var d = this; g.eachMsg(function(h, n) { l[h] = []; if ("" !== n) { n = u.parse(n); var v = n.count; h = l[h]; if (n.valid) if (v > c) h.push(b(d.t()._("Too many placeholders; source text formatting suggests a maximum of %s"), [ c ])), f++; else if (v < c && "" === x) h.push(b(d.t()._("Missing placeholders; source text formatting suggests at least %s"), [ c ])), f++; else { v = a.types; for (const C in n.types) for (const B in n.types[C]) if (null == v[C] || null == v[C][B]) { h.push(d.t()._("Mismatching placeholder type; check against source text formatting")); f++; return; } } else h.push(d.t()._("Possible syntax error in string formatting")), f++; } }); return f; } }; r.handle = {}; let k; return w; }({}, K, M)); D.register("e", function(w, r, E) { const y = { copy: 66, clear: 75, save: 83, fuzzy: 85, next: 40, prev: 38, enter: 13, invis: 73, hint: 74 }, p = { 38: !0, 40: !0, 73: !0 }, t = { 66: function(e, b) { if (e = b.current()) e.normalize(), b.focus().pasteMessage(e); }, 75: function(e, b) { if (e = b.current()) e.untranslate(), b.focus().pasteMessage(e); }, 85: function(e, b) { b.focus().fuzzy(!b.fuzzy()); }, 13: function(e, b) { b.getFirstEditable() && b.next(1, !0, !0); }, 40: function(e, b) { e = e.shiftKey; b.next(1, e, e); }, 38: function(e, b) { e = e.shiftKey; b.next(-1, e, e); }, 73: function(e, b) { if (!e.shiftKey) return !1; b.setInvs(!b.getInvs()); } }; w.init = function(e, b) { function k(l) { if (l.isDefaultPrevented() || !l.metaKey && !l.ctrlKey) return !0; const m = l.which; if (!g[m]) return !0; const q = t[m]; if (!q || l.altKey || l.shiftKey && !p[m] || !1 === q(l, e)) return !0; l.stopPropagation(); l.preventDefault(); return !1; } const g = {}; A(b || r).on("keydown", k); return { add: function(l, m) { t[y[l]] = m; return this; }, enable: function() { for (const l in arguments) g[y[arguments[l]]] = !0; return this; }, disable: function() { A(b || r).off("keydown", k); e = b = null; for (const l in t) g[l] = !1; } }; }; return w; }({}, K, M)); D.register("1f", function(w, r, E) { function y() { this.reIndex([]); } w.init = function() { return new y(); }; r = y.prototype; r.reIndex = function(p) { const t = {}, e = p.length; let b = -1; for (;++b < e; ) t[p[b]] = b; this.keys = p; this.length = b; this.ords = t; }; r.key = function(p, t) { if (null == t) return this.keys[p]; const e = this.keys[p], b = this.ords[t]; if (t !== e) { if (null != b) throw Error("Clash with item at [" + b + "]"); this.keys[p] = t; delete this.ords[e]; this.ords[t] = p; } return p; }; r.indexOf = function(p) { p = this.ords[p]; return null == p ? -1 : p; }; r.add = function(p, t) { let e = this.ords[p]; null == e && (this.keys[this.length] = p, e = this.ords[p] = this.length++); this[e] = t; return e; }; r.get = function(p) { return this[this.ords[p]]; }; r.has = function(p) { return null != this.ords[p]; }; r.del = function(p) { this.cut(this.ords[p], 1); }; r.cut = function(p, t) { t = t || 1; const e = [].splice.call(this, p, t); this.keys.splice(p, t); this.reIndex(this.keys); return e; }; r.each = function(p) { const t = this.keys, e = this.length; let b = -1; for (;++b < e; ) p(t[b], this[b], b); return this; }; r.sort = function(p) { const t = this.length, e = this.keys, b = this.ords, k = []; let g = -1; for (;++g < t; ) k[g] = [ this[g], e[g] ]; k.sort(function(m, q) { return p(m[0], q[0]); }); for (g = 0; g < t; g++) { var l = k[g]; this[g] = l[0]; l = l[1]; e[g] = l; b[l] = g; } return this; }; r.join = function(p) { return [].join.call(this, p); }; return w; }({}, K, M)); D.register("20", function(w, r, E) { function y(p, t) { var e = new RegExp("^.{0," + (p - 1) + "}[" + t + "]"), b = new RegExp("^[^" + t + "]+"); return function(k, g) { for (var l = k.length, m; l > p; ) { m = e.exec(k) || b.exec(k); if (null == m) break; m = m[0]; g.push(m); m = m.length; l -= m; k = k.substring(m); } 0 !== l && g.push(k); return g; }; } w.create = function(p) { function t(q) { return g[q] || "\\" + q; } var e = /(?:\r\n|[\r\n\v\f\u2028\u2029])/g, b = /[ \r\n]+/g, k = /[\t\v\f\x07\x08\\"]/g, g = { "\t": "\\t", "\v": "\\v", "\f": "\\f", "": "\\a", "\b": "\\b" }; if (null == p || isNaN(p = Number(p))) p = 79; if (0 < p) { var l = y(p - 3, " "); var m = y(p - 2, "-– \\.,:;\\?!\\)\\]\\}\\>"); } return { pair: function(q, x) { if (!x) return q + ' ""'; x = x.replace(k, t); var u = 0; x = x.replace(e, function() { u++; return "\\n\n"; }); if (!(u || p && p < x.length + q.length + 3)) return q + ' "' + x + '"'; q = [ q + ' "' ]; x = x.split("\n"); if (m) for (var f = -1, a = x.length; ++f < a; ) m(x[f], q); else q = q.concat(x); return q.join('"\n"') + '"'; }, prefix: function(q, x) { q = q.split(e); return x + q.join("\n" + x); }, refs: function(q) { q = q.replace(b, " ", q); l && (q = l(q, []).join("\n#: ")); return "#: " + q; } }; }; return w; }({}, K, M)); D.register("2c", function(w, r, E) { function y() { this.length = 0; } w.init = function() { return new y(); }; r = y.prototype; r.push = function(p) { this[this.length++] = p; return this; }; r.sort = function(p) { [].sort.call(this, p); return this; }; r.each = function(p) { for (var t = -1, e = this.length; ++t < e; ) p(t, this[t]); return this; }; return w; }({}, K, M)); D.register("21", function(w, r, E) { function y() {} w.extend = function(p) { return p.prototype = new y(); }; r = y.prototype = D.require("2a").init([ "load" ]); r.row = function(p) { return this.rows[p]; }; r.lock = function(p) { return this.locale(p || { lang: "zxx", label: "", nplurals: 2, pluraleq: "n!=1" }); }; r.unlock = function() { const p = this.loc; this.loc = null; return p; }; r.locale = function(p) { null == p ? p = this.loc : this.loc = p = D.require("29").cast(p); return p; }; r.source = function(p) { null == p ? p = this.src || D.require("29").cast({ lang: "en", label: "English", nplurals: 2, pluraleq: "n!=1" }) : this.src = p = D.require("29").cast(p); return p; }; r.each = function(p) { this.rows.each(p); return this; }; r.indexOf = function(p) { "object" !== typeof p && (p = this.get(p)); if (!p) return -1; null == p.idx && (p.idx = this.rows.indexOf(p.hash())); return p.idx; }; r.get = function(p) { return this.rows && this.rows.get(p); }; r.has = function(p) { return this.rows && this.rows.has(p); }; r.del = function(p) { p = this.indexOf(p); if (-1 !== p) { const t = this.rows.cut(p, 1); if (t && t.length) return this.length = this.rows.length, this.rows.each(function(e, b, k) { b.idx = k; }), p; } }; r.reIndex = function(p, t) { const e = p.hash(), b = this.indexOf(p), k = this.rows.indexOf(e); return k === b ? b : -1 !== k ? (t = (t || 0) + 1, p.source("Error, duplicate " + String(t) + ": " + p.source()), this.reIndex(p, t)) : this.rows.key(b, e); }; r.sort = function(p) { this.rows.sort(p); return this; }; r.export = function() { const p = this.rows, t = p.length, e = D.require("2c").init(); let b = -1; for (;++b < t; ) e.push(p[b]); return e; }; return w; }({}, K, M)); D.register("22", function(w, r, E) { function y(e, b, k) { if (null == k) return e[b] || ""; e[b] = k || ""; return e; } function p() { this._id = this.id = ""; } function t(e, b) { const k = e.length; let g = -1; for (;++g < k; ) b(g, e[g]); } w.extend = function(e) { return e.prototype = new p(); }; r = p.prototype; r.flag = function(e, b) { const k = this.flg || (this.flg = []); if (null != b) k[b] = e; else for (b = Math.max(k.length, this.src.length, this.msg.length); 0 !== b--; ) k[b] = e; return this; }; r.flagged = function(e) { return (this.flg || [])[e || 0] || 0; }; r.hasFlag = function() { const e = this.flg || []; let b = e.length; for (;0 !== b--; ) if (this.isFlag(e[b])) return !0; return !1; }; r.isFlag = function(e) { return 0 < e; }; r.flags = function() { const e = {}, b = [], k = this.flg || []; let g = k.length; for (;0 !== g--; ) { const l = k[g]; e[l] || (e[l] = !0, b.push(l)); } return b; }; r.flaggedAs = function(e, b) { const k = this.flg || []; if (null != b) return e === k[b] || 0; for (b = k.length; 0 !== b--; ) if (k[b] === e) return !0; return !1; }; r.fuzzy = function(e, b) { const k = this.flaggedAs(4, e); null != b && this.flag(b ? 4 : 0, e); return k; }; r.source = function(e, b) { if (null == e) return this.src[b || 0] || ""; this.src[b || 0] = e; return this; }; r.plural = function(e, b) { if (null == e) return this.src[b || 1] || ""; this.src[b || 1] = e || ""; return this; }; r.sourceForms = function() { return this.srcF; }; r.targetForms = function() { return this.msgF; }; r.each = function(e) { const b = this.src, k = this.msg, g = Math.max(b.length, k.length); let l = -1; for (;++l < g; ) e(l, b[l], k[l]); return this; }; r.eachSrc = function(e) { t(this.src, e); return this; }; r.eachMsg = function(e) { t(this.msg, e); return this; }; r.count = function() { return Math.max(this.src.length, this.msg.length); }; r.pluralized = function() { return 1 < this.src.length || 1 < this.msg.length; }; r.translate = function(e, b) { this.msg[b || 0] = e || ""; return this; }; r.untranslate = function(e) { if (null != e) this.msg[e] = ""; else { const b = this.msg, k = b.length; for (e = 0; e < k; e++) b[e] = ""; } return this; }; r.translation = function(e) { return this.msg[e || 0] || ""; }; r.errors = function(e) { return this.err && this.err[e || 0] || []; }; r.valid = function() { return null == this.err; }; r.translated = function(e) { if (null != e) return !!this.msg[e]; const b = this.msg, k = b.length; for (e = 0; e < k; e++) if (!b[e]) return !1; return !0; }; r.untranslated = function(e) { if (null != e) return !this.msg[e]; const b = this.msg, k = b.length; for (e = 0; e < k; e++) if (b[e]) return !1; return !0; }; r.comment = function(e) { return y(this, "cmt", e); }; r.notes = function(e) { return y(this, "xcmt", e); }; r.refs = function(e) { return y(this, "rf", e); }; r.format = function(e) { return y(this, "fmt", e); }; r.context = function(e) { return y(this, "ctx", e); }; r.tags = function() { return this.tg; }; r.getMax = function(e) { return (this.mx || [ 0 ])[e] || 0; }; r.toString = r.toText = function() { return this.src.concat(this.msg, [ this.id, this.ctx ]).join(" "); }; r.weight = function() { let e = 0; this.translation() || (e += 2); this.fuzzy() && (e += 1); return e; }; r.equals = function(e) { return this === e || this.hash() === e.hash(); }; r.hash = function() { return this.id; }; r.normalize = function() { let e = -1, b = this.msg.length; for (;++e < b; ) this.msg[e] = this.src[Math.min(e, 1)] || ""; }; r.disabled = function(e) { return !!(this.lck || [])[e || 0]; }; r.disable = function(e) { (this.lck || (this.lck = []))[e || 0] = !0; return this; }; r.saved = function(e) { const b = this.drt; if (null == b) return !0; if (null != e) return !b[e]; for (e = b.length; 0 !== e--; ) if (b[e]) return !1; return !0; }; r.unsave = function(e) { (this.drt || (this.drt = []))[e || 0] = !0; return this; }; r.save = function(e) { null == e ? this.drt = null : (this.drt || (this.drt = []))[e] = !1; return this; }; r.is = function(e) { return e && (e === this || e.idx === this.idx); }; r.isHTML = function(e) { if (null == e) return this.htm || !1; this.htm = e; }; r = null; return w; }({}, K, M)); D.register("f", function(w, r, E) { function y(g) { return { "Project-Id-Version": "PACKAGE VERSION", "Report-Msgid-Bugs-To": "", "POT-Creation-Date": g || "", "PO-Revision-Date": g || "", "Last-Translator": "", "Language-Team": "", Language: "", "Plural-Forms": "", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit" }; } function p(g, l) { g = g || ""; l && (g += "\0" + l); return g; } function t(g) { const l = r.console; l && l.error && l.error(g.message || String(g)); } function e(g) { return D.require("20").create(g); } function b(g) { this.locale(g); this.clear(); this.head = y(this.now()); } function k(g, l) { this.src = [ g || "" ]; this.msg = [ l || "" ]; } w.create = function(g) { return new b(g); }; E = D.require("21").extend(b); E.clear = function() { this.rows = D.require("1f").init(); this.length = 0; return this; }; E.now = function() { function g(f, a) { for (f = String(f); f.length < a; ) f = "0" + f; return f; } var l = new Date(); const m = l.getUTCFullYear(), q = l.getUTCMonth() + 1, x = l.getUTCDate(), u = l.getUTCHours(); l = l.getUTCMinutes(); return g(m, 4) + "-" + g(q, 2) + "-" + g(x, 2) + " " + g(u, 2) + ":" + g(l, 2) + "+0000"; }; E.header = function(g, l) { const m = this.head || (this.head = {}); if (null == l) return this.headers()[g] || ""; m[g] = l || ""; return this; }; E.headers = function(g) { const l = this.now(), m = this.head || (this.head = y(l)); if (null != g) { for (x in g) m[x] = g[x]; return this; } const q = this.locale(); g = {}; for (x in m) g[x] = String(m[x]); if (q) { g.Language = String(q) || "zxx"; g["Language-Team"] = q.label || g.Language; g["Plural-Forms"] = "nplurals=" + (q.nplurals || "2") + "; plural=" + (q.pluraleq || "n!=1") + ";"; var x = "PO-Revision-Date"; } else g.Language = "", g["Plural-Forms"] = "nplurals=INTEGER; plural=EXPRESSION;", g["PO-Revision-Date"] = "YEAR-MO-DA HO:MI+ZONE", x = "POT-Creation-Date"; g[x] || (g[x] = l); g["X-Generator"] = "Loco https://localise.biz/"; return g; }; E.get = function(g, l) { g = p(g, l); return this.rows.get(g); }; E.add = function(g, l) { g instanceof k || (g = new k(g)); l && g.context(l); l = g.hash(); this.rows.get(l) ? t("Duplicate message at index " + this.indexOf(g)) : (g.idx = this.rows.add(l, g), this.length = this.rows.length); return g; }; E.load = function(g) { let l = -1, m, q; var x; let u, f, a, c = (x = this.locale()) && x.nplurals || 2, d = []; for (;++l < g.length; ) m = g[l], null == m.parent ? (q = m.source || m.id, x = m.target || "", u = m.context, q || u ? (f = new k(q, x), f._id = m._id, u && f.context(u), m.flag && f.flag(m.flag, 0), m.comment && f.comment(m.comment), m.notes && f.notes(m.notes), m.refs && f.refs(m.refs), f.format(m.format), m.message = f, this.add(f), m.prev && m.prev[0] && (f.prev(m.prev[0].source, m.prev[0].context), m.prev[1] && f._src.push(m.prev[1].source || ""))) : 0 === l && "object" === typeof x && (this.head = x, this.headcmt = m.comment)) : d.push(m); for (l = -1; ++l < d.length; ) try { m = d[l]; q = m.source || m.id; f = g[m.parent] && g[m.parent].message; if (!f) throw Error("parent missing for plural " + q); a = m.plural; 1 === a && f.plural(q); a >= c || (m.flag && f.flag(m.flag, a), f.translate(m.target || "", a), m.format && !f.format() && f.format(m.format)); } catch (h) { t(h); } return this; }; E.wrap = function(g) { this.fmtr = e(g); return this; }; E.toString = function() { var g, l = this.locale(), m = [], q = [], x = this.headers(), u = !l, f = l && l.nplurals || 2, a = this.fmtr || e(); x[l ? "PO-Revision-Date" : "POT-Creation-Date"] = this.now(); for (g in x) q.push(g + ": " + x[g]); q = new k("", q.join("\n")); q.comment(this.headcmt || ""); u && q.fuzzy(0, !0); m.push(q.toString()); m.push(""); this.rows.each(function(c, d) { c && (m.push(d.cat(a, u, f)), m.push("")); }); return m.join("\n"); }; E = D.require("22").extend(k); E.msgid = function() { return this.src[0]; }; E.msgidPlural = function() { return this.src[1] || ""; }; E.prev = function(g, l) { this._src = [ g || "" ]; this._ctx = l; }; E.hash = function() { return p(this.source(), this.context()); }; E.toString = function() { return this.cat(e()); }; E.cat = function(g, l, m) { var q = [], x; (x = this.cmt) && q.push(g.prefix(x, "# ")); (x = this.xcmt) && q.push(g.prefix(x, "#. ")); var u = this.rf; if (x = this._id) u += (u ? " " : "") + "loco:" + x; u && /\S/.test(u) && q.push(g.refs(u)); !l && this.fuzzy() && q.push("#, fuzzy"); (x = this.fmt) && q.push("#, " + x + "-format"); (x = this._ctx) && q.push(g.prefix(g.pair("msgctxt", x), "#| ")); if (x = this._src) x[0] && q.push(g.prefix(g.pair("msgid", x[0]), "#| ")), x[1] && q.push(g.prefix(g.pair("msgid_plural", x[1]), "#| ")); (x = this.ctx) && q.push(g.pair("msgctxt", x)); q.push(g.pair("msgid", this.src[0])); if (null == this.src[1]) q.push(g.pair("msgstr", l ? "" : this.msg[0])); else for (u = -1, q.push(g.pair("msgid_plural", this.src[1])), x = this.msg || [ "", "" ], m = m || x.length; ++u < m; ) q.push(g.pair("msgstr[" + u + "]", l ? "" : x[u] || "")); return q.join("\n"); }; E.compare = function(g, l) { let m = this.weight(), q = g.weight(); if (m > q) return 1; if (m < q) return -1; if (l) { m = this.hash().toLowerCase(); q = g.hash().toLowerCase(); if (m < q) return 1; if (m > q) return -1; } return 0; }; E.copy = function() { let g = new k(), l, m; for (l in this) this.hasOwnProperty(l) && ((m = this[l]) && m.concat && (m = m.concat()), g[l] = m); return g; }; return w; }({}, K, M)); D.register("11", function(w, r, E) { w.init = function(y, p) { function t() { return g || (g = A('
').dialog({ dialogClass: "loco-modal loco-modal-wide", modal: !0, autoOpen: !1, closeOnEscape: !0, resizable: !1, height: 500 })); } function e(l, m, q) { l = A("

").text(q); t().dialog("close").html("").dialog("option", "title", "Error").append(l).dialog("open"); } function b(l) { const m = l && l.code; if (m) { for (var q = m.length, x = A("
    ").attr("class", l.type), u = -1; ++u < q; ) A("
  1. ").html(m[u]).appendTo(x); 0 !== l.line && x.find("li").eq(l.line - 1).attr("class", "highlighted"); t().dialog("close").html("").dialog("option", "title", l.path + ":" + l.line).append(x).dialog("open"); } } function k(l) { l = l.target; const m = A(l).find("li.highlighted")[0]; l.scrollTop = Math.max(0, (m && m.offsetTop || 0) - Math.floor(l.clientHeight / 2)); } let g; return { load: function(l) { t().html('
    ').dialog("option", "title", "Loading..").off("dialogopen").dialog("open").on("dialogopen", k); l = A.extend({ ref: l, path: p.popath }, p.project || {}); y.ajax.post("fsReference", l, b, e); } }; }; return w; }({}, K, M)); D.register("12", function(w, r, E) { function y() { this.inf = {}; } function p() { const b = E.createElement("p"), k = /&(#\d+|#x[0-9a-f]|[a-z]+);/i, g = /<[a-z]+\s/i; let l, m; return { sniff: function(q) { if (q === l) return m; l = q; if (k.test(q) || g.test(q)) if (b.innerHTML = q, b.textContent !== q) return m = !0; return m = !1; } }; } w.create = function(b, k) { k && "function" === typeof k.create || console.error("module.create is not callable"); k = k.create(y); k.init(b); return k; }; const t = y.prototype; t.init = function(b) { this.inf = b || {}; return this; }; t.param = function(b) { return this.inf[b] || ""; }; t.key = function() { return this.param("key") || ""; }; t.getId = function() { return this.param("id") || "none"; }; t.getUrl = function() { return this.param("url") || ""; }; t.toString = function() { return this.param("name") || this.getId(); }; t.getSrc = function() { return this.param("src") || "en"; }; t.setSrc = function(b) { this.inf.src = this.mapLang(b, this.getLangMap()); }; t.stderr = function(b) { const k = (r.loco || {}).notices; k && k.error && k.error(String(this) + ": " + String(b)); }; t.xhrError = function(b, k, g) { try { const l = b.responseText, m = l && r.JSON.parse(l); g = m && this.parseError(m) || g; } catch (l) {} return g || this.httpError(b); }; t.httpError = function(b) { return (b = b && b.status) && 200 !== b ? "Responded status " + b : "Unknown error"; }; t.parseError = function(b) { return b && b.error || ""; }; t.mapLang = function(b, k) { const g = String(b).replace("_", "-").toLowerCase(); var l = b.lang; k = k[g] || k[l] || []; b = k.length; if (0 === b) return l; if (1 < b) for (l = -1; ++l < b; ) { const m = k[l]; if (m === g) return m; } return k[0]; }; t.getLangMap = function() { return {}; }; t.maxChr = function() { return 0; }; t.fixURL = function(b) { b = b.split("://", 2); 1 === b.length && b.unshift("https"); return b[0] + "://" + b[1].replace(/\/{2,}/g, "/"); }; t.translate = function(b, k, g) { return this.batch([ b ], k, this.isHtml(b.source), g); }; t.unwind = function(b, k) { const g = [], l = b.length; for (let m = 0; m < l; m++) g.push(b[m][k]); return g; }; t.contextualize = function(b) { return [ b.context || "", b.notes || "" ].join("\n").trim(); }; t.verify = function(b) { return this.translate({ source: "OK", context: "", notes: "" }, { lang: "fr", toString: function() { return "fr"; } }, function(k, g) { b(!!g); }); }; t.hash = function() { return this.key(); }; t._call = function(b) { const k = this; k.state = null; b.cache = !0; b.dataType = "json"; b.error = function(g, l, m) { k.stderr(k.xhrError(g, l, m)); }; return k.abortable(A.ajax(b)); }; t.abortable = function(b) { const k = this; b.always(function() { k.$r === b && (k.$r = null); }); return k.$r = b; }; t.abort = function() { const b = this.$r; b && b.abort(); }; t.isHtml = function(b) { return (e || (e = p())).sniff(b); }; let e; return w; }({}, K, M)); D.register("13", function(w, r, E) { function y(p) { this.api = p; this.chars = 0; } w.create = function(p) { return new y(p); }; r = y.prototype; r.init = function(p, t) { function e(c) { let d = { id: k.length, length: 0, html: c.html, items: [] }; k.push(d); return l[c.html ? 1 : 0] = d; } function b(c, d, h) { var n = c.source(null, h); if (n && (c.untranslated(h) || t)) { { h = c.notes(); const C = c.context(); c = n.length; var v = g.isHtml(n); n = { source: n, context: C, notes: h }; h = l[v ? 1 : 0]; v = h.items; if (f && c > f) x++, c = void 0; else { if (h.length + c > u || 50 === v.length) h = e(h), v = h.items; v.push(n); h.length += c; m += c; q += 1; c = n; } } c && (c.id = d); } } const k = [], g = this.api; let l = [], m = 0, q = 0, x = 0, u = 1e4, f = g.maxChr(); f && (u = Math.min(u, f)); e({ html: !1 }); e({ html: !0 }); const a = p.locale(); p.each(1 < a.nplurals ? function(c, d, h) { b(d, h, 0); b(d, h, 1); } : function(c, d, h) { b(d, h, 0); }); l = []; this.chars = m; this.length = q; this.batches = k; this.locale = a; x && g.stderr("Strings over " + u + " characters long will be skipped"); }; r.abort = function() { this.state = "abort"; return this; }; r.dispatch = function(p) { function t(B, z) { if (!b()) return !1; if (!z) return !0; c++; const F = p.row(B.id), G = B.source; let H = 0; F.each(function(J, O, R) { z !== R && (G === O || 1 < J && F.source(null, 1) === G) && (F.translate(z, J), H++, h++); }); H && q("each", [ F ]); } function e(B) { return function(z, F) { t(B[z], F); return !0; }; } function b() { return "abort" === x.state ? (u && (u.abort(), m()), !1) : !0; } function k() { const B = f.shift(); if (B) { const z = B.items; z && z.length ? u.batch(z, a, B.html, e(z)).fail(g).always(l) : l(); } else m(); } function g() { x.abort(); m(); } function l() { d++; q("prog", [ d, v ]); b() && k(); } function m() { u = f = null; q("done"); } function q(B, z) { B = C[B] || []; let F = B.length; for (;0 <= --F; ) B[F].apply(null, z); } let x = this, u = x.api, f = x.batches || [], a = x.locale, c = 0, d = 0, h = 0, n = x.length, v = f.length, C = { done: [], each: [], prog: [] }; x.state = ""; k(); return { done: function(B) { C.done.push(B); return this; }, each: function(B) { C.each.push(B); return this; }, prog: function(B) { C.prog.push(B); return this; }, stat: function() { return { todo: function() { return Math.max(n - c, 0); }, did: function() { return c; } }; } }; }; return w; }({}, K, M)); D.register("14", function(w, r, E) { function y() {} w.create = function(p) { (y.prototype = new p()).batch = function(t, e, b, k) { function g(x) { let u = -1; for (;++u < m && !1 !== k(u, x[u], e); ); } const l = r.loco, m = t.length; t = { hook: this.getId(), type: b ? "html" : "text", locale: String(e), source: this.getSrc(), sources: t }; const q = A.Deferred(); this.abortable(l.ajax.post("apis", t, function(x) { g(x && x.targets || []); q.resolve(); }, function() { g([]); q.reject(); })); return q.promise(); }; return new y(); }; return w; }({}, K, M)); D.register("24", { bel: [ "be" ], zh: [ "zh", "zh-cn", "zh-tw" ], he: [ "iw" ], jv: [ "jw" ] }); D.register("15", function(w, r, E) { function y() {} w.create = function(p) { p = y.prototype = new p(); p.toString = function() { return "Google Translate"; }; p.parseError = function(t) { if (t.error) { const e = [], b = t.error.errors || [], k = b.length; let g = -1; for (;++g < k; ) e.push(b[g].message || ""); return "Error " + t.error.code + ": " + e.join(";"); } return ""; }; p.getLangMap = function() { return D.require("24"); }; p.batch = function(t, e, b, k) { function g(u) { const f = x.length; let a = -1; for (;++a < f && !1 !== k(a, (u[a] || {}).translatedText || "", e); ); } const l = this, m = l.getSrc(); b = b ? "html" : "text"; const q = l.mapLang(e, l.getLangMap()), x = this.unwind(t, "source"); return l._call({ url: "https://translation.googleapis.com/language/translate/v2?source=" + m + "&target=" + q + "&format=" + b, method: "POST", traditional: !0, data: { key: l.key(), q: x } }).done(function(u, f, a) { u.data ? g(u.data.translations || []) : (l.stderr(l.parseError(u) || l.httpError(a)), g([])); }).fail(function() { g([]); }); }; return new y(); }; return w; }({}, K, M)); D.register("25", { zh: [ "zh", "zh-cn", "zh-tw" ], pt: [ "pt", "pt-pt", "pt-br" ] }); D.register("16", function(w, r, E) { function y() {} w.create = function(p) { p = y.prototype = new p(); p.parseError = function(t) { var e = t.details || {}; let b = e.message; e = e.texts; return b ? (e && e !== b && (b += "; " + e), b = b.replace(/https?:\/\/(?:[a-z]+\.)?lecto.ai[-\w\/?&=%.+~]*/, function(k) { k += -1 === k.indexOf("?") ? "?" : "&"; return k + "ref=loco"; }), "Error " + (t.status || "0") + ": " + b) : ""; }; p.maxChr = function() { return 1e3; }; p.getLangMap = function() { return D.require("25"); }; p.batch = function(t, e, b, k) { function g(u) { const f = x.length; let a = -1, c = (u[0] || { translated: [] }).translated || []; for (;++a < f && (u = c[a] || "", !1 !== k(a, u, e)); ); } const l = this; b = this.getSrc(); const m = l.param("api") || "https://api.lecto.ai", q = l.mapLang(e, l.getLangMap()), x = this.unwind(t, "source"); return l._call({ url: l.fixURL(m + "/v1/translate/text"), method: "POST", data: JSON.stringify({ to: [ q ], from: b, texts: x }), headers: { "Content-Type": "application/json; charset=UTF-8", "X-API-Key": l.key(), Accept: "application/json" } }).done(function(u, f, a) { u ? g(u.translations || []) : (l.stderr(l.parseError(u) || l.httpError(a)), g([])); }).fail(function() { g([]); }); }; return new y(); }; return w; }({}, K, M)); D.register("26", { bel: [ "be" ], nn: [ "no" ], pt: [ "pt", "pt-pt" ], sr: [ "sr", "sr-cyrl", "sr-latn" ], "sr-rs": [ "sr-cyrl" ], tlh: [ "tlh-latn", "tlh-piqd" ], zh: [ "zh-hans", "zh-hant" ], "zh-cn": [ "zh-hans" ], "zh-hk": [ "zh-hans" ], "zh-sg": [ "zh-hans" ], "zh-tw": [ "zh-hant" ] }); D.register("17", function(w, r, E) { function y() {} w.create = function(p) { p = y.prototype = new p(); p.toString = function() { return "Microsoft Translator text API"; }; p.parseError = function(t) { return t && t.error ? t.error.message : ""; }; p.maxChr = function() { return 1e4; }; p.getLangMap = function() { return D.require("26"); }; p.region = function() { return this.param("region") || "global"; }; p.hash = function() { return this.key() + this.region(); }; p.batch = function(t, e, b, k) { function g(a) { let c = -1; for (var d; ++c < x && (d = a[c] || {}, d = d.translations || [], d = d[0] || {}, !1 !== k(c, d.text || "", e)); ); } let l = this, m = [], q = l.getSrc(); t = this.unwind(t, "source"); let x = t.length, u = -1; b = b ? "html" : "plain"; let f = l.mapLang(e, l.getLangMap()); for (;++u < x; ) m.push({ Text: t[u] }); return l._call({ url: "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=" + q + "&to=" + f + "&textType=" + b, method: "POST", data: JSON.stringify(m), headers: { "Content-Type": "application/json; charset=UTF-8", "Ocp-Apim-Subscription-Key": this.key(), "Ocp-Apim-Subscription-Region": l.region() } }).done(function(a, c, d) { a && a.length ? g(a) : (l.stderr(l.parseError(a) || l.httpError(d)), g([])); }).fail(function() { g([]); }); }; return new y(); }; return w; }({}, K, M)); D.register("18", function(w, r, E) { w.init = function(y) { function p() { O || (z.on("click", m), O = A('
    ').dialog({ dialogClass: "request-filesystem-credentials-dialog loco-modal", minWidth: 580, modal: !0, autoOpen: !1, closeOnEscape: !0 }).on("change", 'input[name="connection_type"]', function() { this.checked && A("#ssh-keys").toggleClass("hidden", "ssh" !== A(this).val()); })); return O; } function t() { G && (e(A(a)), G = !1); if (h && J) { var I = J, Q = A(F); Q.find("span.loco-msg").text(I); H || (Q.removeClass("jshide").hide().fadeIn(500), H = !0); } else H && (e(A(F)), H = !1); } function e(I) { I.slideUp(250).fadeOut(250, function() { A(this).addClass("jshide"); }); } function b() { if (h) return O && O.dialog("close"), t(), A(y).find('button[type="submit"]').attr("disabled", !1), A(r).triggerHandler("resize"), f && f(!0), !0; v && O ? (G || (A(a).removeClass("jshide").hide().fadeIn(500), G = !0), H && (e(A(F)), H = !1)) : t(); A(y).find('input[type="submit"]').attr("disabled", !0); f && f(!1); return !1; } function k(I) { var Q, X = R || {}; for (Q in X) if (X.hasOwnProperty(Q)) { var Z = X[Q]; I[Q] ? I[Q].value = Z : A('').attr("name", Q).appendTo(I).val(Z); } } function g(I) { I.preventDefault(); I = A(I.target).serializeArray(); u(I); d = !0; return !1; } function l(I) { I.preventDefault(); O.dialog("close"); return !1; } function m(I) { I.preventDefault(); O.dialog("open").find('input[name="connection_type"]').change(); return !1; } function q(I) { h = I.authed; c = I.method; A(a).find("span.loco-msg").text(I.message || "Something went wrong."); J = I.warning || ""; I.notice && n.notices.info(I.notice); if (h) "direct" !== c && (R = I.creds, k(y), d && I.success && n.notices.success(I.success)), b(); else if (I.reason) n.notices.info(I.reason); else if (I = I.prompt) { var Q = p(); Q.html(I).find("form").on("submit", g); Q.dialog("option", "title", Q.find("h2").remove().text()); Q.find("button.cancel-button").show().on("click", l); Q.find('input[type="submit"]').addClass("button-primary"); b(); A(r).triggerHandler("resize"); } else n.notices.error("Server didn't return credentials, nor a prompt for credentials"); } function x() { b(); } function u(I) { d = !1; n.ajax.setNonce("fsConnect", B).post("fsConnect", I, q, x); return I; } var f, a = y, c = null, d = !1, h = !1, n = r.loco, v = y.path.value, C = y.auth.value, B = y["loco-nonce"].value, z = A(a).find("button.button-primary"), F = E.getElementById(a.id + "-warn"), G = !1, H = !1, J = "", O; n.notices.convert(F).stick(); if (y.connection_type) { var R = {}; R.connection_type = y.connection_type.value; h = !0; } else v && C && u({ path: v, auth: C }); b(); return { applyCreds: function(I) { if (I.nodeType) k(I); else { var Q, X = R || {}; for (Q in X) X.hasOwnProperty(Q) && (I[Q] = X[Q]); } return this; }, setForm: function(I) { y = I; b(); k(I); return this; }, connect: function() { v = y.path.value; C = y.auth.value; u(A(y).serializeArray()); return this; }, listen: function(I) { f = I; h && I(!0); return this; }, authed: function() { return h; } }; }; return w; }({}, K, M)); D.register("27", function(w, r, E) { function y(b, k) { return function(g) { b.apply(g, k); return g; }; } function p(b) { return function(k, g) { k = k && k[b] || 0; g = g && g[b] || 0; return k === g ? 0 : k > g ? 1 : -1; }; } function t(b) { return function(k, g) { return (k && k[b] || "").localeCompare(g && g[b] || ""); }; } function e(b) { return function(k, g) { return -1 * b(k, g); }; } w.sort = function(b, k, g, l) { k = "n" === g ? p(k) : t(k); l && (k = e(k)); return y([].sort, [ k ])(b); }; return w; }({}, K, M)); D.register("19", function(w, r, E) { w.init = function(y) { function p(a) { let c = -1; const d = a.length; for (A("tr", q).remove(); ++c < d; ) q.appendChild(a[c].$); } function t(a) { g = a ? u.find(a, e) : e.slice(0); m && (a = b[m], g = f(g, m, a.type, a.desc)); p(g); } let e = [], b = [], k = 0, g, l, m, q = y.getElementsByTagName("tbody")[0]; var x = y.getElementsByTagName("thead")[0]; let u = D.require("a").init(), f = D.require("27").sort; x && q && (A("th", x).each(function(a, c) { const d = c.getAttribute("data-sort-type"); d && (a = k, A(c).addClass("loco-sort").on("click", function(h) { h.preventDefault(); { h = a; let n = b[h], v = n.type, C = !(n.desc = !n.desc); g = f(g || e.slice(0), h, v, C); p(g); l && l.removeClass("loco-desc loco-asc"); l = A(n.$).addClass(C ? "loco-desc" : "loco-asc").removeClass(C ? "loco-asc" : "loco-desc"); m = h; } return !1; }), b[k] = { $: c, type: d }); c.hasAttribute("colspan") ? k += Number(c.getAttribute("colspan")) : k++; }), A("tr", q).each(function(a, c) { let d, h = [], n = { _: a, $: c }, v = c.getElementsByTagName("td"); for (d in b) { const C = v[d]; (c = C.textContent.replace(/(^\s+|\s+$)/g, "")) && h.push(c); C.hasAttribute("data-sort-value") && (c = C.getAttribute("data-sort-value")); switch (b[d].type) { case "n": c = Number(c); } n[d] = c; } e[a] = n; u.index(a, h); }), y = A('form.loco-filter input[type="text"]', y.parentNode), y.length && (y = y[0], x = A(y.form), 1 < e.length ? D.require("b").listen(y, t) : x.hide(), x.on("submit", function(a) { a.preventDefault(); return !1; }))); }; return w; }({}, K, M)); const T = K.loco || {}, ja = T.conf || { $v: [] }; K = D.require("1").init(); M = ja.wplang; T.version = function(w) { return ja.$v[w || 0] || "0"; }; D.require("2"); D.require("3"); D.require("4"); D.require("5"); T.l10n = K; K.load(ja.wpl10n); M && K.pluraleq(M.pluraleq); T.string = D.require("6"); T.notices = D.require("7").init(K); T.ajax = D.require("8").init(ja).localise(K); T.locale = D.require("9"); T.fulltext = D.require("a"); T.watchtext = D.require("b").listen; T.tooltip = D.require("c"); T.po = { ed: D.require("d"), kbd: D.require("e"), init: D.require("f").create, ace: D.require("10").strf("php"), ref: D.require("11") }; T.apis = D.require("12"); T.apis.createJob = D.require("13").create; T.apis.providers = function() { return { _: D.require("14"), google: D.require("15"), lecto: D.require("16"), microsoft: D.require("17") }; }; T.fs = D.require("18"); A("#loco-admin.wrap table.wp-list-table").each(function(w, r) { D.require("19").init(r); }); T.validate = function(w) { w = (w = /^\d+\.\d+\.\d+/.exec(w && w[0] || "")) && w[0]; if ("2.8.3" === w) return !0; T.notices.warn("admin.js is the wrong version (" + w + "). Please empty all relevant caches and reload this page."); return !1; }; })(window, document, window.jQuery);