1
0
mirror of https://github.com/nextapps-de/flexsearch.git synced 2025-09-24 20:41:28 +02:00
Files
flexsearch/dist/flexsearch.es5.js
2021-06-05 13:41:12 +02:00

46 lines
21 KiB
JavaScript

/**!
* FlexSearch.js v0.7.0-beta (ES5)
* Copyright 2019 Nextapps GmbH
* Author: Thomas Wilkerling
* Licence: Apache-2.0
* https://github.com/nextapps-de/flexsearch
*/
(function(self){'use strict';var u;function aa(a){var b=0;return function(){return b<a.length?{done:!1,value:a[b++]}:{done:!0}}}var v="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(a==Array.prototype||a==Object.prototype)return a;a[b]=c.value;return a};
function ba(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var b=0;b<a.length;++b){var c=a[b];if(c&&c.Math==Math)return c}throw Error("Cannot find global object");}var w=ba(this);function x(a,b){if(b)a:{var c=w;a=a.split(".");for(var d=0;d<a.length-1;d++){var f=a[d];if(!(f in c))break a;c=c[f]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&null!=b&&v(c,a,{configurable:!0,writable:!0,value:b})}}
x("Symbol",function(a){function b(g){if(this instanceof b)throw new TypeError("Symbol is not a constructor");return new c(d+(g||"")+"_"+f++,g)}function c(g,e){this.h=g;v(this,"description",{configurable:!0,writable:!0,value:e})}if(a)return a;c.prototype.toString=function(){return this.h};var d="jscomp_symbol_"+(1E9*Math.random()>>>0)+"_",f=0;return b});
x("Symbol.iterator",function(a){if(a)return a;a=Symbol("Symbol.iterator");for(var b="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),c=0;c<b.length;c++){var d=w[b[c]];"function"===typeof d&&"function"!=typeof d.prototype[a]&&v(d.prototype,a,{configurable:!0,writable:!0,value:function(){return ca(aa(this))}})}return a});function ca(a){a={next:a};a[Symbol.iterator]=function(){return this};return a}
function da(a,b){a instanceof String&&(a+="");var c=0,d=!1,f={next:function(){if(!d&&c<a.length){var g=c++;return{value:b(g,a[g]),done:!1}}d=!0;return{done:!0,value:void 0}}};f[Symbol.iterator]=function(){return f};return f}x("Array.prototype.keys",function(a){return a?a:function(){return da(this,function(b){return b})}});function ea(a){var b="undefined"!=typeof Symbol&&Symbol.iterator&&a[Symbol.iterator];return b?b.call(a):{next:aa(a)}}
x("Promise",function(a){function b(e){this.l=0;this.m=void 0;this.h=[];this.N=!1;var h=this.A();try{e(h.resolve,h.reject)}catch(k){h.reject(k)}}function c(){this.h=null}function d(e){return e instanceof b?e:new b(function(h){h(e)})}if(a)return a;c.prototype.l=function(e){if(null==this.h){this.h=[];var h=this;this.m(function(){h.C()})}this.h.push(e)};var f=w.setTimeout;c.prototype.m=function(e){f(e,0)};c.prototype.C=function(){for(;this.h&&this.h.length;){var e=this.h;this.h=[];for(var h=0;h<e.length;++h){var k=
e[h];e[h]=null;try{k()}catch(l){this.A(l)}}}this.h=null};c.prototype.A=function(e){this.m(function(){throw e;})};b.prototype.A=function(){function e(l){return function(m){k||(k=!0,l.call(h,m))}}var h=this,k=!1;return{resolve:e(this.T),reject:e(this.C)}};b.prototype.T=function(e){if(e===this)this.C(new TypeError("A Promise cannot resolve to itself"));else if(e instanceof b)this.V(e);else{a:switch(typeof e){case "object":var h=null!=e;break a;case "function":h=!0;break a;default:h=!1}h?this.S(e):this.I(e)}};
b.prototype.S=function(e){var h=void 0;try{h=e.then}catch(k){this.C(k);return}"function"==typeof h?this.W(h,e):this.I(e)};b.prototype.C=function(e){this.O(2,e)};b.prototype.I=function(e){this.O(1,e)};b.prototype.O=function(e,h){if(0!=this.l)throw Error("Cannot settle("+e+", "+h+"): Promise already settled in state"+this.l);this.l=e;this.m=h;2===this.l&&this.U();this.P()};b.prototype.U=function(){var e=this;f(function(){if(e.R()){var h=w.console;"undefined"!==typeof h&&h.error(e.m)}},1)};b.prototype.R=
function(){if(this.N)return!1;var e=w.CustomEvent,h=w.Event,k=w.dispatchEvent;if("undefined"===typeof k)return!0;"function"===typeof e?e=new e("unhandledrejection",{cancelable:!0}):"function"===typeof h?e=new h("unhandledrejection",{cancelable:!0}):(e=w.document.createEvent("CustomEvent"),e.initCustomEvent("unhandledrejection",!1,!0,e));e.promise=this;e.reason=this.m;return k(e)};b.prototype.P=function(){if(null!=this.h){for(var e=0;e<this.h.length;++e)g.l(this.h[e]);this.h=null}};var g=new c;b.prototype.V=
function(e){var h=this.A();e.K(h.resolve,h.reject)};b.prototype.W=function(e,h){var k=this.A();try{e.call(h,k.resolve,k.reject)}catch(l){k.reject(l)}};b.prototype.then=function(e,h){function k(n,q){return"function"==typeof n?function(r){try{l(n(r))}catch(t){m(t)}}:q}var l,m,p=new b(function(n,q){l=n;m=q});this.K(k(e,l),k(h,m));return p};b.prototype.catch=function(e){return this.then(void 0,e)};b.prototype.K=function(e,h){function k(){switch(l.l){case 1:e(l.m);break;case 2:h(l.m);break;default:throw Error("Unexpected state: "+
l.l);}}var l=this;null==this.h?g.l(k):this.h.push(k);this.N=!0};b.resolve=d;b.reject=function(e){return new b(function(h,k){k(e)})};b.race=function(e){return new b(function(h,k){for(var l=ea(e),m=l.next();!m.done;m=l.next())d(m.value).K(h,k)})};b.all=function(e){var h=ea(e),k=h.next();return k.done?d([]):new b(function(l,m){function p(r){return function(t){n[r]=t;q--;0==q&&l(n)}}var n=[],q=0;do n.push(void 0),q++,d(k.value).K(p(n.length-1),m),k=h.next();while(!k.done)})};return b});
var fa="function"==typeof Object.assign?Object.assign:function(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c];if(d)for(var f in d)Object.prototype.hasOwnProperty.call(d,f)&&(a[f]=d[f])}return a};x("Object.assign",function(a){return a||fa});function A(a){return"undefined"!==typeof a?a:!0}function ha(a){for(var b=Array(a),c=0;c<a;c++)b[c]=B();return b}function B(){return Object.create(null)}function ia(a,b){return b.length-a.length}function D(a){return"string"===typeof a}function E(a){return"object"===typeof a}function I(a){return"function"===typeof a};var ja=/[\u0300-\u036f]/g;function ka(a){a.normalize&&(a=a.normalize("NFD").replace(ja,""));return a}function la(a,b){for(var c=Object.keys(a),d=c.length,f=[],g="",e=0,h=0,k,l;h<d;h++)k=c[h],(l=a[k])?(f[e++]=J(b?"(?!\\b)"+k+"(\\b|_)":k),f[e++]=l):g+=(g?"|":"")+k;g&&(f[e++]=J(b?"(?!\\b)("+g+")(\\b|_)":"("+g+")"),f[e]="");return f}function K(a,b){for(var c=0,d=b.length;c<d&&(a=a.replace(b[c],b[c+1]),a);c+=2);return a}function J(a){return new RegExp(a,"g")}
function ma(a){for(var b="",c="",d=0,f=a.length,g=void 0;d<f;d++)(g=a[d])!==c&&(b+=c=g);return b};var oa={encode:na,F:!1,G:""},pa=/[\W_]+/;function na(a){return qa(this,ka(a).toLowerCase(),!1,pa)};var ra={},L={};function sa(a){M(a,"add");M(a,"append");M(a,"search");M(a,"update");M(a,"remove")}function M(a,b){a[b+"Async"]=function(){var c=this,d=arguments,f=d[d.length-1];if(I(f)){var g=f;delete d[d.length-1]}f=new Promise(function(e){setTimeout(function(){c.async=!0;var h=c[b].apply(c,d);c.async=!1;e(h)})});return g?(f.then(g),this):f}};function ta(a,b,c,d){for(var f=a.length,g=[],e,h,k,l,m=0;m<f;m++){for(var p=a[m],n=p.length,q=0,r=0,t;r<n;r++)(t=p[r])&&(q+=t.length);if(!h||q<h)h=q,k=p,l=m}k=1===k.length?k[0]:[].concat.apply([],k);d&&(d=[k],e=B());m=h=0;for(p=f-1;0<=p;p--)if(p!==l){m++;n=a[p];q=n.length;r=[];for(var z=t=0,y;z<k.length;z++){y=k[z];for(var C=void 0,G=0;G<q;G++){var H=n[G];if(H.length&&(C=-1!==H.indexOf(y))){if(m===f-1){if(c)c--;else if(g[h++]=y,h===b)return g;d&&(e[y]=1)}break}}C&&(r[t++]=y)}if(d)d[m]=r;else if(!t)return[];
k=r}if(d)for(a=d.length-1;0<=a;a--)if(k=(f=d[a])&&f.length)for(l=0;l<k;l++)if(m=f[l],!e[m])if(e[m]=1,c)c--;else if(g[h++]=m,h===b)return g;return g}function ua(a,b){for(var c=B(),d=B(),f=[],g=0;g<a.length;g++)c[a[g]]=1;for(a=0;a<b.length;a++){g=b[a];for(var e=0,h;e<g.length;e++)h=g[e],c[h]&&!d[h]&&(d[h]=1,f[f.length]=h)}return f};function N(a){this.l=!0!==a&&a;this.cache=B();this.h=[]}function va(a,b,c){E(a)&&(a=a.query);var d=this.cache.get(a);d||(d=this.search(a,b,c),this.cache.set(a,d));return d}N.prototype.set=function(a,b){if(!this.cache[a]){var c=this.h.length;c===this.l?delete this.cache[this.h[c-1]]:c++;for(--c;0<c;c--)this.h[c]=this.h[c-1];this.h[0]=a}this.cache[a]=b};N.prototype.get=function(a){var b=this.cache[a];if(this.l&&b&&(a=this.h.indexOf(a))){var c=this.h[a-1];this.h[a-1]=this.h[a];this.h[a]=c}return b};var wa={memory:{charset:"latin:extra",H:3,D:3,s:!1,B:"memory"},performance:{threshold:8,D:3,context:{depth:1,J:!0}},match:{charset:"latin:extra",G:"full",H:3},score:{charset:"latin:advanced",threshold:1,context:{depth:3,J:!0}},"default":{H:3,threshold:0,depth:3}};function xa(a,b,c,d,f,g){setTimeout(function(){var e=a(c,JSON.stringify(g));e&&e.then?e.then(function(){b.export(a,b,c,d,f+1)}):b.export(a,b,c,d,f+1)})};function O(a,b){if(!(this instanceof O))return new O(a);var c;if(a){D(a)?a=wa[a]:(c=a.preset)&&(a=Object.assign({},c[c],a));c=a.charset;var d=a.lang;D(c)&&(-1===c.indexOf(":")&&(c+=":default"),c=L[c]);D(d)&&(d=ra[d])}else a={};var f,g,e=a.context||{};this.encode=a.encode||c&&c.encode||na;this.register=b||B();this.H=f=a.resolution||9;this.G=b=c&&c.G||a.tokenize||"strict";this.depth="strict"===b&&e.depth;this.J=A(e.bidirectional);this.B=g=A(a.optimize);this.s=A(a.fastupdate);this.D=a.minlength||1;this.map=
g?ha(f):B();this.l=f=e.resolution||1;this.h=g?ha(f):B();this.F=c&&c.F||a.rtl;this.L=(b=a.matcher||d&&d.L)&&la(b,!1);this.M=(b=a.stemmer||d&&d.M)&&la(b,!0);if(c=b=a.filter||d&&d.filter){c=b;d=B();e=0;for(f=c.length;e<f;e++)d[c[e]]=1;c=d}this.filter=c;this.cache=(b=a.cache)&&new N(b)}
function qa(a,b,c,d){if(b&&(c&&(b=K(b,c)),a.L&&(b=K(b,a.L)),a.M&&1<b.length&&(b=K(b,a.M)),d||""===d)){b=b.split(d);if(a.filter){a=a.filter;c=b.length;d=[];for(var f=0,g=0;f<c;f++){var e=b[f];e&&!a[e]&&(d[g++]=e)}b=d}return b}return b}u=O.prototype;u.append=function(a,b){return this.add(a,b,!0)};
u.add=function(a,b,c,d){if(!d&&!c&&this.register[a])return this.update(a,b);if(b&&(a||0===a)&&(b=this.encode(b),d=b.length)){for(var f=this.depth,g=this.H,e=B(),h=B(),k=0;k<d;k++){var l=b[this.F?d-1-k:k],m=l.length;if(l&&m>=this.D&&(f||!e[l])){var p=d<g?k:g/d*k|0,n="";switch(this.G){case "full":if(3<m){for(p=0;p<m;p++)for(var q=m;q>p;q--)if(q-p>=this.D){var r=d+m<g?k+p:g/(d+m)*(k+p)|0;n=l.substring(p,q);P(this,e,n,r,a,c)}break}case "reverse":if(2<m){for(q=m-1;0<q;q--)n=l[q]+n,n.length>=this.D&&P(this,
e,n,d+m<g?k+q:g/(d+m)*(k+q)|0,a,c);n=""}case "forward":if(1<m)for(q=0;q<m;q++)n+=l[q],n.length>=this.D&&P(this,e,n,p,a,c);break;default:if(P(this,e,l,p,a,c),f&&1<d&&k<d-1)for(m=this.l,n=B(),p=l,q=Math.min(f+1,d-k),r=n[p]=1;r<q;r++)if((l=b[this.F?d-1-k-r:k+r])&&l.length>=this.D&&!n[l]){n[l]=1;var t=this.J&&l>p;P(this,h,t?p:l,q+d<m?k+(r-1):m/(q+d)*(k+r)|0,a,c,t?l:p)}}}}this.s||(this.register[a]=1)}return this};
function P(a,b,c,d,f,g,e){var h=e?a.h:a.map;if(!b[c]||e&&!b[c][e])a.B&&(h=h[d]),e?(b=b[c]||(b[c]=B()),b[e]=1,h=h[e]||(h[e]=B())):b[c]=1,h=h[c]||(h[c]=[]),a.B||(h=h[d]||(h[d]=[])),g&&-1!==h.indexOf(f)||(h[h.length]=f,a.s&&(a=a.register[f]||(a.register[f]=[]),a[a.length]=h))}
u.search=function(a,b,c){E(a)?(c=a,a=c.query):E(b)&&(c=b);var d=[],f=0;if(c){b=c.limit;f=c.offset||0;var g=c.context;var e=c.suggest}if(a){a=this.encode(a);var h=a.length;if(1<h){c=B();for(var k=[],l=0,m=0,p;l<h;l++)if((p=a[l])&&p.length>=this.D&&!c[p])if(this.B||e||this.map[p])k[m++]=p,c[p]=1;else return d;a=k;h=a.length}}if(!h)return d;b||(b=100);g=this.depth&&1<h&&!1!==g;c=0;if(g){var n=a[0];c=1}else 1<h&&a.sort(ia);for(;c<h;c++){l=a[c];g?(k=ya(this,d,e,b,f,2===h,l,n),e&&!1===k&&d.length||(n=l)):
k=ya(this,d,e,b,f,1===h,l);if(k)return k;if(e&&c===h-1){k=d.length;if(!k){if(g){g=0;c=-1;continue}return d}if(1===k)return za(d[0],b,f)}}return ta(d,b,f,e)};
function ya(a,b,c,d,f,g,e,h){var k=[],l=h?a.h:a.map;a.B||(l=Aa(l,e,h,a.J));if(l){for(var m=0,p=Math.min(l.length,h?a.l:a.H),n=0,q=0,r,t;n<p;n++)if(r=l[n])if(a.B&&(r=Aa(r,e,h,a.J)),f&&r&&g&&(t=r.length,t<=f?(f-=t,r=null):(r=r.slice(f),f=0)),r&&(k[m++]=r,g&&(q+=r.length,q>=d)))break;if(m){if(g)return za(k,d,0);b[b.length]=k;return}}return!c&&k}function za(a,b,c){a=1===a.length?a[0]:[].concat.apply([],a);return c||a.length>b?a.slice(c,c+b):a}
function Aa(a,b,c,d){c?(d=d&&b>c,a=(a=a[d?b:c])&&a[d?c:b]):a=a[b];return a}u.contain=function(a){return!!this.register[a]};u.update=function(a,b){return this.remove(a).add(a,b)};
u.remove=function(a,b){var c=this.register[a];if(c){if(this.s)for(var d=0,f;d<c.length;d++)f=c[d],f.splice(f.indexOf(a),1);else Q(this.map,a,this.H,this.B),this.depth&&Q(this.h,a,this.l,this.B);b||delete this.register[a];if(this.cache)for(b=this.cache,c=0;c<b.h.length;c++)f=b.h[c],d=b.cache[f],-1!==d.indexOf(a)&&(b.h.splice(c--,1),delete b.cache[f])}return this};
function Q(a,b,c,d,f){var g=0;if(a.constructor===Array)if(f)b=a.indexOf(b),-1!==b?1<a.length&&(a.splice(b,1),g++):g++;else{f=Math.min(a.length,c);for(var e=0,h;e<f;e++)if(h=a[e])g=Q(h,b,c,d,f),d||g||delete a[e]}else for(e in a)(g=Q(a[e],b,c,d,f))||delete a[e];return g}u.searchCache=va;
u.export=function(a,b,c,d,f){switch(f||(f=0)){case 0:var g="reg";if(this.s){var e=B();for(var h in this.register)e[h]=1}else e=this.register;break;case 1:g="cfg";e={doc:0,opt:this.B?1:0};break;case 2:g="map";e=this.map;break;case 3:g="ctx";e=this.h;break;default:return}xa(a,b||this,c?c+"."+g:g,d,f,e);return!0};u.import=function(a,b){if(b)switch(D(b)&&(b=JSON.parse(b)),a){case "cfg":this.B=!!b.opt;break;case "reg":this.s=!1;this.register=b;break;case "map":this.map=b;break;case "ctx":this.h=b}};sa(O.prototype);function Ba(a){a=a.data;var b=self._index,c=a.args,d=a.task;switch(d){case "init":d=a.options||{};a=a.factory;b=d.encode;d.cache=!1;b&&0===b.indexOf("function")&&(d.encode=Function("return "+b)());a?(Function("return "+a)()(self),self._index=new self.FlexSearch.Index(d),delete self.FlexSearch):self._index=new O(d);break;default:a=a.id,b=b[d].apply(b,c),postMessage("search"===d?{id:a,msg:b}:{id:a})}};var Ca=0;function R(a){var b;a?I(b=a.encode)&&(a.encode=b.toString()):a={};(b=(self||window)._factory)&&(b=b.toString());var c=self.exports,d=this;this.o=Da(b,c,a.worker);this.h=B();if(this.o){if(c)this.o.on("message",function(f){d.h[f.id](f.msg);delete d.h[f.id]});else this.o.onmessage=function(f){f=f.data;d.h[f.id](f.msg);delete d.h[f.id]};this.o.postMessage({task:"init",factory:b,options:a})}}S("add");S("append");S("search");S("update");S("remove");
function S(a){R.prototype[a]=R.prototype[a+"Async"]=function(){var b=this,c=[].slice.call(arguments),d=c[c.length-1];if(I(d)){var f=d;c.splice(c.length-1,1)}d=new Promise(function(g){setTimeout(function(){b.h[++Ca]=g;b.o.postMessage({task:a,id:Ca,args:c})})});return f?(d.then(f),this):d}}
function Da(a,b,c){try{var d=b?eval('new (require("worker_threads")["Worker"])("../dist/node/node.js")'):a?new Worker(URL.createObjectURL(new Blob(["onmessage="+Ba.toString()],{type:"text/javascript"}))):new Worker(D(c)?c:"worker/worker.js",{type:"module"})}catch(f){}return d};function T(a){if(!(this instanceof T))return new T(a);var b=a.document||a.doc||a,c;this.I=[];this.h=[];this.m=[];this.register=B();this.key=(c=b.key||b.id)&&U(c,this.m)||"id";this.s=A(a.fastupdate);this.A=(c=b.store)&&!0!==c&&[];this.store=c&&B();this.C=(c=b.tag)&&U(c,this.m);this.l=c&&B();this.cache=(c=a.cache)&&new N(c);a.cache=!1;this.o=a.worker;this.async=!1;c=B();var d=b.index||b.field||b;D(d)&&(d=[d]);for(var f=0,g,e=void 0;f<d.length;f++)g=d[f],D(g)||(e=g,g=g.field),e=E(e)?Object.assign({},
a,e):a,this.o&&(c[g]=new R(e),c[g].o||(this.o=!1)),this.o||(c[g]=new O(e,this.register)),this.I[f]=U(g,this.m),this.h[f]=g;if(this.A)for(a=b.store,D(a)&&(a=[a]),b=0;b<a.length;b++)this.A[b]=U(a[b],this.m);this.index=c}function U(a,b){for(var c=a.split(":"),d=0,f=0;f<c.length;f++)a=c[f],0<=a.indexOf("[]")&&(a=a.substring(0,a.length-2))&&(b[d]=!0),a&&(c[d++]=a);d<c.length&&(c.length=d);return 1<d?c:c[0]}function V(a,b){if(D(b))a=a[b];else for(var c=0;a&&c<b.length;c++)a=a[b[c]];return a}
function W(a,b,c,d,f){a=a[f];if(d===c.length-1)b[f]=a;else if(a)if(a.constructor===Array)for(b=b[f]=Array(a.length),f=0;f<a.length;f++)W(a,b,c,d,f);else b=b[f]||(b[f]=B()),f=c[++d],W(a,b,c,d,f)}function X(a,b,c,d,f,g,e,h){a=a[e];if(d===b.length-1){if(a.constructor===Array){if(c[d]){for(b=0;b<a.length;b++)f.add(g,a[b],!0,!0);return}a=a.join(" ")}f.add(g,a,h,!0)}else if(a)if(a.constructor===Array)for(e=0;e<a.length;e++)X(a,b,c,d,f,g,e,h);else e=b[++d],X(a,b,c,d,f,g,e,h)}u=T.prototype;
u.add=function(a,b,c){E(a)&&(b=a,a=V(b,this.key));if(b&&(a||0===a)){if(this.register[a])return this.update(a,b);for(var d=0,f,g;d<this.h.length;d++)g=this.h[d],f=this.I[d],D(f)&&(f=[f]),X(b,f,this.m,0,this.index[g],a,f[0],c);if(this.C){d=V(b,this.C);f=B();D(d)&&(d=[d]);g=0;for(var e;g<d.length;g++)if(e=d[g],!f[e]&&(f[e]=1,e=this.l[e]||(this.l[e]=[]),!c||-1===e.indexOf(a)))if(e[e.length]=a,this.s){var h=this.register[a]||(this.register[a]=[]);h[h.length]=e}}if(this.store){if(this.A){var k=B();for(c=
0;c<this.A.length;c++)d=this.A[c],D(d)?k[d]=b[d]:W(b,k,d,0,d[0])}this.store[a]=k||b}}return this};u.append=function(a,b){return this.add(a,b,!0)};u.update=function(a,b){return this.remove(a).add(a,b)};
u.remove=function(a){E(a)&&(a=V(a,this.key));if(this.register[a]){for(var b=this.s&&!this.o,c=0;c<this.h.length&&(this.index[this.h[c]].remove(a,b),!b);c++);if(this.C&&!b)for(var d in this.l)b=this.l[d],c=b.indexOf(a),-1!==c&&(1<b.length?b.splice(c,1):delete this.l[d]);this.store&&delete this.store[a];delete this.register[a]}return this};
u.search=function(a,b,c,d){E(a)?(c=a,a=c.query):E(b)&&(c=b,b=0);var f=[],g=[],e,h=0;if(c)if(c.constructor===Array){var k=c;c=null}else{k=(e=c.pluck)||c.index||c.field||c;var l=c.tag;var m=this.store&&c.enrich;var p="and"===c.bool;b=c.limit||100;var n=c.offset||0;if(l&&(D(l)&&(l=[l]),!a)){g=0;for(e=void 0;g<l.length;g++)if(e=Ea.call(this,l[g],b,n,m))f[f.length]=e,h++;return h?f:[]}D(k)?k=[k]:k.constructor===Array||(k=null)}k||(k=this.h);p=p&&(1<k.length||l&&1<l.length);for(var q=!d&&(this.o||this.async)&&
[],r=0,t=void 0,z=void 0,y=void 0;r<k.length;r++)if(y=void 0,z=k[r],D(z)||(y=z,z=z.field),q)q[r]=this.index[z].searchAsync(a,b,y||c);else{d?t=d[r]:t=this.index[z].search(a,b,y||c);y=t&&t.length;if(l&&y){var C=[],G=0;p&&(C[0]=[t]);var H=0,F=void 0;for(F=void 0;H<l.length;H++)if(F=l[H],y=(F=this.l[F])&&F.length)G++,C[C.length]=p?[F]:F;G&&(t=p?ta(C,b||100,n||0):ua(t,C),y=t.length)}if(y)g[h]=z,f[h++]=t;else if(p)return[]}if(q){var La=this;return new Promise(function(Ma){Promise.all(q).then(function(Na){Ma(La.search(a,
b,c,Na))})})}if(!h)return[];if(e&&(!m||!this.store))return f[0];l=0;for(n=void 0;l<g.length;l++){n=f[l];n.length&&m&&(n=Fa.call(this,n));if(e)return n;f[l]={field:g[l],result:n}}return f};function Ea(a,b,c,d){var f=this.l[a],g=f&&f.length-c;if(g&&0<g){if(g>b||c)f=f.slice(c,c+b);d&&(f=Fa.call(this,f));return{tag:a,result:f}}}function Fa(a){for(var b=Array(a.length),c=0,d;c<a.length;c++)d=a[c],b[c]={key:d,doc:this.store[d]};return b}u.contain=function(a){return!!this.register[a]};u.get=function(a){return this.store[a]};
u.set=function(a,b){this.store[a]=b;return this};u.searchCache=va;u.export=function(a,b,c,d,f){f||(f=0);d||(d=0);if(d<this.h.length){var g=this.h[d],e=this.index[g];b=this;setTimeout(function(){e.export(a,b,f?g.replace(":","-"):"",d,f++)||(d++,f=1,b.export(a,b,g,d,f))})}else{switch(f){case 1:c="tag";var h=this.l;break;case 2:c="store";h=this.store;break;default:return}xa(a,this,c,d,f,h)}};
u.import=function(a,b){if(b)switch(D(b)&&(b=JSON.parse(b)),a){case "tag":this.l=b;break;case "reg":this.s=!1;this.register=b;a=0;for(var c;a<this.h.length;a++)c=this.index[this.h[a]],c.register=b,c.s=!1;break;case "store":this.store=b;break;default:a=a.split("."),c=a[0],a=a[1],c&&a&&this.index[c].import(a,b)}};sa(T.prototype);var Ha={encode:Ga,F:!1,G:""},Ia=/[\W_]+/,Ja=[J("[\u00e0\u00e1\u00e2\u00e3\u00e4\u00e5]"),"a",J("[\u00e8\u00e9\u00ea\u00eb]"),"e",J("[\u00ec\u00ed\u00ee\u00ef]"),"i",J("[\u00f2\u00f3\u00f4\u00f5\u00f6\u0151]"),"o",J("[\u00f9\u00fa\u00fb\u00fc\u0171]"),"u",J("[\u00fd\u0177\u00ff]"),"y",J("\u00f1"),"n",J("[\u00e7c]"),"k",J("\u00df"),"s",J(" & ")," and "];function Ga(a){return qa(this,ka(a).toLowerCase(),!a.normalize&&Ja,Ia)};var Oa={encode:Ka,F:!1,G:"strict"},Pa=/[^a-z0-9]+/,Qa={b:"p",v:"f",w:"f",z:"s",x:"s","\u00df":"s",d:"t",n:"m",c:"k",g:"k",j:"k",q:"k",i:"e",y:"e",u:"o"};function Ka(a){a=Ga.call(this,a).join(" ");var b=[];if(a)for(var c=a.split(Pa),d=c.length,f=0,g,e=0;f<d;f++)if((a=c[f])&&(!this.filter||!this.filter[a])){g=a[0];for(var h=Qa[g]||g,k=h,l=1;l<a.length;l++)g=a[l],(g=Qa[g]||g)&&g!==k&&(h+=g,k=g);b[e++]=h}return b};var Sa={encode:Ra,F:!1,G:""},Ta=[J("ae"),"a",J("oe"),"o",J("sh"),"s",J("th"),"t",J("ph"),"f",J("pf"),"f"];function Ra(a,b){a&&(a=Ka.call(this,a).join(" "),2<a.length&&(a=K(a,Ta)),b||(1<a.length&&(a=ma(a)),a&&(a=a.split(" "))));return a};var Va={encode:Ua,F:!1,G:""},Wa=J("(?!\\b)[aeiouy]");function Ua(a){a&&(a=Ra.call(this,a,!0),1<a.length&&(a=a.replace(Wa,"")),1<a.length&&(a=ma(a)),a&&(a=a.split(" ")));return a};L["latin:default"]=oa;L["latin:simple"]=Ha;L["latin:balance"]=Oa;L["latin:advanced"]=Sa;L["latin:extra"]=Va;var Y=self,Z,Xa={Index:O,Document:T,Worker:R,registerCharset:function(a,b){L[a]=b},registerLanguage:function(a,b){ra[a]=b}};(Z=Y.define)&&Z.amd?Z([],function(){return Xa}):Y.exports?Y.exports=Xa:Y.FlexSearch=Xa;}(this));