/** * Fuse.js v6.6.2 - Lightweight fuzzy-search (http://fusejs.io) * * Copyright (c) 2022 Kiro Risk (http://kiro.me) * All Rights Reserved. Apache Software License 2.0 * * http://www.apache.org/licenses/LICENSE-2.0 */ var e, t; (e = this), (t = function () { 'use strict'; function e(e, t) { var n = Object.keys(e); if (Object.getOwnPropertySymbols) { var r = Object.getOwnPropertySymbols(e); t && (r = r.filter(function (t) { return Object.getOwnPropertyDescriptor(e, t).enumerable; })), n.push.apply(n, r); } return n; } function t(t) { for (var n = 1; n < arguments.length; n++) { var r = null != arguments[n] ? arguments[n] : {}; n % 2 ? e(Object(r), !0).forEach(function (e) { c(t, e, r[e]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(r)) : e(Object(r)).forEach(function (e) { Object.defineProperty(t, e, Object.getOwnPropertyDescriptor(r, e)); }); } return t; } function n(e) { return ( (n = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (e) { return typeof e; } : function (e) { return e && 'function' == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? 'symbol' : typeof e; }), n(e) ); } function r(e, t) { if (!(e instanceof t)) throw new TypeError('Cannot call a class as a function'); } function i(e, t) { for (var n = 0; n < t.length; n++) { var r = t[n]; (r.enumerable = r.enumerable || !1), (r.configurable = !0), 'value' in r && (r.writable = !0), Object.defineProperty(e, r.key, r); } } function o(e, t, n) { return t && i(e.prototype, t), n && i(e, n), Object.defineProperty(e, 'prototype', { writable: !1 }), e; } function c(e, t, n) { return ( t in e ? Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : (e[t] = n), e ); } function a(e, t) { if ('function' != typeof t && null !== t) throw new TypeError('Super expression must either be null or a function'); Object.defineProperty(e, 'prototype', { value: Object.create(t && t.prototype, { constructor: { value: e, writable: !0, configurable: !0 } }), writable: !1, }), t && u(e, t); } function s(e) { return ( (s = Object.setPrototypeOf ? Object.getPrototypeOf : function (e) { return e.__proto__ || Object.getPrototypeOf(e); }), s(e) ); } function u(e, t) { return ( (u = Object.setPrototypeOf || function (e, t) { return (e.__proto__ = t), e; }), u(e, t) ); } function h(e, t) { if (t && ('object' == typeof t || 'function' == typeof t)) return t; if (void 0 !== t) throw new TypeError('Derived constructors may only return object or undefined'); return (function (e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; })(e); } function l(e) { var t = (function () { if ('undefined' == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ('function' == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})), !0; } catch (e) { return !1; } })(); return function () { var n, r = s(e); if (t) { var i = s(this).constructor; n = Reflect.construct(r, arguments, i); } else n = r.apply(this, arguments); return h(this, n); }; } function f(e) { return ( (function (e) { if (Array.isArray(e)) return d(e); })(e) || (function (e) { if (('undefined' != typeof Symbol && null != e[Symbol.iterator]) || null != e['@@iterator']) return Array.from(e); })(e) || (function (e, t) { if (e) { if ('string' == typeof e) return d(e, t); var n = Object.prototype.toString.call(e).slice(8, -1); return ( 'Object' === n && e.constructor && (n = e.constructor.name), 'Map' === n || 'Set' === n ? Array.from(e) : 'Arguments' === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? d(e, t) : void 0 ); } })(e) || (function () { throw new TypeError( 'Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.', ); })() ); } function d(e, t) { (null == t || t > e.length) && (t = e.length); for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n]; return r; } function v(e) { return Array.isArray ? Array.isArray(e) : '[object Array]' === b(e); } function g(e) { return 'string' == typeof e; } function y(e) { return 'number' == typeof e; } function p(e) { return ( !0 === e || !1 === e || ((function (e) { return m(e) && null !== e; })(e) && '[object Boolean]' == b(e)) ); } function m(e) { return 'object' === n(e); } function k(e) { return null != e; } function M(e) { return !e.trim().length; } function b(e) { return null == e ? (void 0 === e ? '[object Undefined]' : '[object Null]') : Object.prototype.toString.call(e); } var x = function (e) { return 'Invalid value for key '.concat(e); }, w = function (e) { return 'Pattern length exceeds max of '.concat(e, '.'); }, L = Object.prototype.hasOwnProperty, S = (function () { function e(t) { var n = this; r(this, e), (this._keys = []), (this._keyMap = {}); var i = 0; t.forEach(function (e) { var t = _(e); (i += t.weight), n._keys.push(t), (n._keyMap[t.id] = t), (i += t.weight); }), this._keys.forEach(function (e) { e.weight /= i; }); } return ( o(e, [ { key: 'get', value: function (e) { return this._keyMap[e]; }, }, { key: 'keys', value: function () { return this._keys; }, }, { key: 'toJSON', value: function () { return JSON.stringify(this._keys); }, }, ]), e ); })(); function _(e) { var t = null, n = null, r = null, i = 1, o = null; if (g(e) || v(e)) (r = e), (t = O(e)), (n = j(e)); else { if (!L.call(e, 'name')) throw new Error( (function (e) { return 'Missing '.concat(e, ' property in key'); })('name'), ); var c = e.name; if (((r = c), L.call(e, 'weight') && (i = e.weight) <= 0)) throw new Error( (function (e) { return "Property 'weight' in key '".concat(e, "' must be a positive integer"); })(c), ); (t = O(c)), (n = j(c)), (o = e.getFn); } return { path: t, id: n, weight: i, src: r, getFn: o }; } function O(e) { return v(e) ? e : e.split('.'); } function j(e) { return v(e) ? e.join('.') : e; } var A = { useExtendedSearch: !1, getFn: function (e, t) { var n = [], r = !1; return ( (function e(t, i, o) { if (k(t)) if (i[o]) { var c = t[i[o]]; if (!k(c)) return; if (o === i.length - 1 && (g(c) || y(c) || p(c))) n.push( (function (e) { return null == e ? '' : (function (e) { if ('string' == typeof e) return e; var t = e + ''; return '0' == t && 1 / e == -1 / 0 ? '-0' : t; })(e); })(c), ); else if (v(c)) { r = !0; for (var a = 0, s = c.length; a < s; a += 1) e(c[a], i, o + 1); } else i.length && e(c, i, o + 1); } else n.push(t); })(e, g(t) ? t.split('.') : t, 0), r ? n : n[0] ); }, ignoreLocation: !1, ignoreFieldNorm: !1, fieldNormWeight: 1, }, I = t( t( t( t( {}, { isCaseSensitive: !1, includeScore: !1, keys: [], shouldSort: !0, sortFn: function (e, t) { return e.score === t.score ? (e.idx < t.idx ? -1 : 1) : e.score < t.score ? -1 : 1; }, }, ), { includeMatches: !1, findAllMatches: !1, minMatchCharLength: 1 }, ), { location: 0, threshold: 0.6, distance: 100 }, ), A, ), C = /[^ ]+/g; function E() { var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : 1, t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : 3, n = new Map(), r = Math.pow(10, t); return { get: function (t) { var i = t.match(C).length; if (n.has(i)) return n.get(i); var o = 1 / Math.pow(i, 0.5 * e), c = parseFloat(Math.round(o * r) / r); return n.set(i, c), c; }, clear: function () { n.clear(); }, }; } var $ = (function () { function e() { var t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}, n = t.getFn, i = void 0 === n ? I.getFn : n, o = t.fieldNormWeight, c = void 0 === o ? I.fieldNormWeight : o; r(this, e), (this.norm = E(c, 3)), (this.getFn = i), (this.isCreated = !1), this.setIndexRecords(); } return ( o(e, [ { key: 'setSources', value: function () { var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : []; this.docs = e; }, }, { key: 'setIndexRecords', value: function () { var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : []; this.records = e; }, }, { key: 'setKeys', value: function () { var e = this, t = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : []; (this.keys = t), (this._keysMap = {}), t.forEach(function (t, n) { e._keysMap[t.id] = n; }); }, }, { key: 'create', value: function () { var e = this; !this.isCreated && this.docs.length && ((this.isCreated = !0), g(this.docs[0]) ? this.docs.forEach(function (t, n) { e._addString(t, n); }) : this.docs.forEach(function (t, n) { e._addObject(t, n); }), this.norm.clear()); }, }, { key: 'add', value: function (e) { var t = this.size(); g(e) ? this._addString(e, t) : this._addObject(e, t); }, }, { key: 'removeAt', value: function (e) { this.records.splice(e, 1); for (var t = e, n = this.size(); t < n; t += 1) this.records[t].i -= 1; }, }, { key: 'getValueForItemAtKeyId', value: function (e, t) { return e[this._keysMap[t]]; }, }, { key: 'size', value: function () { return this.records.length; }, }, { key: '_addString', value: function (e, t) { if (k(e) && !M(e)) { var n = { v: e, i: t, n: this.norm.get(e) }; this.records.push(n); } }, }, { key: '_addObject', value: function (e, t) { var n = this, r = { i: t, $: {} }; this.keys.forEach(function (t, i) { var o = t.getFn ? t.getFn(e) : n.getFn(e, t.path); if (k(o)) if (v(o)) !(function () { for (var e = [], t = [{ nestedArrIndex: -1, value: o }]; t.length; ) { var c = t.pop(), a = c.nestedArrIndex, s = c.value; if (k(s)) if (g(s) && !M(s)) { var u = { v: s, i: a, n: n.norm.get(s) }; e.push(u); } else v(s) && s.forEach(function (e, n) { t.push({ nestedArrIndex: n, value: e }); }); } r.$[i] = e; })(); else if (g(o) && !M(o)) { var c = { v: o, n: n.norm.get(o) }; r.$[i] = c; } }), this.records.push(r); }, }, { key: 'toJSON', value: function () { return { keys: this.keys, records: this.records }; }, }, ]), e ); })(); function F(e, t) { var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}, r = n.getFn, i = void 0 === r ? I.getFn : r, o = n.fieldNormWeight, c = void 0 === o ? I.fieldNormWeight : o, a = new $({ getFn: i, fieldNormWeight: c }); return a.setKeys(e.map(_)), a.setSources(t), a.create(), a; } function R(e) { var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, n = t.errors, r = void 0 === n ? 0 : n, i = t.currentLocation, o = void 0 === i ? 0 : i, c = t.expectedLocation, a = void 0 === c ? 0 : c, s = t.distance, u = void 0 === s ? I.distance : s, h = t.ignoreLocation, l = void 0 === h ? I.ignoreLocation : h, f = r / e.length; if (l) return f; var d = Math.abs(a - o); return u ? f + d / u : d ? 1 : f; } function N() { for ( var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [], t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : I.minMatchCharLength, n = [], r = -1, i = -1, o = 0, c = e.length; o < c; o += 1 ) { var a = e[o]; a && -1 === r ? (r = o) : a || -1 === r || ((i = o - 1) - r + 1 >= t && n.push([r, i]), (r = -1)); } return e[o - 1] && o - r >= t && n.push([r, o - 1]), n; } var P = 32; function W(e) { for (var t = {}, n = 0, r = e.length; n < r; n += 1) { var i = e.charAt(n); t[i] = (t[i] || 0) | (1 << (r - n - 1)); } return t; } var T = (function () { function e(t) { var n = this, i = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, o = i.location, c = void 0 === o ? I.location : o, a = i.threshold, s = void 0 === a ? I.threshold : a, u = i.distance, h = void 0 === u ? I.distance : u, l = i.includeMatches, f = void 0 === l ? I.includeMatches : l, d = i.findAllMatches, v = void 0 === d ? I.findAllMatches : d, g = i.minMatchCharLength, y = void 0 === g ? I.minMatchCharLength : g, p = i.isCaseSensitive, m = void 0 === p ? I.isCaseSensitive : p, k = i.ignoreLocation, M = void 0 === k ? I.ignoreLocation : k; if ( (r(this, e), (this.options = { location: c, threshold: s, distance: h, includeMatches: f, findAllMatches: v, minMatchCharLength: y, isCaseSensitive: m, ignoreLocation: M, }), (this.pattern = m ? t : t.toLowerCase()), (this.chunks = []), this.pattern.length) ) { var b = function (e, t) { n.chunks.push({ pattern: e, alphabet: W(e), startIndex: t }); }, x = this.pattern.length; if (x > P) { for (var w = 0, L = x % P, S = x - L; w < S; ) b(this.pattern.substr(w, P), w), (w += P); if (L) { var _ = x - P; b(this.pattern.substr(_), _); } } else b(this.pattern, 0); } } return ( o(e, [ { key: 'searchIn', value: function (e) { var t = this.options, n = t.isCaseSensitive, r = t.includeMatches; if ((n || (e = e.toLowerCase()), this.pattern === e)) { var i = { isMatch: !0, score: 0 }; return r && (i.indices = [[0, e.length - 1]]), i; } var o = this.options, c = o.location, a = o.distance, s = o.threshold, u = o.findAllMatches, h = o.minMatchCharLength, l = o.ignoreLocation, d = [], v = 0, g = !1; this.chunks.forEach(function (t) { var n = t.pattern, i = t.alphabet, o = t.startIndex, y = (function (e, t, n) { var r = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : {}, i = r.location, o = void 0 === i ? I.location : i, c = r.distance, a = void 0 === c ? I.distance : c, s = r.threshold, u = void 0 === s ? I.threshold : s, h = r.findAllMatches, l = void 0 === h ? I.findAllMatches : h, f = r.minMatchCharLength, d = void 0 === f ? I.minMatchCharLength : f, v = r.includeMatches, g = void 0 === v ? I.includeMatches : v, y = r.ignoreLocation, p = void 0 === y ? I.ignoreLocation : y; if (t.length > P) throw new Error(w(P)); for ( var m, k = t.length, M = e.length, b = Math.max(0, Math.min(o, M)), x = u, L = b, S = d > 1 || g, _ = S ? Array(M) : []; (m = e.indexOf(t, L)) > -1; ) { var O = R(t, { currentLocation: m, expectedLocation: b, distance: a, ignoreLocation: p }); if (((x = Math.min(O, x)), (L = m + k), S)) for (var j = 0; j < k; ) (_[m + j] = 1), (j += 1); } L = -1; for (var A = [], C = 1, E = k + M, $ = 1 << (k - 1), F = 0; F < k; F += 1) { for (var W = 0, T = E; W < T; ) R(t, { errors: F, currentLocation: b + T, expectedLocation: b, distance: a, ignoreLocation: p, }) <= x ? (W = T) : (E = T), (T = Math.floor((E - W) / 2 + W)); E = T; var z = Math.max(1, b - T + 1), D = l ? M : Math.min(b + T, M) + k, K = Array(D + 2); K[D + 1] = (1 << F) - 1; for (var q = D; q >= z; q -= 1) { var B = q - 1, J = n[e.charAt(B)]; if ( (S && (_[B] = +!!J), (K[q] = ((K[q + 1] << 1) | 1) & J), F && (K[q] |= ((A[q + 1] | A[q]) << 1) | 1 | A[q + 1]), K[q] & $ && (C = R(t, { errors: F, currentLocation: B, expectedLocation: b, distance: a, ignoreLocation: p, })) <= x) ) { if (((x = C), (L = B) <= b)) break; z = Math.max(1, 2 * b - L); } } if ( R(t, { errors: F + 1, currentLocation: b, expectedLocation: b, distance: a, ignoreLocation: p, }) > x ) break; A = K; } var U = { isMatch: L >= 0, score: Math.max(0.001, C) }; if (S) { var V = N(_, d); V.length ? g && (U.indices = V) : (U.isMatch = !1); } return U; })(e, n, i, { location: c + o, distance: a, threshold: s, findAllMatches: u, minMatchCharLength: h, includeMatches: r, ignoreLocation: l, }), p = y.isMatch, m = y.score, k = y.indices; p && (g = !0), (v += m), p && k && (d = [].concat(f(d), f(k))); }); var y = { isMatch: g, score: g ? v / this.chunks.length : 1 }; return g && r && (y.indices = d), y; }, }, ]), e ); })(), z = (function () { function e(t) { r(this, e), (this.pattern = t); } return ( o( e, [{ key: 'search', value: function () {} }], [ { key: 'isMultiMatch', value: function (e) { return D(e, this.multiRegex); }, }, { key: 'isSingleMatch', value: function (e) { return D(e, this.singleRegex); }, }, ], ), e ); })(); function D(e, t) { var n = e.match(t); return n ? n[1] : null; } var K = (function (e) { a(n, e); var t = l(n); function n(e) { return r(this, n), t.call(this, e); } return ( o( n, [ { key: 'search', value: function (e) { var t = e === this.pattern; return { isMatch: t, score: t ? 0 : 1, indices: [0, this.pattern.length - 1] }; }, }, ], [ { key: 'type', get: function () { return 'exact'; }, }, { key: 'multiRegex', get: function () { return /^="(.*)"$/; }, }, { key: 'singleRegex', get: function () { return /^=(.*)$/; }, }, ], ), n ); })(z), q = (function (e) { a(n, e); var t = l(n); function n(e) { return r(this, n), t.call(this, e); } return ( o( n, [ { key: 'search', value: function (e) { var t = -1 === e.indexOf(this.pattern); return { isMatch: t, score: t ? 0 : 1, indices: [0, e.length - 1] }; }, }, ], [ { key: 'type', get: function () { return 'inverse-exact'; }, }, { key: 'multiRegex', get: function () { return /^!"(.*)"$/; }, }, { key: 'singleRegex', get: function () { return /^!(.*)$/; }, }, ], ), n ); })(z), B = (function (e) { a(n, e); var t = l(n); function n(e) { return r(this, n), t.call(this, e); } return ( o( n, [ { key: 'search', value: function (e) { var t = e.startsWith(this.pattern); return { isMatch: t, score: t ? 0 : 1, indices: [0, this.pattern.length - 1] }; }, }, ], [ { key: 'type', get: function () { return 'prefix-exact'; }, }, { key: 'multiRegex', get: function () { return /^\^"(.*)"$/; }, }, { key: 'singleRegex', get: function () { return /^\^(.*)$/; }, }, ], ), n ); })(z), J = (function (e) { a(n, e); var t = l(n); function n(e) { return r(this, n), t.call(this, e); } return ( o( n, [ { key: 'search', value: function (e) { var t = !e.startsWith(this.pattern); return { isMatch: t, score: t ? 0 : 1, indices: [0, e.length - 1] }; }, }, ], [ { key: 'type', get: function () { return 'inverse-prefix-exact'; }, }, { key: 'multiRegex', get: function () { return /^!\^"(.*)"$/; }, }, { key: 'singleRegex', get: function () { return /^!\^(.*)$/; }, }, ], ), n ); })(z), U = (function (e) { a(n, e); var t = l(n); function n(e) { return r(this, n), t.call(this, e); } return ( o( n, [ { key: 'search', value: function (e) { var t = e.endsWith(this.pattern); return { isMatch: t, score: t ? 0 : 1, indices: [e.length - this.pattern.length, e.length - 1] }; }, }, ], [ { key: 'type', get: function () { return 'suffix-exact'; }, }, { key: 'multiRegex', get: function () { return /^"(.*)"\$$/; }, }, { key: 'singleRegex', get: function () { return /^(.*)\$$/; }, }, ], ), n ); })(z), V = (function (e) { a(n, e); var t = l(n); function n(e) { return r(this, n), t.call(this, e); } return ( o( n, [ { key: 'search', value: function (e) { var t = !e.endsWith(this.pattern); return { isMatch: t, score: t ? 0 : 1, indices: [0, e.length - 1] }; }, }, ], [ { key: 'type', get: function () { return 'inverse-suffix-exact'; }, }, { key: 'multiRegex', get: function () { return /^!"(.*)"\$$/; }, }, { key: 'singleRegex', get: function () { return /^!(.*)\$$/; }, }, ], ), n ); })(z), G = (function (e) { a(n, e); var t = l(n); function n(e) { var i, o = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, c = o.location, a = void 0 === c ? I.location : c, s = o.threshold, u = void 0 === s ? I.threshold : s, h = o.distance, l = void 0 === h ? I.distance : h, f = o.includeMatches, d = void 0 === f ? I.includeMatches : f, v = o.findAllMatches, g = void 0 === v ? I.findAllMatches : v, y = o.minMatchCharLength, p = void 0 === y ? I.minMatchCharLength : y, m = o.isCaseSensitive, k = void 0 === m ? I.isCaseSensitive : m, M = o.ignoreLocation, b = void 0 === M ? I.ignoreLocation : M; return ( r(this, n), ((i = t.call(this, e))._bitapSearch = new T(e, { location: a, threshold: u, distance: l, includeMatches: d, findAllMatches: g, minMatchCharLength: p, isCaseSensitive: k, ignoreLocation: b, })), i ); } return ( o( n, [ { key: 'search', value: function (e) { return this._bitapSearch.searchIn(e); }, }, ], [ { key: 'type', get: function () { return 'fuzzy'; }, }, { key: 'multiRegex', get: function () { return /^"(.*)"$/; }, }, { key: 'singleRegex', get: function () { return /^(.*)$/; }, }, ], ), n ); })(z), H = (function (e) { a(n, e); var t = l(n); function n(e) { return r(this, n), t.call(this, e); } return ( o( n, [ { key: 'search', value: function (e) { for (var t, n = 0, r = [], i = this.pattern.length; (t = e.indexOf(this.pattern, n)) > -1; ) (n = t + i), r.push([t, n - 1]); var o = !!r.length; return { isMatch: o, score: o ? 0 : 1, indices: r }; }, }, ], [ { key: 'type', get: function () { return 'include'; }, }, { key: 'multiRegex', get: function () { return /^'"(.*)"$/; }, }, { key: 'singleRegex', get: function () { return /^'(.*)$/; }, }, ], ), n ); })(z), Q = [K, H, B, J, V, U, q, G], X = Q.length, Y = / +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/; function Z(e) { var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}; return e.split('|').map(function (e) { for ( var n = e .trim() .split(Y) .filter(function (e) { return e && !!e.trim(); }), r = [], i = 0, o = n.length; i < o; i += 1 ) { for (var c = n[i], a = !1, s = -1; !a && ++s < X; ) { var u = Q[s], h = u.isMultiMatch(c); h && (r.push(new u(h, t)), (a = !0)); } if (!a) for (s = -1; ++s < X; ) { var l = Q[s], f = l.isSingleMatch(c); if (f) { r.push(new l(f, t)); break; } } } return r; }); } var ee = new Set([G.type, H.type]), te = (function () { function e(t) { var n = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, i = n.isCaseSensitive, o = void 0 === i ? I.isCaseSensitive : i, c = n.includeMatches, a = void 0 === c ? I.includeMatches : c, s = n.minMatchCharLength, u = void 0 === s ? I.minMatchCharLength : s, h = n.ignoreLocation, l = void 0 === h ? I.ignoreLocation : h, f = n.findAllMatches, d = void 0 === f ? I.findAllMatches : f, v = n.location, g = void 0 === v ? I.location : v, y = n.threshold, p = void 0 === y ? I.threshold : y, m = n.distance, k = void 0 === m ? I.distance : m; r(this, e), (this.query = null), (this.options = { isCaseSensitive: o, includeMatches: a, minMatchCharLength: u, findAllMatches: d, ignoreLocation: l, location: g, threshold: p, distance: k, }), (this.pattern = o ? t : t.toLowerCase()), (this.query = Z(this.pattern, this.options)); } return ( o( e, [ { key: 'searchIn', value: function (e) { var t = this.query; if (!t) return { isMatch: !1, score: 1 }; var n = this.options, r = n.includeMatches; e = n.isCaseSensitive ? e : e.toLowerCase(); for (var i = 0, o = [], c = 0, a = 0, s = t.length; a < s; a += 1) { var u = t[a]; (o.length = 0), (i = 0); for (var h = 0, l = u.length; h < l; h += 1) { var d = u[h], v = d.search(e), g = v.isMatch, y = v.indices, p = v.score; if (!g) { (c = 0), (i = 0), (o.length = 0); break; } if (((i += 1), (c += p), r)) { var m = d.constructor.type; ee.has(m) ? (o = [].concat(f(o), f(y))) : o.push(y); } } if (i) { var k = { isMatch: !0, score: c / i }; return r && (k.indices = o), k; } } return { isMatch: !1, score: 1 }; }, }, ], [ { key: 'condition', value: function (e, t) { return t.useExtendedSearch; }, }, ], ), e ); })(), ne = []; function re(e, t) { for (var n = 0, r = ne.length; n < r; n += 1) { var i = ne[n]; if (i.condition(e, t)) return new i(e, t); } return new T(e, t); } var ie = '$and', oe = '$or', ce = '$path', ae = '$val', se = function (e) { return !(!e[ie] && !e[oe]); }, ue = function (e) { return !!e[ce]; }, he = function (e) { return !v(e) && m(e) && !se(e); }, le = function (e) { return c( {}, ie, Object.keys(e).map(function (t) { return c({}, t, e[t]); }), ); }; function fe(e, t) { var n = t.ignoreFieldNorm, r = void 0 === n ? I.ignoreFieldNorm : n; e.forEach(function (e) { var t = 1; e.matches.forEach(function (e) { var n = e.key, i = e.norm, o = e.score, c = n ? n.weight : null; t *= Math.pow(0 === o && c ? Number.EPSILON : o, (c || 1) * (r ? 1 : i)); }), (e.score = t); }); } function de(e, t) { var n = e.matches; (t.matches = []), k(n) && n.forEach(function (e) { if (k(e.indices) && e.indices.length) { var n = { indices: e.indices, value: e.value }; e.key && (n.key = e.key.src), e.idx > -1 && (n.refIndex = e.idx), t.matches.push(n); } }); } function ve(e, t) { t.score = e.score; } function ge(e, t) { var n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}, r = n.includeMatches, i = void 0 === r ? I.includeMatches : r, o = n.includeScore, c = void 0 === o ? I.includeScore : o, a = []; return ( i && a.push(de), c && a.push(ve), e.map(function (e) { var n = e.idx, r = { item: t[n], refIndex: n }; return ( a.length && a.forEach(function (t) { t(e, r); }), r ); }) ); } var ye = (function () { function e(n) { var i = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, o = arguments.length > 2 ? arguments[2] : void 0; r(this, e), (this.options = t(t({}, I), i)), this.options.useExtendedSearch, (this._keyStore = new S(this.options.keys)), this.setCollection(n, o); } return ( o(e, [ { key: 'setCollection', value: function (e, t) { if (((this._docs = e), t && !(t instanceof $))) throw new Error("Incorrect 'index' type"); this._myIndex = t || F(this.options.keys, this._docs, { getFn: this.options.getFn, fieldNormWeight: this.options.fieldNormWeight, }); }, }, { key: 'add', value: function (e) { k(e) && (this._docs.push(e), this._myIndex.add(e)); }, }, { key: 'remove', value: function () { for ( var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : function () { return !1; }, t = [], n = 0, r = this._docs.length; n < r; n += 1 ) { var i = this._docs[n]; e(i, n) && (this.removeAt(n), (n -= 1), (r -= 1), t.push(i)); } return t; }, }, { key: 'removeAt', value: function (e) { this._docs.splice(e, 1), this._myIndex.removeAt(e); }, }, { key: 'getIndex', value: function () { return this._myIndex; }, }, { key: 'search', value: function (e) { var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, n = t.limit, r = void 0 === n ? -1 : n, i = this.options, o = i.includeMatches, c = i.includeScore, a = i.shouldSort, s = i.sortFn, u = i.ignoreFieldNorm, h = g(e) ? g(this._docs[0]) ? this._searchStringList(e) : this._searchObjectList(e) : this._searchLogical(e); return ( fe(h, { ignoreFieldNorm: u }), a && h.sort(s), y(r) && r > -1 && (h = h.slice(0, r)), ge(h, this._docs, { includeMatches: o, includeScore: c }) ); }, }, { key: '_searchStringList', value: function (e) { var t = re(e, this.options), n = this._myIndex.records, r = []; return ( n.forEach(function (e) { var n = e.v, i = e.i, o = e.n; if (k(n)) { var c = t.searchIn(n), a = c.isMatch, s = c.score, u = c.indices; a && r.push({ item: n, idx: i, matches: [{ score: s, value: n, norm: o, indices: u }] }); } }), r ); }, }, { key: '_searchLogical', value: function (e) { var t = this, n = (function (e, t) { var n = (arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {}).auto, r = void 0 === n || n, i = function e(n) { var i = Object.keys(n), o = ue(n); if (!o && i.length > 1 && !se(n)) return e(le(n)); if (he(n)) { var c = o ? n[ce] : i[0], a = o ? n[ae] : n[c]; if (!g(a)) throw new Error(x(c)); var s = { keyId: j(c), pattern: a }; return r && (s.searcher = re(a, t)), s; } var u = { children: [], operator: i[0] }; return ( i.forEach(function (t) { var r = n[t]; v(r) && r.forEach(function (t) { u.children.push(e(t)); }); }), u ); }; return se(e) || (e = le(e)), i(e); })(e, this.options), r = function e(n, r, i) { if (!n.children) { var o = n.keyId, c = n.searcher, a = t._findMatches({ key: t._keyStore.get(o), value: t._myIndex.getValueForItemAtKeyId(r, o), searcher: c, }); return a && a.length ? [{ idx: i, item: r, matches: a }] : []; } for (var s = [], u = 0, h = n.children.length; u < h; u += 1) { var l = e(n.children[u], r, i); if (l.length) s.push.apply(s, f(l)); else if (n.operator === ie) return []; } return s; }, i = this._myIndex.records, o = {}, c = []; return ( i.forEach(function (e) { var t = e.$, i = e.i; if (k(t)) { var a = r(n, t, i); a.length && (o[i] || ((o[i] = { idx: i, item: t, matches: [] }), c.push(o[i])), a.forEach(function (e) { var t, n = e.matches; (t = o[i].matches).push.apply(t, f(n)); })); } }), c ); }, }, { key: '_searchObjectList', value: function (e) { var t = this, n = re(e, this.options), r = this._myIndex, i = r.keys, o = r.records, c = []; return ( o.forEach(function (e) { var r = e.$, o = e.i; if (k(r)) { var a = []; i.forEach(function (e, i) { a.push.apply(a, f(t._findMatches({ key: e, value: r[i], searcher: n }))); }), a.length && c.push({ idx: o, item: r, matches: a }); } }), c ); }, }, { key: '_findMatches', value: function (e) { var t = e.key, n = e.value, r = e.searcher; if (!k(n)) return []; var i = []; if (v(n)) n.forEach(function (e) { var n = e.v, o = e.i, c = e.n; if (k(n)) { var a = r.searchIn(n), s = a.isMatch, u = a.score, h = a.indices; s && i.push({ score: u, key: t, value: n, idx: o, norm: c, indices: h }); } }); else { var o = n.v, c = n.n, a = r.searchIn(o), s = a.isMatch, u = a.score, h = a.indices; s && i.push({ score: u, key: t, value: o, norm: c, indices: h }); } return i; }, }, ]), e ); })(); return ( (ye.version = '6.6.2'), (ye.createIndex = F), (ye.parseIndex = function (e) { var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {}, n = t.getFn, r = void 0 === n ? I.getFn : n, i = t.fieldNormWeight, o = void 0 === i ? I.fieldNormWeight : i, c = e.keys, a = e.records, s = new $({ getFn: r, fieldNormWeight: o }); return s.setKeys(c), s.setIndexRecords(a), s; }), (ye.config = I), (function () { ne.push.apply(ne, arguments); })(te), ye ); }), 'object' == typeof exports && 'undefined' != typeof module ? (module.exports = t()) : 'function' == typeof define && define.amd ? define(t) : ((e = 'undefined' != typeof globalThis ? globalThis : e || self).Fuse = t());