search/dist/index.js

172 lines
No EOL
86 KiB
JavaScript

import { jsxs, jsx } from 'preact/jsx-runtime';
// src/util/lang.ts
function classNames(displayClass, ...classes) {
if (displayClass) {
classes.push(displayClass);
}
return classes.join(" ");
}
// src/i18n/locales/en-US.ts
var en_US_default = {
components: {
search: {
title: "Search",
searchBarPlaceholder: "Search for something...",
noResults: "No results.",
noResultsHint: "Try another search term?",
tagFilterHint: "Filter by tag",
noTagsFound: "No matching tags"
}
}
};
// src/i18n/locales/de-DE.ts
var de_DE_default = {
components: {
search: {
title: "Suche",
searchBarPlaceholder: "Suche nach etwas...",
noResults: "Keine Ergebnisse.",
noResultsHint: "Versuchen Sie einen anderen Suchbegriff?",
tagFilterHint: "Nach Tag filtern",
noTagsFound: "Keine passenden Tags"
}
}
};
// src/i18n/locales/es-ES.ts
var es_ES_default = {
components: {
search: {
title: "Buscar",
searchBarPlaceholder: "Buscar algo...",
noResults: "Sin resultados.",
noResultsHint: "\xBFIntentar con otro t\xE9rmino de b\xFAsqueda?",
tagFilterHint: "Filtrar por etiqueta",
noTagsFound: "No se encontraron etiquetas"
}
}
};
// src/i18n/locales/fr-FR.ts
var fr_FR_default = {
components: {
search: {
title: "Recherche",
searchBarPlaceholder: "Rechercher quelque chose...",
noResults: "Aucun r\xE9sultat.",
noResultsHint: "Essayez un autre terme de recherche\xA0?",
tagFilterHint: "Filtrer par tag",
noTagsFound: "Aucun tag correspondant"
}
}
};
// src/i18n/locales/ja-JP.ts
var ja_JP_default = {
components: {
search: {
title: "\u691C\u7D22",
searchBarPlaceholder: "\u4F55\u304B\u3092\u691C\u7D22...",
noResults: "\u7D50\u679C\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002",
noResultsHint: "\u5225\u306E\u691C\u7D22\u8A9E\u3092\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002",
tagFilterHint: "\u30BF\u30B0\u3067\u30D5\u30A3\u30EB\u30BF\u30FC",
noTagsFound: "\u4E00\u81F4\u3059\u308B\u30BF\u30B0\u304C\u3042\u308A\u307E\u305B\u3093"
}
}
};
// src/i18n/locales/zh-CN.ts
var zh_CN_default = {
components: {
search: {
title: "\u641C\u7D22",
searchBarPlaceholder: "\u641C\u7D22\u5185\u5BB9...",
noResults: "\u6CA1\u6709\u7ED3\u679C\u3002",
noResultsHint: "\u8BF7\u5C1D\u8BD5\u5176\u4ED6\u641C\u7D22\u8BCD\u3002",
tagFilterHint: "\u6309\u6807\u7B7E\u7B5B\u9009",
noTagsFound: "\u6CA1\u6709\u5339\u914D\u7684\u6807\u7B7E"
}
}
};
// src/i18n/index.ts
var locales = {
"en-US": en_US_default,
"de-DE": de_DE_default,
"es-ES": es_ES_default,
"fr-FR": fr_FR_default,
"ja-JP": ja_JP_default,
"zh-CN": zh_CN_default
};
function i18n(locale) {
return locales[locale] || en_US_default;
}
// src/components/styles/search.scss
var search_default = ".search {\n min-width: fit-content;\n max-width: 14rem;\n}\n\n@media all and (max-width: 800px) {\n .search {\n flex-grow: 0.3;\n }\n}\n.search > .search-button {\n background-color: transparent;\n border: 1px var(--lightgray) solid;\n border-radius: 4px;\n font-family: inherit;\n font-size: inherit;\n height: 2rem;\n padding: 0 1rem 0 0;\n display: flex;\n align-items: center;\n text-align: inherit;\n cursor: pointer;\n white-space: nowrap;\n width: 100%;\n}\n\n.search > .search-button > p {\n display: inline;\n color: var(--gray);\n text-wrap: unset;\n}\n\n.search > .search-button svg {\n cursor: pointer;\n width: 18px;\n min-width: 18px;\n margin: 0 0.5rem;\n}\n\n.search > .search-button svg .search-path {\n stroke: var(--darkgray);\n stroke-width: 1.5px;\n transition: stroke 0.5s ease;\n}\n\n.search > .search-container {\n position: fixed;\n contain: layout;\n z-index: var(--search-z-index, 999);\n left: 0;\n top: 0;\n width: 100vw;\n height: 100vh;\n overflow-y: auto;\n display: none;\n backdrop-filter: blur(4px);\n}\n\n.search > .search-container.active {\n display: inline-block;\n}\n\n.search > .search-container > .search-space {\n width: 65%;\n margin-top: 12vh;\n margin-left: auto;\n margin-right: auto;\n}\n\n@media all and not (min-width: 1200px) {\n .search > .search-container > .search-space {\n width: 90%;\n }\n}\n.search > .search-container > .search-space > *:not(.ghost-text):not(.tag-suggestions) {\n width: 100%;\n border-radius: 7px;\n background: var(--light);\n box-shadow: 0 14px 50px rgba(27, 33, 48, 0.12), 0 10px 30px rgba(27, 33, 48, 0.16);\n margin-bottom: 2em;\n}\n\n.search > .search-container > .search-space > input {\n box-sizing: border-box;\n padding: 0.5em 1em;\n font-family: var(--bodyFont);\n color: var(--dark);\n font-size: 1.1em;\n border: 1px solid var(--lightgray);\n}\n\n.search > .search-container > .search-space > input:focus {\n outline: none;\n}\n\n.search > .search-container > .search-space > .search-layout {\n display: none;\n flex-direction: row;\n border: 1px solid var(--lightgray);\n flex: 0 0 100%;\n box-sizing: border-box;\n}\n\n.search > .search-container > .search-space > .search-layout.display-results {\n display: flex;\n}\n\n.search > .search-container > .search-space > .search-layout[data-preview] > .results-container {\n flex: 0 0 min(30%, 450px);\n}\n\n@media all and not (max-width: 800px) {\n .search > .search-container > .search-space > .search-layout[data-preview] .result-card > p.card-description {\n display: none;\n }\n .search > .search-container > .search-space > .search-layout[data-preview] > div:first-child {\n border-right: 1px solid var(--lightgray);\n border-top-right-radius: unset;\n border-bottom-right-radius: unset;\n }\n .search > .search-container > .search-space > .search-layout[data-preview] > div:last-child {\n border-top-left-radius: unset;\n border-bottom-left-radius: unset;\n }\n}\n.search > .search-container > .search-space > .search-layout > div {\n height: 63vh;\n border-radius: 5px;\n}\n\n@media all and (max-width: 800px) {\n .search > .search-container > .search-space > .search-layout {\n flex-direction: column;\n }\n .search > .search-container > .search-space > .search-layout > .preview-container {\n display: none !important;\n }\n .search > .search-container > .search-space > .search-layout[data-preview] > .results-container {\n width: 100%;\n height: auto;\n max-height: 60vh;\n flex: 0 0 100%;\n }\n}\n.search > .search-container > .search-space > .search-layout .highlight {\n background: color-mix(in srgb, var(--tertiary) 60%, rgba(255, 255, 255, 0));\n border-radius: 5px;\n scroll-margin-top: 2rem;\n}\n\n.search > .search-container > .search-space > .search-layout > .preview-container {\n flex-grow: 1;\n display: block;\n overflow: hidden;\n font-family: inherit;\n color: var(--dark);\n line-height: 1.5em;\n font-weight: 400;\n overflow-y: auto;\n padding: 0 2rem;\n}\n\n.search > .search-container > .search-space > .search-layout > .preview-container .preview-inner {\n margin: 0 auto;\n width: 100%;\n}\n\n.search > .search-container > .search-space > .search-layout > .preview-container a[role=anchor] {\n background-color: transparent;\n}\n\n.search > .search-container > .search-space > .search-layout > .results-container {\n overflow-y: auto;\n}\n\n.search > .search-container > .search-space > .search-layout > .results-container .result-card {\n overflow: hidden;\n padding: 1em;\n cursor: pointer;\n transition: background 0.2s ease;\n border-bottom: 1px solid var(--lightgray);\n width: 100%;\n display: block;\n box-sizing: border-box;\n font-family: inherit;\n font-size: 100%;\n line-height: 1.15;\n margin: 0;\n text-transform: none;\n text-align: left;\n outline: none;\n font-weight: inherit;\n text-decoration: none;\n color: var(--dark);\n}\n\n.search > .search-container > .search-space > .search-layout > .results-container .result-card:hover,\n.search > .search-container > .search-space > .search-layout > .results-container .result-card:focus,\n.search > .search-container > .search-space > .search-layout > .results-container .result-card.focus {\n background: var(--lightgray);\n}\n\n.search > .search-container > .search-space > .search-layout > .results-container .result-card > h3 {\n margin: 0;\n color: var(--secondary);\n}\n\n.search > .search-container > .search-space > .search-layout > .results-container .result-card > ul.tags {\n margin-top: 0.45rem;\n margin-bottom: 0;\n padding: 0;\n list-style: none;\n}\n\n.search > .search-container > .search-space > .search-layout > .results-container .result-card > ul.tags > li {\n display: inline-block;\n margin-right: 0.3rem;\n}\n\n.search > .search-container > .search-space > .search-layout > .results-container .result-card > ul > li > p {\n border-radius: 8px;\n background-color: var(--highlight);\n padding: 0.2rem 0.4rem;\n margin: 0;\n line-height: 1.4rem;\n font-weight: 700;\n color: var(--secondary);\n font-size: 0.85rem;\n}\n\n.search > .search-container > .search-space > .search-layout > .results-container .result-card > ul > li > p.match-tag {\n color: var(--tertiary);\n}\n\n.search > .search-container > .search-space > .search-layout > .results-container .result-card > p {\n margin-bottom: 0;\n margin-top: 0.5em;\n font-size: 0.9em;\n color: var(--gray);\n}\n\n.search > .search-container > .search-space > .search-layout > .results-container .result-card.no-match {\n cursor: default;\n}\n\n.search > .search-container > .search-space {\n position: relative;\n}\n\n.search > .search-container > .search-space > .ghost-text {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n pointer-events: none;\n box-sizing: border-box;\n padding: 0.5em 1em;\n font-family: var(--bodyFont);\n font-size: 1.1em;\n color: var(--gray);\n opacity: 0.6;\n white-space: pre;\n overflow: hidden;\n height: auto;\n line-height: normal;\n border: 1px solid transparent;\n}\n\n.search > .search-container > .search-space > .tag-suggestions {\n position: absolute;\n top: calc(3.1em + 2px);\n left: 0;\n right: 0;\n z-index: calc(var(--search-z-index, 999) + 1);\n background: var(--light);\n border: 1px solid var(--lightgray);\n border-radius: 5px;\n box-shadow: 0 4px 12px rgba(27, 33, 48, 0.1), 0 2px 6px rgba(27, 33, 48, 0.08);\n max-height: 240px;\n overflow-y: auto;\n}\n\n.search > .search-container > .search-space > .tag-suggestions > .tag-suggestion-item {\n padding: 0.4em 1em;\n cursor: pointer;\n font-family: var(--bodyFont);\n font-size: 0.95em;\n color: var(--dark);\n transition: background 0.15s ease;\n}\n\n.search > .search-container > .search-space > .tag-suggestions > .tag-suggestion-item:hover,\n.search > .search-container > .search-space > .tag-suggestions > .tag-suggestion-item.active {\n background: var(--lightgray);\n}\n\n.search > .search-container > .search-space > .tag-suggestions > .tag-suggestion-item.active {\n color: var(--secondary);\n font-weight: 600;\n}\n\n.search-scroll-target {\n background: color-mix(in srgb, var(--tertiary) 40%, rgba(255, 255, 255, 0));\n border-radius: 3px;\n padding: 0.1em 0;\n transition: background 1s ease;\n}\n\n.search-scroll-target.fade-out {\n background: transparent;\n}";
// src/components/scripts/search.inline.ts
var search_inline_default = `var In=Object.create;var Pe=Object.defineProperty;var Hn=Object.getOwnPropertyDescriptor;var Pn=Object.getOwnPropertyNames;var Wn=Object.getPrototypeOf,Nn=Object.prototype.hasOwnProperty;var Rn=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var zn=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Pn(e))!Nn.call(t,i)&&i!==n&&Pe(t,i,{get:()=>e[i],enumerable:!(r=Hn(e,i))||r.enumerable});return t};var On=(t,e,n)=>(n=t!=null?In(Wn(t)):{},zn(e||!t||!t.__esModule?Pe(n,"default",{value:t,enumerable:!0}):n,t));var se=Rn(()=>{});var C;function O(t,e,n){let r=typeof n,i=typeof t;if(r!=="undefined"){if(i!=="undefined"){if(n){if(i==="function"&&r===i)return function(o){return t(n(o))};if(e=t.constructor,e===n.constructor){if(e===Array)return n.concat(t);if(e===Map){var s=new Map(n);for(var u of t)s.set(u[0],u[1]);return s}if(e===Set){u=new Set(n);for(s of t.values())u.add(s);return u}}}return t}return n}return i==="undefined"?e:t}function Ct(t,e){return typeof t>"u"?e:t}function W(){return Object.create(null)}function U(t){return typeof t=="string"}function Lt(t){return typeof t=="object"}function Mt(t,e){if(U(e))t=t[e];else for(let n=0;t&&n<e.length;n++)t=t[e[n]];return t}var $n=/[^\\p{L}\\p{N}]+/u,Kn=/(\\d{3})/g,Un=/(\\D)(\\d{3})/g,Vn=/(\\d{3})(\\D)/g,We=/[\\u0300-\\u036f]/g;function vt(t={}){if(!this||this.constructor!==vt)return new vt(...arguments);if(arguments.length)for(t=0;t<arguments.length;t++)this.assign(arguments[t]);else this.assign(t)}C=vt.prototype;C.assign=function(t){this.normalize=O(t.normalize,!0,this.normalize);let e=t.include,n=e||t.exclude||t.split,r;if(n||n===""){if(typeof n=="object"&&n.constructor!==RegExp){let i="";r=!e,e||(i+="\\\\p{Z}"),n.letter&&(i+="\\\\p{L}"),n.number&&(i+="\\\\p{N}",r=!!e),n.symbol&&(i+="\\\\p{S}"),n.punctuation&&(i+="\\\\p{P}"),n.control&&(i+="\\\\p{C}"),(n=n.char)&&(i+=typeof n=="object"?n.join(""):n);try{this.split=new RegExp("["+(e?"^":"")+i+"]+","u")}catch{this.split=/\\s+/}}else this.split=n,r=n===!1||"a1a".split(n).length<2;this.numeric=O(t.numeric,r)}else{try{this.split=O(this.split,$n)}catch{this.split=/\\s+/}this.numeric=O(t.numeric,O(this.numeric,!0))}if(this.prepare=O(t.prepare,null,this.prepare),this.finalize=O(t.finalize,null,this.finalize),n=t.filter,this.filter=typeof n=="function"?n:O(n&&new Set(n),null,this.filter),this.dedupe=O(t.dedupe,!0,this.dedupe),this.matcher=O((n=t.matcher)&&new Map(n),null,this.matcher),this.mapper=O((n=t.mapper)&&new Map(n),null,this.mapper),this.stemmer=O((n=t.stemmer)&&new Map(n),null,this.stemmer),this.replacer=O(t.replacer,null,this.replacer),this.minlength=O(t.minlength,1,this.minlength),this.maxlength=O(t.maxlength,1024,this.maxlength),this.rtl=O(t.rtl,!1,this.rtl),(this.cache=n=O(t.cache,!0,this.cache))&&(this.F=null,this.L=typeof n=="number"?n:2e5,this.B=new Map,this.D=new Map,this.I=this.H=128),this.h="",this.J=null,this.A="",this.K=null,this.matcher)for(let i of this.matcher.keys())this.h+=(this.h?"|":"")+i;if(this.stemmer)for(let i of this.stemmer.keys())this.A+=(this.A?"|":"")+i;return this};C.addStemmer=function(t,e){return this.stemmer||(this.stemmer=new Map),this.stemmer.set(t,e),this.A+=(this.A?"|":"")+t,this.K=null,this.cache&&pt(this),this};C.addFilter=function(t){return typeof t=="function"?this.filter=t:(this.filter||(this.filter=new Set),this.filter.add(t)),this.cache&&pt(this),this};C.addMapper=function(t,e){return typeof t=="object"?this.addReplacer(t,e):t.length>1?this.addMatcher(t,e):(this.mapper||(this.mapper=new Map),this.mapper.set(t,e),this.cache&&pt(this),this)};C.addMatcher=function(t,e){return typeof t=="object"?this.addReplacer(t,e):t.length<2&&(this.dedupe||this.mapper)?this.addMapper(t,e):(this.matcher||(this.matcher=new Map),this.matcher.set(t,e),this.h+=(this.h?"|":"")+t,this.J=null,this.cache&&pt(this),this)};C.addReplacer=function(t,e){return typeof t=="string"?this.addMatcher(t,e):(this.replacer||(this.replacer=[]),this.replacer.push(t,e),this.cache&&pt(this),this)};C.encode=function(t,e){if(this.cache&&t.length<=this.H)if(this.F){if(this.B.has(t))return this.B.get(t)}else this.F=setTimeout(pt,50,this);this.normalize&&(typeof this.normalize=="function"?t=this.normalize(t):t=We?t.normalize("NFKD").replace(We,"").toLowerCase():t.toLowerCase()),this.prepare&&(t=this.prepare(t)),this.numeric&&t.length>3&&(t=t.replace(Un,"$1 $2").replace(Vn,"$1 $2").replace(Kn,"$1 "));let n=!(this.dedupe||this.mapper||this.filter||this.matcher||this.stemmer||this.replacer),r=[],i=W(),s,u,o=this.split||this.split===""?t.split(this.split):[t];for(let c=0,f,h;c<o.length;c++)if((f=h=o[c])&&!(f.length<this.minlength||f.length>this.maxlength)){if(e){if(i[f])continue;i[f]=1}else{if(s===f)continue;s=f}if(n)r.push(f);else if(!this.filter||(typeof this.filter=="function"?this.filter(f):!this.filter.has(f))){if(this.cache&&f.length<=this.I)if(this.F){var l=this.D.get(f);if(l||l===""){l&&r.push(l);continue}}else this.F=setTimeout(pt,50,this);if(this.stemmer){this.K||(this.K=new RegExp("(?!^)("+this.A+")$"));let g;for(;g!==f&&f.length>2;)g=f,f=f.replace(this.K,a=>this.stemmer.get(a))}if(f&&(this.mapper||this.dedupe&&f.length>1)){l="";for(let g=0,a="",D,p;g<f.length;g++)D=f.charAt(g),D===a&&this.dedupe||((p=this.mapper&&this.mapper.get(D))||p===""?p===a&&this.dedupe||!(a=p)||(l+=p):l+=a=D);f=l}if(this.matcher&&f.length>1&&(this.J||(this.J=new RegExp("("+this.h+")","g")),f=f.replace(this.J,g=>this.matcher.get(g))),f&&this.replacer)for(l=0;f&&l<this.replacer.length;l+=2)f=f.replace(this.replacer[l],this.replacer[l+1]);if(this.cache&&h.length<=this.I&&(this.D.set(h,f),this.D.size>this.L&&(this.D.clear(),this.I=this.I/1.1|0)),f){if(f!==h)if(e){if(i[f])continue;i[f]=1}else{if(u===f)continue;u=f}r.push(f)}}}return this.finalize&&(r=this.finalize(r)||r),this.cache&&t.length<=this.H&&(this.B.set(t,r),this.B.size>this.L&&(this.B.clear(),this.H=this.H/1.1|0)),r};function pt(t){t.F=null,t.B.clear(),t.D.clear()}function ae(t,e,n){n||(e||typeof t!="object"?typeof e=="object"&&(n=e,e=0):n=t),n&&(t=n.query||t,e=n.limit||e);let r=""+(e||0);n&&(r+=(n.offset||0)+!!n.context+!!n.suggest+(n.resolve!==!1)+(n.resolution||this.resolution)+(n.boost||0)),t=(""+t).toLowerCase(),this.cache||(this.cache=new Dt);let i=this.cache.get(t+r);if(!i){let s=n&&n.cache;s&&(n.cache=!1),i=this.search(t,e,n),s&&(n.cache=s),this.cache.set(t+r,i)}return i}function Dt(t){this.limit=t&&t!==!0?t:1e3,this.cache=new Map,this.h=""}Dt.prototype.set=function(t,e){this.cache.set(this.h=t,e),this.cache.size>this.limit&&this.cache.delete(this.cache.keys().next().value)};Dt.prototype.get=function(t){let e=this.cache.get(t);return e&&this.h!==t&&(this.cache.delete(t),this.cache.set(this.h=t,e)),e};Dt.prototype.remove=function(t){for(let e of this.cache){let n=e[0];e[1].includes(t)&&this.cache.delete(n)}};Dt.prototype.clear=function(){this.cache.clear(),this.h=""};var Ne={normalize:!1,numeric:!1,dedupe:!1},Wt={},ue=new Map([["b","p"],["v","f"],["w","f"],["z","s"],["x","s"],["d","t"],["n","m"],["c","k"],["g","k"],["j","k"],["q","k"],["i","e"],["y","e"],["u","o"]]),Re=new Map([["ae","a"],["oe","o"],["sh","s"],["kh","k"],["th","t"],["ph","f"],["pf","f"]]),ze=[/([^aeo])h(.)/g,"$1$2",/([aeo])h([^aeo]|$)/g,"$1$2",/(.)\\1+/g,"$1"],Oe={a:"",e:"",i:"",o:"",u:"",y:"",b:1,f:1,p:1,v:1,c:2,g:2,j:2,k:2,q:2,s:2,x:2,z:2,\\u00DF:2,d:3,t:3,l:4,m:5,n:5,r:6},pe={Exact:Ne,Default:Wt,Normalize:Wt,LatinBalance:{mapper:ue},LatinAdvanced:{mapper:ue,matcher:Re,replacer:ze},LatinExtra:{mapper:ue,replacer:ze.concat([/(?!^)[aeo]/g,""]),matcher:Re},LatinSoundex:{dedupe:!1,include:{letter:!0},finalize:function(t){for(let n=0;n<t.length;n++){var e=t[n];let r=e.charAt(0),i=Oe[r];for(let s=1,u;s<e.length&&(u=e.charAt(s),u==="h"||u==="w"||!(u=Oe[u])||u===i||(r+=u,i=u,r.length!==4));s++);t[n]=r}}},CJK:{split:""},LatinExact:Ne,LatinDefault:Wt,LatinSimple:Wt};function $e(t,e,n,r){let i=[];for(let s=0,u;s<t.index.length;s++)if(u=t.index[s],e>=u.length)e-=u.length;else{e=u[r?"splice":"slice"](e,n);let o=e.length;if(o&&(i=i.length?i.concat(e):e,n-=o,r&&(t.length-=o),!n))break;e=0}return i}function xt(t){if(!this||this.constructor!==xt)return new xt(t);this.index=t?[t]:[],this.length=t?t.length:0;let e=this;return new Proxy([],{get(n,r){if(r==="length")return e.length;if(r==="push")return function(i){e.index[e.index.length-1].push(i),e.length++};if(r==="pop")return function(){if(e.length)return e.length--,e.index[e.index.length-1].pop()};if(r==="indexOf")return function(i){let s=0;for(let u=0,o,l;u<e.index.length;u++){if(o=e.index[u],l=o.indexOf(i),l>=0)return s+l;s+=o.length}return-1};if(r==="includes")return function(i){for(let s=0;s<e.index.length;s++)if(e.index[s].includes(i))return!0;return!1};if(r==="slice")return function(i,s){return $e(e,i||0,s||e.length,!1)};if(r==="splice")return function(i,s){return $e(e,i||0,s||e.length,!0)};if(r==="constructor")return Array;if(typeof r!="symbol")return(n=e.index[r/2**31|0])&&n[r]},set(n,r,i){return n=r/2**31|0,(e.index[n]||(e.index[n]=[]))[r]=i,e.length++,!0}})}xt.prototype.clear=function(){this.index.length=0};xt.prototype.push=function(){};function V(t=8){if(!this||this.constructor!==V)return new V(t);this.index=W(),this.h=[],this.size=0,t>32?(this.B=Ye,this.A=BigInt(t)):(this.B=Xe,this.A=t)}V.prototype.get=function(t){let e=this.index[this.B(t)];return e&&e.get(t)};V.prototype.set=function(t,e){var n=this.B(t);let r=this.index[n];r?(n=r.size,r.set(t,e),(n-=r.size)&&this.size++):(this.index[n]=r=new Map([[t,e]]),this.h.push(r),this.size++)};function J(t=8){if(!this||this.constructor!==J)return new J(t);this.index=W(),this.h=[],this.size=0,t>32?(this.B=Ye,this.A=BigInt(t)):(this.B=Xe,this.A=t)}J.prototype.add=function(t){var e=this.B(t);let n=this.index[e];n?(e=n.size,n.add(t),(e-=n.size)&&this.size++):(this.index[e]=n=new Set([t]),this.h.push(n),this.size++)};C=V.prototype;C.has=J.prototype.has=function(t){let e=this.index[this.B(t)];return e&&e.has(t)};C.delete=J.prototype.delete=function(t){let e=this.index[this.B(t)];e&&e.delete(t)&&this.size--};C.clear=J.prototype.clear=function(){this.index=W(),this.h=[],this.size=0};C.values=J.prototype.values=function*(){for(let t=0;t<this.h.length;t++)for(let e of this.h[t].values())yield e};C.keys=J.prototype.keys=function*(){for(let t=0;t<this.h.length;t++)for(let e of this.h[t].keys())yield e};C.entries=J.prototype.entries=function*(){for(let t=0;t<this.h.length;t++)for(let e of this.h[t].entries())yield e};function Xe(t){let e=2**this.A-1;if(typeof t=="number")return t&e;let n=0,r=this.A+1;for(let i=0;i<t.length;i++)n=(n*r^t.charCodeAt(i))&e;return this.A===32?n+2**31:n}function Ye(t){let e=BigInt(2)**this.A-BigInt(1);var n=typeof t;if(n==="bigint")return t&e;if(n==="number")return BigInt(t)&e;n=BigInt(0);let r=this.A+BigInt(1);for(let i=0;i<t.length;i++)n=(n*r^BigInt(t.charCodeAt(i)))&e;return n}var Et,St;async function Jn(t){t=t.data;var e=t.task;let n=t.id,r=t.args;if(e==="init")St=t.options||{},(e=t.factory)?(Function("return "+e)()(self),Et=new self.FlexSearch.Index(St),delete self.FlexSearch):Et=new Z(St),postMessage({id:n});else{let i;e==="export"&&(r[1]?(r[0]=St.export,r[2]=0,r[3]=1):r=null),e==="import"?r[0]&&(t=await St.import.call(Et,r[0]),Et.import(r[0],t)):((i=r&&Et[e].apply(Et,r))&&i.then&&(i=await i),i&&i.await&&(i=await i.await),e==="search"&&i.result&&(i=i.result)),postMessage(e==="search"?{id:n,msg:i}:{id:n})}}function ge(t){At.call(t,"add"),At.call(t,"append"),At.call(t,"search"),At.call(t,"update"),At.call(t,"remove"),At.call(t,"searchCache")}var le,Ke,zt;function Zn(){le=zt=0}function At(t){this[t+"Async"]=function(){let e=arguments;var n=e[e.length-1];let r;if(typeof n=="function"&&(r=n,delete e[e.length-1]),le?zt||(zt=Date.now()-Ke>=this.priority*this.priority*3):(le=setTimeout(Zn,0),Ke=Date.now()),zt){let s=this;return new Promise(u=>{setTimeout(function(){u(s[t+"Async"].apply(s,e))},0)})}let i=this[t].apply(this,e);return n=i.then?i:new Promise(s=>s(i)),r&&n.then(r),n}}var nt=0;function gt(t={},e){function n(o){function l(c){c=c.data||c;let f=c.id,h=f&&s.h[f];h&&(h(c.msg),delete s.h[f])}if(this.worker=o,this.h=W(),this.worker)return i?this.worker.on("message",l):this.worker.onmessage=l,t.config?new Promise(function(c){nt>1e9&&(nt=0),s.h[++nt]=function(){c(s)},s.worker.postMessage({id:nt,task:"init",factory:r,options:t})}):(this.priority=t.priority||4,this.encoder=e||null,this.worker.postMessage({task:"init",factory:r,options:t}),this)}if(!this||this.constructor!==gt)return new gt(t);let r=typeof self<"u"?self._factory:typeof window<"u"?window._factory:null;r&&(r=r.toString());let i=typeof window>"u",s=this,u=Qn(r,i,t.worker);return u.then?u.then(function(o){return n.call(s,o)}):n.call(this,u)}it("add");it("append");it("search");it("update");it("remove");it("clear");it("export");it("import");gt.prototype.searchCache=ae;ge(gt.prototype);function it(t){gt.prototype[t]=function(){let e=this,n=[].slice.call(arguments);var r=n[n.length-1];let i;return typeof r=="function"&&(i=r,n.pop()),r=new Promise(function(s){t==="export"&&typeof n[0]=="function"&&(n[0]=null),nt>1e9&&(nt=0),e.h[++nt]=s,e.worker.postMessage({task:t,id:nt,args:n})}),i?(r.then(i),this):r}}function Qn(t,e,n){return e?typeof module<"u"?new(se()).Worker(__dirname+"/worker/node.js"):Promise.resolve().then(()=>On(se(),1)).then(function(r){return new r.Worker(import.meta.dirname+"/node/node.mjs")}):t?new window.Worker(URL.createObjectURL(new Blob(["onmessage="+Jn.toString()],{type:"text/javascript"}))):new window.Worker(typeof n=="string"?n:import.meta.url.replace("/worker.js","/worker/worker.js").replace("flexsearch.bundle.module.min.js","module/worker/worker.js").replace("flexsearch.bundle.module.min.mjs","module/worker/worker.js"),{type:"module"})}dt.prototype.add=function(t,e,n){if(Lt(t)&&(e=t,t=Mt(e,this.key)),e&&(t||t===0)){if(!n&&this.reg.has(t))return this.update(t,e);for(let o=0,l;o<this.field.length;o++){l=this.B[o];var r=this.index.get(this.field[o]);if(typeof l=="function"){var i=l(e);i&&r.add(t,i,n,!0)}else i=l.G,(!i||i(e))&&(l.constructor===String?l=[""+l]:U(l)&&(l=[l]),ce(e,l,this.D,0,r,t,l[0],n))}if(this.tag)for(r=0;r<this.A.length;r++){var s=this.A[r];i=this.tag.get(this.F[r]);let o=W();if(typeof s=="function"){if(s=s(e),!s)continue}else{var u=s.G;if(u&&!u(e))continue;s.constructor===String&&(s=""+s),s=Mt(e,s)}if(i&&s){U(s)&&(s=[s]);for(let l=0,c,f;l<s.length;l++)if(c=s[l],!o[c]&&(o[c]=1,(u=i.get(c))?f=u:i.set(c,f=[]),!n||!f.includes(t))){if(f.length===2**31-1){if(u=new xt(f),this.fastupdate)for(let h of this.reg.values())h.includes(f)&&(h[h.indexOf(f)]=u);i.set(c,f=u)}f.push(t),this.fastupdate&&((u=this.reg.get(t))?u.push(f):this.reg.set(t,[f]))}}}if(this.store&&(!n||!this.store.has(t))){let o;if(this.h){o=W();for(let l=0,c;l<this.h.length;l++){if(c=this.h[l],(n=c.G)&&!n(e))continue;let f;if(typeof c=="function"){if(f=c(e),!f)continue;c=[c.O]}else if(U(c)||c.constructor===String){o[c]=e[c];continue}he(e,o,c,0,c[0],f)}}this.store.set(t,o||e)}this.worker&&(this.fastupdate||this.reg.add(t))}return this};function he(t,e,n,r,i,s){if(t=t[i],r===n.length-1)e[i]=s||t;else if(t)if(t.constructor===Array)for(e=e[i]=Array(t.length),i=0;i<t.length;i++)he(t,e,n,r,i);else e=e[i]||(e[i]=W()),i=n[++r],he(t,e,n,r,i)}function ce(t,e,n,r,i,s,u,o){if(t=t[u])if(r===e.length-1){if(t.constructor===Array){if(n[r]){for(e=0;e<t.length;e++)i.add(s,t[e],!0,!0);return}t=t.join(" ")}i.add(s,t,o,!0)}else if(t.constructor===Array)for(u=0;u<t.length;u++)ce(t,e,n,r,i,s,u,o);else u=e[++r],ce(t,e,n,r,i,s,u,o)}function de(t,e,n,r){if(!t.length)return t;if(t.length===1)return t=t[0],t=n||t.length>e?t.slice(n,n+e):t,r?wt.call(this,t):t;let i=[];for(let s=0,u,o;s<t.length;s++)if((u=t[s])&&(o=u.length)){if(n){if(n>=o){n-=o;continue}u=u.slice(n,n+e),o=u.length,n=0}if(o>e&&(u=u.slice(0,e),o=e),!i.length&&o>=e)return r?wt.call(this,u):u;if(i.push(u),e-=o,!e)break}return i=i.length>1?[].concat.apply([],i):i[0],r?wt.call(this,i):i}function Zt(t,e,n,r){var i=r[0];if(i[0]&&i[0].query)return t[e].apply(t,i);if(!(e!=="and"&&e!=="not"||t.result.length||t.await||i.suggest))return r.length>1&&(i=r[r.length-1]),(r=i.resolve)?t.await||t.result:t;let s=[],u=0,o=0,l,c,f,h,g;for(e=0;e<r.length;e++)if(i=r[e]){var a=void 0;if(i.constructor===j)a=i.await||i.result;else if(i.then||i.constructor===Array)a=i;else{u=i.limit||0,o=i.offset||0,f=i.suggest,c=i.resolve,l=((h=i.highlight||t.highlight)||i.enrich)&&c,a=i.queue;let D=i.async||a,p=i.index,d=i.query;if(p?t.index||(t.index=p):p=t.index,d||i.tag){let F=i.field||i.pluck;if(F&&(!d||t.query&&!h||(t.query=d,t.field=F,t.highlight=h),p=p.index.get(F)),a&&(g||t.await)){g=1;let m,A=t.C.length,x=new Promise(function(b){m=b});(function(b,k){x.h=function(){k.index=null,k.resolve=!1;let B=D?b.searchAsync(k):b.search(k);return B.then?B.then(function(y){return t.C[A]=y=y.result||y,m(y),y}):(B=B.result||B,m(B),B)}})(p,Object.assign({},i)),t.C.push(x),s[e]=x;continue}else i.resolve=!1,i.index=null,a=D?p.searchAsync(i):p.search(i),i.resolve=c,i.index=p}else if(i.and)a=Nt(i,"and",p);else if(i.or)a=Nt(i,"or",p);else if(i.not)a=Nt(i,"not",p);else if(i.xor)a=Nt(i,"xor",p);else continue}a.await?(g=1,a=a.await):a.then?(g=1,a=a.then(function(D){return D.result||D})):a=a.result||a,s[e]=a}if(g&&!t.await&&(t.await=new Promise(function(D){t.return=D})),g){let D=Promise.all(s).then(function(p){for(let d=0;d<t.C.length;d++)if(t.C[d]===D){t.C[d]=function(){return n.call(t,p,u,o,l,c,f,h)};break}De(t)});t.C.push(D)}else if(t.await)t.C.push(function(){return n.call(t,s,u,o,l,c,f,h)});else return n.call(t,s,u,o,l,c,f,h);return c?t.await||t.result:t}function Nt(t,e,n){t=t[e];let r=t[0]||t;return r.index||(r.index=n),n=new j(r),t.length>1&&(n=n[e].apply(n,t.slice(1))),n}j.prototype.or=function(){return Zt(this,"or",Xn,arguments)};function Xn(t,e,n,r,i,s,u){return t.length&&(this.result.length&&t.push(this.result),t.length<2?this.result=t[0]:(this.result=Ge(t,e,n,!1,this.h),n=0)),i&&(this.await=null),i?this.resolve(e,n,r,u):this}j.prototype.and=function(){return Zt(this,"and",Yn,arguments)};function Yn(t,e,n,r,i,s,u){if(!s&&!this.result.length)return i?this.result:this;let o;if(t.length)if(this.result.length&&t.unshift(this.result),t.length<2)this.result=t[0];else{let l=0;for(let c=0,f,h;c<t.length;c++)if((f=t[c])&&(h=f.length))l<h&&(l=h);else if(!s){l=0;break}l?(this.result=$t(t,l,e,n,s,this.h,i),o=!0):this.result=[]}else s||(this.result=t);return i&&(this.await=null),i?this.resolve(e,n,r,u,o):this}j.prototype.xor=function(){return Zt(this,"xor",Gn,arguments)};function Gn(t,e,n,r,i,s,u){if(t.length)if(this.result.length&&t.unshift(this.result),t.length<2)this.result=t[0];else{t:{s=n;var o=this.h;let l=[],c=W(),f=0;for(let h=0,g;h<t.length;h++)if(g=t[h]){f<g.length&&(f=g.length);for(let a=0,D;a<g.length;a++)if(D=g[a])for(let p=0,d;p<D.length;p++)d=D[p],c[d]=c[d]?2:1}for(let h=0,g,a=0;h<f;h++)for(let D=0,p;D<t.length;D++)if((p=t[D])&&(g=p[h])){for(let d=0,F;d<g.length;d++)if(F=g[d],c[F]===1)if(s)s--;else if(i){if(l.push(F),l.length===e){t=l;break t}}else{let m=h+(D?o:0);if(l[m]||(l[m]=[]),l[m].push(F),++a===e){t=l;break t}}}t=l}this.result=t,o=!0}else s||(this.result=t);return i&&(this.await=null),i?this.resolve(e,n,r,u,o):this}j.prototype.not=function(){return Zt(this,"not",qn,arguments)};function qn(t,e,n,r,i,s,u){if(!s&&!this.result.length)return i?this.result:this;if(t.length&&this.result.length){t:{s=n;var o=[];t=new Set(t.flat().flat());for(let l=0,c,f=0;l<this.result.length;l++)if(c=this.result[l]){for(let h=0,g;h<c.length;h++)if(g=c[h],!t.has(g)){if(s)s--;else if(i){if(o.push(g),o.length===e){t=o;break t}}else if(o[l]||(o[l]=[]),o[l].push(g),++f===e){t=o;break t}}}t=o}this.result=t,o=!0}return i&&(this.await=null),i?this.resolve(e,n,r,u,o):this}function Ot(t,e,n,r,i){let s,u,o;typeof i=="string"?(s=i,i=""):s=i.template,u=s.indexOf("$1"),o=s.substring(u+2),u=s.substring(0,u);let l=i&&i.boundary,c=!i||i.clip!==!1,f=i&&i.merge&&o&&u&&new RegExp(o+" "+u,"g");i=i&&i.ellipsis;var h=0;if(typeof i=="object"){var g=i.template;h=g.length-2,i=i.pattern}typeof i!="string"&&(i=i===!1?"":"..."),h&&(i=g.replace("$1",i)),g=i.length-h;let a,D;typeof l=="object"&&(a=l.before,a===0&&(a=-1),D=l.after,D===0&&(D=-1),l=l.total||9e5),h=new Map;for(let tt=0,Q,It,ut;tt<e.length;tt++){let et;if(r)et=e,ut=r;else{var p=e[tt];if(ut=p.field,!ut)continue;et=p.result}It=n.get(ut),Q=It.encoder,p=h.get(Q),typeof p!="string"&&(p=Q.encode(t),h.set(Q,p));for(let ot=0;ot<et.length;ot++){var d=et[ot].doc;if(!d||(d=Mt(d,ut),!d))continue;var F=d.trim().split(/\\s+/);if(!F.length)continue;d="";var m=[];let lt=[];for(var A=-1,x=-1,b=0,k=0;k<F.length;k++){var B=F[k],y=Q.encode(B);y=y.length>1?y.join(" "):y[0];let w;if(y&&B){for(var v=B.length,M=(Q.split?B.replace(Q.split,""):B).length-y.length,T="",N=0,z=0;z<p.length;z++){var R=p[z];if(R){var P=R.length;P+=M<0?0:M,N&&P<=N||(R=y.indexOf(R),R>-1&&(T=(R?B.substring(0,R):"")+u+B.substring(R,R+P)+o+(R+P<v?B.substring(R+P):""),N=P,w=!0))}}T&&(l&&(A<0&&(A=d.length+(d?1:0)),x=d.length+(d?1:0)+T.length,b+=v,lt.push(m.length),m.push({match:T})),d+=(d?" ":"")+T)}if(!w)B=F[k],d+=(d?" ":"")+B,l&&m.push({text:B});else if(l&&b>=l)break}if(b=lt.length*(s.length-2),a||D||l&&d.length-b>l)if(b=l+b-g*2,k=x-A,a>0&&(k+=a),D>0&&(k+=D),k<=b)F=a?A-(a>0?a:0):A-((b-k)/2|0),m=D?x+(D>0?D:0):F+b,c||(F>0&&d.charAt(F)!==" "&&d.charAt(F-1)!==" "&&(F=d.indexOf(" ",F),F<0&&(F=0)),m<d.length&&d.charAt(m-1)!==" "&&d.charAt(m)!==" "&&(m=d.lastIndexOf(" ",m),m<x?m=x:++m)),d=(F?i:"")+d.substring(F,m)+(m<d.length?i:"");else{for(x=[],A={},b={},k={},B={},y={},T=M=v=0,z=N=1;;){var $=void 0;for(let w=0,I;w<lt.length;w++){if(I=lt[w],T)if(M!==T){if(k[w+1])continue;if(I+=T,A[I]){v-=g,b[w+1]=1,k[w+1]=1;continue}if(I>=m.length-1){if(I>=m.length){k[w+1]=1,I>=F.length&&(b[w+1]=1);continue}v-=g}if(d=m[I].text,P=D&&y[w])if(P>0){if(d.length>P)if(k[w+1]=1,c)d=d.substring(0,P);else continue;(P-=d.length)||(P=-1),y[w]=P}else{k[w+1]=1;continue}if(v+d.length+1<=l)d=" "+d,x[w]+=d;else if(c)$=l-v-1,$>0&&(d=" "+d.substring(0,$),x[w]+=d),k[w+1]=1;else{k[w+1]=1;continue}}else{if(k[w])continue;if(I-=M,A[I]){v-=g,k[w]=1,b[w]=1;continue}if(I<=0){if(I<0){k[w]=1,b[w]=1;continue}v-=g}if(d=m[I].text,P=a&&B[w])if(P>0){if(d.length>P)if(k[w]=1,c)d=d.substring(d.length-P);else continue;(P-=d.length)||(P=-1),B[w]=P}else{k[w]=1;continue}if(v+d.length+1<=l)d+=" ",x[w]=d+x[w];else if(c)$=d.length+1-(l-v),$>=0&&$<d.length&&(d=d.substring($)+" ",x[w]=d+x[w]),k[w]=1;else{k[w]=1;continue}}else{d=m[I].match,a&&(B[w]=a),D&&(y[w]=D),w&&v++;let _t;if(I?!w&&g&&(v+=g):(b[w]=1,k[w]=1),I>=F.length-1||I<m.length-1&&m[I+1].match?_t=1:g&&(v+=g),v-=s.length-2,!w||v+d.length<=l)x[w]=d;else{$=N=z=b[w]=0;break}_t&&(b[w+1]=1,k[w+1]=1)}v+=d.length,$=A[I]=1}if($)M===T?T++:M++;else{if(M===T?N=0:z=0,!N&&!z)break;N?(M++,T=M):T++}}d="";for(let w=0,I;w<x.length;w++)I=(b[w]?w?" ":"":(w&&!i?" ":"")+i)+x[w],d+=I;i&&!b[x.length]&&(d+=i)}f&&(d=d.replace(f," ")),et[ot].highlight=d}if(r)break}return e}function j(t,e){if(!this||this.constructor!==j)return new j(t,e);let n=0,r,i,s,u,o,l;if(t&&t.index){let c=t;if(e=c.index,n=c.boost||0,i=c.query){s=c.field||c.pluck,u=c.highlight;let f=c.resolve;t=c.async||c.queue,c.resolve=!1,c.index=null,t=t?e.searchAsync(c):e.search(c),c.resolve=f,c.index=e,t=t.result||t}else t=[]}if(t&&t.then){let c=this;t=t.then(function(f){c.C[0]=c.result=f.result||f,De(c)}),r=[t],t=[],o=new Promise(function(f){l=f})}this.index=e||null,this.result=t||[],this.h=n,this.C=r||[],this.await=o||null,this.return=l||null,this.highlight=u||null,this.query=i||"",this.field=s||""}C=j.prototype;C.limit=function(t){if(this.await){let e=this;this.C.push(function(){return e.limit(t).result})}else if(this.result.length){let e=[];for(let n=0,r;n<this.result.length;n++)if(r=this.result[n])if(r.length<=t){if(e[n]=r,t-=r.length,!t)break}else{e[n]=r.slice(0,t);break}this.result=e}return this};C.offset=function(t){if(this.await){let e=this;this.C.push(function(){return e.offset(t).result})}else if(this.result.length){let e=[];for(let n=0,r;n<this.result.length;n++)(r=this.result[n])&&(r.length<=t?t-=r.length:(e[n]=r.slice(t),t=0));this.result=e}return this};C.boost=function(t){if(this.await){let e=this;this.C.push(function(){return e.boost(t).result})}else this.h+=t;return this};function De(t,e){let n=t.result;var r=t.await;t.await=null;for(let i=0,s;i<t.C.length;i++)if(s=t.C[i]){if(typeof s=="function")n=s(),t.C[i]=n=n.result||n,i--;else if(s.h)n=s.h(),t.C[i]=n=n.result||n,i--;else if(s.then)return t.await=r}return r=t.return,t.C=[],t.return=null,e||r(n),n}C.resolve=function(t,e,n,r,i){let s=this.await?De(this,!0):this.result;if(s.then){let u=this;return s.then(function(){return u.resolve(t,e,n,r,i)})}return s.length&&(typeof t=="object"?(r=t.highlight||this.highlight,n=!!r||t.enrich,e=t.offset,t=t.limit):(r=r||this.highlight,n=!!r||n),s=i?n?wt.call(this.index,s):s:de.call(this.index,s,t||100,e,n)),this.finalize(s,r)};C.finalize=function(t,e){if(t.then){let r=this;return t.then(function(i){return r.finalize(i,e)})}e&&t.length&&this.query&&(t=Ot(this.query,t,this.index.index,this.field,e));let n=this.return;return this.highlight=this.index=this.result=this.C=this.await=this.return=null,this.query=this.field="",n&&n(t),t};function $t(t,e,n,r,i,s,u){let o=t.length,l=[],c,f;c=W();for(let h=0,g,a,D,p;h<e;h++)for(let d=0;d<o;d++)if(D=t[d],h<D.length&&(g=D[h]))for(let F=0;F<g.length;F++){if(a=g[F],(f=c[a])?c[a]++:(f=0,c[a]=1),p=l[f]||(l[f]=[]),!u){let m=h+(d||!i?0:s||0);p=p[m]||(p[m]=[])}if(p.push(a),u&&n&&f===o-1&&p.length-r===n)return r?p.slice(r):p}if(t=l.length)if(i)l=l.length>1?Ge(l,n,r,u,s):(l=l[0])&&n&&l.length>n||r?l.slice(r,n+r):l;else{if(t<o)return[];if(l=l[t-1],n||r)if(u)(l.length>n||r)&&(l=l.slice(r,n+r));else{i=[];for(let h=0,g;h<l.length;h++)if(g=l[h]){if(r&&g.length>r)r-=g.length;else if((n&&g.length>n||r)&&(g=g.slice(r,n+r),n-=g.length,r&&(r-=g.length)),i.push(g),!n)break}l=i}}return l}function Ge(t,e,n,r,i){let s=[],u=W(),o;var l=t.length;let c;if(r){for(i=l-1;i>=0;i--)if(c=(r=t[i])&&r.length){for(l=0;l<c;l++)if(o=r[l],!u[o]){if(u[o]=1,n)n--;else if(s.push(o),s.length===e)return s}}}else for(let f=l-1,h,g=0;f>=0;f--){h=t[f];for(let a=0;a<h.length;a++)if(c=(r=h[a])&&r.length){for(let D=0;D<c;D++)if(o=r[D],!u[o])if(u[o]=1,n)n--;else{let p=(a+(f<l-1&&i||0))/(f+1)|0;if((s[p]||(s[p]=[])).push(o),++g===e)return s}}}return s}function ti(t,e,n,r,i){let s=W(),u=[];for(let o=0,l;o<e.length;o++){l=e[o];for(let c=0;c<l.length;c++)s[l[c]]=1}if(i){for(let o=0,l;o<t.length;o++)if(l=t[o],s[l]){if(r)r--;else if(u.push(l),s[l]=0,n&&--n===0)break}}else for(let o=0,l,c;o<t.result.length;o++)for(l=t.result[o],e=0;e<l.length;e++)c=l[e],s[c]&&((u[o]||(u[o]=[])).push(c),s[c]=0);return u}W();dt.prototype.search=function(t,e,n,r){n||(!e&&Lt(t)?(n=t,t=""):Lt(e)&&(n=e,e=0));let i=[];var s=[];let u,o,l,c,f,h,g=0,a=!0,D;if(n){n.constructor===Array&&(n={index:n}),t=n.query||t,u=n.pluck,o=n.merge,c=n.boost,h=u||n.field||(h=n.index)&&(h.index?null:h);var p=this.tag&&n.tag;l=n.suggest,a=n.resolve!==!1,f=n.cache,D=a&&this.store&&n.highlight;var d=!!D||a&&this.store&&n.enrich;e=n.limit||e;var F=n.offset||0;if(e||(e=a?100:0),p&&(!this.db||!r)){p.constructor!==Array&&(p=[p]);var m=[];for(let B=0,y;B<p.length;B++)if(y=p[B],y.field&&y.tag){var A=y.tag;if(A.constructor===Array)for(var x=0;x<A.length;x++)m.push(y.field,A[x]);else m.push(y.field,A)}else{A=Object.keys(y);for(let v=0,M,T;v<A.length;v++)if(M=A[v],T=y[M],T.constructor===Array)for(x=0;x<T.length;x++)m.push(M,T[x]);else m.push(M,T)}if(p=m,!t){if(s=[],m.length)for(p=0;p<m.length;p+=2){if(this.db){if(r=this.index.get(m[p]),!r)continue;s.push(r=r.db.tag(m[p+1],e,F,d))}else r=ei.call(this,m[p],m[p+1],e,F,d);i.push(a?{field:m[p],tag:m[p+1],result:r}:[r])}if(s.length){let B=this;return Promise.all(s).then(function(y){for(let v=0;v<y.length;v++)a?i[v].result=y[v]:i[v]=y[v];return a?i:new j(i.length>1?$t(i,1,0,0,l,c):i[0],B)})}return a?i:new j(i.length>1?$t(i,1,0,0,l,c):i[0],this)}}a||u||!(h=h||this.field)||(U(h)?u=h:(h.constructor===Array&&h.length===1&&(h=h[0]),u=h.field||h.index)),h&&h.constructor!==Array&&(h=[h])}h||(h=this.field);let b;m=(this.worker||this.db)&&!r&&[];for(let B=0,y,v,M;B<h.length;B++){if(v=h[B],this.db&&this.tag&&!this.B[B])continue;let T;if(U(v)||(T=v,v=T.field,t=T.query||t,e=Ct(T.limit,e),F=Ct(T.offset,F),l=Ct(T.suggest,l),D=a&&this.store&&Ct(T.highlight,D),d=!!D||a&&this.store&&Ct(T.enrich,d),f=Ct(T.cache,f)),r)y=r[B];else{A=T||n||{},x=A.enrich;var k=this.index.get(v);if(p&&(this.db&&(A.tag=p,A.field=h,b=k.db.support_tag_search),!b&&x&&(A.enrich=!1),b||(A.limit=0,A.offset=0)),y=f?k.searchCache(t,p&&!b?0:e,A):k.search(t,p&&!b?0:e,A),p&&!b&&(A.limit=e,A.offset=F),x&&(A.enrich=x),m){m[B]=y;continue}}if(M=(y=y.result||y)&&y.length,p&&M){if(A=[],x=0,this.db&&r){if(!b)for(k=h.length;k<r.length;k++){let N=r[k];if(N&&N.length)x++,A.push(N);else if(!l)return a?i:new j(i,this)}}else for(let N=0,z,R;N<p.length;N+=2){if(z=this.tag.get(p[N]),!z){if(l)continue;return a?i:new j(i,this)}if(R=(z=z&&z.get(p[N+1]))&&z.length)x++,A.push(z);else if(!l)return a?i:new j(i,this)}if(x){if(y=ti(y,A,e,F,a),M=y.length,!M&&!l)return a?y:new j(y,this);x--}}if(M)s[g]=v,i.push(y),g++;else if(h.length===1)return a?i:new j(i,this)}if(m){if(this.db&&p&&p.length&&!b)for(d=0;d<p.length;d+=2){if(s=this.index.get(p[d]),!s){if(l)continue;return a?i:new j(i,this)}m.push(s.db.tag(p[d+1],e,F,!1))}let B=this;return Promise.all(m).then(function(y){return n&&(n.resolve=a),y.length&&(y=B.search(t,e,n,y)),y})}if(!g)return a?i:new j(i,this);if(u&&(!d||!this.store))return i=i[0],a?i:new j(i,this);for(m=[],F=0;F<s.length;F++){if(p=i[F],d&&p.length&&typeof p[0].doc>"u"&&(this.db?m.push(p=this.index.get(this.field[0]).db.enrich(p)):p=wt.call(this,p)),u)return a?D?Ot(t,p,this.index,u,D):p:new j(p,this);i[F]={field:s[F],result:p}}if(d&&this.db&&m.length){let B=this;return Promise.all(m).then(function(y){for(let v=0;v<y.length;v++)i[v].result=y[v];return D&&(i=Ot(t,i,B.index,u,D)),o?Ue(i):i})}return D&&(i=Ot(t,i,this.index,u,D)),o?Ue(i):i};function Ue(t){let e=[],n=W(),r=W();for(let i=0,s,u,o,l,c,f,h;i<t.length;i++){s=t[i],u=s.field,o=s.result;for(let g=0;g<o.length;g++)c=o[g],typeof c!="object"?c={id:l=c}:l=c.id,(f=n[l])?f.push(u):(c.field=n[l]=[u],e.push(c)),(h=c.highlight)&&(f=r[l],f||(r[l]=f={},c.highlight=f),f[u]=h)}return e}function ei(t,e,n,r,i){return t=this.tag.get(t),t?(t=t.get(e),t?(e=t.length-r,e>0&&((n&&e>n||r)&&(t=t.slice(r,r+n)),i&&(t=wt.call(this,t))),t):[]):[]}function wt(t){if(!this||!this.store)return t;if(this.db)return this.index.get(this.field[0]).db.enrich(t);let e=Array(t.length);for(let n=0,r;n<t.length;n++)r=t[n],e[n]={id:r,doc:this.store.get(r)};return e}function dt(t){if(!this||this.constructor!==dt)return new dt(t);let e=t.document||t.doc||t,n,r;if(this.B=[],this.field=[],this.D=[],this.key=(n=e.key||e.id)&&Kt(n,this.D)||"id",(r=t.keystore||0)&&(this.keystore=r),this.fastupdate=!!t.fastupdate,this.reg=!this.fastupdate||t.worker||t.db?r?new J(r):new Set:r?new V(r):new Map,this.h=(n=e.store||null)&&n&&n!==!0&&[],this.store=n?r?new V(r):new Map:null,this.cache=(n=t.cache||null)&&new Dt(n),t.cache=!1,this.worker=t.worker||!1,this.priority=t.priority||4,this.index=ni.call(this,t,e),this.tag=null,(n=e.tag)&&(typeof n=="string"&&(n=[n]),n.length)){this.tag=new Map,this.A=[],this.F=[];for(let i=0,s,u;i<n.length;i++){if(s=n[i],u=s.field||s,!u)throw Error("The tag field from the document descriptor is undefined.");s.custom?this.A[i]=s.custom:(this.A[i]=Kt(u,this.D),s.filter&&(typeof this.A[i]=="string"&&(this.A[i]=new String(this.A[i])),this.A[i].G=s.filter)),this.F[i]=u,this.tag.set(u,new Map)}}if(this.worker){this.fastupdate=!1,t=[];for(let i of this.index.values())i.then&&t.push(i);if(t.length){let i=this;return Promise.all(t).then(function(s){let u=0;for(let o of i.index.entries()){let l=o[0],c=o[1];c.then&&(c=s[u],i.index.set(l,c),u++)}return i})}}else t.db&&(this.fastupdate=!1,this.mount(t.db))}C=dt.prototype;C.mount=function(t){let e=this.field;if(this.tag)for(let s=0,u;s<this.F.length;s++){u=this.F[s];var n=void 0;this.index.set(u,n=new Z({},this.reg)),e===this.field&&(e=e.slice(0)),e.push(u),n.tag=this.tag.get(u)}n=[];let r={db:t.db,type:t.type,fastupdate:t.fastupdate};for(let s=0,u,o;s<e.length;s++){r.field=o=e[s],u=this.index.get(o);let l=new t.constructor(t.id,r);l.id=t.id,n[s]=l.mount(u),u.document=!0,s?u.bypass=!0:u.store=this.store}let i=this;return this.db=Promise.all(n).then(function(){i.db=!0})};C.commit=async function(){let t=[];for(let e of this.index.values())t.push(e.commit());await Promise.all(t),this.reg.clear()};C.destroy=function(){let t=[];for(let e of this.index.values())t.push(e.destroy());return Promise.all(t)};function ni(t,e){let n=new Map,r=e.index||e.field||e;U(r)&&(r=[r]);for(let s=0,u,o;s<r.length;s++){if(u=r[s],U(u)||(o=u,u=u.field),o=Lt(o)?Object.assign({},t,o):t,this.worker){var i=void 0;i=(i=o.encoder)&&i.encode?i:new vt(typeof i=="string"?pe[i]:i||{}),i=new gt(o,i),n.set(u,i)}this.worker||n.set(u,new Z(o,this.reg)),o.custom?this.B[s]=o.custom:(this.B[s]=Kt(u,this.D),o.filter&&(typeof this.B[s]=="string"&&(this.B[s]=new String(this.B[s])),this.B[s].G=o.filter)),this.field[s]=u}if(this.h){t=e.store,U(t)&&(t=[t]);for(let s=0,u,o;s<t.length;s++)u=t[s],o=u.field||u,u.custom?(this.h[s]=u.custom,u.custom.O=o):(this.h[s]=Kt(o,this.D),u.filter&&(typeof this.h[s]=="string"&&(this.h[s]=new String(this.h[s])),this.h[s].G=u.filter))}return n}function Kt(t,e){let n=t.split(":"),r=0;for(let i=0;i<n.length;i++)t=n[i],t[t.length-1]==="]"&&(t=t.substring(0,t.length-2))&&(e[r]=!0),t&&(n[r++]=t);return r<n.length&&(n.length=r),r>1?n:n[0]}C.append=function(t,e){return this.add(t,e,!0)};C.update=function(t,e){return this.remove(t).add(t,e)};C.remove=function(t){Lt(t)&&(t=Mt(t,this.key));for(var e of this.index.values())e.remove(t,!0);if(this.reg.has(t)){if(this.tag&&!this.fastupdate)for(let n of this.tag.values())for(let r of n){e=r[0];let i=r[1],s=i.indexOf(t);s>-1&&(i.length>1?i.splice(s,1):n.delete(e))}this.store&&this.store.delete(t),this.reg.delete(t)}return this.cache&&this.cache.remove(t),this};C.clear=function(){let t=[];for(let e of this.index.values()){let n=e.clear();n.then&&t.push(n)}if(this.tag)for(let e of this.tag.values())e.clear();return this.store&&this.store.clear(),this.cache&&this.cache.clear(),t.length?Promise.all(t):this};C.contain=function(t){return this.db?this.index.get(this.field[0]).db.has(t):this.reg.has(t)};C.cleanup=function(){for(let t of this.index.values())t.cleanup();return this};C.get=function(t){return this.db?this.index.get(this.field[0]).db.enrich(t).then(function(e){return e[0]&&e[0].doc||null}):this.store.get(t)||null};C.set=function(t,e){return typeof t=="object"&&(e=t,t=Mt(e,this.key)),this.store.set(t,e),this};C.searchCache=ae;C.export=ii;C.import=ri;ge(dt.prototype);function me(t,e=0){let n=[],r=[];e&&(e=25e4/e*5e3|0);for(let i of t.entries())r.push(i),r.length===e&&(n.push(r),r=[]);return r.length&&n.push(r),n}function Fe(t,e){e||(e=new Map);for(let n=0,r;n<t.length;n++)r=t[n],e.set(r[0],r[1]);return e}function qe(t,e=0){let n=[],r=[];e&&(e=25e4/e*1e3|0);for(let i of t.entries())r.push([i[0],me(i[1])[0]||[]]),r.length===e&&(n.push(r),r=[]);return r.length&&n.push(r),n}function tn(t,e){e||(e=new Map);for(let n=0,r,i;n<t.length;n++)r=t[n],i=e.get(r[0]),e.set(r[0],Fe(r[1],i));return e}function en(t){let e=[],n=[];for(let r of t.keys())n.push(r),n.length===25e4&&(e.push(n),n=[]);return n.length&&e.push(n),e}function nn(t,e){e||(e=new Set);for(let n=0;n<t.length;n++)e.add(t[n]);return e}function Ut(t,e,n,r,i,s,u=0){let o=r&&r.constructor===Array;var l=o?r.shift():r;if(!l)return this.export(t,e,i,s+1);if((l=t((e?e+".":"")+(u+1)+"."+n,JSON.stringify(l)))&&l.then){let c=this;return l.then(function(){return Ut.call(c,t,e,n,o?r:null,i,s,u+1)})}return Ut.call(this,t,e,n,o?r:null,i,s,u+1)}function ii(t,e,n=0,r=0){if(n<this.field.length){let u=this.field[n];if((e=this.index.get(u).export(t,u,n,r=1))&&e.then){let o=this;return e.then(function(){return o.export(t,u,n+1)})}return this.export(t,u,n+1)}let i,s;switch(r){case 0:i="reg",s=en(this.reg),e=null;break;case 1:i="tag",s=this.tag&&qe(this.tag,this.reg.size),e=null;break;case 2:i="doc",s=this.store&&me(this.store),e=null;break;default:return}return Ut.call(this,t,e,i,s||null,n,r)}function ri(t,e){var n=t.split(".");n[n.length-1]==="json"&&n.pop();let r=n.length>2?n[0]:"";if(n=n.length>2?n[2]:n[1],this.worker&&r)return this.index.get(r).import(t);if(e){if(typeof e=="string"&&(e=JSON.parse(e)),r)return this.index.get(r).import(n,e);switch(n){case"reg":this.fastupdate=!1,this.reg=nn(e,this.reg);for(let i=0,s;i<this.field.length;i++)s=this.index.get(this.field[i]),s.fastupdate=!1,s.reg=this.reg;if(this.worker){e=[];for(let i of this.index.values())e.push(i.import(t));return Promise.all(e)}break;case"tag":this.tag=tn(e,this.tag);break;case"doc":this.store=Fe(e,this.store)}}}function Ve(t,e){let n="";for(let r of t.entries()){t=r[0];let i=r[1],s="";for(let u=0,o;u<i.length;u++){o=i[u]||[""];let l="";for(let c=0;c<o.length;c++)l+=(l?",":"")+(e==="string"?'"'+o[c]+'"':o[c]);l="["+l+"]",s+=(s?",":"")+l}s='["'+t+'",['+s+"]]",n+=(n?",":"")+s}return n}Z.prototype.remove=function(t,e){let n=this.reg.size&&(this.fastupdate?this.reg.get(t):this.reg.has(t));if(n){if(this.fastupdate){for(let r=0,i,s;r<n.length;r++)if((i=n[r])&&(s=i.length))if(i[s-1]===t)i.pop();else{let u=i.indexOf(t);u>=0&&i.splice(u,1)}}else jt(this.map,t),this.depth&&jt(this.ctx,t);e||this.reg.delete(t)}return this.db&&(this.commit_task.push({del:t}),this.M&&rn(this)),this.cache&&this.cache.remove(t),this};function jt(t,e){let n=0;var r=typeof e>"u";if(t.constructor===Array){for(let i=0,s,u,o;i<t.length;i++)if((s=t[i])&&s.length){if(r)return 1;if(u=s.indexOf(e),u>=0){if(s.length>1)return s.splice(u,1),1;if(delete t[i],n)return 1;o=1}else{if(o)return 1;n++}}}else for(let i of t.entries())r=i[0],jt(i[1],e)?n++:t.delete(r);return n}var si={memory:{resolution:1},performance:{resolution:3,fastupdate:!0,context:{depth:1,resolution:1}},match:{tokenize:"forward"},score:{resolution:9,context:{depth:2,resolution:3}}};Z.prototype.add=function(t,e,n,r){if(e&&(t||t===0)){if(!r&&!n&&this.reg.has(t))return this.update(t,e);r=this.depth,e=this.encoder.encode(e,!r);let c=e.length;if(c){let f=W(),h=W(),g=this.resolution;for(let a=0;a<c;a++){let D=e[this.rtl?c-1-a:a];var i=D.length;if(i&&(r||!h[D])){var s=this.score?this.score(e,D,a,null,0):Rt(g,c,a),u="";switch(this.tokenize){case"tolerant":if(Y(this,h,D,s,t,n),i>2){for(let p=1,d,F,m,A;p<i-1;p++)d=D.charAt(p),F=D.charAt(p+1),m=D.substring(0,p)+F,A=D.substring(p+2),u=m+d+A,Y(this,h,u,s,t,n),u=m+A,Y(this,h,u,s,t,n);Y(this,h,D.substring(0,D.length-1),s,t,n)}break;case"full":if(i>2){for(let p=0,d;p<i;p++)for(s=i;s>p;s--){u=D.substring(p,s),d=this.rtl?i-1-p:p;var o=this.score?this.score(e,D,a,u,d):Rt(g,c,a,i,d);Y(this,h,u,o,t,n)}break}case"bidirectional":case"reverse":if(i>1){for(o=i-1;o>0;o--){u=D[this.rtl?i-1-o:o]+u;var l=this.score?this.score(e,D,a,u,o):Rt(g,c,a,i,o);Y(this,h,u,l,t,n)}u=""}case"forward":if(i>1){for(o=0;o<i;o++)u+=D[this.rtl?i-1-o:o],Y(this,h,u,s,t,n);break}default:if(Y(this,h,D,s,t,n),r&&c>1&&a<c-1)for(i=this.N,u=D,s=Math.min(r+1,this.rtl?a+1:c-a),o=1;o<s;o++){D=e[this.rtl?c-1-a-o:a+o],l=this.bidirectional&&D>u;let p=this.score?this.score(e,u,a,D,o-1):Rt(i+(c/2>i?0:1),c,a,s-1,o-1);Y(this,f,l?u:D,p,t,n,l?D:u)}}}}this.fastupdate||this.reg.add(t)}}return this.db&&(this.commit_task.push(n?{ins:t}:{del:t}),this.M&&rn(this)),this};function Y(t,e,n,r,i,s,u){let o,l;if(!(o=e[n])||u&&!o[u]){if(u?(e=o||(e[n]=W()),e[u]=1,l=t.ctx,(o=l.get(u))?l=o:l.set(u,l=t.keystore?new V(t.keystore):new Map)):(l=t.map,e[n]=1),(o=l.get(n))?l=o:l.set(n,l=o=[]),s){for(let c=0,f;c<o.length;c++)if((f=o[c])&&f.includes(i)){if(c<=r)return;f.splice(f.indexOf(i),1),t.fastupdate&&(e=t.reg.get(i))&&e.splice(e.indexOf(f),1);break}}if(l=l[r]||(l[r]=[]),l.push(i),l.length===2**31-1){if(e=new xt(l),t.fastupdate)for(let c of t.reg.values())c.includes(l)&&(c[c.indexOf(l)]=e);o[r]=l=e}t.fastupdate&&((r=t.reg.get(i))?r.push(l):t.reg.set(i,[l]))}}function Rt(t,e,n,r,i){return n&&t>1?e+(r||0)<=t?n+(i||0):(t-1)/(e+(r||0))*(n+(i||0))+1|0:0}Z.prototype.search=function(t,e,n){if(n||(e||typeof t!="object"?typeof e=="object"&&(n=e,e=0):(n=t,t="")),n&&n.cache)return n.cache=!1,t=this.searchCache(t,e,n),n.cache=!0,t;let r=[],i,s,u,o=0,l,c,f,h,g;n&&(t=n.query||t,e=n.limit||e,o=n.offset||0,s=n.context,u=n.suggest,g=(l=n.resolve)&&n.enrich,f=n.boost,h=n.resolution,c=this.db&&n.tag),typeof l>"u"&&(l=this.resolve),s=this.depth&&s!==!1;let a=this.encoder.encode(t,!s);if(i=a.length,e=e||(l?100:0),i===1)return Ze.call(this,a[0],"",e,o,l,g,c);if(i===2&&s&&!u)return Ze.call(this,a[1],a[0],e,o,l,g,c);let D=W(),p=0,d;if(s&&(d=a[0],p=1),h||h===0||(h=d?this.N:this.resolution),this.db){if(this.db.search&&(n=this.db.search(this,a,e,o,u,l,g,c),n!==!1))return n;let F=this;return(async function(){for(let m,A;p<i;p++){if((A=a[p])&&!D[A]){if(D[A]=1,m=await fe(F,A,d,0,0,!1,!1),m=Qe(m,r,u,h)){r=m;break}d&&(u&&m&&r.length||(d=A))}u&&d&&p===i-1&&!r.length&&(h=F.resolution,d="",p=-1,D=W())}return Je(r,h,e,o,u,f,l)})()}for(let F,m;p<i;p++){if((m=a[p])&&!D[m]){if(D[m]=1,F=fe(this,m,d,0,0,!1,!1),F=Qe(F,r,u,h)){r=F;break}d&&(u&&F&&r.length||(d=m))}u&&d&&p===i-1&&!r.length&&(h=this.resolution,d="",p=-1,D=W())}return Je(r,h,e,o,u,f,l)};function Je(t,e,n,r,i,s,u){let o=t.length,l=t;if(o>1)l=$t(t,e,n,r,i,s,u);else if(o===1)return u?de.call(null,t[0],n,r):new j(t[0],this);return u?l:new j(l,this)}function Ze(t,e,n,r,i,s,u){return t=fe(this,t,e,n,r,i,s,u),this.db?t.then(function(o){return i?o||[]:new j(o,this)}):t&&t.length?i?de.call(this,t,n,r):new j(t,this):i?[]:new j([],this)}function Qe(t,e,n,r){let i=[];if(t&&t.length){if(t.length<=r){e.push(t);return}for(let s=0,u;s<r;s++)(u=t[s])&&(i[s]=u);if(i.length){e.push(i);return}}if(!n)return i}function fe(t,e,n,r,i,s,u,o){let l;return n&&(l=t.bidirectional&&e>n)&&(l=n,n=e,e=l),t.db?t.db.get(e,n,r,i,s,u,o):(t=n?(t=t.ctx.get(n))&&t.get(e):t.map.get(e),t)}function Z(t,e){if(!this||this.constructor!==Z)return new Z(t);if(t){var n=U(t)?t:t.preset;n&&(t=Object.assign({},si[n],t))}else t={};n=t.context;let r=n===!0?{depth:1}:n||{},i=U(t.encoder)?pe[t.encoder]:t.encode||t.encoder||{};this.encoder=i.encode?i:typeof i=="object"?new vt(i):{encode:i},this.resolution=t.resolution||9,this.tokenize=n=(n=t.tokenize)&&n!=="default"&&n!=="exact"&&n||"strict",this.depth=n==="strict"&&r.depth||0,this.bidirectional=r.bidirectional!==!1,this.fastupdate=!!t.fastupdate,this.score=t.score||null,(n=t.keystore||0)&&(this.keystore=n),this.map=n?new V(n):new Map,this.ctx=n?new V(n):new Map,this.reg=e||(this.fastupdate?n?new V(n):new Map:n?new J(n):new Set),this.N=r.resolution||3,this.rtl=i.rtl||t.rtl||!1,this.cache=(n=t.cache||null)&&new Dt(n),this.resolve=t.resolve!==!1,(n=t.db)&&(this.db=this.mount(n)),this.M=t.commit!==!1,this.commit_task=[],this.commit_timer=null,this.priority=t.priority||4}C=Z.prototype;C.mount=function(t){return this.commit_timer&&(clearTimeout(this.commit_timer),this.commit_timer=null),t.mount(this)};C.commit=function(){return this.commit_timer&&(clearTimeout(this.commit_timer),this.commit_timer=null),this.db.commit(this)};C.destroy=function(){return this.commit_timer&&(clearTimeout(this.commit_timer),this.commit_timer=null),this.db.destroy()};function rn(t){t.commit_timer||(t.commit_timer=setTimeout(function(){t.commit_timer=null,t.db.commit(t)},1))}C.clear=function(){return this.map.clear(),this.ctx.clear(),this.reg.clear(),this.cache&&this.cache.clear(),this.db?(this.commit_timer&&clearTimeout(this.commit_timer),this.commit_timer=null,this.commit_task=[],this.db.clear()):this};C.append=function(t,e){return this.add(t,e,!0)};C.contain=function(t){return this.db?this.db.has(t):this.reg.has(t)};C.update=function(t,e){let n=this,r=this.remove(t);return r&&r.then?r.then(()=>n.add(t,e)):this.add(t,e)};C.cleanup=function(){return this.fastupdate?(jt(this.map),this.depth&&jt(this.ctx),this):this};C.searchCache=ae;C.export=function(t,e,n=0,r=0){let i,s;switch(r){case 0:i="reg",s=en(this.reg);break;case 1:i="cfg",s=null;break;case 2:i="map",s=me(this.map,this.reg.size);break;case 3:i="ctx",s=qe(this.ctx,this.reg.size);break;default:return}return Ut.call(this,t,e,i,s,n,r)};C.import=function(t,e){if(e)switch(typeof e=="string"&&(e=JSON.parse(e)),t=t.split("."),t[t.length-1]==="json"&&t.pop(),t.length===3&&t.shift(),t=t.length>1?t[1]:t[0],t){case"reg":this.fastupdate=!1,this.reg=nn(e,this.reg);break;case"map":this.map=Fe(e,this.map);break;case"ctx":this.ctx=tn(e,this.ctx)}};C.serialize=function(t=!0){let e="",n="",r="";if(this.reg.size){let s;for(var i of this.reg.keys())s||(s=typeof i),e+=(e?",":"")+(s==="string"?'"'+i+'"':i);e="index.reg=new Set(["+e+"]);",n=Ve(this.map,s),n="index.map=new Map(["+n+"]);";for(let u of this.ctx.entries()){i=u[0];let o=Ve(u[1],s);o="new Map(["+o+"])",o='["'+i+'",'+o+"]",r+=(r?",":"")+o}r="index.ctx=new Map(["+r+"]);"}return t?"function inject(index){"+e+n+r+"}":e+n+r};ge(Z.prototype);var sn=typeof window<"u"&&(window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB),Vt=["map","ctx","tag","reg","cfg"],at=W();function Jt(t,e={}){if(!this||this.constructor!==Jt)return new Jt(t,e);typeof t=="object"&&(e=t,t=t.name),t||console.info("Default storage space was used, because a name was not passed."),this.id="flexsearch"+(t?":"+t.toLowerCase().replace(/[^a-z0-9_\\-]/g,""):""),this.field=e.field?e.field.toLowerCase().replace(/[^a-z0-9_\\-]/g,""):"",this.type=e.type,this.fastupdate=this.support_tag_search=!1,this.db=null,this.h={}}C=Jt.prototype;C.mount=function(t){return t.index?t.mount(this):(t.db=this,this.open())};C.open=function(){if(this.db)return this.db;let t=this;navigator.storage&&navigator.storage.persist&&navigator.storage.persist(),at[t.id]||(at[t.id]=[]),at[t.id].push(t.field);let e=sn.open(t.id,1);return e.onupgradeneeded=function(){let n=t.db=this.result;for(let r=0,i;r<Vt.length;r++){i=Vt[r];for(let s=0,u;s<at[t.id].length;s++)u=at[t.id][s],n.objectStoreNames.contains(i+(i!=="reg"&&u?":"+u:""))||n.createObjectStore(i+(i!=="reg"&&u?":"+u:""))}},t.db=rt(e,function(n){t.db=n,t.db.onversionchange=function(){t.close()}})};C.close=function(){this.db&&this.db.close(),this.db=null};C.destroy=function(){let t=sn.deleteDatabase(this.id);return rt(t)};C.clear=function(){let t=[];for(let n=0,r;n<Vt.length;n++){r=Vt[n];for(let i=0,s;i<at[this.id].length;i++)s=at[this.id][i],t.push(r+(r!=="reg"&&s?":"+s:""))}let e=this.db.transaction(t,"readwrite");for(let n=0;n<t.length;n++)e.objectStore(t[n]).clear();return rt(e)};C.get=function(t,e,n=0,r=0,i=!0,s=!1){t=this.db.transaction((e?"ctx":"map")+(this.field?":"+this.field:""),"readonly").objectStore((e?"ctx":"map")+(this.field?":"+this.field:"")).get(e?e+":"+t:t);let u=this;return rt(t).then(function(o){let l=[];if(!o||!o.length)return l;if(i){if(!n&&!r&&o.length===1)return o[0];for(let c=0,f;c<o.length;c++)if((f=o[c])&&f.length){if(r>=f.length){r-=f.length;continue}let h=n?r+Math.min(f.length-r,n):f.length;for(let g=r;g<h;g++)l.push(f[g]);if(r=0,l.length===n)break}return s?u.enrich(l):l}return o})};C.tag=function(t,e=0,n=0,r=!1){t=this.db.transaction("tag"+(this.field?":"+this.field:""),"readonly").objectStore("tag"+(this.field?":"+this.field:"")).get(t);let i=this;return rt(t).then(function(s){return!s||!s.length||n>=s.length?[]:!e&&!n?s:(s=s.slice(n,n+e),r?i.enrich(s):s)})};C.enrich=function(t){typeof t!="object"&&(t=[t]);let e=this.db.transaction("reg","readonly").objectStore("reg"),n=[];for(let r=0;r<t.length;r++)n[r]=rt(e.get(t[r]));return Promise.all(n).then(function(r){for(let i=0;i<r.length;i++)r[i]={id:t[i],doc:r[i]?JSON.parse(r[i]):null};return r})};C.has=function(t){return t=this.db.transaction("reg","readonly").objectStore("reg").getKey(t),rt(t).then(function(e){return!!e})};C.search=null;C.info=function(){};C.transaction=function(t,e,n){t+=t!=="reg"&&this.field?":"+this.field:"";let r=this.h[t+":"+e];if(r)return n.call(this,r);let i=this.db.transaction(t,e);this.h[t+":"+e]=r=i.objectStore(t);let s=n.call(this,r);return this.h[t+":"+e]=null,rt(i).finally(function(){return s})};C.commit=async function(t){let e=t.commit_task,n=[];t.commit_task=[];for(let r=0,i;r<e.length;r++)i=e[r],i.del&&n.push(i.del);n.length&&await this.remove(n),t.reg.size&&(await this.transaction("map","readwrite",function(r){for(let i of t.map){let s=i[0],u=i[1];u.length&&(r.get(s).onsuccess=function(){let o=this.result;var l;if(o&&o.length){let c=Math.max(o.length,u.length);for(let f=0,h,g;f<c;f++)if((g=u[f])&&g.length){if((h=o[f])&&h.length)for(l=0;l<g.length;l++)h.push(g[l]);else o[f]=g;l=1}}else o=u,l=1;l&&r.put(o,s)})}}),await this.transaction("ctx","readwrite",function(r){for(let i of t.ctx){let s=i[0],u=i[1];for(let o of u){let l=o[0],c=o[1];c.length&&(r.get(s+":"+l).onsuccess=function(){let f=this.result;var h;if(f&&f.length){let g=Math.max(f.length,c.length);for(let a=0,D,p;a<g;a++)if((p=c[a])&&p.length){if((D=f[a])&&D.length)for(h=0;h<p.length;h++)D.push(p[h]);else f[a]=p;h=1}}else f=c,h=1;h&&r.put(f,s+":"+l)})}}}),t.store?await this.transaction("reg","readwrite",function(r){for(let i of t.store){let s=i[0],u=i[1];r.put(typeof u=="object"?JSON.stringify(u):1,s)}}):t.bypass||await this.transaction("reg","readwrite",function(r){for(let i of t.reg.keys())r.put(1,i)}),t.tag&&await this.transaction("tag","readwrite",function(r){for(let i of t.tag){let s=i[0],u=i[1];u.length&&(r.get(s).onsuccess=function(){let o=this.result;o=o&&o.length?o.concat(u):u,r.put(o,s)})}}),t.map.clear(),t.ctx.clear(),t.tag&&t.tag.clear(),t.store&&t.store.clear(),t.document||t.reg.clear())};function oe(t,e,n){let r=t.value,i,s=0;for(let u=0,o;u<r.length;u++){if(o=n?r:r[u]){for(let l=0,c,f;l<e.length;l++)if(f=e[l],c=o.indexOf(f),c>=0)if(i=1,o.length>1)o.splice(c,1);else{r[u]=[];break}s+=o.length}if(n)break}s?i&&t.update(r):t.delete(),t.continue()}C.remove=function(t){return typeof t!="object"&&(t=[t]),Promise.all([this.transaction("map","readwrite",function(e){e.openCursor().onsuccess=function(){let n=this.result;n&&oe(n,t)}}),this.transaction("ctx","readwrite",function(e){e.openCursor().onsuccess=function(){let n=this.result;n&&oe(n,t)}}),this.transaction("tag","readwrite",function(e){e.openCursor().onsuccess=function(){let n=this.result;n&&oe(n,t,!0)}}),this.transaction("reg","readwrite",function(e){for(let n=0;n<t.length;n++)e.delete(t[n])})])};function rt(t,e){return new Promise((n,r)=>{t.onsuccess=t.oncomplete=function(){e&&e(this.result),e=null,n(this.result)},t.onerror=t.onblocked=r,t=null})}var un={Index:Z,Charset:pe,Encoder:vt,Document:dt,Worker:gt,Resolver:j,IndexedDB:Jt,Language:{}};var Hi=Object.hasOwnProperty;var fn,H,an,ui,st,on,pn,gn,dn,Ae,ye,Ce,oi,Dn={},Yt=[],li=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,qt=Array.isArray;function G(t,e){for(var n in e)t[n]=e[n];return t}function we(t){t&&t.parentNode&&t.parentNode.removeChild(t)}function _e(t,e,n,r,i){var s={type:t,props:e,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++an,__i:-1,__u:0};return i==null&&H.vnode!=null&&H.vnode(s),s}function kt(t){return t.children}function Xt(t,e){this.props=t,this.context=e}function Bt(t,e){if(e==null)return t.__?Bt(t.__,t.__i+1):null;for(var n;e<t.__k.length;e++)if((n=t.__k[e])!=null&&n.__e!=null)return n.__e;return typeof t.type=="function"?Bt(t):null}function hi(t){if(t.__P&&t.__d){var e=t.__v,n=e.__e,r=[],i=[],s=G({},e);s.__v=e.__v+1,H.vnode&&H.vnode(s),yn(t.__P,s,e,t.__n,t.__P.namespaceURI,32&e.__u?[n]:null,r,n??Bt(e),!!(32&e.__u),i),s.__v=e.__v,s.__.__k[s.__i]=s,ai(r,s,i),e.__e=e.__=null,s.__e!=n&&mn(s)}}function mn(t){if((t=t.__)!=null&&t.__c!=null)return t.__e=t.__c.base=null,t.__k.some(function(e){if(e!=null&&e.__e!=null)return t.__e=t.__c.base=e.__e}),mn(t)}function ln(t){(!t.__d&&(t.__d=!0)&&st.push(t)&&!Gt.__r++||on!=H.debounceRendering)&&((on=H.debounceRendering)||pn)(Gt)}function Gt(){try{for(var t,e=1;st.length;)st.length>e&&st.sort(gn),t=st.shift(),e=st.length,hi(t)}finally{st.length=Gt.__r=0}}function Fn(t,e,n,r,i,s,u,o,l,c,f){var h,g,a,D,p,d,F,m=r&&r.__k||Yt,A=e.length;for(l=ci(n,e,m,l,A),h=0;h<A;h++)(a=n.__k[h])!=null&&(g=a.__i!=-1&&m[a.__i]||Dn,a.__i=h,d=yn(t,a,g,i,s,u,o,l,c,f),D=a.__e,a.ref&&g.ref!=a.ref&&(g.ref&&ve(g.ref,null,a),f.push(a.ref,a.__c||D,a)),p==null&&D!=null&&(p=D),(F=!!(4&a.__u))||g.__k===a.__k?l=_n(a,l,t,F):typeof a.type=="function"&&d!==void 0?l=d:D&&(l=D.nextSibling),a.__u&=-7);return n.__e=p,l}function ci(t,e,n,r,i){var s,u,o,l,c,f=n.length,h=f,g=0;for(t.__k=new Array(i),s=0;s<i;s++)(u=e[s])!=null&&typeof u!="boolean"&&typeof u!="function"?(typeof u=="string"||typeof u=="number"||typeof u=="bigint"||u.constructor==String?u=t.__k[s]=_e(null,u,null,null,null):qt(u)?u=t.__k[s]=_e(kt,{children:u},null,null,null):u.constructor===void 0&&u.__b>0?u=t.__k[s]=_e(u.type,u.props,u.key,u.ref?u.ref:null,u.__v):t.__k[s]=u,l=s+g,u.__=t,u.__b=t.__b+1,o=null,(c=u.__i=fi(u,n,l,h))!=-1&&(h--,(o=n[c])&&(o.__u|=2)),o==null||o.__v==null?(c==-1&&(i>f?g--:i<f&&g++),typeof u.type!="function"&&(u.__u|=4)):c!=l&&(c==l-1?g--:c==l+1?g++:(c>l?g--:g++,u.__u|=4))):t.__k[s]=null;if(h)for(s=0;s<f;s++)(o=n[s])!=null&&(2&o.__u)==0&&(o.__e==r&&(r=Bt(o)),En(o,o));return r}function _n(t,e,n,r){var i,s;if(typeof t.type=="function"){for(i=t.__k,s=0;i&&s<i.length;s++)i[s]&&(i[s].__=t,e=_n(i[s],e,n,r));return e}t.__e!=e&&(r&&(e&&t.type&&!e.parentNode&&(e=Bt(t)),n.insertBefore(t.__e,e||null)),e=t.__e);do e=e&&e.nextSibling;while(e!=null&&e.nodeType==8);return e}function fi(t,e,n,r){var i,s,u,o=t.key,l=t.type,c=e[n],f=c!=null&&(2&c.__u)==0;if(c===null&&o==null||f&&o==c.key&&l==c.type)return n;if(r>(f?1:0)){for(i=n-1,s=n+1;i>=0||s<e.length;)if((c=e[u=i>=0?i--:s++])!=null&&(2&c.__u)==0&&o==c.key&&l==c.type)return u}return-1}function hn(t,e,n){e[0]=="-"?t.setProperty(e,n??""):t[e]=n==null?"":typeof n!="number"||li.test(e)?n:n+"px"}function Qt(t,e,n,r,i){var s,u;t:if(e=="style")if(typeof n=="string")t.style.cssText=n;else{if(typeof r=="string"&&(t.style.cssText=r=""),r)for(e in r)n&&e in n||hn(t.style,e,"");if(n)for(e in n)r&&n[e]==r[e]||hn(t.style,e,n[e])}else if(e[0]=="o"&&e[1]=="n")s=e!=(e=e.replace(dn,"$1")),u=e.toLowerCase(),e=u in t||e=="onFocusOut"||e=="onFocusIn"?u.slice(2):e.slice(2),t.l||(t.l={}),t.l[e+s]=n,n?r?n.u=r.u:(n.u=Ae,t.addEventListener(e,s?Ce:ye,s)):t.removeEventListener(e,s?Ce:ye,s);else{if(i=="http://www.w3.org/2000/svg")e=e.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(e!="width"&&e!="height"&&e!="href"&&e!="list"&&e!="form"&&e!="tabIndex"&&e!="download"&&e!="rowSpan"&&e!="colSpan"&&e!="role"&&e!="popover"&&e in t)try{t[e]=n??"";break t}catch{}typeof n=="function"||(n==null||n===!1&&e[4]!="-"?t.removeAttribute(e):t.setAttribute(e,e=="popover"&&n==1?"":n))}}function cn(t){return function(e){if(this.l){var n=this.l[e.type+t];if(e.t==null)e.t=Ae++;else if(e.t<n.u)return;return n(H.event?H.event(e):e)}}}function yn(t,e,n,r,i,s,u,o,l,c){var f,h,g,a,D,p,d,F,m,A,x,b,k,B,y,v=e.type;if(e.constructor!==void 0)return null;128&n.__u&&(l=!!(32&n.__u),s=[o=e.__e=n.__e]),(f=H.__b)&&f(e);t:if(typeof v=="function")try{if(F=e.props,m=v.prototype&&v.prototype.render,A=(f=v.contextType)&&r[f.__c],x=f?A?A.props.value:f.__:r,n.__c?d=(h=e.__c=n.__c).__=h.__E:(m?e.__c=h=new v(F,x):(e.__c=h=new Xt(F,x),h.constructor=v,h.render=gi),A&&A.sub(h),h.state||(h.state={}),h.__n=r,g=h.__d=!0,h.__h=[],h._sb=[]),m&&h.__s==null&&(h.__s=h.state),m&&v.getDerivedStateFromProps!=null&&(h.__s==h.state&&(h.__s=G({},h.__s)),G(h.__s,v.getDerivedStateFromProps(F,h.__s))),a=h.props,D=h.state,h.__v=e,g)m&&v.getDerivedStateFromProps==null&&h.componentWillMount!=null&&h.componentWillMount(),m&&h.componentDidMount!=null&&h.__h.push(h.componentDidMount);else{if(m&&v.getDerivedStateFromProps==null&&F!==a&&h.componentWillReceiveProps!=null&&h.componentWillReceiveProps(F,x),e.__v==n.__v||!h.__e&&h.shouldComponentUpdate!=null&&h.shouldComponentUpdate(F,h.__s,x)===!1){e.__v!=n.__v&&(h.props=F,h.state=h.__s,h.__d=!1),e.__e=n.__e,e.__k=n.__k,e.__k.some(function(M){M&&(M.__=e)}),Yt.push.apply(h.__h,h._sb),h._sb=[],h.__h.length&&u.push(h);break t}h.componentWillUpdate!=null&&h.componentWillUpdate(F,h.__s,x),m&&h.componentDidUpdate!=null&&h.__h.push(function(){h.componentDidUpdate(a,D,p)})}if(h.context=x,h.props=F,h.__P=t,h.__e=!1,b=H.__r,k=0,m)h.state=h.__s,h.__d=!1,b&&b(e),f=h.render(h.props,h.state,h.context),Yt.push.apply(h.__h,h._sb),h._sb=[];else do h.__d=!1,b&&b(e),f=h.render(h.props,h.state,h.context),h.state=h.__s;while(h.__d&&++k<25);h.state=h.__s,h.getChildContext!=null&&(r=G(G({},r),h.getChildContext())),m&&!g&&h.getSnapshotBeforeUpdate!=null&&(p=h.getSnapshotBeforeUpdate(a,D)),B=f!=null&&f.type===kt&&f.key==null?Cn(f.props.children):f,o=Fn(t,qt(B)?B:[B],e,n,r,i,s,u,o,l,c),h.base=e.__e,e.__u&=-161,h.__h.length&&u.push(h),d&&(h.__E=h.__=null)}catch(M){if(e.__v=null,l||s!=null)if(M.then){for(e.__u|=l?160:128;o&&o.nodeType==8&&o.nextSibling;)o=o.nextSibling;s[s.indexOf(o)]=null,e.__e=o}else{for(y=s.length;y--;)we(s[y]);Ee(e)}else e.__e=n.__e,e.__k=n.__k,M.then||Ee(e);H.__e(M,e,n)}else s==null&&e.__v==n.__v?(e.__k=n.__k,e.__e=n.__e):o=e.__e=pi(n.__e,e,n,r,i,s,u,l,c);return(f=H.diffed)&&f(e),128&e.__u?void 0:o}function Ee(t){t&&(t.__c&&(t.__c.__e=!0),t.__k&&t.__k.some(Ee))}function ai(t,e,n){for(var r=0;r<n.length;r++)ve(n[r],n[++r],n[++r]);H.__c&&H.__c(e,t),t.some(function(i){try{t=i.__h,i.__h=[],t.some(function(s){s.call(i)})}catch(s){H.__e(s,i.__v)}})}function Cn(t){return typeof t!="object"||t==null||t.__b>0?t:qt(t)?t.map(Cn):G({},t)}function pi(t,e,n,r,i,s,u,o,l){var c,f,h,g,a,D,p,d=n.props||Dn,F=e.props,m=e.type;if(m=="svg"?i="http://www.w3.org/2000/svg":m=="math"?i="http://www.w3.org/1998/Math/MathML":i||(i="http://www.w3.org/1999/xhtml"),s!=null){for(c=0;c<s.length;c++)if((a=s[c])&&"setAttribute"in a==!!m&&(m?a.localName==m:a.nodeType==3)){t=a,s[c]=null;break}}if(t==null){if(m==null)return document.createTextNode(F);t=document.createElementNS(i,m,F.is&&F),o&&(H.__m&&H.__m(e,s),o=!1),s=null}if(m==null)d===F||o&&t.data==F||(t.data=F);else{if(s=s&&fn.call(t.childNodes),!o&&s!=null)for(d={},c=0;c<t.attributes.length;c++)d[(a=t.attributes[c]).name]=a.value;for(c in d)a=d[c],c=="dangerouslySetInnerHTML"?h=a:c=="children"||c in F||c=="value"&&"defaultValue"in F||c=="checked"&&"defaultChecked"in F||Qt(t,c,null,a,i);for(c in F)a=F[c],c=="children"?g=a:c=="dangerouslySetInnerHTML"?f=a:c=="value"?D=a:c=="checked"?p=a:o&&typeof a!="function"||d[c]===a||Qt(t,c,a,d[c],i);if(f)o||h&&(f.__html==h.__html||f.__html==t.innerHTML)||(t.innerHTML=f.__html),e.__k=[];else if(h&&(t.innerHTML=""),Fn(e.type=="template"?t.content:t,qt(g)?g:[g],e,n,r,m=="foreignObject"?"http://www.w3.org/1999/xhtml":i,s,u,s?s[0]:n.__k&&Bt(n,0),o,l),s!=null)for(c=s.length;c--;)we(s[c]);o||(c="value",m=="progress"&&D==null?t.removeAttribute("value"):D!=null&&(D!==t[c]||m=="progress"&&!D||m=="option"&&D!=d[c])&&Qt(t,c,D,d[c],i),c="checked",p!=null&&p!=t[c]&&Qt(t,c,p,d[c],i))}return t}function ve(t,e,n){try{if(typeof t=="function"){var r=typeof t.__u=="function";r&&t.__u(),r&&e==null||(t.__u=t(e))}else t.current=e}catch(i){H.__e(i,n)}}function En(t,e,n){var r,i;if(H.unmount&&H.unmount(t),(r=t.ref)&&(r.current&&r.current!=t.__e||ve(r,null,e)),(r=t.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(s){H.__e(s,e)}r.base=r.__P=null}if(r=t.__k)for(i=0;i<r.length;i++)r[i]&&En(r[i],e,n||typeof t.type!="function");n||we(t.__e),t.__c=t.__=t.__e=void 0}function gi(t,e,n){return this.constructor(t,n)}fn=Yt.slice,H={__e:function(t,e,n,r){for(var i,s,u;e=e.__;)if((i=e.__c)&&!i.__)try{if((s=i.constructor)&&s.getDerivedStateFromError!=null&&(i.setState(s.getDerivedStateFromError(t)),u=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(t,r||{}),u=i.__d),u)return i.__E=i}catch(o){t=o}throw t}},an=0,ui=function(t){return t!=null&&t.constructor===void 0},Xt.prototype.setState=function(t,e){var n;n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=G({},this.state),typeof t=="function"&&(t=t(G({},n),this.props)),t&&G(n,t),t!=null&&this.__v&&(e&&this._sb.push(e),ln(this))},Xt.prototype.forceUpdate=function(t){this.__v&&(this.__e=!0,t&&this.__h.push(t),ln(this))},Xt.prototype.render=kt,st=[],pn=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,gn=function(t,e){return t.__v.__b-e.__v.__b},Gt.__r=0,dn=/(PointerCapture)$|Capture$/i,Ae=0,ye=cn(!1),Ce=cn(!0),oi=0;function Di(){return typeof document>"u"?"":document.body?.dataset?.basepath??""}function xe(t,e){let n=e??Di(),r=t.startsWith("/")?t:"/"+t;return n+r}function q(t){for(;t.firstChild;)t.removeChild(t.firstChild)}function An(t,e){if(!t)return()=>{};let n=i=>{t.classList.contains("active")&&i.target===t&&(i.preventDefault(),i.stopPropagation(),e())},r=i=>{t.classList.contains("active")&&i.key==="Escape"&&(i.preventDefault(),e())};return t.addEventListener("click",n),document.addEventListener("keydown",r),()=>{t.removeEventListener("click",n),document.removeEventListener("keydown",r)}}function wn(t,e){let n=t.querySelectorAll("[src], [href]");for(let r of Array.from(n)){let i=r.hasAttribute("href")?"href":"src",s=r.getAttribute(i);if(s&&!(s.startsWith("http://")||s.startsWith("https://")||s.startsWith("mailto:")||s.startsWith("tel:")||s.startsWith("#")||s.startsWith("/")||s.startsWith("data:")))try{let u=new URL(s,e).toString();r.setAttribute(i,u)}catch{continue}}}function te(t){return t.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll('"',"&quot;").replaceAll("'","&#039;")}var Be="basic",bt="",vn=8,mi=5,ee=30,Fi=t=>{let e=[],n=-1,r=-1,i=t.toLowerCase(),s=0;for(let u of i){let o=u.codePointAt(0);o>=12352&&o<=12447||o>=12448&&o<=12543||o>=19968&&o<=40959||o>=44032&&o<=55215||o>=131072&&o<=173791?(n!==-1&&(e.push(i.slice(n,r)),n=-1),e.push(u)):o===32||o===9||o===10||o===13?n!==-1&&(e.push(i.slice(n,r)),n=-1):(n===-1&&(n=s),r=s+1),s+=u.length}return n!==-1&&e.push(i.slice(n)),e},be=new un.Document({encode:Fi,document:{id:"id",tag:"tags",index:[{field:"title",tokenize:"forward"},{field:"content",tokenize:"forward"},{field:"tags",tokenize:"forward"}]}}),Ft=null,Me=[],Te=[],ke=new Map;function ne(t){let e=t.split(/\\s+/),n=[],r=[];for(let i of e)i.startsWith("#")&&i.length>1?n.push(i.substring(1)):i!=="#"&&r.push(i);return{tags:n,query:r.join(" ").trim()}}function xn(t){let e=t.split(/\\s+/),n=e[e.length-1];return n&&n.startsWith("#")?n.substring(1):null}var kn=new DOMParser;async function _i(t){if(ke.has(t))return ke.get(t);let e=new URL(xe(t),window.location.origin).toString();try{let n=await fetch(e);if(!n.ok)return[];let r=await n.text(),i=kn.parseFromString(r??"","text/html");wn(i,e);let s=Array.from(i.getElementsByClassName("popover-hint"));return ke.set(t,s),s}catch{return[]}}var Se=[];function mt(t){Se.push(t)}function yi(){Se.forEach(t=>t()),Se.length=0}async function Ci(){let t=document.querySelectorAll(".search");for(let e of Array.from(t)){let n=e.querySelector(".search-container"),r=e.querySelector(".search-button"),i=e.querySelector(".search-bar"),s=e.querySelector(".search-layout");if(!n||!r||!i||!s)continue;let u=n.closest(".sidebar"),o=s.getAttribute("data-preview")==="true",l=s.getAttribute("data-field-priority"),c=l?JSON.parse(l):["title","content","tags"],f=s.querySelector(".results-container");f||(f=document.createElement("div"),f.className="results-container",f.setAttribute("role","listbox"),f.setAttribute("aria-label","Search results"),s.appendChild(f));let h=s.querySelector(".preview-container");o&&!h&&(h=document.createElement("div"),h.className="preview-container",s.appendChild(h));let g=document.createElement("div");g.className="tag-suggestions",g.setAttribute("role","listbox"),g.setAttribute("aria-label","Tag suggestions"),g.style.display="none";let a=i.parentElement;a.insertBefore(g,i.nextSibling);let D=document.createElement("span");D.className="ghost-text",D.setAttribute("aria-hidden","true"),a.insertBefore(D,i.nextSibling);let p=-1,d=[],F=!1,m=_=>{if(p<0||p>=d.length){D.textContent="";return}let E=d[p];if(!E.toLowerCase().startsWith(_.toLowerCase())){D.textContent="";return}let L=E.substring(_.length);D.innerHTML="";let S=document.createElement("span");S.style.visibility="hidden",S.textContent=i.value,D.appendChild(S),D.appendChild(document.createTextNode(L))},A=()=>{g.querySelectorAll(".tag-suggestion-item").forEach((L,S)=>{L.classList.toggle("active",S===p)});let E=xn(i.value)||"";m(E)},x=()=>{F=!1,p=-1,d=[],g.style.display="none",D.textContent=""},b=_=>{let E=i.value,L=E.lastIndexOf("#");L!==-1&&(i.value=E.substring(0,L)+"#"+_+" "),x(),i.focus(),i.dispatchEvent(new Event("input"))},k=_=>{if(Le){if(d=_===""?Te.slice(0,10):Te.filter(E=>E.toLowerCase().startsWith(_.toLowerCase())).slice(0,10),d.length===0){x();return}p=0,F=!0,q(g);for(let E=0;E<d.length;E++){let L=d[E],S=document.createElement("div");S.className="tag-suggestion-item"+(E===0?" active":""),S.setAttribute("role","option"),S.setAttribute("data-tag",L),S.setAttribute("data-index",String(E)),S.textContent="#"+L,g.appendChild(S)}g.style.display="block",m(_)}},B=_=>!F||d.length===0?!1:(_==="down"?p=Math.min(p+1,d.length-1):p=Math.max(p-1,0),A(),!0),y=null,v=0,M=null,T=()=>{n.classList.remove("active"),u&&(u.style.zIndex=""),r.setAttribute("aria-expanded","false"),i.value="",q(f),h&&q(h),s.classList.remove("display-results"),Be="basic",y=null,x(),r.focus()},N=_=>{Be=_,u&&(u.style.zIndex="9999"),n.classList.add("active"),r.setAttribute("aria-expanded","true"),i.focus()},z=async _=>{if(q(f),_.length===0){let E=document.createElement("a");E.className="result-card no-match";let L=document.createElement("h3");L.textContent="No results.";let S=document.createElement("p");S.textContent="Try another search term?",E.appendChild(L),E.appendChild(S),f.appendChild(E),y=null,h&&q(h)}else for(let E of _){let L=document.createElement("a");L.className="result-card",L.id=E.slug,L.href=xe(E.slug);let S=document.createElement("h3");if(S.className="card-title",S.innerHTML=E.title,L.appendChild(S),E.tags.length>0){let K=document.createElement("ul");K.className="tags",K.innerHTML=E.tags.join(""),L.appendChild(K)}let X=document.createElement("p");X.className="card-description",X.innerHTML=E.content,L.appendChild(X),f.appendChild(L)}},R=()=>Array.from(f.querySelectorAll(".result-card:not(.no-match)")),P=()=>{let _=ne(bt);return _.query||(_.tags.length>0?_.tags.join(" "):bt)},$=async _=>{if(!h||(q(h),!_))return;let E=_.id,L=++v,S=await _i(E);if(L!==v)return;let X=P(),K=document.createElement("div");K.className="preview-inner";for(let ht of S){let yt=ht.cloneNode(!0);X.trim()!==""&&(yt.innerHTML=Ei(X,yt)),K.appendChild(yt)}h.appendChild(K),requestAnimationFrame(()=>{let ht=Array.from(h.getElementsByClassName("highlight"));if(ht.length===0)return;ht.sort((ie,re)=>re.innerHTML.length-ie.innerHTML.length);let yt=ht[0],Ht=0,ct=yt;for(;ct&&ct!==h;)Ht+=ct.offsetTop,ct=ct.offsetParent;h.scrollTop=Math.max(0,Ht-50)})},tt=_=>{y&&y.classList.remove("focus"),y=_,y&&(y.classList.add("focus"),y.scrollIntoView({block:"nearest"})),M&&clearTimeout(M),M=setTimeout(()=>$(y),150)},Q=_=>{let E=R();if(E.length===0){tt(null);return}let L=Math.min(Math.max(_,0),E.length-1);tt(E[L]??null)},It=()=>{let _=R();if(_.length===0)return;let E=y?_.indexOf(y):-1;Q(E+1)},ut=()=>{let _=R();if(_.length===0)return;let E=y?_.indexOf(y):_.length;Q(E-1)},et=async _=>{let E=_.target.value;bt=E;let L=xn(E);L!==null?k(L):x();let S=ne(E),X=S.query!==""||S.tags.length>0;if(s.classList.toggle("display-results",X),Be=S.tags.length>0&&!S.query?"tags":"basic",!X){q(f),h&&q(h),y=null;return}let K;S.query?K=await be.searchAsync({query:S.query,limit:S.tags.length>0?1e4:vn,index:["title","content"]}):S.tags.length>0?K=await be.searchAsync({query:S.tags[0],limit:1e4,index:["tags"]}):K=[];let ht=ft=>{let Tt=K.filter(Pt=>Pt.field===ft);return Tt.length===0?[]:[...Tt[0].result]},Ht=[...new Set(c.flatMap(ft=>ht(ft)))].filter(ft=>{if(S.tags.length===0)return!0;let Tt=Me[ft];if(!Tt)return!1;let Pt=Ft?.[Tt];if(!Pt)return!1;let Ln=Pt.tags||[];return S.tags.every(Mn=>Ln.some(jn=>jn.toLowerCase()===Mn.toLowerCase()))}),ct=S.query||(S.tags.length>0?S.tags.join(" "):E),ie=Ht.map(ft=>wi(ct,ft));await z(ie.slice(0,vn));let re=R();tt(re[0]??null)},ot=_=>{_.stopPropagation(),N("basic")};r.addEventListener("click",ot),mt(()=>r.removeEventListener("click",ot)),i.addEventListener("input",et),mt(()=>i.removeEventListener("input",et));let lt=_=>{if(F){if(_.key==="ArrowDown"){_.preventDefault(),B("down");return}if(_.key==="ArrowUp"){_.preventDefault(),B("up");return}if(_.key==="Tab"){_.preventDefault(),p>=0&&p<d.length&&b(d[p]);return}if(_.key==="Enter"&&!_.isComposing&&p>=0&&p<d.length){_.preventDefault(),b(d[p]);return}if(_.key==="Escape"){_.preventDefault(),x();return}}if(_.key==="ArrowUp"||_.shiftKey&&_.key==="Tab"){_.preventDefault(),ut();return}if(_.key==="ArrowDown"||_.key==="Tab"){_.preventDefault(),It();return}if(_.key==="Enter"&&!_.isComposing){let E=y;E instanceof HTMLAnchorElement&&(I(),T(),window.location.href=E.href)}};i.addEventListener("keydown",lt),mt(()=>i.removeEventListener("keydown",lt));let w=_=>{_.key==="k"&&(_.ctrlKey||_.metaKey)&&!_.shiftKey?(_.preventDefault(),n.classList.contains("active")?T():N("basic")):_.shiftKey&&(_.ctrlKey||_.metaKey)&&_.key.toLowerCase()==="k"&&(_.preventDefault(),N("tags"),i.value="#",i.dispatchEvent(new Event("input")))};document.addEventListener("keydown",w),mt(()=>document.removeEventListener("keydown",w));let I=()=>{let _=ne(bt),E=_.query||(_.tags.length>0?_.tags.join(" "):bt);E.trim()&&sessionStorage.setItem("search-term",E.trim())},_t=_=>{let E=_.target.closest(".result-card");!E||E.classList.contains("no-match")||_ instanceof MouseEvent&&(_.altKey||_.ctrlKey||_.metaKey||_.shiftKey)||(I(),T())},je=_=>{let E=_.target.closest(".result-card");!E||E.classList.contains("no-match")||tt(E)};f.addEventListener("click",_t),f.addEventListener("mouseover",je),mt(()=>{f.removeEventListener("click",_t),f.removeEventListener("mouseover",je)});let Ie=_=>{let E=_.target.closest(".tag-suggestion-item");if(!E)return;let L=E.getAttribute("data-tag");L&&b(L)},He=_=>{let E=_.target.closest(".tag-suggestion-item");if(!E)return;let L=E.getAttribute("data-index");L!==null&&(p=parseInt(L,10),A())};g.addEventListener("click",Ie),g.addEventListener("mouseover",He),mt(()=>{g.removeEventListener("click",Ie),g.removeEventListener("mouseover",He)});let Sn=An(n,T);mt(Sn)}}function bn(t){let e=t.split(/\\s+/).filter(r=>r.trim()!==""),n=e.length;if(n>1)for(let r=1;r<n;r++)e.push(e.slice(0,r+1).join(" "));return e.sort((r,i)=>i.length-r.length)}function Ei(t,e){let n=bn(t).filter(c=>c.trim()!=="");if(n.length===0)return e.innerHTML;let r=kn.parseFromString(e.innerHTML,"text/html"),i=n.map(c=>c.replace(/[.*+?^\${}()|[\\]\\\\]/g,"\\\\$&")).join("|");if(i==="")return e.innerHTML;let s=new RegExp(i,"gi"),u=r.createTreeWalker(r.body,NodeFilter.SHOW_TEXT),o=[],l=u.nextNode();for(;l;)o.push(l),l=u.nextNode();for(let c of o){let f=c.nodeValue??"";if(s.lastIndex=0,!s.test(f))continue;s.lastIndex=0;let h=r.createDocumentFragment(),g=0,a;for(;(a=s.exec(f))!==null;){a.index>g&&h.appendChild(r.createTextNode(f.slice(g,a.index)));let D=r.createElement("span");D.className="highlight",D.textContent=a[0],h.appendChild(D),g=a.index+a[0].length}g<f.length&&h.appendChild(r.createTextNode(f.slice(g))),c.parentNode?.replaceChild(h,c)}return r.body.innerHTML}function Bn(t,e,n){let r=bn(t),i=te(e).split(/\\s+/).filter(l=>l!==""),s=0,u=i.length-1;if(n){let l=g=>r.some(a=>g.toLowerCase().startsWith(a.toLowerCase())),c=i.map(l),f=0,h=0;for(let g=0;g<Math.max(i.length-ee,0);g++){let D=c.slice(g,g+ee).reduce((p,d)=>p+(d?1:0),0);D>=f&&(f=D,h=g)}s=Math.max(h-ee,0),u=Math.min(s+2*ee,i.length-1),i=i.slice(s,u)}let o=i.map(l=>{let c=l;for(let f of r)if(l.toLowerCase().includes(f.toLowerCase())){let h=new RegExp(f.replace(/[.*+?^\${}()|[\\]\\\\]/g,"\\\\$&"),"gi");c=l.replace(h,g=>\`<span class="highlight">\${g}</span>\`);break}return c}).join(" ");return(s===0?"":"...")+o+(u===i.length-1?"":"...")}function Ai(t,e){return!e||e.length===0||t.length===0?[]:e.map(n=>{let r=te(n);return t.some(i=>n.toLowerCase().includes(i.toLowerCase()))?\`<li><p class="match-tag">#\${r}</p></li>\`:\`<li><p>#\${r}</p></li>\`}).slice(0,mi)}function wi(t,e){let n=Me[e];if(!n||!Ft)return{id:e,slug:"",title:"",content:"",tags:[]};let r=Ft[n];if(!r)return{id:e,slug:n,title:"",content:"",tags:[]};let i=ne(bt);return{id:e,slug:n,title:i.tags.length>0&&!i.query?te(r.title):Bn(t,r.title||""),content:Bn(t,r.content||"",!0),tags:Ai(i.tags,r.tags)}}async function vi(){if(!Ft)return;let t=0,e=[],n=new Set;for(let r of Object.keys(Ft)){let i=Ft[r];if(i){Me[t]=r;for(let s of i.tags||[])n.add(s);e.push(be.addAsync(t,{id:t,slug:r,title:i.title||"",content:i.content||"",tags:i.tags||[]})),t++}}await Promise.all(e),Te=[...n].sort()}async function xi(){return await fetchData}var Le=!1;async function Bi(){Le||(Ft=await xi(),await vi(),Le=!0)}function ki(){let t=sessionStorage.getItem("search-term");t&&(sessionStorage.removeItem("search-term"),requestAnimationFrame(()=>{let e=document.querySelectorAll(".popover-hint p, .popover-hint li, .popover-hint h1, .popover-hint h2, .popover-hint h3, .popover-hint h4, .popover-hint h5, .popover-hint h6, .popover-hint td, .popover-hint th, .popover-hint blockquote, article p, article li, article h1, article h2, article h3");for(let n of Array.from(e)){let i=(n.textContent??"").toLowerCase().indexOf(t.toLowerCase());if(i===-1)continue;let s=document.createTreeWalker(n,NodeFilter.SHOW_TEXT),u=0,o,l=null,c=0,f=null,h=0;for(;o=s.nextNode();){let g=o.nodeValue?.length??0;if(!l&&u+g>i&&(l=o,c=i-u),l&&u+g>=i+t.length){f=o,h=i+t.length-u;break}u+=g}if(!(!l||!f)){try{let g=document.createRange();g.setStart(l,c),g.setEnd(f,h);let a=document.createElement("span");a.className="search-scroll-target",g.surroundContents(a),a.scrollIntoView({block:"center",behavior:"smooth"}),setTimeout(()=>{a.classList.add("fade-out"),setTimeout(()=>{let D=a.parentNode;D&&(D.replaceChild(document.createTextNode(a.textContent||""),a),D.normalize())},1e3)},2e3)}catch{n.scrollIntoView({block:"center",behavior:"smooth"})}break}}}))}async function Tn(){yi(),await Bi(),await Ci(),ki()}document.addEventListener("nav",Tn);document.addEventListener("render",Tn);
`;
var defaultOptions = {
enablePreview: true,
fieldPriority: ["title", "content", "tags"]
};
var Search_default = ((userOpts) => {
const Search = ({ displayClass, cfg }) => {
const opts = { ...defaultOptions, ...userOpts };
const locale = cfg.locale ?? "en-US";
const searchPlaceholder = i18n(locale).components.search.searchBarPlaceholder;
return /* @__PURE__ */ jsxs("div", { class: classNames(displayClass, "search"), children: [
/* @__PURE__ */ jsxs(
"button",
{
class: "search-button",
"aria-label": i18n(locale).components.search.title,
"aria-expanded": "false",
children: [
/* @__PURE__ */ jsxs("svg", { role: "img", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 19.9 19.7", children: [
/* @__PURE__ */ jsx("title", { children: "Search" }),
/* @__PURE__ */ jsxs("g", { class: "search-path", fill: "none", children: [
/* @__PURE__ */ jsx("path", { "stroke-linecap": "square", d: "M18.5 18.3l-5.4-5.4" }),
/* @__PURE__ */ jsx("circle", { cx: "8", cy: "8", r: "7" })
] })
] }),
/* @__PURE__ */ jsx("p", { children: i18n(locale).components.search.title })
]
}
),
/* @__PURE__ */ jsx("div", { class: "search-container", children: /* @__PURE__ */ jsxs("div", { class: "search-space", children: [
/* @__PURE__ */ jsx(
"input",
{
autocomplete: "off",
class: "search-bar",
name: "search",
type: "text",
"aria-label": searchPlaceholder,
placeholder: searchPlaceholder
}
),
/* @__PURE__ */ jsx(
"div",
{
class: "search-layout",
"data-preview": opts.enablePreview,
"data-field-priority": JSON.stringify(opts.fieldPriority)
}
)
] }) })
] });
};
Search.afterDOMLoaded = search_inline_default;
Search.css = search_default;
return Search;
});
export { Search_default as Search };
//# sourceMappingURL=index.js.map
//# sourceMappingURL=index.js.map