diff --git a/CHANGELIST.md b/CHANGELIST.md index f8dcfb7..92fcdba 100644 --- a/CHANGELIST.md +++ b/CHANGELIST.md @@ -1,3 +1,13 @@ +# v0.2.3 Apr 24th, 2023 + +## Changelog + +- #47 Add alias for Promise to avoid matching "new Promise" +- #46 Bump typedoc to ^0.24.4 +- #45 Update release packaging and publishing steps +- #44 Bump @microsoft/rush from 5.97.0 to 5.97.1 +- #39 Bump @microsoft/rush from 5.95.0 to 5.97.0 + # v0.2.2 Mar 25th, 2023 ## Changelog diff --git a/docs/typedoc/assets/highlight.css b/docs/typedoc/assets/highlight.css index 3c8f5f4..10940c5 100644 --- a/docs/typedoc/assets/highlight.css +++ b/docs/typedoc/assets/highlight.css @@ -3,22 +3,22 @@ --dark-hl-0: #569CD6; --light-hl-1: #000000; --dark-hl-1: #D4D4D4; - --light-hl-2: #0070C1; - --dark-hl-2: #4FC1FF; - --light-hl-3: #795E26; - --dark-hl-3: #DCDCAA; - --light-hl-4: #001080; - --dark-hl-4: #9CDCFE; - --light-hl-5: #AF00DB; - --dark-hl-5: #C586C0; - --light-hl-6: #A31515; - --dark-hl-6: #CE9178; - --light-hl-7: #008000; - --dark-hl-7: #6A9955; - --light-hl-8: #098658; - --dark-hl-8: #B5CEA8; - --light-hl-9: #267F99; - --dark-hl-9: #4EC9B0; + --light-hl-2: #001080; + --dark-hl-2: #9CDCFE; + --light-hl-3: #267F99; + --dark-hl-3: #4EC9B0; + --light-hl-4: #795E26; + --dark-hl-4: #DCDCAA; + --light-hl-5: #A31515; + --dark-hl-5: #CE9178; + --light-hl-6: #008000; + --dark-hl-6: #6A9955; + --light-hl-7: #0070C1; + --dark-hl-7: #4FC1FF; + --light-hl-8: #AF00DB; + --dark-hl-8: #C586C0; + --light-hl-9: #098658; + --dark-hl-9: #B5CEA8; --light-code-background: #FFFFFF; --dark-code-background: #1E1E1E; } diff --git a/docs/typedoc/assets/main.js b/docs/typedoc/assets/main.js index 932e185..4bd47a2 100644 --- a/docs/typedoc/assets/main.js +++ b/docs/typedoc/assets/main.js @@ -1,7 +1,7 @@ "use strict"; -"use strict";(()=>{var be=Object.create;var re=Object.defineProperty;var Se=Object.getOwnPropertyDescriptor;var we=Object.getOwnPropertyNames;var Te=Object.getPrototypeOf,ke=Object.prototype.hasOwnProperty;var Qe=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Pe=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of we(e))!ke.call(t,i)&&i!==r&&re(t,i,{get:()=>e[i],enumerable:!(n=Se(e,i))||n.enumerable});return t};var Ie=(t,e,r)=>(r=t!=null?be(Te(t)):{},Pe(e||!t||!t.__esModule?re(r,"default",{value:t,enumerable:!0}):r,t));var ae=Qe((se,oe)=>{(function(){var t=function(e){var r=new t.Builder;return r.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),r.searchPipeline.add(t.stemmer),e.call(r,r),r.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(r){e.console&&console.warn&&console.warn(r)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var r=Object.create(null),n=Object.keys(e),i=0;i0){var d=t.utils.clone(r)||{};d.position=[a,u],d.index=s.length,s.push(new t.Token(n.slice(a,o),d))}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,r){r in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+r),e.label=r,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var r=e.label&&e.label in this.registeredFunctions;r||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. -`,e)},t.Pipeline.load=function(e){var r=new t.Pipeline;return e.forEach(function(n){var i=t.Pipeline.registeredFunctions[n];if(i)r.add(i);else throw new Error("Cannot load unregistered function: "+n)}),r},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(r){t.Pipeline.warnIfFunctionNotRegistered(r),this._stack.push(r)},this)},t.Pipeline.prototype.after=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");n=n+1,this._stack.splice(n,0,r)},t.Pipeline.prototype.before=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");this._stack.splice(n,0,r)},t.Pipeline.prototype.remove=function(e){var r=this._stack.indexOf(e);r!=-1&&this._stack.splice(r,1)},t.Pipeline.prototype.run=function(e){for(var r=this._stack.length,n=0;n1&&(oe&&(n=s),o!=e);)i=n-r,s=r+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(ol?d+=2:a==l&&(r+=n[u+1]*i[d+1],u+=2,d+=2);return r},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),r=1,n=0;r0){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 d=s.str.charAt(0),m=s.str.charAt(1),y;m in s.node.edges?y=s.node.edges[m]:(y=new t.TokenSet,s.node.edges[m]=y),s.str.length==1&&(y.final=!0),i.push({node:y,editsRemaining:s.editsRemaining-1,str:d+s.str.slice(2)})}}}return n},t.TokenSet.fromString=function(e){for(var r=new t.TokenSet,n=r,i=0,s=e.length;i=e;r--){var n=this.uncheckedNodes[r],i=n.child.toString();i in this.minimizedNodes?n.parent.edges[n.char]=this.minimizedNodes[i]:(n.child._str=i,this.minimizedNodes[i]=n.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(r){var n=new t.QueryParser(e,r);n.parse()})},t.Index.prototype.query=function(e){for(var r=new t.Query(this.fields),n=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,r){var n=e[this._ref],i=Object.keys(this._fields);this._documents[n]=r||{},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,r;do e=this.next(),r=e.charCodeAt(0);while(r>47&&r<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 r=e.next();if(r==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(r.charCodeAt(0)==92){e.escapeCharacter();continue}if(r==":")return t.QueryLexer.lexField;if(r=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(r=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(r=="+"&&e.width()===1||r=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(r.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,r){this.lexer=new t.QueryLexer(e),this.query=r,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 r=e.peekLexeme();if(r!=null)switch(r.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 n="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(n+=" with value '"+r.str+"'"),new t.QueryParseError(n,r.start,r.end)}},t.QueryParser.parsePresence=function(e){var r=e.consumeLexeme();if(r!=null){switch(r.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var n="unrecognised presence operator'"+r.str+"'";throw new t.QueryParseError(n,r.start,r.end)}var i=e.peekLexeme();if(i==null){var n="expecting term or field, found nothing";throw new t.QueryParseError(n,r.start,r.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(n,i.start,i.end)}}},t.QueryParser.parseField=function(e){var r=e.consumeLexeme();if(r!=null){if(e.query.allFields.indexOf(r.str)==-1){var n=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+r.str+"', possible fields: "+n;throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.fields=[r.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,r.start,r.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 r=e.consumeLexeme();if(r!=null){e.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var n=e.peekLexeme();if(n==null){e.nextClause();return}switch(n.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 '"+n.type+"'";throw new t.QueryParseError(i,n.start,n.end)}}},t.QueryParser.parseEditDistance=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="edit distance must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.editDistance=n;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 r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="boost must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.boost=n;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,r){typeof define=="function"&&define.amd?define(r):typeof se=="object"?oe.exports=r():e.lunr=r()}(this,function(){return t})})()});var ne=[];function G(t,e){ne.push({selector:e,constructor:t})}var U=class{constructor(){this.alwaysVisibleMember=null;this.createComponents(document.body),this.ensureActivePageVisible(),this.ensureFocusedElementVisible(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible())}createComponents(e){ne.forEach(r=>{e.querySelectorAll(r.selector).forEach(n=>{n.dataset.hasInstance||(new r.constructor({el:n,app:this}),n.dataset.hasInstance=String(!0))})})}filterChanged(){this.ensureFocusedElementVisible()}ensureActivePageVisible(){let e=document.querySelector(".tsd-navigation .current"),r=e?.parentElement;for(;r&&!r.classList.contains(".tsd-navigation");)r instanceof HTMLDetailsElement&&e?.parentElement?.parentElement!==r&&(r.open=!0),r=r.parentElement;if(e){let n=e.getBoundingClientRect().top-document.documentElement.clientHeight/4;document.querySelector(".site-menu").scrollTop=n}}ensureFocusedElementVisible(){if(this.alwaysVisibleMember&&(this.alwaysVisibleMember.classList.remove("always-visible"),this.alwaysVisibleMember.firstElementChild.remove(),this.alwaysVisibleMember=null),!location.hash)return;let e=document.getElementById(location.hash.substring(1));if(!e)return;let r=e.parentElement;for(;r&&r.tagName!=="SECTION";)r=r.parentElement;if(r&&r.offsetParent==null){this.alwaysVisibleMember=r,r.classList.add("always-visible");let n=document.createElement("p");n.classList.add("warning"),n.textContent="This member is normally hidden due to your filter settings.",r.prepend(n)}}};var ie=(t,e=100)=>{let r;return()=>{clearTimeout(r),r=setTimeout(()=>t(),e)}};var ce=Ie(ae());function de(){let t=document.getElementById("tsd-search");if(!t)return;let e=document.getElementById("tsd-search-script");t.classList.add("loading"),e&&(e.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),e.addEventListener("load",()=>{t.classList.remove("loading"),t.classList.add("ready")}),window.searchData&&t.classList.remove("loading"));let r=document.querySelector("#tsd-search input"),n=document.querySelector("#tsd-search .results");if(!r||!n)throw new Error("The input field or the result list wrapper was not found");let i=!1;n.addEventListener("mousedown",()=>i=!0),n.addEventListener("mouseup",()=>{i=!1,t.classList.remove("has-focus")}),r.addEventListener("focus",()=>t.classList.add("has-focus")),r.addEventListener("blur",()=>{i||(i=!1,t.classList.remove("has-focus"))});let s={base:t.dataset.base+"/"};Ce(t,n,r,s)}function Ce(t,e,r,n){r.addEventListener("input",ie(()=>{_e(t,e,r,n)},200));let i=!1;r.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?Re(e,r):s.key=="Escape"?r.blur():s.key=="ArrowUp"?ue(e,-1):s.key==="ArrowDown"?ue(e,1):i=!1}),r.addEventListener("keypress",s=>{i&&s.preventDefault()}),document.body.addEventListener("keydown",s=>{s.altKey||s.ctrlKey||s.metaKey||!r.matches(":focus")&&s.key==="/"&&(r.focus(),s.preventDefault())})}function Oe(t,e){t.index||window.searchData&&(e.classList.remove("loading"),e.classList.add("ready"),t.data=window.searchData,t.index=ce.Index.load(window.searchData.index))}function _e(t,e,r,n){if(Oe(n,t),!n.index||!n.data)return;e.textContent="";let i=r.value.trim(),s=i?n.index.search(`*${i}*`):[];for(let o=0;oa.score-o.score);for(let o=0,a=Math.min(10,s.length);o${le(l.parent,i)}.${u}`);let d=document.createElement("li");d.classList.value=l.classes??"";let m=document.createElement("a");m.href=n.base+l.url,m.innerHTML=u,d.append(m),e.appendChild(d)}}function ue(t,e){let r=t.querySelector(".current");if(!r)r=t.querySelector(e==1?"li:first-child":"li:last-child"),r&&r.classList.add("current");else{let n=r;if(e===1)do n=n.nextElementSibling??void 0;while(n instanceof HTMLElement&&n.offsetParent==null);else do n=n.previousElementSibling??void 0;while(n instanceof HTMLElement&&n.offsetParent==null);n&&(r.classList.remove("current"),n.classList.add("current"))}}function Re(t,e){let r=t.querySelector(".current");if(r||(r=t.querySelector("li:first-child")),r){let n=r.querySelector("a");n&&(window.location.href=n.href),e.blur()}}function le(t,e){if(e==="")return t;let r=t.toLocaleLowerCase(),n=e.toLocaleLowerCase(),i=[],s=0,o=r.indexOf(n);for(;o!=-1;)i.push(K(t.substring(s,o)),`${K(t.substring(o,o+n.length))}`),s=o+n.length,o=r.indexOf(n,s);return i.push(K(t.substring(s))),i.join("")}var Fe={"&":"&","<":"<",">":">","'":"'",'"':"""};function K(t){return t.replace(/[&<>"'"]/g,e=>Fe[e])}var P=class{constructor(e){this.el=e.el,this.app=e.app}};var M="mousedown",fe="mousemove",N="mouseup",J={x:0,y:0},he=!1,ee=!1,Me=!1,D=!1,pe=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(pe?"is-mobile":"not-mobile");pe&&"ontouchstart"in document.documentElement&&(Me=!0,M="touchstart",fe="touchmove",N="touchend");document.addEventListener(M,t=>{ee=!0,D=!1;let e=M=="touchstart"?t.targetTouches[0]:t;J.y=e.pageY||0,J.x=e.pageX||0});document.addEventListener(fe,t=>{if(ee&&!D){let e=M=="touchstart"?t.targetTouches[0]:t,r=J.x-(e.pageX||0),n=J.y-(e.pageY||0);D=Math.sqrt(r*r+n*n)>10}});document.addEventListener(N,()=>{ee=!1});document.addEventListener("click",t=>{he&&(t.preventDefault(),t.stopImmediatePropagation(),he=!1)});var X=class extends P{constructor(r){super(r);this.className=this.el.dataset.toggle||"",this.el.addEventListener(N,n=>this.onPointerUp(n)),this.el.addEventListener("click",n=>n.preventDefault()),document.addEventListener(M,n=>this.onDocumentPointerDown(n)),document.addEventListener(N,n=>this.onDocumentPointerUp(n))}setActive(r){if(this.active==r)return;this.active=r,document.documentElement.classList.toggle("has-"+this.className,r),this.el.classList.toggle("active",r);let n=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(n),setTimeout(()=>document.documentElement.classList.remove(n),500)}onPointerUp(r){D||(this.setActive(!0),r.preventDefault())}onDocumentPointerDown(r){if(this.active){if(r.target.closest(".col-sidebar, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(r){if(!D&&this.active&&r.target.closest(".col-sidebar")){let n=r.target.closest("a");if(n){let i=window.location.href;i.indexOf("#")!=-1&&(i=i.substring(0,i.indexOf("#"))),n.href.substring(0,i.length)==i&&setTimeout(()=>this.setActive(!1),250)}}}};var te;try{te=localStorage}catch{te={getItem(){return null},setItem(){}}}var Q=te;var me=document.head.appendChild(document.createElement("style"));me.dataset.for="filters";var Y=class extends P{constructor(r){super(r);this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),me.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } -`}fromLocalStorage(){let r=Q.getItem(this.key);return r?r==="true":this.el.checked}setLocalStorage(r){Q.setItem(this.key,r.toString()),this.value=r,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),this.app.filterChanged(),document.querySelectorAll(".tsd-index-section").forEach(r=>{r.style.display="block";let n=Array.from(r.querySelectorAll(".tsd-index-link")).every(i=>i.offsetParent==null);r.style.display=n?"none":"block"})}};var Z=class extends P{constructor(r){super(r);this.summary=this.el.querySelector(".tsd-accordion-summary"),this.icon=this.summary.querySelector("svg"),this.key=`tsd-accordion-${this.summary.dataset.key??this.summary.textContent.trim().replace(/\s+/g,"-").toLowerCase()}`;let n=Q.getItem(this.key);this.el.open=n?n==="true":this.el.open,this.el.addEventListener("toggle",()=>this.update()),this.update()}update(){this.icon.style.transform=`rotate(${this.el.open?0:-90}deg)`,Q.setItem(this.key,this.el.open.toString())}};function ve(t){let e=Q.getItem("tsd-theme")||"os";t.value=e,ye(e),t.addEventListener("change",()=>{Q.setItem("tsd-theme",t.value),ye(t.value)})}function ye(t){document.documentElement.dataset.theme=t}addEventListener("load",()=>{de(),G(X,"a[data-toggle]"),G(Z,".tsd-index-accordion"),G(Y,".tsd-filter-item input[type=checkbox]");let t=document.getElementById("tsd-theme");t&&ve(t);let e=new U;Object.defineProperty(window,"app",{value:e})});})(); +"use strict";(()=>{var Se=Object.create;var re=Object.defineProperty;var we=Object.getOwnPropertyDescriptor;var Te=Object.getOwnPropertyNames;var ke=Object.getPrototypeOf,Qe=Object.prototype.hasOwnProperty;var Pe=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Ie=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Te(e))!Qe.call(t,i)&&i!==r&&re(t,i,{get:()=>e[i],enumerable:!(n=we(e,i))||n.enumerable});return t};var Ce=(t,e,r)=>(r=t!=null?Se(ke(t)):{},Ie(e||!t||!t.__esModule?re(r,"default",{value:t,enumerable:!0}):r,t));var ae=Pe((se,oe)=>{(function(){var t=function(e){var r=new t.Builder;return r.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),r.searchPipeline.add(t.stemmer),e.call(r,r),r.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(r){e.console&&console.warn&&console.warn(r)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var r=Object.create(null),n=Object.keys(e),i=0;i0){var d=t.utils.clone(r)||{};d.position=[a,u],d.index=s.length,s.push(new t.Token(n.slice(a,o),d))}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,r){r in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+r),e.label=r,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var r=e.label&&e.label in this.registeredFunctions;r||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. +`,e)},t.Pipeline.load=function(e){var r=new t.Pipeline;return e.forEach(function(n){var i=t.Pipeline.registeredFunctions[n];if(i)r.add(i);else throw new Error("Cannot load unregistered function: "+n)}),r},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(r){t.Pipeline.warnIfFunctionNotRegistered(r),this._stack.push(r)},this)},t.Pipeline.prototype.after=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");n=n+1,this._stack.splice(n,0,r)},t.Pipeline.prototype.before=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");this._stack.splice(n,0,r)},t.Pipeline.prototype.remove=function(e){var r=this._stack.indexOf(e);r!=-1&&this._stack.splice(r,1)},t.Pipeline.prototype.run=function(e){for(var r=this._stack.length,n=0;n1&&(oe&&(n=s),o!=e);)i=n-r,s=r+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(ol?d+=2:a==l&&(r+=n[u+1]*i[d+1],u+=2,d+=2);return r},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),r=1,n=0;r0){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 d=s.str.charAt(0),m=s.str.charAt(1),y;m in s.node.edges?y=s.node.edges[m]:(y=new t.TokenSet,s.node.edges[m]=y),s.str.length==1&&(y.final=!0),i.push({node:y,editsRemaining:s.editsRemaining-1,str:d+s.str.slice(2)})}}}return n},t.TokenSet.fromString=function(e){for(var r=new t.TokenSet,n=r,i=0,s=e.length;i=e;r--){var n=this.uncheckedNodes[r],i=n.child.toString();i in this.minimizedNodes?n.parent.edges[n.char]=this.minimizedNodes[i]:(n.child._str=i,this.minimizedNodes[i]=n.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(r){var n=new t.QueryParser(e,r);n.parse()})},t.Index.prototype.query=function(e){for(var r=new t.Query(this.fields),n=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,r){var n=e[this._ref],i=Object.keys(this._fields);this._documents[n]=r||{},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,r;do e=this.next(),r=e.charCodeAt(0);while(r>47&&r<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 r=e.next();if(r==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(r.charCodeAt(0)==92){e.escapeCharacter();continue}if(r==":")return t.QueryLexer.lexField;if(r=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(r=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(r=="+"&&e.width()===1||r=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(r.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,r){this.lexer=new t.QueryLexer(e),this.query=r,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 r=e.peekLexeme();if(r!=null)switch(r.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 n="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(n+=" with value '"+r.str+"'"),new t.QueryParseError(n,r.start,r.end)}},t.QueryParser.parsePresence=function(e){var r=e.consumeLexeme();if(r!=null){switch(r.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var n="unrecognised presence operator'"+r.str+"'";throw new t.QueryParseError(n,r.start,r.end)}var i=e.peekLexeme();if(i==null){var n="expecting term or field, found nothing";throw new t.QueryParseError(n,r.start,r.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(n,i.start,i.end)}}},t.QueryParser.parseField=function(e){var r=e.consumeLexeme();if(r!=null){if(e.query.allFields.indexOf(r.str)==-1){var n=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+r.str+"', possible fields: "+n;throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.fields=[r.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,r.start,r.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 r=e.consumeLexeme();if(r!=null){e.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var n=e.peekLexeme();if(n==null){e.nextClause();return}switch(n.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 '"+n.type+"'";throw new t.QueryParseError(i,n.start,n.end)}}},t.QueryParser.parseEditDistance=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="edit distance must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.editDistance=n;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 r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="boost must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.boost=n;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,r){typeof define=="function"&&define.amd?define(r):typeof se=="object"?oe.exports=r():e.lunr=r()}(this,function(){return t})})()});var ne=[];function G(t,e){ne.push({selector:e,constructor:t})}var U=class{constructor(){this.alwaysVisibleMember=null;this.createComponents(document.body),this.ensureActivePageVisible(),this.ensureFocusedElementVisible(),this.listenForCodeCopies(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible())}createComponents(e){ne.forEach(r=>{e.querySelectorAll(r.selector).forEach(n=>{n.dataset.hasInstance||(new r.constructor({el:n,app:this}),n.dataset.hasInstance=String(!0))})})}filterChanged(){this.ensureFocusedElementVisible()}ensureActivePageVisible(){let e=document.querySelector(".tsd-navigation .current"),r=e?.parentElement;for(;r&&!r.classList.contains(".tsd-navigation");)r instanceof HTMLDetailsElement&&(r.open=!0),r=r.parentElement;if(e){let n=e.getBoundingClientRect().top-document.documentElement.clientHeight/4;document.querySelector(".site-menu").scrollTop=n}}ensureFocusedElementVisible(){if(this.alwaysVisibleMember&&(this.alwaysVisibleMember.classList.remove("always-visible"),this.alwaysVisibleMember.firstElementChild.remove(),this.alwaysVisibleMember=null),!location.hash)return;let e=document.getElementById(location.hash.substring(1));if(!e)return;let r=e.parentElement;for(;r&&r.tagName!=="SECTION";)r=r.parentElement;if(r&&r.offsetParent==null){this.alwaysVisibleMember=r,r.classList.add("always-visible");let n=document.createElement("p");n.classList.add("warning"),n.textContent="This member is normally hidden due to your filter settings.",r.prepend(n)}}listenForCodeCopies(){document.querySelectorAll("pre > button").forEach(e=>{let r;e.addEventListener("click",()=>{e.previousElementSibling instanceof HTMLElement&&navigator.clipboard.writeText(e.previousElementSibling.innerText.trim()),e.textContent="Copied!",e.classList.add("visible"),clearTimeout(r),r=setTimeout(()=>{e.classList.remove("visible"),r=setTimeout(()=>{e.textContent="Copy"},100)},1e3)})})}};var ie=(t,e=100)=>{let r;return()=>{clearTimeout(r),r=setTimeout(()=>t(),e)}};var ce=Ce(ae());function de(){let t=document.getElementById("tsd-search");if(!t)return;let e=document.getElementById("tsd-search-script");t.classList.add("loading"),e&&(e.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),e.addEventListener("load",()=>{t.classList.remove("loading"),t.classList.add("ready")}),window.searchData&&t.classList.remove("loading"));let r=document.querySelector("#tsd-search input"),n=document.querySelector("#tsd-search .results");if(!r||!n)throw new Error("The input field or the result list wrapper was not found");let i=!1;n.addEventListener("mousedown",()=>i=!0),n.addEventListener("mouseup",()=>{i=!1,t.classList.remove("has-focus")}),r.addEventListener("focus",()=>t.classList.add("has-focus")),r.addEventListener("blur",()=>{i||(i=!1,t.classList.remove("has-focus"))});let s={base:t.dataset.base+"/"};Oe(t,n,r,s)}function Oe(t,e,r,n){r.addEventListener("input",ie(()=>{Re(t,e,r,n)},200));let i=!1;r.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?Fe(e,r):s.key=="Escape"?r.blur():s.key=="ArrowUp"?ue(e,-1):s.key==="ArrowDown"?ue(e,1):i=!1}),r.addEventListener("keypress",s=>{i&&s.preventDefault()}),document.body.addEventListener("keydown",s=>{s.altKey||s.ctrlKey||s.metaKey||!r.matches(":focus")&&s.key==="/"&&(r.focus(),s.preventDefault())})}function _e(t,e){t.index||window.searchData&&(e.classList.remove("loading"),e.classList.add("ready"),t.data=window.searchData,t.index=ce.Index.load(window.searchData.index))}function Re(t,e,r,n){if(_e(n,t),!n.index||!n.data)return;e.textContent="";let i=r.value.trim(),s=i?n.index.search(`*${i}*`):[];for(let o=0;oa.score-o.score);for(let o=0,a=Math.min(10,s.length);o${le(l.parent,i)}.${u}`);let d=document.createElement("li");d.classList.value=l.classes??"";let m=document.createElement("a");m.href=n.base+l.url,m.innerHTML=u,d.append(m),e.appendChild(d)}}function ue(t,e){let r=t.querySelector(".current");if(!r)r=t.querySelector(e==1?"li:first-child":"li:last-child"),r&&r.classList.add("current");else{let n=r;if(e===1)do n=n.nextElementSibling??void 0;while(n instanceof HTMLElement&&n.offsetParent==null);else do n=n.previousElementSibling??void 0;while(n instanceof HTMLElement&&n.offsetParent==null);n&&(r.classList.remove("current"),n.classList.add("current"))}}function Fe(t,e){let r=t.querySelector(".current");if(r||(r=t.querySelector("li:first-child")),r){let n=r.querySelector("a");n&&(window.location.href=n.href),e.blur()}}function le(t,e){if(e==="")return t;let r=t.toLocaleLowerCase(),n=e.toLocaleLowerCase(),i=[],s=0,o=r.indexOf(n);for(;o!=-1;)i.push(K(t.substring(s,o)),`${K(t.substring(o,o+n.length))}`),s=o+n.length,o=r.indexOf(n,s);return i.push(K(t.substring(s))),i.join("")}var Me={"&":"&","<":"<",">":">","'":"'",'"':"""};function K(t){return t.replace(/[&<>"'"]/g,e=>Me[e])}var P=class{constructor(e){this.el=e.el,this.app=e.app}};var M="mousedown",fe="mousemove",N="mouseup",J={x:0,y:0},he=!1,ee=!1,De=!1,D=!1,pe=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(pe?"is-mobile":"not-mobile");pe&&"ontouchstart"in document.documentElement&&(De=!0,M="touchstart",fe="touchmove",N="touchend");document.addEventListener(M,t=>{ee=!0,D=!1;let e=M=="touchstart"?t.targetTouches[0]:t;J.y=e.pageY||0,J.x=e.pageX||0});document.addEventListener(fe,t=>{if(ee&&!D){let e=M=="touchstart"?t.targetTouches[0]:t,r=J.x-(e.pageX||0),n=J.y-(e.pageY||0);D=Math.sqrt(r*r+n*n)>10}});document.addEventListener(N,()=>{ee=!1});document.addEventListener("click",t=>{he&&(t.preventDefault(),t.stopImmediatePropagation(),he=!1)});var X=class extends P{constructor(r){super(r);this.className=this.el.dataset.toggle||"",this.el.addEventListener(N,n=>this.onPointerUp(n)),this.el.addEventListener("click",n=>n.preventDefault()),document.addEventListener(M,n=>this.onDocumentPointerDown(n)),document.addEventListener(N,n=>this.onDocumentPointerUp(n))}setActive(r){if(this.active==r)return;this.active=r,document.documentElement.classList.toggle("has-"+this.className,r),this.el.classList.toggle("active",r);let n=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(n),setTimeout(()=>document.documentElement.classList.remove(n),500)}onPointerUp(r){D||(this.setActive(!0),r.preventDefault())}onDocumentPointerDown(r){if(this.active){if(r.target.closest(".col-sidebar, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(r){if(!D&&this.active&&r.target.closest(".col-sidebar")){let n=r.target.closest("a");if(n){let i=window.location.href;i.indexOf("#")!=-1&&(i=i.substring(0,i.indexOf("#"))),n.href.substring(0,i.length)==i&&setTimeout(()=>this.setActive(!1),250)}}}};var te;try{te=localStorage}catch{te={getItem(){return null},setItem(){}}}var Q=te;var me=document.head.appendChild(document.createElement("style"));me.dataset.for="filters";var Y=class extends P{constructor(r){super(r);this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),me.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } +`}fromLocalStorage(){let r=Q.getItem(this.key);return r?r==="true":this.el.checked}setLocalStorage(r){Q.setItem(this.key,r.toString()),this.value=r,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),this.app.filterChanged(),document.querySelectorAll(".tsd-index-section").forEach(r=>{r.style.display="block";let n=Array.from(r.querySelectorAll(".tsd-index-link")).every(i=>i.offsetParent==null);r.style.display=n?"none":"block"})}};var Z=class extends P{constructor(r){super(r);this.summary=this.el.querySelector(".tsd-accordion-summary"),this.icon=this.summary.querySelector("svg"),this.key=`tsd-accordion-${this.summary.dataset.key??this.summary.textContent.trim().replace(/\s+/g,"-").toLowerCase()}`;let n=Q.getItem(this.key);this.el.open=n?n==="true":this.el.open,this.el.addEventListener("toggle",()=>this.update()),this.update()}update(){this.icon.style.transform=`rotate(${this.el.open?0:-90}deg)`,Q.setItem(this.key,this.el.open.toString())}};function ve(t){let e=Q.getItem("tsd-theme")||"os";t.value=e,ye(e),t.addEventListener("change",()=>{Q.setItem("tsd-theme",t.value),ye(t.value)})}function ye(t){document.documentElement.dataset.theme=t}de();G(X,"a[data-toggle]");G(Z,".tsd-index-accordion");G(Y,".tsd-filter-item input[type=checkbox]");var ge=document.getElementById("tsd-theme");ge&&ve(ge);var Ae=new U;Object.defineProperty(window,"app",{value:Ae});})(); /*! Bundled license information: lunr/lunr.js: diff --git a/docs/typedoc/assets/style.css b/docs/typedoc/assets/style.css index da6c789..5b96717 100644 --- a/docs/typedoc/assets/style.css +++ b/docs/typedoc/assets/style.css @@ -51,13 +51,13 @@ --dark-color-text-aside: #dddddd; --dark-color-link: #00aff4; - --dark-color-ts-project: #e14dff; + --dark-color-ts-project: #e358ff; --dark-color-ts-module: var(--dark-color-ts-project); --dark-color-ts-namespace: var(--dark-color-ts-project); --dark-color-ts-enum: #f4d93e; --dark-color-ts-enum-member: var(--dark-color-ts-enum); --dark-color-ts-variable: #798dff; - --dark-color-ts-function: #9772ff; + --dark-color-ts-function: #a280ff; --dark-color-ts-class: #8ac4ff; --dark-color-ts-interface: #6cff87; --dark-color-ts-constructor: var(--dark-color-ts-class); @@ -262,6 +262,16 @@ h6 { line-height: 1.2; } +h1 > a, +h2 > a, +h3 > a, +h4 > a, +h5 > a, +h6 > a { + text-decoration: none; + color: var(--color-text); +} + h1 { font-size: 1.875rem; margin: 0.67rem 0; @@ -296,12 +306,6 @@ h6 { text-transform: uppercase; } -pre { - white-space: pre; - white-space: pre-wrap; - word-wrap: break-word; -} - dl, menu, ol, @@ -426,13 +430,29 @@ pre { } pre { + position: relative; + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; padding: 10px; - border: 0.1em solid var(--color-accent); + border: 1px solid var(--color-accent); } pre code { padding: 0; font-size: 100%; } +pre > button { + position: absolute; + top: 10px; + right: 10px; + opacity: 0; + transition: opacity 0.1s; + box-sizing: border-box; +} +pre:hover > button, +pre > button.visible { + opacity: 1; +} blockquote { margin: 1em 0; @@ -676,7 +696,12 @@ input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { .tsd-navigation.settings { margin: 1rem 0; } +.tsd-navigation > a, +.tsd-navigation .tsd-accordion-summary { + width: calc(100% - 0.5rem); +} .tsd-navigation a, +.tsd-navigation summary > span, .tsd-page-navigation a { display: inline-flex; align-items: center; @@ -685,14 +710,6 @@ input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { text-decoration: none; box-sizing: border-box; } -.tsd-navigation a { - /* why 3rem? No idea, but it seems to work. */ - width: calc(100% - 3rem); -} -.tsd-page-navigation a { - /* why is this different? */ - width: 100%; -} .tsd-navigation a.current, .tsd-page-navigation a.current { background: var(--color-active-menu-item); @@ -703,7 +720,8 @@ input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { } .tsd-navigation ul, .tsd-page-navigation ul { - margin: 0; + margin-top: 0; + margin-bottom: 0; padding: 0; list-style: none; } @@ -712,18 +730,24 @@ input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark { padding: 0; max-width: 100%; } -.tsd-nested-navigation > li > a { +.tsd-nested-navigation { margin-left: 3rem; } .tsd-nested-navigation > li > details { - margin-left: 1.5rem; + margin-left: -1.5rem; } -.tsd-small-nested-navigation > li > a { +.tsd-small-nested-navigation { margin-left: 1.5rem; } .tsd-small-nested-navigation > li > details { - margin-left: 0; + margin-left: -1.5rem; +} + +.tsd-nested-navigation > li > a, +.tsd-nested-navigation > li > span { + width: calc(100% - 1.75rem - 0.5rem); } + .tsd-page-navigation ul { padding-left: 1.75rem; } @@ -745,6 +769,11 @@ a.tsd-index-link { align-items: center; color: var(--color-text); } +.tsd-accordion-summary { + list-style-type: none; + display: flex; + align-items: center; +} .tsd-accordion-summary, .tsd-accordion-summary a { user-select: none; @@ -752,21 +781,19 @@ a.tsd-index-link { -webkit-user-select: none; -ms-user-select: none; - display: flex; - align-items: center; cursor: pointer; } +.tsd-accordion-summary a { + flex-grow: 1; +} .tsd-accordion-summary > * { margin-top: 0; margin-bottom: 0; padding-top: 0; padding-bottom: 0; } -.tsd-accordion-summary::-webkit-details-marker { - display: none; -} -.tsd-index-accordion .tsd-accordion-summary svg { - margin-right: 0.25rem; +.tsd-index-accordion .tsd-accordion-summary > svg { + margin-left: 0.25rem; } .tsd-index-content > :not(:first-child) { margin-top: 0.75rem; diff --git a/docs/typedoc/functions/createAllPromise.html b/docs/typedoc/functions/createAllPromise.html index b029653..037e6dd 100644 --- a/docs/typedoc/functions/createAllPromise.html +++ b/docs/typedoc/functions/createAllPromise.html @@ -25,16 +25,10 @@

Function createAllPromise

It rejects immediately upon any of the input promises rejected or non-promises throwing an error, and will reject with this first rejection message / error. If the runtime doesn't support the Promise.all it will fallback back to an asynchronous Promise implementation.

- -

Returns

    -
  • An already resolved `Promise`, if the input passed is empty. -
  • A pending `Promise` in all other cases. This returned promise is then resolved/rejected __synchronously__ -(as soon as the pending items is empty) when all the promises in the given input have resolved, or if any of the -promises reject. -
-
+ +

Type Parameters

-
    +
    • T

@@ -46,7 +40,12 @@
input: Optional timeout: number
-

Returns IPromise<T[]>

diff --git a/docs/typedoc/functions/createAsyncAllPromise.html b/docs/typedoc/functions/createAsyncAllPromise.html index 7adb7e0..3ec812c 100644 --- a/docs/typedoc/functions/createAsyncAllPromise.html +++ b/docs/typedoc/functions/createAsyncAllPromise.html @@ -26,16 +26,10 @@

Function createAsyncAllPromise

and will reject with this first rejection message / error. When resolved or rejected any additional chained operations will execute asynchronously using the optional timeout value to schedul when the chained item will be executed (eg. then(); catch(); finally()).

- -

Returns

    -
  • An already resolved `Promise`, if the input passed is empty. -
  • A pending `Promise` in all other cases. This returned promise is then resolved/rejected __synchronously__ -(as soon as the pending items is empty) when all the promises in the given input have resolved, or if any of the -promises reject. -
-
+ +

Type Parameters

-
    +
    • T

@@ -47,7 +41,12 @@
input: Optional timeout: number
-

Returns IPromise<T[]>

diff --git a/docs/typedoc/functions/createAsyncPromise.html b/docs/typedoc/functions/createAsyncPromise.html index c63f42b..113fa8e 100644 --- a/docs/typedoc/functions/createAsyncPromise.html +++ b/docs/typedoc/functions/createAsyncPromise.html @@ -22,9 +22,9 @@

Function createAsyncPromise

Creates an asynchronous Promise instance that when resolved or rejected will execute it's pending chained operations asynchronously using the optional provided timeout value to schedule when the chained items will be ececuted.

-
+

Type Parameters

-
    +
    • T

diff --git a/docs/typedoc/functions/createAsyncRejectedPromise.html b/docs/typedoc/functions/createAsyncRejectedPromise.html index 04210c3..32f8599 100644 --- a/docs/typedoc/functions/createAsyncRejectedPromise.html +++ b/docs/typedoc/functions/createAsyncRejectedPromise.html @@ -23,9 +23,9 @@

Function createAsyncRejectedPromise

Any chained operations will execute asynchronously using the optional timeout value to schedule when then chained items will be executed. (eg. catch(); finally()).

-
+

Type Parameters

-
    +
    • T = unknown

diff --git a/docs/typedoc/functions/createAsyncResolvedPromise.html b/docs/typedoc/functions/createAsyncResolvedPromise.html index 1e4dc63..3907469 100644 --- a/docs/typedoc/functions/createAsyncResolvedPromise.html +++ b/docs/typedoc/functions/createAsyncResolvedPromise.html @@ -24,9 +24,9 @@

Function createAsyncResolvedPromise

If a new instance is returned then any chained operations will execute asynchronously using the optional timeout value to schedule when the chained items will be executed.(eg. then(); finally()).

-
+

Type Parameters

-
    +
    • T

diff --git a/docs/typedoc/functions/createIdleAllPromise.html b/docs/typedoc/functions/createIdleAllPromise.html index e6d161d..4df6dfc 100644 --- a/docs/typedoc/functions/createIdleAllPromise.html +++ b/docs/typedoc/functions/createIdleAllPromise.html @@ -28,16 +28,10 @@

Function createIdleAllPromise

When resolved or rejected any additional chained operations will execute asynchronously using the requestIdleCallback API (if available) with the optional provided timeout value to schedule when the chained items will be executed. (eg. then(); catch(); finally()).

- -

Returns

    -
  • An already resolved `Promise`, if the input passed is empty. -
  • A pending `Promise` in all other cases. This returned promise is then resolved/rejected __synchronously__ -(as soon as the pending items is empty) when all the promises in the given input have resolved, or if any of the -promises reject. -
-
+ +

Type Parameters

-
    +
    • T

@@ -49,7 +43,12 @@
input: Optional timeout: number
-

Returns IPromise<T[]>

diff --git a/docs/typedoc/functions/createIdlePromise.html b/docs/typedoc/functions/createIdlePromise.html index 73a42d2..045a67b 100644 --- a/docs/typedoc/functions/createIdlePromise.html +++ b/docs/typedoc/functions/createIdlePromise.html @@ -24,9 +24,9 @@

Function createIdlePromise

schedule when the chained items will be executed. When requestIdleCallback is not available this becomes the same as createAsyncPromise which uses setTimeout to schedule executions.

-
+

Type Parameters

-
    +
    • T

diff --git a/docs/typedoc/functions/createIdleRejectedPromise.html b/docs/typedoc/functions/createIdleRejectedPromise.html index 8ea76f1..c42e07f 100644 --- a/docs/typedoc/functions/createIdleRejectedPromise.html +++ b/docs/typedoc/functions/createIdleRejectedPromise.html @@ -24,9 +24,9 @@

Function createIdleRejectedPromise

(if available) with the optional provided timeout value to schedule when the chained items will be executed. (eg. catch(); finally()).

-
+

Type Parameters

-
    +
    • T = unknown

diff --git a/docs/typedoc/functions/createIdleResolvedPromise.html b/docs/typedoc/functions/createIdleResolvedPromise.html index fbfc33b..cc51572 100644 --- a/docs/typedoc/functions/createIdleResolvedPromise.html +++ b/docs/typedoc/functions/createIdleResolvedPromise.html @@ -25,9 +25,9 @@

Function createIdleResolvedPromise

requestIdleCallback API (if available) with the optional provided timeout value to schedule when the chained items will be executed. (eg. then(); finally()).

-
+

Type Parameters

-
    +
    • T

diff --git a/docs/typedoc/functions/createNativeAllPromise.html b/docs/typedoc/functions/createNativeAllPromise.html index 55e73e9..bff2c75 100644 --- a/docs/typedoc/functions/createNativeAllPromise.html +++ b/docs/typedoc/functions/createNativeAllPromise.html @@ -25,16 +25,10 @@

Function createNativeAllPromise

It rejects immediately upon any of the input promises rejected or non-promises throwing an error, and will reject with this first rejection message / error. If the runtime doesn't support the Promise.all it will fallback back to an asynchronous Promise implementation.

- -

Returns

    -
  • An already resolved `Promise`, if the input passed is empty. -
  • A pending `Promise` in all other cases. This returned promise is then resolved/rejected __synchronously__ -(as soon as the pending items is empty) when all the promises in the given input have resolved, or if any of the -promises reject. -
-
+ +

Type Parameters

-
    +
    • T

@@ -46,9 +40,14 @@
input: Optional timeout: number
-

Returns IPromise<T[]>

+
  • Defined in lib/src/promise/nativePromise.ts:90
  • -
    +

    Type Parameters

    -
      +
      • T

    @@ -44,7 +44,7 @@
    Optional Returns IPromise<T>
    +
  • Defined in lib/src/promise/nativePromise.ts:32
  • -
    +

    Type Parameters

    -
      +
      • T = unknown

    @@ -41,7 +41,7 @@
    Optional Returns Promise<T>
    +
  • Defined in lib/src/promise/nativePromise.ts:115
  • -
    +

    Type Parameters

    -
      +
      • T

    @@ -42,7 +42,7 @@
    Optional Returns Promise<T>
    +
  • Defined in lib/src/promise/nativePromise.ts:103
  • -
    +

    Type Parameters

    -
      +
      • T = unknown

    diff --git a/docs/typedoc/functions/createResolvedPromise.html b/docs/typedoc/functions/createResolvedPromise.html index 9da68f1..bebf203 100644 --- a/docs/typedoc/functions/createResolvedPromise.html +++ b/docs/typedoc/functions/createResolvedPromise.html @@ -24,9 +24,9 @@

    Function createResolvedPromise

    If a new instance is returned then any chained operations will execute asynchronously using the optional timeout value to schedule when the chained items will be executed.(eg. then(); finally()).

    -
    +

    Type Parameters

    -
      +
      • T

    diff --git a/docs/typedoc/functions/createSyncAllPromise.html b/docs/typedoc/functions/createSyncAllPromise.html index 2520751..e679900 100644 --- a/docs/typedoc/functions/createSyncAllPromise.html +++ b/docs/typedoc/functions/createSyncAllPromise.html @@ -26,16 +26,10 @@

    Function createSyncAllPromise

    and will reject with this first rejection message / error. When resolved or rejected any additional chained operations will execute synchronously at the point of being added (eg. then(); catch(); finally()).

    - -

    Returns

      -
    • An already resolved `Promise`, if the input passed is empty. -
    • A pending `Promise` in all other cases. This returned promise is then resolved/rejected __synchronously__ -(as soon as the pending items is empty) when all the promises in the given input have resolved, or if any of the -promises reject. -
    -
    + +

    Type Parameters

    -
      +
      • T

    @@ -45,7 +39,12 @@

    Parameters

    input: PromiseLike<T>[]

    The array of promises to wait to be resolved / rejected before resolving or rejecting the new promise

    -

    Returns IPromise<T[]>

    diff --git a/docs/typedoc/functions/createSyncPromise.html b/docs/typedoc/functions/createSyncPromise.html index 3566454..c63a2a3 100644 --- a/docs/typedoc/functions/createSyncPromise.html +++ b/docs/typedoc/functions/createSyncPromise.html @@ -22,9 +22,9 @@

    Function createSyncPromise

    Creates a synchronous Promise instance that when resolved or rejected will execute it's pending chained operations synchronously in the same execution cycle as the operation that calls the executors, resolve or reject functions.

    -
    +

    Type Parameters

    -
      +
      • T

    diff --git a/docs/typedoc/functions/createSyncRejectedPromise.html b/docs/typedoc/functions/createSyncRejectedPromise.html index 8a90057..f07d90c 100644 --- a/docs/typedoc/functions/createSyncRejectedPromise.html +++ b/docs/typedoc/functions/createSyncRejectedPromise.html @@ -22,9 +22,9 @@

    Function createSyncRejectedPromise

    Returns a single synchronous Promise instance that is already rejected with the given reason. Any chained operations will execute synchronously at the point of being added (eg. catch(); finally()).

    -
    +

    Type Parameters

    -
      +
      • T = unknown

    diff --git a/docs/typedoc/functions/createSyncResolvedPromise.html b/docs/typedoc/functions/createSyncResolvedPromise.html index da74188..84871d8 100644 --- a/docs/typedoc/functions/createSyncResolvedPromise.html +++ b/docs/typedoc/functions/createSyncResolvedPromise.html @@ -24,9 +24,9 @@

    Function createSyncResolvedPromise

    If a new instance is returned then any chained operations will execute synchronously at the point of being added (calling then()).

    -
    +

    Type Parameters

    -
      +
      • T

    diff --git a/docs/typedoc/functions/createTaskScheduler.html b/docs/typedoc/functions/createTaskScheduler.html index 3b37808..8671bea 100644 --- a/docs/typedoc/functions/createTaskScheduler.html +++ b/docs/typedoc/functions/createTaskScheduler.html @@ -41,10 +41,8 @@

    Function createTaskScheduler

    Since

    0.2.0

    -

    Returns

    A new ITaskScheduler instance

    - -

    Example

    let scheduler = createTaskScheduler();

    // Schedule a task using the ts-async helper promise functions
    scheduler.queue(() => {
    return createPromise((resolve, reject) => {
    scheduleTimeout(() => {
    // Do something after a delay
    }, 100);
    });
    });

    // Schedule an asynchronous task which uses async/await
    scheduler.queue(async () => {
    // This task will only execute after the previous task has completed
    await performAnotherAsyncTask();
    });

    // Schedule a synchronous task that executes and completes immediately
    scheduled.queue(() => {
    // Do some synchronous task
    return 42;
    });

    // Schedule an asynchronous task which returns a promise
    scheduled.queue(() => {
    return doAwait(fetch("https://github.com/nevware21/ts-async/blob/main/README.md"), (response) => {
    let theReadMe = response.text();
    // Do something with the readme
    });
    }); -
    +

    Example

    let scheduler = createTaskScheduler();

    // Schedule a task using the ts-async helper promise functions
    scheduler.queue(() => {
    return createPromise((resolve, reject) => {
    scheduleTimeout(() => {
    // Do something after a delay
    }, 100);
    });
    });

    // Schedule an asynchronous task which uses async/await
    scheduler.queue(async () => {
    // This task will only execute after the previous task has completed
    await performAnotherAsyncTask();
    });

    // Schedule a synchronous task that executes and completes immediately
    scheduled.queue(() => {
    // Do some synchronous task
    return 42;
    });

    // Schedule an asynchronous task which returns a promise
    scheduled.queue(() => {
    return doAwait(fetch("https://github.com/nevware21/ts-async/blob/main/README.md"), (response) => {
    let theReadMe = response.text();
    // Do something with the readme
    });
    }); +

    Parameters

    @@ -61,9 +59,9 @@
    Optional
  • <T>(executor, timeout?): IPromise<T>
  • -
    +

    Type Parameters

    -
      +
      • T

  • -

    Returns ITaskScheduler

    diff --git a/docs/typedoc/functions/doAwait.html b/docs/typedoc/functions/doAwait.html index 82ebc9a..c3ad91e 100644 --- a/docs/typedoc/functions/doAwait.html +++ b/docs/typedoc/functions/doAwait.html @@ -23,16 +23,12 @@

    Function doAwait

    rejected the rejectFn will be called with the reason. If the passed promise argument is not a promise the callback will be called synchronously with the value.

    -

    Returns

    The passed value, if it is a promise and there is either a resolve or reject handler -then it will return a chained promise with the value from the resolve or reject handler (depending -whether it resolve or rejects)

    - -

    Example

    let promise = createPromise<number>((resolve, reject) => {
    resolve(42);
    });

    // Handle via a chained promise
    let chainedPromise = promise.then((value) => {
    // Do something with the value
    });

    // Handle via doAwait
    doAwait(promise, (value) => {
    // Do something with the value
    });

    // It can also handle the raw value, so you could process the result of either a
    // synchrounous return of the value or a Promise
    doAwait(42, (value) => {
    // Do something with the value
    }); -
    +

    Example

    let promise = createPromise<number>((resolve, reject) => {
    resolve(42);
    });

    // Handle via a chained promise
    let chainedPromise = promise.then((value) => {
    // Do something with the value
    });

    // Handle via doAwait
    doAwait(promise, (value) => {
    // Do something with the value
    });

    // It can also handle the raw value, so you could process the result of either a
    // synchrounous return of the value or a Promise
    doAwait(42, (value) => {
    // Do something with the value
    }); +
    -
    +

    Type Parameters

    -
      +
      • T

      • @@ -86,7 +82,10 @@
        Optional (): void
      • Returns void

    -

    Returns T | Promise<T | TResult1 | TResult2>

  • -
    +

    Type Parameters

    -

    Simple interface to convert a promise then (resolve/reject) into a single response

    -
    +

    Type Parameters

    -
      +
      • T

    diff --git a/docs/typedoc/interfaces/IPromise.html b/docs/typedoc/interfaces/IPromise.html index 09471e6..e3ccaba 100644 --- a/docs/typedoc/interfaces/IPromise.html +++ b/docs/typedoc/interfaces/IPromise.html @@ -36,9 +36,9 @@

    Interface IPromise<T>

    operation completing and its handlers being attached.

    As the then() and catch() methods return promises, they can be chained.

  • -
    +

    Type Parameters

    -
      +
      • T

        Identifies the expected return type from the promise

        @@ -58,32 +58,46 @@

        Hierarchy

        +

        Properties

        +
        +

        Methods

        -
        -

        Properties

        -
    +

    Properties

    +
    + +
    state?: string
    +

    Returns a string representation of the current state of the promise. The promise can be in one of four states.

    +
      +
    • "pending": The promise is not yet in a completed state (neither "rejected"; or "resolved").
    • +
    • "resolved": The promise is in the resolved state.
    • +
    • "rejected": The promise is in the rejected state.
    • +
    +

    Example

    let doResolve;
    let promise: IPromise<any> = createSyncPromise((resolve) => {
    doResolve = resolve;
    });

    let state: string = promise.state();
    console.log("State: " + state); // State: pending
    doResolve(true); // Promise will resolve synchronously as it's a synchronous promise
    console.log("State: " + state); // State: resolved +
    +
    +

    Methods

    - +
    • Attaches a callback for only the rejection of the Promise.

      -

      Returns

      A Promise for the completion of the callback.

      - -

      Example

      const promise1 = createPromise((resolve, reject) => {
      throw 'Uh-oh!';
      });

      promise1.catch((error) => {
      console.error(error);
      });
      // expected output: Uh-oh! -
      +

      Example

      const promise1 = createPromise((resolve, reject) => {
      throw 'Uh-oh!';
      });

      promise1.catch((error) => {
      console.error(error);
      });
      // expected output: Uh-oh! +
      -
      +

      Type Parameters

      -
        +
        • TResult = never

      @@ -104,7 +118,8 @@

      Parameters

    • reason: any

    Returns TResult | IPromise<TResult>

    -

    Returns IPromise<T | TResult>

    @@ -242,14 +253,12 @@