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..54e27af --- /dev/null +++ b/assets/highlight.css @@ -0,0 +1,113 @@ +: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: #0000FF; + --dark-hl-3: #569CD6; + --light-hl-4: #0451A5; + --dark-hl-4: #9CDCFE; + --light-hl-5: #AF00DB; + --dark-hl-5: #C586C0; + --light-hl-6: #001080; + --dark-hl-6: #9CDCFE; + --light-hl-7: #0070C1; + --dark-hl-7: #4FC1FF; + --light-hl-8: #267F99; + --dark-hl-8: #4EC9B0; + --light-hl-9: #800000; + --dark-hl-9: #808080; + --light-hl-10: #800000; + --dark-hl-10: #569CD6; + --light-hl-11: #000000FF; + --dark-hl-11: #D4D4D4; + --light-hl-12: #E50000; + --dark-hl-12: #9CDCFE; + --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); + --hl-10: var(--light-hl-10); + --hl-11: var(--light-hl-11); + --hl-12: var(--light-hl-12); + --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); + --hl-10: var(--dark-hl-10); + --hl-11: var(--dark-hl-11); + --hl-12: var(--dark-hl-12); + --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); + --hl-10: var(--light-hl-10); + --hl-11: var(--light-hl-11); + --hl-12: var(--light-hl-12); + --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); + --hl-10: var(--dark-hl-10); + --hl-11: var(--dark-hl-11); + --hl-12: var(--dark-hl-12); + --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); } +.hl-10 { color: var(--hl-10); } +.hl-11 { color: var(--hl-11); } +.hl-12 { color: var(--hl-12); } +pre, code { background: var(--code-background); } diff --git a/assets/main.js b/assets/main.js new file mode 100644 index 0000000..7270cff --- /dev/null +++ b/assets/main.js @@ -0,0 +1,59 @@ +"use strict"; +"use strict";(()=>{var Pe=Object.create;var ne=Object.defineProperty;var Ie=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=Ie(e,i))||r.enumerable});return t};var De=(t,e,n)=>(n=t!=null?Pe(_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),v=s.str.charAt(1),f;v in s.node.edges?f=s.node.edges[v]:(f=new t.TokenSet,s.node.edges[v]=f),s.str.length==1&&(f.final=!0),i.push({node:f,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.ensureActivePageVisible(),this.ensureFocusedElementVisible(),this.listenForCodeCopies(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible())}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()}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){let r=e.getBoundingClientRect().top-document.documentElement.clientHeight/4;document.querySelector(".site-menu").scrollTop=r}}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(()=>{Ne(t,e,n,r)},200));let i=!1;n.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?Ve(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 Ne(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 v=document.createElement("li");v.classList.value=l.classes??"";let f=document.createElement("a");f.href=r.base+l.url,f.innerHTML=u+d,v.append(f),e.appendChild(v)}}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 Ve(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 Be={"&":"&","<":"<",">":">","'":"'",'"':"""};function K(t){return t.replace(/[&<>"'"]/g,e=>Be[e])}var C=class{constructor(e){this.el=e.el,this.app=e.app}};var F="mousedown",pe="mousemove",B="mouseup",J={x:0,y:0},fe=!1,ee=!1,He=!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&&(He=!0,F="touchstart",pe="touchmove",B="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(pe,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(B,()=>{ee=!1});document.addEventListener("click",t=>{fe&&(t.preventDefault(),t.stopImmediatePropagation(),fe=!1)});var X=class extends C{constructor(e){super(e),this.className=this.el.dataset.toggle||"",this.el.addEventListener(B,n=>this.onPointerUp(n)),this.el.addEventListener("click",n=>n.preventDefault()),document.addEventListener(F,n=>this.onDocumentPointerDown(n)),document.addEventListener(B,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 ve=document.head.appendChild(document.createElement("style"));ve.dataset.for="filters";var Y=class extends C{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()),ve.innerHTML+=`html:not(.${this.key}) .tsd-is-${this.el.name} { display: none; } +`,this.handleValueChange()}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(),document.querySelectorAll(".tsd-index-section").forEach(e=>{e.style.display="block";let n=Array.from(e.querySelectorAll(".tsd-index-link")).every(r=>r.offsetParent==null);e.style.display=n?"none":"block"})}};var Z=class extends C{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,ye(e),t.addEventListener("change",()=>{Q.setItem("tsd-theme",t.value),ye(t.value)})}function ye(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.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.href===r.href&&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..7df0681 --- /dev/null +++ b/assets/navigation.js @@ -0,0 +1 @@ +window.navigationData = "data:application/octet-stream;base64,H4sIAAAAAAAAA4WQQQrCMBBF7zLrYrVo1W4FURAs4k5chHTUYExKMgWL9O5ilZjWUpfhzX/zJ4cHEN4JEliglDtdEEIAOaMLJMAlsxZt6NDgQjcJAVyFyiAZRbMqcPmVsKRN+Zv+gL6sW5AanduvQihCc2Lc71CPNGXRJPZkKTv3eBztU9SLzDYnoVW3pjHRp1pqc2u1oTJHGzrQSg/n09Ek8gxrxWWR4f71ajk89M+yEera2cOBfwZukBG+D/9KToXi9SeEPm+64nF1fALo/cUKaQIAAA==" \ No newline at end of file diff --git a/assets/search.js b/assets/search.js new file mode 100644 index 0000000..4dc6a51 --- /dev/null +++ b/assets/search.js @@ -0,0 +1 @@ +window.searchData = "data:application/octet-stream;base64,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"; \ No newline at end of file diff --git a/assets/style.css b/assets/style.css new file mode 100644 index 0000000..98a4377 --- /dev/null +++ b/assets/style.css @@ -0,0 +1,1414 @@ +: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 */ +.tsd-generator { + border-top: 1px solid var(--color-accent); + padding-top: 1rem; + padding-bottom: 1rem; + max-height: 3.5rem; +} + +.tsd-generator > p { + margin-top: 0; + margin-bottom: 0; + padding: 0 1rem; +} + +.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: "Segoe UI", sans-serif; + 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/classes/CellRoute.html b/classes/CellRoute.html new file mode 100644 index 0000000..8e48fd3 --- /dev/null +++ b/classes/CellRoute.html @@ -0,0 +1,11 @@ +CellRoute | Cell Router

Class CellRoute

Hierarchy

Implements

  • WebCell

Constructors

  • Returns CellRoute

Properties

component: FC<PageProps> | CustomElementConstructor

Accessors

inAnimation
  • get matched(): {
        [key: string]: string | undefined;
    }
  • Returns {
        [key: string]: string | undefined;
    }

    • [key: string]: string | undefined
  • get oldMatched(): {
        [key: string]: string | undefined;
    }
  • Returns {
        [key: string]: string | undefined;
    }

    • [key: string]: string | undefined
outAnimation
path

Methods

  • Returns void

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/History.html b/classes/History.html new file mode 100644 index 0000000..0188e92 --- /dev/null +++ b/classes/History.html @@ -0,0 +1,12 @@ +History | Cell Router

Class History

Constructors

Accessors

oldPath
path

Methods

  • Parameters

    • path: string = location.href

    Returns string

  • Parameters

    • path: string

    Returns URLData<unknown>

  • Parameters

    • pattern: string
    • path: string

    Returns {
        [key: string]: string | undefined;
    }

    • [key: string]: string | undefined

Generated using TypeDoc

\ No newline at end of file diff --git a/functions/createRouter.html b/functions/createRouter.html new file mode 100644 index 0000000..ac944d2 --- /dev/null +++ b/functions/createRouter.html @@ -0,0 +1 @@ +createRouter | Cell Router

Function createRouter

  • Parameters

    Returns {
        Form: ((__namedParameters) => VNode);
        Link: ((__namedParameters) => VNode);
        Route: ((__namedParameters) => VNode);
    }

    • Form: ((__namedParameters) => VNode)
        • (__namedParameters): VNode
        • Parameters

          Returns VNode

    • Link: ((__namedParameters) => VNode)
        • (__namedParameters): VNode
        • Parameters

          Returns VNode

    • Route: ((__namedParameters) => VNode)
        • (__namedParameters): VNode
        • Parameters

          Returns VNode

Generated using TypeDoc

\ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 0000000..c7128d4 --- /dev/null +++ b/index.html @@ -0,0 +1,41 @@ +Cell Router

Cell Router

Cell Router

Web Component Router based on WebCell & MobX

+

NPM Dependency +CI & CD

+

NPM

+

Demo

https://web-cell.dev/scaffold/

+

Feature

    +
  • +<iframe />-like Route Component as a Page Container

    +
  • +
  • +Page Link (support <a />, <area /> & <form />)

    +
      +
    • <a href="route/path">Page title</a>
    • +
    • <a href="route/path" title="Page title">Example page</a>
    • +
    • <a href="#page-section">Page section</a> (Scroll to an Anchor smoothly)
    • +
    • <form method="get" action="route/path" /> (Form Data processed by URLSearchParams)
    • +
    +
  • +
  • +Path Mode: location.hash (default) & history.pushState()

    +
  • +
  • +Async Loading (based on import() ECMAScript syntax)

    +
  • +
  • +Animate.css based Page Transition Animation

    +
  • +
+

Installation

Command

npm install dom-renderer web-cell cell-router
npm install parcel @parcel/config-default @parcel/transformer-typescript-tsc -D +
+

tsconfig.json

{
"compilerOptions": {
"target": "ES6",
"useDefineForClassFields": true,
"jsx": "react-jsx",
"jsxImportSource": "dom-renderer"
}
} +
+

.parcelrc

{
"extends": "@parcel/config-default",
"transformers": {
"*.{ts,tsx}": ["@parcel/transformer-typescript-tsc"]
}
} +
+

Usage

Sync Pages

source/index.tsx

import { DOMRenderer } from 'dom-renderer';
import { FC } from 'web-cell';
import { createRouter, PageProps } from 'cell-router';

const { Route, Link } = createRouter();

const TestPage: FC<PageProps> = ({
className,
style,
path,
history,
...data
}) => (
<ul {...{ className, style }}>
<li>Path: {path}</li>
<li>Data: {JSON.stringify(data)}</li>
</ul>
);

new DOMRenderer().render(
<>
<nav>
<Link to="test?a=1">Test</Link>
<Link to="example/2">Example</Link>
</nav>
<main className="router">
<Route
path=""
component={props => <div {...props}>Home Page</div>}
/>
<Route path="test" component={TestPage} />
<Route path="example/:id" component={TestPage} />
</main>
</>
); +
+

Async Pages

tsconfig.json

{
"compilerOptions": {
"module": "ES2020"
}
} +
+

source/index.tsx

import { DOMRenderer } from 'dom-renderer';
import { FC, lazy } from 'web-cell';
import { createRouter, PageProps } from 'cell-router';

const { Route, Link } = createRouter();

const TestPage: FC<PageProps> = ({
className,
style,
path,
history,
...data
}) => (
<ul {...{ className, style }}>
<li>Path: {path}</li>
<li>Data: {JSON.stringify(data)}</li>
</ul>
);
const AsyncPage = lazy(() => import('./Async'));

new DOMRenderer().render(
<>
<nav>
<Link to="test?a=1">Test</Link>
<Link to="example/2">Example</Link>
</nav>
<main className="router">
<Route
path=""
component={props => <div {...props}>Home Page</div>}
/>
<Route path="test" component={TestPage} />
<Route path="example/:id" component={AsyncPage} />
</main>
</>
); +
+

Generated using TypeDoc

\ No newline at end of file diff --git a/interfaces/CellRouteProps.html b/interfaces/CellRouteProps.html new file mode 100644 index 0000000..dc00f86 --- /dev/null +++ b/interfaces/CellRouteProps.html @@ -0,0 +1,102 @@ +CellRouteProps | Cell Router

Interface CellRouteProps

interface CellRouteProps {
    component: FC<PageProps> | CustomElementConstructor;
    inAnimation?: IncludeText<AnimationType, "In">;
    onAbort: ((event) => any);
    onAnimationCancel: ((event) => any);
    onAnimationEnd: ((event) => any);
    onAnimationIteration: ((event) => any);
    onAnimationStart: ((event) => any);
    onAuxClick: ((event) => any);
    onBeforeInput: ((event) => any);
    onBlur: ((event) => any);
    onCanPlay: ((event) => any);
    onCancel: ((event) => any);
    onCanplaythrough: ((event) => any);
    onChange: ((event) => any);
    onClick: ((event) => any);
    onClose: ((event) => any);
    onContextmenu: ((event) => any);
    onCopy: ((event) => any);
    onCueChange: ((event) => any);
    onCut: ((event) => any);
    onDblClick: ((event) => any);
    onDrag: ((event) => any);
    onDragEnd: ((event) => any);
    onDragEnter: ((event) => any);
    onDragLeave: ((event) => any);
    onDragOver: ((event) => any);
    onDragStart: ((event) => any);
    onDrop: ((event) => any);
    onDurationChange: ((event) => any);
    onEmptied: ((event) => any);
    onEnded: ((event) => any);
    onError: ((event) => any);
    onFocus: ((event) => any);
    onFormdata: ((event) => any);
    onFullscreenChange: ((event) => any);
    onFullscreenError: ((event) => any);
    onGotpointercapture: ((event) => any);
    onInput: ((event) => any);
    onInvalid: ((event) => any);
    onKeydown: ((event) => any);
    onKeypress: ((event) => any);
    onKeyup: ((event) => any);
    onLoad: ((event) => any);
    onLoadeddata: ((event) => any);
    onLoadedmetadata: ((event) => any);
    onLoadstart: ((event) => any);
    onLostpointercapture: ((event) => any);
    onMouseDown: ((event) => any);
    onMouseEnter: ((event) => any);
    onMouseLeave: ((event) => any);
    onMouseMove: ((event) => any);
    onMouseOut: ((event) => any);
    onMouseOver: ((event) => any);
    onMouseUp: ((event) => any);
    onPaste: ((event) => any);
    onPause: ((event) => any);
    onPlay: ((event) => any);
    onPlaying: ((event) => any);
    onPointerCancel: ((event) => any);
    onPointerDown: ((event) => any);
    onPointerEnter: ((event) => any);
    onPointerLeave: ((event) => any);
    onPointerMove: ((event) => any);
    onPointerOut: ((event) => any);
    onPointerOver: ((event) => any);
    onPointerUp: ((event) => any);
    onProgress: ((event) => any);
    onRateChange: ((event) => any);
    onReset: ((event) => any);
    onResize: ((event) => any);
    onScroll: ((event) => any);
    onScrollend: ((event) => any);
    onSecuritypolicyviolation: ((event) => any);
    onSeeked: ((event) => any);
    onSeeking: ((event) => any);
    onSelect: ((event) => any);
    onSelectionChange: ((event) => any);
    onSelectstart: ((event) => any);
    onSlotChange: ((event) => any);
    onStalled: ((event) => any);
    onSubmit: ((event) => any);
    onSuspend: ((event) => any);
    onTimeupdate: ((event) => any);
    onToggle: ((event) => any);
    onTouchCancel: ((event) => any);
    onTouchEnd: ((event) => any);
    onTouchMove: ((event) => any);
    onTouchStart: ((event) => any);
    onTransitionCancel: ((event) => any);
    onTransitionEnd: ((event) => any);
    onTransitionRun: ((event) => any);
    onTransitionStart: ((event) => any);
    onVolumeChange: ((event) => any);
    onWaiting: ((event) => any);
    onWebkitanimationend: ((event) => any);
    onWebkitanimationiteration: ((event) => any);
    onWebkitanimationstart: ((event) => any);
    onWebkittransitionend: ((event) => any);
    onWheel: ((event) => any);
    outAnimation?: IncludeText<AnimationType, "Out">;
    path: string;
}

Hierarchy

  • WebCellProps
    • CellRouteProps

Properties

component: FC<PageProps> | CustomElementConstructor
inAnimation?: IncludeText<AnimationType, "In">
onAbort: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onAnimationCancel: ((event) => any)

Type declaration

onAnimationEnd: ((event) => any)

Type declaration

onAnimationIteration: ((event) => any)

Type declaration

onAnimationStart: ((event) => any)

Type declaration

onAuxClick: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onBeforeInput: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onBlur: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onCanPlay: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onCancel: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onCanplaythrough: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onClick: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onClose: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onContextmenu: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onCopy: ((event) => any)

Type declaration

onCueChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onCut: ((event) => any)

Type declaration

onDblClick: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDrag: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDragEnd: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDragEnter: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDragLeave: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDragOver: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDragStart: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDrop: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDurationChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onEmptied: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onEnded: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onError: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onFocus: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onFormdata: ((event) => any)

Type declaration

onFullscreenChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onFullscreenError: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onGotpointercapture: ((event) => any)

Type declaration

onInput: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onInvalid: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onKeydown: ((event) => any)

Type declaration

onKeypress: ((event) => any)

Type declaration

onKeyup: ((event) => any)

Type declaration

onLoad: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onLoadeddata: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onLoadedmetadata: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onLoadstart: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onLostpointercapture: ((event) => any)

Type declaration

onMouseDown: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onMouseEnter: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onMouseLeave: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onMouseMove: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onMouseOut: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onMouseOver: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onMouseUp: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onPaste: ((event) => any)

Type declaration

onPause: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onPlay: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onPlaying: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onPointerCancel: ((event) => any)

Type declaration

onPointerDown: ((event) => any)

Type declaration

onPointerEnter: ((event) => any)

Type declaration

onPointerLeave: ((event) => any)

Type declaration

onPointerMove: ((event) => any)

Type declaration

onPointerOut: ((event) => any)

Type declaration

onPointerOver: ((event) => any)

Type declaration

onPointerUp: ((event) => any)

Type declaration

onProgress: ((event) => any)

Type declaration

onRateChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onReset: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onResize: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onScroll: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onScrollend: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSecuritypolicyviolation: ((event) => any)

Type declaration

onSeeked: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSeeking: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSelect: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSelectionChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSelectstart: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSlotChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onStalled: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSubmit: ((event) => any)

Type declaration

onSuspend: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onTimeupdate: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onToggle: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onTouchCancel: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onTouchEnd: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onTouchMove: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onTouchStart: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onTransitionCancel: ((event) => any)

Type declaration

onTransitionEnd: ((event) => any)

Type declaration

onTransitionRun: ((event) => any)

Type declaration

onTransitionStart: ((event) => any)

Type declaration

onVolumeChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onWaiting: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onWebkitanimationend: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onWebkitanimationiteration: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onWebkitanimationstart: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onWebkittransitionend: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onWheel: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

outAnimation?: IncludeText<AnimationType, "Out">
path: string

Generated using TypeDoc

\ No newline at end of file diff --git a/interfaces/PageProps.html b/interfaces/PageProps.html new file mode 100644 index 0000000..e18032e --- /dev/null +++ b/interfaces/PageProps.html @@ -0,0 +1,100 @@ +PageProps | Cell Router

Interface PageProps

interface PageProps {
    history: History;
    onAbort: ((event) => any);
    onAnimationCancel: ((event) => any);
    onAnimationEnd: ((event) => any);
    onAnimationIteration: ((event) => any);
    onAnimationStart: ((event) => any);
    onAuxClick: ((event) => any);
    onBeforeInput: ((event) => any);
    onBlur: ((event) => any);
    onCanPlay: ((event) => any);
    onCancel: ((event) => any);
    onCanplaythrough: ((event) => any);
    onChange: ((event) => any);
    onClick: ((event) => any);
    onClose: ((event) => any);
    onContextmenu: ((event) => any);
    onCopy: ((event) => any);
    onCueChange: ((event) => any);
    onCut: ((event) => any);
    onDblClick: ((event) => any);
    onDrag: ((event) => any);
    onDragEnd: ((event) => any);
    onDragEnter: ((event) => any);
    onDragLeave: ((event) => any);
    onDragOver: ((event) => any);
    onDragStart: ((event) => any);
    onDrop: ((event) => any);
    onDurationChange: ((event) => any);
    onEmptied: ((event) => any);
    onEnded: ((event) => any);
    onError: ((event) => any);
    onFocus: ((event) => any);
    onFormdata: ((event) => any);
    onFullscreenChange: ((event) => any);
    onFullscreenError: ((event) => any);
    onGotpointercapture: ((event) => any);
    onInput: ((event) => any);
    onInvalid: ((event) => any);
    onKeydown: ((event) => any);
    onKeypress: ((event) => any);
    onKeyup: ((event) => any);
    onLoad: ((event) => any);
    onLoadeddata: ((event) => any);
    onLoadedmetadata: ((event) => any);
    onLoadstart: ((event) => any);
    onLostpointercapture: ((event) => any);
    onMouseDown: ((event) => any);
    onMouseEnter: ((event) => any);
    onMouseLeave: ((event) => any);
    onMouseMove: ((event) => any);
    onMouseOut: ((event) => any);
    onMouseOver: ((event) => any);
    onMouseUp: ((event) => any);
    onPaste: ((event) => any);
    onPause: ((event) => any);
    onPlay: ((event) => any);
    onPlaying: ((event) => any);
    onPointerCancel: ((event) => any);
    onPointerDown: ((event) => any);
    onPointerEnter: ((event) => any);
    onPointerLeave: ((event) => any);
    onPointerMove: ((event) => any);
    onPointerOut: ((event) => any);
    onPointerOver: ((event) => any);
    onPointerUp: ((event) => any);
    onProgress: ((event) => any);
    onRateChange: ((event) => any);
    onReset: ((event) => any);
    onResize: ((event) => any);
    onScroll: ((event) => any);
    onScrollend: ((event) => any);
    onSecuritypolicyviolation: ((event) => any);
    onSeeked: ((event) => any);
    onSeeking: ((event) => any);
    onSelect: ((event) => any);
    onSelectionChange: ((event) => any);
    onSelectstart: ((event) => any);
    onSlotChange: ((event) => any);
    onStalled: ((event) => any);
    onSubmit: ((event) => any);
    onSuspend: ((event) => any);
    onTimeupdate: ((event) => any);
    onToggle: ((event) => any);
    onTouchCancel: ((event) => any);
    onTouchEnd: ((event) => any);
    onTouchMove: ((event) => any);
    onTouchStart: ((event) => any);
    onTransitionCancel: ((event) => any);
    onTransitionEnd: ((event) => any);
    onTransitionRun: ((event) => any);
    onTransitionStart: ((event) => any);
    onVolumeChange: ((event) => any);
    onWaiting: ((event) => any);
    onWebkitanimationend: ((event) => any);
    onWebkitanimationiteration: ((event) => any);
    onWebkitanimationstart: ((event) => any);
    onWebkittransitionend: ((event) => any);
    onWheel: ((event) => any);
    path: string;
    [key: string]: any;
}

Hierarchy

Indexable

[key: string]: any

Properties

history: History
onAbort: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onAnimationCancel: ((event) => any)

Type declaration

onAnimationEnd: ((event) => any)

Type declaration

onAnimationIteration: ((event) => any)

Type declaration

onAnimationStart: ((event) => any)

Type declaration

onAuxClick: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onBeforeInput: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onBlur: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onCanPlay: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onCancel: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onCanplaythrough: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onClick: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onClose: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onContextmenu: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onCopy: ((event) => any)

Type declaration

onCueChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onCut: ((event) => any)

Type declaration

onDblClick: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDrag: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDragEnd: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDragEnter: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDragLeave: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDragOver: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDragStart: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDrop: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onDurationChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onEmptied: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onEnded: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onError: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onFocus: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onFormdata: ((event) => any)

Type declaration

onFullscreenChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onFullscreenError: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onGotpointercapture: ((event) => any)

Type declaration

onInput: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onInvalid: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onKeydown: ((event) => any)

Type declaration

onKeypress: ((event) => any)

Type declaration

onKeyup: ((event) => any)

Type declaration

onLoad: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onLoadeddata: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onLoadedmetadata: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onLoadstart: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onLostpointercapture: ((event) => any)

Type declaration

onMouseDown: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onMouseEnter: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onMouseLeave: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onMouseMove: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onMouseOut: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onMouseOver: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onMouseUp: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onPaste: ((event) => any)

Type declaration

onPause: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onPlay: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onPlaying: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onPointerCancel: ((event) => any)

Type declaration

onPointerDown: ((event) => any)

Type declaration

onPointerEnter: ((event) => any)

Type declaration

onPointerLeave: ((event) => any)

Type declaration

onPointerMove: ((event) => any)

Type declaration

onPointerOut: ((event) => any)

Type declaration

onPointerOver: ((event) => any)

Type declaration

onPointerUp: ((event) => any)

Type declaration

onProgress: ((event) => any)

Type declaration

onRateChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onReset: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onResize: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onScroll: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onScrollend: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSecuritypolicyviolation: ((event) => any)

Type declaration

onSeeked: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSeeking: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSelect: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSelectionChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSelectstart: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSlotChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onStalled: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onSubmit: ((event) => any)

Type declaration

onSuspend: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onTimeupdate: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onToggle: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onTouchCancel: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onTouchEnd: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onTouchMove: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onTouchStart: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onTransitionCancel: ((event) => any)

Type declaration

onTransitionEnd: ((event) => any)

Type declaration

onTransitionRun: ((event) => any)

Type declaration

onTransitionStart: ((event) => any)

Type declaration

onVolumeChange: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onWaiting: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onWebkitanimationend: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onWebkitanimationiteration: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onWebkitanimationstart: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onWebkittransitionend: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

onWheel: ((event) => any)

Type declaration

    • (event): any
    • Parameters

      Returns any

path: string

Generated using TypeDoc

\ No newline at end of file diff --git a/interfaces/RouterOptions.html b/interfaces/RouterOptions.html new file mode 100644 index 0000000..a6e26c7 --- /dev/null +++ b/interfaces/RouterOptions.html @@ -0,0 +1,4 @@ +RouterOptions | Cell Router

Interface RouterOptions

interface RouterOptions {
    inAnimation?: IncludeText<AnimationType, "In">;
    mode?: "history" | "hash";
    outAnimation?: IncludeText<AnimationType, "Out">;
}

Hierarchy

Properties

inAnimation?: IncludeText<AnimationType, "In">
mode?: "history" | "hash"
outAnimation?: IncludeText<AnimationType, "Out">

Generated using TypeDoc

\ No newline at end of file diff --git a/modules.html b/modules.html new file mode 100644 index 0000000..0452c04 --- /dev/null +++ b/modules.html @@ -0,0 +1,10 @@ +Cell Router

Generated using TypeDoc

\ No newline at end of file diff --git a/types/FormProps.html b/types/FormProps.html new file mode 100644 index 0000000..4b77e99 --- /dev/null +++ b/types/FormProps.html @@ -0,0 +1 @@ +FormProps | Cell Router

Type alias FormProps

FormProps: JsxProps<HTMLFormElement>

Generated using TypeDoc

\ No newline at end of file diff --git a/types/IncludeText.html b/types/IncludeText.html new file mode 100644 index 0000000..214379e --- /dev/null +++ b/types/IncludeText.html @@ -0,0 +1 @@ +IncludeText | Cell Router

Type alias IncludeText<Raw, Sub>

IncludeText<Raw, Sub>: {
    [K in Raw]: K extends `${string}${Sub}${string}`
        ? K
        : never
}[Raw]

Type Parameters

  • Raw extends string

  • Sub extends string

Generated using TypeDoc

\ No newline at end of file diff --git a/types/LinkProps.html b/types/LinkProps.html new file mode 100644 index 0000000..dd6b39b --- /dev/null +++ b/types/LinkProps.html @@ -0,0 +1 @@ +LinkProps | Cell Router

Type alias LinkProps

LinkProps: PropsWithChildren<{
    to: string;
}>

Type declaration

  • to: string

Generated using TypeDoc

\ No newline at end of file