diff --git a/.nojekyll b/.nojekyll
new file mode 100644
index 0000000..e2ac661
--- /dev/null
+++ b/.nojekyll
@@ -0,0 +1 @@
+TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false.
\ No newline at end of file
diff --git a/assets/highlight.css b/assets/highlight.css
new file mode 100644
index 0000000..2d99ee8
--- /dev/null
+++ b/assets/highlight.css
@@ -0,0 +1,92 @@
+:root {
+ --light-hl-0: #795E26;
+ --dark-hl-0: #DCDCAA;
+ --light-hl-1: #000000;
+ --dark-hl-1: #D4D4D4;
+ --light-hl-2: #A31515;
+ --dark-hl-2: #CE9178;
+ --light-hl-3: #AF00DB;
+ --dark-hl-3: #C586C0;
+ --light-hl-4: #001080;
+ --dark-hl-4: #9CDCFE;
+ --light-hl-5: #0000FF;
+ --dark-hl-5: #569CD6;
+ --light-hl-6: #0070C1;
+ --dark-hl-6: #4FC1FF;
+ --light-hl-7: #EE0000;
+ --dark-hl-7: #D7BA7D;
+ --light-hl-8: #800000;
+ --dark-hl-8: #808080;
+ --light-hl-9: #800000;
+ --dark-hl-9: #569CD6;
+ --light-code-background: #FFFFFF;
+ --dark-code-background: #1E1E1E;
+}
+
+@media (prefers-color-scheme: light) { :root {
+ --hl-0: var(--light-hl-0);
+ --hl-1: var(--light-hl-1);
+ --hl-2: var(--light-hl-2);
+ --hl-3: var(--light-hl-3);
+ --hl-4: var(--light-hl-4);
+ --hl-5: var(--light-hl-5);
+ --hl-6: var(--light-hl-6);
+ --hl-7: var(--light-hl-7);
+ --hl-8: var(--light-hl-8);
+ --hl-9: var(--light-hl-9);
+ --code-background: var(--light-code-background);
+} }
+
+@media (prefers-color-scheme: dark) { :root {
+ --hl-0: var(--dark-hl-0);
+ --hl-1: var(--dark-hl-1);
+ --hl-2: var(--dark-hl-2);
+ --hl-3: var(--dark-hl-3);
+ --hl-4: var(--dark-hl-4);
+ --hl-5: var(--dark-hl-5);
+ --hl-6: var(--dark-hl-6);
+ --hl-7: var(--dark-hl-7);
+ --hl-8: var(--dark-hl-8);
+ --hl-9: var(--dark-hl-9);
+ --code-background: var(--dark-code-background);
+} }
+
+:root[data-theme='light'] {
+ --hl-0: var(--light-hl-0);
+ --hl-1: var(--light-hl-1);
+ --hl-2: var(--light-hl-2);
+ --hl-3: var(--light-hl-3);
+ --hl-4: var(--light-hl-4);
+ --hl-5: var(--light-hl-5);
+ --hl-6: var(--light-hl-6);
+ --hl-7: var(--light-hl-7);
+ --hl-8: var(--light-hl-8);
+ --hl-9: var(--light-hl-9);
+ --code-background: var(--light-code-background);
+}
+
+:root[data-theme='dark'] {
+ --hl-0: var(--dark-hl-0);
+ --hl-1: var(--dark-hl-1);
+ --hl-2: var(--dark-hl-2);
+ --hl-3: var(--dark-hl-3);
+ --hl-4: var(--dark-hl-4);
+ --hl-5: var(--dark-hl-5);
+ --hl-6: var(--dark-hl-6);
+ --hl-7: var(--dark-hl-7);
+ --hl-8: var(--dark-hl-8);
+ --hl-9: var(--dark-hl-9);
+ --code-background: var(--dark-code-background);
+}
+
+.hl-0 { color: var(--hl-0); }
+.hl-1 { color: var(--hl-1); }
+.hl-2 { color: var(--hl-2); }
+.hl-3 { color: var(--hl-3); }
+.hl-4 { color: var(--hl-4); }
+.hl-5 { color: var(--hl-5); }
+.hl-6 { color: var(--hl-6); }
+.hl-7 { color: var(--hl-7); }
+.hl-8 { color: var(--hl-8); }
+.hl-9 { color: var(--hl-9); }
+pre, code { background: var(--code-background); }
diff --git a/assets/icons.js b/assets/icons.js
new file mode 100644
index 0000000..b79c9e8
--- /dev/null
+++ b/assets/icons.js
@@ -0,0 +1,15 @@
+(function(svg) {
+ svg.innerHTML = ` `;
+ svg.style.display = 'none';
+ if (location.protocol === 'file:') {
+ if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', updateUseElements);
+ else updateUseElements()
+ function updateUseElements() {
+ document.querySelectorAll('use').forEach(el => {
+ if (el.getAttribute('href').includes('#icon-')) {
+ el.setAttribute('href', el.getAttribute('href').replace(/.*#/, '#'));
+ }
+ });
+ }
+ }
+})(document.body.appendChild(document.createElementNS('http://www.w3.org/2000/svg', 'svg')))
\ No newline at end of file
diff --git a/assets/icons.svg b/assets/icons.svg
new file mode 100644
index 0000000..7dead61
--- /dev/null
+++ b/assets/icons.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/main.js b/assets/main.js
new file mode 100644
index 0000000..d6f1388
--- /dev/null
+++ b/assets/main.js
@@ -0,0 +1,59 @@
+"use strict";
+"use strict";(()=>{var Ce=Object.create;var ne=Object.defineProperty;var Pe=Object.getOwnPropertyDescriptor;var Oe=Object.getOwnPropertyNames;var _e=Object.getPrototypeOf,Re=Object.prototype.hasOwnProperty;var Me=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Fe=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Oe(e))!Re.call(t,i)&&i!==n&&ne(t,i,{get:()=>e[i],enumerable:!(r=Pe(e,i))||r.enumerable});return t};var De=(t,e,n)=>(n=t!=null?Ce(_e(t)):{},Fe(e||!t||!t.__esModule?ne(n,"default",{value:t,enumerable:!0}):n,t));var ae=Me((se,oe)=>{(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 d=t.utils.clone(n)||{};d.position=[a,u],d.index=s.length,s.push(new t.Token(r.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,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?d+=2:a==l&&(n+=r[u+1]*i[d+1],u+=2,d+=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 d=s.str.charAt(0),y=s.str.charAt(1),p;y in s.node.edges?p=s.node.edges[y]:(p=new t.TokenSet,s.node.edges[y]=p),s.str.length==1&&(p.final=!0),i.push({node:p,editsRemaining:s.editsRemaining-1,str:d+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 se=="object"?oe.exports=n():e.lunr=n()}(this,function(){return t})})()});var re=[];function G(t,e){re.push({selector:e,constructor:t})}var U=class{constructor(){this.alwaysVisibleMember=null;this.createComponents(document.body),this.ensureFocusedElementVisible(),this.listenForCodeCopies(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible()),document.body.style.display||(this.ensureFocusedElementVisible(),this.updateIndexVisibility(),this.scrollToHash())}createComponents(e){re.forEach(n=>{e.querySelectorAll(n.selector).forEach(r=>{r.dataset.hasInstance||(new n.constructor({el:r,app:this}),r.dataset.hasInstance=String(!0))})})}filterChanged(){this.ensureFocusedElementVisible()}showPage(){document.body.style.display&&(console.log("Show page"),document.body.style.removeProperty("display"),this.ensureFocusedElementVisible(),this.updateIndexVisibility(),this.scrollToHash())}scrollToHash(){if(location.hash){console.log("Scorlling");let e=document.getElementById(location.hash.substring(1));if(!e)return;e.scrollIntoView({behavior:"instant",block:"start"})}}ensureActivePageVisible(){let e=document.querySelector(".tsd-navigation .current"),n=e?.parentElement;for(;n&&!n.classList.contains(".tsd-navigation");)n instanceof HTMLDetailsElement&&(n.open=!0),n=n.parentElement;if(e&&!e.checkVisibility()){let r=e.getBoundingClientRect().top-document.documentElement.clientHeight/4;document.querySelector(".site-menu").scrollTop=r}}updateIndexVisibility(){let e=document.querySelector(".tsd-index-content"),n=e?.open;e&&(e.open=!0),document.querySelectorAll(".tsd-index-section").forEach(r=>{r.style.display="block";let i=Array.from(r.querySelectorAll(".tsd-index-link")).every(s=>s.offsetParent==null);r.style.display=i?"none":"block"}),e&&(e.open=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 n=e.parentElement;for(;n&&n.tagName!=="SECTION";)n=n.parentElement;if(n&&n.offsetParent==null){this.alwaysVisibleMember=n,n.classList.add("always-visible");let r=document.createElement("p");r.classList.add("warning"),r.textContent="This member is normally hidden due to your filter settings.",n.prepend(r)}}listenForCodeCopies(){document.querySelectorAll("pre > button").forEach(e=>{let n;e.addEventListener("click",()=>{e.previousElementSibling instanceof HTMLElement&&navigator.clipboard.writeText(e.previousElementSibling.innerText.trim()),e.textContent="Copied!",e.classList.add("visible"),clearTimeout(n),n=setTimeout(()=>{e.classList.remove("visible"),n=setTimeout(()=>{e.textContent="Copy"},100)},1e3)})})}};var ie=(t,e=100)=>{let n;return()=>{clearTimeout(n),n=setTimeout(()=>t(),e)}};var de=De(ae());async function le(t,e){if(!window.searchData)return;let n=await fetch(window.searchData),r=new Blob([await n.arrayBuffer()]).stream().pipeThrough(new DecompressionStream("gzip")),i=await new Response(r).json();t.data=i,t.index=de.Index.load(i.index),e.classList.remove("loading"),e.classList.add("ready")}function he(){let t=document.getElementById("tsd-search");if(!t)return;let e={base:t.dataset.base+"/"},n=document.getElementById("tsd-search-script");t.classList.add("loading"),n&&(n.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),n.addEventListener("load",()=>{le(e,t)}),le(e,t));let r=document.querySelector("#tsd-search input"),i=document.querySelector("#tsd-search .results");if(!r||!i)throw new Error("The input field or the result list wrapper was not found");let s=!1;i.addEventListener("mousedown",()=>s=!0),i.addEventListener("mouseup",()=>{s=!1,t.classList.remove("has-focus")}),r.addEventListener("focus",()=>t.classList.add("has-focus")),r.addEventListener("blur",()=>{s||(s=!1,t.classList.remove("has-focus"))}),Ae(t,i,r,e)}function Ae(t,e,n,r){n.addEventListener("input",ie(()=>{Ve(t,e,n,r)},200));let i=!1;n.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?Ne(e,n):s.key=="Escape"?n.blur():s.key=="ArrowUp"?ue(e,-1):s.key==="ArrowDown"?ue(e,1):i=!1}),n.addEventListener("keypress",s=>{i&&s.preventDefault()}),document.body.addEventListener("keydown",s=>{s.altKey||s.ctrlKey||s.metaKey||!n.matches(":focus")&&s.key==="/"&&(n.focus(),s.preventDefault())})}function Ve(t,e,n,r){if(!r.index||!r.data)return;e.textContent="";let i=n.value.trim(),s;if(i){let o=i.split(" ").map(a=>a.length?`*${a}*`:"").join(" ");s=r.index.search(o)}else s=[];for(let o=0;oa.score-o.score);for(let o=0,a=Math.min(10,s.length);o `,d=ce(l.name,i);globalThis.DEBUG_SEARCH_WEIGHTS&&(d+=` (score: ${s[o].score.toFixed(2)})`),l.parent&&(d=`
+ ${ce(l.parent,i)}. ${d}`);let y=document.createElement("li");y.classList.value=l.classes??"";let p=document.createElement("a");p.href=r.base+l.url,p.innerHTML=u+d,y.append(p),e.appendChild(y)}}function ue(t,e){let n=t.querySelector(".current");if(!n)n=t.querySelector(e==1?"li:first-child":"li:last-child"),n&&n.classList.add("current");else{let r=n;if(e===1)do r=r.nextElementSibling??void 0;while(r instanceof HTMLElement&&r.offsetParent==null);else do r=r.previousElementSibling??void 0;while(r instanceof HTMLElement&&r.offsetParent==null);r&&(n.classList.remove("current"),r.classList.add("current"))}}function Ne(t,e){let n=t.querySelector(".current");if(n||(n=t.querySelector("li:first-child")),n){let r=n.querySelector("a");r&&(window.location.href=r.href),e.blur()}}function ce(t,e){if(e==="")return t;let n=t.toLocaleLowerCase(),r=e.toLocaleLowerCase(),i=[],s=0,o=n.indexOf(r);for(;o!=-1;)i.push(K(t.substring(s,o)),`${K(t.substring(o,o+r.length))} `),s=o+r.length,o=n.indexOf(r,s);return i.push(K(t.substring(s))),i.join("")}var He={"&":"&","<":"<",">":">","'":"'",'"':"""};function K(t){return t.replace(/[&<>"'"]/g,e=>He[e])}var I=class{constructor(e){this.el=e.el,this.app=e.app}};var F="mousedown",fe="mousemove",H="mouseup",J={x:0,y:0},pe=!1,ee=!1,Be=!1,D=!1,me=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(me?"is-mobile":"not-mobile");me&&"ontouchstart"in document.documentElement&&(Be=!0,F="touchstart",fe="touchmove",H="touchend");document.addEventListener(F,t=>{ee=!0,D=!1;let e=F=="touchstart"?t.targetTouches[0]:t;J.y=e.pageY||0,J.x=e.pageX||0});document.addEventListener(fe,t=>{if(ee&&!D){let e=F=="touchstart"?t.targetTouches[0]:t,n=J.x-(e.pageX||0),r=J.y-(e.pageY||0);D=Math.sqrt(n*n+r*r)>10}});document.addEventListener(H,()=>{ee=!1});document.addEventListener("click",t=>{pe&&(t.preventDefault(),t.stopImmediatePropagation(),pe=!1)});var X=class extends I{constructor(e){super(e),this.className=this.el.dataset.toggle||"",this.el.addEventListener(H,n=>this.onPointerUp(n)),this.el.addEventListener("click",n=>n.preventDefault()),document.addEventListener(F,n=>this.onDocumentPointerDown(n)),document.addEventListener(H,n=>this.onDocumentPointerUp(n))}setActive(e){if(this.active==e)return;this.active=e,document.documentElement.classList.toggle("has-"+this.className,e),this.el.classList.toggle("active",e);let n=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(n),setTimeout(()=>document.documentElement.classList.remove(n),500)}onPointerUp(e){D||(this.setActive(!0),e.preventDefault())}onDocumentPointerDown(e){if(this.active){if(e.target.closest(".col-sidebar, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(e){if(!D&&this.active&&e.target.closest(".col-sidebar")){let n=e.target.closest("a");if(n){let r=window.location.href;r.indexOf("#")!=-1&&(r=r.substring(0,r.indexOf("#"))),n.href.substring(0,r.length)==r&&setTimeout(()=>this.setActive(!1),250)}}}};var te;try{te=localStorage}catch{te={getItem(){return null},setItem(){}}}var Q=te;var ye=document.head.appendChild(document.createElement("style"));ye.dataset.for="filters";var Y=class extends I{constructor(e){super(e),this.key=`filter-${this.el.name}`,this.value=this.el.checked,this.el.addEventListener("change",()=>{this.setLocalStorage(this.el.checked)}),this.setLocalStorage(this.fromLocalStorage()),ye.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; }
+`,this.app.updateIndexVisibility()}fromLocalStorage(){let e=Q.getItem(this.key);return e?e==="true":this.el.checked}setLocalStorage(e){Q.setItem(this.key,e.toString()),this.value=e,this.handleValueChange()}handleValueChange(){this.el.checked=this.value,document.documentElement.classList.toggle(this.key,this.value),this.app.filterChanged(),this.app.updateIndexVisibility()}};var Z=class extends I{constructor(e){super(e),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());let r=this.summary.querySelector("a");r&&r.addEventListener("click",()=>{location.assign(r.href)}),this.update()}update(){this.icon.style.transform=`rotate(${this.el.open?0:-90}deg)`,Q.setItem(this.key,this.el.open.toString())}};function ge(t){let e=Q.getItem("tsd-theme")||"os";t.value=e,ve(e),t.addEventListener("change",()=>{Q.setItem("tsd-theme",t.value),ve(t.value)})}function ve(t){document.documentElement.dataset.theme=t}var Le;function be(){let t=document.getElementById("tsd-nav-script");t&&(t.addEventListener("load",xe),xe())}async function xe(){let t=document.getElementById("tsd-nav-container");if(!t||!window.navigationData)return;let n=await(await fetch(window.navigationData)).arrayBuffer(),r=new Blob([n]).stream().pipeThrough(new DecompressionStream("gzip")),i=await new Response(r).json();Le=t.dataset.base+"/",t.innerHTML="";for(let s of i)we(s,t,[]);window.app.createComponents(t),window.app.showPage(),window.app.ensureActivePageVisible()}function we(t,e,n){let r=e.appendChild(document.createElement("li"));if(t.children){let i=[...n,t.text],s=r.appendChild(document.createElement("details"));s.className=t.class?`${t.class} tsd-index-accordion`:"tsd-index-accordion",s.dataset.key=i.join("$");let o=s.appendChild(document.createElement("summary"));o.className="tsd-accordion-summary",o.innerHTML=' ',Ee(t,o);let a=s.appendChild(document.createElement("div"));a.className="tsd-accordion-details";let l=a.appendChild(document.createElement("ul"));l.className="tsd-nested-navigation";for(let u of t.children)we(u,l,i)}else Ee(t,r,t.class)}function Ee(t,e,n){if(t.path){let r=e.appendChild(document.createElement("a"));r.href=Le+t.path,n&&(r.className=n),location.pathname===r.pathname&&r.classList.add("current"),t.kind&&(r.innerHTML=` `),r.appendChild(document.createElement("span")).textContent=t.text}else e.appendChild(document.createElement("span")).textContent=t.text}G(X,"a[data-toggle]");G(Z,".tsd-index-accordion");G(Y,".tsd-filter-item input[type=checkbox]");var Se=document.getElementById("tsd-theme");Se&&ge(Se);var je=new U;Object.defineProperty(window,"app",{value:je});he();be();})();
+/*! 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
+ *)
+*/
diff --git a/assets/navigation.js b/assets/navigation.js
new file mode 100644
index 0000000..7b1fb84
--- /dev/null
+++ b/assets/navigation.js
@@ -0,0 +1 @@
+window.navigationData = "data:application/octet-stream;base64,H4sIAAAAAAAAA62R0YrCMBBFf0Xy3Halu7rQ530Rwf0AkZI2Ix2aTEsSxVX8d2OrtTaCsvgYJufcYe7ywCzsLEuYwlxXiusydG8ggxWFZSZCAmNBjMLRdhx9R2MWsJrb4gxUYiPBfHRg2oGpA9MWjAqrpINKJMGSOGB5gVJoIJYsu+zZb20dZm5yJAt6zfPn/is7CJpMj0Hnv4wu7i3XyLMXV7/XfsY9K1VacYl7+AGJCt3Ct4z1hvJmrWcZvuQ+cfrVSzR/ZPnuHykt6JlXPbeGpvxh5ZMo9itv/761ZV/5SrEtNc/EomEeXcYXD6AHV1mdAEUl1ccXAwAA"
\ No newline at end of file
diff --git a/assets/search.js b/assets/search.js
new file mode 100644
index 0000000..2570898
--- /dev/null
+++ b/assets/search.js
@@ -0,0 +1 @@
+window.searchData = "data:application/octet-stream;base64,H4sIAAAAAAAAA61VTY+bMBD9L+7VYTGYr5x7WVVqb71EUUSCo6LwERmyTRvlv3fAAeNgL+yWS2DIezPPM8/2DfHyd4XWmxs6pUWC1g5GRZwztEZ5euBlHvPTil1rVlRpWaxO+2RVsKpmCcLowrMGViaXjFUvPXzXw3cA3wm49avOM+AcsriqGBRE6I77mp7fV339ca6BWvX506Jm/Bgfpkt0VE0tjM4xZ0U9vSypitgO7WUlLEvzFJT8r64vw0yfUdinM0l9i3ka7zP2dTHJuoxLSXel4R5jE1q7mrOMtdDEfdnEouR5nKV/NV08XopDu4opZeMcy+us/hR1fP24NsFbSI8cIWct/p1jQiCWPhnGWecdBmO9n9n/E9VnbPmRjmV2+ZSw+Rt7lsCBLwX+2z75rtpAGnSs7Ynz4cltMaw9YVe0vqE3xhu/AtCxXCsC5jFlWdLcdEIi5C3zvMm1ffz3kx3qkjcIAXmxEd7YmEACP8Ske3FwZFHqYlc8t1u86VK1jPZDyycQUUxCK6COAiMKzIHI08EcBeZC5OtgrgKjEAXYoZZHIwVGFZgHUaiDeQrMhyjSwXwFFkDkYEIsl1BozOOFQPOoFRKVGSjM0NSjUIFFph5FasdtU5PI02iaERCiWxkR02nNBC4CZ70KU4EtBhv5hnYPs3md6W/IgZ87RlHzuEuHNVFToj9Gh3Qi6baBJzaCpASSQg2UtOwOS0mjkkaE0NDAhl01JDpPEjEKDMT+yhjS7ekVdpeFJLmza/bXrHY6oczjGRKIo0SZyUCyqaxgQafG2slgpoQY+N3NLWmRZPkGUndga5fqS74rWka0/QZrn9MzZCgAu9ne7/8AgDHYMgUMAAA=";
\ No newline at end of file
diff --git a/assets/style.css b/assets/style.css
new file mode 100644
index 0000000..778b949
--- /dev/null
+++ b/assets/style.css
@@ -0,0 +1,1412 @@
+:root {
+ /* Light */
+ --light-color-background: #f2f4f8;
+ --light-color-background-secondary: #eff0f1;
+ --light-color-warning-text: #222;
+ --light-color-background-warning: #e6e600;
+ --light-color-icon-background: var(--light-color-background);
+ --light-color-accent: #c5c7c9;
+ --light-color-active-menu-item: var(--light-color-accent);
+ --light-color-text: #222;
+ --light-color-text-aside: #6e6e6e;
+ --light-color-link: #1f70c2;
+
+ --light-color-ts-keyword: #056bd6;
+ --light-color-ts-project: #b111c9;
+ --light-color-ts-module: var(--light-color-ts-project);
+ --light-color-ts-namespace: var(--light-color-ts-project);
+ --light-color-ts-enum: #7e6f15;
+ --light-color-ts-enum-member: var(--light-color-ts-enum);
+ --light-color-ts-variable: #4760ec;
+ --light-color-ts-function: #572be7;
+ --light-color-ts-class: #1f70c2;
+ --light-color-ts-interface: #108024;
+ --light-color-ts-constructor: var(--light-color-ts-class);
+ --light-color-ts-property: var(--light-color-ts-variable);
+ --light-color-ts-method: var(--light-color-ts-function);
+ --light-color-ts-call-signature: var(--light-color-ts-method);
+ --light-color-ts-index-signature: var(--light-color-ts-property);
+ --light-color-ts-constructor-signature: var(--light-color-ts-constructor);
+ --light-color-ts-parameter: var(--light-color-ts-variable);
+ /* type literal not included as links will never be generated to it */
+ --light-color-ts-type-parameter: #a55c0e;
+ --light-color-ts-accessor: var(--light-color-ts-property);
+ --light-color-ts-get-signature: var(--light-color-ts-accessor);
+ --light-color-ts-set-signature: var(--light-color-ts-accessor);
+ --light-color-ts-type-alias: #d51270;
+ /* reference not included as links will be colored with the kind that it points to */
+
+ --light-external-icon: url("data:image/svg+xml;utf8, ");
+ --light-color-scheme: light;
+
+ /* Dark */
+ --dark-color-background: #2b2e33;
+ --dark-color-background-secondary: #1e2024;
+ --dark-color-background-warning: #bebe00;
+ --dark-color-warning-text: #222;
+ --dark-color-icon-background: var(--dark-color-background-secondary);
+ --dark-color-accent: #9096a2;
+ --dark-color-active-menu-item: #5d5d6a;
+ --dark-color-text: #f5f5f5;
+ --dark-color-text-aside: #dddddd;
+ --dark-color-link: #00aff4;
+
+ --dark-color-ts-keyword: #3399ff;
+ --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: #a280ff;
+ --dark-color-ts-class: #8ac4ff;
+ --dark-color-ts-interface: #6cff87;
+ --dark-color-ts-constructor: var(--dark-color-ts-class);
+ --dark-color-ts-property: var(--dark-color-ts-variable);
+ --dark-color-ts-method: var(--dark-color-ts-function);
+ --dark-color-ts-call-signature: var(--dark-color-ts-method);
+ --dark-color-ts-index-signature: var(--dark-color-ts-property);
+ --dark-color-ts-constructor-signature: var(--dark-color-ts-constructor);
+ --dark-color-ts-parameter: var(--dark-color-ts-variable);
+ /* type literal not included as links will never be generated to it */
+ --dark-color-ts-type-parameter: #e07d13;
+ --dark-color-ts-accessor: var(--dark-color-ts-property);
+ --dark-color-ts-get-signature: var(--dark-color-ts-accessor);
+ --dark-color-ts-set-signature: var(--dark-color-ts-accessor);
+ --dark-color-ts-type-alias: #ff6492;
+ /* reference not included as links will be colored with the kind that it points to */
+
+ --dark-external-icon: url("data:image/svg+xml;utf8, ");
+ --dark-color-scheme: dark;
+}
+
+@media (prefers-color-scheme: light) {
+ :root {
+ --color-background: var(--light-color-background);
+ --color-background-secondary: var(--light-color-background-secondary);
+ --color-background-warning: var(--light-color-background-warning);
+ --color-warning-text: var(--light-color-warning-text);
+ --color-icon-background: var(--light-color-icon-background);
+ --color-accent: var(--light-color-accent);
+ --color-active-menu-item: var(--light-color-active-menu-item);
+ --color-text: var(--light-color-text);
+ --color-text-aside: var(--light-color-text-aside);
+ --color-link: var(--light-color-link);
+
+ --color-ts-keyword: var(--light-color-ts-keyword);
+ --color-ts-module: var(--light-color-ts-module);
+ --color-ts-namespace: var(--light-color-ts-namespace);
+ --color-ts-enum: var(--light-color-ts-enum);
+ --color-ts-enum-member: var(--light-color-ts-enum-member);
+ --color-ts-variable: var(--light-color-ts-variable);
+ --color-ts-function: var(--light-color-ts-function);
+ --color-ts-class: var(--light-color-ts-class);
+ --color-ts-interface: var(--light-color-ts-interface);
+ --color-ts-constructor: var(--light-color-ts-constructor);
+ --color-ts-property: var(--light-color-ts-property);
+ --color-ts-method: var(--light-color-ts-method);
+ --color-ts-call-signature: var(--light-color-ts-call-signature);
+ --color-ts-index-signature: var(--light-color-ts-index-signature);
+ --color-ts-constructor-signature: var(
+ --light-color-ts-constructor-signature
+ );
+ --color-ts-parameter: var(--light-color-ts-parameter);
+ --color-ts-type-parameter: var(--light-color-ts-type-parameter);
+ --color-ts-accessor: var(--light-color-ts-accessor);
+ --color-ts-get-signature: var(--light-color-ts-get-signature);
+ --color-ts-set-signature: var(--light-color-ts-set-signature);
+ --color-ts-type-alias: var(--light-color-ts-type-alias);
+
+ --external-icon: var(--light-external-icon);
+ --color-scheme: var(--light-color-scheme);
+ }
+}
+
+@media (prefers-color-scheme: dark) {
+ :root {
+ --color-background: var(--dark-color-background);
+ --color-background-secondary: var(--dark-color-background-secondary);
+ --color-background-warning: var(--dark-color-background-warning);
+ --color-warning-text: var(--dark-color-warning-text);
+ --color-icon-background: var(--dark-color-icon-background);
+ --color-accent: var(--dark-color-accent);
+ --color-active-menu-item: var(--dark-color-active-menu-item);
+ --color-text: var(--dark-color-text);
+ --color-text-aside: var(--dark-color-text-aside);
+ --color-link: var(--dark-color-link);
+
+ --color-ts-keyword: var(--dark-color-ts-keyword);
+ --color-ts-module: var(--dark-color-ts-module);
+ --color-ts-namespace: var(--dark-color-ts-namespace);
+ --color-ts-enum: var(--dark-color-ts-enum);
+ --color-ts-enum-member: var(--dark-color-ts-enum-member);
+ --color-ts-variable: var(--dark-color-ts-variable);
+ --color-ts-function: var(--dark-color-ts-function);
+ --color-ts-class: var(--dark-color-ts-class);
+ --color-ts-interface: var(--dark-color-ts-interface);
+ --color-ts-constructor: var(--dark-color-ts-constructor);
+ --color-ts-property: var(--dark-color-ts-property);
+ --color-ts-method: var(--dark-color-ts-method);
+ --color-ts-call-signature: var(--dark-color-ts-call-signature);
+ --color-ts-index-signature: var(--dark-color-ts-index-signature);
+ --color-ts-constructor-signature: var(
+ --dark-color-ts-constructor-signature
+ );
+ --color-ts-parameter: var(--dark-color-ts-parameter);
+ --color-ts-type-parameter: var(--dark-color-ts-type-parameter);
+ --color-ts-accessor: var(--dark-color-ts-accessor);
+ --color-ts-get-signature: var(--dark-color-ts-get-signature);
+ --color-ts-set-signature: var(--dark-color-ts-set-signature);
+ --color-ts-type-alias: var(--dark-color-ts-type-alias);
+
+ --external-icon: var(--dark-external-icon);
+ --color-scheme: var(--dark-color-scheme);
+ }
+}
+
+html {
+ color-scheme: var(--color-scheme);
+}
+
+body {
+ margin: 0;
+}
+
+:root[data-theme="light"] {
+ --color-background: var(--light-color-background);
+ --color-background-secondary: var(--light-color-background-secondary);
+ --color-background-warning: var(--light-color-background-warning);
+ --color-warning-text: var(--light-color-warning-text);
+ --color-icon-background: var(--light-color-icon-background);
+ --color-accent: var(--light-color-accent);
+ --color-active-menu-item: var(--light-color-active-menu-item);
+ --color-text: var(--light-color-text);
+ --color-text-aside: var(--light-color-text-aside);
+ --color-link: var(--light-color-link);
+
+ --color-ts-keyword: var(--light-color-ts-keyword);
+ --color-ts-module: var(--light-color-ts-module);
+ --color-ts-namespace: var(--light-color-ts-namespace);
+ --color-ts-enum: var(--light-color-ts-enum);
+ --color-ts-enum-member: var(--light-color-ts-enum-member);
+ --color-ts-variable: var(--light-color-ts-variable);
+ --color-ts-function: var(--light-color-ts-function);
+ --color-ts-class: var(--light-color-ts-class);
+ --color-ts-interface: var(--light-color-ts-interface);
+ --color-ts-constructor: var(--light-color-ts-constructor);
+ --color-ts-property: var(--light-color-ts-property);
+ --color-ts-method: var(--light-color-ts-method);
+ --color-ts-call-signature: var(--light-color-ts-call-signature);
+ --color-ts-index-signature: var(--light-color-ts-index-signature);
+ --color-ts-constructor-signature: var(
+ --light-color-ts-constructor-signature
+ );
+ --color-ts-parameter: var(--light-color-ts-parameter);
+ --color-ts-type-parameter: var(--light-color-ts-type-parameter);
+ --color-ts-accessor: var(--light-color-ts-accessor);
+ --color-ts-get-signature: var(--light-color-ts-get-signature);
+ --color-ts-set-signature: var(--light-color-ts-set-signature);
+ --color-ts-type-alias: var(--light-color-ts-type-alias);
+
+ --external-icon: var(--light-external-icon);
+ --color-scheme: var(--light-color-scheme);
+}
+
+:root[data-theme="dark"] {
+ --color-background: var(--dark-color-background);
+ --color-background-secondary: var(--dark-color-background-secondary);
+ --color-background-warning: var(--dark-color-background-warning);
+ --color-warning-text: var(--dark-color-warning-text);
+ --color-icon-background: var(--dark-color-icon-background);
+ --color-accent: var(--dark-color-accent);
+ --color-active-menu-item: var(--dark-color-active-menu-item);
+ --color-text: var(--dark-color-text);
+ --color-text-aside: var(--dark-color-text-aside);
+ --color-link: var(--dark-color-link);
+
+ --color-ts-keyword: var(--dark-color-ts-keyword);
+ --color-ts-module: var(--dark-color-ts-module);
+ --color-ts-namespace: var(--dark-color-ts-namespace);
+ --color-ts-enum: var(--dark-color-ts-enum);
+ --color-ts-enum-member: var(--dark-color-ts-enum-member);
+ --color-ts-variable: var(--dark-color-ts-variable);
+ --color-ts-function: var(--dark-color-ts-function);
+ --color-ts-class: var(--dark-color-ts-class);
+ --color-ts-interface: var(--dark-color-ts-interface);
+ --color-ts-constructor: var(--dark-color-ts-constructor);
+ --color-ts-property: var(--dark-color-ts-property);
+ --color-ts-method: var(--dark-color-ts-method);
+ --color-ts-call-signature: var(--dark-color-ts-call-signature);
+ --color-ts-index-signature: var(--dark-color-ts-index-signature);
+ --color-ts-constructor-signature: var(
+ --dark-color-ts-constructor-signature
+ );
+ --color-ts-parameter: var(--dark-color-ts-parameter);
+ --color-ts-type-parameter: var(--dark-color-ts-type-parameter);
+ --color-ts-accessor: var(--dark-color-ts-accessor);
+ --color-ts-get-signature: var(--dark-color-ts-get-signature);
+ --color-ts-set-signature: var(--dark-color-ts-set-signature);
+ --color-ts-type-alias: var(--dark-color-ts-type-alias);
+
+ --external-icon: var(--dark-external-icon);
+ --color-scheme: var(--dark-color-scheme);
+}
+
+.always-visible,
+.always-visible .tsd-signatures {
+ display: inherit !important;
+}
+
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+ line-height: 1.2;
+}
+
+h1 > a:not(.link),
+h2 > a:not(.link),
+h3 > a:not(.link),
+h4 > a:not(.link),
+h5 > a:not(.link),
+h6 > a:not(.link) {
+ text-decoration: none;
+ color: var(--color-text);
+}
+
+h1 {
+ font-size: 1.875rem;
+ margin: 0.67rem 0;
+}
+
+h2 {
+ font-size: 1.5rem;
+ margin: 0.83rem 0;
+}
+
+h3 {
+ font-size: 1.25rem;
+ margin: 1rem 0;
+}
+
+h4 {
+ font-size: 1.05rem;
+ margin: 1.33rem 0;
+}
+
+h5 {
+ font-size: 1rem;
+ margin: 1.5rem 0;
+}
+
+h6 {
+ font-size: 0.875rem;
+ margin: 2.33rem 0;
+}
+
+.uppercase {
+ text-transform: uppercase;
+}
+
+dl,
+menu,
+ol,
+ul {
+ margin: 1em 0;
+}
+
+dd {
+ margin: 0 0 0 40px;
+}
+
+.container {
+ max-width: 1700px;
+ padding: 0 2rem;
+}
+
+/* Footer */
+footer {
+ border-top: 1px solid var(--color-accent);
+ padding-top: 1rem;
+ padding-bottom: 1rem;
+ max-height: 3.5rem;
+}
+.tsd-generator {
+ margin: 0 1em;
+}
+
+.container-main {
+ margin: 0 auto;
+ /* toolbar, footer, margin */
+ min-height: calc(100vh - 41px - 56px - 4rem);
+}
+
+@keyframes fade-in {
+ from {
+ opacity: 0;
+ }
+ to {
+ opacity: 1;
+ }
+}
+@keyframes fade-out {
+ from {
+ opacity: 1;
+ visibility: visible;
+ }
+ to {
+ opacity: 0;
+ }
+}
+@keyframes fade-in-delayed {
+ 0% {
+ opacity: 0;
+ }
+ 33% {
+ opacity: 0;
+ }
+ 100% {
+ opacity: 1;
+ }
+}
+@keyframes fade-out-delayed {
+ 0% {
+ opacity: 1;
+ visibility: visible;
+ }
+ 66% {
+ opacity: 0;
+ }
+ 100% {
+ opacity: 0;
+ }
+}
+@keyframes pop-in-from-right {
+ from {
+ transform: translate(100%, 0);
+ }
+ to {
+ transform: translate(0, 0);
+ }
+}
+@keyframes pop-out-to-right {
+ from {
+ transform: translate(0, 0);
+ visibility: visible;
+ }
+ to {
+ transform: translate(100%, 0);
+ }
+}
+body {
+ background: var(--color-background);
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans",
+ Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
+ font-size: 16px;
+ color: var(--color-text);
+}
+
+a {
+ color: var(--color-link);
+ text-decoration: none;
+}
+a:hover {
+ text-decoration: underline;
+}
+a.external[target="_blank"] {
+ background-image: var(--external-icon);
+ background-position: top 3px right;
+ background-repeat: no-repeat;
+ padding-right: 13px;
+}
+
+code,
+pre {
+ font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
+ padding: 0.2em;
+ margin: 0;
+ font-size: 0.875rem;
+ border-radius: 0.8em;
+}
+
+pre {
+ position: relative;
+ white-space: pre;
+ white-space: pre-wrap;
+ word-wrap: break-word;
+ padding: 10px;
+ 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;
+ padding-left: 1em;
+ border-left: 4px solid gray;
+}
+
+.tsd-typography {
+ line-height: 1.333em;
+}
+.tsd-typography ul {
+ list-style: square;
+ padding: 0 0 0 20px;
+ margin: 0;
+}
+.tsd-typography .tsd-index-panel h3,
+.tsd-index-panel .tsd-typography h3,
+.tsd-typography h4,
+.tsd-typography h5,
+.tsd-typography h6 {
+ font-size: 1em;
+}
+.tsd-typography h5,
+.tsd-typography h6 {
+ font-weight: normal;
+}
+.tsd-typography p,
+.tsd-typography ul,
+.tsd-typography ol {
+ margin: 1em 0;
+}
+.tsd-typography table {
+ border-collapse: collapse;
+ border: none;
+}
+.tsd-typography td,
+.tsd-typography th {
+ padding: 6px 13px;
+ border: 1px solid var(--color-accent);
+}
+.tsd-typography thead,
+.tsd-typography tr:nth-child(even) {
+ background-color: var(--color-background-secondary);
+}
+
+.tsd-breadcrumb {
+ margin: 0;
+ padding: 0;
+ color: var(--color-text-aside);
+}
+.tsd-breadcrumb a {
+ color: var(--color-text-aside);
+ text-decoration: none;
+}
+.tsd-breadcrumb a:hover {
+ text-decoration: underline;
+}
+.tsd-breadcrumb li {
+ display: inline;
+}
+.tsd-breadcrumb li:after {
+ content: " / ";
+}
+
+.tsd-comment-tags {
+ display: flex;
+ flex-direction: column;
+}
+dl.tsd-comment-tag-group {
+ display: flex;
+ align-items: center;
+ overflow: hidden;
+ margin: 0.5em 0;
+}
+dl.tsd-comment-tag-group dt {
+ display: flex;
+ margin-right: 0.5em;
+ font-size: 0.875em;
+ font-weight: normal;
+}
+dl.tsd-comment-tag-group dd {
+ margin: 0;
+}
+code.tsd-tag {
+ padding: 0.25em 0.4em;
+ border: 0.1em solid var(--color-accent);
+ margin-right: 0.25em;
+ font-size: 70%;
+}
+h1 code.tsd-tag:first-of-type {
+ margin-left: 0.25em;
+}
+
+dl.tsd-comment-tag-group dd:before,
+dl.tsd-comment-tag-group dd:after {
+ content: " ";
+}
+dl.tsd-comment-tag-group dd pre,
+dl.tsd-comment-tag-group dd:after {
+ clear: both;
+}
+dl.tsd-comment-tag-group p {
+ margin: 0;
+}
+
+.tsd-panel.tsd-comment .lead {
+ font-size: 1.1em;
+ line-height: 1.333em;
+ margin-bottom: 2em;
+}
+.tsd-panel.tsd-comment .lead:last-child {
+ margin-bottom: 0;
+}
+
+.tsd-filter-visibility h4 {
+ font-size: 1rem;
+ padding-top: 0.75rem;
+ padding-bottom: 0.5rem;
+ margin: 0;
+}
+.tsd-filter-item:not(:last-child) {
+ margin-bottom: 0.5rem;
+}
+.tsd-filter-input {
+ display: flex;
+ width: fit-content;
+ width: -moz-fit-content;
+ align-items: center;
+ user-select: none;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ cursor: pointer;
+}
+.tsd-filter-input input[type="checkbox"] {
+ cursor: pointer;
+ position: absolute;
+ width: 1.5em;
+ height: 1.5em;
+ opacity: 0;
+}
+.tsd-filter-input input[type="checkbox"]:disabled {
+ pointer-events: none;
+}
+.tsd-filter-input svg {
+ cursor: pointer;
+ width: 1.5em;
+ height: 1.5em;
+ margin-right: 0.5em;
+ border-radius: 0.33em;
+ /* Leaving this at full opacity breaks event listeners on Firefox.
+ Don't remove unless you know what you're doing. */
+ opacity: 0.99;
+}
+.tsd-filter-input input[type="checkbox"]:focus + svg {
+ transform: scale(0.95);
+}
+.tsd-filter-input input[type="checkbox"]:focus:not(:focus-visible) + svg {
+ transform: scale(1);
+}
+.tsd-checkbox-background {
+ fill: var(--color-accent);
+}
+input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark {
+ stroke: var(--color-text);
+}
+.tsd-filter-input input:disabled ~ svg > .tsd-checkbox-background {
+ fill: var(--color-background);
+ stroke: var(--color-accent);
+ stroke-width: 0.25rem;
+}
+.tsd-filter-input input:disabled ~ svg > .tsd-checkbox-checkmark {
+ stroke: var(--color-accent);
+}
+
+.tsd-theme-toggle {
+ padding-top: 0.75rem;
+}
+.tsd-theme-toggle > h4 {
+ display: inline;
+ vertical-align: middle;
+ margin-right: 0.75rem;
+}
+
+.tsd-hierarchy {
+ list-style: square;
+ margin: 0;
+}
+.tsd-hierarchy .target {
+ font-weight: bold;
+}
+
+.tsd-full-hierarchy:not(:last-child) {
+ margin-bottom: 1em;
+ padding-bottom: 1em;
+ border-bottom: 1px solid var(--color-accent);
+}
+.tsd-full-hierarchy,
+.tsd-full-hierarchy ul {
+ list-style: none;
+ margin: 0;
+ padding: 0;
+}
+.tsd-full-hierarchy ul {
+ padding-left: 1.5rem;
+}
+.tsd-full-hierarchy a {
+ padding: 0.25rem 0 !important;
+ font-size: 1rem;
+ display: inline-flex;
+ align-items: center;
+ color: var(--color-text);
+}
+
+.tsd-panel-group.tsd-index-group {
+ margin-bottom: 0;
+}
+.tsd-index-panel .tsd-index-list {
+ list-style: none;
+ line-height: 1.333em;
+ margin: 0;
+ padding: 0.25rem 0 0 0;
+ overflow: hidden;
+ display: grid;
+ grid-template-columns: repeat(3, 1fr);
+ column-gap: 1rem;
+ grid-template-rows: auto;
+}
+@media (max-width: 1024px) {
+ .tsd-index-panel .tsd-index-list {
+ grid-template-columns: repeat(2, 1fr);
+ }
+}
+@media (max-width: 768px) {
+ .tsd-index-panel .tsd-index-list {
+ grid-template-columns: repeat(1, 1fr);
+ }
+}
+.tsd-index-panel .tsd-index-list li {
+ -webkit-page-break-inside: avoid;
+ -moz-page-break-inside: avoid;
+ -ms-page-break-inside: avoid;
+ -o-page-break-inside: avoid;
+ page-break-inside: avoid;
+}
+
+.tsd-flag {
+ display: inline-block;
+ padding: 0.25em 0.4em;
+ border-radius: 4px;
+ color: var(--color-comment-tag-text);
+ background-color: var(--color-comment-tag);
+ text-indent: 0;
+ font-size: 75%;
+ line-height: 1;
+ font-weight: normal;
+}
+
+.tsd-anchor {
+ position: relative;
+ top: -100px;
+}
+
+.tsd-member {
+ position: relative;
+}
+.tsd-member .tsd-anchor + h3 {
+ display: flex;
+ align-items: center;
+ margin-top: 0;
+ margin-bottom: 0;
+ border-bottom: none;
+}
+
+.tsd-navigation.settings {
+ margin: 1rem 0;
+}
+.tsd-navigation > a,
+.tsd-navigation .tsd-accordion-summary {
+ width: calc(100% - 0.25rem);
+ display: flex;
+ align-items: center;
+}
+.tsd-navigation a,
+.tsd-navigation summary > span,
+.tsd-page-navigation a {
+ display: flex;
+ width: calc(100% - 0.25rem);
+ align-items: center;
+ padding: 0.25rem;
+ color: var(--color-text);
+ text-decoration: none;
+ box-sizing: border-box;
+}
+.tsd-navigation a.current,
+.tsd-page-navigation a.current {
+ background: var(--color-active-menu-item);
+}
+.tsd-navigation a:hover,
+.tsd-page-navigation a:hover {
+ text-decoration: underline;
+}
+.tsd-navigation ul,
+.tsd-page-navigation ul {
+ margin-top: 0;
+ margin-bottom: 0;
+ padding: 0;
+ list-style: none;
+}
+.tsd-navigation li,
+.tsd-page-navigation li {
+ padding: 0;
+ max-width: 100%;
+}
+.tsd-nested-navigation {
+ margin-left: 3rem;
+}
+.tsd-nested-navigation > li > details {
+ margin-left: -1.5rem;
+}
+.tsd-small-nested-navigation {
+ margin-left: 1.5rem;
+}
+.tsd-small-nested-navigation > li > details {
+ margin-left: -1.5rem;
+}
+
+.tsd-page-navigation ul {
+ padding-left: 1.75rem;
+}
+
+#tsd-sidebar-links a {
+ margin-top: 0;
+ margin-bottom: 0.5rem;
+ line-height: 1.25rem;
+}
+#tsd-sidebar-links a:last-of-type {
+ margin-bottom: 0;
+}
+
+a.tsd-index-link {
+ padding: 0.25rem 0 !important;
+ font-size: 1rem;
+ line-height: 1.25rem;
+ display: inline-flex;
+ align-items: center;
+ color: var(--color-text);
+}
+.tsd-accordion-summary {
+ list-style-type: none; /* hide marker on non-safari */
+ outline: none; /* broken on safari, so just hide it */
+}
+.tsd-accordion-summary::-webkit-details-marker {
+ display: none; /* hide marker on safari */
+}
+.tsd-accordion-summary,
+.tsd-accordion-summary a {
+ user-select: none;
+ -moz-user-select: none;
+ -webkit-user-select: none;
+ -ms-user-select: none;
+
+ cursor: pointer;
+}
+.tsd-accordion-summary a {
+ width: calc(100% - 1.5rem);
+}
+.tsd-accordion-summary > * {
+ margin-top: 0;
+ margin-bottom: 0;
+ padding-top: 0;
+ padding-bottom: 0;
+}
+.tsd-index-accordion .tsd-accordion-summary > svg {
+ margin-left: 0.25rem;
+}
+.tsd-index-content > :not(:first-child) {
+ margin-top: 0.75rem;
+}
+.tsd-index-heading {
+ margin-top: 1.5rem;
+ margin-bottom: 0.75rem;
+}
+
+.tsd-kind-icon {
+ margin-right: 0.5rem;
+ width: 1.25rem;
+ height: 1.25rem;
+ min-width: 1.25rem;
+ min-height: 1.25rem;
+}
+.tsd-kind-icon path {
+ transform-origin: center;
+ transform: scale(1.1);
+}
+.tsd-signature > .tsd-kind-icon {
+ margin-right: 0.8rem;
+}
+
+.tsd-panel {
+ margin-bottom: 2.5rem;
+}
+.tsd-panel.tsd-member {
+ margin-bottom: 4rem;
+}
+.tsd-panel:empty {
+ display: none;
+}
+.tsd-panel > h1,
+.tsd-panel > h2,
+.tsd-panel > h3 {
+ margin: 1.5rem -1.5rem 0.75rem -1.5rem;
+ padding: 0 1.5rem 0.75rem 1.5rem;
+}
+.tsd-panel > h1.tsd-before-signature,
+.tsd-panel > h2.tsd-before-signature,
+.tsd-panel > h3.tsd-before-signature {
+ margin-bottom: 0;
+ border-bottom: none;
+}
+
+.tsd-panel-group {
+ margin: 4rem 0;
+}
+.tsd-panel-group.tsd-index-group {
+ margin: 2rem 0;
+}
+.tsd-panel-group.tsd-index-group details {
+ margin: 2rem 0;
+}
+
+#tsd-search {
+ transition: background-color 0.2s;
+}
+#tsd-search .title {
+ position: relative;
+ z-index: 2;
+}
+#tsd-search .field {
+ position: absolute;
+ left: 0;
+ top: 0;
+ right: 2.5rem;
+ height: 100%;
+}
+#tsd-search .field input {
+ box-sizing: border-box;
+ position: relative;
+ top: -50px;
+ z-index: 1;
+ width: 100%;
+ padding: 0 10px;
+ opacity: 0;
+ outline: 0;
+ border: 0;
+ background: transparent;
+ color: var(--color-text);
+}
+#tsd-search .field label {
+ position: absolute;
+ overflow: hidden;
+ right: -40px;
+}
+#tsd-search .field input,
+#tsd-search .title,
+#tsd-toolbar-links a {
+ transition: opacity 0.2s;
+}
+#tsd-search .results {
+ position: absolute;
+ visibility: hidden;
+ top: 40px;
+ width: 100%;
+ margin: 0;
+ padding: 0;
+ list-style: none;
+ box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
+}
+#tsd-search .results li {
+ background-color: var(--color-background);
+ line-height: initial;
+ padding: 4px;
+}
+#tsd-search .results li:nth-child(even) {
+ background-color: var(--color-background-secondary);
+}
+#tsd-search .results li.state {
+ display: none;
+}
+#tsd-search .results li.current:not(.no-results),
+#tsd-search .results li:hover:not(.no-results) {
+ background-color: var(--color-accent);
+}
+#tsd-search .results a {
+ display: flex;
+ align-items: center;
+ padding: 0.25rem;
+ box-sizing: border-box;
+}
+#tsd-search .results a:before {
+ top: 10px;
+}
+#tsd-search .results span.parent {
+ color: var(--color-text-aside);
+ font-weight: normal;
+}
+#tsd-search.has-focus {
+ background-color: var(--color-accent);
+}
+#tsd-search.has-focus .field input {
+ top: 0;
+ opacity: 1;
+}
+#tsd-search.has-focus .title,
+#tsd-search.has-focus #tsd-toolbar-links a {
+ z-index: 0;
+ opacity: 0;
+}
+#tsd-search.has-focus .results {
+ visibility: visible;
+}
+#tsd-search.loading .results li.state.loading {
+ display: block;
+}
+#tsd-search.failure .results li.state.failure {
+ display: block;
+}
+
+#tsd-toolbar-links {
+ position: absolute;
+ top: 0;
+ right: 2rem;
+ height: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: flex-end;
+}
+#tsd-toolbar-links a {
+ margin-left: 1.5rem;
+}
+#tsd-toolbar-links a:hover {
+ text-decoration: underline;
+}
+
+.tsd-signature {
+ margin: 0 0 1rem 0;
+ padding: 1rem 0.5rem;
+ border: 1px solid var(--color-accent);
+ font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
+ font-size: 14px;
+ overflow-x: auto;
+}
+
+.tsd-signature-keyword {
+ color: var(--color-ts-keyword);
+ font-weight: normal;
+}
+
+.tsd-signature-symbol {
+ color: var(--color-text-aside);
+ font-weight: normal;
+}
+
+.tsd-signature-type {
+ font-style: italic;
+ font-weight: normal;
+}
+
+.tsd-signatures {
+ padding: 0;
+ margin: 0 0 1em 0;
+ list-style-type: none;
+}
+.tsd-signatures .tsd-signature {
+ margin: 0;
+ border-color: var(--color-accent);
+ border-width: 1px 0;
+ transition: background-color 0.1s;
+}
+.tsd-description .tsd-signatures .tsd-signature {
+ border-width: 1px;
+}
+
+ul.tsd-parameter-list,
+ul.tsd-type-parameter-list {
+ list-style: square;
+ margin: 0;
+ padding-left: 20px;
+}
+ul.tsd-parameter-list > li.tsd-parameter-signature,
+ul.tsd-type-parameter-list > li.tsd-parameter-signature {
+ list-style: none;
+ margin-left: -20px;
+}
+ul.tsd-parameter-list h5,
+ul.tsd-type-parameter-list h5 {
+ font-size: 16px;
+ margin: 1em 0 0.5em 0;
+}
+.tsd-sources {
+ margin-top: 1rem;
+ font-size: 0.875em;
+}
+.tsd-sources a {
+ color: var(--color-text-aside);
+ text-decoration: underline;
+}
+.tsd-sources ul {
+ list-style: none;
+ padding: 0;
+}
+
+.tsd-page-toolbar {
+ position: sticky;
+ z-index: 1;
+ top: 0;
+ left: 0;
+ width: 100%;
+ color: var(--color-text);
+ background: var(--color-background-secondary);
+ border-bottom: 1px var(--color-accent) solid;
+ transition: transform 0.3s ease-in-out;
+}
+.tsd-page-toolbar a {
+ color: var(--color-text);
+ text-decoration: none;
+}
+.tsd-page-toolbar a.title {
+ font-weight: bold;
+}
+.tsd-page-toolbar a.title:hover {
+ text-decoration: underline;
+}
+.tsd-page-toolbar .tsd-toolbar-contents {
+ display: flex;
+ justify-content: space-between;
+ height: 2.5rem;
+ margin: 0 auto;
+}
+.tsd-page-toolbar .table-cell {
+ position: relative;
+ white-space: nowrap;
+ line-height: 40px;
+}
+.tsd-page-toolbar .table-cell:first-child {
+ width: 100%;
+}
+.tsd-page-toolbar .tsd-toolbar-icon {
+ box-sizing: border-box;
+ line-height: 0;
+ padding: 12px 0;
+}
+
+.tsd-widget {
+ display: inline-block;
+ overflow: hidden;
+ opacity: 0.8;
+ height: 40px;
+ transition:
+ opacity 0.1s,
+ background-color 0.2s;
+ vertical-align: bottom;
+ cursor: pointer;
+}
+.tsd-widget:hover {
+ opacity: 0.9;
+}
+.tsd-widget.active {
+ opacity: 1;
+ background-color: var(--color-accent);
+}
+.tsd-widget.no-caption {
+ width: 40px;
+}
+.tsd-widget.no-caption:before {
+ margin: 0;
+}
+
+.tsd-widget.options,
+.tsd-widget.menu {
+ display: none;
+}
+input[type="checkbox"] + .tsd-widget:before {
+ background-position: -120px 0;
+}
+input[type="checkbox"]:checked + .tsd-widget:before {
+ background-position: -160px 0;
+}
+
+img {
+ max-width: 100%;
+}
+
+.tsd-anchor-icon {
+ display: inline-flex;
+ align-items: center;
+ margin-left: 0.5rem;
+ vertical-align: middle;
+ color: var(--color-text);
+}
+
+.tsd-anchor-icon svg {
+ width: 1em;
+ height: 1em;
+ visibility: hidden;
+}
+
+.tsd-anchor-link:hover > .tsd-anchor-icon svg {
+ visibility: visible;
+}
+
+.deprecated {
+ text-decoration: line-through !important;
+}
+
+.warning {
+ padding: 1rem;
+ color: var(--color-warning-text);
+ background: var(--color-background-warning);
+}
+
+.tsd-kind-project {
+ color: var(--color-ts-project);
+}
+.tsd-kind-module {
+ color: var(--color-ts-module);
+}
+.tsd-kind-namespace {
+ color: var(--color-ts-namespace);
+}
+.tsd-kind-enum {
+ color: var(--color-ts-enum);
+}
+.tsd-kind-enum-member {
+ color: var(--color-ts-enum-member);
+}
+.tsd-kind-variable {
+ color: var(--color-ts-variable);
+}
+.tsd-kind-function {
+ color: var(--color-ts-function);
+}
+.tsd-kind-class {
+ color: var(--color-ts-class);
+}
+.tsd-kind-interface {
+ color: var(--color-ts-interface);
+}
+.tsd-kind-constructor {
+ color: var(--color-ts-constructor);
+}
+.tsd-kind-property {
+ color: var(--color-ts-property);
+}
+.tsd-kind-method {
+ color: var(--color-ts-method);
+}
+.tsd-kind-call-signature {
+ color: var(--color-ts-call-signature);
+}
+.tsd-kind-index-signature {
+ color: var(--color-ts-index-signature);
+}
+.tsd-kind-constructor-signature {
+ color: var(--color-ts-constructor-signature);
+}
+.tsd-kind-parameter {
+ color: var(--color-ts-parameter);
+}
+.tsd-kind-type-literal {
+ color: var(--color-ts-type-literal);
+}
+.tsd-kind-type-parameter {
+ color: var(--color-ts-type-parameter);
+}
+.tsd-kind-accessor {
+ color: var(--color-ts-accessor);
+}
+.tsd-kind-get-signature {
+ color: var(--color-ts-get-signature);
+}
+.tsd-kind-set-signature {
+ color: var(--color-ts-set-signature);
+}
+.tsd-kind-type-alias {
+ color: var(--color-ts-type-alias);
+}
+
+/* if we have a kind icon, don't color the text by kind */
+.tsd-kind-icon ~ span {
+ color: var(--color-text);
+}
+
+* {
+ scrollbar-width: thin;
+ scrollbar-color: var(--color-accent) var(--color-icon-background);
+}
+
+*::-webkit-scrollbar {
+ width: 0.75rem;
+}
+
+*::-webkit-scrollbar-track {
+ background: var(--color-icon-background);
+}
+
+*::-webkit-scrollbar-thumb {
+ background-color: var(--color-accent);
+ border-radius: 999rem;
+ border: 0.25rem solid var(--color-icon-background);
+}
+
+/* mobile */
+@media (max-width: 769px) {
+ .tsd-widget.options,
+ .tsd-widget.menu {
+ display: inline-block;
+ }
+
+ .container-main {
+ display: flex;
+ }
+ html .col-content {
+ float: none;
+ max-width: 100%;
+ width: 100%;
+ }
+ html .col-sidebar {
+ position: fixed !important;
+ overflow-y: auto;
+ -webkit-overflow-scrolling: touch;
+ z-index: 1024;
+ top: 0 !important;
+ bottom: 0 !important;
+ left: auto !important;
+ right: 0 !important;
+ padding: 1.5rem 1.5rem 0 0;
+ width: 75vw;
+ visibility: hidden;
+ background-color: var(--color-background);
+ transform: translate(100%, 0);
+ }
+ html .col-sidebar > *:last-child {
+ padding-bottom: 20px;
+ }
+ html .overlay {
+ content: "";
+ display: block;
+ position: fixed;
+ z-index: 1023;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ background-color: rgba(0, 0, 0, 0.75);
+ visibility: hidden;
+ }
+
+ .to-has-menu .overlay {
+ animation: fade-in 0.4s;
+ }
+
+ .to-has-menu .col-sidebar {
+ animation: pop-in-from-right 0.4s;
+ }
+
+ .from-has-menu .overlay {
+ animation: fade-out 0.4s;
+ }
+
+ .from-has-menu .col-sidebar {
+ animation: pop-out-to-right 0.4s;
+ }
+
+ .has-menu body {
+ overflow: hidden;
+ }
+ .has-menu .overlay {
+ visibility: visible;
+ }
+ .has-menu .col-sidebar {
+ visibility: visible;
+ transform: translate(0, 0);
+ display: flex;
+ flex-direction: column;
+ gap: 1.5rem;
+ max-height: 100vh;
+ padding: 1rem 2rem;
+ }
+ .has-menu .tsd-navigation {
+ max-height: 100%;
+ }
+}
+
+/* one sidebar */
+@media (min-width: 770px) {
+ .container-main {
+ display: grid;
+ grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
+ grid-template-areas: "sidebar content";
+ margin: 2rem auto;
+ }
+
+ .col-sidebar {
+ grid-area: sidebar;
+ }
+ .col-content {
+ grid-area: content;
+ padding: 0 1rem;
+ }
+}
+@media (min-width: 770px) and (max-width: 1399px) {
+ .col-sidebar {
+ max-height: calc(100vh - 2rem - 42px);
+ overflow: auto;
+ position: sticky;
+ top: 42px;
+ padding-top: 1rem;
+ }
+ .site-menu {
+ margin-top: 1rem;
+ }
+}
+
+/* two sidebars */
+@media (min-width: 1200px) {
+ .container-main {
+ grid-template-columns: minmax(0, 1fr) minmax(0, 2.5fr) minmax(0, 20rem);
+ grid-template-areas: "sidebar content toc";
+ }
+
+ .col-sidebar {
+ display: contents;
+ }
+
+ .page-menu {
+ grid-area: toc;
+ padding-left: 1rem;
+ }
+ .site-menu {
+ grid-area: sidebar;
+ }
+
+ .site-menu {
+ margin-top: 1rem 0;
+ }
+
+ .page-menu,
+ .site-menu {
+ max-height: calc(100vh - 2rem - 42px);
+ overflow: auto;
+ position: sticky;
+ top: 42px;
+ }
+}
diff --git a/docs-json/micromark-extension-kbd-nested.json b/docs-json/micromark-extension-kbd-nested.json
new file mode 100644
index 0000000..9555087
--- /dev/null
+++ b/docs-json/micromark-extension-kbd-nested.json
@@ -0,0 +1,862 @@
+{
+ "id": 0,
+ "name": "micromark-extension-kbd-nested",
+ "variant": "project",
+ "kind": 1,
+ "flags": {},
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "[micromark](https://github.com/micromark/micromark) extension to\nsupport "
+ },
+ {
+ "kind": "code",
+ "text": "`kbd`"
+ },
+ {
+ "kind": "text",
+ "text": " element syntax with configurable delimiters,\nescaping, "
+ },
+ {
+ "kind": "code",
+ "text": "`var`"
+ },
+ {
+ "kind": "text",
+ "text": " sequences, and arbitrary nesting (e.g.\nCtrl + key ).\n\n**Warning**: Do not set delimiters to characters that already being\nprocessed specially. This will result in undefined behaviour.\n\n## Syntax\n\n### Keyboard sequences\n\nRecognizes any sequence of two or more unescaped occurrences of\n"
+ },
+ {
+ "kind": "inline-tag",
+ "tag": "@link",
+ "text": "delimiter",
+ "target": 6
+ },
+ {
+ "kind": "text",
+ "text": " (defaults to "
+ },
+ {
+ "kind": "code",
+ "text": "`|`"
+ },
+ {
+ "kind": "text",
+ "text": ") as a\nkeyboard sequence.\n\n* All whitespace is preserved except immediately after an opening\n sequence or immediately before a closing sequence.\n* Nesting is possible using a longer sequence on the outside and a\n shorter sequence on the inside. For example, "
+ },
+ {
+ "kind": "code",
+ "text": "`||| ||Ctrl|| + ||x||\n |||`"
+ },
+ {
+ "kind": "text",
+ "text": " will yield Ctrl + x .\n* The opening sequence will be considered to end at the first\n whitespace character or non-delimiter, including escape characters.\n For example, these will all produce "
+ },
+ {
+ "kind": "code",
+ "text": "`| `"
+ },
+ {
+ "kind": "text",
+ "text": ":\n * "
+ },
+ {
+ "kind": "code",
+ "text": "`||\\|||`"
+ },
+ {
+ "kind": "text",
+ "text": "\n * "
+ },
+ {
+ "kind": "code",
+ "text": "`|| | ||`"
+ },
+ {
+ "kind": "text",
+ "text": "\n * "
+ },
+ {
+ "kind": "code",
+ "text": "`|| | ||`"
+ },
+ {
+ "kind": "text",
+ "text": "\n * "
+ },
+ {
+ "kind": "code",
+ "text": "`++|++`"
+ },
+ {
+ "kind": "text",
+ "text": " (with a delimiter of "
+ },
+ {
+ "kind": "code",
+ "text": "`+`"
+ },
+ {
+ "kind": "text",
+ "text": ")\n * "
+ },
+ {
+ "kind": "code",
+ "text": "`++ | ++`"
+ },
+ {
+ "kind": "text",
+ "text": " (with a delimiter of "
+ },
+ {
+ "kind": "code",
+ "text": "`+`"
+ },
+ {
+ "kind": "text",
+ "text": ")\n\n### Variable sequence\n\nRecognizes sequences of two occurrences of "
+ },
+ {
+ "kind": "inline-tag",
+ "tag": "@link",
+ "text": "delimiter",
+ "target": 7
+ },
+ {
+ "kind": "text",
+ "text": " (defaults to "
+ },
+ {
+ "kind": "code",
+ "text": "`/`"
+ },
+ {
+ "kind": "text",
+ "text": ") *within*\nkeyboard sequences as mark variable sections.\n\n* Must always use two variable delimiters. Further occurrences will be\n interpreted as the closing sequence.\n* Cannot be nested.\n* All whitespace is preserved except immediately after an opening\n sequence or immediately before a closing sequence."
+ }
+ ]
+ },
+ "children": [
+ {
+ "id": 5,
+ "name": "IOptions",
+ "variant": "declaration",
+ "kind": 256,
+ "flags": {},
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "Options that can be passed to the extension."
+ }
+ ]
+ },
+ "children": [
+ {
+ "id": 6,
+ "name": "delimiter",
+ "variant": "declaration",
+ "kind": 1024,
+ "flags": {
+ "isOptional": true
+ },
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "Character code or character to use as a delimiter for keyboard sequences. Defaults to "
+ },
+ {
+ "kind": "code",
+ "text": "`|`"
+ },
+ {
+ "kind": "text",
+ "text": "."
+ }
+ ]
+ },
+ "sources": [
+ {
+ "fileName": "index.ts",
+ "line": 65,
+ "character": 2,
+ "url": "https://github.com/shivjm/remark-extensions/blob/376122f88a00ff20e14f011934ff6d1158a7f288/packages/micromark-extension-kbd-nested/src/index.ts#L65"
+ }
+ ],
+ "type": {
+ "type": "union",
+ "types": [
+ {
+ "type": "intrinsic",
+ "name": "string"
+ },
+ {
+ "type": "intrinsic",
+ "name": "number"
+ }
+ ]
+ }
+ },
+ {
+ "id": 7,
+ "name": "variableDelimiter",
+ "variant": "declaration",
+ "kind": 1024,
+ "flags": {
+ "isOptional": true
+ },
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "Character code or character to use as a delimiter for variable sequences within keyboard sequences. Defaults to "
+ },
+ {
+ "kind": "code",
+ "text": "`/`"
+ },
+ {
+ "kind": "text",
+ "text": "."
+ }
+ ]
+ },
+ "sources": [
+ {
+ "fileName": "index.ts",
+ "line": 68,
+ "character": 2,
+ "url": "https://github.com/shivjm/remark-extensions/blob/376122f88a00ff20e14f011934ff6d1158a7f288/packages/micromark-extension-kbd-nested/src/index.ts#L68"
+ }
+ ],
+ "type": {
+ "type": "union",
+ "types": [
+ {
+ "type": "intrinsic",
+ "name": "string"
+ },
+ {
+ "type": "intrinsic",
+ "name": "number"
+ }
+ ]
+ }
+ }
+ ],
+ "groups": [
+ {
+ "title": "Properties",
+ "children": [
+ 6,
+ 7
+ ]
+ }
+ ],
+ "sources": [
+ {
+ "fileName": "index.ts",
+ "line": 63,
+ "character": 17,
+ "url": "https://github.com/shivjm/remark-extensions/blob/376122f88a00ff20e14f011934ff6d1158a7f288/packages/micromark-extension-kbd-nested/src/index.ts#L63"
+ }
+ ]
+ },
+ {
+ "id": 8,
+ "name": "html",
+ "variant": "declaration",
+ "kind": 32,
+ "flags": {
+ "isConst": true
+ },
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "Extension for micromark to compile keyboard sequences as "
+ },
+ {
+ "kind": "code",
+ "text": "``"
+ },
+ {
+ "kind": "text",
+ "text": "\nelements and variable sequences as "
+ },
+ {
+ "kind": "code",
+ "text": "``"
+ },
+ {
+ "kind": "text",
+ "text": " elements. Can be passed\nin "
+ },
+ {
+ "kind": "code",
+ "text": "`htmlExtensions.`"
+ }
+ ]
+ },
+ "sources": [
+ {
+ "fileName": "index.ts",
+ "line": 100,
+ "character": 13,
+ "url": "https://github.com/shivjm/remark-extensions/blob/376122f88a00ff20e14f011934ff6d1158a7f288/packages/micromark-extension-kbd-nested/src/index.ts#L100"
+ }
+ ],
+ "type": {
+ "type": "reference",
+ "target": {
+ "sourceFileName": "../../node_modules/.pnpm/micromark-util-types@1.1.0/node_modules/micromark-util-types/index.d.ts",
+ "qualifiedName": "HtmlExtension"
+ },
+ "name": "HtmlExtension",
+ "package": "micromark-util-types"
+ },
+ "defaultValue": "..."
+ },
+ {
+ "id": 1,
+ "name": "normalizeDelimiter",
+ "variant": "declaration",
+ "kind": 64,
+ "flags": {},
+ "sources": [
+ {
+ "fileName": "index.ts",
+ "line": 440,
+ "character": 16,
+ "url": "https://github.com/shivjm/remark-extensions/blob/376122f88a00ff20e14f011934ff6d1158a7f288/packages/micromark-extension-kbd-nested/src/index.ts#L440"
+ }
+ ],
+ "signatures": [
+ {
+ "id": 2,
+ "name": "normalizeDelimiter",
+ "variant": "signature",
+ "kind": 4096,
+ "flags": {},
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "Converts the optional "
+ },
+ {
+ "kind": "code",
+ "text": "`delimiter`"
+ },
+ {
+ "kind": "text",
+ "text": " into a character code. Returns\n"
+ },
+ {
+ "kind": "code",
+ "text": "`defaultValue`"
+ },
+ {
+ "kind": "text",
+ "text": " if no delimiter is provided."
+ }
+ ]
+ },
+ "sources": [
+ {
+ "fileName": "index.ts",
+ "line": 440,
+ "character": 16,
+ "url": "https://github.com/shivjm/remark-extensions/blob/376122f88a00ff20e14f011934ff6d1158a7f288/packages/micromark-extension-kbd-nested/src/index.ts#L440"
+ }
+ ],
+ "parameters": [
+ {
+ "id": 3,
+ "name": "delimiter",
+ "variant": "param",
+ "kind": 32768,
+ "flags": {},
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "The optional character code or character."
+ }
+ ]
+ },
+ "type": {
+ "type": "union",
+ "types": [
+ {
+ "type": "intrinsic",
+ "name": "undefined"
+ },
+ {
+ "type": "intrinsic",
+ "name": "string"
+ },
+ {
+ "type": "intrinsic",
+ "name": "number"
+ }
+ ]
+ }
+ },
+ {
+ "id": 4,
+ "name": "defaultValue",
+ "variant": "param",
+ "kind": 32768,
+ "flags": {},
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "The character code to return if no delimiter is provided."
+ }
+ ]
+ },
+ "type": {
+ "type": "intrinsic",
+ "name": "number"
+ }
+ }
+ ],
+ "type": {
+ "type": "intrinsic",
+ "name": "number"
+ }
+ }
+ ]
+ },
+ {
+ "id": 9,
+ "name": "syntax",
+ "variant": "declaration",
+ "kind": 64,
+ "flags": {},
+ "sources": [
+ {
+ "fileName": "index.ts",
+ "line": 128,
+ "character": 13,
+ "url": "https://github.com/shivjm/remark-extensions/blob/376122f88a00ff20e14f011934ff6d1158a7f288/packages/micromark-extension-kbd-nested/src/index.ts#L128"
+ }
+ ],
+ "signatures": [
+ {
+ "id": 10,
+ "name": "syntax",
+ "variant": "signature",
+ "kind": 4096,
+ "flags": {},
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "Returns an extension for micromark to parse keyboard sequences\noptionally containing variable sequences. Can be passed in\n"
+ },
+ {
+ "kind": "code",
+ "text": "`extensions`"
+ },
+ {
+ "kind": "text",
+ "text": "."
+ }
+ ],
+ "blockTags": [
+ {
+ "tag": "@returns",
+ "content": [
+ {
+ "kind": "text",
+ "text": "Extension to parse keyboard sequences."
+ }
+ ]
+ }
+ ]
+ },
+ "sources": [
+ {
+ "fileName": "index.ts",
+ "line": 128,
+ "character": 22,
+ "url": "https://github.com/shivjm/remark-extensions/blob/376122f88a00ff20e14f011934ff6d1158a7f288/packages/micromark-extension-kbd-nested/src/index.ts#L128"
+ }
+ ],
+ "parameters": [
+ {
+ "id": 11,
+ "name": "options",
+ "variant": "param",
+ "kind": 32768,
+ "flags": {},
+ "type": {
+ "type": "reference",
+ "target": 5,
+ "name": "IOptions",
+ "package": "micromark-extension-kbd-nested"
+ },
+ "defaultValue": "{}"
+ }
+ ],
+ "type": {
+ "type": "reference",
+ "target": {
+ "sourceFileName": "../../node_modules/.pnpm/micromark-util-types@1.1.0/node_modules/micromark-util-types/index.d.ts",
+ "qualifiedName": "Extension"
+ },
+ "name": "Extension",
+ "package": "micromark-util-types"
+ }
+ }
+ ]
+ }
+ ],
+ "groups": [
+ {
+ "title": "Interfaces",
+ "children": [
+ 5
+ ]
+ },
+ {
+ "title": "Variables",
+ "children": [
+ 8
+ ]
+ },
+ {
+ "title": "Functions",
+ "children": [
+ 1,
+ 9
+ ]
+ }
+ ],
+ "packageName": "micromark-extension-kbd-nested",
+ "packageVersion": "0.7.0",
+ "readme": [
+ {
+ "kind": "text",
+ "text": "# micromark-extension-kbd-nested\n\n[![Build][test-badge]][build]\n[![Downloads][downloads-badge]][downloads]\n[![Size][size-badge]][size]\n\n**[micromark][]** extension to support "
+ },
+ {
+ "kind": "code",
+ "text": "`kbd`"
+ },
+ {
+ "kind": "text",
+ "text": " element syntax with\nconfigurable delimiters, escaping, "
+ },
+ {
+ "kind": "code",
+ "text": "`var`"
+ },
+ {
+ "kind": "text",
+ "text": " sequences, and arbitrary\nnesting (e.g. Ctrl + key ).\n\n## Install\n\nThis package is [ESM only](https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c):\nNode 12+ is needed to use it and it must be "
+ },
+ {
+ "kind": "code",
+ "text": "`import`"
+ },
+ {
+ "kind": "text",
+ "text": "ed instead of "
+ },
+ {
+ "kind": "code",
+ "text": "`require`"
+ },
+ {
+ "kind": "text",
+ "text": "d.\n\n[npm][]:\n\n"
+ },
+ {
+ "kind": "code",
+ "text": "```sh\nnpm install micromark-extension-kbd-nested\n```"
+ },
+ {
+ "kind": "text",
+ "text": "\n\n## Use\n\n"
+ },
+ {
+ "kind": "code",
+ "text": "```js\nimport {micromark} from 'micromark'\nimport {\n html,\n syntax\n} from 'micromark-extension-kbd-nested';\n\nconst output = micromark('Press ||| ||Ctrl|| + || \\| || |||, then || //key// ||.', {\n extensions: [syntax()],\n htmlExtensions: [html]\n})\n\nconsole.log(output)\n```"
+ },
+ {
+ "kind": "text",
+ "text": "\n\nYields:\n\n"
+ },
+ {
+ "kind": "code",
+ "text": "```html\nPress Ctrl + | , then key .
\n```"
+ },
+ {
+ "kind": "text",
+ "text": "\n\n## Syntax\n\n### Keyboard sequences\nRecognizes any sequence of two or more unescaped occurrences of\n"
+ },
+ {
+ "kind": "code",
+ "text": "`delimiter`"
+ },
+ {
+ "kind": "text",
+ "text": " (defaults to "
+ },
+ {
+ "kind": "code",
+ "text": "`|`"
+ },
+ {
+ "kind": "text",
+ "text": ") as a keyboard sequence.\n \n* All is preserved except immediately after an opening sequence or\n immediately before a closing sequence.\n* Nesting is possible by using a longer sequence on the outside and a\n shorter sequence on the inside, e.g. "
+ },
+ {
+ "kind": "code",
+ "text": "`||| ||Ctrl|| + ||x|| |||`"
+ },
+ {
+ "kind": "text",
+ "text": " will\n be turned into Ctrl + x .\n* The opening sequence will be considered to end at the first\n whitespace character or non-delimiter, including escape characters.\n For example, these will all produce "
+ },
+ {
+ "kind": "code",
+ "text": "`| `"
+ },
+ {
+ "kind": "text",
+ "text": ":\n * "
+ },
+ {
+ "kind": "code",
+ "text": "`||\\|||`"
+ },
+ {
+ "kind": "text",
+ "text": "\n * "
+ },
+ {
+ "kind": "code",
+ "text": "`|| | ||`"
+ },
+ {
+ "kind": "text",
+ "text": "\n * "
+ },
+ {
+ "kind": "code",
+ "text": "`|| | ||`"
+ },
+ {
+ "kind": "text",
+ "text": "\n * "
+ },
+ {
+ "kind": "code",
+ "text": "`++|++`"
+ },
+ {
+ "kind": "text",
+ "text": " (with a delimiter of "
+ },
+ {
+ "kind": "code",
+ "text": "`+`"
+ },
+ {
+ "kind": "text",
+ "text": ")\n * "
+ },
+ {
+ "kind": "code",
+ "text": "`++ | ++`"
+ },
+ {
+ "kind": "text",
+ "text": " (with a delimiter of "
+ },
+ {
+ "kind": "code",
+ "text": "`+`"
+ },
+ {
+ "kind": "text",
+ "text": ")\n \n### Variable sequence\n"
+ },
+ {
+ "kind": "code",
+ "text": "`variableDelimiter`"
+ },
+ {
+ "kind": "text",
+ "text": " (defaults to "
+ },
+ {
+ "kind": "code",
+ "text": "`/`"
+ },
+ {
+ "kind": "text",
+ "text": ") can be used *within* keyboard\nsequences to mark variable sections.\n\n* Must always use two variable delimiters.\n* Cannot be nested.\n* All is preserved except immediately after an opening sequence or\n immediately before a closing sequence.\n\n## API\n\nThis package exports the following identifiers: "
+ },
+ {
+ "kind": "code",
+ "text": "`html`"
+ },
+ {
+ "kind": "text",
+ "text": ", "
+ },
+ {
+ "kind": "code",
+ "text": "`syntax`"
+ },
+ {
+ "kind": "text",
+ "text": ".\nThere is no default export.\n\n### "
+ },
+ {
+ "kind": "code",
+ "text": "`html`"
+ },
+ {
+ "kind": "text",
+ "text": "\n\nExtension for micromark to compile as "
+ },
+ {
+ "kind": "code",
+ "text": "``"
+ },
+ {
+ "kind": "text",
+ "text": " and "
+ },
+ {
+ "kind": "code",
+ "text": "``"
+ },
+ {
+ "kind": "text",
+ "text": " elements\n(can be passed in "
+ },
+ {
+ "kind": "code",
+ "text": "`htmlExtensions`"
+ },
+ {
+ "kind": "text",
+ "text": ").\n\n### "
+ },
+ {
+ "kind": "code",
+ "text": "`syntax(options?)`"
+ },
+ {
+ "kind": "text",
+ "text": "\n\nReturns an extension for micromark to parse keyboard sequences\noptionally containing variable sequences (can be passed in\n"
+ },
+ {
+ "kind": "code",
+ "text": "`extensions`"
+ },
+ {
+ "kind": "text",
+ "text": ").\n\nDo not pass characters that are already being processed specially as\nthe delimiters.\n\n#### "
+ },
+ {
+ "kind": "code",
+ "text": "`options`"
+ },
+ {
+ "kind": "text",
+ "text": "\n\n| Name | Description | Default |\n|------|-------------|---------|\n| "
+ },
+ {
+ "kind": "code",
+ "text": "`delimiter`"
+ },
+ {
+ "kind": "text",
+ "text": " | Character to use as delimiter | "
+ },
+ {
+ "kind": "code",
+ "text": "`|`"
+ },
+ {
+ "kind": "text",
+ "text": " |\n| "
+ },
+ {
+ "kind": "code",
+ "text": "`variableDelimiter`"
+ },
+ {
+ "kind": "text",
+ "text": " | Character to use as variable delimiter | "
+ },
+ {
+ "kind": "code",
+ "text": "`/`"
+ },
+ {
+ "kind": "text",
+ "text": " |\n\n## License\n\n[ISC][license] © [Shiv Jha Mathur][author]\n\n\n\n[author]: https://github.com/shivjm\n\n[test-badge]: https://github.com/shivjm/remark-extensions/actions/workflows/test.yml/badge.svg\n\n[build]: https://github.com/shivjm/remark-extensions/actions\n\n[downloads-badge]: https://img.shields.io/npm/dm/micromark-extension-kbd-nested.svg\n\n[downloads]: https://www.npmjs.com/package/micromark-extension-kbd-nested\n\n[size-badge]: https://img.shields.io/bundlephobia/minzip/micromark-extension-kbd-nested.svg\n\n[size]: https://bundlephobia.com/result?p=micromark-extension-kbd-nested\n\n[npm]: https://docs.npmjs.com/cli/install\n\n[license]: ../../license\n\n[micromark]: https://github.com/micromark/micromark\n\n[from-markdown]: https://github.com/syntax-tree/mdast-util-from-markdown\n\n[to-markdown]: https://github.com/syntax-tree/mdast-util-to-markdown\n\n[remark]: https://github.com/remarkjs/remark"
+ }
+ ],
+ "symbolIdMap": {
+ "0": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": ""
+ },
+ "1": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": "normalizeDelimiter"
+ },
+ "2": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": "normalizeDelimiter"
+ },
+ "3": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": "delimiter"
+ },
+ "4": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": "defaultValue"
+ },
+ "5": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": "IOptions"
+ },
+ "6": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": "IOptions.delimiter"
+ },
+ "7": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": "IOptions.variableDelimiter"
+ },
+ "8": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": "html"
+ },
+ "9": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": "syntax"
+ },
+ "10": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": "syntax"
+ },
+ "11": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": "options"
+ }
+ }
+}
\ No newline at end of file
diff --git a/docs-json/remark-kbd-nested.json b/docs-json/remark-kbd-nested.json
new file mode 100644
index 0000000..135bbc1
--- /dev/null
+++ b/docs-json/remark-kbd-nested.json
@@ -0,0 +1,454 @@
+{
+ "id": 0,
+ "name": "remark-kbd-nested",
+ "variant": "project",
+ "kind": 1,
+ "flags": {},
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "[remark](https://github.com/remarkjs/remark) plugin to support\nkeyboard and variable sequences. See "
+ },
+ {
+ "kind": "inline-tag",
+ "tag": "@link",
+ "text": "micromark-extension-kbd-nested"
+ },
+ {
+ "kind": "text",
+ "text": " for syntax and options.\n\n## Use\n\n"
+ },
+ {
+ "kind": "code",
+ "text": "```js\nimport { unified } from \"unified\";\nimport remarkParse from \"remark-parse\";\nimport { remarkKbdNested } from \"remark-kbd-nested\";\nimport remarkRehype from \"remark-rehype\";\nimport rehypeStringify from \"rehype-stringify\";\n\nmain();\n\nasync function main() {\n const file = await unified()\n .use(remarkParse)\n .use(remarkKbdNested)\n .use(remarkRehype)\n .use(rehypeStringify)\n .process(\"Press ||| ||Ctrl|| + ||//key//|| ||| to trigger the action.\");\n\n console.log(String(file));\n}\n```"
+ },
+ {
+ "kind": "text",
+ "text": "\n\nYields:\n\n"
+ },
+ {
+ "kind": "code",
+ "text": "```html\nPress Ctrl + key
to trigger the action.
\n```"
+ }
+ ]
+ },
+ "children": [
+ {
+ "id": 5,
+ "name": "IOptions",
+ "variant": "declaration",
+ "kind": 256,
+ "flags": {},
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "Options that can be passed to the extension."
+ }
+ ]
+ },
+ "children": [
+ {
+ "id": 6,
+ "name": "delimiter",
+ "variant": "declaration",
+ "kind": 1024,
+ "flags": {
+ "isOptional": true
+ },
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "Character code or character to use as a delimiter for keyboard sequences. Defaults to "
+ },
+ {
+ "kind": "code",
+ "text": "`|`"
+ },
+ {
+ "kind": "text",
+ "text": "."
+ }
+ ]
+ },
+ "sources": [
+ {
+ "fileName": "packages/micromark-extension-kbd-nested/src/index.ts",
+ "line": 65,
+ "character": 2,
+ "url": "https://github.com/shivjm/remark-extensions/blob/b85d7acdb8dbf0882dfce7eb0ba16fc62bb0845d/packages/micromark-extension-kbd-nested/src/index.ts#L65"
+ }
+ ],
+ "type": {
+ "type": "union",
+ "types": [
+ {
+ "type": "intrinsic",
+ "name": "string"
+ },
+ {
+ "type": "intrinsic",
+ "name": "number"
+ }
+ ]
+ }
+ },
+ {
+ "id": 7,
+ "name": "variableDelimiter",
+ "variant": "declaration",
+ "kind": 1024,
+ "flags": {
+ "isOptional": true
+ },
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "Character code or character to use as a delimiter for variable sequences within keyboard sequences. Defaults to "
+ },
+ {
+ "kind": "code",
+ "text": "`/`"
+ },
+ {
+ "kind": "text",
+ "text": "."
+ }
+ ]
+ },
+ "sources": [
+ {
+ "fileName": "packages/micromark-extension-kbd-nested/src/index.ts",
+ "line": 68,
+ "character": 2,
+ "url": "https://github.com/shivjm/remark-extensions/blob/b85d7acdb8dbf0882dfce7eb0ba16fc62bb0845d/packages/micromark-extension-kbd-nested/src/index.ts#L68"
+ }
+ ],
+ "type": {
+ "type": "union",
+ "types": [
+ {
+ "type": "intrinsic",
+ "name": "string"
+ },
+ {
+ "type": "intrinsic",
+ "name": "number"
+ }
+ ]
+ }
+ }
+ ],
+ "groups": [
+ {
+ "title": "Properties",
+ "children": [
+ 6,
+ 7
+ ]
+ }
+ ],
+ "sources": [
+ {
+ "fileName": "packages/micromark-extension-kbd-nested/src/index.ts",
+ "line": 63,
+ "character": 17,
+ "url": "https://github.com/shivjm/remark-extensions/blob/b85d7acdb8dbf0882dfce7eb0ba16fc62bb0845d/packages/micromark-extension-kbd-nested/src/index.ts#L63"
+ }
+ ]
+ },
+ {
+ "id": 1,
+ "name": "remarkKbdNested",
+ "variant": "declaration",
+ "kind": 64,
+ "flags": {},
+ "sources": [
+ {
+ "fileName": "packages/remark-kbd-nested/src/index.ts",
+ "line": 90,
+ "character": 13,
+ "url": "https://github.com/shivjm/remark-extensions/blob/b85d7acdb8dbf0882dfce7eb0ba16fc62bb0845d/packages/remark-kbd-nested/src/index.ts#L90"
+ }
+ ],
+ "signatures": [
+ {
+ "id": 2,
+ "name": "remarkKbdNested",
+ "variant": "signature",
+ "kind": 4096,
+ "flags": {},
+ "comment": {
+ "summary": [
+ {
+ "kind": "text",
+ "text": "remark plugin to convert keyboard and variable sequences into\n[rehype](https://github.com/rehypejs/rehype/)-compatible "
+ },
+ {
+ "kind": "code",
+ "text": "``"
+ },
+ {
+ "kind": "text",
+ "text": "\nand "
+ },
+ {
+ "kind": "code",
+ "text": "``"
+ },
+ {
+ "kind": "text",
+ "text": " elements respectively. See "
+ },
+ {
+ "kind": "inline-tag",
+ "tag": "@link",
+ "text": "micromark-extension-kbd-nested"
+ },
+ {
+ "kind": "text",
+ "text": " for syntax and options."
+ }
+ ]
+ },
+ "sources": [
+ {
+ "fileName": "packages/remark-kbd-nested/src/index.ts",
+ "line": 90,
+ "character": 13,
+ "url": "https://github.com/shivjm/remark-extensions/blob/b85d7acdb8dbf0882dfce7eb0ba16fc62bb0845d/packages/remark-kbd-nested/src/index.ts#L90"
+ }
+ ],
+ "parameters": [
+ {
+ "id": 3,
+ "name": "this",
+ "variant": "param",
+ "kind": 32768,
+ "flags": {},
+ "type": {
+ "type": "reference",
+ "target": {
+ "sourceFileName": "../../node_modules/.pnpm/unified@10.1.2/node_modules/unified/index.d.ts",
+ "qualifiedName": "Processor"
+ },
+ "typeArguments": [
+ {
+ "type": "intrinsic",
+ "name": "void"
+ },
+ {
+ "type": "reference",
+ "target": {
+ "sourceFileName": "../../node_modules/.pnpm/@types+mdast@3.0.15/node_modules/@types/mdast/index.d.ts",
+ "qualifiedName": "Root"
+ },
+ "name": "Root",
+ "package": "@types/mdast"
+ },
+ {
+ "type": "intrinsic",
+ "name": "void"
+ },
+ {
+ "type": "intrinsic",
+ "name": "void"
+ }
+ ],
+ "name": "Processor",
+ "package": "unified"
+ }
+ },
+ {
+ "id": 4,
+ "name": "settings",
+ "variant": "param",
+ "kind": 32768,
+ "flags": {
+ "isRest": true
+ },
+ "type": {
+ "type": "array",
+ "elementType": {
+ "type": "reference",
+ "target": 5,
+ "name": "IOptions",
+ "package": "micromark-extension-kbd-nested"
+ }
+ }
+ }
+ ],
+ "type": {
+ "type": "union",
+ "types": [
+ {
+ "type": "intrinsic",
+ "name": "void"
+ },
+ {
+ "type": "reference",
+ "target": {
+ "sourceFileName": "../../node_modules/.pnpm/unified@10.1.2/node_modules/unified/index.d.ts",
+ "qualifiedName": "Transformer"
+ },
+ "typeArguments": [
+ {
+ "type": "reference",
+ "target": {
+ "sourceFileName": "../../node_modules/.pnpm/@types+mdast@3.0.15/node_modules/@types/mdast/index.d.ts",
+ "qualifiedName": "Root"
+ },
+ "name": "Root",
+ "package": "@types/mdast"
+ },
+ {
+ "type": "reference",
+ "target": {
+ "sourceFileName": "../../node_modules/.pnpm/@types+mdast@3.0.15/node_modules/@types/mdast/index.d.ts",
+ "qualifiedName": "Root"
+ },
+ "name": "Root",
+ "package": "@types/mdast"
+ }
+ ],
+ "name": "Transformer",
+ "package": "unified"
+ }
+ ]
+ }
+ }
+ ]
+ }
+ ],
+ "groups": [
+ {
+ "title": "Interfaces",
+ "children": [
+ 5
+ ]
+ },
+ {
+ "title": "Functions",
+ "children": [
+ 1
+ ]
+ }
+ ],
+ "packageName": "remark-kbd-nested",
+ "packageVersion": "0.5.2",
+ "readme": [
+ {
+ "kind": "text",
+ "text": "# remark-kbd-nested\n\n[![Build][test-badge]][build]\n[![Downloads][downloads-badge]][downloads]\n[![Size][size-badge]][size]\n\n**[remark][]** extension to support "
+ },
+ {
+ "kind": "code",
+ "text": "`kbd`"
+ },
+ {
+ "kind": "text",
+ "text": " element syntax with\nconfigurable delimiters, escaping, "
+ },
+ {
+ "kind": "code",
+ "text": "`var`"
+ },
+ {
+ "kind": "text",
+ "text": " sequences, and arbitrary\nnesting (e.g. Ctrl + key ).\n\n## Install\n\nThis package is [ESM only](https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c):\nNode 12+ is needed to use it and it must be "
+ },
+ {
+ "kind": "code",
+ "text": "`import`"
+ },
+ {
+ "kind": "text",
+ "text": "ed instead of "
+ },
+ {
+ "kind": "code",
+ "text": "`require`"
+ },
+ {
+ "kind": "text",
+ "text": "d.\n\n[npm][]:\n\n"
+ },
+ {
+ "kind": "code",
+ "text": "```sh\nnpm install micromark-extension-kbd-nested\n```"
+ },
+ {
+ "kind": "text",
+ "text": "\n\n## Use\n\n"
+ },
+ {
+ "kind": "code",
+ "text": "```javascript\nimport { remark } from \"remark\";\nimport { remarkKbdNested } from \"remark-kbd-nested\";\nimport remarkRehype from \"remark-rehype\";\nimport rehypeStringify from \"rehype-stringify\";\n\nconst output = remark()\n .use(remarkKbdNested)\n .use(remarkRehype)\n .use(rehypeStringify)\n .processSync(\"Press ||| ||Ctrl|| + || \\| || |||, then || //key// ||.\");\n\nconsole.log(String(output));\n```"
+ },
+ {
+ "kind": "text",
+ "text": "\n\nYields:\n\n"
+ },
+ {
+ "kind": "code",
+ "text": "```html\nPress Ctrl + | , then key .
\n```"
+ },
+ {
+ "kind": "text",
+ "text": "\n\n## Syntax\n\nSee [micromark-extension-kbd-nested][].\n\n## API\n\n### "
+ },
+ {
+ "kind": "code",
+ "text": "`remarkKbdNested(options?)`"
+ },
+ {
+ "kind": "text",
+ "text": "\n\nReturns a remark plugin to parse keyboard sequences optionally\ncontaining variable sequences (can be passed to "
+ },
+ {
+ "kind": "code",
+ "text": "`use`"
+ },
+ {
+ "kind": "text",
+ "text": "). The options\nare passed directly to [micromark-extension-kbd-nested][].\n\n## License\n\n[ISC][LICENSE] © [Shiv Jha Mathur][author]\n\n[test-badge]: https://github.com/shivjm/remark-extensions/actions/workflows/test.yml/badge.svg\n\n[build]: https://github.com/shivjm/remark-extensions/actions\n\n[downloads-badge]: https://img.shields.io/npm/dm/remark-kbd-nested.svg\n\n[downloads]: https://www.npmjs.com/package/remark-kbd-nested\n\n[size-badge]: https://img.shields.io/bundlephobia/minzip/remark-kbd-nested.svg\n\n[size]: https://bundlephobia.com/result?p=remark-kbd-nested\n\n[remark]: https://github.com/remarkjs/remark\n\n[npm]: https://docs.npmjs.com/cli/install\n\n[micromark-extension-kbd-nested]: https://www.npmjs.com/package/micromark-extension-kbd-nested\n\n[license]: ../../license\n\n[author]: https://github.com/shivjm/"
+ }
+ ],
+ "symbolIdMap": {
+ "0": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": ""
+ },
+ "1": {
+ "sourceFileName": "src/index.ts",
+ "qualifiedName": "remarkKbdNested"
+ },
+ "2": {
+ "sourceFileName": "../../node_modules/.pnpm/unified@10.1.2/node_modules/unified/index.d.ts",
+ "qualifiedName": "remarkKbdNested"
+ },
+ "3": {
+ "sourceFileName": "../../node_modules/.pnpm/unified@10.1.2/node_modules/unified/index.d.ts",
+ "qualifiedName": "this"
+ },
+ "4": {
+ "sourceFileName": "../../node_modules/.pnpm/unified@10.1.2/node_modules/unified/index.d.ts",
+ "qualifiedName": "settings"
+ },
+ "5": {
+ "sourceFileName": "../micromark-extension-kbd-nested/src/index.ts",
+ "qualifiedName": "IOptions"
+ },
+ "6": {
+ "sourceFileName": "../micromark-extension-kbd-nested/src/index.ts",
+ "qualifiedName": "IOptions.delimiter"
+ },
+ "7": {
+ "sourceFileName": "../micromark-extension-kbd-nested/src/index.ts",
+ "qualifiedName": "IOptions.variableDelimiter"
+ }
+ }
+}
\ No newline at end of file
diff --git a/functions/micromark_extension_kbd_nested.normalizeDelimiter.html b/functions/micromark_extension_kbd_nested.normalizeDelimiter.html
new file mode 100644
index 0000000..1bf6ccc
--- /dev/null
+++ b/functions/micromark_extension_kbd_nested.normalizeDelimiter.html
@@ -0,0 +1,5 @@
+normalizeDelimiter | remark-extensions Function normalizeDelimiter normalize Delimiter ( delimiter , defaultValue ) : number Parameters delimiter : undefined | string | number defaultValue : number Returns number
\ No newline at end of file
diff --git a/functions/micromark_extension_kbd_nested.syntax.html b/functions/micromark_extension_kbd_nested.syntax.html
new file mode 100644
index 0000000..6a6f6e0
--- /dev/null
+++ b/functions/micromark_extension_kbd_nested.syntax.html
@@ -0,0 +1,5 @@
+syntax | remark-extensions
\ No newline at end of file
diff --git a/functions/remark_kbd_nested.remarkKbdNested.html b/functions/remark_kbd_nested.remarkKbdNested.html
new file mode 100644
index 0000000..961595b
--- /dev/null
+++ b/functions/remark_kbd_nested.remarkKbdNested.html
@@ -0,0 +1,4 @@
+remarkKbdNested | remark-extensions remark Kbd Nested ( this , ... settings ) : void | Transformer < Root , Root > Parameters this : Processor < void , Root , void , void > Rest
... settings : IOptions [] Returns void | Transformer < Root , Root >
\ No newline at end of file
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..4abb7e4
--- /dev/null
+++ b/index.html
@@ -0,0 +1 @@
+remark-extensions
\ No newline at end of file
diff --git a/interfaces/micromark_extension_kbd_nested.IOptions.html b/interfaces/micromark_extension_kbd_nested.IOptions.html
new file mode 100644
index 0000000..66c991e
--- /dev/null
+++ b/interfaces/micromark_extension_kbd_nested.IOptions.html
@@ -0,0 +1,6 @@
+IOptions | remark-extensions Properties Optional
delimiter delimiter ?: string | number
Optional
variable Delimiter variable Delimiter ?: string | number
\ No newline at end of file
diff --git a/interfaces/remark_kbd_nested.IOptions.html b/interfaces/remark_kbd_nested.IOptions.html
new file mode 100644
index 0000000..846f899
--- /dev/null
+++ b/interfaces/remark_kbd_nested.IOptions.html
@@ -0,0 +1,6 @@
+IOptions | remark-extensions Properties Optional
delimiter delimiter ?: string | number
Optional
variable Delimiter variable Delimiter ?: string | number
\ No newline at end of file
diff --git a/modules/micromark_extension_kbd_nested.html b/modules/micromark_extension_kbd_nested.html
new file mode 100644
index 0000000..c7525cd
--- /dev/null
+++ b/modules/micromark_extension_kbd_nested.html
@@ -0,0 +1,113 @@
+micromark-extension-kbd-nested - v0.7.0 | remark-extensions Module micromark-extension-kbd-nested - v0.7.0
+
+
+micromark extension to support kbd
element syntax with
+configurable delimiters, escaping, var
sequences, and arbitrary
+nesting (e.g. Ctrl + key ).
+This package is ESM only :
+Node 12+ is needed to use it and it must be import
ed instead of require
d.
+npm :
+npm install micromark-extension-kbd-nested
+
Copy
+import { micromark } from 'micromark' import { html , syntax } from 'micromark-extension-kbd-nested' ; const output = micromark ( 'Press ||| ||Ctrl|| + || \| || |||, then || //key// ||.' , { extensions: [ syntax ()], htmlExtensions: [ html ] }) console . log ( output )
+
Copy
+Yields:
+< p > Press < kbd >< kbd > Ctrl </ kbd > + < kbd > | </ kbd ></ kbd > , then < kbd >< var > key </ var ></ kbd > . </ p >
+
Copy
+Recognizes any sequence of two or more unescaped occurrences of
+delimiter
(defaults to |
) as a keyboard sequence.
+
+All is preserved except immediately after an opening sequence or
+immediately before a closing sequence.
+Nesting is possible by using a longer sequence on the outside and a
+shorter sequence on the inside, e.g. ||| ||Ctrl|| + ||x|| |||
will
+be turned into Ctrl + x .
+The opening sequence will be considered to end at the first
+whitespace character or non-delimiter, including escape characters.
+For example, these will all produce <kbd>|</kbd>
:
+||\|||
+|| | ||
+|| | ||
+++|++
(with a delimiter of +
)
+++ | ++
(with a delimiter of +
)
+
+
+
+variableDelimiter
(defaults to /
) can be used within keyboard
+sequences to mark variable sections.
+
+Must always use two variable delimiters.
+Cannot be nested.
+All is preserved except immediately after an opening sequence or
+immediately before a closing sequence.
+
+This package exports the following identifiers: html
, syntax
.
+There is no default export.
+Extension for micromark to compile as <kbd>
and <var>
elements
+(can be passed in htmlExtensions
).
+Returns an extension for micromark to parse keyboard sequences
+optionally containing variable sequences (can be passed in
+extensions
).
+Do not pass characters that are already being processed specially as
+the delimiters.
+
+
+
+Name
+Description
+Default
+
+
+
+delimiter
+Character to use as delimiter
+`
+
+
+variableDelimiter
+Character to use as variable delimiter
+/
+
+
+ISC © Shiv Jha Mathur
+
+
+
\ No newline at end of file
diff --git a/modules/remark_kbd_nested.html b/modules/remark_kbd_nested.html
new file mode 100644
index 0000000..7081498
--- /dev/null
+++ b/modules/remark_kbd_nested.html
@@ -0,0 +1,31 @@
+remark-kbd-nested - v0.5.2 | remark-extensions Module remark-kbd-nested - v0.5.2
+
+
+remark extension to support kbd
element syntax with
+configurable delimiters, escaping, var
sequences, and arbitrary
+nesting (e.g. Ctrl + key ).
+This package is ESM only :
+Node 12+ is needed to use it and it must be import
ed instead of require
d.
+npm :
+npm install micromark-extension-kbd-nested
+
Copy
+import { remark } from "remark" ; import { remarkKbdNested } from "remark-kbd-nested" ; import remarkRehype from "remark-rehype" ; import rehypeStringify from "rehype-stringify" ; const output = remark () . use ( remarkKbdNested ) . use ( remarkRehype ) . use ( rehypeStringify ) . processSync ( "Press ||| ||Ctrl|| + || \| || |||, then || //key// ||." ); console . log ( String ( output ));
+
Copy
+Yields:
+< p > Press < kbd >< kbd > Ctrl </ kbd > + < kbd > | </ kbd ></ kbd > , then < kbd >< var > key </ var ></ kbd > . </ p >
+
Copy
+See micromark-extension-kbd-nested .
+Returns a remark plugin to parse keyboard sequences optionally
+containing variable sequences (can be passed to use
). The options
+are passed directly to micromark-extension-kbd-nested .
+ISC © Shiv Jha Mathur
+
\ No newline at end of file
diff --git a/variables/micromark_extension_kbd_nested.html.html b/variables/micromark_extension_kbd_nested.html.html
new file mode 100644
index 0000000..9222675
--- /dev/null
+++ b/variables/micromark_extension_kbd_nested.html.html
@@ -0,0 +1,4 @@
+html | remark-extensions html : HtmlExtension = ...
\ No newline at end of file
Converts the optional
+delimiter
into a character code. Returns +defaultValue
if no delimiter is provided.