forked from nextapps-de/flexsearch
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathflexsearch.es5.js
50 lines (50 loc) · 20.8 KB
/
flexsearch.es5.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
/*
FlexSearch v0.6.22
Copyright 2019 Nextapps GmbH
Author: Thomas Wilkerling
Released under the Apache 2.0 Licence
https://github.com/nextapps-de/flexsearch
*/
'use strict';function ma(n){var q=0;return function(){return q<n.length?{done:!1,value:n[q++]}:{done:!0}}}var na="function"==typeof Object.defineProperties?Object.defineProperty:function(n,q,p){n!=Array.prototype&&n!=Object.prototype&&(n[q]=p.value)},Z="undefined"!=typeof window&&window===this?this:"undefined"!=typeof global&&null!=global?global:this;function pa(){pa=function(){};Z.Symbol||(Z.Symbol=qa)}function ra(n,q){this.b=n;na(this,"description",{configurable:!0,writable:!0,value:q})}
ra.prototype.toString=function(){return this.b};var qa=function(){function n(p){if(this instanceof n)throw new TypeError("Symbol is not a constructor");return new ra("jscomp_symbol_"+(p||"")+"_"+q++,p)}var q=0;return n}();function sa(){pa();var n=Z.Symbol.iterator;n||(n=Z.Symbol.iterator=Z.Symbol("Symbol.iterator"));"function"!=typeof Array.prototype[n]&&na(Array.prototype,n,{configurable:!0,writable:!0,value:function(){return ta(ma(this))}});sa=function(){}}
function ta(n){sa();n={next:n};n[Z.Symbol.iterator]=function(){return this};return n}function za(n,q){sa();n instanceof String&&(n+="");var p=0,D={next:function(){if(p<n.length){var I=p++;return{value:q(I,n[I]),done:!1}}D.next=function(){return{done:!0,value:void 0}};return D.next()}};D[Symbol.iterator]=function(){return D};return D}
function Aa(n,q){if(q){var p=Z;n=n.split(".");for(var D=0;D<n.length-1;D++){var I=n[D];I in p||(p[I]={});p=p[I]}n=n[n.length-1];D=p[n];q=q(D);q!=D&&null!=q&&na(p,n,{configurable:!0,writable:!0,value:q})}}Aa("Array.prototype.keys",function(n){return n?n:function(){return za(this,function(q){return q})}});function Ba(n){var q="undefined"!=typeof Symbol&&Symbol.iterator&&n[Symbol.iterator];return q?q.call(n):{next:ma(n)}}
Aa("Promise",function(n){function q(m){this.h=0;this.o=void 0;this.b=[];var v=this.j();try{m(v.resolve,v.reject)}catch(l){v.reject(l)}}function p(){this.b=null}function D(m){return m instanceof q?m:new q(function(v){v(m)})}if(n)return n;p.prototype.h=function(m){if(null==this.b){this.b=[];var v=this;this.j(function(){v.o()})}this.b.push(m)};var I=Z.setTimeout;p.prototype.j=function(m){I(m,0)};p.prototype.o=function(){for(;this.b&&this.b.length;){var m=this.b;this.b=[];for(var v=0;v<m.length;++v){var l=
m[v];m[v]=null;try{l()}catch(E){this.l(E)}}}this.b=null};p.prototype.l=function(m){this.j(function(){throw m;})};q.prototype.j=function(){function m(E){return function(H){l||(l=!0,E.call(v,H))}}var v=this,l=!1;return{resolve:m(this.L),reject:m(this.l)}};q.prototype.L=function(m){if(m===this)this.l(new TypeError("A Promise cannot resolve to itself"));else if(m instanceof q)this.M(m);else{a:switch(typeof m){case "object":var v=null!=m;break a;case "function":v=!0;break a;default:v=!1}v?this.K(m):this.w(m)}};
q.prototype.K=function(m){var v=void 0;try{v=m.then}catch(l){this.l(l);return}"function"==typeof v?this.N(v,m):this.w(m)};q.prototype.l=function(m){this.B(2,m)};q.prototype.w=function(m){this.B(1,m)};q.prototype.B=function(m,v){if(0!=this.h)throw Error("Cannot settle("+m+", "+v+"): Promise already settled in state"+this.h);this.h=m;this.o=v;this.I()};q.prototype.I=function(){if(null!=this.b){for(var m=0;m<this.b.length;++m)ba.h(this.b[m]);this.b=null}};var ba=new p;q.prototype.M=function(m){var v=
this.j();m.F(v.resolve,v.reject)};q.prototype.N=function(m,v){var l=this.j();try{m.call(v,l.resolve,l.reject)}catch(E){l.reject(E)}};q.prototype.then=function(m,v){function l(K,V){return"function"==typeof K?function(ja){try{E(K(ja))}catch(ka){H(ka)}}:V}var E,H,ca=new q(function(K,V){E=K;H=V});this.F(l(m,E),l(v,H));return ca};q.prototype.catch=function(m){return this.then(void 0,m)};q.prototype.F=function(m,v){function l(){switch(E.h){case 1:m(E.o);break;case 2:v(E.o);break;default:throw Error("Unexpected state: "+
E.h);}}var E=this;null==this.b?ba.h(l):this.b.push(l)};q.resolve=D;q.reject=function(m){return new q(function(v,l){l(m)})};q.race=function(m){return new q(function(v,l){for(var E=Ba(m),H=E.next();!H.done;H=E.next())D(H.value).F(v,l)})};q.all=function(m){var v=Ba(m),l=v.next();return l.done?D([]):new q(function(E,H){function ca(ja){return function(ka){K[ja]=ka;V--;0==V&&E(K)}}var K=[],V=0;do K.push(void 0),V++,D(l.value).F(ca(K.length-1),H),l=v.next();while(!l.done)})};return q});
(function(n,q,p){var D;(D=p.define)&&D.amd?D([],function(){return q}):(D=p.modules)?D[n.toLowerCase()]=q:"object"===typeof exports?module.exports=q:p[n]=q})("FlexSearch",function Ca(n){function p(a,b){var c=b?b.id:a&&a.id;this.id=c||0===c?c:Da++;this.init(a,b);v(this,"index",function(){return this.a?Object.keys(this.a.index[this.a.keys[0]].f):Object.keys(this.f)});v(this,"length",function(){return this.index.length})}function D(a,b,c,d){this.D!==this.i&&(this.A=this.A.concat(c),this.D++,d&&this.A.length>=
d&&(this.D=this.i),this.D===this.i&&(this.cache&&this.v.set(b,this.A),this.H&&this.H(this.A)));return this}function I(a){var b=G(),c;for(c in a)if(a.hasOwnProperty(c)){var d=a[c];b[c]=N(d)?d.slice(0):U(d)?I(d):d}return b}function ba(a,b){for(var c=a.length,d=da(b),e=[],f=0,g=0;f<c;f++){var h=a[f];if(d&&b(h)||!d&&!b[h])e[g++]=h}return e}function m(a,b,c,d,e,f,g,h,k,t){c=ua(c,g?0:e,h,f,b,k,t);if(h){h=c.page;var y=c.next;c=c.result}if(g)b=this.where(g,null,e,c);else{b=c;c=this.m;e=b.length;f=Array(e);
for(g=0;g<e;g++)f[g]=c[b[g]];b=f}c=b;d&&(da(d)||(W=d.split(":"),1<W.length?d=ka:(W=W[0],d=ja)),c.sort(d));c=fa(h,y,c);this.cache&&this.v.set(a,c);return c}function v(a,b,c){Object.defineProperty(a,b,{get:c})}function l(a){return new RegExp(a,"g")}function E(a,b){for(var c=0;c<b.length;c+=2)a=a.replace(b[c],b[c+1]);return a}function H(a,b,c,d,e,f,g,h){if(b[c])return b[c];e=e?(h-(g||h/1.5))*f+(g||h/1.5)*e:f;b[c]=e;e>=g&&(a=a[h-(e+.5>>0)],a=a[c]||(a[c]=[]),a[a.length]=d);return e}function ca(a,b){if(a)for(var c=
Object.keys(a),d=0,e=c.length;d<e;d++){var f=c[d],g=a[f];if(g)for(var h=0,k=g.length;h<k;h++)if(g[h]===b){1===k?delete a[f]:g.splice(h,1);break}else U(g[h])&&ca(g[h],b)}}function K(a){for(var b="",c="",d="",e=0;e<a.length;e++){var f=a[e];if(f!==c)if(e&&"h"===f){if(d="a"===d||"e"===d||"i"===d||"o"===d||"u"===d||"y"===d,("a"===c||"e"===c||"i"===c||"o"===c||"u"===c||"y"===c)&&d||" "===c)b+=f}else b+=f;d=e===a.length-1?"":a[e+1];c=f}return b}function V(a,b){a=a.length-b.length;return 0>a?1:a?-1:0}function ja(a,
b){a=a[W];b=b[W];return a<b?-1:a>b?1:0}function ka(a,b){for(var c=W.length,d=0;d<c;d++)a=a[W[d]],b=b[W[d]];return a<b?-1:a>b?1:0}function fa(a,b,c){return a?{page:a,next:b?""+b:null,result:c}:c}function ua(a,b,c,d,e,f,g){var h=[];if(!0===c){c="0";var k=""}else k=c&&c.split(":");var t=a.length;if(1<t){var y=G(),w=[],A,r=0,u,F=!0,z=0,C;if(k)if(2===k.length){var x=k;k=!1}else k=C=parseInt(k[0],10);if(g){for(A=G();r<t;r++)if("not"===e[r]){var B=a[r];var J=B.length;for(u=0;u<J;u++)A["@"+B[u]]=1}else var P=
r+1;if(Q(P))return fa(c,R,h);r=0}else var Y=X(e)&&e;for(var ha;r<t;r++){var L=r===(P||t)-1;if(!Y||!r)if((u=Y||e&&e[r])&&"and"!==u)if("or"===u)ha=!1;else continue;else ha=f=!0;B=a[r];if(J=B.length){if(F)if(S){var M=S.length;for(u=0;u<M;u++){F=S[u];var aa="@"+F;g&&A[aa]||(y[aa]=1,f||(h[z++]=F))}var S=null;F=!1}else{S=B;continue}aa=!1;for(u=0;u<J;u++){M=B[u];var T="@"+M,ea=f?y[T]||0:r;if(!(!ea&&!d||g&&A[T]||!f&&y[T]))if(ea===r){if(L){if(!C||--C<z)if(h[z++]=M,b&&z===b)return fa(c,z+(k||0),h)}else y[T]=
r+1;aa=!0}else d&&(T=w[ea]||(w[ea]=[]),T[T.length]=M)}if(ha&&!aa&&!d)break}else if(ha&&!d)return fa(c,R,B)}if(S)if(r=S.length,g)for(u=k?parseInt(k,10):0;u<r;u++)a=S[u],A["@"+a]||(h[z++]=a);else h=S;if(d)for(z=h.length,x?(r=parseInt(x[0],10)+1,u=parseInt(x[1],10)+1):(r=w.length,u=0);r--;)if(M=w[r]){for(J=M.length;u<J;u++)if(d=M[u],!g||!A["@"+d])if(h[z++]=d,b&&z===b)return fa(c,r+":"+u,h);u=0}}else!t||e&&"not"===e[0]||(h=a[0],k&&(k=parseInt(k[0],10)));if(b){g=h.length;k&&k>g&&(k=0);k=k||0;var R=k+b;
R<g?h=h.slice(k,R):(R=0,k&&(h=h.slice(k)))}return fa(c,R,h)}function X(a){return"string"===typeof a}function N(a){return a.constructor===Array}function da(a){return"function"===typeof a}function U(a){return"object"===typeof a}function Q(a){return"undefined"===typeof a}function va(a){for(var b=Array(a),c=0;c<a;c++)b[c]=G();return b}function G(){return Object.create(null)}function Ea(){var a,b;self.onmessage=function(c){if(c=c.data)if(c.search){var d=b.search(c.content,c.threshold?{limit:c.limit,threshold:c.threshold,
where:c.where}:c.limit);self.postMessage({id:a,content:c.content,limit:c.limit,result:d})}else c.add?b.add(c.id,c.content):c.update?b.update(c.id,c.content):c.remove?b.remove(c.id):c.clear?b.clear():c.info?(c=b.info(),c.worker=a,console.log(c)):c.register&&(a=c.id,c.options.cache=!1,c.options.async=!1,c.options.worker=!1,b=(new Function(c.register.substring(c.register.indexOf("{")+1,c.register.lastIndexOf("}"))))(),b=new b(c.options))}}function Fa(a,b,c,d){a=n("flexsearch","id"+a,Ea,function(f){(f=
f.data)&&f.result&&d(f.id,f.content,f.result,f.limit,f.where,f.cursor,f.suggest)},b);var e=Ca.toString();c.id=b;a.postMessage({register:e,options:c,id:b});return a}var O={encode:"icase",g:"forward",split:/\W+/,cache:!1,async:!1,i:!1,G:!1,a:!1,c:9,threshold:0,depth:0},wa={memory:{encode:"extra",g:"strict",threshold:0,c:1},speed:{encode:"icase",g:"strict",threshold:1,c:3,depth:2},match:{encode:"extra",g:"full",threshold:1,c:3},score:{encode:"extra",g:"strict",threshold:1,c:9,depth:4},balance:{encode:"balance",
g:"strict",threshold:0,c:3,depth:3},fast:{encode:"icase",g:"strict",threshold:8,c:9,depth:1}},la=[],Da=0,xa={},ya={};p.create=function(a,b){return new p(a,b)};p.registerMatcher=function(a){for(var b in a)a.hasOwnProperty(b)&&la.push(l(b),a[b]);return this};p.registerEncoder=function(a,b){ia[a]=b.bind(ia);return this};p.registerLanguage=function(a,b){xa[a]=b.filter;ya[a]=b.stemmer;return this};p.encode=function(a,b){return ia[a](b)};p.prototype.init=function(a,b){this.h=[];if(b){var c=b.preset;a=b}else a||
(a=O),c=a.preset;b={};X(a)?((b=wa[a])||console.warn("Preset not found: "+a),a={}):c&&((b=wa[c])||console.warn("Preset not found: "+c));if(c=a.worker)if("undefined"===typeof Worker)a.worker=!1,this.b=null;else{var d=parseInt(c,10)||4;this.w=-1;this.D=0;this.A=[];this.H=null;this.b=Array(d);for(var e=0;e<d;e++)this.b[e]=Fa(this.id,e,a,D.bind(this))}this.g=a.tokenize||b.g||this.g||O.g;this.split=a.split||this.split||O.split;this.G=a.rtl||this.G||O.G;this.async="undefined"===typeof Promise||Q(c=a.async)?
this.async||O.async:c;this.i=Q(c=a.worker)?this.i||O.i:c;this.threshold=Q(c=a.threshold)?b.threshold||this.threshold||O.threshold:c;this.c=Q(c=a.resolution)?c=b.c||this.c||O.c:c;c<=this.threshold&&(this.c=this.threshold+1);this.depth="strict"!==this.g||Q(c=a.depth)?b.depth||this.depth||O.depth:c;this.j=(c=Q(c=a.encode)?b.encode||O.encode:c)&&ia[c]&&ia[c].bind(ia)||(da(c)?c:this.j||!1);(c=a.matcher)&&this.addMatcher(c);if(c=(b=a.lang)||a.filter){X(c)&&(c=xa[c]);if(N(c)){d=this.j;e=G();for(var f=0;f<
c.length;f++){var g=d?d(c[f]):c[f];e[g]=1}c=e}this.filter=c}if(c=b||a.stemmer){b=X(c)?ya[c]:c;d=this.j;e=[];for(var h in b)b.hasOwnProperty(h)&&(f=d?d(h):h,e.push(l(f+"($|\\W)"),d?d(b[h]):b[h]));this.stemmer=e}this.a=e=(c=a.doc)?I(c):this.a||O.a;this.u=va(this.c-(this.threshold||0));this.s=G();this.f=G();if(e){this.m=G();a.doc=null;h=e.index={};b=e.keys=[];d=e.field;f=e.tag;N(e.id)||(e.id=e.id.split(":"));if(f){this.B=G();g=G();if(d)if(X(d))g[d]=a;else if(N(d))for(var k=0;k<d.length;k++)g[d[k]]=a;
else U(d)&&(g=d);N(f)||(e.tag=f=[f]);for(d=0;d<f.length;d++)this.B[f[d]]=G();this.I=f;d=g}if(d){if(!N(d))if(U(d)){var t=d;e.field=d=Object.keys(d)}else e.field=d=[d];for(e=0;e<d.length;e++)f=d[e],N(f)||(t&&(a=t[f]),b[e]=f,d[e]=f.split(":")),h[f]=new p(a),h[f].m=this.m}}this.o=!0;this.v=(this.cache=c=Q(c=a.cache)?this.cache||O.cache:c)?new Ga(c):!1;return this};p.prototype.encode=function(a){a&&la.length&&(a=E(a,la));a&&this.h.length&&(a=E(a,this.h));a&&this.j&&(a=this.j(a));a&&this.stemmer&&(a=E(a,
this.stemmer));return a};p.prototype.addMatcher=function(a){var b=this.h,c;for(c in a)a.hasOwnProperty(c)&&b.push(l(c),a[c]);return this};p.prototype.add=function(a,b,c,d,e){if(this.a&&U(a))return this.l("add",a,b);if(b&&X(b)&&(a||0===a)){var f="@"+a;if(this.f[f]&&!d)return this.update(a,b);if(this.i)return++this.w>=this.b.length&&(this.w=0),this.b[this.w].postMessage({add:!0,id:a,content:b}),this.f[f]=""+this.w,c&&c(),this;if(!e){if(this.async&&"function"!==typeof importScripts){var g=this;f=new Promise(function(Y){setTimeout(function(){g.add(a,
b,null,d,!0);g=null;Y()})});if(c)f.then(c);else return f;return this}if(c)return this.add(a,b,null,d,!0),c(),this}b=this.encode(b);if(!b.length)return this;c=this.g;e=da(c)?c(b):b.split(this.split);this.filter&&(e=ba(e,this.filter));var h=G();h._ctx=G();for(var k=e.length,t=this.threshold,y=this.depth,w=this.c,A=this.u,r=this.G,u=0;u<k;u++){var F=e[u];if(F){var z=F.length,C=(r?u+1:k-u)/k,x="";switch(c){case "reverse":case "both":for(var B=z;--B;)x=F[B]+x,H(A,h,x,a,r?1:(z-B)/z,C,t,w-1);x="";case "forward":for(B=
0;B<z;B++)x+=F[B],H(A,h,x,a,r?(B+1)/z:1,C,t,w-1);break;case "full":for(B=0;B<z;B++)for(var J=(r?B+1:z-B)/z,P=z;P>B;P--)x=F.substring(B,P),H(A,h,x,a,J,C,t,w-1);break;default:if(z=H(A,h,F,a,1,C,t,w-1),y&&1<k&&z>=t)for(z=h._ctx[F]||(h._ctx[F]=G()),F=this.s[F]||(this.s[F]=va(w-(t||0))),C=u-y,x=u+y+1,0>C&&(C=0),x>k&&(x=k);C<x;C++)C!==u&&H(F,z,e[C],a,0,w-(C<u?u-C:C-u),t,w-1)}}}this.f[f]=1;this.o=!1}return this};p.prototype.l=function(a,b,c){if(N(b))for(var d=0,e=b.length;d<e;d++){if(d===e-1)return this.l(a,
b[d],c);this.l(a,b[d])}else{d=this.a.index;e=this.a.keys;for(var f=this.a.tag,g=this.a.id,h,k,t,y,w=0;w<g.length;w++)h=(h||b)[g[w]];if(f){for(g=0;g<f.length;g++){t=f[g];k=t.split(":");for(w=0;w<k.length;w++)y=(y||b)[k[w]];y="@"+y}k=this.B[t];k=k[y]||(k[y]=[])}if("remove"===a)for(delete this.m[h],g=0,f=e.length;g<f;g++){if(g===f-1)return d[e[g]].remove(h,c),this;d[e[g]].remove(h)}g=this.a.field;k&&(k[k.length]=b);this.m[h]=b;f=0;for(t=g.length;f<t;f++){k=g[f];y=void 0;for(w=0;w<k.length;w++)y=(y||
b)[k[w]];k=d[e[f]];w="add"===a?k.add:k.update;f===t-1?w.call(k,h,y,c):w.call(k,h,y)}}return this};p.prototype.update=function(a,b,c){if(this.a&&U(a))return this.l("update",a,b);this.f["@"+a]&&X(b)&&(this.remove(a),this.add(a,b,c,!0));return this};p.prototype.remove=function(a,b,c){if(this.a&&U(a))return this.l("remove",a,b);var d="@"+a;if(this.f[d]){if(this.i)return this.b[this.f[d]].postMessage({remove:!0,id:a}),delete this.f[d],b&&b(),this;if(!c){if(this.async&&"function"!==typeof importScripts){var e=
this;d=new Promise(function(f){setTimeout(function(){e.remove(a,null,!0);e=null;f()})});if(b)d.then(b);else return d;return this}if(b)return this.remove(a,null,!0),b(),this}for(b=0;b<this.c-(this.threshold||0);b++)ca(this.u[b],a);this.depth&&ca(this.s,a);delete this.f[d];this.o=!1}return this};var W;p.prototype.search=function(a,b,c,d){if(U(b)){if(N(b))for(var e=0;e<b.length;e++)b[e].query=a;else b.query=a;a=b;b=1E3}else b&&da(b)?(c=b,b=1E3):b||0===b||(b=1E3);var f=[],g=a;if(U(a)&&!N(a)){c||(c=a.callback)&&
(g.callback=null);var h=a.sort;var k=a.page;b=a.limit;var t=a.threshold;var y=a.suggest;a=a.query}if(this.a){t=this.a.index;var w=g.where,A=g.bool||"or",r=g.field,u=A,F,z;if(r)N(r)||(r=[r]);else if(N(g)){var C=g;r=[];u=[];for(var x=0;x<g.length;x++)d=g[x],e=d.bool||A,r[x]=d.field,u[x]=e,"not"===e?F=!0:"and"===e&&(z=!0)}else r=this.a.keys;A=r.length;for(x=0;x<A;x++)C&&(g=C[x]),k&&!X(g)&&(g.page=null,g.limit=0),f[x]=t[r[x]].search(g,0);if(this.i){this.H=c;this.D=0;this.A=[];for(t=0;t<this.i;t++)this.b[t].postMessage({search:!0,
limit:b,content:g});return}if(c)return c(m.call(this,a,u,f,h,b,y,w,k,z,F));if(this.async){var B=this;return new Promise(function(oa){Promise.all(f).then(function(Ha){oa(m.call(B,a,u,Ha,h,b,y,w,k,z,F))})})}return m.call(this,a,u,f,h,b,y,w,k,z,F)}t||(t=this.threshold||0);if(!d){if(this.async&&"function"!==typeof importScripts){var J=this;t=new Promise(function(oa){setTimeout(function(){oa(J.search(g,b,null,!0));J=null})});if(c)t.then(c);else return t;return this}if(c)return c(this.search(g,b,null,!0)),
this}if(!a||!X(a))return f;g=a;if(this.cache)if(this.o){if(c=this.v.get(a))return c}else this.v.clear(),this.o=!0;g=this.encode(g);if(!g.length)return f;c=this.g;c=da(c)?c(g):g.split(this.split);this.filter&&(c=ba(c,this.filter));C=c.length;d=!0;e=[];var P=G(),Y=0;1<C&&(this.depth&&"strict"===this.g?A=!0:c.sort(V));if(!A||(x=this.s))for(var ha=this.c;Y<C;Y++){var L=c[Y];if(L){if(A){if(!r)if(x[L])r=L,P[L]=1;else if(!y)return f;if(y&&Y===C-1&&!e.length)A=!1,L=r||L,P[L]=0;else if(!r)continue}if(!P[L]){var M=
[],aa=!1,S=0,T=A?x[r]:this.u;if(T)for(var ea=void 0,R=0;R<ha-t;R++)if(ea=T[R]&&T[R][L])M[S++]=ea,aa=!0;if(aa)r=L,e[e.length]=1<S?M.concat.apply([],M):M[0];else if(!y){d=!1;break}P[L]=1}}}else d=!1;d&&(f=ua(e,b,k,y));this.cache&&this.v.set(a,f);return f};p.prototype.find=function(a,b){return this.where(a,b,1)[0]||null};p.prototype.where=function(a,b,c,d){var e=this.m,f=[],g=0,h;if(U(a)){c||(c=b);var k=Object.keys(a);var t=k.length;var y=!1;if(1===t&&"id"===k[0])return[e[a.id]];if((h=this.I)&&!d)for(var w=
0;w<h.length;w++){var A=h[w],r=a[A];if(!Q(r)){var u=this.B[A]["@"+r];if(0===--t)return u;k.splice(k.indexOf(A),1);delete a[A];break}}h=Array(t);for(w=0;w<t;w++)h[w]=k[w].split(":")}else{if(da(a)){b=d||Object.keys(e);c=b.length;for(k=0;k<c;k++)t=e[b[k]],a(t)&&(f[g++]=t);return f}if(Q(b))return[e[a]];if("id"===a)return[e[b]];k=[a];t=1;h=[a.split(":")];y=!0}d=u||d||Object.keys(e);w=d.length;for(A=0;A<w;A++){r=u?d[A]:e[d[A]];for(var F=!0,z=0;z<t;z++){y||(b=a[k[z]]);var C=h[z],x=C.length,B=r;if(1<x)for(var J=
0;J<x;J++)B=B[C[J]];else B=B[C[0]];if(B!==b){F=!1;break}}if(F&&(f[g++]=r,c&&g===c))break}return f};p.prototype.info=function(){if(this.i)for(var a=0;a<this.i;a++)this.b[a].postMessage({info:!0,id:this.id});else return{id:this.id,items:this.length,cache:this.cache&&this.cache.C?this.cache.C.length:!1,matcher:la.length+(this.h?this.h.length:0),worker:this.i,threshold:this.threshold,depth:this.depth,resolution:this.c,contextual:this.depth&&"strict"===this.g}};p.prototype.clear=function(){return this.destroy().init()};
p.prototype.destroy=function(){this.cache&&(this.v.clear(),this.v=null);this.u=this.s=this.f=null;if(this.a){for(var a=this.a.keys,b=0;b<a.length;b++)this.a.index[a[b]].destroy();this.a=this.m=null}return this};p.prototype.export=function(){if(this.a){var a=this.a.keys;var b=Array(a.length+1);for(var c=0;c<a.length;c++){var d=this.a.index[a[c]];b[c]=[d.u,d.s,Object.keys(d.f)]}b[c]=this.m}else b=[this.u,this.s,Object.keys(this.f)];return JSON.stringify(b)};p.prototype.import=function(a){a=JSON.parse(a);
var b=G();if(this.a){for(var c=this.a.keys,d=c.length,e=a[0][2],f=0;f<e.length;f++)b[e[f]]=1;for(e=0;e<d;e++)f=this.a.index[c[e]],f.u=a[e][0],f.s=a[e][1],f.f=b,f.m=a[d];this.m=a[d]}else{c=a[2];for(d=0;d<c.length;d++)b[c[d]]=1;this.u=a[0];this.s=a[1];this.f=b}};var ia={icase:function(a){return a.toLowerCase()},simple:function(){var a=[l("[\u00e0\u00e1\u00e2\u00e3\u00e4\u00e5]"),"a",l("[\u00e8\u00e9\u00ea\u00eb]"),"e",l("[\u00ec\u00ed\u00ee\u00ef]"),"i",l("[\u00f2\u00f3\u00f4\u00f5\u00f6\u0151]"),"o",
l("[\u00f9\u00fa\u00fb\u00fc\u0171]"),"u",l("[\u00fd\u0177\u00ff]"),"y",l("\u00f1"),"n",l("[\u00e7c]"),"k",l("\u00df"),"s",l(" & ")," and ",l("[-/]")," ",l("[^a-z0-9 ]"),"",l("\\s+")," "];return function(b){b=E(b.toLowerCase(),a);return" "===b?"":b}}(),advanced:function(){var a=[l("ae"),"a",l("ai"),"ei",l("ay"),"ei",l("ey"),"ei",l("oe"),"o",l("ue"),"u",l("ie"),"i",l("sz"),"s",l("zs"),"s",l("sh"),"s",l("ck"),"k",l("cc"),"k",l("th"),"t",l("dt"),"t",l("ph"),"f",l("pf"),"f",l("ou"),"o",l("uo"),"u"];return function(b,
c){if(!b)return b;b=this.simple(b);2<b.length&&(b=E(b,a));c||1<b.length&&(b=K(b));return b}}(),extra:function(){var a=[l("p"),"b",l("z"),"s",l("[cgq]"),"k",l("n"),"m",l("d"),"t",l("[vw]"),"f",l("[aeiouy]"),""];return function(b){if(!b)return b;b=this.advanced(b,!0);if(1<b.length){b=b.split(" ");for(var c=0;c<b.length;c++){var d=b[c];1<d.length&&(b[c]=d[0]+E(d.substring(1),a))}b=b.join(" ");b=K(b)}return b}}(),balance:function(){var a=[l("[-/]")," ",l("[^a-z0-9 ]"),"",l("\\s+")," "];return function(b){return K(E(b.toLowerCase(),
a))}}()},Ga=function(){function a(b){this.clear();this.J=!0!==b&&b}a.prototype.clear=function(){this.cache=G();this.count=G();this.index=G();this.C=[]};a.prototype.set=function(b,c){if(this.J&&Q(this.cache[b])){var d=this.C.length;if(d===this.J){d--;var e=this.C[d];delete this.cache[e];delete this.count[e];delete this.index[e]}this.index[b]=d;this.C[d]=b;this.count[b]=-1;this.cache[b]=c;this.get(b)}else this.cache[b]=c};a.prototype.get=function(b){var c=this.cache[b];if(this.J&&c){var d=++this.count[b],
e=this.index,f=e[b];if(0<f){for(var g=this.C,h=f;this.count[g[--f]]<=d&&-1!==f;);f++;if(f!==h){for(d=h;d>f;d--)h=g[d-1],g[d]=h,e[h]=d;g[f]=b;e[b]=f}}}return c};return a}();return p}(function(){var n={},q="undefined"!==typeof Blob&&"undefined"!==typeof URL&&URL.createObjectURL;return function(p,D,I,ba,m){I=q?URL.createObjectURL(new Blob(["("+I.toString()+")()"],{type:"text/javascript"})):p+".es5.js";p+="-"+D;n[p]||(n[p]=[]);n[p][m]=new Worker(I);n[p][m].onmessage=ba;console.log("Register Worker: "+
p+"@"+m);return n[p][m]}}()),this);