1
2
|
let items=document.querySelectorAll(".preStyle"),changeIcon=(items.forEach(e=>{e.rel="stylesheet"}),document.getElementById("mode")&&document.getElementById("mode").addEventListener("click",()=>{document.documentElement.classList.toggle("switch"),localStorage.setItem("theme",document.documentElement.classList.contains("switch")?"switch":"default")}),(()=>{for(var e=document.getElementsByClassName("m-protected"),t=0;t<e.length;t++){var r=e[t].getAttribute("href"),r=atob(r.substring(1));e[t].href="mailto:"+r}})(),(e,t)=>{e.classList.add(t),setTimeout(()=>e.classList.remove(t),2500)}),copyCodeAndChangeIcon=async(t,e)=>{e=(e.querySelector("table")?getTableCode:getNonTableCode)(e);try{await navigator.clipboard.writeText(e),changeIcon(t,"yes")}catch(e){changeIcon(t,"err")}},getNonTableCode=e=>[...e.querySelectorAll("code")].map(e=>e.textContent).join(""),getTableCode=e=>[...e.querySelectorAll("tr")].map(e=>e.querySelector("td:last-child")?.innerText??"").join("");document.querySelectorAll("pre").forEach(e=>{let t=document.createElement("div");t.className="cc svgs svgh copy",t.innerHTML=" ",e.prepend(t),t.addEventListener("click",()=>copyCodeAndChangeIcon(t,e))}),window.onload=function(){if(document.body.contains(document.goSearch)){var e=!1;document.goSearch.onsubmit=function(){return goSearchNow()};{async function A(){W()}function I(){var e=document.querySelector("main"),t=(window.main||(window.main=e.innerHTML),document.getElementById("suggestions")),r=t.cloneNode(!0),n=(r.id="results",document.createElement("div")),a='<form name="closeSearch"><h2><button type="submit" title="Close Search"><i class="svgs x"></i></button> <i class="svgs search"></i> '.concat(document.getElementById("searchinput").value,"</h2></form>");return n.innerHTML=a,r.insertBefore(n,r.firstChild),e.innerHTML=r.outerHTML,t.innerHTML="",document.getElementById("searchinput").value="",document.body.contains(document.closeSearch)&&(document.closeSearch.onsubmit=function(){document.querySelector("main").innerHTML=window.main}),!1}function r(e,t){for(var r=new m(31),n=0;n<31;++n)r[n]=t+=1<<e[n-1];for(var a=new c(r[30]),n=1;n<30;++n)for(var i=r[n];i<r[n+1];++i)a[i]=i-r[n]<<5|n;return[r,a]}let s;{function h(){return n=null!==n&&0!==n.byteLength?n:new Uint8Array(_.memory.buffer)}function o(e,t){t=t(+e.length,1)>>>0;return h().set(e,t),p=e.length,t}function w(t,r,e){if(void 0===e){var n=c.encode(t);let e=r(n.length,1)>>>0;return h().subarray(e,e+n.length).set(n),p=n.length,e}let a=t.length,i=r(a,1)>>>0;var s=h();let o=0;for(;o<a;o++){var l=t.charCodeAt(o);if(127<l)break;s[i+o]=l}return o!==a&&(0!==o&&(t=t.slice(o)),i=e(i,a,a=o+3*t.length,1)>>>0,n=h().subarray(i+o,i+a),r=d(t,n),o+=r.written,i=e(i,a,o,1)>>>0),p=o,i}function y(){return a=null!==a&&0!==a.byteLength?a:new Int32Array(_.memory.buffer)}function b(e,t){return e>>>=0,i.decode(h().subarray(e,e+t))}function l(){var e={wbg:{}};return e}function u(e,t){return _=e.exports,f.__wbindgen_wasm_module=t,a=null,n=null,_}async function f(e){if(void 0!==_)return _;void 0===e&&void 0!==r&&(e=r.replace(/\.js$/,"_bg.wasm"));var t=l(),{instance:e,module:t}=await(async(t,e)=>{if("function"==typeof Response&&t instanceof Response){if("function"==typeof WebAssembly.instantiateStreaming)try{return await WebAssembly.instantiateStreaming(t,e)}catch(e){if("application/wasm"==t.headers.get("Content-Type"))throw e}var r=await t.arrayBuffer();return WebAssembly.instantiate(r,e)}return(r=await WebAssembly.instantiate(t,e))instanceof WebAssembly.Instance?{instance:r,module:t}:r})(await(e="string"==typeof e||"function"==typeof Request&&e instanceof Request||"function"==typeof URL&&e instanceof URL?fetch(e):e),t);return u(e,t)}var g={};let r,_=(void 0!==document&&null!==document.currentScript&&(r=new URL("UNHANDLED",location.href).toString()),void 0),n=null,p=0,c=(g.init_pagefind=function(e){var e=o(e,_.__wbindgen_malloc),t=p;return _.init_pagefind(e,t)>>>0},"undefined"!=typeof TextEncoder?new TextEncoder("utf-8"):{encode:()=>{throw Error("TextEncoder not available")}}),d="function"==typeof c.encodeInto?function(e,t){return c.encodeInto(e,t)}:function(e,t){var r=c.encode(e);return t.set(r),{read:e.length,written:r.length}},a=(g.set_ranking_weights=function(e,t){var t=w(t,_.__wbindgen_malloc,_.__wbindgen_realloc),r=p;return _.set_ranking_weights(e,t,r)>>>0},g.load_index_chunk=function(e,t){var t=o(t,_.__wbindgen_malloc),r=p;return _.load_index_chunk(e,t,r)>>>0},g.load_filter_chunk=function(e,t){var t=o(t,_.__wbindgen_malloc),r=p;return _.load_filter_chunk(e,t,r)>>>0},g.add_synthetic_filter=function(e,t){var t=w(t,_.__wbindgen_malloc,_.__wbindgen_realloc),r=p;return _.add_synthetic_filter(e,t,r)>>>0},null),i="undefined"!=typeof TextDecoder?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};"undefined"!=typeof TextDecoder&&i.decode(),g.request_indexes=function(e,t){let r,n;try{var a=_.__wbindgen_add_to_stack_pointer(-16),i=w(t,_.__wbindgen_malloc,_.__wbindgen_realloc),s=p,o=(_.request_indexes(a,e,i,s),y()[a/4+0]),l=y()[a/4+1];return b(r=o,n=l)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_free(r,n,1)}},g.request_filter_indexes=function(e,t){let r,n;try{var a=_.__wbindgen_add_to_stack_pointer(-16),i=w(t,_.__wbindgen_malloc,_.__wbindgen_realloc),s=p,o=(_.request_filter_indexes(a,e,i,s),y()[a/4+0]),l=y()[a/4+1];return b(r=o,n=l)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_free(r,n,1)}},g.request_all_filter_indexes=function(e){let t,r;try{var n=_.__wbindgen_add_to_stack_pointer(-16),a=(_.request_all_filter_indexes(n,e),y()[n/4+0]),i=y()[n/4+1];return b(t=a,r=i)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_free(t,r,1)}},g.filters=function(e){let t,r;try{var n=_.__wbindgen_add_to_stack_pointer(-16),a=(_.filters(n,e),y()[n/4+0]),i=y()[n/4+1];return b(t=a,r=i)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_free(t,r,1)}},g.search=function(e,t,r,n,a){let i,s;try{var o=_.__wbindgen_add_to_stack_pointer(-16),l=w(t,_.__wbindgen_malloc,_.__wbindgen_realloc),c=p,d=w(r,_.__wbindgen_malloc,_.__wbindgen_realloc),h=p,u=w(n,_.__wbindgen_malloc,_.__wbindgen_realloc),f=p,g=(_.search(o,e,l,c,d,h,u,f,a),y()[o/4+0]),m=y()[o/4+1];return b(i=g,s=m)}finally{_.__wbindgen_add_to_stack_pointer(16),_.__wbindgen_free(i,s,1)}},s=Object.assign(f,{initSync:function(e){var t;return void 0!==_?_:(t=l(),e instanceof WebAssembly.Module||(e=new WebAssembly.Module(e)),u(new WebAssembly.Instance(e,t),e))}},g)}var n,j=Uint8Array,m=Uint16Array,c=Uint32Array,O=new j([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),$=new j([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),X=new j([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),H=(g=r(O,2))[0],K=(g[1][H[28]=258]=28,(g=r($,0))[0]),_=new m(32768);for(p=0;p<32768;++p)_[p]=((65280&(n=(61680&(n=(52428&(n=(43690&p)>>>1|(21845&p)<<1))>>>2|(13107&n)<<2))>>>4|(3855&n)<<4))>>>8|(255&n)<<8)>>>1;var J=function(e,t,r){for(var n=e.length,a=0,i=new m(t);a<n;++a)e[a]&&++i[e[a]-1];var s=new m(t);for(a=0;a<t;++a)s[a]=s[a-1]+i[a-1]<<1;if(r){for(var o=new m(1<<t),l=15-t,a=0;a<n;++a)if(e[a])for(var c=a<<4|e[a],d=t-e[a],h=s[e[a]-1]++<<d,u=h|(1<<d)-1;h<=u;++h)o[_[h]>>>l]=c}else for(o=new m(n),a=0;a<n;++a)e[a]&&(o[a]=_[s[e[a]-1]++]>>>15-e[a]);return o},i=new j(288);for(p=0;p<144;++p)i[p]=8;for(p=144;p<256;++p)i[p]=9;for(p=256;p<280;++p)i[p]=7;for(p=280;p<288;++p)i[p]=8;var p,v=new j(32);for(p=0;p<32;++p)v[p]=5;var Q=J(i,9,1),Z=J(v,5,1),G=function(e){for(var t=e[0],r=1;r<e.length;++r)t<e[r]&&(t=e[r]);return t},z=function(e,t,r){var n=t/8|0;return(e[n]|e[1+n]<<8)>>(7&t)&r},Y=function(e,t){var r=t/8|0;return(e[r]|e[1+r]<<8|e[2+r]<<16)>>(7&t)},ee=function(e){return(e+7)/8|0},te=function(e,t,r){null!=r&&r<=e.length||(r=e.length);var n=new(2==e.BYTES_PER_ELEMENT?m:4==e.BYTES_PER_ELEMENT?c:j)(r-(t=null!=t&&0<=t?t:0));return n.set(e.subarray(t,r)),n},U=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],V=function(e,t,r){t=Error(t||U[e]);if(t.code=e,Error.captureStackTrace&&Error.captureStackTrace(t,V),r)return t;throw t},g=new j(0),k="undefined"!=typeof TextDecoder&&new TextDecoder;try{k.decode(g,{stream:!0})}catch(e){}var q=function(e,t){function r(e){var t=a.length;t<e&&((t=new j(Math.max(2*t,e))).set(a),a=t)}var n=e.subarray((e=>{31==e[0]&&139==e[1]&&8==e[2]||V(6,"invalid gzip data");var t=e[3],r=10;4&t&&(r+=e[10]|2+(e[11]<<8));for(var n=(t>>3&1)+(t>>4&1);0<n;n-=!e[r++]);return r+(2&t)})(e),-8),a=t||new j((t=e.length,(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0)),i=void 0,s=n.length;if(!s||i&&i.f&&!i.l)return a||new j(0);var o=!a||i,l=!i||i.i,c=(i=i||{},a=a||new j(3*s),i.f||0),d=i.p||0,h=i.b||0,u=i.l,f=i.d,g=i.m,m=i.n,_=8*s;do{if(!u){c=z(n,d,1);var p=z(n,d+1,3);if(d+=3,!p){var w=ee(d)+4,y=n[w-4]|n[w-3]<<8,b=w+y;if(s<b){l&&V(0);break}o&&r(h+y),a.set(n.subarray(w,b),h),i.b=h+=y,i.p=d=8*b,i.f=c;continue}if(1==p)u=Q,f=Z,g=9,m=5;else if(2==p){for(var y=z(n,d,31)+257,v=z(n,d+10,15)+4,k=y+z(n,d+5,31)+1,E=(d+=14,new j(k)),x=new j(19),P=0;P<v;++P)x[X[P]]=z(n,d+3*P,7);d+=3*v;for(var b=G(x),W=(1<<b)-1,B=J(x,b,1),P=0;P<k;){var L=B[z(n,d,W)];if(d+=15&L,(w=L>>>4)<16)E[P++]=w;else{var S=0,F=0;for(16==w?(F=3+z(n,d,3),d+=2,S=E[P-1]):17==w?(F=3+z(n,d,7),d+=3):18==w&&(F=11+z(n,d,127),d+=7);F--;)E[P++]=S}}var C=E.subarray(0,y),T=E.subarray(y);g=G(C),m=G(T),u=J(C,g,1),f=J(T,m,1)}else V(1);if(_<d){l&&V(0);break}}o&&r(h+131072);for(var N=(1<<g)-1,D=(1<<m)-1,A=d;;A=d){var I=(S=u[Y(n,d)&N])>>>4;if(_<(d+=15&S)){l&&V(0);break}if(S||V(2),I<256)a[h++]=I;else{if(256==I){A=d,u=null;break}var U,q=I-254,I=(264<I&&(U=O[P=I-257],q=z(n,d,(1<<U)-1)+H[P],d+=U),f[Y(n,d)&D]),M=I>>>4,T=(I||V(3),d+=15&I,K[M]);if(3<M&&(U=$[M],T+=Y(n,d)&(1<<U)-1,d+=U),_<d){l&&V(0);break}o&&r(h+131072);for(var R=h+q;h<R;h+=4)a[h]=a[h-T],a[h+1]=a[h+1-T],a[h+2]=a[h+2-T],a[h+3]=a[h+3-T];h=R}}i.l=u,i.p=A,i.b=h,i.f=c,u&&(c=1,i.m=g,i.d=f,i.n=m)}while(!c);return h==a.length?a:te(a,0,h)},E=(e,t)=>{if(0===e.length)return 0;var r,n=[];for(r of e)n[r.location]=n[r.location]||0,n[r.location]+=r.balanced_score;if(n.length<=t)return 0;let a=n.slice(0,t).reduce((e,t)=>e+t,0),i=a,s=[0];for(let e=0;e<n.length;e++){var o=e+t;(i+=(n[o]??0)-(n[e]??0))>a?(a=i,s=[e]):i===a&&s[s.length-1]===e-1&&s.push(e)}return s[Math.floor(s.length/2)]},x=(e,t,r,n,a,i)=>{var s,o=e.includes("");let l=[];l=o?e.split(""):e.split(/[\r\n\s]+/g);for(s of n)l[s]?.startsWith("<mark>")||(l[s]=`<mark>${l[s]}</mark>`);e=i??l.length,n=a??0;return(t=e<t+(r=e-n<r?e-n:r)?e-r:t)<n&&(t=n),l.slice(t,t+r).join(o?"":" ").trim()},P=async(t=100)=>new Promise(e=>setTimeout(e,t)),L=class{constructor(e={}){this.version="1.1.1",this.backend=s,this.decoder=new TextDecoder("utf-8"),this.wasm=null,this.basePath=e.basePath||"/pagefind/",this.primary=e.primary||!1,this.primary&&!e.basePath&&this.initPrimary(),/[^\/]$/.test(this.basePath)&&(this.basePath=this.basePath+"/"),window?.location?.origin&&this.basePath.startsWith(window.location.origin)&&(this.basePath=this.basePath.replace(window.location.origin,"")),this.baseUrl=e.baseUrl||this.defaultBaseUrl(),/^(\/|https?:\/\/)/.test(this.baseUrl)||(this.baseUrl="/"+this.baseUrl),this.indexWeight=e.indexWeight??1,this.excerptLength=e.excerptLength??30,this.mergeFilter=e.mergeFilter??{},this.ranking=e.ranking,this.highlightParam=e.highlightParam??null,this.loaded_chunks={},this.loaded_filters={},this.loaded_fragments={},this.raw_ptr=null,this.searchMeta=null,this.languages=null}initPrimary(){}defaultBaseUrl(){return this.basePath.match(/^(.*\/)_?pagefind/)?.[1]||"/"}async options(e){var t,r,n,a,i=["basePath","baseUrl","indexWeight","excerptLength","mergeFilter","highlightParam","ranking"];for([t,r]of Object.entries(e))"mergeFilter"===t?(n=this.stringifyFilters(r),a=await this.getPtr(),this.raw_ptr=this.backend.add_synthetic_filter(a,n)):"ranking"===t?await this.set_ranking(e.ranking):i.includes(t)&&("basePath"===t&&"string"==typeof r&&(this.basePath=r),"baseUrl"===t&&"string"==typeof r&&(this.baseUrl=r),"indexWeight"===t&&"number"==typeof r&&(this.indexWeight=r),"excerptLength"===t&&"number"==typeof r&&(this.excerptLength=r),"mergeFilter"===t&&"object"==typeof r&&(this.mergeFilter=r),"highlightParam"===t)&&"string"==typeof r&&(this.highlightParam=r)}decompress(e,t=0){return"pagefind_dcd"!==this.decoder.decode(e.slice(0,12))&&(e=q(e),"pagefind_dcd"!==this.decoder.decode(e.slice(0,12)))?e:e.slice(12)}async set_ranking(e){var t;e&&(e={term_similarity:e.termSimilarity??null,page_length:e.pageLength??null,term_saturation:e.termSaturation??null,term_frequency:e.termFrequency??null},t=await this.getPtr(),this.raw_ptr=this.backend.set_ranking_weights(t,JSON.stringify(e)))}async init(e,t){await this.loadEntry();var e=this.findIndex(e),r=e.wasm||"unknown",e=[this.loadMeta(e.hash)];!0===t.load_wasm&&e.push(this.loadWasm(r)),await Promise.all(e),this.raw_ptr=this.backend.init_pagefind(new Uint8Array(this.searchMeta)),Object.keys(this.mergeFilter)?.length&&(t=this.stringifyFilters(this.mergeFilter),r=await this.getPtr(),this.raw_ptr=this.backend.add_synthetic_filter(r,t)),this.ranking&&await this.set_ranking(this.ranking)}async loadEntry(){try{var e=await(await fetch(this.basePath+"pagefind-entry-1728241819.json")).json();this.languages=e.languages,e.version!==this.version&&this.primary}catch(e){throw Error("Failed to load Pagefind metadata")}}findIndex(e){if(this.languages){var t=this.languages[e];if(t)return t;if(t=this.languages[e.split("-")[0]])return t;e=Object.values(this.languages).sort((e,t)=>t.page_count-e.page_count);if(e[0])return e[0]}throw Error("Pagefind Error: No language indexes found.")}async loadMeta(e){try{var t=await(await fetch(this.basePath+`pagefind.${e}.pf_meta`)).arrayBuffer();this.searchMeta=this.decompress(new Uint8Array(t),"Pagefind metadata")}catch(e){}}async loadWasm(e){try{var t=this.basePath+`wasm.${e}.pagefind`,r=await(await fetch(t)).arrayBuffer(),n=this.decompress(new Uint8Array(r),"Pagefind WebAssembly");if(!n)throw Error("No WASM after decompression");this.wasm=await this.backend(n)}catch(e){throw Error(`Failed to load the Pagefind WASM:
`+e?.toString())}}async _loadGenericChunk(e,t){try{var r=await(await fetch(e)).arrayBuffer(),n=this.decompress(new Uint8Array(r),e),a=await this.getPtr();this.raw_ptr=this.backend[t](a,n)}catch(e){}}async loadChunk(e){var t;return this.loaded_chunks[e]||(t=this.basePath+`index/${e}.pf_index`,this.loaded_chunks[e]=this._loadGenericChunk(t,"load_index_chunk")),this.loaded_chunks[e]}async loadFilterChunk(e){var t;return this.loaded_filters[e]||(t=this.basePath+`filter/${e}.pf_filter`,this.loaded_filters[e]=this._loadGenericChunk(t,"load_filter_chunk")),this.loaded_filters[e]}async _loadFragment(e){var t=await(await fetch(this.basePath+`fragment/${e}.pf_fragment`)).arrayBuffer(),t=this.decompress(new Uint8Array(t),"Fragment "+e);return JSON.parse((new TextDecoder).decode(t))}async loadFragment(e,t=[],r){this.loaded_fragments[e]||(this.loaded_fragments[e]=this._loadFragment(e));e=await this.loaded_fragments[e],e.weighted_locations=t,e.locations=t.map(e=>e.location),e.raw_content||(e.raw_content=e.content.replace(/</g,"<").replace(/>/g,">"),e.content=e.content.replace(/\u200B/g,"")),e.raw_url||(e.raw_url=e.url),e.url=this.processedUrl(e.raw_url,r),r=E(t,this.excerptLength);return e.excerpt=x(e.raw_content,r,this.excerptLength,e.locations),e.sub_results=((n,a)=>{var r=n.anchors.filter(e=>/h\d/i.test(e.element)&&e.text?.length&&/\S/.test(e.text)).sort((e,t)=>e.location-t.location);let i=[],s=0,o={title:n.meta.title,url:n.url,weighted_locations:[],locations:[],excerpt:""};var l,c=e=>{var t,r;o.locations.length&&(t=o.weighted_locations.map(e=>({weight:e.weight,balanced_score:e.balanced_score,location:e.location-s})),t=E(t,a)+s,r=e?Math.min(e-t,a):a,o.excerpt=x(n.raw_content??"",t,r,o.locations,s,e),i.push(o))};for(l of n.weighted_locations)if(!r.length||l.location<r[0].location)o.weighted_locations.push(l),o.locations.push(l.location);else{let e=r.shift();for(c(e.location);r.length&&l.location>=r[0].location;)e=r.shift();let t=n.url;try{var d,h,u=/^((https?:)?\/\/)/.test(t);t=u?((d=new URL(t)).hash=e.id,""+d):(/^\//.test(t)||(t="/"+t),(h=new URL("https://example.com"+t)).hash=e.id,(""+h).replace(/^https:\/\/example.com/,""))}catch(e){}s=e.location,o={title:e.text,url:t,anchor:e,weighted_locations:[l],locations:[l.location],excerpt:""}}return c(r[0]?.location),i})(e,this.excerptLength),e}fullUrl(e){return/^(https?:)?\/\//.test(e)?e:(this.baseUrl+"/"+e).replace(/\/+/g,"/").replace(/^(https?:\/)/,"$1/")}processedUrl(t,r){t=this.fullUrl(t);if(null===this.highlightParam)return t;r=r.split(/\s+/);try{var e,n=new URL(t);for(e of r)n.searchParams.append(this.highlightParam,e);return n.toString()}catch(e){try{var a,i=new URL("https://example.com"+t);for(a of r)i.searchParams.append(this.highlightParam,a);return i.toString().replace(/^https:\/\/example\.com/,"")}catch(e){return t}}}async getPtr(){for(;null===this.raw_ptr;)await P(50);if(this.raw_ptr)return this.raw_ptr;throw Error("Pagefind: WASM Error (No pointer)")}parseFilters(e){var t={};if(e)for(var r of e.split("__PF_FILTER_DELIM__")){var n,[a,r]=r.split(/:(.*)$/);if(t[a]={},r)for(var i of r.split("__PF_VALUE_DELIM__"))i&&(i=i.match(/^(.*):(\d+)$/))&&([,i,n]=i,t[a][i]=parseInt(n)??n)}return t}stringifyFilters(e={}){return JSON.stringify(e)}stringifySorts(e={}){var t,r,n=Object.entries(e);for([t,r]of n)return n.length,"asc"!==r&&r,t+":"+r;return""}async filters(){var e=await this.getPtr(),t=this.backend.request_all_filter_indexes(e).split(" ").filter(e=>e).map(e=>this.loadFilterChunk(e)),t=(await Promise.all([...t]),e=await this.getPtr(),this.backend.filters(e));return this.parseFilters(t)}async preload(e,t={}){await this.search(e,{...t,preload:!0})}async search(i,t={}){t={verbose:!1,filters:{},sort:{},...t};let s=e=>{t.verbose};s(this.basePath);var e,r,n,a=await this.getPtr(),o=null===i,l=(i=i??"",/^\s*".+"\s*$/.test(i));return l&&s(),i=i.toLowerCase().trim().replace(/[\.`~!@#\$%\^&\*\(\)\{\}\[\]\\\|:;'",<>\/\?\-]/g,"").replace(/\s{2,}/g," ").trim(),s(),i?.length||o?(o=this.stringifySorts(t.sort),s(),r=this.stringifyFilters(t.filters),s(),n=this.backend.request_indexes(a,i),e=this.backend.request_filter_indexes(a,r),n=n.split(" ").filter(e=>e).map(e=>this.loadChunk(e)),e=e.split(" ").filter(e=>e).map(e=>this.loadFilterChunk(e)),await Promise.all([...n,...e]),s(),t.preload?(s(),null):(a=await this.getPtr(),n=this.backend.search(a,i,r,o,l),[e,a,r,o]=(s(),n.split(/:([^:]*):(.*)__PF_UNFILTERED_DELIM__(.*)$/)),l=this.parseFilters(r),r=this.parseFilters(o),s(JSON.stringify(n)),n=(o=a.length?a.split(" "):[]).map(e=>{let[t,r,n]=e.split("@"),a=(s(t),n.length?n.split(",").map(e=>{var[e,t,r]=e.split(">");return{weight:parseInt(e)/24,balanced_score:parseFloat(t),location:parseInt(r)}}):[]);e=a.map(e=>e.location);return{id:t,score:parseFloat(r)*this.indexWeight,words:e,data:async()=>this.loadFragment(t,a,i)}}),s((o.length,o.length)),{results:n,unfilteredResultCount:parseInt(e),filters:l,totalFilters:r,timings:{preload:0,search:0,total:0}})):{results:[],unfilteredResultCount:0,filters:{},totalFilters:{},timings:{preload:0,search:0,total:0}}}},M=class{constructor(e={}){this.backend=s,this.primaryLanguage="unknown",this.searchID=0,this.primary=new L({...e,primary:!0}),this.instances=[this.primary],this.init(e?.language)}async options(e){await this.primary.options(e)}async init(e){var t;document?.querySelector&&(t=document.querySelector("html")?.getAttribute("lang")||"unknown",this.primaryLanguage=t.toLocaleLowerCase()),await this.primary.init(e||this.primaryLanguage,{load_wasm:!0})}async mergeIndex(e,t={}){if(!this.primary.basePath.startsWith(e)){e=new L({primary:!1,basePath:e});for(this.instances.push(e);null===this.primary.wasm;)await P(50);await e.init(t.language||this.primaryLanguage,{load_wasm:!1}),delete t.language,await e.options(t)}}mergeFilters(e){var t,r={};for(t of e)for(var[n,a]of Object.entries(t))if(r[n]){var i,s,o=r[n];for([i,s]of Object.entries(a))o[i]=(o[i]||0)+s}else r[n]=a;return r}async filters(){var e=await Promise.all(this.instances.map(e=>e.filters()));return this.mergeFilters(e)}async preload(t,r={}){await Promise.all(this.instances.map(e=>e.preload(t,r)))}async debouncedSearch(e,t,r){var n=++this.searchID;return this.preload(e,t),await P(r),n!==this.searchID||(r=await this.search(e,t),n!==this.searchID)?null:r}async search(t,r={}){var e=await Promise.all(this.instances.map(e=>e.search(t,r))),n=this.mergeFilters(e.map(e=>e.filters)),a=this.mergeFilters(e.map(e=>e.totalFilters)),i=e.map(e=>e.results).flat().sort((e,t)=>t.score-e.score),s=e.map(e=>e.timings);return{results:i,unfilteredResultCount:e.reduce((e,t)=>e+t.unfilteredResultCount,0),filters:n,totalFilters:a,timings:s}}},S=void 0,F=void 0,W=()=>{S=S||new M(F??{})},C=document.getElementById("suggestions"),T=document.getElementById("searchinput");document.documentElement.getAttribute("lang").substring(0,2),(async e=>{S?await S.options(e):F=e})({basePath:(k="/"==(k=document.querySelector("meta[name='base']").getAttribute("content")).slice(-1)?k.slice(0,-1):k)+"/js/"}),T.addEventListener("input",async function(){var e,r,n,i=this.value.trim(),s=(s=i,W(),await S.search(s,e)),o=C.childNodes,l=s.results.length;i.split(/\s+/),C.classList.remove("d-none");for(n of s.results){var c=await n.data();""!==c.content&&((r=document.createElement("div")).innerHTML="<a href><span></span><span></span></a>",a=r.querySelector("a"),t=r.querySelector("span:first-child"),d=r.querySelector("span:nth-child(2)"),a.href=c.url,t.textContent=c.meta.title,d.innerHTML=c.excerpt.replace(/\{\{.*?\}\}|—|<(?!\/?mark\b).*?>|<.*?>/g,""),C.appendChild(r))}for(;o.length>l;)C.removeChild(o[0])},!0),C.addEventListener("click",function(){for(;C.lastChild;)C.removeChild(C.lastChild);return!1},!0),document.addEventListener("keydown",function(t){if(191===t.keyCode&&"INPUT"!==document.activeElement.tagName&&"TEXTAREA"!==document.activeElement.tagName&&(t.preventDefault(),T.focus(),C.classList.remove("d-none")),27===t.keyCode){T.blur(),C.classList.add("d-none");for(var e=document.getElementById("suggestions");e.firstChild;)e.removeChild(e.firstChild)}var r=C.querySelectorAll("a");if(!C.classList.contains("d-none")&&0!==r.length){var n=[...r],a=n.indexOf(document.activeElement);let e=0;38===t.keyCode?(t.preventDefault(),r[e=0<a?a-1:0].focus()):40===t.keyCode&&(t.preventDefault(),r[e=1+a<n.length?1+a:a].focus())}}),document.addEventListener("click",function(e){C.contains(e.target)||C.classList.add("d-none")}),document.getElementById("searchinput").onfocus=function(){e||(A(),e=!0),document.getElementById("searchinput").onfocus=""},document.goSearch.onsubmit=I}}},"serviceWorker"in navigator&&(navigator.serviceWorker.register("/sw.min.js?v=3.12.1",{scope:"/"}).then(()=>{},e=>{}),navigator.serviceWorker.ready.then(()=>{}));
|