UNPKG

directus-extension-seo

Version:

Directus SEO Extension enhance Directus with powerful SEO scoring and validator and AI SEO from ChatGPT

1,885 lines 435 kB
var tr = Object.defineProperty; var sr = (e, t, s) => t in e ? tr(e, t, { enumerable: !0, configurable: !0, writable: !0, value: s }) : e[t] = s; var mt = (e, t, s) => (sr(e, typeof t != "symbol" ? t + "" : t, s), s); class A { constructor() { this.setConfig(); } /** * Executes the assessment and return its result * * @abstract * * @param {Paper} paper The paper to run this assessment on. * @param {Researcher} researcher The researcher used for the assessment. * @param {Jed} i18n The i18n-object used for parsing translations. * * @return {AnalysisResult} an AnalysisResult with the score and the formatted text. */ getResult(t, s, n) { throw new Error("The method getResult is not implemented"); } /** * Get analysis max score. * * @return {number} Max score an analysis has */ getScore() { return 0; } /** * Check whether thr assessment is applicable * * @param {Paper} paper The paper to use for the assessment. * * @return {boolean} Return wethere this analysis is applicable on paper or not. */ isApplicable(t) { return !0; } setConfig(t = {}) { this.configs = t; } } var ue = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {}; function nr(e) { return e === void 0; } var R = nr, ir = typeof ue == "object" && ue && ue.Object === Object && ue, wn = ir, rr = wn, or = typeof self == "object" && self && self.Object === Object && self, ar = rr || or || Function("return this")(), Y = ar, cr = Y, ur = cr.Symbol, Re = ur, rs = Re, kn = Object.prototype, lr = kn.hasOwnProperty, dr = kn.toString, $e = rs ? rs.toStringTag : void 0; function pr(e) { var t = lr.call(e, $e), s = e[$e]; try { e[$e] = void 0; var n = !0; } catch { } var i = dr.call(e); return n && (t ? e[$e] = s : delete e[$e]), i; } var gr = pr, hr = Object.prototype, fr = hr.toString; function mr(e) { return fr.call(e); } var yr = mr, os = Re, br = gr, vr = yr, Dr = "[object Null]", wr = "[object Undefined]", as = os ? os.toStringTag : void 0; function kr(e) { return e == null ? e === void 0 ? wr : Dr : as && as in Object(e) ? br(e) : vr(e); } var de = kr; function Fr(e) { return e != null && typeof e == "object"; } var ee = Fr, Ar = de, Cr = ee, _r = "[object Number]"; function Er(e) { return typeof e == "number" || Cr(e) && Ar(e) == _r; } var cs = Er; class C { /** * Class constructor. */ constructor() { return this.has = !1, this.score = 0, this.maxScore = 0, this.text = "", this.empty = "", this.tooltip = "", this; } /** * Check if a score is available. * * @return {boolean} Has score or not. */ hasScore() { return this.has; } /** * Get the available score. * * @return {number} Result score. */ getScore() { return this.score; } /** * Set the score for the assessment. * * @param {number} score The score to set for analysis * * @return {AnalysisResult} Class instance for chaining. */ setScore(t) { return cs(t) && (this.score = t, this.has = 0 < t), this; } /** * Set the maximum score for the assessment. * * @param {number} score The maximum score to set for analysis * * @return {AnalysisResult} Class instance for chaining. */ setMaxScore(t) { return cs(t) && (this.maxScore = t), this; } /** * Get the maximum score. * * @return {number} Result maximum score. */ getMaxScore() { return this.maxScore; } /** * Check if a text is available. * * @return {boolean} Whether or not a text is available. */ hasText() { return this.text !== ""; } /** * Get the available text. * * @return {string} Return text message. */ getText() { return this.hasText() ? this.text : this.empty; } /** * Set the text for the analysis. * * @param {string} text The text to be used for the text property * * @return {AnalysisResult} Class instance for chaining. */ setText(t) { return this.text = R(t) ? "" : t, this; } /** * Set the empty for the analysis. * * @param {string} empty The empty to be used for the empty property * * @return {AnalysisResult} Class instance for chaining. */ setEmpty(t) { return this.empty = R(t) ? "" : t, this; } /** * Check if a tooltip is available. * * @return {boolean} Whether or not a tooltip is available. */ hasTooltip() { return this.tooltip !== ""; } /** * Get the available tooltip. * * @return {string} Result tooltip. */ getTooltip() { return this.tooltip; } /** * Set the tooltip for the analysis. * * @param {string} tooltip The tooltip to be used for the tooltip property * * @return {AnalysisResult} Class instance for chaining. */ setTooltip(t) { return this.tooltip = R(t) ? "" : t, this; } } var xr = Object.prototype, Sr = xr.hasOwnProperty; function $r(e, t) { return e != null && Sr.call(e, t); } var Br = $r, zr = Array.isArray, I = zr, Tr = de, Rr = ee, Pr = "[object Symbol]"; function jr(e) { return typeof e == "symbol" || Rr(e) && Tr(e) == Pr; } var st = jr, Ir = I, Or = st, Lr = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, Mr = /^\w*$/; function qr(e, t) { if (Ir(e)) return !1; var s = typeof e; return s == "number" || s == "symbol" || s == "boolean" || e == null || Or(e) ? !0 : Mr.test(e) || !Lr.test(e) || t != null && e in Object(t); } var Pt = qr; function Nr(e) { var t = typeof e; return e != null && (t == "object" || t == "function"); } var te = Nr, Kr = de, Wr = te, Ur = "[object AsyncFunction]", Hr = "[object Function]", Gr = "[object GeneratorFunction]", Vr = "[object Proxy]"; function Yr(e) { if (!Wr(e)) return !1; var t = Kr(e); return t == Hr || t == Gr || t == Ur || t == Vr; } var Fn = Yr, Zr = Y, Jr = Zr["__core-js_shared__"], Xr = Jr, yt = Xr, us = function() { var e = /[^.]+$/.exec(yt && yt.keys && yt.keys.IE_PROTO || ""); return e ? "Symbol(src)_1." + e : ""; }(); function Qr(e) { return !!us && us in e; } var eo = Qr, to = Function.prototype, so = to.toString; function no(e) { if (e != null) { try { return so.call(e); } catch { } try { return e + ""; } catch { } } return ""; } var An = no, io = Fn, ro = eo, oo = te, ao = An, co = /[\\^$.*+?()[\]{}|]/g, uo = /^\[object .+?Constructor\]$/, lo = Function.prototype, po = Object.prototype, go = lo.toString, ho = po.hasOwnProperty, fo = RegExp( "^" + go.call(ho).replace(co, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" ); function mo(e) { if (!oo(e) || ro(e)) return !1; var t = io(e) ? fo : uo; return t.test(ao(e)); } var yo = mo; function bo(e, t) { return e == null ? void 0 : e[t]; } var vo = bo, Do = yo, wo = vo; function ko(e, t) { var s = wo(e, t); return Do(s) ? s : void 0; } var pe = ko, Fo = pe, Ao = Fo(Object, "create"), nt = Ao, ls = nt; function Co() { this.__data__ = ls ? ls(null) : {}, this.size = 0; } var _o = Co; function Eo(e) { var t = this.has(e) && delete this.__data__[e]; return this.size -= t ? 1 : 0, t; } var xo = Eo, So = nt, $o = "__lodash_hash_undefined__", Bo = Object.prototype, zo = Bo.hasOwnProperty; function To(e) { var t = this.__data__; if (So) { var s = t[e]; return s === $o ? void 0 : s; } return zo.call(t, e) ? t[e] : void 0; } var Ro = To, Po = nt, jo = Object.prototype, Io = jo.hasOwnProperty; function Oo(e) { var t = this.__data__; return Po ? t[e] !== void 0 : Io.call(t, e); } var Lo = Oo, Mo = nt, qo = "__lodash_hash_undefined__"; function No(e, t) { var s = this.__data__; return this.size += this.has(e) ? 0 : 1, s[e] = Mo && t === void 0 ? qo : t, this; } var Ko = No, Wo = _o, Uo = xo, Ho = Ro, Go = Lo, Vo = Ko; function Ae(e) { var t = -1, s = e == null ? 0 : e.length; for (this.clear(); ++t < s; ) { var n = e[t]; this.set(n[0], n[1]); } } Ae.prototype.clear = Wo; Ae.prototype.delete = Uo; Ae.prototype.get = Ho; Ae.prototype.has = Go; Ae.prototype.set = Vo; var Yo = Ae; function Zo() { this.__data__ = [], this.size = 0; } var Jo = Zo; function Xo(e, t) { return e === t || e !== e && t !== t; } var Pe = Xo, Qo = Pe; function ea(e, t) { for (var s = e.length; s--; ) if (Qo(e[s][0], t)) return s; return -1; } var it = ea, ta = it, sa = Array.prototype, na = sa.splice; function ia(e) { var t = this.__data__, s = ta(t, e); if (s < 0) return !1; var n = t.length - 1; return s == n ? t.pop() : na.call(t, s, 1), --this.size, !0; } var ra = ia, oa = it; function aa(e) { var t = this.__data__, s = oa(t, e); return s < 0 ? void 0 : t[s][1]; } var ca = aa, ua = it; function la(e) { return ua(this.__data__, e) > -1; } var da = la, pa = it; function ga(e, t) { var s = this.__data__, n = pa(s, e); return n < 0 ? (++this.size, s.push([e, t])) : s[n][1] = t, this; } var ha = ga, fa = Jo, ma = ra, ya = ca, ba = da, va = ha; function Ce(e) { var t = -1, s = e == null ? 0 : e.length; for (this.clear(); ++t < s; ) { var n = e[t]; this.set(n[0], n[1]); } } Ce.prototype.clear = fa; Ce.prototype.delete = ma; Ce.prototype.get = ya; Ce.prototype.has = ba; Ce.prototype.set = va; var rt = Ce, Da = pe, wa = Y, ka = Da(wa, "Map"), jt = ka, ds = Yo, Fa = rt, Aa = jt; function Ca() { this.size = 0, this.__data__ = { hash: new ds(), map: new (Aa || Fa)(), string: new ds() }; } var _a = Ca; function Ea(e) { var t = typeof e; return t == "string" || t == "number" || t == "symbol" || t == "boolean" ? e !== "__proto__" : e === null; } var xa = Ea, Sa = xa; function $a(e, t) { var s = e.__data__; return Sa(t) ? s[typeof t == "string" ? "string" : "hash"] : s.map; } var ot = $a, Ba = ot; function za(e) { var t = Ba(this, e).delete(e); return this.size -= t ? 1 : 0, t; } var Ta = za, Ra = ot; function Pa(e) { return Ra(this, e).get(e); } var ja = Pa, Ia = ot; function Oa(e) { return Ia(this, e).has(e); } var La = Oa, Ma = ot; function qa(e, t) { var s = Ma(this, e), n = s.size; return s.set(e, t), this.size += s.size == n ? 0 : 1, this; } var Na = qa, Ka = _a, Wa = Ta, Ua = ja, Ha = La, Ga = Na; function _e(e) { var t = -1, s = e == null ? 0 : e.length; for (this.clear(); ++t < s; ) { var n = e[t]; this.set(n[0], n[1]); } } _e.prototype.clear = Ka; _e.prototype.delete = Wa; _e.prototype.get = Ua; _e.prototype.has = Ha; _e.prototype.set = Ga; var It = _e, Cn = It, Va = "Expected a function"; function Ot(e, t) { if (typeof e != "function" || t != null && typeof t != "function") throw new TypeError(Va); var s = function() { var n = arguments, i = t ? t.apply(this, n) : n[0], r = s.cache; if (r.has(i)) return r.get(i); var o = e.apply(this, n); return s.cache = r.set(i, o) || r, o; }; return s.cache = new (Ot.Cache || Cn)(), s; } Ot.Cache = Cn; var Ya = Ot, Za = Ya, Ja = 500; function Xa(e) { var t = Za(e, function(n) { return s.size === Ja && s.clear(), n; }), s = t.cache; return t; } var Qa = Xa, ec = Qa, tc = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g, sc = /\\(\\)?/g, nc = ec(function(e) { var t = []; return e.charCodeAt(0) === 46 && t.push(""), e.replace(tc, function(s, n, i, r) { t.push(i ? r.replace(sc, "$1") : n || s); }), t; }), ic = nc; function rc(e, t) { for (var s = -1, n = e == null ? 0 : e.length, i = Array(n); ++s < n; ) i[s] = t(e[s], s, e); return i; } var Lt = rc, ps = Re, oc = Lt, ac = I, cc = st, uc = 1 / 0, gs = ps ? ps.prototype : void 0, hs = gs ? gs.toString : void 0; function _n(e) { if (typeof e == "string") return e; if (ac(e)) return oc(e, _n) + ""; if (cc(e)) return hs ? hs.call(e) : ""; var t = e + ""; return t == "0" && 1 / e == -uc ? "-0" : t; } var En = _n, lc = En; function dc(e) { return e == null ? "" : lc(e); } var ge = dc, pc = I, gc = Pt, hc = ic, fc = ge; function mc(e, t) { return pc(e) ? e : gc(e, t) ? [e] : hc(fc(e)); } var at = mc, yc = de, bc = ee, vc = "[object Arguments]"; function Dc(e) { return bc(e) && yc(e) == vc; } var wc = Dc, fs = wc, kc = ee, xn = Object.prototype, Fc = xn.hasOwnProperty, Ac = xn.propertyIsEnumerable, Cc = fs(function() { return arguments; }()) ? fs : function(e) { return kc(e) && Fc.call(e, "callee") && !Ac.call(e, "callee"); }, ct = Cc, _c = 9007199254740991, Ec = /^(?:0|[1-9]\d*)$/; function xc(e, t) { var s = typeof e; return t = t ?? _c, !!t && (s == "number" || s != "symbol" && Ec.test(e)) && e > -1 && e % 1 == 0 && e < t; } var ut = xc, Sc = 9007199254740991; function $c(e) { return typeof e == "number" && e > -1 && e % 1 == 0 && e <= Sc; } var Mt = $c, Bc = st, zc = 1 / 0; function Tc(e) { if (typeof e == "string" || Bc(e)) return e; var t = e + ""; return t == "0" && 1 / e == -zc ? "-0" : t; } var je = Tc, Rc = at, Pc = ct, jc = I, Ic = ut, Oc = Mt, Lc = je; function Mc(e, t, s) { t = Rc(t, e); for (var n = -1, i = t.length, r = !1; ++n < i; ) { var o = Lc(t[n]); if (!(r = e != null && s(e, o))) break; e = e[o]; } return r || ++n != i ? r : (i = e == null ? 0 : e.length, !!i && Oc(i) && Ic(o, i) && (jc(e) || Pc(e))); } var Sn = Mc, qc = Br, Nc = Sn; function Kc(e, t) { return e != null && Nc(e, t, qc); } var le = Kc; function Wc(e, t) { for (var s = -1, n = e == null ? 0 : e.length; ++s < n && t(e[s], s, e) !== !1; ) ; return e; } var Uc = Wc; function Hc(e) { return function(t, s, n) { for (var i = -1, r = Object(t), o = n(t), a = o.length; a--; ) { var c = o[e ? a : ++i]; if (s(r[c], c, r) === !1) break; } return t; }; } var Gc = Hc, Vc = Gc, Yc = Vc(), Zc = Yc; function Jc(e, t) { for (var s = -1, n = Array(e); ++s < e; ) n[s] = t(s); return n; } var Xc = Jc, Fe = {}, Qc = { get exports() { return Fe; }, set exports(e) { Fe = e; } }; function eu() { return !1; } var tu = eu; (function(e, t) { var s = Y, n = tu, i = t && !t.nodeType && t, r = i && !0 && e && !e.nodeType && e, o = r && r.exports === i, a = o ? s.Buffer : void 0, c = a ? a.isBuffer : void 0, u = c || n; e.exports = u; })(Qc, Fe); var su = de, nu = Mt, iu = ee, ru = "[object Arguments]", ou = "[object Array]", au = "[object Boolean]", cu = "[object Date]", uu = "[object Error]", lu = "[object Function]", du = "[object Map]", pu = "[object Number]", gu = "[object Object]", hu = "[object RegExp]", fu = "[object Set]", mu = "[object String]", yu = "[object WeakMap]", bu = "[object ArrayBuffer]", vu = "[object DataView]", Du = "[object Float32Array]", wu = "[object Float64Array]", ku = "[object Int8Array]", Fu = "[object Int16Array]", Au = "[object Int32Array]", Cu = "[object Uint8Array]", _u = "[object Uint8ClampedArray]", Eu = "[object Uint16Array]", xu = "[object Uint32Array]", F = {}; F[Du] = F[wu] = F[ku] = F[Fu] = F[Au] = F[Cu] = F[_u] = F[Eu] = F[xu] = !0; F[ru] = F[ou] = F[bu] = F[au] = F[vu] = F[cu] = F[uu] = F[lu] = F[du] = F[pu] = F[gu] = F[hu] = F[fu] = F[mu] = F[yu] = !1; function Su(e) { return iu(e) && nu(e.length) && !!F[su(e)]; } var $u = Su; function Bu(e) { return function(t) { return e(t); }; } var zu = Bu, Ze = {}, Tu = { get exports() { return Ze; }, set exports(e) { Ze = e; } }; (function(e, t) { var s = wn, n = t && !t.nodeType && t, i = n && !0 && e && !e.nodeType && e, r = i && i.exports === n, o = r && s.process, a = function() { try { var c = i && i.require && i.require("util").types; return c || o && o.binding && o.binding("util"); } catch { } }(); e.exports = a; })(Tu, Ze); var Ru = $u, Pu = zu, ms = Ze, ys = ms && ms.isTypedArray, ju = ys ? Pu(ys) : Ru, qt = ju, Iu = Xc, Ou = ct, Lu = I, Mu = Fe, qu = ut, Nu = qt, Ku = Object.prototype, Wu = Ku.hasOwnProperty; function Uu(e, t) { var s = Lu(e), n = !s && Ou(e), i = !s && !n && Mu(e), r = !s && !n && !i && Nu(e), o = s || n || i || r, a = o ? Iu(e.length, String) : [], c = a.length; for (var u in e) (t || Wu.call(e, u)) && !(o && // Safari 9 has enumerable `arguments.length` in strict mode. (u == "length" || // Node.js 0.10 has enumerable non-index properties on buffers. i && (u == "offset" || u == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays. r && (u == "buffer" || u == "byteLength" || u == "byteOffset") || // Skip index properties. qu(u, c))) && a.push(u); return a; } var $n = Uu, Hu = Object.prototype; function Gu(e) { var t = e && e.constructor, s = typeof t == "function" && t.prototype || Hu; return e === s; } var Nt = Gu; function Vu(e, t) { return function(s) { return e(t(s)); }; } var Yu = Vu, Zu = Yu, Ju = Zu(Object.keys, Object), Xu = Ju, Qu = Nt, el = Xu, tl = Object.prototype, sl = tl.hasOwnProperty; function nl(e) { if (!Qu(e)) return el(e); var t = []; for (var s in Object(e)) sl.call(e, s) && s != "constructor" && t.push(s); return t; } var Bn = nl, il = Fn, rl = Mt; function ol(e) { return e != null && rl(e.length) && !il(e); } var he = ol, al = $n, cl = Bn, ul = he; function ll(e) { return ul(e) ? al(e) : cl(e); } var lt = ll, dl = Zc, pl = lt; function gl(e, t) { return e && dl(e, t, pl); } var hl = gl, fl = he; function ml(e, t) { return function(s, n) { if (s == null) return s; if (!fl(s)) return e(s, n); for (var i = s.length, r = t ? i : -1, o = Object(s); (t ? r-- : ++r < i) && n(o[r], r, o) !== !1; ) ; return s; }; } var yl = ml, bl = hl, vl = yl, Dl = vl(bl), Kt = Dl; function wl(e) { return e; } var Ie = wl, kl = Ie; function Fl(e) { return typeof e == "function" ? e : kl; } var Al = Fl, Cl = Uc, _l = Kt, El = Al, xl = I; function Sl(e, t) { var s = xl(e) ? Cl : _l; return s(e, El(t)); } var Oe = Sl, $l = at, Bl = je; function zl(e, t) { t = $l(t, e); for (var s = 0, n = t.length; e != null && s < n; ) e = e[Bl(t[s++])]; return s && s == n ? e : void 0; } var Wt = zl, Tl = pe, Rl = function() { try { var e = Tl(Object, "defineProperty"); return e({}, "", {}), e; } catch { } }(), zn = Rl, bs = zn; function Pl(e, t, s) { t == "__proto__" && bs ? bs(e, t, { configurable: !0, enumerable: !0, value: s, writable: !0 }) : e[t] = s; } var jl = Pl, Il = jl, Ol = Pe, Ll = Object.prototype, Ml = Ll.hasOwnProperty; function ql(e, t, s) { var n = e[t]; (!(Ml.call(e, t) && Ol(n, s)) || s === void 0 && !(t in e)) && Il(e, t, s); } var Nl = ql, Kl = Nl, Wl = at, Ul = ut, vs = te, Hl = je; function Gl(e, t, s, n) { if (!vs(e)) return e; t = Wl(t, e); for (var i = -1, r = t.length, o = r - 1, a = e; a != null && ++i < r; ) { var c = Hl(t[i]), u = s; if (c === "__proto__" || c === "constructor" || c === "prototype") return e; if (i != o) { var l = a[c]; u = n ? n(l, c, a) : void 0, u === void 0 && (u = vs(l) ? l : Ul(t[i + 1]) ? [] : {}); } Kl(a, c, u), a = a[c]; } return e; } var Vl = Gl, Yl = Wt, Zl = Vl, Jl = at; function Xl(e, t, s) { for (var n = -1, i = t.length, r = {}; ++n < i; ) { var o = t[n], a = Yl(e, o); s(a, o) && Zl(r, Jl(o, e), a); } return r; } var Ql = Xl; function ed(e, t) { return e != null && t in Object(e); } var td = ed, sd = td, nd = Sn; function id(e, t) { return e != null && nd(e, t, sd); } var Tn = id, rd = Ql, od = Tn; function ad(e, t) { return rd(e, t, function(s, n) { return od(e, n); }); } var cd = ad; function ud(e, t) { for (var s = -1, n = t.length, i = e.length; ++s < n; ) e[i + s] = t[s]; return e; } var Rn = ud, Ds = Re, ld = ct, dd = I, ws = Ds ? Ds.isConcatSpreadable : void 0; function pd(e) { return dd(e) || ld(e) || !!(ws && e && e[ws]); } var gd = pd, hd = Rn, fd = gd; function Pn(e, t, s, n, i) { var r = -1, o = e.length; for (s || (s = fd), i || (i = []); ++r < o; ) { var a = e[r]; t > 0 && s(a) ? t > 1 ? Pn(a, t - 1, s, n, i) : hd(i, a) : n || (i[i.length] = a); } return i; } var md = Pn, yd = md; function bd(e) { var t = e == null ? 0 : e.length; return t ? yd(e, 1) : []; } var vd = bd; function Dd(e, t, s) { switch (s.length) { case 0: return e.call(t); case 1: return e.call(t, s[0]); case 2: return e.call(t, s[0], s[1]); case 3: return e.call(t, s[0], s[1], s[2]); } return e.apply(t, s); } var wd = Dd, kd = wd, ks = Math.max; function Fd(e, t, s) { return t = ks(t === void 0 ? e.length - 1 : t, 0), function() { for (var n = arguments, i = -1, r = ks(n.length - t, 0), o = Array(r); ++i < r; ) o[i] = n[t + i]; i = -1; for (var a = Array(t + 1); ++i < t; ) a[i] = n[i]; return a[t] = s(o), kd(e, this, a); }; } var jn = Fd; function Ad(e) { return function() { return e; }; } var Cd = Ad, _d = Cd, Fs = zn, Ed = Ie, xd = Fs ? function(e, t) { return Fs(e, "toString", { configurable: !0, enumerable: !1, value: _d(t), writable: !0 }); } : Ed, Sd = xd, $d = 800, Bd = 16, zd = Date.now; function Td(e) { var t = 0, s = 0; return function() { var n = zd(), i = Bd - (n - s); if (s = n, i > 0) { if (++t >= $d) return arguments[0]; } else t = 0; return e.apply(void 0, arguments); }; } var Rd = Td, Pd = Sd, jd = Rd, Id = jd(Pd), In = Id, Od = vd, Ld = jn, Md = In; function qd(e) { return Md(Ld(e, void 0, Od), e + ""); } var On = qd, Nd = cd, Kd = On, Wd = Kd(function(e, t) { return e == null ? {} : Nd(e, t); }), As = Wd, Ud = pe, Hd = Y, Gd = Ud(Hd, "DataView"), Vd = Gd, Yd = pe, Zd = Y, Jd = Yd(Zd, "Promise"), Xd = Jd, Qd = pe, e1 = Y, t1 = Qd(e1, "Set"), Ln = t1, s1 = pe, n1 = Y, i1 = s1(n1, "WeakMap"), Mn = i1, kt = Vd, Ft = jt, At = Xd, Ct = Ln, _t = Mn, qn = de, Ee = An, Cs = "[object Map]", r1 = "[object Object]", _s = "[object Promise]", Es = "[object Set]", xs = "[object WeakMap]", Ss = "[object DataView]", o1 = Ee(kt), a1 = Ee(Ft), c1 = Ee(At), u1 = Ee(Ct), l1 = Ee(_t), ae = qn; (kt && ae(new kt(new ArrayBuffer(1))) != Ss || Ft && ae(new Ft()) != Cs || At && ae(At.resolve()) != _s || Ct && ae(new Ct()) != Es || _t && ae(new _t()) != xs) && (ae = function(e) { var t = qn(e), s = t == r1 ? e.constructor : void 0, n = s ? Ee(s) : ""; if (n) switch (n) { case o1: return Ss; case a1: return Cs; case c1: return _s; case u1: return Es; case l1: return xs; } return t; }); var Nn = ae, d1 = Bn, p1 = Nn, g1 = ct, h1 = I, f1 = he, m1 = Fe, y1 = Nt, b1 = qt, v1 = "[object Map]", D1 = "[object Set]", w1 = Object.prototype, k1 = w1.hasOwnProperty; function F1(e) { if (e == null) return !0; if (f1(e) && (h1(e) || typeof e == "string" || typeof e.splice == "function" || m1(e) || b1(e) || g1(e))) return !e.length; var t = p1(e); if (t == v1 || t == D1) return !e.size; if (y1(e)) return !d1(e).length; for (var s in e) if (k1.call(e, s)) return !1; return !0; } var ze = F1; function A1(e) { return function(t) { return e == null ? void 0 : e[t]; }; } var C1 = A1, _1 = C1, E1 = { // Latin-1 Supplement block. À: "A", Á: "A", Â: "A", Ã: "A", Ä: "A", Å: "A", à: "a", á: "a", â: "a", ã: "a", ä: "a", å: "a", Ç: "C", ç: "c", Ð: "D", ð: "d", È: "E", É: "E", Ê: "E", Ë: "E", è: "e", é: "e", ê: "e", ë: "e", Ì: "I", Í: "I", Î: "I", Ï: "I", ì: "i", í: "i", î: "i", ï: "i", Ñ: "N", ñ: "n", Ò: "O", Ó: "O", Ô: "O", Õ: "O", Ö: "O", Ø: "O", ò: "o", ó: "o", ô: "o", õ: "o", ö: "o", ø: "o", Ù: "U", Ú: "U", Û: "U", Ü: "U", ù: "u", ú: "u", û: "u", ü: "u", Ý: "Y", ý: "y", ÿ: "y", Æ: "Ae", æ: "ae", Þ: "Th", þ: "th", ß: "ss", // Latin Extended-A block. Ā: "A", Ă: "A", Ą: "A", ā: "a", ă: "a", ą: "a", Ć: "C", Ĉ: "C", Ċ: "C", Č: "C", ć: "c", ĉ: "c", ċ: "c", č: "c", Ď: "D", Đ: "D", ď: "d", đ: "d", Ē: "E", Ĕ: "E", Ė: "E", Ę: "E", Ě: "E", ē: "e", ĕ: "e", ė: "e", ę: "e", ě: "e", Ĝ: "G", Ğ: "G", Ġ: "G", Ģ: "G", ĝ: "g", ğ: "g", ġ: "g", ģ: "g", Ĥ: "H", Ħ: "H", ĥ: "h", ħ: "h", Ĩ: "I", Ī: "I", Ĭ: "I", Į: "I", İ: "I", ĩ: "i", ī: "i", ĭ: "i", į: "i", ı: "i", Ĵ: "J", ĵ: "j", Ķ: "K", ķ: "k", ĸ: "k", Ĺ: "L", Ļ: "L", Ľ: "L", Ŀ: "L", Ł: "L", ĺ: "l", ļ: "l", ľ: "l", ŀ: "l", ł: "l", Ń: "N", Ņ: "N", Ň: "N", Ŋ: "N", ń: "n", ņ: "n", ň: "n", ŋ: "n", Ō: "O", Ŏ: "O", Ő: "O", ō: "o", ŏ: "o", ő: "o", Ŕ: "R", Ŗ: "R", Ř: "R", ŕ: "r", ŗ: "r", ř: "r", Ś: "S", Ŝ: "S", Ş: "S", Š: "S", ś: "s", ŝ: "s", ş: "s", š: "s", Ţ: "T", Ť: "T", Ŧ: "T", ţ: "t", ť: "t", ŧ: "t", Ũ: "U", Ū: "U", Ŭ: "U", Ů: "U", Ű: "U", Ų: "U", ũ: "u", ū: "u", ŭ: "u", ů: "u", ű: "u", ų: "u", Ŵ: "W", ŵ: "w", Ŷ: "Y", ŷ: "y", Ÿ: "Y", Ź: "Z", Ż: "Z", Ž: "Z", ź: "z", ż: "z", ž: "z", IJ: "IJ", ij: "ij", Œ: "Oe", œ: "oe", ʼn: "'n", ſ: "s" }, x1 = _1(E1), S1 = x1, $1 = S1, B1 = ge, z1 = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g, T1 = "\\u0300-\\u036f", R1 = "\\ufe20-\\ufe2f", P1 = "\\u20d0-\\u20ff", j1 = T1 + R1 + P1, I1 = "[" + j1 + "]", O1 = RegExp(I1, "g"); function L1(e) { return e = B1(e), e && e.replace(z1, $1).replace(O1, ""); } var Kn = L1, M1 = ge; function q1(e) { return M1(e).toLowerCase(); } var N1 = q1, K1 = /\s/; function W1(e) { for (var t = e.length; t-- && K1.test(e.charAt(t)); ) ; return t; } var U1 = W1, H1 = U1, G1 = /^\s+/; function V1(e) { return e && e.slice(0, H1(e) + 1).replace(G1, ""); } var Wn = V1; function Y1(e, t, s) { var n = -1, i = e.length; t < 0 && (t = -t > i ? 0 : i + t), s = s > i ? i : s, s < 0 && (s += i), i = t > s ? 0 : s - t >>> 0, t >>>= 0; for (var r = Array(i); ++n < i; ) r[n] = e[n + t]; return r; } var Z1 = Y1, J1 = Z1; function X1(e, t, s) { var n = e.length; return s = s === void 0 ? n : s, !t && s >= n ? e : J1(e, t, s); } var Un = X1; function Q1(e, t, s, n) { for (var i = e.length, r = s + (n ? 1 : -1); n ? r-- : ++r < i; ) if (t(e[r], r, e)) return r; return -1; } var ep = Q1; function tp(e) { return e !== e; } var sp = tp; function np(e, t, s) { for (var n = s - 1, i = e.length; ++n < i; ) if (e[n] === t) return n; return -1; } var ip = np, rp = ep, op = sp, ap = ip; function cp(e, t, s) { return t === t ? ap(e, t, s) : rp(e, op, s); } var Le = cp, up = Le; function lp(e, t) { for (var s = e.length; s-- && up(t, e[s], 0) > -1; ) ; return s; } var dp = lp, pp = Le; function gp(e, t) { for (var s = -1, n = e.length; ++s < n && pp(t, e[s], 0) > -1; ) ; return s; } var hp = gp; function fp(e) { return e.split(""); } var mp = fp, yp = "\\ud800-\\udfff", bp = "\\u0300-\\u036f", vp = "\\ufe20-\\ufe2f", Dp = "\\u20d0-\\u20ff", wp = bp + vp + Dp, kp = "\\ufe0e\\ufe0f", Fp = "\\u200d", Ap = RegExp("[" + Fp + yp + wp + kp + "]"); function Cp(e) { return Ap.test(e); } var Hn = Cp, Gn = "\\ud800-\\udfff", _p = "\\u0300-\\u036f", Ep = "\\ufe20-\\ufe2f", xp = "\\u20d0-\\u20ff", Sp = _p + Ep + xp, $p = "\\ufe0e\\ufe0f", Bp = "[" + Gn + "]", Et = "[" + Sp + "]", xt = "\\ud83c[\\udffb-\\udfff]", zp = "(?:" + Et + "|" + xt + ")", Vn = "[^" + Gn + "]", Yn = "(?:\\ud83c[\\udde6-\\uddff]){2}", Zn = "[\\ud800-\\udbff][\\udc00-\\udfff]", Tp = "\\u200d", Jn = zp + "?", Xn = "[" + $p + "]?", Rp = "(?:" + Tp + "(?:" + [Vn, Yn, Zn].join("|") + ")" + Xn + Jn + ")*", Pp = Xn + Jn + Rp, jp = "(?:" + [Vn + Et + "?", Et, Yn, Zn, Bp].join("|") + ")", Ip = RegExp(xt + "(?=" + xt + ")|" + jp + Pp, "g"); function Op(e) { return e.match(Ip) || []; } var Lp = Op, Mp = mp, qp = Hn, Np = Lp; function Kp(e) { return qp(e) ? Np(e) : Mp(e); } var Qn = Kp, Wp = En, Up = Wn, Hp = Un, Gp = dp, Vp = hp, $s = Qn, Yp = ge; function Zp(e, t, s) { if (e = Yp(e), e && (s || t === void 0)) return Up(e); if (!e || !(t = Wp(t))) return e; var n = $s(e), i = $s(t), r = Vp(n, i), o = Gp(n, i) + 1; return Hp(n, r, o).join(""); } var Jp = Zp; const Xp = (e) => e ? N1( Kn(Jp(e.replace(/[\s\./_]+/g, "-"), "-")) ) : ""; function Qp(e, t) { for (var s = -1, n = e == null ? 0 : e.length, i = 0, r = []; ++s < n; ) { var o = e[s]; t(o, s, e) && (r[i++] = o); } return r; } var ei = Qp, eg = Kt; function tg(e, t) { var s = []; return eg(e, function(n, i, r) { t(n, i, r) && s.push(n); }), s; } var sg = tg, ng = rt; function ig() { this.__data__ = new ng(), this.size = 0; } var rg = ig; function og(e) { var t = this.__data__, s = t.delete(e); return this.size = t.size, s; } var ag = og; function cg(e) { return this.__data__.get(e); } var ug = cg; function lg(e) { return this.__data__.has(e); } var dg = lg, pg = rt, gg = jt, hg = It, fg = 200; function mg(e, t) { var s = this.__data__; if (s instanceof pg) { var n = s.__data__; if (!gg || n.length < fg - 1) return n.push([e, t]), this.size = ++s.size, this; s = this.__data__ = new hg(n); } return s.set(e, t), this.size = s.size, this; } var yg = mg, bg = rt, vg = rg, Dg = ag, wg = ug, kg = dg, Fg = yg; function xe(e) { var t = this.__data__ = new bg(e); this.size = t.size; } xe.prototype.clear = vg; xe.prototype.delete = Dg; xe.prototype.get = wg; xe.prototype.has = kg; xe.prototype.set = Fg; var ti = xe, Ag = "__lodash_hash_undefined__"; function Cg(e) { return this.__data__.set(e, Ag), this; } var _g = Cg; function Eg(e) { return this.__data__.has(e); } var xg = Eg, Sg = It, $g = _g, Bg = xg; function Je(e) { var t = -1, s = e == null ? 0 : e.length; for (this.__data__ = new Sg(); ++t < s; ) this.add(e[t]); } Je.prototype.add = Je.prototype.push = $g; Je.prototype.has = Bg; var si = Je; function zg(e, t) { for (var s = -1, n = e == null ? 0 : e.length; ++s < n; ) if (t(e[s], s, e)) return !0; return !1; } var Tg = zg; function Rg(e, t) { return e.has(t); } var ni = Rg, Pg = si, jg = Tg, Ig = ni, Og = 1, Lg = 2; function Mg(e, t, s, n, i, r) { var o = s & Og, a = e.length, c = t.length; if (a != c && !(o && c > a)) return !1; var u = r.get(e), l = r.get(t); if (u && l) return u == t && l == e; var p = -1, d = !0, f = s & Lg ? new Pg() : void 0; for (r.set(e, t), r.set(t, e); ++p < a; ) { var y = e[p], E = t[p]; if (n) var k = o ? n(E, y, p, t, e, r) : n(y, E, p, e, t, r); if (k !== void 0) { if (k) continue; d = !1; break; } if (f) { if (!jg(t, function(O, h) { if (!Ig(f, h) && (y === O || i(y, O, s, n, r))) return f.push(h); })) { d = !1; break; } } else if (!(y === E || i(y, E, s, n, r))) { d = !1; break; } } return r.delete(e), r.delete(t), d; } var ii = Mg, qg = Y, Ng = qg.Uint8Array, Kg = Ng; function Wg(e) { var t = -1, s = Array(e.size); return e.forEach(function(n, i) { s[++t] = [i, n]; }), s; } var Ug = Wg; function Hg(e) { var t = -1, s = Array(e.size); return e.forEach(function(n) { s[++t] = n; }), s; } var Ut = Hg, Bs = Re, zs = Kg, Gg = Pe, Vg = ii, Yg = Ug, Zg = Ut, Jg = 1, Xg = 2, Qg = "[object Boolean]", eh = "[object Date]", th = "[object Error]", sh = "[object Map]", nh = "[object Number]", ih = "[object RegExp]", rh = "[object Set]", oh = "[object String]", ah = "[object Symbol]", ch = "[object ArrayBuffer]", uh = "[object DataView]", Ts = Bs ? Bs.prototype : void 0, bt = Ts ? Ts.valueOf : void 0; function lh(e, t, s, n, i, r, o) { switch (s) { case uh: if (e.byteLength != t.byteLength || e.byteOffset != t.byteOffset) return !1; e = e.buffer, t = t.buffer; case ch: return !(e.byteLength != t.byteLength || !r(new zs(e), new zs(t))); case Qg: case eh: case nh: return Gg(+e, +t); case th: return e.name == t.name && e.message == t.message; case ih: case oh: return e == t + ""; case sh: var a = Yg; case rh: var c = n & Jg; if (a || (a = Zg), e.size != t.size && !c) return !1; var u = o.get(e); if (u) return u == t; n |= Xg, o.set(e, t); var l = Vg(a(e), a(t), n, i, r, o); return o.delete(e), l; case ah: if (bt) return bt.call(e) == bt.call(t); } return !1; } var dh = lh, ph = Rn, gh = I; function hh(e, t, s) { var n = t(e); return gh(e) ? n : ph(n, s(e)); } var fh = hh; function mh() { return []; } var yh = mh, bh = ei, vh = yh, Dh = Object.prototype, wh = Dh.propertyIsEnumerable, Rs = Object.getOwnPropertySymbols, kh = Rs ? function(e) { return e == null ? [] : (e = Object(e), bh(Rs(e), function(t) { return wh.call(e, t); })); } : vh, Fh = kh, Ah = fh, Ch = Fh, _h = lt; function Eh(e) { return Ah(e, _h, Ch); } var xh = Eh, Ps = xh, Sh = 1, $h = Object.prototype, Bh = $h.hasOwnProperty; function zh(e, t, s, n, i, r) { var o = s & Sh, a = Ps(e), c = a.length, u = Ps(t), l = u.length; if (c != l && !o) return !1; for (var p = c; p--; ) { var d = a[p]; if (!(o ? d in t : Bh.call(t, d))) return !1; } var f = r.get(e), y = r.get(t); if (f && y) return f == t && y == e; var E = !0; r.set(e, t), r.set(t, e); for (var k = o; ++p < c; ) { d = a[p]; var O = e[d], h = t[d]; if (n) var _ = o ? n(h, O, d, t, e, r) : n(O, h, d, e, t, r); if (!(_ === void 0 ? O === h || i(O, h, s, n, r) : _)) { E = !1; break; } k || (k = d == "constructor"); } if (E && !k) { var $ = e.constructor, v = t.constructor; $ != v && "constructor" in e && "constructor" in t && !(typeof $ == "function" && $ instanceof $ && typeof v == "function" && v instanceof v) && (E = !1); } return r.delete(e), r.delete(t), E; } var Th = zh, vt = ti, Rh = ii, Ph = dh, jh = Th, js = Nn, Is = I, Os = Fe, Ih = qt, Oh = 1, Ls = "[object Arguments]", Ms = "[object Array]", Ge = "[object Object]", Lh = Object.prototype, qs = Lh.hasOwnProperty; function Mh(e, t, s, n, i, r) { var o = Is(e), a = Is(t), c = o ? Ms : js(e), u = a ? Ms : js(t); c = c == Ls ? Ge : c, u = u == Ls ? Ge : u; var l = c == Ge, p = u == Ge, d = c == u; if (d && Os(e)) { if (!Os(t)) return !1; o = !0, l = !1; } if (d && !l) return r || (r = new vt()), o || Ih(e) ? Rh(e, t, s, n, i, r) : Ph(e, t, c, s, n, i, r); if (!(s & Oh)) { var f = l && qs.call(e, "__wrapped__"), y = p && qs.call(t, "__wrapped__"); if (f || y) { var E = f ? e.value() : e, k = y ? t.value() : t; return r || (r = new vt()), i(E, k, s, n, r); } } return d ? (r || (r = new vt()), jh(e, t, s, n, i, r)) : !1; } var qh = Mh, Nh = qh, Ns = ee; function ri(e, t, s, n, i) { return e === t ? !0 : e == null || t == null || !Ns(e) && !Ns(t) ? e !== e && t !== t : Nh(e, t, s, n, ri, i); } var oi = ri, Kh = ti, Wh = oi, Uh = 1, Hh = 2; function Gh(e, t, s, n) { var i = s.length, r = i, o = !n; if (e == null) return !r; for (e = Object(e); i--; ) { var a = s[i]; if (o && a[2] ? a[1] !== e[a[0]] : !(a[0] in e)) return !1; } for (; ++i < r; ) { a = s[i]; var c = a[0], u = e[c], l = a[1]; if (o && a[2]) { if (u === void 0 && !(c in e)) return !1; } else { var p = new Kh(); if (n) var d = n(u, l, c, e, t, p); if (!(d === void 0 ? Wh(l, u, Uh | Hh, n, p) : d)) return !1; } } return !0; } var Vh = Gh, Yh = te; function Zh(e) { return e === e && !Yh(e); } var ai = Zh, Jh = ai, Xh = lt; function Qh(e) { for (var t = Xh(e), s = t.length; s--; ) { var n = t[s], i = e[n]; t[s] = [n, i, Jh(i)]; } return t; } var e2 = Qh; function t2(e, t) { return function(s) { return s == null ? !1 : s[e] === t && (t !== void 0 || e in Object(s)); }; } var ci = t2, s2 = Vh, n2 = e2, i2 = ci; function r2(e) { var t = n2(e); return t.length == 1 && t[0][2] ? i2(t[0][0], t[0][1]) : function(s) { return s === e || s2(s, e, t); }; } var o2 = r2, a2 = Wt; function c2(e, t, s) { var n = e == null ? void 0 : a2(e, t); return n === void 0 ? s : n; } var u2 = c2, l2 = oi, d2 = u2, p2 = Tn, g2 = Pt, h2 = ai, f2 = ci, m2 = je, y2 = 1, b2 = 2; function v2(e, t) { return g2(e) && h2(t) ? f2(m2(e), t) : function(s) { var n = d2(s, e); return n === void 0 && n === t ? p2(s, e) : l2(t, n, y2 | b2); }; } var D2 = v2; function w2(e) { return function(t) { return t == null ? void 0 : t[e]; }; } var k2 = w2, F2 = Wt; function A2(e) { return function(t) { return F2(t, e); }; } var C2 = A2, _2 = k2, E2 = C2, x2 = Pt, S2 = je; function $2(e) { return x2(e) ? _2(S2(e)) : E2(e); } var B2 = $2, z2 = o2, T2 = D2, R2 = Ie, P2 = I, j2 = B2; function I2(e) { return typeof e == "function" ? e : e == null ? R2 : typeof e == "object" ? P2(e) ? T2(e[0], e[1]) : z2(e) : j2(e); } var ui = I2, O2 = ei, L2 = sg, M2 = ui, q2 = I; function N2(e, t) { var s = q2(e) ? O2 : L2; return s(e, M2(t)); } var dt = N2, K2 = Kt, W2 = he; function U2(e, t) { var s = -1, n = W2(e) ? Array(e.length) : []; return K2(e, function(i, r, o) { n[++s] = t(i, r, o); }), n; } var H2 = U2, G2 = Lt, V2 = ui, Y2 = H2, Z2 = I; function J2(e, t) { var s = Z2(e) ? G2 : Y2; return s(e, V2(t)); } var Me = J2, X2 = te, Ks = Object.create, Q2 = function() { function e() { } return function(t) { if (!X2(t)) return {}; if (Ks) return Ks(t); e.prototype = t; var s = new e(); return e.prototype = void 0, s; }; }(), li = Q2; function ef() { } var Ht = ef, tf = li, sf = Ht; function Xe(e, t) { this.__wrapped__ = e, this.__actions__ = [], this.__chain__ = !!t, this.__index__ = 0, this.__values__ = void 0; } Xe.prototype = tf(sf.prototype); Xe.prototype.constructor = Xe; var Gt = Xe, Ws = Mn, nf = Ws && new Ws(), rf = nf; function of() { } var di = of, Us = rf, af = di, cf = Us ? function(e) { return Us.get(e); } : af, pi = cf, uf = {}, lf = uf, Hs = lf, df = Object.prototype, pf = df.hasOwnProperty; function gf(e) { for (var t = e.name + "", s = Hs[t], n = pf.call(Hs, t) ? s.length : 0; n--; ) { var i = s[n], r = i.func; if (r == null || r == e) return i.name; } return t; } var gi = gf, hf = li, ff = Ht, mf = 4294967295; function Qe(e) { this.__wrapped__ = e, this.__actions__ = [], this.__dir__ = 1, this.__filtered__ = !1, this.__iteratees__ = [], this.__takeCount__ = mf, this.__views__ = []; } Qe.prototype = hf(ff.prototype); Qe.prototype.constructor = Qe; var Vt = Qe; function yf(e, t) { var s = -1, n = e.length; for (t || (t = Array(n)); ++s < n; ) t[s] = e[s]; return t; } var bf = yf, vf = Vt, Df = Gt, wf = bf; function kf(e) { if (e instanceof vf) return e.clone(); var t = new Df(e.__wrapped__, e.__chain__); return t.__actions__ = wf(e.__actions__), t.__index__ = e.__index__, t.__values__ = e.__values__, t; } var Ff = kf, Af = Vt, Gs = Gt, Cf = Ht, _f = I, Ef = ee, xf = Ff, Sf = Object.prototype, $f = Sf.hasOwnProperty; function et(e) { if (Ef(e) && !_f(e) && !(e instanceof Af)) { if (e instanceof Gs) return e; if ($f.call(e, "__wrapped__")) return xf(e); } return new Gs(e); } et.prototype = Cf.prototype; et.prototype.constructor = et; var Bf = et, zf = Vt, Tf = pi, Rf = gi, Pf = Bf; function jf(e) { var t = Rf(e), s = Pf[t]; if (typeof s != "function" || !(t in zf.prototype)) return !1; if (e === s) return !0; var n = Tf(s); return !!n && e === n[0]; } var If = jf, Vs = Gt, Of = On, Lf = pi, Dt = gi, Mf = I, Ys = If, qf = "Expected a function", Nf = 8, Kf = 32, Wf = 128, Uf = 256; function Hf(e) { return Of(function(t) { var s = t.length, n = s, i = Vs.prototype.thru; for (e && t.reverse(); n--; ) { var r = t[n]; if (typeof r != "function") throw new TypeError(qf); if (i && !o && Dt(r) == "wrapper") var o = new Vs([], !0); } for (n = o ? n : s; ++n < s; ) { r = t[n]; var a = Dt(r), c = a == "wrapper" ? Lf(r) : void 0; c && Ys(c[0]) && c[1] == (Wf | Nf | Kf | Uf) && !c[4].length && c[9] == 1 ? o = o[Dt(c[0])].apply(o, c[3]) : o = r.length == 1 && Ys(r) ? o[a]() : o.thru(r); } return function() { var u = arguments, l = u[0]; if (o && u.length == 1 && Mf(l)) return o.plant(l).value(); for (var p = 0, d = s ? t[p].apply(this, u) : l; ++p < s; ) d = t[p].call(this, d); return d; }; }); } var Gf = Hf, Vf = Gf, Yf = Vf(), se = Yf; const fe = (e) => e.replace(/<\/?[a-z][^>]*?>/gi, ` `), qe = (e) => e.replace(/&nbsp;|&#160;/gi, " ").replace(/\s{2,}/g, " ").replace(/\s\./g, ".").replace(/^\s+|\s+$/g, ""), hi = "[^<>&/\\[\\]\0- =]+?", Zf = new RegExp("\\[" + hi + "( [^\\]]+?)?\\]", "g"), Jf = new RegExp("\\[/" + hi + "\\]", "g"), Yt = (e) => e.replace(Zf, "").replace(Jf, ""), fi = (e) => e.replace(/--|\u2014/g, " "), Xf = new RegExp([ "[", // Latin-1 Supplement (extract) "€-¿×÷", /* * The following range consists of: * General Punctuation * Superscripts and Subscripts * Currency Symbols * Combining Diacritical Marks for Symbols * Letterlike Symbols * Number Forms * Arrows * Mathematical Operators * Miscellaneous Technical * Control Pictures * Optical Character Recognition * Enclosed Alphanumerics * Box Drawing * Block Elements * Geometric Shapes * Miscellaneous Symbols * Dingbats * Miscellaneous Mathematical Symbols-A * Supplemental Arrows-A * Braille Patterns * Supplemental Arrows-B * Miscellaneous Mathematical Symbols-B * Supplemental Mathematical Operators * Miscellaneous Symbols and Arrows */ " -⯿", // Supplemental Punctuation "⸀-⹿", "]" ].join(""), "g"), Qf = (e) => e.replace(Xf, ""), me = (e) => e.replace(/<!--[\s\S]*?-->/g, ""), pt = (e) => e.replace(/&\S+?;/g, ""), mi = `[\\–\\-\\(\\)_\\[\\]’“”"'.?!:;,¿¡«»‹›—×+&<>]+`, em = new RegExp("^" + mi), tm = new RegExp(mi + "$"), yi = (e) => e.replace(em, "").replace(tm, ""), sm = (e) => { if (e = se( [ fe, me, Yt, qe, pt, fi, Qf ] )(e), e === "") return []; let t = e.split(/\s/g); return t = Me(t, (s) => yi(s)), dt(t, (s) => s.trim() !== ""); }, bi = (e, t) => { const s = sm(e); return t = t || !1, s.length === 0 ? !1 : t === !1 ? s : s.slice(0, t); }, nm = { adulthood: !0, advice: !0, agenda: !0, aid: !0, alcohol: !0, ammo: !0, anime: !0, athletics: !0, audio: !0, bison: !0, blood: !0, bream: !0, buffalo: !0, butter: !0, carp: !0, cash: !0, chassis: !0, chess: !0, clothing: !0, cod: !0, commerce: !0, cooperation: !0, corps: !0, debris: !0, diabetes: !0, digestion: !0, elk: !0, energy: !0, equipment: !0, excretion: !0, expertise: !0, flounder: !0, fun: !0, gallows: !0, garbage: !0, graffiti: !0, headquarters: !0, health: !0, herpes: !0, highjinks: !0, homework: !0, housework: !0, information: !0, jeans: !0, justice: !0, kudos: !0, labour: !0, literature: !0, machinery: !0, mackerel: !0, mail: !0, media: !0, mews: !0, moose: !0, music: !0, mud: !0, manga: !0, news: !0, pike: !0, plankton: !0, pliers: !0, police: !0, pollution: !0, premises: !0, rain: !0, research: !0, rice: !0, salmon: !0, scissors: !0, seo: !0, series: !0, sewage: !0, shambles: !0, shrimp: !0, species: !0, staff: !0, swine: !0, tennis: !0, traffic: !0, transportation: !0, trout: !0, tuna: !0, wealth: !0, welfare: !0, whiting: !0, wildebeest: !0, wildlife: !0, wordpress: !0, you: !0 }, im = [ // Pronouns. ["I", "we"], ["me", "us"], ["he", "they"], ["she", "they"], ["them", "them"], ["myself", "ourselves"], ["yourself", "yourselves"], ["itself", "themselves"], ["herself", "themselves"], ["himself", "themselves"], ["themself", "themselves"], ["is", "are"], ["was", "were"], ["has", "have"], ["this", "these"], ["that", "those"], // Words ending in with a consonant and `o`. ["echo", "echoes"], ["dingo", "dingoes"], ["volcano", "volcanoes"], ["tornado", "tornadoes"], ["torpedo", "torpedoes"], // Ends with `us`. ["genus", "genera"], ["viscus", "viscera"], // Ends with `ma`. ["stigma", "stigmata"], ["stoma", "stomata"], ["dogma", "dogmata"], ["lemma", "lemmata"], ["schema", "schemata"], ["anathema", "anathemata"], // Other irregular rules. ["ox", "oxen"], ["axe", "axes"], ["die", "dice"], ["yes", "yeses"], ["foot", "feet"], ["eave", "eaves"], ["goose", "geese"], ["tooth", "teeth"], ["quiz", "quizzes"], ["human", "humans"], ["proof", "proofs"], ["carve", "carves"], ["valve", "valves"], ["looey", "looies"], ["thief", "thieves"], ["groove", "grooves"], ["pickaxe", "pickaxes"], ["whiskey", "whiskies"], ["thou", "you"] ], rm = [ // unCountableRules [/[^aeiou]ese$/i, "$0"], // "chinese", "japanese" [/deer$/i, "$0"], // "deer", "reindeer" [/fish$/i, "$0"], // "fish", "blowfish", "angelfish" [/measles$/i, "$0"], [/o[iu]s$/i, "$0"], // "carnivorous" [/pox$/i, "$0"], // "chickpox", "smallpox" [/sheep$/i, "$0"], [/s?$/i, "s"], [/[^\u0000-\u007F]$/i, "$0"], [/([^aeiou]ese)$/i, "$1"], [/(ax|test)is$/i, "$1es"], [/(alias|[^aou]us|t[lm]as|gas|ris)$/i, "$1es"], [/(e[mn]u)s?$/i, "$1s"], [/([^l]ias|[aeiou]las|[ejzr]as|[iu]am)$/i, "$1"], [/(alumn|syllab|octop|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i, "$1i"], [/(alumn|alg|vertebr)(?:a|ae)$/i, "$1ae"], [/(seraph|cherub)(?:im)?$/i, "$1im"], [/(her|at|gr)o$/i, "$1oes"], [/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i, "$1a"], [/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i, "$1a"], [/sis$/i, "ses"], [/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i, "$1$2ves"], [/([^aeiouy]|qu)y$/i, "$1ies"], [/([^ch][ieo][ln])ey$/i, "$1ies"], [/(x|ch|ss|sh|zz)$/i, "$1es"], [/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i, "$1ices"], [/\b((?:tit)?m|l)(?:ice|ouse)$/i, "$1ice"], [/(pe)(?:rson|ople)$/i, "$1ople"], [/(child)(?:ren)?$/i, "$1ren"], [/eaux$/i, "$0"], [/m[ae]n$/i, "men"] ]; class om { /** * Class constructor */ constructor() { this.irregularSingles = {}, this.irregularPlurals = {}, this.uncountables = nm, this.pluralizationRules = rm, im.forEach(function(t) { const s = t[0], n = t[1]; this.irregularSingles[s] = n, this.irregularPlurals[n] = s; }, this); } get(t) { if (!t.length) return t; const s = t.toLowerCase(); if (this.irregularPlurals.hasOwnProperty(s) && this.restoreCase(t, s), this.irregularSingles.hasOwnProperty(s) && this.restoreCase(t, this.irregularSingles[s]), this.uncountables.hasOwnProperty(s)) return t; let n = this.pluralizationRules.length; for (; n--; ) { const i = this.pluralizationRules[n]; if (i[0].test(t)) return this.replace(t, i); } return t; } /** * Pass in a word token to produce a function that can replicate the case on another word. * * @param {string} word Word to restore. * @param {string} token Token for it. * * @return {string} Restored word. */ restoreCase(t, s) { return t === s ? s : t === t.toUpperCase() ? s.toUpperCase() : t[0] === t[0].toUpperCase() ? s.charAt(0).toUpperCase() + s.substr(1).toLowerCase() : s.toLowerCase(); } /** * Replace a word using a rule. * * @param {string} word Word to replace. * @param {Array} rule Rule to be applied. * * @return {string} Repalced word. */ replace(t, s) { return t.replace(s[0], (n, i) => { const r = this.interpolate(s[1], arguments); return n === "" ? this.restoreCase(t[i - 1], r) : this.restoreCase(n, r); }); } /** * Interpolate a regexp string. * * @param {string} str String to interpolate. * @param {Array} args Rules to be applied. * * @return {string} Interpolatedd string. */ interpolate(t, s) { return t.replace(/\$(\d{1,2})/g, (n, i) => s[i] || ""); } } const am = { HTMLRegExp: /<\/?[a-z][^>]*?>/gi, HTMLcommentRegExp: /<!--[\s\S]*?-->/g, spaceRegExp: /&nbsp;|&#160;/gi, HTMLEntityRegExp: /&\S+?;/g, // \u2014 = em-dash. connectorRegExp: /--|\u2014/g, // Characters to be removed from input text. removeRegExp: new RegExp([ "[", // Basic Latin (extract) "!-/:-@[-`{-~", // Latin-1 Supplement (extract) "€-¿×÷", /* * The following range consists of: * General Punctuation * Superscripts and Subscripts * Currency Symbols * Combining Diacritical Marks for Symbols * Letterlike Symbols * Number Forms * Arrows * Mathematical Operators * Miscellaneous Technical * Control Pictures * Optical Character Recognition * Enclosed Alphanumerics * Box Drawing * Block Elements * Geometric Shapes * Miscellaneous Symbols * Dingbats * Miscellaneous Mathematical Symbols-A * Supplemental Arrows-A * Braille Patterns * Supplemental Arrows-B * Miscellaneous Mathematical Symbols-B * Supplemental Mathematical Operators * Miscellaneous Symbols and Arrows */ " -⯿", // Supplemental Punctuation. "⸀-⹿", "]" ].join(""), "g"), // Remove UTF-16 surrogate points, see https://en.wikipedia.org/wiki/UTF-16#U.2BD800_to_U.2BDFFF astralRegExp: /[\uD800-\uDBFF][\uDC00-\uDFFF]/g, wordsRegExp: /\S\s+/g, characters_excluding_spac