From d90c0164ca4dccb2812150e0c24a09e744c362b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Valim?= Date: Thu, 16 Jan 2025 22:37:58 +0100 Subject: [PATCH] Rename searchNodes to searchItems to avoid confusion --- assets/js/search-page.js | 24 +-- formatters/html/dist/html-TPXKCPAC.js | 223 -------------------------- 2 files changed, 12 insertions(+), 235 deletions(-) delete mode 100644 formatters/html/dist/html-TPXKCPAC.js diff --git a/assets/js/search-page.js b/assets/js/search-page.js index f2cdfdcf7..a60b95c72 100644 --- a/assets/js/search-page.js +++ b/assets/js/search-page.js @@ -43,7 +43,7 @@ async function search (value) { // We cannot match on atoms :foo because that would be considered // a filter. So we escape all colons not preceded by a word. const fixedValue = value.replaceAll(/(\B|\\):/g, '\\:') - const results = searchResultsToDecoratedSearchNodes(index.search(fixedValue)) + const results = searchResultsToDecoratedSearchItems(index.search(fixedValue)) renderResults({ value, results }) } catch (error) { renderResults({ value, errorMessage: error.message }) @@ -145,8 +145,8 @@ function createIndex () { this.use(docTokenSplitter) this.use(docTrimmer) - searchData.items.forEach(searchNode => { - this.add(searchNode) + searchData.items.forEach(searchItem => { + this.add(searchItem) }) }) } @@ -233,29 +233,29 @@ function docTrimmerFunction (token) { }) } -function searchResultsToDecoratedSearchNodes (results) { +function searchResultsToDecoratedSearchItems (results) { return results // If the docs are regenerated without changing its version, // a reference may have been doc'ed false in the code but // still available in the cached index, so we skip it here. - .filter(result => getSearchNodeByRef(result.ref)) + .filter(result => getSearchItemByRef(result.ref)) .map(result => { - const searchNode = getSearchNodeByRef(result.ref) + const searchItem = getSearchItemByRef(result.ref) const metadata = result.matchData.metadata return { - ...searchNode, + ...searchItem, metadata, - excerpts: getExcerpts(searchNode, metadata) + excerpts: getExcerpts(searchItem, metadata) } }) } -function getSearchNodeByRef (ref) { - return searchData.items.find(searchNode => searchNode.ref === ref) || null +function getSearchItemByRef (ref) { + return searchData.items.find(searchItem => searchItem.ref === ref) || null } -function getExcerpts (searchNode, metadata) { - const { doc } = searchNode +function getExcerpts (searchItem, metadata) { + const { doc } = searchItem const searchTerms = Object.keys(metadata) const excerpts = diff --git a/formatters/html/dist/html-TPXKCPAC.js b/formatters/html/dist/html-TPXKCPAC.js deleted file mode 100644 index 8d93d4480..000000000 --- a/formatters/html/dist/html-TPXKCPAC.js +++ /dev/null @@ -1,223 +0,0 @@ -(()=>{var Ms=Object.create;var Vn=Object.defineProperty;var Hs=Object.getOwnPropertyDescriptor;var Ns=Object.getOwnPropertyNames;var Ds=Object.getPrototypeOf,Bs=Object.prototype.hasOwnProperty;var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Qs=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Ns(e))!Bs.call(t,i)&&i!==n&&Vn(t,i,{get:()=>e[i],enumerable:!(r=Hs(e,i))||r.enumerable});return t};var Y=(t,e,n)=>(n=t!=null?Ms(Ds(t)):{},Qs(e||!t||!t.__esModule?Vn(n,"default",{value:t,enumerable:!0}):n,t));var mr=T((nc,pr)=>{var fr="Expected a function",dr=NaN,$s="[object Symbol]",Us=/^\s+|\s+$/g,js=/^[-+]0x[0-9a-f]+$/i,Ws=/^0b[01]+$/i,zs=/^0o[0-7]+$/i,Gs=parseInt,Ks=typeof global=="object"&&global&&global.Object===Object&&global,Ys=typeof self=="object"&&self&&self.Object===Object&&self,Js=Ks||Ys||Function("return this")(),Xs=Object.prototype,Zs=Xs.toString,eo=Math.max,to=Math.min,Rt=function(){return Js.Date.now()};function no(t,e,n){var r,i,s,o,a,l,u=0,c=!1,d=!1,h=!0;if(typeof t!="function")throw new TypeError(fr);e=hr(e)||0,qe(n)&&(c=!!n.leading,d="maxWait"in n,s=d?eo(hr(n.maxWait)||0,e):s,h="trailing"in n?!!n.trailing:h);function p(S){var R=r,U=i;return r=i=void 0,u=S,o=t.apply(U,R),o}function m(S){return u=S,a=setTimeout(w,e),c?p(S):o}function g(S){var R=S-l,U=S-u,ee=e-R;return d?to(ee,s-U):ee}function v(S){var R=S-l,U=S-u;return l===void 0||R>=e||R<0||d&&U>=s}function w(){var S=Rt();if(v(S))return x(S);a=setTimeout(w,g(S))}function x(S){return a=void 0,h&&r?p(S):(r=i=void 0,o)}function A(){a!==void 0&&clearTimeout(a),u=0,r=l=i=a=void 0}function q(){return a===void 0?o:x(Rt())}function $(){var S=Rt(),R=v(S);if(r=arguments,i=this,l=S,R){if(a===void 0)return m(l);if(d)return a=setTimeout(w,e),p(l)}return a===void 0&&(a=setTimeout(w,e)),o}return $.cancel=A,$.flush=q,$}function ro(t,e,n){var r=!0,i=!0;if(typeof t!="function")throw new TypeError(fr);return qe(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),no(t,e,{leading:r,maxWait:e,trailing:i})}function qe(t){var e=typeof t;return!!t&&(e=="object"||e=="function")}function io(t){return!!t&&typeof t=="object"}function so(t){return typeof t=="symbol"||io(t)&&Zs.call(t)==$s}function hr(t){if(typeof t=="number")return t;if(so(t))return dr;if(qe(t)){var e=typeof t.valueOf=="function"?t.valueOf():t;t=qe(e)?e+"":e}if(typeof t!="string")return t===0?t:+t;t=t.replace(Us,"");var n=Ws.test(t);return n||zs.test(t)?Gs(t.slice(2),n?2:8):js.test(t)?dr:+t}pr.exports=ro});var F=T(D=>{"use strict";D.__esModule=!0;D.extend=Ar;D.indexOf=yo;D.escapeExpression=wo;D.isEmpty=bo;D.createFrame=Eo;D.blockParams=xo;D.appendContextPath=ko;var po={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},mo=/[&<>"'`=]/g,go=/[&<>"'`=]/;function vo(t){return po[t]}function Ar(t){for(var e=1;e{"use strict";Ue.__esModule=!0;var Vt=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function $t(t,e){var n=e&&e.loc,r=void 0,i=void 0,s=void 0,o=void 0;n&&(r=n.start.line,i=n.end.line,s=n.start.column,o=n.end.column,t+=" - "+r+":"+s);for(var a=Error.prototype.constructor.call(this,t),l=0;l{"use strict";je.__esModule=!0;var Ut=F();je.default=function(t){t.registerHelper("blockHelperMissing",function(e,n){var r=n.inverse,i=n.fn;if(e===!0)return i(this);if(e===!1||e==null)return r(this);if(Ut.isArray(e))return e.length>0?(n.ids&&(n.ids=[n.name]),t.helpers.each(e,n)):r(this);if(n.data&&n.ids){var s=Ut.createFrame(n.data);s.contextPath=Ut.appendContextPath(n.data.contextPath,n.name),n={data:s}}return i(e,n)})};Rr.exports=je.default});var Nr=T((We,Hr)=>{"use strict";We.__esModule=!0;function So(t){return t&&t.__esModule?t:{default:t}}var we=F(),To=X(),_o=So(To);We.default=function(t){t.registerHelper("each",function(e,n){if(!n)throw new _o.default("Must pass iterator to #each");var r=n.fn,i=n.inverse,s=0,o="",a=void 0,l=void 0;n.data&&n.ids&&(l=we.appendContextPath(n.data.contextPath,n.ids[0])+"."),we.isFunction(e)&&(e=e.call(this)),n.data&&(a=we.createFrame(n.data));function u(m,g,v){a&&(a.key=m,a.index=g,a.first=g===0,a.last=!!v,l&&(a.contextPath=l+m)),o=o+r(e[m],{data:a,blockParams:we.blockParams([e[m],m],[l+m,null])})}if(e&&typeof e=="object")if(we.isArray(e))for(var c=e.length;s{"use strict";ze.__esModule=!0;function Lo(t){return t&&t.__esModule?t:{default:t}}var Po=X(),Oo=Lo(Po);ze.default=function(t){t.registerHelper("helperMissing",function(){if(arguments.length!==1)throw new Oo.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})};Dr.exports=ze.default});var Vr=T((Ge,Fr)=>{"use strict";Ge.__esModule=!0;function Ao(t){return t&&t.__esModule?t:{default:t}}var Qr=F(),Io=X(),qr=Ao(Io);Ge.default=function(t){t.registerHelper("if",function(e,n){if(arguments.length!=2)throw new qr.default("#if requires exactly one argument");return Qr.isFunction(e)&&(e=e.call(this)),!n.hash.includeZero&&!e||Qr.isEmpty(e)?n.inverse(this):n.fn(this)}),t.registerHelper("unless",function(e,n){if(arguments.length!=2)throw new qr.default("#unless requires exactly one argument");return t.helpers.if.call(this,e,{fn:n.inverse,inverse:n.fn,hash:n.hash})})};Fr.exports=Ge.default});var Ur=T((Ke,$r)=>{"use strict";Ke.__esModule=!0;Ke.default=function(t){t.registerHelper("log",function(){for(var e=[void 0],n=arguments[arguments.length-1],r=0;r{"use strict";Ye.__esModule=!0;Ye.default=function(t){t.registerHelper("lookup",function(e,n,r){return e&&r.lookupProperty(e,n)})};jr.exports=Ye.default});var Gr=T((Je,zr)=>{"use strict";Je.__esModule=!0;function Co(t){return t&&t.__esModule?t:{default:t}}var be=F(),Ro=X(),Mo=Co(Ro);Je.default=function(t){t.registerHelper("with",function(e,n){if(arguments.length!=2)throw new Mo.default("#with requires exactly one argument");be.isFunction(e)&&(e=e.call(this));var r=n.fn;if(be.isEmpty(e))return n.inverse(this);var i=n.data;return n.data&&n.ids&&(i=be.createFrame(n.data),i.contextPath=be.appendContextPath(n.data.contextPath,n.ids[0])),r(e,{data:i,blockParams:be.blockParams([e],[i&&i.contextPath])})})};zr.exports=Je.default});var jt=T(Xe=>{"use strict";Xe.__esModule=!0;Xe.registerDefaultHelpers=Ko;Xe.moveHelperToHooks=Yo;function se(t){return t&&t.__esModule?t:{default:t}}var Ho=Mr(),No=se(Ho),Do=Nr(),Bo=se(Do),Qo=Br(),qo=se(Qo),Fo=Vr(),Vo=se(Fo),$o=Ur(),Uo=se($o),jo=Wr(),Wo=se(jo),zo=Gr(),Go=se(zo);function Ko(t){No.default(t),Bo.default(t),qo.default(t),Vo.default(t),Uo.default(t),Wo.default(t),Go.default(t)}function Yo(t,e,n){t.helpers[e]&&(t.hooks[e]=t.helpers[e],n||delete t.helpers[e])}});var Yr=T((Ze,Kr)=>{"use strict";Ze.__esModule=!0;var Jo=F();Ze.default=function(t){t.registerDecorator("inline",function(e,n,r,i){var s=e;return n.partials||(n.partials={},s=function(o,a){var l=r.partials;r.partials=Jo.extend({},l,n.partials);var u=e(o,a);return r.partials=l,u}),n.partials[i.args[0]]=i.fn,s})};Kr.exports=Ze.default});var Jr=T(Wt=>{"use strict";Wt.__esModule=!0;Wt.registerDefaultDecorators=ta;function Xo(t){return t&&t.__esModule?t:{default:t}}var Zo=Yr(),ea=Xo(Zo);function ta(t){ea.default(t)}});var zt=T((et,Xr)=>{"use strict";et.__esModule=!0;var na=F(),fe={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(e){if(typeof e=="string"){var n=na.indexOf(fe.methodMap,e.toLowerCase());n>=0?e=n:e=parseInt(e,10)}return e},log:function(e){if(e=fe.lookupLevel(e),typeof console<"u"&&fe.lookupLevel(fe.level)<=e){var n=fe.methodMap[e];console[n]||(n="log");for(var r=arguments.length,i=Array(r>1?r-1:0),s=1;s{"use strict";Gt.__esModule=!0;Gt.createNewLookupObject=ia;var ra=F();function ia(){for(var t=arguments.length,e=Array(t),n=0;n{"use strict";Ee.__esModule=!0;Ee.createProtoAccessControl=la;Ee.resultIsAllowed=ua;Ee.resetLoggedProperties=da;function sa(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e}var ei=Zr(),oa=zt(),aa=sa(oa),tt=Object.create(null);function la(t){var e=Object.create(null);e.constructor=!1,e.__defineGetter__=!1,e.__defineSetter__=!1,e.__lookupGetter__=!1;var n=Object.create(null);return n.__proto__=!1,{properties:{whitelist:ei.createNewLookupObject(n,t.allowedProtoProperties),defaultValue:t.allowProtoPropertiesByDefault},methods:{whitelist:ei.createNewLookupObject(e,t.allowedProtoMethods),defaultValue:t.allowProtoMethodsByDefault}}}function ua(t,e,n){return ti(typeof t=="function"?e.methods:e.properties,n)}function ti(t,e){return t.whitelist[e]!==void 0?t.whitelist[e]===!0:t.defaultValue!==void 0?t.defaultValue:(ca(e),!1)}function ca(t){tt[t]!==!0&&(tt[t]=!0,aa.log("error",'Handlebars: Access has been denied to resolve the property "'+t+`" because it is not an "own property" of its parent. -You can add a runtime option to disable the check or this warning: -See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`))}function da(){Object.keys(tt).forEach(function(t){delete tt[t]})}});var Zt=T(j=>{"use strict";j.__esModule=!0;j.HandlebarsEnvironment=Xt;function ni(t){return t&&t.__esModule?t:{default:t}}var oe=F(),ha=X(),Yt=ni(ha),fa=jt(),pa=Jr(),ma=zt(),nt=ni(ma),ga=Kt(),va="4.7.7";j.VERSION=va;var ya=8;j.COMPILER_REVISION=ya;var wa=7;j.LAST_COMPATIBLE_COMPILER_REVISION=wa;var ba={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};j.REVISION_CHANGES=ba;var Jt="[object Object]";function Xt(t,e,n){this.helpers=t||{},this.partials=e||{},this.decorators=n||{},fa.registerDefaultHelpers(this),pa.registerDefaultDecorators(this)}Xt.prototype={constructor:Xt,logger:nt.default,log:nt.default.log,registerHelper:function(e,n){if(oe.toString.call(e)===Jt){if(n)throw new Yt.default("Arg not supported with multiple helpers");oe.extend(this.helpers,e)}else this.helpers[e]=n},unregisterHelper:function(e){delete this.helpers[e]},registerPartial:function(e,n){if(oe.toString.call(e)===Jt)oe.extend(this.partials,e);else{if(typeof n>"u")throw new Yt.default('Attempting to register a partial called "'+e+'" as undefined');this.partials[e]=n}},unregisterPartial:function(e){delete this.partials[e]},registerDecorator:function(e,n){if(oe.toString.call(e)===Jt){if(n)throw new Yt.default("Arg not supported with multiple decorators");oe.extend(this.decorators,e)}else this.decorators[e]=n},unregisterDecorator:function(e){delete this.decorators[e]},resetLoggedPropertyAccesses:function(){ga.resetLoggedProperties()}};var Ea=nt.default.log;j.log=Ea;j.createFrame=oe.createFrame;j.logger=nt.default});var ii=T((rt,ri)=>{"use strict";rt.__esModule=!0;function en(t){this.string=t}en.prototype.toString=en.prototype.toHTML=function(){return""+this.string};rt.default=en;ri.exports=rt.default});var si=T(tn=>{"use strict";tn.__esModule=!0;tn.wrapHelper=xa;function xa(t,e){if(typeof t!="function")return t;var n=function(){var i=arguments[arguments.length-1];return arguments[arguments.length-1]=e(i),t.apply(this,arguments)};return n}});var ci=T(Z=>{"use strict";Z.__esModule=!0;Z.checkRevision=Pa;Z.template=Oa;Z.wrapProgram=it;Z.resolvePartial=Aa;Z.invokePartial=Ia;Z.noop=li;function ka(t){return t&&t.__esModule?t:{default:t}}function Sa(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e}var Ta=F(),z=Sa(Ta),_a=X(),G=ka(_a),K=Zt(),oi=jt(),La=si(),ai=Kt();function Pa(t){var e=t&&t[0]||1,n=K.COMPILER_REVISION;if(!(e>=K.LAST_COMPATIBLE_COMPILER_REVISION&&e<=K.COMPILER_REVISION))if(e{"use strict";st.__esModule=!0;st.default=function(t){var e=typeof global<"u"?global:window,n=e.Handlebars;t.noConflict=function(){return e.Handlebars===t&&(e.Handlebars=n),t}};di.exports=st.default});var ae=T((ot,gi)=>{"use strict";ot.__esModule=!0;function rn(t){return t&&t.__esModule?t:{default:t}}function sn(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e}var Ha=Zt(),fi=sn(Ha),Na=ii(),Da=rn(Na),Ba=X(),Qa=rn(Ba),qa=F(),nn=sn(qa),Fa=ci(),pi=sn(Fa),Va=hi(),$a=rn(Va);function mi(){var t=new fi.HandlebarsEnvironment;return nn.extend(t,fi),t.SafeString=Da.default,t.Exception=Qa.default,t.Utils=nn,t.escapeExpression=nn.escapeExpression,t.VM=pi,t.template=function(e){return pi.template(e,t)},t}var xe=mi();xe.create=mi;$a.default(xe);xe.default=xe;ot.default=xe;gi.exports=ot.default});var Ji=T((Ki,Yi)=>{(function(){var t=function(e){var n=new t.Builder;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),n.searchPipeline.add(t.stemmer),e.call(n,n),n.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(n){e.console&&console.warn&&console.warn(n)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var n=Object.create(null),r=Object.keys(e),i=0;i0){var c=t.utils.clone(n)||{};c.position=[a,u],c.index=s.length,s.push(new t.Token(r.slice(a,o),c))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,n){n in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. -`,e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(r){var i=t.Pipeline.registeredFunctions[r];if(i)n.add(i);else throw new Error("Cannot load unregistered function: "+r)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(n){t.Pipeline.warnIfFunctionNotRegistered(n),this._stack.push(n)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");r=r+1,this._stack.splice(r,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var r=this._stack.indexOf(e);if(r==-1)throw new Error("Cannot find existingFn");this._stack.splice(r,0,n)},t.Pipeline.prototype.remove=function(e){var n=this._stack.indexOf(e);n!=-1&&this._stack.splice(n,1)},t.Pipeline.prototype.run=function(e){for(var n=this._stack.length,r=0;r1&&(oe&&(r=s),o!=e);)i=r-n,s=n+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(ol?c+=2:a==l&&(n+=r[u+1]*i[c+1],u+=2,c+=2);return n},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),n=1,r=0;n0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}if(s.str.length==0&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new t.TokenSet;s.node.edges["*"]=u}s.str.length==1&&(u.final=!0),i.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var c=s.str.charAt(0),d=s.str.charAt(1),h;d in s.node.edges?h=s.node.edges[d]:(h=new t.TokenSet,s.node.edges[d]=h),s.str.length==1&&(h.final=!0),i.push({node:h,editsRemaining:s.editsRemaining-1,str:c+s.str.slice(2)})}}}return r},t.TokenSet.fromString=function(e){for(var n=new t.TokenSet,r=n,i=0,s=e.length;i=e;n--){var r=this.uncheckedNodes[n],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(n){var r=new t.QueryParser(e,n);r.parse()})},t.Index.prototype.query=function(e){for(var n=new t.Query(this.fields),r=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),l=0;l1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,n){var r=e[this._ref],i=Object.keys(this._fields);this._documents[r]=n||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,n;do e=this.next(),n=e.charCodeAt(0);while(n>47&&n<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var n=e.next();if(n==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(n.charCodeAt(0)==92){e.escapeCharacter();continue}if(n==":")return t.QueryLexer.lexField;if(n=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(n=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(n=="+"&&e.width()===1||n=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(n.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,n){this.lexer=new t.QueryLexer(e),this.query=n,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var n=e.peekLexeme();if(n!=null)switch(n.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expected either a field or a term, found "+n.type;throw n.str.length>=1&&(r+=" with value '"+n.str+"'"),new t.QueryParseError(r,n.start,n.end)}},t.QueryParser.parsePresence=function(e){var n=e.consumeLexeme();if(n!=null){switch(n.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var r="unrecognised presence operator'"+n.str+"'";throw new t.QueryParseError(r,n.start,n.end)}var i=e.peekLexeme();if(i==null){var r="expecting term or field, found nothing";throw new t.QueryParseError(r,n.start,n.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var r="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(r,i.start,i.end)}}},t.QueryParser.parseField=function(e){var n=e.consumeLexeme();if(n!=null){if(e.query.allFields.indexOf(n.str)==-1){var r=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+n.str+"', possible fields: "+r;throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.fields=[n.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,n.start,n.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var n=e.consumeLexeme();if(n!=null){e.currentClause.term=n.str.toLowerCase(),n.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var r=e.peekLexeme();if(r==null){e.nextClause();return}switch(r.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+r.type+"'";throw new t.QueryParseError(i,r.start,r.end)}}},t.QueryParser.parseEditDistance=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="edit distance must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.editDistance=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var n=e.consumeLexeme();if(n!=null){var r=parseInt(n.str,10);if(isNaN(r)){var i="boost must be numeric";throw new t.QueryParseError(i,n.start,n.end)}e.currentClause.boost=r;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,n){typeof define=="function"&&define.amd?define(n):typeof Ki=="object"?Yi.exports=n():e.lunr=n()}(this,function(){return t})})()});var $n=new URLSearchParams(window.location.search),I=window.self!==window.parent,Un=$n.has("preview"),jn=$n.has("hint");function Ie(){return window.sidebarNodes||{}}function Wn(){return window.versionNodes||[]}var f=document.querySelector.bind(document),M=document.querySelectorAll.bind(document);function Gn(t){return t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function Ce(t){return String(t).replace(/&/g,"&").replace(//g,">").replace(/"/g,""")}function Re(){return document.getElementById("main").dataset.type}var zn=["H1","H2","H3","H4","H5","H6"];function Me(t=!1){let e=window.location.hash.replace(/^#/,"");if(!e)return t?document.getElementById("top-content"):null;let n=document.getElementById(e);if(!n)return null;if(n.matches(".detail"))return n;if(zn.includes(n.tagName)){let r=document.createElement("div"),i=[n],s=n;for(;(s=s.nextSibling)&&!(zn.includes(s.tagName)&&s.tagName<=n.tagName);)i.push(s);return r.append(...i),r}return null}function Kn(t){return new URLSearchParams(window.location.search).get(t)}function Yn(t){return fetch(t).then(e=>e.ok).catch(()=>!1)}function he(t){return!t||t.trim()===""}function Jn(t,e){let n;return function(...i){clearTimeout(n),n=setTimeout(()=>{n=null,t(...i)},e)}}function He(){return document.head.querySelector("meta[name=project][content]").content}function Ne(){return document.documentElement.classList.contains("apple-os")}function E(t,e,n){let r=document.createElement(t);for(let i in e)e[i]!=null&&r.setAttribute(i,e[i]);return n&&r.replaceChildren(...n),r}if(Un&&I){let t=Me(!0);if(t){document.body.classList.add("preview"),document.getElementById("content").replaceChildren(...t.childNodes);let e=document.getElementsByTagName("a:not([target=_blank]");for(let n of e)n.setAttribute("target","_parent");window.scrollTo(0,0),document.body.style.position="fixed",setTimeout(Xn),window.addEventListener("resize",Xn)}}function Xn(){let t={type:"preview",contentHeight:document.getElementById("content").parentElement.offsetHeight};window.parent.postMessage(t,"*")}var ie={plain:"plain",function:"function",module:"module"},qs=[{href:"typespecs.html#basic-types",hint:{kind:ie.plain,description:"Basic type"}},{href:"typespecs.html#literals",hint:{kind:ie.plain,description:"Literal"}},{href:"typespecs.html#built-in-types",hint:{kind:ie.plain,description:"Built-in type"}}],De={cancelHintFetching:null};function Zn(t){if(tr(t))return!0;let e=/#.*\//;return t.includes("#")&&!e.test(t)?!1:t.includes(".html")}function er(t){let e=tr(t);return e?Promise.resolve(e):Fs(t)}function tr(t){let e=qs.find(n=>t.includes(n.href));return e?e.hint:null}function Fs(t){let e=t.replace(".html",".html?hint=true");return new Promise((n,r)=>{let i=document.createElement("iframe");i.setAttribute("src",e),i.style.display="none";function s(a){let{href:l,hint:u}=a.data;e===l&&(o(),n(u))}De.cancelHintFetching=()=>{o(),r(new Error("cancelled"))};function o(){i.remove(),window.removeEventListener("message",s),De.cancelHintFetching=null}window.addEventListener("message",s),document.body.appendChild(i)})}function nr(){De.cancelHintFetching&&De.cancelHintFetching()}function rr(t){let n=t.querySelector("h1").textContent,r=t.querySelector(".docstring > p"),i=r?r.innerHTML:"";return{kind:ie.function,title:n.trim(),description:i.trim()}}function ir(t){let n=t.querySelector("h1 > span").textContent,r=t.querySelector("#moduledoc p"),i=r?r.innerHTML:"";return{kind:ie.module,title:n.trim(),description:i.trim()}}if(jn&&I){let t=Me(),e=t?rr(t):["modules","tasks"].includes(Re())?ir(f(".content-inner")):null;if(e){let n={hint:{...e,version:He()},href:window.location.href};window.parent.postMessage(n,"*")}f(".content-inner")?.replaceChildren()}var Lt="ex_doc:settings",sr="dark",Pt="system",Ot="dark",At="light";var Vs={tooltips:!0,theme:null,livebookUrl:null},It=class{constructor(){this._subscribers=[],this._settings=Vs,this._loadSettings()}get(){return this._settings}update(e){let n=this._settings;this._settings={...this._settings,...e},this._subscribers.forEach(r=>r(this._settings,n)),this._storeSettings()}getAndSubscribe(e){this._subscribers.push(e),e(this._settings)}_loadSettings(){try{let e=localStorage.getItem(Lt);if(e){let n=JSON.parse(e);this._settings={...this._settings,...n}}this._loadSettingsLegacy()}catch(e){console.error(`Failed to load settings: ${e}`)}}_storeSettings(){try{this._storeSettingsLegacy(),localStorage.setItem(Lt,JSON.stringify(this._settings))}catch(e){console.error(`Failed to persist settings: ${e}`)}}_loadSettingsLegacy(){localStorage.getItem("tooltipsDisabled")!==null&&(this._settings={...this._settings,tooltips:!1}),localStorage.getItem("night-mode")==="true"&&(this._settings={...this._settings,nightMode:!0}),this._settings.nightMode===!0&&(this._settings={...this._settings,theme:"dark"})}_storeSettingsLegacy(){this._settings.tooltips?localStorage.removeItem("tooltipsDisabled"):localStorage.setItem("tooltipsDisabled","true"),this._settings.nightMode!==null?localStorage.setItem("night-mode",this._settings.nightMode===!0?"true":"false"):localStorage.removeItem("night-mode"),this._settings.theme!==null?(localStorage.setItem("night-mode",this._settings.theme==="dark"?"true":"false"),this._settings.nightMode=this._settings.theme==="dark"):(delete this._settings.nightMode,localStorage.removeItem("night-mode"))}},H=new It;var or=!1,Be=null,J=null;function ar(t){or||(or=!0,J=document.getElementById("toast"),J?.addEventListener("click",()=>{clearTimeout(Be),J.classList.remove("show")})),J&&(clearTimeout(Be),J.innerText=t,J.classList.add("show"),Be=setTimeout(()=>{J.classList.remove("show"),Be=setTimeout(function(){J.innerText=""},1e3)},5e3))}var Ct=[Pt,Ot,At],lr=window.matchMedia("(prefers-color-scheme: dark)");H.getAndSubscribe(ur);lr.addEventListener("change",ur);function ur(){let t=Qe(),e=t===Ot||t!==At&&lr.matches;document.body.classList.toggle(sr,e)}function cr(){let t=Ct[Ct.indexOf(Qe())+1]||Ct[0];H.update({theme:t}),ar(`Set theme to "${t}"`)}function Qe(){return new URLSearchParams(window.location.search).get("theme")||H.get().theme||Pt}var xr=Y(mr());var Mt="sidebar_state",Ht="closed",gr="open",vr="sidebar_width";var Fe="sidebar-open",Ve="sidebar-transition";var yr=!1;function wr(){if(yr)return;yr=!0;let t=document.getElementById("sidebar-list-nav");if(!t)return;let e=Re(),n={extras:t.dataset.extras||"Pages",modules:"Modules",tasks:'Mix Tasks'};Object.entries(n).forEach(([r,i])=>{let s=Ie()[r];if(!s?.length)return;let o=`${r}-list-tab-button`,a=`${r}-tab-panel`,l=r===e,u=E("button",{id:o,role:"tab",tabindex:l?0:-1,"aria-selected":l||void 0,"aria-controls":a});u.innerHTML=i,u.addEventListener("keydown",lo),u.addEventListener("click",uo),t.appendChild(E("li",{},[u]));let c=E("ul",{class:"full-list"});c.addEventListener("click",co);let d=E("div",{id:a,class:"sidebar-tabpanel",role:"tabpanel","aria-labelledby":o,hidden:l?void 0:""},[c]);document.getElementById("sidebar").appendChild(d);let h="",p,m;c.replaceChildren(...s.flatMap(g=>{let v=[],w=Array.isArray(g.headers),x=w?void 0:"no";return g.group!==h&&(v.push(E("li",{class:"group",translate:x},[g.group])),h=g.group,p=void 0),g.nested_context&&g.nested_context!==p?(p=g.nested_context,m!==p&&v.push(E("li",{class:"nesting-context",translate:"no","aria-hidden":!0},[p]))):m=g.title,v.push(E("li",{},[E("a",{href:`${g.id}.html`,translate:x},[g.nested_title||g.title]),...Dt(`node-${g.id}-headers`,w?oo(g):ao(g))])),v}))}),window.addEventListener("hashchange",Nt),window.addEventListener("swup:page:view",Nt),Nt(),requestAnimationFrame(br)}function Dt(t,e){return e.length?[E("button",{"aria-label":"expand","aria-expanded":!1,"aria-controls":t}),E("ul",{id:t},e)]:[]}function oo(t){return t.headers.map(({id:e,anchor:n})=>E("li",{},[E("a",{href:`${t.id}.html#${n}`},[e])]))}function ao(t){let e=[];return t.sections?.length&&e.push(E("li",{},[E("a",{href:`${t.id}.html#content`},["Sections"]),...Dt(`${t.id}-sections-list`,t.sections.map(({id:n,anchor:r})=>E("li",{},[E("a",{href:`${t.id}.html#${r}`},[n])])))])),t.nodeGroups&&(e.push(E("li",{},[E("a",{href:`${t.id}.html#summary`},["Summary"])])),e.push(...t.nodeGroups.map(({key:n,name:r,nodes:i})=>E("li",{},[E("a",{href:`${t.id}.html#${n}`},[r]),...Dt(`node-${t.id}-group-${n}-list`,i.map(({anchor:s,title:o,id:a})=>E("li",{},[E("a",{href:`${t.id}.html#${s}`,title:o,translate:"no"},[a])])))])))),e}function Bt(t){let e=document.getElementById("sidebar-list-nav").querySelector("[aria-selected]");e!==t&&(e&&(e.removeAttribute("aria-selected"),e.setAttribute("tabindex","-1"),document.getElementById(e.getAttribute("aria-controls")).setAttribute("hidden","hidden")),t.setAttribute("aria-selected","true"),t.setAttribute("tabindex","0"),document.getElementById(t.getAttribute("aria-controls")).removeAttribute("hidden"))}function br(){f("#sidebar [role=tabpanel]:not([hidden]) a[aria-selected]")?.scrollIntoView()}function Nt(){let t=document.getElementById("sidebar"),{pathname:e,hash:n}=window.location,r=e.split("/").pop().replace(/\.html$/,"")+".html",i=t.querySelector(`li a[href="${r+n}"]`)||t.querySelector(`li a[href="${r}"]`);if(!i)return;t.querySelectorAll(".full-list a[aria-selected]").forEach(o=>{o.removeAttribute("aria-selected")}),t.querySelectorAll(".full-list button[aria-expanded=true]").forEach(o=>{o.setAttribute("aria-expanded",!1)});let s=i.parentElement;for(;s;){if(s.tagName==="LI"){let o=s.firstChild;o.setAttribute("aria-selected",o.getAttribute("href")===r?"page":"true");let a=o.nextSibling;a?.tagName==="BUTTON"&&a.setAttribute("aria-expanded",!0)}else if(s.role==="tabpanel"){s.hasAttribute("hidden")&&Bt(document.getElementById(s.getAttribute("aria-labelledby")));break}s=s.parentElement}}function lo(t){if(!["ArrowRight","ArrowLeft"].includes(t.key))return;let e=Array.from(M('#sidebar-list-nav [role="tab"]')),r=e.indexOf(t.currentTarget)+(t.key==="ArrowRight"?1:-1),i=e.at(r%e.length);Bt(i),i.focus()}function uo(t){Bt(t.currentTarget),br()}function co(t){let e=t.target;e.tagName==="BUTTON"&&e.setAttribute("aria-expanded",e.getAttribute("aria-expanded")==="false")}var fo=300,kr=".sidebar-toggle",Sr=window.matchMedia(`screen and (max-width: ${768}px)`);if(!I){Qt(),window.addEventListener("swup:page:view",Qt);let t=document.getElementById("sidebar"),e=f(kr);e.addEventListener("click",$e),document.body.addEventListener("click",i=>{Sr.matches&&Tr()&&!t.contains(i.target)&&!e.contains(i.target)&&$e()});let n=window.innerWidth;window.addEventListener("resize",(0,xr.default)(()=>{n!==window.innerWidth&&(n=window.innerWidth,Qt())},100));let r=new ResizeObserver(([i])=>{if(!i)return;let s=i.contentRect.width;sessionStorage.setItem(vr,s),document.body.style.setProperty("--sidebarWidth",`${s}px`)});t.addEventListener("mousedown",()=>r.observe(t)),t.addEventListener("mouseup",()=>r.unobserve(t))}function Qt(){let e=sessionStorage.getItem(Mt)!==Ht&&!Sr.matches;Lr(e)}function $e(){let t=!Tr();return sessionStorage.setItem(Mt,t?gr:Ht),Pr(t)}function Tr(){return document.body.classList.contains(Fe)}function _r(){return document.body.classList.contains(Fe)&&!document.body.classList.contains(Ve)}function Lr(t){t&&wr(),document.body.classList.toggle(Fe,t),f(kr).setAttribute("aria-expanded",t?"true":"false")}var Er;function Pr(t){return new Promise(e=>{document.body.classList.add(Ve),document.body.scrollTop,Lr(t),clearTimeout(Er),Er=setTimeout(()=>{document.body.classList.remove(Ve),e()},fo)})}function Or(){return Pr(!0)}var vi=Y(ae());var on=Y(ae());on.registerHelper("isArray",function(t,e){return Array.isArray(t)?e.fn(this):e.inverse(this)});on.registerHelper("isNonEmptyArray",function(t,e){return Array.isArray(t)&&t.length>0?e.fn(this):e.inverse(this)});var yi=vi.template({1:function(t,e,n,r,i){var s,o,a=e??(t.nullContext||{}),l=t.hooks.helperMissing,u="function",c=t.escapeExpression,d=t.lookupProperty||function(h,p){if(Object.prototype.hasOwnProperty.call(h,p))return h[p]};return' -`},2:function(t,e,n,r,i){return" selected disabled"},4:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return` -`},compiler:[8,">= 4.3.0"],main:function(t,e,n,r,i){var s,o=e??(t.nullContext||{}),a=t.lookupProperty||function(l,u){if(Object.prototype.hasOwnProperty.call(l,u))return l[u]};return`
- -`+((s=a(n,"if").call(o,e!=null?a(e,"latestVersion"):e,{name:"if",hash:{},fn:t.program(4,i,0),inverse:t.noop,data:i,loc:{start:{line:13,column:2},end:{line:20,column:9}}}))!=null?s:"")+`
-`},useData:!0});var Ua=".sidebar-projectVersion",wi=".sidebar-projectVersionsDropdown";if(!I){let t=Wn(),e=f(Ua);if(t.length>0||!e){let n=e.textContent.trim(),i=(t.some(l=>l.version===n)?t:[{version:n,url:"#"},...t]).map(l=>({...l,isCurrentVersion:l.version===n})),s=t.find(l=>l.latest),o=s?.version!==n?s?.url:null;e.innerHTML=yi({nodes:i,latestVersion:o});let a=f(wi);a.addEventListener("change",Wa),ja(a)}}function ja(t){let e=document.createElement("span");e.style.visibility="hidden",e.style.position="absolute",e.style.whiteSpace="nowrap",e.style.font=window.getComputedStyle(t).font,e.textContent=t.options[t.selectedIndex].text,document.body.appendChild(e),t.style.width=`${e.offsetWidth+20}px`,document.body.removeChild(e)}function Wa(t){let e=t.target.value,n=window.location.pathname.split("/").pop()+window.location.hash,r=`${e}/${n}`;Yn(r).then(i=>{i?window.location.href=r:window.location.href=e})}function an(){let t=f(wi);t&&(t.focus(),t.addEventListener("keydown",e=>{(e.key==="Escape"||e.key==="v")&&(e.preventDefault(),t.blur())}),navigator.userActivation.isActive&&"showPicker"in HTMLSelectElement.prototype&&t.showPicker())}var za="content",Ga="tabs-open",Ka="tabs-close",Ya="H3",Ja="tabset";window.addEventListener("swup:page:view",Ei);Ei();function Ei(){let t=[],e=[],n=document.createNodeIterator(document.getElementById(za),NodeFilter.SHOW_COMMENT,i=>i.nodeValue.trim()===Ga?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT),r;for(;r=n.nextNode();){let i=[];t.push([r,i]);let s,o=r;for(;o=o.nextSibling;)if(o.nodeName===Ya){s=[];let a=o.querySelector(".text")?.childNodes||o.childNodes;i.push([a,s]),e.push(o)}else if(o.nodeName==="#comment"&&o.nodeValue.trim()===Ka){e.push(o);break}else s&&s.push(o)}t.forEach(([i,s],o)=>{let a=E("div",{class:Ja});i.parentNode.replaceChild(a,i);let l=E("div",{role:"tablist",class:"tabset-tablist"});a.appendChild(l),s.forEach(([u,c],d)=>{let h=d===0,p=`tab-${o}-${d}`,m=`tabpanel-${o}-${d}`,g=E("button",{role:"tab",id:p,class:"tabset-tab",tabindex:h?0:-1,"aria-selected":h,"aria-controls":m},u);g.addEventListener("click",Xa),g.addEventListener("keydown",Za),l.appendChild(g);let v=E("div",{role:"tabpanel",id:m,class:"tabset-panel",hidden:h?void 0:"",tabindex:h?0:-1,"aria-labelledby":p},c);a.appendChild(v)})}),e.forEach(i=>{i.parentNode.removeChild(i)})}function Xa(t){xi(t.currentTarget)}function Za(t){if(bi[t.code]){t.preventDefault();let e=[...t.currentTarget.parentNode.childNodes],n=e.indexOf(t.currentTarget),r=bi[t.code](n,e.length);xi(e.at(r%e.length))}}var bi={ArrowLeft:t=>t-1,ArrowRight:t=>t+1,Home:()=>0,End:(t,e)=>e-1};function xi(t){let e=t.parentNode.querySelector("[aria-selected=true]");if(e===t)return;e.setAttribute("aria-selected","false"),e.tabIndex=-1,t.setAttribute("aria-selected","true"),t.tabIndex=0,t.focus();let n=document.getElementById(e.getAttribute("aria-controls"));n.setAttribute("hidden",""),n.tabIndex=-1;let r=document.getElementById(t.getAttribute("aria-controls"));r.removeAttribute("hidden"),r.tabIndex=0}window.addEventListener("swup:page:view",ki);ki();function ki(){let t=window.location.pathname.replace(/(\.html)?$/,".livemd"),e=encodeURIComponent(new URL(t,window.location.href).toString());H.getAndSubscribe(({livebookUrl:n})=>{let r=n?`${n}/import?url=${e}`:`https://livebook.dev/run?url=${e}`;for(let i of M(".livebook-badge"))i.href=r})}var el="hll";window.addEventListener("swup:page:view",Ti);Ti();function Ti(){M("[data-group-id]").forEach(t=>{t.addEventListener("mouseenter",Si),t.addEventListener("mouseleave",Si)})}function Si(t){let e=t.currentTarget,n=t.type==="mouseenter",r=e.getAttribute("data-group-id");e.parentElement.querySelectorAll(`[data-group-id="${r}"]`).forEach(i=>{i.classList.toggle(el,n)})}var W={module:"module",moduleChild:"module-child",mixTask:"mix-task",extra:"extra",section:"section"};function Li(t,e=8){if(he(t))return[];let n=Ie(),r=[...ln(n.modules,t,W.module,"module"),...tl(n.modules,t,W.moduleChild),...ln(n.tasks,t,W.mixTask,"mix task"),...ln(n.extras,t,W.extra,"page"),...un(n.modules,t,W.section,"module"),...un(n.tasks,t,W.section,"mix task"),...un(n.extras,t,W.section,"page")].filter(i=>i!==null);return ll(r).slice(0,e)}function ln(t,e,n,r){return t.map(i=>i.searchData?null:rl(i,e,n,r))}function tl(t,e,n){return t.filter(r=>r.nodeGroups).flatMap(r=>r.nodeGroups.flatMap(({key:i,nodes:s})=>{let o=al(i);return s.map(a=>il(a,r.id,e,n,o)||ol(a,r.id,e,n,o))}))}function un(t,e,n,r){return t.flatMap(i=>nl(i).map(s=>sl(i,s,e,n,r)))}function nl(t){return t.searchData?t.searchData:(t.sections||[]).concat(t.headers||[])}function rl(t,e,n,r){return lt(t.title,e)?{link:`${t.id}.html`,title:dt(t.title,e),description:null,matchQuality:ut(t.title,e),deprecated:t.deprecated,labels:[r],category:n}:null}function il(t,e,n,r,i){return lt(t.id,n)?{link:`${e}.html#${t.anchor}`,title:dt(t.id,n),labels:[i],description:e,matchQuality:ut(t.id,n),deprecated:t.deprecated,category:r}:null}function sl(t,e,n,r,i){if(!Pi(e.id,n))return null;let s;return e.anchor===""?s=`${t.id}.html`:s=`${t.id}.html#${e.anchor}`,{link:s,title:dt(e.id,n),description:t.title,matchQuality:ut(e.id,n),labels:e.labels||[i,"section"],category:r}}function ol(t,e,n,r,i){let s=`${e}.${t.id}`,o=`${e}:${t.id}`,a,l;if(lt(s,n))a=s,l=/\./g;else if(lt(o,n))a=o,l=/:/g;else return null;let u=n.replace(l," ");return Pi(t.id,u)?{link:`${e}.html#${t.anchor}`,title:dt(t.id,u),label:i,description:e,matchQuality:ut(a,n),deprecated:t.deprecated,category:r}:null}function al(t){switch(t){case"callbacks":return"callback";case"types":return"type";default:return"function"}}function ll(t){return t.slice().sort((e,n)=>e.matchQuality!==n.matchQuality?n.matchQuality-e.matchQuality:_i(e.category)-_i(n.category))}function _i(t){switch(t){case W.module:return 1;case W.moduleChild:return 2;case W.mixTask:return 3;default:return 4}}function Pi(t,e){return ct(e).some(r=>Oi(t,r))}function lt(t,e){return ct(e).every(r=>Oi(t,r))}function Oi(t,e){return t.toLowerCase().includes(e.toLowerCase())}function ut(t,e){let n=ct(e),i=n.map(o=>o.length).reduce((o,a)=>o+a,0)/t.length,s=ul(t,n[0])?1:0;return i+s}function ul(t,e){return t.toLowerCase().startsWith(e.toLowerCase())}function ct(t){return t.trim().split(/\s+/)}function dt(t,e){let n=ct(e).sort((r,i)=>i.length-r.length);return at(t,n)}function at(t,e){if(e.length===0)return t;let[n,...r]=e,i=t.match(new RegExp(`(.*)(${Gn(n)})(.*)`,"i"));if(i){let[,s,o,a]=i;return at(s,e)+""+Ce(o)+""+at(a,e)}else return at(t,r)}var Ai=Y(ae());var Ii=Ai.template({1:function(t,e,n,r,i){var s,o,a=e??(t.nullContext||{}),l=t.hooks.helperMissing,u="function",c=t.escapeExpression,d=t.lookupProperty||function(h,p){if(Object.prototype.hasOwnProperty.call(h,p))return h[p]};return' -
-`+((s=d(n,"if").call(a,e!=null?d(e,"deprecated"):e,{name:"if",hash:{},fn:t.program(2,i,0),inverse:t.program(4,i,0),data:i,loc:{start:{line:16,column:10},end:{line:20,column:17}}}))!=null?s:"")+` -`+((s=d(n,"each").call(a,e!=null?d(e,"labels"):e,{name:"each",hash:{},fn:t.program(6,i,0),inverse:t.noop,data:i,loc:{start:{line:22,column:10},end:{line:24,column:19}}}))!=null?s:"")+`
- -
-
- -
-
- -`+((s=d(n,"if").call(a,e!=null?d(e,"description"):e,{name:"if",hash:{},fn:t.program(8,i,0),inverse:t.noop,data:i,loc:{start:{line:39,column:8},end:{line:43,column:15}}}))!=null?s:"")+`
-`},2:function(t,e,n,r,i){var s,o,a=t.lookupProperty||function(l,u){if(Object.prototype.hasOwnProperty.call(l,u))return l[u]};return' '+((s=(o=(o=a(n,"title")||(e!=null?a(e,"title"):e))!=null?o:t.hooks.helperMissing,typeof o=="function"?o.call(e??(t.nullContext||{}),{name:"title",hash:{},data:i,loc:{start:{line:17,column:49},end:{line:17,column:60}}}):o))!=null?s:"")+` -`},4:function(t,e,n,r,i){var s,o,a=t.lookupProperty||function(l,u){if(Object.prototype.hasOwnProperty.call(l,u))return l[u]};return' '+((s=(o=(o=a(n,"title")||(e!=null?a(e,"title"):e))!=null?o:t.hooks.helperMissing,typeof o=="function"?o.call(e??(t.nullContext||{}),{name:"title",hash:{},data:i,loc:{start:{line:19,column:46},end:{line:19,column:57}}}):o))!=null?s:"")+` -`},6:function(t,e,n,r,i){return' '+t.escapeExpression(t.lambda(e,e))+` -`},8:function(t,e,n,r,i){var s,o,a=t.lookupProperty||function(l,u){if(Object.prototype.hasOwnProperty.call(l,u))return l[u]};return`
- `+((s=(o=(o=a(n,"description")||(e!=null?a(e,"description"):e))!=null?o:t.hooks.helperMissing,typeof o=="function"?o.call(e??(t.nullContext||{}),{name:"description",hash:{},data:i,loc:{start:{line:41,column:10},end:{line:41,column:27}}}):o))!=null?s:"")+` -
-`},compiler:[8,">= 4.3.0"],main:function(t,e,n,r,i){var s,o,a=e??(t.nullContext||{}),l=t.lookupProperty||function(u,c){if(Object.prototype.hasOwnProperty.call(u,c))return u[c]};return`
-
-
-
- - Autocompletion results for "`+t.escapeExpression((o=(o=l(n,"term")||(e!=null?l(e,"term"):e))!=null?o:t.hooks.helperMissing,typeof o=="function"?o.call(a,{name:"term",hash:{},data:i,loc:{start:{line:6,column:55},end:{line:6,column:63}}}):o))+`" - - - Press RETURN for full-text search, TAB for previews - -
-
-`+((s=l(n,"each").call(a,e!=null?l(e,"suggestions"):e,{name:"each",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i,loc:{start:{line:13,column:6},end:{line:45,column:15}}}))!=null?s:"")+`
-
-
-`},useData:!0});var pe=".autocomplete",ft=".autocomplete-suggestions",ht=".autocomplete-suggestion",C={autocompleteSuggestions:[],previewOpen:!1,selectedIdx:-1};function cl(){f(pe).classList.add("shown")}function cn(){f(pe).classList.remove("shown")}function Ci(){return f(pe).classList.contains("shown")}function dn(t){C.autocompleteSuggestions=Li(t),C.selectedIdx=-1,he(t)?cn():(dl({term:t,suggestions:C.autocompleteSuggestions}),pt(0),cl())}function dl({term:t,suggestions:e}){let n=Ii({suggestions:e,term:t}),r=f(pe);r.innerHTML=n}function hn(){return C.selectedIdx===-1?null:C.autocompleteSuggestions[C.selectedIdx]}function pt(t){Mi(hl(t))}function Ri(t){if(t.data.type==="preview"){let{contentHeight:e}=t.data,n=f(".autocomplete-preview");n&&(n.style.height=`${e+32}px`,n.classList.remove("loading"))}}function Mi(t){C.selectedIdx=t;let e=f(ft),n=f(`${ht}.selected`),r=f(`${ht}[data-index="${C.selectedIdx}"]`);if(n&&n.classList.remove("selected"),r){if(C.previewOpen){Ni(),window.addEventListener("message",Ri),e.classList.add("previewing");let i=document.createElement("div");i.classList.add("autocomplete-preview"),i.classList.add("loading");let s=r.href.replace(".html",`.html?preview=true&theme=${Qe()}`),o=document.createElement("iframe");o.setAttribute("src",s),i.appendChild(document.createElement("div")),i.appendChild(document.createElement("span")),i.appendChild(o),r.parentNode.insertBefore(i,r.nextSibling)}r.classList.add("selected"),r.scrollIntoView({block:"nearest"})}else e&&(e.scrollTop=0)}function Hi(){C.previewOpen?mt():fn()}function mt(){C.previewOpen=!1;let t=f(ft);t&&t.classList.remove("previewing"),Ni()}function fn(t){C.previewOpen=!0,t?t=t.closest(ht):t=f(`${ht}[data-index="${C.selectedIdx}"]`),t&&Mi(parseInt(t.dataset.index))}function Ni(){let t=f(".autocomplete-preview");t&&(t.remove(),window.removeEventListener("message",Ri))}function hl(t){let e=C.autocompleteSuggestions.length+1;return(C.selectedIdx+t+1+e)%e-1}var ke="form.search-bar input",fl="form.search-bar .search-close-button";I||(window.addEventListener("swup:page:view",Di),Di());function Di(){pl(),window.onTogglePreviewClick=function(t,e){t.preventDefault(),t.stopImmediatePropagation(),mn(),e?fn(t.target):mt()}}function qi(t){let e=f(ke);e.value=t}function mn(){let t=f(ke);document.body.classList.add("search-focused"),t.focus()}function pl(){let t=f(ke);if(document.querySelector('meta[name="exdoc:autocomplete"][content="off"]'))return t.addEventListener("keydown",e=>{e.key==="Enter"&&Bi(e)}),!0;t.addEventListener("keydown",e=>{let n=Ne();e.key==="Escape"?(gt(),t.blur()):e.key==="Enter"?Bi(e):e.key==="ArrowUp"||n&&e.ctrlKey&&e.key==="p"?(pt(-1),e.preventDefault()):e.key==="ArrowDown"||n&&e.ctrlKey&&e.key==="n"?(pt(1),e.preventDefault()):e.key==="Tab"&&hn()!==null&&(Hi(),e.preventDefault())}),t.addEventListener("input",e=>{dn(e.target.value)}),t.addEventListener("focus",e=>{document.body.classList.contains("search-focused")||(document.body.classList.add("search-focused"),dn(e.target.value))}),t.addEventListener("blur",e=>{let n=e.relatedTarget,r=f(ft);if(n&&r&&r.contains(n))return setTimeout(()=>{Ci()&&t.focus()},1e3),null;vt()}),f(pe).addEventListener("click",e=>{e.shiftKey||e.ctrlKey?t.focus():(gt(),vt())}),f(fl).addEventListener("click",e=>{gt(),vt()})}function Bi(t){let e=f(ke),n=t.shiftKey||t.ctrlKey,r=hn();t.preventDefault();let i=n?"_blank":"_self",s=document.createElement("a");if(s.setAttribute("target",i),r)s.setAttribute("href",r.link);else{let o=document.querySelector('meta[name="exdoc:full-text-search-url"]'),a=o?o.getAttribute("content"):"search.html?q=";s.setAttribute("href",`${a}${encodeURIComponent(e.value)}`)}s.click(),n||(gt(),vt())}function gt(){let t=f(ke);t.value=""}function vt(){mt(),document.body.classList.remove("search-focused"),cn()}var pn,Qi=2;window.addEventListener("scroll",function(){let t=window.scrollY;if(pn!==void 0){let e=t-pn;t===0||e>Qi?document.body.classList.remove("scroll-sticky"):t>0&&-e>Qi&&document.body.classList.add("scroll-sticky")}pn=Math.max(0,t)},!1);var Fi=Y(ae());var Vi=Fi.template({1:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return`
- `+t.escapeExpression(t.lambda((s=e!=null?o(e,"hint"):e)!=null?o(s,"description"):s,e))+` -
-`},3:function(t,e,n,r,i){var s,o=t.lambda,a=t.escapeExpression,l=t.lookupProperty||function(u,c){if(Object.prototype.hasOwnProperty.call(u,c))return u[c]};return`
-

- `+a(o((s=e!=null?l(e,"hint"):e)!=null?l(s,"title"):s,e))+` -
`+a(o((s=e!=null?l(e,"hint"):e)!=null?l(s,"version"):s,e))+`
-

-
-`+((s=l(n,"if").call(e??(t.nullContext||{}),(s=e!=null?l(e,"hint"):e)!=null?l(s,"description"):s,{name:"if",hash:{},fn:t.program(4,i,0),inverse:t.noop,data:i,loc:{start:{line:12,column:2},end:{line:16,column:9}}}))!=null?s:"")},4:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return`
- `+((s=t.lambda((s=e!=null?o(e,"hint"):e)!=null?o(s,"description"):s,e))!=null?s:"")+` -
-`},compiler:[8,">= 4.3.0"],main:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return(s=o(n,"if").call(e??(t.nullContext||{}),e!=null?o(e,"isPlain"):e,{name:"if",hash:{},fn:t.program(1,i,0),inverse:t.program(3,i,0),data:i,loc:{start:{line:1,column:0},end:{line:17,column:7}}}))!=null?s:""},useData:!0});var ml='
',gl=".content a:not([data-no-tooltip])",gn=".tooltip",$i=".tooltip .tooltip-body",Ui="body .content-inner",vl="#content",ji="tooltip-shown",Se=10,yl=Se*4,wl=768,bl=450,El=100,le={currentLinkElement:null,hoverDelayTimeout:null};window.addEventListener("swup:page:view",Wi);Wi();function Wi(){M(gl).forEach(t=>{xl(t)&&(t.addEventListener("mouseenter",Sl),t.addEventListener("mouseleave",_l))})}function xl(t){return!(kl(t.href)||!Zn(t.href))}function kl(t){let e=t.replace(vl,"");return window.location.href.split("#")[0]===e}function Sl(t){if(window.innerWidth{er(e.href).then(Tl).catch(()=>{})},El)}function Tl(t){let e=Vi({isPlain:t.kind===ie.plain,hint:t}),n=f($i);n||(f(Ui).insertAdjacentHTML("beforeend",ml),n=f($i)),n.innerHTML=e,Ll(),f(gn).classList.add(ji)}function _l(){le.currentLinkElement&&(clearTimeout(le.hoverDelayTimeout),nr(),le.currentLinkElement=null,f(gn)?.classList.remove(ji))}function Ll(){if(!le.currentLinkElement)return;let t=f(gn),e=le.currentLinkElement.getBoundingClientRect(),n=f(Ui).getBoundingClientRect(),r=t.getBoundingClientRect(),i=Pl(e,n);if(e.left+r.width+Se code:first-child):not(:has(.copy-button))").forEach(t=>{if(!vn){let r=document.createElement("div");r.innerHTML=zi,vn=r.firstChild}let e=vn.cloneNode(!0);t.appendChild(e);let n;e.addEventListener("click",()=>{let r=e.querySelector("[aria-live]");clearTimeout(n);let i=Array.from(t.querySelectorAll("code > *:not(.unselectable)")).map(s=>s.textContent).join("");navigator.clipboard.writeText(i),e.classList.add("clicked"),r.innerHTML="Copied! ✓",n=setTimeout(()=>{e.classList.remove("clicked"),r.innerHTML=""},3e3)})})}var V=Y(Ji());var Xi=Y(ae());var Zi=Xi.template({1:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return" Search results for "+t.escapeExpression((s=(s=o(n,"value")||(e!=null?o(e,"value"):e))!=null?s:t.hooks.helperMissing,typeof s=="function"?s.call(e??(t.nullContext||{}),{name:"value",hash:{},data:i,loc:{start:{line:3,column:27},end:{line:3,column:36}}}):s))+` -`},3:function(t,e,n,r,i){return` Invalid search -`},5:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return(s=o(n,"each").call(e??(t.nullContext||{}),e!=null?o(e,"results"):e,{name:"each",hash:{},fn:t.program(6,i,0),inverse:t.noop,data:i,loc:{start:{line:10,column:2},end:{line:21,column:11}}}))!=null?s:""},6:function(t,e,n,r,i){var s,o=t.lambda,a=t.escapeExpression,l=t.lookupProperty||function(u,c){if(Object.prototype.hasOwnProperty.call(u,c))return u[c]};return`
-

- - `+a(o(e!=null?l(e,"title"):e,e))+" ("+a(o(e!=null?l(e,"type"):e,e))+`) - -

-`+((s=l(n,"each").call(e??(t.nullContext||{}),e!=null?l(e,"excerpts"):e,{name:"each",hash:{},fn:t.program(7,i,0),inverse:t.noop,data:i,loc:{start:{line:17,column:8},end:{line:19,column:17}}}))!=null?s:"")+`
-`},7:function(t,e,n,r,i){var s;return'

'+((s=t.lambda(e,e))!=null?s:"")+`

-`},9:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return((s=(o(n,"isArray")||e&&o(e,"isArray")||t.hooks.helperMissing).call(e??(t.nullContext||{}),e!=null?o(e,"results"):e,{name:"isArray",hash:{},fn:t.program(10,i,0),inverse:t.program(12,i,0),data:i,loc:{start:{line:23,column:2},end:{line:29,column:14}}}))!=null?s:"")+` -

The search functionality is full-text based. Here are some tips:

- -
    -
  • Multiple words (such as foo bar) are searched as OR
  • -
  • Use * anywhere (such as fo*) as wildcard
  • -
  • Use + before a word (such as +foo) to make its presence required
  • -
  • Use - before a word (such as -foo) to make its absence required
  • -
  • Use : to search on a particular field (such as field:word). The available fields are title, doc and type
  • -
  • Use WORD^NUMBER (such as foo^2) to boost the given word
  • -
  • Use WORD~NUMBER (such as foo~2) to do a search with edit distance on word
  • -
- -

To quickly go to a module, type, or function, use the autocompletion feature in the sidebar search.

-`},10:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return"

Sorry, we couldn't find anything for "+t.escapeExpression((s=(s=o(n,"value")||(e!=null?o(e,"value"):e))!=null?s:t.hooks.helperMissing,typeof s=="function"?s.call(e??(t.nullContext||{}),{name:"value",hash:{},data:i,loc:{start:{line:24,column:48},end:{line:24,column:57}}}):s))+`.

-`},12:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return(s=o(n,"if").call(e??(t.nullContext||{}),e!=null?o(e,"value"):e,{name:"if",hash:{},fn:t.program(13,i,0),inverse:t.program(15,i,0),data:i,loc:{start:{line:25,column:2},end:{line:29,column:2}}}))!=null?s:""},13:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return"

Invalid search: "+t.escapeExpression((s=(s=o(n,"errorMessage")||(e!=null?o(e,"errorMessage"):e))!=null?s:t.hooks.helperMissing,typeof s=="function"?s.call(e??(t.nullContext||{}),{name:"errorMessage",hash:{},data:i,loc:{start:{line:26,column:23},end:{line:26,column:39}}}):s))+`.

-`},15:function(t,e,n,r,i){return`

Please type something into the search bar to perform a search.

- `},compiler:[8,">= 4.3.0"],main:function(t,e,n,r,i){var s,o=e??(t.nullContext||{}),a=t.lookupProperty||function(l,u){if(Object.prototype.hasOwnProperty.call(l,u))return l[u]};return`

-`+((s=a(n,"if").call(o,e!=null?a(e,"value"):e,{name:"if",hash:{},fn:t.program(1,i,0),inverse:t.program(3,i,0),data:i,loc:{start:{line:2,column:2},end:{line:6,column:9}}}))!=null?s:"")+`

- -`+((s=(a(n,"isNonEmptyArray")||e&&a(e,"isNonEmptyArray")||t.hooks.helperMissing).call(o,e!=null?a(e,"results"):e,{name:"isNonEmptyArray",hash:{},fn:t.program(5,i,0),inverse:t.program(9,i,0),data:i,loc:{start:{line:9,column:0},end:{line:44,column:20}}}))!=null?s:"")},useData:!0});var yt=80,Ol="#search";V.default.tokenizer.separator=/\s+/;V.default.QueryLexer.termSeparator=/\s+/;V.default.Pipeline.registerFunction(rs,"docTokenSplitter");V.default.Pipeline.registerFunction(is,"docTrimmer");window.addEventListener("swup:page:view",ts);ts();function ts(){let t=window.location.pathname;if(t.endsWith("/search.html")||t.endsWith("/search")){let e=Kn("q");Al(e)}}async function Al(t){if(he(t))yn({value:t});else{qi(t);let e=await Il();try{let n=t.replaceAll(/(\B|\\):/g,"\\:"),r=Fl(e.search(n));yn({value:t,results:r})}catch(n){yn({value:t,errorMessage:n.message})}}}function yn({value:t,results:e,errorMessage:n}){let r=f(Ol),i=Zi({value:t,results:e,errorMessage:n});r.innerHTML=i}async function Il(){let t=await Cl();if(t)return t;let e=Bl();return Rl(e),e}async function Cl(){try{let t=sessionStorage.getItem(ns());if(t){let e=await Hl(t);return V.default.Index.load(e)}else return null}catch(t){return console.error("Failed to load index: ",t),null}}async function Rl(t){try{let e=await Ml(t);sessionStorage.setItem(ns(),e)}catch(e){console.error("Failed to save index: ",e)}}async function Ml(t){let e=new Blob([JSON.stringify(t)],{type:"application/json"}).stream().pipeThrough(new window.CompressionStream("gzip")),r=await(await new Response(e).blob()).arrayBuffer();return Nl(r)}async function Hl(t){let e=new Blob([Dl(t)],{type:"application/json"}).stream().pipeThrough(new window.DecompressionStream("gzip")),n=await new Response(e).text();return JSON.parse(n)}function Nl(t){let e="",n=new Uint8Array(t),r=n.byteLength;for(let i=0;i{this.add(t)})})}function Ql(t){t.pipeline.before(V.default.stemmer,rs)}function rs(t){let e=[t],n=/\/\d+$/,r=/\:|\./,i=t.toString();if(i.replace(/^[.,;?!]+|[.,;]+$/g,""),i.startsWith("`")&&i.endsWith("`")&&(i=i.slice(1,-1)),n.test(i)){let o=t.toString().replace(n,"");e.push(t.clone().update(()=>o));let a=o.split(r);if(a.length>1){for(let u of a)e.push(t.clone().update(()=>u));let l=t.toString().split(r);e.push(t.clone().update(()=>l[l.length-1]))}i=a[a.length-1]}else i.startsWith("@")?(i=i.substring(1),e.push(t.clone().update(()=>i))):i.startsWith(":")&&(i=i.substring(1),e.push(t.clone().update(()=>i)));let s=i.split(/\_|\-/);if(s.length>1)for(let o of s)e.push(t.clone().update(()=>o));return e}function ql(t){t.pipeline.before(V.default.stemmer,is)}function is(t){return t.update(function(e){return e.replace(/^[^@:\w]+/,"").replace(/[^\?\!\w]+$/,"")})}function Fl(t){return t.filter(e=>es(e.ref)).map(e=>{let n=es(e.ref),r=e.matchData.metadata;return{...n,metadata:r,excerpts:Vl(n,r)}})}function es(t){return searchData.items.find(e=>e.ref===t)||null}function Vl(t,e){let{doc:n}=t,i=Object.keys(e).filter(s=>"doc"in e[s]).map(s=>e[s].doc.position.map(([o,a])=>$l(n,o,a))).reduce((s,o)=>s.concat(o),[]);return i.length===0?[n.slice(0,yt*2)+(yt*20?"...":"",t.slice(r,e),""+Ce(t.slice(e,e+n))+"",t.slice(e+n,i),i{t.key==="Escape"&&ue()}),N.querySelector(".modal-close").addEventListener("click",ue),N.addEventListener("click",t=>{t.target===N&&ue()}))}function os(t){if(!bn)if(N.contains(t.target))wn=t.target;else{bn=!0;let e=N.querySelectorAll(Ul);wn===e[0]?e[e.length-1].focus():e[0].focus(),bn=!1,wn=document.activeElement}}function wt({title:t,body:e}){jl(),En=document.activeElement,document.addEventListener("focus",os,!0),N.querySelector(".modal-title").innerHTML=t,N.querySelector(".modal-body").innerHTML=e,N.classList.add("shown"),N.focus()}function ue(){N?.classList.remove("shown"),document.removeEventListener("focus",os,!0),En?.focus(),En=null}function as(){return Boolean(N?.classList.contains("shown"))}var ls='
';var Wl="https://hexdocs.pm/%%",zl="https://www.erlang.org/doc/apps/%%",Gl="https://hex.pm/api/packages?search=name:%%*",Kl=".display-quick-switch",ds="#quick-switch-input",hs="#quick-switch-results",Yl=300,Jl=9,fs=["erts","asn1","common_test","compiler","crypto","debugger","dialyzer","diameter","edoc","eldap","erl_interface","et","eunit","ftp","inets","jinterface","kernel","megaco","mnesia","observer","odbc","os_mon","parsetools","public_key","reltool","runtime_tools","sasl","snmp","ssh","ssl","stdlib","syntax_tools","tftp","tools","wx","xmerl"],Xl=["elixir","eex","ex_unit","hex","iex","logger","mix"].concat(fs).map(t=>({name:t})),ps=2,B={autocompleteResults:[],selectedIdx:null};I||(window.addEventListener("swup:page:view",us),us());function us(){M(Kl).forEach(t=>{t.addEventListener("click",kn)})}function Zl(t){if(t.key==="Enter"){let e=t.target.value;tu(e),t.preventDefault()}else t.key==="ArrowUp"?(cs(-1),t.preventDefault()):t.key==="ArrowDown"&&(cs(1),t.preventDefault())}function eu(t){let e=t.target.value;if(e.lengthn.json()).then(n=>{Array.isArray(n)&&(B.autocompleteResults=su(t,n),B.selectedIdx=null,f(ds).value.length>=ps&&iu(B.autocompleteResults))})}function iu(t){f(hs).replaceChildren(...t.map(({name:e},n)=>{let r=E("div",{class:"quick-switch-result","data-index":n},[e]);return r.addEventListener("click",()=>xn(e)),r}))}function su(t,e){return Xl.concat(e).filter(n=>n.name.toLowerCase().includes(t.toLowerCase())).filter(n=>n.releases===void 0||n.releases[0].has_docs===!0).slice(0,Jl)}function cs(t){B.selectedIdx=ou(t);let e=f(".quick-switch-result.selected"),n=f(`.quick-switch-result[data-index="${B.selectedIdx}"]`);e&&e.classList.remove("selected"),n&&n.classList.add("selected")}function ou(t){let e=B.autocompleteResults.length;if(B.selectedIdx===null){if(t>=0)return 0;if(t<0)return e-1}return(B.selectedIdx+t+e)%e}var au="#settings-modal-content",_n=[{key:"c",description:"Toggle sidebar",action:$e},{key:"n",description:"Cycle themes",action:cr},{key:"s",description:"Focus search bar",displayAs:"/ or s",action:Sn},{key:"/",action:Sn},{key:"k",hasModifier:!0,action:Sn},{key:"v",description:"Open/focus version select",action:cu},{key:"g",description:"Go to package docs",displayAs:"g",action:kn},{key:"?",displayAs:"?",description:"Bring up this modal",action:du}],Tn={shortcutBeingPressed:null};I||(document.addEventListener("keydown",lu),document.addEventListener("keyup",uu));function lu(t){if(Tn.shortcutBeingPressed||t.target.matches("input, select, textarea"))return;let e=_n.find(n=>n.hasModifier?Ne()&&t.metaKey||t.ctrlKey?n.key===t.key:!1:t.ctrlKey||t.metaKey||t.altKey?!1:n.key===t.key);e&&(Tn.shortcutBeingPressed=e,t.preventDefault(),e.action(t))}function uu(t){Tn.shortcutBeingPressed=null}function Sn(t){ue(),mn()}function cu(){ue(),_r()?an():Or().then(an)}function du(){hu()?ue():Ln()}function hu(){return as()&&f(au)}var ms=Y(ae());var gs=ms.template({1:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return(s=o(n,"if").call(e??(t.nullContext||{}),e!=null?o(e,"description"):e,{name:"if",hash:{},fn:t.program(2,i,0),inverse:t.noop,data:i,loc:{start:{line:40,column:6},end:{line:53,column:13}}}))!=null?s:""},2:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return`
-
- `+t.escapeExpression(t.lambda(e!=null?o(e,"description"):e,e))+` -
-
-`+((s=o(n,"if").call(e??(t.nullContext||{}),e!=null?o(e,"displayAs"):e,{name:"if",hash:{},fn:t.program(3,i,0),inverse:t.program(5,i,0),data:i,loc:{start:{line:46,column:12},end:{line:50,column:19}}}))!=null?s:"")+`
-
-`},3:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return" "+((s=t.lambda(e!=null?o(e,"displayAs"):e,e))!=null?s:"")+` -`},5:function(t,e,n,r,i){var s=t.lookupProperty||function(o,a){if(Object.prototype.hasOwnProperty.call(o,a))return o[a]};return" "+t.escapeExpression(t.lambda(e!=null?s(e,"key"):e,e))+` -`},compiler:[8,">= 4.3.0"],main:function(t,e,n,r,i){var s,o=t.lookupProperty||function(a,l){if(Object.prototype.hasOwnProperty.call(a,l))return a[l]};return`
-
- - - - -
- -
-`},useData:!0});var fu=".display-settings",pu="#settings-modal-content",Pn="#modal-settings-tab",On="#modal-keyboard-shortcuts-tab",ys="#settings-content",ws="#keyboard-shortcuts-content",mu=[{title:"Settings",id:"modal-settings-tab"},{title:"Keyboard shortcuts",id:"modal-keyboard-shortcuts-tab"}];window.addEventListener("swup:page:view",bs);bs();function bs(){M(fu).forEach(t=>{t.addEventListener("click",Ln)})}function vs(){f(On).classList.remove("active"),f(Pn).classList.add("active"),f(ys).classList.remove("hidden"),f(ws).classList.add("hidden")}function gu(){f(On).classList.add("active"),f(Pn).classList.remove("active"),f(ws).classList.remove("hidden"),f(ys).classList.add("hidden")}function Ln(){wt({title:mu.map(({id:s,title:o})=>``).join(""),body:gs({shortcuts:_n})});let t=f(pu),e=t.querySelector('[name="theme"]'),n=t.querySelector('[name="tooltips"]'),r=t.querySelector('[name="direct_livebook_url"]'),i=t.querySelector('[name="livebook_url"]');H.getAndSubscribe(s=>{e.value=s.theme||"system",n.checked=s.tooltips,s.livebookUrl===null?(r.checked=!1,i.classList.add("hidden"),i.tabIndex=-1):(r.checked=!0,i.classList.remove("hidden"),i.tabIndex=0,i.value=s.livebookUrl)}),e.addEventListener("change",s=>{H.update({theme:s.target.value})}),n.addEventListener("change",s=>{H.update({tooltips:s.target.checked})}),r.addEventListener("change",s=>{let o=s.target.checked?i.value:null;H.update({livebookUrl:o})}),i.addEventListener("input",s=>{H.update({livebookUrl:s.target.value})}),f(Pn).addEventListener("click",s=>{vs()}),f(On).addEventListener("click",s=>{gu()}),vs()}var An=new WeakMap;function In(t,e,n,r){if(!t&&!An.has(e))return!1;let i=An.get(e)??new WeakMap;An.set(e,i);let s=i.get(n)??new Set;i.set(n,s);let o=s.has(r);return t?s.add(r):s.delete(r),o&&t}function vu(t,e){let n=t.target;if(n instanceof Text&&(n=n.parentElement),n instanceof Element&&t.currentTarget instanceof Element){let r=n.closest(e);if(r&&t.currentTarget.contains(r))return r}}function yu(t,e,n,r={}){let{signal:i,base:s=document}=r;if(i?.aborted)return;let{once:o,...a}=r,l=s instanceof Document?s.documentElement:s,u=Boolean(typeof r=="object"?r.capture:r),c=p=>{let m=vu(p,String(t));if(m){let g=Object.assign(p,{delegateTarget:m});n.call(l,g),o&&(l.removeEventListener(e,c,a),In(!1,l,n,d))}},d=JSON.stringify({selector:t,type:e,capture:u});In(!0,l,n,d)||l.addEventListener(e,c,a),i?.addEventListener("abort",()=>{In(!1,l,n,d)})}var bt=yu;function P(){return P=Object.assign?Object.assign.bind():function(t){for(var e=1;eString(t).toLowerCase().replace(/[\s/_.]+/g,"-").replace(/[^\w-]+/g,"").replace(/--+/g,"-").replace(/^-+|-+$/g,"")||e||"",_e=({hash:t}={})=>window.location.pathname+window.location.search+(t?window.location.hash:""),wu=(t,e={})=>{let n=P({url:t=t||_e({hash:!0}),random:Math.random(),source:"swup"},e);window.history.pushState(n,"",t)},Te=(t=null,e={})=>{t=t||_e({hash:!0});let n=P({},window.history.state||{},{url:t,random:Math.random(),source:"swup"},e);window.history.replaceState(n,"",t)},bu=(t,e,n,r)=>{let i=new AbortController;return r=P({},r,{signal:i.signal}),bt(t,e,n,r),{destroy:()=>i.abort()}},O=class extends URL{constructor(e,n=document.baseURI){super(e.toString(),n),Object.setPrototypeOf(this,O.prototype)}get url(){return this.pathname+this.search}static fromElement(e){let n=e.getAttribute("href")||e.getAttribute("xlink:href")||"";return new O(n)}static fromUrl(e){return new O(e)}};var me=class extends Error{constructor(e,n){super(e),this.url=void 0,this.status=void 0,this.aborted=void 0,this.timedOut=void 0,this.name="FetchError",this.url=n.url,this.status=n.status,this.aborted=n.aborted||!1,this.timedOut=n.timedOut||!1}};async function Eu(t,e={}){var n;t=O.fromUrl(t).url;let{visit:r=this.visit}=e,i=P({},this.options.requestHeaders,e.headers),s=(n=e.timeout)!=null?n:this.options.timeout,o=new AbortController,{signal:a}=o;e=P({},e,{headers:i,signal:a});let l,u=!1,c=null;s&&s>0&&(c=setTimeout(()=>{u=!0,o.abort("timeout")},s));try{l=await this.hooks.call("fetch:request",r,{url:t,options:e},(v,{url:w,options:x})=>fetch(w,x)),c&&clearTimeout(c)}catch(v){throw u?(this.hooks.call("fetch:timeout",r,{url:t}),new me(`Request timed out: ${t}`,{url:t,timedOut:u})):v?.name==="AbortError"||a.aborted?new me(`Request aborted: ${t}`,{url:t,aborted:!0}):v}let{status:d,url:h}=l,p=await l.text();if(d===500)throw this.hooks.call("fetch:error",r,{status:d,response:l,url:h}),new me(`Server error: ${h}`,{status:d,url:h});if(!p)throw new me(`Empty response: ${h}`,{status:d,url:h});let{url:m}=O.fromUrl(h),g={url:m,html:p};return!r.cache.write||e.method&&e.method!=="GET"||t!==m||this.cache.set(g.url,g),g}var Rn=class{constructor(e){this.swup=void 0,this.pages=new Map,this.swup=e}get size(){return this.pages.size}get all(){let e=new Map;return this.pages.forEach((n,r)=>{e.set(r,P({},n))}),e}has(e){return this.pages.has(this.resolve(e))}get(e){let n=this.pages.get(this.resolve(e));return n&&P({},n)}set(e,n){n=P({},n,{url:e=this.resolve(e)}),this.pages.set(e,n),this.swup.hooks.callSync("cache:set",void 0,{page:n})}update(e,n){e=this.resolve(e);let r=P({},this.get(e),n,{url:e});this.pages.set(e,r)}delete(e){this.pages.delete(this.resolve(e))}clear(){this.pages.clear(),this.swup.hooks.callSync("cache:clear",void 0,void 0)}prune(e){this.pages.forEach((n,r)=>{e(r,n)&&this.delete(r)})}resolve(e){let{url:n}=O.fromUrl(e);return this.swup.resolveUrl(n)}},Mn=(t,e=document)=>e.querySelector(t),Dn=(t,e=document)=>Array.from(e.querySelectorAll(t)),Ts=()=>new Promise(t=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{t()})})});function _s(t){return!!t&&(typeof t=="object"||typeof t=="function")&&typeof t.then=="function"}function xu(t,e=[]){return new Promise((n,r)=>{let i=t(...e);_s(i)?i.then(n,r):n(i)})}function Es(t,e){let n=t?.closest(`[${e}]`);return n!=null&&n.hasAttribute(e)?n?.getAttribute(e)||!0:void 0}var Hn=class{constructor(e){this.swup=void 0,this.swupClasses=["to-","is-changing","is-rendering","is-popstate","is-animating","is-leaving"],this.swup=e}get selectors(){let{scope:e}=this.swup.visit.animation;return e==="containers"?this.swup.visit.containers:e==="html"?["html"]:Array.isArray(e)?e:[]}get selector(){return this.selectors.join(",")}get targets(){return this.selector.trim()?Dn(this.selector):[]}add(...e){this.targets.forEach(n=>n.classList.add(...e))}remove(...e){this.targets.forEach(n=>n.classList.remove(...e))}clear(){this.targets.forEach(e=>{let n=e.className.split(" ").filter(r=>this.isSwupClass(r));e.classList.remove(...n)})}isSwupClass(e){return this.swupClasses.some(n=>e.startsWith(n))}},kt=class{constructor(e,n){this.id=void 0,this.state=void 0,this.from=void 0,this.to=void 0,this.containers=void 0,this.animation=void 0,this.trigger=void 0,this.cache=void 0,this.history=void 0,this.scroll=void 0,this.meta=void 0;let{to:r,from:i,hash:s,el:o,event:a}=n;this.id=Math.random(),this.state=1,this.from={url:i??e.location.url,hash:e.location.hash},this.to={url:r,hash:s},this.containers=e.options.containers,this.animation={animate:!0,wait:!1,name:void 0,native:e.options.native,scope:e.options.animationScope,selector:e.options.animationSelector},this.trigger={el:o,event:a},this.cache={read:e.options.cache,write:e.options.cache},this.history={action:"push",popstate:!1,direction:void 0},this.scroll={reset:!0,target:void 0},this.meta={}}advance(e){this.state=7}};function ku(t){return new kt(this,t)}var Nn=class{constructor(e){this.swup=void 0,this.registry=new Map,this.hooks=["animation:out:start","animation:out:await","animation:out:end","animation:in:start","animation:in:await","animation:in:end","animation:skip","cache:clear","cache:set","content:replace","content:scroll","enable","disable","fetch:request","fetch:error","fetch:timeout","history:popstate","link:click","link:self","link:anchor","link:newtab","page:load","page:view","scroll:top","scroll:anchor","visit:start","visit:transition","visit:abort","visit:end"],this.swup=e,this.init()}init(){this.hooks.forEach(e=>this.create(e))}create(e){this.registry.has(e)||this.registry.set(e,new Map)}exists(e){return this.registry.has(e)}get(e){let n=this.registry.get(e);if(n)return n;console.error(`Unknown hook '${e}'`)}clear(){this.registry.forEach(e=>e.clear())}on(e,n,r={}){let i=this.get(e);if(!i)return console.warn(`Hook '${e}' not found.`),()=>{};let s=P({},r,{id:i.size+1,hook:e,handler:n});return i.set(n,s),()=>this.off(e,n)}before(e,n,r={}){return this.on(e,n,P({},r,{before:!0}))}replace(e,n,r={}){return this.on(e,n,P({},r,{replace:!0}))}once(e,n,r={}){return this.on(e,n,P({},r,{once:!0}))}off(e,n){let r=this.get(e);r&&n?r.delete(n)||console.warn(`Handler for hook '${e}' not found.`):r&&r.clear()}async call(e,n,r,i){let[s,o,a]=this.parseCallArgs(e,n,r,i),{before:l,handler:u,after:c}=this.getHandlers(e,a);await this.run(l,s,o);let[d]=await this.run(u,s,o,!0);return await this.run(c,s,o),this.dispatchDomEvent(e,s,o),d}callSync(e,n,r,i){let[s,o,a]=this.parseCallArgs(e,n,r,i),{before:l,handler:u,after:c}=this.getHandlers(e,a);this.runSync(l,s,o);let[d]=this.runSync(u,s,o,!0);return this.runSync(c,s,o),this.dispatchDomEvent(e,s,o),d}parseCallArgs(e,n,r,i){return n instanceof kt||typeof n!="object"&&typeof r!="function"?[n,r,i]:[void 0,n,r]}async run(e,n=this.swup.visit,r,i=!1){let s=[];for(let{hook:o,handler:a,defaultHandler:l,once:u}of e)if(n==null||!n.done){u&&this.off(o,a);try{let c=await xu(a,[n,r,l]);s.push(c)}catch(c){if(i)throw c;console.error(`Error in hook '${o}':`,c)}}return s}runSync(e,n=this.swup.visit,r,i=!1){let s=[];for(let{hook:o,handler:a,defaultHandler:l,once:u}of e)if(n==null||!n.done){u&&this.off(o,a);try{let c=a(n,r,l);s.push(c),_s(c)&&console.warn(`Swup will not await Promises in handler for synchronous hook '${o}'.`)}catch(c){if(i)throw c;console.error(`Error in hook '${o}':`,c)}}return s}getHandlers(e,n){let r=this.get(e);if(!r)return{found:!1,before:[],handler:[],after:[],replaced:!1};let i=Array.from(r.values()),s=this.sortRegistrations,o=i.filter(({before:d,replace:h})=>d&&!h).sort(s),a=i.filter(({replace:d})=>d).filter(d=>!0).sort(s),l=i.filter(({before:d,replace:h})=>!d&&!h).sort(s),u=a.length>0,c=[];if(n&&(c=[{id:0,hook:e,handler:n}],u)){let d=a.length-1,{handler:h,once:p}=a[d],m=g=>{let v=a[g-1];return v?(w,x)=>v.handler(w,x,m(g-1)):n};c=[{id:0,hook:e,once:p,handler:h,defaultHandler:m(d)}]}return{found:!0,before:o,handler:c,after:l,replaced:u}}sortRegistrations(e,n){var r,i;return((r=e.priority)!=null?r:0)-((i=n.priority)!=null?i:0)||e.id-n.id||0}dispatchDomEvent(e,n,r){if(n!=null&&n.done)return;let i={hook:e,args:r,visit:n||this.swup.visit};document.dispatchEvent(new CustomEvent("swup:any",{detail:i,bubbles:!0})),document.dispatchEvent(new CustomEvent(`swup:${e}`,{detail:i,bubbles:!0}))}parseName(e){let[n,...r]=e.split(".");return[n,r.reduce((i,s)=>P({},i,{[s]:!0}),{})]}},Su=t=>{if(t&&t.charAt(0)==="#"&&(t=t.substring(1)),!t)return null;let e=decodeURIComponent(t),n=document.getElementById(t)||document.getElementById(e)||Mn(`a[name='${CSS.escape(t)}']`)||Mn(`a[name='${CSS.escape(e)}']`);return n||t!=="top"||(n=document.body),n},Et="transition",Cn="animation";async function Tu({selector:t,elements:e}){if(t===!1&&!e)return;let n=[];if(e)n=Array.from(e);else if(t&&(n=Dn(t,document.body),!n.length))return void console.warn(`[swup] No elements found matching animationSelector \`${t}\``);let r=n.map(i=>function(s){let{type:o,timeout:a,propCount:l}=function(u){let c=window.getComputedStyle(u),d=xt(c,`${Et}Delay`),h=xt(c,`${Et}Duration`),p=xs(d,h),m=xt(c,`${Cn}Delay`),g=xt(c,`${Cn}Duration`),v=xs(m,g),w=Math.max(p,v),x=w>0?p>v?Et:Cn:null;return{type:x,timeout:w,propCount:x?x===Et?h.length:g.length:0}}(s);return!(!o||!a)&&new Promise(u=>{let c=`${o}end`,d=performance.now(),h=0,p=()=>{s.removeEventListener(c,m),u()},m=g=>{g.target===s&&((performance.now()-d)/1e3=l&&p())};setTimeout(()=>{h0?await Promise.all(r):t&&console.warn(`[swup] No CSS animation duration defined on elements matching \`${t}\``)}function xt(t,e){return(t[e]||"").split(", ")}function xs(t,e){for(;t.lengthks(n)+ks(t[r])))}function ks(t){return 1e3*parseFloat(t)}function _u(t,e={},n={}){if(typeof t!="string")throw new Error("swup.navigate() requires a URL parameter");if(this.shouldIgnoreVisit(t,{el:n.el,event:n.event}))return void window.location.assign(t);let{url:r,hash:i}=O.fromUrl(t),s=this.createVisit(P({},n,{to:r,hash:i}));this.performNavigation(s,e)}async function Lu(t,e={}){if(this.navigating){if(this.visit.state>=6)return t.state=2,void(this.onVisitEnd=()=>this.performNavigation(t,e));await this.hooks.call("visit:abort",this.visit,void 0),delete this.visit.to.document,this.visit.state=8}this.navigating=!0,this.visit=t;let{el:n}=t.trigger;e.referrer=e.referrer||this.location.url,e.animate===!1&&(t.animation.animate=!1),t.animation.animate||this.classes.clear();let r=e.history||Es(n,"data-swup-history");typeof r=="string"&&["push","replace"].includes(r)&&(t.history.action=r);let i=e.animation||Es(n,"data-swup-animation");var s,o;typeof i=="string"&&(t.animation.name=i),t.meta=e.meta||{},typeof e.cache=="object"?(t.cache.read=(s=e.cache.read)!=null?s:t.cache.read,t.cache.write=(o=e.cache.write)!=null?o:t.cache.write):e.cache!==void 0&&(t.cache={read:!!e.cache,write:!!e.cache}),delete e.cache;try{await this.hooks.call("visit:start",t,void 0),t.state=3;let a=this.hooks.call("page:load",t,{options:e},async(u,c)=>{let d;return u.cache.read&&(d=this.cache.get(u.to.url)),c.page=d||await this.fetchPage(u.to.url,c.options),c.cache=!!d,c.page});a.then(({html:u})=>{t.advance(5),t.to.html=u,t.to.document=new DOMParser().parseFromString(u,"text/html")});let l=t.to.url+t.to.hash;if(t.history.popstate||(t.history.action==="replace"||t.to.url===this.location.url?Te(l):(this.currentHistoryIndex++,wu(l,{index:this.currentHistoryIndex}))),this.location=O.fromUrl(l),t.history.popstate&&this.classes.add("is-popstate"),t.animation.name&&this.classes.add(`to-${Ss(t.animation.name)}`),t.animation.wait&&await a,t.done||(await this.hooks.call("visit:transition",t,void 0,async()=>{if(!t.animation.animate)return await this.hooks.call("animation:skip",void 0),void await this.renderPage(t,await a);t.advance(4),await this.animatePageOut(t),t.animation.native&&document.startViewTransition?await document.startViewTransition(async()=>await this.renderPage(t,await a)).finished:await this.renderPage(t,await a),await this.animatePageIn(t)}),t.done))return;await this.hooks.call("visit:end",t,void 0,()=>this.classes.clear()),t.state=7,this.navigating=!1,this.onVisitEnd&&(this.onVisitEnd(),this.onVisitEnd=void 0)}catch(a){if(!a||a!=null&&a.aborted)return void(t.state=8);t.state=9,console.error(a),this.options.skipPopStateHandling=()=>(window.location.assign(t.to.url+t.to.hash),!0),window.history.back()}finally{delete t.to.document}}var Pu=async function(t){await this.hooks.call("animation:out:start",t,void 0,()=>{this.classes.add("is-changing","is-animating","is-leaving")}),await this.hooks.call("animation:out:await",t,{skip:!1},(e,{skip:n})=>{if(!n)return this.awaitAnimations({selector:e.animation.selector})}),await this.hooks.call("animation:out:end",t,void 0)},Ou=function(t){var e;let n=t.to.document;if(!n)return!1;let r=((e=n.querySelector("title"))==null?void 0:e.innerText)||"";document.title=r;let i=Dn('[data-swup-persist]:not([data-swup-persist=""])'),s=t.containers.map(o=>{let a=document.querySelector(o),l=n.querySelector(o);return a&&l?(a.replaceWith(l.cloneNode(!0)),!0):(a||console.warn(`[swup] Container missing in current document: ${o}`),l||console.warn(`[swup] Container missing in incoming document: ${o}`),!1)}).filter(Boolean);return i.forEach(o=>{let a=o.getAttribute("data-swup-persist"),l=Mn(`[data-swup-persist="${a}"]`);l&&l!==o&&l.replaceWith(o)}),s.length===t.containers.length},Au=function(t){let e={behavior:"auto"},{target:n,reset:r}=t.scroll,i=n??t.to.hash,s=!1;return i&&(s=this.hooks.callSync("scroll:anchor",t,{hash:i,options:e},(o,{hash:a,options:l})=>{let u=this.getAnchorElement(a);return u&&u.scrollIntoView(l),!!u})),r&&!s&&(s=this.hooks.callSync("scroll:top",t,{options:e},(o,{options:a})=>(window.scrollTo(P({top:0,left:0},a)),!0))),s},Iu=async function(t){if(t.done)return;let e=this.hooks.call("animation:in:await",t,{skip:!1},(n,{skip:r})=>{if(!r)return this.awaitAnimations({selector:n.animation.selector})});await Ts(),await this.hooks.call("animation:in:start",t,void 0,()=>{this.classes.remove("is-animating")}),await e,await this.hooks.call("animation:in:end",t,void 0)},Cu=async function(t,e){if(t.done)return;t.advance(6);let{url:n}=e;this.isSameResolvedUrl(_e(),n)||(Te(n),this.location=O.fromUrl(n),t.to.url=this.location.url,t.to.hash=this.location.hash),await this.hooks.call("content:replace",t,{page:e},(r,{})=>{if(this.classes.remove("is-leaving"),r.animation.animate&&this.classes.add("is-rendering"),!this.replaceContent(r))throw new Error("[swup] Container mismatch, aborting");r.animation.animate&&(this.classes.add("is-changing","is-animating","is-rendering"),r.animation.name&&this.classes.add(`to-${Ss(r.animation.name)}`))}),await this.hooks.call("content:scroll",t,void 0,()=>this.scrollToContent(t)),await this.hooks.call("page:view",t,{url:this.location.url,title:document.title})},Ru=function(t){var e;if(e=t,Boolean(e?.isSwupPlugin)){if(t.swup=this,!t._checkRequirements||t._checkRequirements())return t._beforeMount&&t._beforeMount(),t.mount(),this.plugins.push(t),this.plugins}else console.error("Not a swup plugin instance",t)};function Mu(t){let e=this.findPlugin(t);if(e)return e.unmount(),e._afterUnmount&&e._afterUnmount(),this.plugins=this.plugins.filter(n=>n!==e),this.plugins;console.error("No such plugin",e)}function Hu(t){return this.plugins.find(e=>e===t||e.name===t||e.name===`Swup${String(t)}`)}function Nu(t){if(typeof this.options.resolveUrl!="function")return console.warn("[swup] options.resolveUrl expects a callback function."),t;let e=this.options.resolveUrl(t);return e&&typeof e=="string"?e.startsWith("//")||e.startsWith("http")?(console.warn("[swup] options.resolveUrl needs to return a relative url"),t):e:(console.warn("[swup] options.resolveUrl needs to return a url"),t)}function Du(t,e){return this.resolveUrl(t)===this.resolveUrl(e)}var Bu={animateHistoryBrowsing:!1,animationSelector:'[class*="transition-"]',animationScope:"html",cache:!0,containers:["#swup"],hooks:{},ignoreVisit:(t,{el:e}={})=>!(e==null||!e.closest("[data-no-swup]")),linkSelector:"a[href]",linkToSelf:"scroll",native:!1,plugins:[],resolveUrl:t=>t,requestHeaders:{"X-Requested-With":"swup",Accept:"text/html, application/xhtml+xml"},skipPopStateHandling:t=>{var e;return((e=t.state)==null?void 0:e.source)!=="swup"},timeout:0},St=class{get currentPageUrl(){return this.location.url}constructor(e={}){var n,r;this.version="4.8.1",this.options=void 0,this.defaults=Bu,this.plugins=[],this.visit=void 0,this.cache=void 0,this.hooks=void 0,this.classes=void 0,this.location=O.fromUrl(window.location.href),this.currentHistoryIndex=void 0,this.clickDelegate=void 0,this.navigating=!1,this.onVisitEnd=void 0,this.use=Ru,this.unuse=Mu,this.findPlugin=Hu,this.log=()=>{},this.navigate=_u,this.performNavigation=Lu,this.createVisit=ku,this.delegateEvent=bu,this.fetchPage=Eu,this.awaitAnimations=Tu,this.renderPage=Cu,this.replaceContent=Ou,this.animatePageIn=Iu,this.animatePageOut=Pu,this.scrollToContent=Au,this.getAnchorElement=Su,this.getCurrentUrl=_e,this.resolveUrl=Nu,this.isSameResolvedUrl=Du,this.options=P({},this.defaults,e),this.handleLinkClick=this.handleLinkClick.bind(this),this.handlePopState=this.handlePopState.bind(this),this.cache=new Rn(this),this.classes=new Hn(this),this.hooks=new Nn(this),this.visit=this.createVisit({to:""}),this.currentHistoryIndex=(n=(r=window.history.state)==null?void 0:r.index)!=null?n:1,this.enable()}async enable(){var e;let{linkSelector:n}=this.options;this.clickDelegate=this.delegateEvent(n,"click",this.handleLinkClick),window.addEventListener("popstate",this.handlePopState),this.options.animateHistoryBrowsing&&(window.history.scrollRestoration="manual"),this.options.native=this.options.native&&!!document.startViewTransition,this.options.plugins.forEach(r=>this.use(r));for(let[r,i]of Object.entries(this.options.hooks)){let[s,o]=this.hooks.parseName(r);this.hooks.on(s,i,o)}((e=window.history.state)==null?void 0:e.source)!=="swup"&&Te(null,{index:this.currentHistoryIndex}),await Ts(),await this.hooks.call("enable",void 0,void 0,()=>{let r=document.documentElement;r.classList.add("swup-enabled"),r.classList.toggle("swup-native",this.options.native)})}async destroy(){this.clickDelegate.destroy(),window.removeEventListener("popstate",this.handlePopState),this.cache.clear(),this.options.plugins.forEach(e=>this.unuse(e)),await this.hooks.call("disable",void 0,void 0,()=>{let e=document.documentElement;e.classList.remove("swup-enabled"),e.classList.remove("swup-native")}),this.hooks.clear()}shouldIgnoreVisit(e,{el:n,event:r}={}){let{origin:i,url:s,hash:o}=O.fromUrl(e);return i!==window.location.origin||!(!n||!this.triggerWillOpenNewWindow(n))||!!this.options.ignoreVisit(s+o,{el:n,event:r})}handleLinkClick(e){let n=e.delegateTarget,{href:r,url:i,hash:s}=O.fromElement(n);if(this.shouldIgnoreVisit(r,{el:n,event:e}))return;if(this.navigating&&i===this.visit.to.url)return void e.preventDefault();let o=this.createVisit({to:i,hash:s,el:n,event:e});e.metaKey||e.ctrlKey||e.shiftKey||e.altKey?this.hooks.callSync("link:newtab",o,{href:r}):e.button===0&&this.hooks.callSync("link:click",o,{el:n,event:e},()=>{var a;let l=(a=o.from.url)!=null?a:"";e.preventDefault(),i&&i!==l?this.isSameResolvedUrl(i,l)||this.performNavigation(o):s?this.hooks.callSync("link:anchor",o,{hash:s},()=>{Te(i+s),this.scrollToContent(o)}):this.hooks.callSync("link:self",o,void 0,()=>{this.options.linkToSelf==="navigate"?this.performNavigation(o):(Te(i),this.scrollToContent(o))})})}handlePopState(e){var n,r,i,s;let o=(n=(r=e.state)==null?void 0:r.url)!=null?n:window.location.href;if(this.options.skipPopStateHandling(e)||this.isSameResolvedUrl(_e(),this.location.url))return;let{url:a,hash:l}=O.fromUrl(o),u=this.createVisit({to:a,hash:l,event:e});u.history.popstate=!0;let c=(i=(s=e.state)==null?void 0:s.index)!=null?i:0;c&&c!==this.currentHistoryIndex&&(u.history.direction=c-this.currentHistoryIndex>0?"forwards":"backwards",this.currentHistoryIndex=c),u.animation.animate=!1,u.scroll.reset=!1,u.scroll.target=!1,this.options.animateHistoryBrowsing&&(u.animation.animate=!0,u.scroll.reset=!0),this.hooks.callSync("history:popstate",u,{event:e},()=>{this.performNavigation(u)})}triggerWillOpenNewWindow(e){return!!e.matches('[download], [target="_blank"]')}};function Le(){return Le=Object.assign?Object.assign.bind():function(t){for(var e=1;eString(t).split(".").map(e=>String(parseInt(e||"0",10))).concat(["0","0"]).slice(0,3).join("."),ge=class{constructor(){this.isSwupPlugin=!0,this.swup=void 0,this.version=void 0,this.requires={},this.handlersToUnregister=[]}mount(){}unmount(){this.handlersToUnregister.forEach(e=>e()),this.handlersToUnregister=[]}_beforeMount(){if(!this.name)throw new Error("You must define a name of plugin when creating a class.")}_afterUnmount(){}_checkRequirements(){return typeof this.requires!="object"||Object.entries(this.requires).forEach(([e,n])=>{if(!function(r,i,s){let o=function(a,l){var u;if(a==="swup")return(u=l.version)!=null?u:"";{var c;let d=l.findPlugin(a);return(c=d?.version)!=null?c:""}}(r,s);return!!o&&((a,l)=>l.every(u=>{let[,c,d]=u.match(/^([\D]+)?(.*)$/)||[];var h,p;return((m,g)=>{let v={"":w=>w===0,">":w=>w>0,">=":w=>w>=0,"<":w=>w<0,"<=":w=>w<=0};return(v[g]||v[""])(m)})((p=d,h=Ls(h=a),p=Ls(p),h.localeCompare(p,void 0,{numeric:!0})),c||">=")}))(o,i)}(e,n=Array.isArray(n)?n:[n],this.swup)){let r=`${e} ${n.join(", ")}`;throw new Error(`Plugin version mismatch: ${this.name} requires ${r}`)}}),!0}on(e,n,r={}){var i;n=!(i=n).name.startsWith("bound ")||i.hasOwnProperty("prototype")?n.bind(this):n;let s=this.swup.hooks.on(e,n,r);return this.handlersToUnregister.push(s),s}once(e,n,r={}){return this.on(e,n,Le({},r,{once:!0}))}before(e,n,r={}){return this.on(e,n,Le({},r,{before:!0}))}replace(e,n,r={}){return this.on(e,n,Le({},r,{replace:!0}))}off(e,n){return this.swup.hooks.off(e,n)}};(function(){if(!(typeof window>"u"||typeof document>"u"||typeof HTMLElement>"u")){var t=!1;try{var e=document.createElement("div");e.addEventListener("focus",function(s){s.preventDefault(),s.stopPropagation()},!0),e.focus(Object.defineProperty({},"preventScroll",{get:function(){if(navigator&&typeof navigator.userAgent<"u"&&navigator.userAgent&&navigator.userAgent.match(/Edge\/1[7-8]/))return t=!1;t=!0}}))}catch{}if(HTMLElement.prototype.nativeFocus===void 0&&!t){HTMLElement.prototype.nativeFocus=HTMLElement.prototype.focus;var n=function(s){for(var o=s.parentNode,a=[],l=document.scrollingElement||document.documentElement;o&&o!==l;)(o.offsetHeightn.replace(`{${r}}`,e[r]||""),t||"")}var Qn=class{constructor(){var e;this.id="swup-announcer",this.style="position:absolute;top:0;left:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;word-wrap:normal;width:1px;height:1px;",this.region=void 0,this.region=(e=this.getRegion())!=null?e:this.createRegion()}getRegion(){return document.getElementById(this.id)}createRegion(){let e=function(n){let r=document.createElement("template");return r.innerHTML=n,r.content.children[0]}(`

`);return document.body.appendChild(e),e}announce(e,n=0){return new Promise(r=>{setTimeout(()=>{this.region.textContent===e&&(e=`${e}.`),this.region.textContent="",this.region.textContent=e,r()},n)})}};function Os(t){let e;if(e=typeof t=="string"?document.querySelector(t):t,!(e instanceof HTMLElement))return;let n=e.getAttribute("tabindex");e.setAttribute("tabindex","-1"),e.focus({preventScroll:!0}),n!==null&&e.setAttribute("tabindex",n)}var Tt=class extends ge{constructor(e={}){super(),this.name="SwupA11yPlugin",this.requires={swup:">=4"},this.defaults={headingSelector:"h1",respectReducedMotion:!0,autofocus:!1,announcements:{visit:"Navigated to: {title}",url:"New page at {url}"}},this.options=void 0,this.announcer=void 0,this.announcementDelay=100,this.rootSelector="body",this.handleAnchorScroll=(n,{hash:r})=>{let i=this.swup.getAnchorElement(r);i instanceof HTMLElement&&Os(i)},this.options=Bn({},this.defaults,e),this.announcer=new Qn}mount(){this.swup.hooks.create("content:announce"),this.swup.hooks.create("content:focus"),this.before("visit:start",this.prepareVisit),this.on("visit:start",this.markAsBusy),this.on("visit:end",this.unmarkAsBusy),this.on("visit:end",this.focusContent),this.on("visit:end",this.announceContent),this.on("scroll:anchor",this.handleAnchorScroll),this.before("visit:start",this.disableAnimations),this.before("link:self",this.disableAnimations),this.before("link:anchor",this.disableAnimations),this.swup.announce=this.announce.bind(this)}unmount(){this.swup.announce=void 0}async announce(e){await this.announcer.announce(e)}markAsBusy(){document.documentElement.setAttribute("aria-busy","true")}unmarkAsBusy(){document.documentElement.removeAttribute("aria-busy")}prepareVisit(e){e.a11y={announce:void 0,focus:this.rootSelector}}announceContent(e){this.swup.hooks.callSync("content:announce",e,void 0,n=>{n.a11y.announce===void 0&&(n.a11y.announce=this.getPageAnnouncement()),n.a11y.announce&&this.announcer.announce(n.a11y.announce,this.announcementDelay)})}focusContent(e){this.swup.hooks.callSync("content:focus",e,void 0,n=>{n.a11y.focus&&(this.options.autofocus&&function(){let r=function(){let i=document.querySelector("body [autofocus]");if(i&&!i.closest('[inert], [aria-disabled], [aria-hidden="true"]'))return i}();return!!r&&(r!==document.activeElement&&r.focus(),!0)}()===!0||Os(n.a11y.focus))})}getPageAnnouncement(){let{headingSelector:e,announcements:n}=this.options;return function({headingSelector:r="h1",announcements:i={}}){var s,o;let a=document.documentElement.lang||"*",{href:l,url:u,pathname:c}=O.fromUrl(window.location.href),d=(s=(o=i[a])!=null?o:i["*"])!=null?s:i;if(typeof d!="object")return;let h=document.querySelector(r);h||console.warn(`SwupA11yPlugin: No main heading (${r}) found on new page`);let p=h?.getAttribute("aria-label")||h?.textContent||document.title||Ps(d.url,{href:l,url:u,path:c});return Ps(d.visit,{title:p,href:l,url:u,path:c})}({headingSelector:e,announcements:n})}disableAnimations(e){this.options.respectReducedMotion&&window.matchMedia("(prefers-reduced-motion: reduce)").matches&&(e.animation.animate=!1,e.scroll.animate=!1)}};function qn(){return qn=Object.assign?Object.assign.bind():function(t){for(var e=1;e{let a=Math.random()*this.trickleValue;this.setValue(this.value+a)},e!==void 0&&(this.className=String(e)),n!==void 0&&(this.styleAttr=String(n)),r!==void 0&&(this.animationDuration=Number(r)),i!==void 0&&(this.minValue=Number(i)),s!==void 0&&(this.initialValue=Number(s)),o!==void 0&&(this.trickleValue=Number(o)),this.styleElement=this.createStyleElement(),this.progressElement=this.createProgressElement()}get defaultStyles(){return` - .${this.className} { - position: fixed; - display: block; - top: 0; - left: 0; - width: 100%; - height: 3px; - background-color: black; - z-index: 9999; - transition: - transform ${this.animationDuration}ms ease-out, - opacity ${this.animationDuration/2}ms ${this.animationDuration/2}ms ease-in; - transform: translate3d(0, 0, 0) scaleX(var(--progress, 0)); - transform-origin: 0; - } - `}show(){this.visible||(this.visible=!0,this.installStyleElement(),this.installProgressElement(),this.startTrickling())}hide(){this.visible&&!this.hiding&&(this.hiding=!0,this.fadeProgressElement(()=>{this.uninstallProgressElement(),this.stopTrickling(),this.visible=!1,this.hiding=!1}))}setValue(e){this.value=Math.min(1,Math.max(this.minValue,e)),this.refresh()}installStyleElement(){document.head.prepend(this.styleElement)}installProgressElement(){this.progressElement.style.setProperty("--progress",String(0)),this.progressElement.style.opacity="1",document.body.prepend(this.progressElement),this.progressElement.scrollTop=0,this.setValue(Math.random()*this.initialValue)}fadeProgressElement(e){this.progressElement.style.opacity="0",setTimeout(e,1.5*this.animationDuration)}uninstallProgressElement(){this.progressElement.remove()}startTrickling(){this.trickleInterval||(this.trickleInterval=window.setInterval(this.trickle,this.animationDuration))}stopTrickling(){window.clearInterval(this.trickleInterval),delete this.trickleInterval}refresh(){requestAnimationFrame(()=>{this.progressElement.style.setProperty("--progress",String(this.value))})}createStyleElement(){let e=document.createElement("style");return this.styleAttr.split(" ").forEach(n=>e.setAttribute(n,"")),e.textContent=this.defaultStyles,e}createProgressElement(){let e=document.createElement("div");return e.className=this.className,e.setAttribute("aria-hidden","true"),e}},_t=class extends ge{constructor(e={}){super(),this.name="SwupProgressPlugin",this.defaults={className:"swup-progress-bar",delay:300,transition:300,minValue:.1,initialValue:.25,finishAnimation:!0},this.options=void 0,this.progressBar=void 0,this.showProgressBarTimeout=void 0,this.hideProgressBarTimeout=void 0,this.options=qn({},this.defaults,e);let{className:n,minValue:r,initialValue:i,transition:s}=this.options;this.progressBar=new Fn({className:n,minValue:r,initialValue:i,animationDuration:s})}mount(){this.on("visit:start",this.startShowingProgress),this.on("page:view",this.stopShowingProgress)}startShowingProgress(){this.progressBar.setValue(0),this.showProgressBarAfterDelay()}stopShowingProgress(){this.progressBar.setValue(1),this.options.finishAnimation?this.finishAnimationAndHideProgressBar():this.hideProgressBar()}showProgressBar(){this.cancelHideProgressBarTimeout(),this.progressBar.show()}showProgressBarAfterDelay(){this.cancelShowProgressBarTimeout(),this.cancelHideProgressBarTimeout(),this.showProgressBarTimeout=window.setTimeout(this.showProgressBar.bind(this),this.options.delay)}hideProgressBar(){this.cancelShowProgressBarTimeout(),this.progressBar.hide()}finishAnimationAndHideProgressBar(){this.cancelShowProgressBarTimeout(),this.hideProgressBarTimeout=window.setTimeout(this.hideProgressBar.bind(this),this.options.transition)}cancelShowProgressBarTimeout(){window.clearTimeout(this.showProgressBarTimeout),delete this.showProgressBarTimeout}cancelHideProgressBarTimeout(){window.clearTimeout(this.hideProgressBarTimeout),delete this.hideProgressBarTimeout}};!I&&window.location.protocol!=="file:"&&new St({animationSelector:!1,containers:["#main"],ignoreVisit:t=>{let e=t.split("#")[0];return e===window.location.pathname||e===window.location.pathname+".html"},linkSelector:'a[href]:not([href^="/"]):not([href^="http"])',plugins:[new Tt,new _t({delay:500})]});})(); -/*! Bundled license information: - -lunr/lunr.js: - (** - * lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 2.3.9 - * Copyright (C) 2020 Oliver Nightingale - * @license MIT - *) - (*! - * lunr.utils - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.Set - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.tokenizer - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.Pipeline - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.Vector - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.stemmer - * Copyright (C) 2020 Oliver Nightingale - * Includes code from - http://tartarus.org/~martin/PorterStemmer/js.txt - *) - (*! - * lunr.stopWordFilter - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.trimmer - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.TokenSet - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.Index - * Copyright (C) 2020 Oliver Nightingale - *) - (*! - * lunr.Builder - * Copyright (C) 2020 Oliver Nightingale - *) -*/