diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000..e2ac6616 --- /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 00000000..b0db8f91 --- /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: #AF00DB; + --dark-hl-4: #C586C0; + --light-hl-5: #001080; + --dark-hl-5: #9CDCFE; + --light-hl-6: #0070C1; + --dark-hl-6: #4FC1FF; + --light-hl-7: #800000; + --dark-hl-7: #808080; + --light-hl-8: #800000; + --dark-hl-8: #569CD6; + --light-hl-9: #000000FF; + --dark-hl-9: #D4D4D4; + --light-hl-10: #E50000; + --dark-hl-10: #9CDCFE; + --light-hl-11: #0000FF; + --dark-hl-11: #CE9178; + --light-hl-12: #008000; + --dark-hl-12: #6A9955; + --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 00000000..d0aa8d5f --- /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(n){super(n);this.className=this.el.dataset.toggle||"",this.el.addEventListener(B,r=>this.onPointerUp(r)),this.el.addEventListener("click",r=>r.preventDefault()),document.addEventListener(F,r=>this.onDocumentPointerDown(r)),document.addEventListener(B,r=>this.onDocumentPointerUp(r))}setActive(n){if(this.active==n)return;this.active=n,document.documentElement.classList.toggle("has-"+this.className,n),this.el.classList.toggle("active",n);let r=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(r),setTimeout(()=>document.documentElement.classList.remove(r),500)}onPointerUp(n){D||(this.setActive(!0),n.preventDefault())}onDocumentPointerDown(n){if(this.active){if(n.target.closest(".col-sidebar, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(n){if(!D&&this.active&&n.target.closest(".col-sidebar")){let r=n.target.closest("a");if(r){let i=window.location.href;i.indexOf("#")!=-1&&(i=i.substring(0,i.indexOf("#"))),r.href.substring(0,i.length)==i&&setTimeout(()=>this.setActive(!1),250)}}}};var te;try{te=localStorage}catch{te={getItem(){return null},setItem(){}}}var Q=te;var ve=document.head.appendChild(document.createElement("style"));ve.dataset.for="filters";var Y=class extends C{constructor(n){super(n);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; } +`}fromLocalStorage(){let n=Q.getItem(this.key);return n?n==="true":this.el.checked}setLocalStorage(n){Q.setItem(this.key,n.toString()),this.value=n,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(n=>{n.style.display="block";let r=Array.from(n.querySelectorAll(".tsd-index-link")).every(i=>i.offsetParent==null);n.style.display=r?"none":"block"})}};var Z=class extends C{constructor(n){super(n);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 r=Q.getItem(this.key);this.el.open=r?r==="true":this.el.open,this.el.addEventListener("toggle",()=>this.update());let i=this.summary.querySelector("a");i&&i.addEventListener("click",()=>{location.assign(i.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 00000000..925ad53a --- /dev/null +++ b/assets/navigation.js @@ -0,0 +1 @@ +window.navigationData = "data:application/octet-stream;base64,H4sIAAAAAAAAA5WVTW+cMBCG/wvnqGlWTdrmlmRbaaW2ibLd5lD14LIDO1qwkT1oQ6v+9+IAuxh/kSN+/D4a7GH4+TcheKbkOrkhUSZnScVo1z6lBVMK1LlefbOjsmjRHvk2ub5YfPh3dkzdibJk7bIV7EEou4SqEA1sb6rKzo9g0IESUhKycRgGFMqvuCLGU7DjAwmnSWz4FmTRIM9vG4K1qKXb5t45375Gvo959Z5XGGfVGq/zof5doNo9sHTPcrivqarJtrp2hayPNScsHeX1IJTdKJB2UK/GUn15S8iQI6Hgbo21LeT9IYra9SLdeij5xFTpepNuPZ7sy/QJehzuGKTpjSInkBlLX1plwKZkcXk1krTf8J3gGeYnBzWVni4DmKTffnx/cbkwDasttPee4fg8jpYTjJlumQJvPQaMmfSEE/y+0tevpiYDxkzDrFuZo7AzGTBqQvmJ03ga9pJ+fUa+m5n6Yh2SE4yZ9J4VN/qmsxxBzPCNleA6kGE9lp+2bZd2dquV7b8M6+/WOUw60/WVccxAWQVNcMzWTj9Py53IDIeeoH7PiMZc64odfBWNWdTT8NTbMwaMmbqx+hkLmGpOZL5jyYj5PZq+yhWoSdN5ru8SPB5NYo5u9nvPeoLn2R4hR9XOF/dYde2JedEYQFnN05c2Okdr9ly9m8R0t/iimkXiyAr8A19Eno9/NaZmvCegkzVv3x2fXZqBBeIKaDg0l2GEw5InIfcgN7LwWI48oDkwWhzae3QpBmbFf/0HNI3mB18MAAA=" \ No newline at end of file diff --git a/assets/search.js b/assets/search.js new file mode 100644 index 00000000..823dd4eb --- /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 00000000..07a385b7 --- /dev/null +++ b/assets/style.css @@ -0,0 +1,1394 @@ +: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: var(--light-color-ts-type-alias); + --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: var(--dark-color-ts-type-alias); + --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, +h2 > a, +h3 > a, +h4 > a, +h5 > a, +h6 > a { + text-decoration: none; + color: var(--color-text); +} + +h1 { + font-size: 1.875rem; + margin: 0.67rem 0; +} + +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-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.5rem); +} +.tsd-navigation a, +.tsd-navigation summary > span, +.tsd-page-navigation a { + display: inline-flex; + 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-nested-navigation > li > a, +.tsd-nested-navigation > li > span { + width: calc(100% - 1.75rem - 0.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/Atom.html b/classes/Atom.html new file mode 100644 index 00000000..89625766 --- /dev/null +++ b/classes/Atom.html @@ -0,0 +1,3 @@ +Atom | @wasmer/sdk

Class Atom

Constructors

Methods

Constructors

Methods

  • Returns void

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/Command.html b/classes/Command.html new file mode 100644 index 00000000..4729d24b --- /dev/null +++ b/classes/Command.html @@ -0,0 +1,8 @@ +Command | @wasmer/sdk

Class Command

A runnable WASIX command.

+

Constructors

Properties

Methods

Constructors

Properties

name: string

Methods

  • Read the binary that will be

    +

    Returns Uint8Array

  • Returns void

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/DeployedApp.html b/classes/DeployedApp.html new file mode 100644 index 00000000..be1e655a --- /dev/null +++ b/classes/DeployedApp.html @@ -0,0 +1,13 @@ +DeployedApp | @wasmer/sdk

Class DeployedApp

Constructors

Properties

app_id?: string
config: string
created_at: string
description?: string
id: string
json_config: string
url: string
user_yaml_config: string
version: string
yaml_config: string

Methods

  • Returns void

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/Directory.html b/classes/Directory.html new file mode 100644 index 00000000..27917f2d --- /dev/null +++ b/classes/Directory.html @@ -0,0 +1,23 @@ +Directory | @wasmer/sdk

Class Directory

A directory that can be mounted inside a WASIX instance.

+

Constructors

Methods

  • Returns string

  • Create a directory.

    +

    Parameters

    • path: string

    Returns Promise<void>

  • Returns void

  • Read the contents of a directory.

    +

    Parameters

    • path: string

    Returns Promise<DirEntry[]>

  • Read the contents of a file from this directory.

    +

    Note that the path is relative to the directory's root.

    +

    Parameters

    • path: string

    Returns Promise<Uint8Array>

  • Read the contents of a file from this directory as a UTF-8 string.

    +

    Note that the path is relative to the directory's root.

    +

    Parameters

    • path: string

    Returns Promise<string>

  • Remove a directory.

    +

    Parameters

    • path: string

    Returns Promise<void>

  • Remove a file.

    +

    Parameters

    • path: string

    Returns Promise<void>

  • Write to a file.

    +

    If a string is provided, it is encoded as UTF-8.

    +

    Parameters

    • path: string
    • contents: string | Uint8Array

    Returns Promise<void>

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/Instance.html b/classes/Instance.html new file mode 100644 index 00000000..00507732 --- /dev/null +++ b/classes/Instance.html @@ -0,0 +1,13 @@ +Instance | @wasmer/sdk

Class Instance

A handle connected to a running WASIX program.

+

Constructors

Properties

Methods

Constructors

Properties

stderr: ReadableStream<any>

The WASI program's standard error.

+
stdin: undefined | WritableStream<any>

The standard input stream, if one wasn't provided when starting the +instance.

+
stdout: ReadableStream<any>

The WASI program's standard output.

+

Methods

  • Returns void

  • Wait for the process to exit.

    +

    Returns Promise<Output>

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/IntoUnderlyingByteSource.html b/classes/IntoUnderlyingByteSource.html new file mode 100644 index 00000000..4f65a075 --- /dev/null +++ b/classes/IntoUnderlyingByteSource.html @@ -0,0 +1,8 @@ +IntoUnderlyingByteSource | @wasmer/sdk

Class IntoUnderlyingByteSource

Constructors

Properties

Methods

Constructors

Properties

autoAllocateChunkSize: number
type: string

Methods

  • Returns void

  • Returns void

  • Parameters

    • controller: ReadableByteStreamController

    Returns Promise<any>

  • Parameters

    • controller: ReadableByteStreamController

    Returns void

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/IntoUnderlyingSink.html b/classes/IntoUnderlyingSink.html new file mode 100644 index 00000000..523ea902 --- /dev/null +++ b/classes/IntoUnderlyingSink.html @@ -0,0 +1,6 @@ +IntoUnderlyingSink | @wasmer/sdk

Class IntoUnderlyingSink

Constructors

Methods

Constructors

Methods

  • Parameters

    • reason: any

    Returns Promise<any>

  • Returns Promise<any>

  • Returns void

  • Parameters

    • chunk: any

    Returns Promise<any>

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/IntoUnderlyingSource.html b/classes/IntoUnderlyingSource.html new file mode 100644 index 00000000..bca4d422 --- /dev/null +++ b/classes/IntoUnderlyingSource.html @@ -0,0 +1,5 @@ +IntoUnderlyingSource | @wasmer/sdk

Class IntoUnderlyingSource

Constructors

Methods

Constructors

Methods

  • Returns void

  • Returns void

  • Parameters

    • controller: ReadableStreamDefaultController<any>

    Returns Promise<any>

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/PublishPackageOutput.html b/classes/PublishPackageOutput.html new file mode 100644 index 00000000..76f6c2d6 --- /dev/null +++ b/classes/PublishPackageOutput.html @@ -0,0 +1,5 @@ +PublishPackageOutput | @wasmer/sdk

Class PublishPackageOutput

Constructors

Properties

Methods

Constructors

Properties

hash: string
manifest: any

Methods

  • Returns void

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/Runtime.html b/classes/Runtime.html new file mode 100644 index 00000000..e3f81ddf --- /dev/null +++ b/classes/Runtime.html @@ -0,0 +1,7 @@ +Runtime | @wasmer/sdk

Class Runtime

Constructors

Methods

Constructors

Methods

  • Returns string

  • Returns void

  • Get a reference to the global runtime, optionally initializing it if +requested.

    +

    Parameters

    • Optional initialize: boolean

    Returns undefined | Runtime

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/User.html b/classes/User.html new file mode 100644 index 00000000..5dc01fab --- /dev/null +++ b/classes/User.html @@ -0,0 +1,5 @@ +User | @wasmer/sdk

Class User

Constructors

Properties

Methods

Constructors

Properties

id: string
username: string

Methods

  • Returns void

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/UserPackageDefinition.html b/classes/UserPackageDefinition.html new file mode 100644 index 00000000..dc861771 --- /dev/null +++ b/classes/UserPackageDefinition.html @@ -0,0 +1,5 @@ +UserPackageDefinition | @wasmer/sdk

Class UserPackageDefinition

Constructors

Properties

Methods

Constructors

Properties

hash: string

Methods

  • Returns string

  • Returns void

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/Volume.html b/classes/Volume.html new file mode 100644 index 00000000..e0e03b33 --- /dev/null +++ b/classes/Volume.html @@ -0,0 +1,3 @@ +Volume | @wasmer/sdk

Class Volume

Constructors

Methods

Constructors

Methods

  • Returns void

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/Wasmer.html b/classes/Wasmer.html new file mode 100644 index 00000000..94e84f1a --- /dev/null +++ b/classes/Wasmer.html @@ -0,0 +1,27 @@ +Wasmer | @wasmer/sdk

Class Wasmer

A package from the Wasmer registry.

+

Example

import { Wasmer } from "@wasmer/sdk";

const pkg = await Wasmer.fromRegistry("wasmer/python");
const instance = await pkg.entrypoint!.run({ args: ["--version"]});
const { ok, code, stdout, stderr } = await instance.wait();

if (ok) {
console.log(`Version:`, stdout);
} else {
throw new Error(`Python exited with ${code}: ${stderr}`);
} +
+

Constructors

Properties

commands: Record<string, Command>

A map containing all commands available to the package (including +dependencies).

+
entrypoint?: Command

The package's entrypoint.

+

Methods

  • Returns string

  • Returns void

  • Create a WasmerPackage.

    +

    Parameters

    Returns Promise<Wasmer>

  • Delete an app from the registry.

    +

    Parameters

    Returns Promise<void>

  • Deploy an app to the registry.

    +

    Parameters

    Returns Promise<DeployedApp>

  • Load a package from a package file.

    +

    Parameters

    • binary: Uint8Array
    • Optional runtime: Runtime

    Returns Promise<Wasmer>

  • Load a package from the Wasmer registry.

    +

    Parameters

    • specifier: string
    • Optional runtime: Runtime

    Returns Promise<Wasmer>

  • Deploy an app to the registry.

    +

    Returns Promise<undefined | User>

Generated using TypeDoc

\ No newline at end of file diff --git a/classes/WasmerPackage.html b/classes/WasmerPackage.html new file mode 100644 index 00000000..6548ae35 --- /dev/null +++ b/classes/WasmerPackage.html @@ -0,0 +1,5 @@ +WasmerPackage | @wasmer/sdk

Class WasmerPackage

Constructors

Properties

Methods

Constructors

Properties

data: Uint8Array
manifest: object

Methods

  • Returns void

Generated using TypeDoc

\ No newline at end of file diff --git a/functions/init.html b/functions/init.html new file mode 100644 index 00000000..3fa79dad --- /dev/null +++ b/functions/init.html @@ -0,0 +1,2 @@ +init | @wasmer/sdk

Function init

Generated using TypeDoc

\ No newline at end of file diff --git a/functions/initSync.html b/functions/initSync.html new file mode 100644 index 00000000..15060912 --- /dev/null +++ b/functions/initSync.html @@ -0,0 +1,3 @@ +initSync | @wasmer/sdk

Function initSync

  • Instantiates the given module, which can either be bytes or +a precompiled WebAssembly.Module.

    +

    Parameters

    Returns InitOutput

Generated using TypeDoc

\ No newline at end of file diff --git a/functions/initializeLogger.html b/functions/initializeLogger.html new file mode 100644 index 00000000..cb342511 --- /dev/null +++ b/functions/initializeLogger.html @@ -0,0 +1,19 @@ +initializeLogger | @wasmer/sdk

Function initializeLogger

  • Initialize the logger used by @wasmer/wasix.

    +

    This function can only be called once. Subsequent calls will raise an +exception.

    +

    Filtering Logs

    The filter string can be used to tweak logging verbosity, both globally +or on a per-module basis, and follows the $RUST_LOG format.

    +

    Some examples:

    +
      +
    • off - turn off all logs
    • +
    • error, warn, info, debug, trace - set the global log level
    • +
    • wasmer_wasix - enable logs for wasmer_wasix
    • +
    • info,wasmer_js::package_loader=trace - set the global log level to +info and set wasmer_js::package_loader to trace
    • +
    • wasmer_js=debug/flush - turns on debug logging for +wasmer_js where the log message includes flush
    • +
    • warn,wasmer=info,wasmer_wasix::syscalls::wasi=trace - directives can be +mixed arbitrarily
    • +
    +

    When no filter string is provided, a useful default will be used.

    +

    Parameters

    • Optional filter: string

    Returns void

Generated using TypeDoc

\ No newline at end of file diff --git a/functions/runWasix.html b/functions/runWasix.html new file mode 100644 index 00000000..9220b6b1 --- /dev/null +++ b/functions/runWasix.html @@ -0,0 +1,7 @@ +runWasix | @wasmer/sdk

Function runWasix

  • Run a WASIX program.

    +

    WASI Compatibility

    The WASIX standard is a superset of WASI preview 1, so programs +compiled to WASI will run without any problems.

    +

    WASI Preview 2 is a backwards incompatible rewrite of WASI +to use the experimental Component Model Proposal. That +means programs compiled for WASI Preview 2 will fail to load.

    +

    Parameters

    • wasm_module: Module | Uint8Array
    • config: RunOptions

    Returns Promise<Instance>

Generated using TypeDoc

\ No newline at end of file diff --git a/functions/setRegistry.html b/functions/setRegistry.html new file mode 100644 index 00000000..ee7abdb5 --- /dev/null +++ b/functions/setRegistry.html @@ -0,0 +1 @@ +setRegistry | @wasmer/sdk

Generated using TypeDoc

\ No newline at end of file diff --git a/functions/setWorkerUrl.html b/functions/setWorkerUrl.html new file mode 100644 index 00000000..4f564b83 --- /dev/null +++ b/functions/setWorkerUrl.html @@ -0,0 +1 @@ +setWorkerUrl | @wasmer/sdk

Function setWorkerUrl

  • Parameters

    • url: string

    Returns void

Generated using TypeDoc

\ No newline at end of file diff --git a/functions/wat2wasm.html b/functions/wat2wasm.html new file mode 100644 index 00000000..618487db --- /dev/null +++ b/functions/wat2wasm.html @@ -0,0 +1 @@ +wat2wasm | @wasmer/sdk

Function wat2wasm

  • Parameters

    • wat: string

    Returns Uint8Array

Generated using TypeDoc

\ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 00000000..ef6619d0 --- /dev/null +++ b/index.html @@ -0,0 +1,85 @@ +@wasmer/sdk

@wasmer/sdk

The Wasmer JavaScript SDK

npm (scoped) +NPM Downloads +License +Wasmer Discord Channel +API Docs

+

Javascript library for running Wasmer packages at ease, including WASI and WASIX modules.

+

Getting Started

Install from NPM

For instaling @wasmer/sdk, run this command in your shell:

+
npm install --save @wasmer/sdk
+
+

You can now run packages from the Wasmer registry:

+
import { init, Wasmer } from "@wasmer/sdk";

await init();

const pkg = await Wasmer.fromRegistry("python/python");
const instance = await pkg.entrypoint.run({
args: ["-c", "print('Hello, World!')"],
});

const { code, stdout } = await instance.wait();
console.log(`Python exited with ${code}: ${stdout}`); +
+

Use with a <script> tag (without bundler)

It is possible to avoid needing to use a bundler by importing @wasmer/sdk from your script tag in unpkg.

+
<script defer type="module">
import { init, Wasmer } from "https://unpkg.com/@wasmer/sdk@latest";

async function runPython() {
await init();

const packageName = "python/python";
const pkg = await Wasmer.fromRegistry(packageName);
const instance = await pkg.entrypoint.run({
args: ["-c", "print('Hello, World!')"],
});

const { code, stdout } = await instance.wait();

console.log(`Python exited with ${code}: ${stdout}`);
}

runPython();
</script> +
+

Using a custom Wasm file

By default, init will load the Wasmer SDK WebAssembly file from the package. +If you want to customize this behavior you can pass a custom url to the init, so the the wasm file +of the Wasmer SDK can ve served by your HTTP server instead:

+
import { init, Wasmer } from "@wasmer/sdk";
import wasmerSDKModule from "@wasmer/sdk/wasm?url";

await init({ module: wasmUrl }); // This inits the SDK with a custom URL +
+

Using a JS with the Wasm bundled

You can also load Wasmer-JS with a js file with the Wasmer SDK WebAssembly file bundled into it (using base64 encoding), +so no extra requests are required. If that's your use case, you can simply import @wasmer/sdk/wasm-inline:

+
import { init, Wasmer } from "@wasmer/sdk";
import wasmerSDKModule from "@wasmer/sdk/wasm-inline";

await init({ module: wasmerSDKModule }); // This uses the inline wasmer SDK version +
+

Cross-Origin Isolation

Browsers have implemented security measures to mitigate the Spectre and Meltdown +vulnerabilities.

+

These measures restrict the sharing of `SharedArrayBuffer`` objects with Web +Workers unless the execution context is deemed secure.

+

The @wasmer/sdk package uses a threadpool built on Web Workers and requires +sharing the same SharedArrayBuffer across multiple workers to enable WASIX +threads to access the same address space. This requirement is crucial even for +running single-threaded WASIX programs because the SDK internals rely on +SharedArrayBuffer for communication with Web Workers.

+

To avoid Cross-Origin Isolation issues, make sure any web pages using +@wasmer/sdk are served over HTTPS and have the following headers set:

+
"Cross-Origin-Opener-Policy": "same-origin"
"Cross-Origin-Embedder-Policy": "require-corp" +
+

See the SharedArrayBuffer and Cross-Origin Isolation section under +the Troubleshooting Common Problems docs for more.

+

Creating packages

Users can create packages providing a manifest and using the Wasmer.createPackage() function:

+
import { init, Wasmer } from "@wasmer/sdk";

await init({ token: "YOUR_TOKEN" });

const manifest = {
command: [
{
module: "wasmer/python:python",
name: "hello",
runner: "wasi",
annotations: {
wasi: {
"main-args": [
"-c",
"print('Hello, js!'); ",
],
},
},
},
],
dependencies: {
"wasmer/python": "3.12.9+build.9",
}
};

let pkg = await Wasmer.createPackage(manifest);
let instance = await pkg.commands["hello"].run();

const output = await instance.wait();
console.log(output) +
+

Publishing packages

User can publish packages following the same flow used to create a package and then calling the Wasmer.publishPackage() function:

+
import { init, Wasmer } from "@wasmer/sdk";

await init({ token: "YOUR_TOKEN" });

const manifest = {
package: {
name: "<YOUR_NAME>/<YOUR_PACKAGE_NAME>"
}
command: [
{
module: "wasmer/python:python",
name: "hello",
runner: "wasi",
annotations: {
wasi: {
"main-args": [
"-c",
"print('Hello, js!'); ",
],
},
},
},
],
dependencies: {
"wasmer/python": "3.12.9+build.9",
}
};

let pkg = await Wasmer.createPackage(manifest);
await Wasmer.publishPackage(pkg); +
+

Trying to publish packages without a package.name property in the manifest will result in a failure.

+

Deploying apps

User can deploy apps by providing an app configuration and calling the Wasmer.deployApp() function:

+
import { init, Wasmer } from "@wasmer/sdk";

// Get your token here: https://wasmer.io/settings/access-tokens
await init({ token: "YOUR_TOKEN" });

let appConfig = {
name: "<YOUR_APP_NAME>",
owner: "<YOUR_NAME>",
package: "wasmer/hello"
default: true,
};

await Wasmer.deployApp(appConfig); +
+

Users can also publish apps with their own packages simply providing the package in the config:

+
import wasmUrl from "@wasmer/sdk";

// Get your token here: https://wasmer.io/settings/access-tokens
await init({token: "YOUR_TOKEN"});

const echo_server_index = `
async function handler(request) {
const out = JSON.stringify({
env: process.env,
});
return new Response(out, {
headers: { "content-type": "application/json" },
});
}

addEventListener("fetch", (fetchEvent) => {
fetchEvent.respondWith(handler(fetchEvent.request));
});
`;


const manifest =
{
"command": [
{
"module": "wasmer/winterjs:winterjs",
"name": "script",
"runner": "https://webc.org/runner/wasi",
"annotations": {
"wasi": {
"env": [
"JS_PATH=/src/index.js"
],
"main-args": [
"/src/index.js"
]
}
}
}
],
"dependencies": {
"wasmer/winterjs": "1.2.0"
},
"fs": {
"/src": {
"index.js": echo_server_index
}
},
};

let wasmerPackage = await Wasmer.createPackage(manifest);

let appConfig = {
name: "my-echo-env-app",
owner: "edoardo",
package: wasmerPackage,
default: true,
};

let res = await Wasmer.deployApp(appConfig);
console.log(res.url) +
+

Features

The Wasmer SDK Javascript Package supports:

+
    +
  • WASI support
      +
    • Environment variables
    • +
    • FileSystem access
    • +
    • Command-line arguments
    • +
    • Stdio
    • +
    +
  • +
  • WASIX support
      +
    • Multi-threading
    • +
    • Spawning sub-processes
    • +
    • Networking (on the works)
    • +
    +
  • +
  • Mounting directories inside the WASIX instance
  • +
  • Running packages from the Wasmer Registry
  • +
  • Platforms
      +
    • Browser
    • +
    • NodeJS
    • +
    • Deno
    • +
    +
  • +
  • Registry API
      +
    • Create a package
    • +
    • Publish a package
    • +
    • Deploy an application
    • +
    +
  • +
+

License

The entire project is under the MIT License. Please read the +LICENSE file.

+

Generated using TypeDoc

\ No newline at end of file diff --git a/interfaces/InitOutput.html b/interfaces/InitOutput.html new file mode 100644 index 00000000..80d9823e --- /dev/null +++ b/interfaces/InitOutput.html @@ -0,0 +1,127 @@ +InitOutput | @wasmer/sdk

Interface InitOutput

interface InitOutput {
    _ZN129__LT_dyn_u20_core__ops__function__Fn_LT__LP__RP__GT__u2b_Output_u20__u3d__u20_R_u20_as_u20_wasm_bindgen__closure__WasmClosure_GT_8describe6invoke17h381d0a2531328711E: ((a, b) => number);
    _ZN12wasm_bindgen7convert8closures11invoke1_mut17h1152b1a3948a2fbfE: ((a, b, c) => void);
    _ZN12wasm_bindgen7convert8closures11invoke2_mut17hbdd0e84b31218dbaE: ((a, b, c, d) => void);
    _ZN12wasm_bindgen7convert8closures7invoke117h04b07a08dbe61a0cE: ((a, b, c) => number);
    __wbg_atom_free: ((a) => void);
    __wbg_command_free: ((a) => void);
    __wbg_deployedapp_free: ((a) => void);
    __wbg_directory_free: ((a) => void);
    __wbg_get_command_name: ((a) => number);
    __wbg_get_deployedapp_app_id: ((a, b) => void);
    __wbg_get_deployedapp_config: ((a, b) => void);
    __wbg_get_deployedapp_created_at: ((a, b) => void);
    __wbg_get_deployedapp_description: ((a, b) => void);
    __wbg_get_deployedapp_id: ((a, b) => void);
    __wbg_get_deployedapp_json_config: ((a, b) => void);
    __wbg_get_deployedapp_url: ((a, b) => void);
    __wbg_get_deployedapp_user_yaml_config: ((a, b) => void);
    __wbg_get_deployedapp_version: ((a, b) => void);
    __wbg_get_deployedapp_yaml_config: ((a, b) => void);
    __wbg_get_instance_stderr: ((a) => number);
    __wbg_get_instance_stdin: ((a) => number);
    __wbg_get_instance_stdout: ((a) => number);
    __wbg_get_publishpackageoutput_hash: ((a, b) => void);
    __wbg_get_publishpackageoutput_manifest: ((a) => number);
    __wbg_get_user_id: ((a, b) => void);
    __wbg_get_user_username: ((a, b) => void);
    __wbg_get_userpackagedefinition_hash: ((a, b) => void);
    __wbg_get_wasmer_commands: ((a) => number);
    __wbg_get_wasmer_entrypoint: ((a) => number);
    __wbg_get_wasmer_pkg: ((a) => number);
    __wbg_get_wasmerpackage_data: ((a, b) => void);
    __wbg_get_wasmerpackage_manifest: ((a) => number);
    __wbg_instance_free: ((a) => void);
    __wbg_intounderlyingbytesource_free: ((a) => void);
    __wbg_intounderlyingsink_free: ((a) => void);
    __wbg_intounderlyingsource_free: ((a) => void);
    __wbg_publishpackageoutput_free: ((a) => void);
    __wbg_readablestreamsource_free: ((a) => void);
    __wbg_runtime_free: ((a) => void);
    __wbg_set_command_name: ((a, b) => void);
    __wbg_set_deployedapp_app_id: ((a, b, c) => void);
    __wbg_set_deployedapp_config: ((a, b, c) => void);
    __wbg_set_deployedapp_created_at: ((a, b, c) => void);
    __wbg_set_deployedapp_description: ((a, b, c) => void);
    __wbg_set_deployedapp_id: ((a, b, c) => void);
    __wbg_set_deployedapp_json_config: ((a, b, c) => void);
    __wbg_set_deployedapp_url: ((a, b, c) => void);
    __wbg_set_deployedapp_user_yaml_config: ((a, b, c) => void);
    __wbg_set_deployedapp_version: ((a, b, c) => void);
    __wbg_set_deployedapp_yaml_config: ((a, b, c) => void);
    __wbg_set_publishpackageoutput_hash: ((a, b, c) => void);
    __wbg_set_publishpackageoutput_manifest: ((a, b) => void);
    __wbg_set_user_id: ((a, b, c) => void);
    __wbg_set_user_username: ((a, b, c) => void);
    __wbg_set_userpackagedefinition_hash: ((a, b, c) => void);
    __wbg_set_wasmer_commands: ((a, b) => void);
    __wbg_set_wasmer_entrypoint: ((a, b) => void);
    __wbg_set_wasmer_pkg: ((a, b) => void);
    __wbg_set_wasmerpackage_data: ((a, b, c) => void);
    __wbg_set_wasmerpackage_manifest: ((a, b) => void);
    __wbg_threadpoolworker_free: ((a) => void);
    __wbg_trap_free: ((a) => void);
    __wbg_user_free: ((a) => void);
    __wbg_userpackagedefinition_free: ((a) => void);
    __wbg_volume_free: ((a) => void);
    __wbg_wasmer_free: ((a) => void);
    __wbg_wasmerpackage_free: ((a) => void);
    __wbg_writablestreamsink_free: ((a) => void);
    __wbindgen_add_to_stack_pointer: ((a) => number);
    __wbindgen_exn_store: ((a) => void);
    __wbindgen_export_3: Table;
    __wbindgen_malloc: ((a, b) => number);
    __wbindgen_realloc: ((a, b, c, d) => number);
    __wbindgen_start: (() => void);
    __wbindgen_thread_destroy: ((a?, b?) => void);
    canonical_abi_free: ((a, b, c) => void);
    canonical_abi_realloc: ((a, b, c, d) => number);
    command_binary: ((a) => number);
    command_run: ((a, b) => number);
    directory___getClassname: ((a, b) => void);
    directory_createDir: ((a, b, c) => number);
    directory_new: ((a, b) => void);
    directory_readDir: ((a, b, c) => number);
    directory_readFile: ((a, b, c) => number);
    directory_readTextFile: ((a, b, c) => number);
    directory_removeDir: ((a, b, c) => number);
    directory_removeFile: ((a, b, c) => number);
    directory_writeFile: ((a, b, c, d) => number);
    initializeLogger: ((a, b, c) => void);
    instance_wait: ((a) => number);
    intounderlyingbytesource_autoAllocateChunkSize: ((a) => number);
    intounderlyingbytesource_cancel: ((a) => void);
    intounderlyingbytesource_pull: ((a, b) => number);
    intounderlyingbytesource_start: ((a, b) => void);
    intounderlyingbytesource_type: ((a, b) => void);
    intounderlyingsink_abort: ((a, b) => number);
    intounderlyingsink_close: ((a) => number);
    intounderlyingsink_write: ((a, b) => number);
    intounderlyingsource_cancel: ((a) => void);
    intounderlyingsource_pull: ((a, b) => number);
    memory: Memory;
    on_start: (() => void);
    readablestreamsource_cancel: ((a) => void);
    readablestreamsource_pull: ((a, b) => number);
    readablestreamsource_type: ((a) => number);
    runWasix: ((a, b) => number);
    runtime___getClassname: ((a, b) => void);
    runtime_global: ((a, b) => void);
    runtime_js_new: ((a, b) => void);
    setWorkerUrl: ((a) => void);
    threadpoolworker_handle: ((a, b) => number);
    threadpoolworker_new: ((a) => number);
    trap___wbg_wasmer_trap: (() => void);
    userpackagedefinition___getClassname: ((a, b) => void);
    wasmer___getClassname: ((a, b) => void);
    wasmer_createPackage: ((a) => number);
    wasmer_deleteApp: ((a) => number);
    wasmer_deployApp: ((a) => number);
    wasmer_fromFile: ((a, b) => number);
    wasmer_fromRegistry: ((a, b, c) => number);
    wasmer_publishPackage: ((a) => number);
    wasmer_whoami: (() => number);
    wat2wasm: ((a, b, c) => void);
    writablestreamsink_abort: ((a, b) => void);
    writablestreamsink_close: ((a) => number);
    writablestreamsink_write: ((a, b) => number);
}

Properties

_ZN129__LT_dyn_u20_core__ops__function__Fn_LT__LP__RP__GT__u2b_Output_u20__u3d__u20_R_u20_as_u20_wasm_bindgen__closure__WasmClosure_GT_8describe6invoke17h381d0a2531328711E +_ZN12wasm_bindgen7convert8closures11invoke1_mut17h1152b1a3948a2fbfE +_ZN12wasm_bindgen7convert8closures11invoke2_mut17hbdd0e84b31218dbaE +_ZN12wasm_bindgen7convert8closures7invoke117h04b07a08dbe61a0cE +__wbg_atom_free +__wbg_command_free +__wbg_deployedapp_free +__wbg_directory_free +__wbg_get_command_name +__wbg_get_deployedapp_app_id +__wbg_get_deployedapp_config +__wbg_get_deployedapp_created_at +__wbg_get_deployedapp_description +__wbg_get_deployedapp_id +__wbg_get_deployedapp_json_config +__wbg_get_deployedapp_url +__wbg_get_deployedapp_user_yaml_config +__wbg_get_deployedapp_version +__wbg_get_deployedapp_yaml_config +__wbg_get_instance_stderr +__wbg_get_instance_stdin +__wbg_get_instance_stdout +__wbg_get_publishpackageoutput_hash +__wbg_get_publishpackageoutput_manifest +__wbg_get_user_id +__wbg_get_user_username +__wbg_get_userpackagedefinition_hash +__wbg_get_wasmer_commands +__wbg_get_wasmer_entrypoint +__wbg_get_wasmer_pkg +__wbg_get_wasmerpackage_data +__wbg_get_wasmerpackage_manifest +__wbg_instance_free +__wbg_intounderlyingbytesource_free +__wbg_intounderlyingsink_free +__wbg_intounderlyingsource_free +__wbg_publishpackageoutput_free +__wbg_readablestreamsource_free +__wbg_runtime_free +__wbg_set_command_name +__wbg_set_deployedapp_app_id +__wbg_set_deployedapp_config +__wbg_set_deployedapp_created_at +__wbg_set_deployedapp_description +__wbg_set_deployedapp_id +__wbg_set_deployedapp_json_config +__wbg_set_deployedapp_url +__wbg_set_deployedapp_user_yaml_config +__wbg_set_deployedapp_version +__wbg_set_deployedapp_yaml_config +__wbg_set_publishpackageoutput_hash +__wbg_set_publishpackageoutput_manifest +__wbg_set_user_id +__wbg_set_user_username +__wbg_set_userpackagedefinition_hash +__wbg_set_wasmer_commands +__wbg_set_wasmer_entrypoint +__wbg_set_wasmer_pkg +__wbg_set_wasmerpackage_data +__wbg_set_wasmerpackage_manifest +__wbg_threadpoolworker_free +__wbg_trap_free +__wbg_user_free +__wbg_userpackagedefinition_free +__wbg_volume_free +__wbg_wasmer_free +__wbg_wasmerpackage_free +__wbg_writablestreamsink_free +__wbindgen_add_to_stack_pointer +__wbindgen_exn_store +__wbindgen_export_3 +__wbindgen_malloc +__wbindgen_realloc +__wbindgen_start +__wbindgen_thread_destroy +canonical_abi_free +canonical_abi_realloc +command_binary +command_run +directory___getClassname +directory_createDir +directory_new +directory_readDir +directory_readFile +directory_readTextFile +directory_removeDir +directory_removeFile +directory_writeFile +initializeLogger +instance_wait +intounderlyingbytesource_autoAllocateChunkSize +intounderlyingbytesource_cancel +intounderlyingbytesource_pull +intounderlyingbytesource_start +intounderlyingbytesource_type +intounderlyingsink_abort +intounderlyingsink_close +intounderlyingsink_write +intounderlyingsource_cancel +intounderlyingsource_pull +memory +on_start +readablestreamsource_cancel +readablestreamsource_pull +readablestreamsource_type +runWasix +runtime___getClassname +runtime_global +runtime_js_new +setWorkerUrl +threadpoolworker_handle +threadpoolworker_new +trap___wbg_wasmer_trap +userpackagedefinition___getClassname +wasmer___getClassname +wasmer_createPackage +wasmer_deleteApp +wasmer_deployApp +wasmer_fromFile +wasmer_fromRegistry +wasmer_publishPackage +wasmer_whoami +wat2wasm +writablestreamsink_abort +writablestreamsink_close +writablestreamsink_write +

Properties

_ZN129__LT_dyn_u20_core__ops__function__Fn_LT__LP__RP__GT__u2b_Output_u20__u3d__u20_R_u20_as_u20_wasm_bindgen__closure__WasmClosure_GT_8describe6invoke17h381d0a2531328711E: ((a, b) => number)

Type declaration

    • (a, b): number
    • Parameters

      • a: number
      • b: number

      Returns number

_ZN12wasm_bindgen7convert8closures11invoke1_mut17h1152b1a3948a2fbfE: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

_ZN12wasm_bindgen7convert8closures11invoke2_mut17hbdd0e84b31218dbaE: ((a, b, c, d) => void)

Type declaration

    • (a, b, c, d): void
    • Parameters

      • a: number
      • b: number
      • c: number
      • d: number

      Returns void

_ZN12wasm_bindgen7convert8closures7invoke117h04b07a08dbe61a0cE: ((a, b, c) => number)

Type declaration

    • (a, b, c): number
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns number

__wbg_atom_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_command_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_deployedapp_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_directory_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_get_command_name: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

__wbg_get_deployedapp_app_id: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_deployedapp_config: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_deployedapp_created_at: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_deployedapp_description: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_deployedapp_id: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_deployedapp_json_config: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_deployedapp_url: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_deployedapp_user_yaml_config: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_deployedapp_version: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_deployedapp_yaml_config: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_instance_stderr: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

__wbg_get_instance_stdin: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

__wbg_get_instance_stdout: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

__wbg_get_publishpackageoutput_hash: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_publishpackageoutput_manifest: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

__wbg_get_user_id: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_user_username: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_userpackagedefinition_hash: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_wasmer_commands: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

__wbg_get_wasmer_entrypoint: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

__wbg_get_wasmer_pkg: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

__wbg_get_wasmerpackage_data: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_get_wasmerpackage_manifest: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

__wbg_instance_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_intounderlyingbytesource_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_intounderlyingsink_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_intounderlyingsource_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_publishpackageoutput_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_readablestreamsource_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_runtime_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_set_command_name: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_set_deployedapp_app_id: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_deployedapp_config: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_deployedapp_created_at: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_deployedapp_description: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_deployedapp_id: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_deployedapp_json_config: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_deployedapp_url: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_deployedapp_user_yaml_config: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_deployedapp_version: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_deployedapp_yaml_config: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_publishpackageoutput_hash: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_publishpackageoutput_manifest: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_set_user_id: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_user_username: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_userpackagedefinition_hash: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_wasmer_commands: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_set_wasmer_entrypoint: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_set_wasmer_pkg: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_set_wasmerpackage_data: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

__wbg_set_wasmerpackage_manifest: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

__wbg_threadpoolworker_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_trap_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_user_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_userpackagedefinition_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_volume_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_wasmer_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_wasmerpackage_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbg_writablestreamsink_free: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbindgen_add_to_stack_pointer: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

__wbindgen_exn_store: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

__wbindgen_export_3: Table
__wbindgen_malloc: ((a, b) => number)

Type declaration

    • (a, b): number
    • Parameters

      • a: number
      • b: number

      Returns number

__wbindgen_realloc: ((a, b, c, d) => number)

Type declaration

    • (a, b, c, d): number
    • Parameters

      • a: number
      • b: number
      • c: number
      • d: number

      Returns number

__wbindgen_start: (() => void)

Type declaration

    • (): void
    • Returns void

__wbindgen_thread_destroy: ((a?, b?) => void)

Type declaration

    • (a?, b?): void
    • Parameters

      • Optional a: number
      • Optional b: number

      Returns void

canonical_abi_free: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

canonical_abi_realloc: ((a, b, c, d) => number)

Type declaration

    • (a, b, c, d): number
    • Parameters

      • a: number
      • b: number
      • c: number
      • d: number

      Returns number

command_binary: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

command_run: ((a, b) => number)

Type declaration

    • (a, b): number
    • Parameters

      • a: number
      • b: number

      Returns number

directory___getClassname: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

directory_createDir: ((a, b, c) => number)

Type declaration

    • (a, b, c): number
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns number

directory_new: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

directory_readDir: ((a, b, c) => number)

Type declaration

    • (a, b, c): number
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns number

directory_readFile: ((a, b, c) => number)

Type declaration

    • (a, b, c): number
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns number

directory_readTextFile: ((a, b, c) => number)

Type declaration

    • (a, b, c): number
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns number

directory_removeDir: ((a, b, c) => number)

Type declaration

    • (a, b, c): number
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns number

directory_removeFile: ((a, b, c) => number)

Type declaration

    • (a, b, c): number
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns number

directory_writeFile: ((a, b, c, d) => number)

Type declaration

    • (a, b, c, d): number
    • Parameters

      • a: number
      • b: number
      • c: number
      • d: number

      Returns number

initializeLogger: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

instance_wait: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

intounderlyingbytesource_autoAllocateChunkSize: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

intounderlyingbytesource_cancel: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

intounderlyingbytesource_pull: ((a, b) => number)

Type declaration

    • (a, b): number
    • Parameters

      • a: number
      • b: number

      Returns number

intounderlyingbytesource_start: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

intounderlyingbytesource_type: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

intounderlyingsink_abort: ((a, b) => number)

Type declaration

    • (a, b): number
    • Parameters

      • a: number
      • b: number

      Returns number

intounderlyingsink_close: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

intounderlyingsink_write: ((a, b) => number)

Type declaration

    • (a, b): number
    • Parameters

      • a: number
      • b: number

      Returns number

intounderlyingsource_cancel: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

intounderlyingsource_pull: ((a, b) => number)

Type declaration

    • (a, b): number
    • Parameters

      • a: number
      • b: number

      Returns number

memory: Memory
on_start: (() => void)

Type declaration

    • (): void
    • Returns void

readablestreamsource_cancel: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

readablestreamsource_pull: ((a, b) => number)

Type declaration

    • (a, b): number
    • Parameters

      • a: number
      • b: number

      Returns number

readablestreamsource_type: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

runWasix: ((a, b) => number)

Type declaration

    • (a, b): number
    • Parameters

      • a: number
      • b: number

      Returns number

runtime___getClassname: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

runtime_global: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

runtime_js_new: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

setWorkerUrl: ((a) => void)

Type declaration

    • (a): void
    • Parameters

      • a: number

      Returns void

threadpoolworker_handle: ((a, b) => number)

Type declaration

    • (a, b): number
    • Parameters

      • a: number
      • b: number

      Returns number

threadpoolworker_new: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

trap___wbg_wasmer_trap: (() => void)

Type declaration

    • (): void
    • Returns void

userpackagedefinition___getClassname: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

wasmer___getClassname: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

wasmer_createPackage: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

wasmer_deleteApp: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

wasmer_deployApp: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

wasmer_fromFile: ((a, b) => number)

Type declaration

    • (a, b): number
    • Parameters

      • a: number
      • b: number

      Returns number

wasmer_fromRegistry: ((a, b, c) => number)

Type declaration

    • (a, b, c): number
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns number

wasmer_publishPackage: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

wasmer_whoami: (() => number)

Type declaration

    • (): number
    • Returns number

wat2wasm: ((a, b, c) => void)

Type declaration

    • (a, b, c): void
    • Parameters

      • a: number
      • b: number
      • c: number

      Returns void

writablestreamsink_abort: ((a, b) => void)

Type declaration

    • (a, b): void
    • Parameters

      • a: number
      • b: number

      Returns void

writablestreamsink_close: ((a) => number)

Type declaration

    • (a): number
    • Parameters

      • a: number

      Returns number

writablestreamsink_write: ((a, b) => number)

Type declaration

    • (a, b): number
    • Parameters

      • a: number
      • b: number

      Returns number

Generated using TypeDoc

\ No newline at end of file diff --git a/modules.html b/modules.html new file mode 100644 index 00000000..0bc3a1ed --- /dev/null +++ b/modules.html @@ -0,0 +1,46 @@ +@wasmer/sdk

Generated using TypeDoc

\ No newline at end of file diff --git a/types/AppConfig.html b/types/AppConfig.html new file mode 100644 index 00000000..32cc2c4a --- /dev/null +++ b/types/AppConfig.html @@ -0,0 +1,4 @@ +AppConfig | @wasmer/sdk

Type alias AppConfig

Configuration for an app +For more information, please check the app config file: +https://docs.wasmer.io/edge/configuration

+

Generated using TypeDoc

\ No newline at end of file diff --git a/types/AppIdentifier.html b/types/AppIdentifier.html new file mode 100644 index 00000000..4d996a05 --- /dev/null +++ b/types/AppIdentifier.html @@ -0,0 +1,2 @@ +AppIdentifier | @wasmer/sdk

Generated using TypeDoc

\ No newline at end of file diff --git a/types/BaseAppConfig.html b/types/BaseAppConfig.html new file mode 100644 index 00000000..f1ceec79 --- /dev/null +++ b/types/BaseAppConfig.html @@ -0,0 +1,14 @@ +BaseAppConfig | @wasmer/sdk

Type alias BaseAppConfig

BaseAppConfig: {
    cli_args?: string[];
    debug?: boolean;
    default?: boolean;
    domains?: string[];
    env?: {
        [name: string]: string;
    };
    package: string | Wasmer;
    redirect?: {
        force_https?: boolean;
    };
    scaling?: {
        mode?: null | "single_concurrency";
    };
}

Configuration for an app +For more information, please check the app config file: +https://docs.wasmer.io/edge/configuration

+

Type declaration

  • Optional cli_args?: string[]

    The CLI arguments

    +
  • Optional debug?: boolean

    In debug mode?

    +
  • Optional default?: boolean

    Set this version as the default for the app. Is true by default

    +
  • Optional domains?: string[]

    Domains associated to this app

    +
  • Optional env?: {
        [name: string]: string;
    }

    The environment variables

    +
    • [name: string]: string
  • package: string | Wasmer

    The package to deploy.

    +
  • Optional redirect?: {
        force_https?: boolean;
    }

    Redirect rules

    +
  • Optional scaling?: {
        mode?: null | "single_concurrency";
    }

    Scaling configuration

    +
    • Optional mode?: null | "single_concurrency"

      How to scale the app

      +

Generated using TypeDoc

\ No newline at end of file diff --git a/types/CommonOptions.html b/types/CommonOptions.html new file mode 100644 index 00000000..ca074d83 --- /dev/null +++ b/types/CommonOptions.html @@ -0,0 +1,11 @@ +CommonOptions | @wasmer/sdk

Type alias CommonOptions

CommonOptions: {
    args?: string[];
    env?: Record<string, string>;
    mount?: Record<string, DirectoryInit | Directory>;
    stdin?: string | Uint8Array;
}

Common options used when running a WASIX program.

+

Type declaration

  • Optional args?: string[]

    Additional command-line arguments to be passed to the program.

    +
  • Optional env?: Record<string, string>

    Environment variables to set.

    +
  • Optional mount?: Record<string, DirectoryInit | Directory>

    Directories that should be mounted inside the WASIX instance.

    +

    This maps mount locations to the Directory being mounted. As a +shortcut, if DirectoryInit is provided, a new Directory +will be instantiated and mounted.

    +

    Avoid mounting directly to "/" as it may clobber a package's bundled +files.

    +
  • Optional stdin?: string | Uint8Array

    The standard input stream.

    +

Generated using TypeDoc

\ No newline at end of file diff --git a/types/DeployedIdApp.html b/types/DeployedIdApp.html new file mode 100644 index 00000000..f4228333 --- /dev/null +++ b/types/DeployedIdApp.html @@ -0,0 +1,2 @@ +DeployedIdApp | @wasmer/sdk

Type alias DeployedIdApp

DeployedIdApp: {
    id: string;
}

Type declaration

  • id: string

    The id of the app.

    +

Generated using TypeDoc

\ No newline at end of file diff --git a/types/DirEntry.html b/types/DirEntry.html new file mode 100644 index 00000000..4d355f1b --- /dev/null +++ b/types/DirEntry.html @@ -0,0 +1,4 @@ +DirEntry | @wasmer/sdk

Type alias DirEntry

DirEntry: {
    name: string;
    type: "file" | "dir" | "unknown";
}

An entry in a Directory.

+

Type declaration

  • name: string

    What is the item's name? (the last component in the path)

    +
  • type: "file" | "dir" | "unknown"

    What type of entry is this?

    +

Generated using TypeDoc

\ No newline at end of file diff --git a/types/DirectoryInit.html b/types/DirectoryInit.html new file mode 100644 index 00000000..fb2bae34 --- /dev/null +++ b/types/DirectoryInit.html @@ -0,0 +1,3 @@ +DirectoryInit | @wasmer/sdk

Type alias DirectoryInit

DirectoryInit: Record<string, string | Uint8Array>

A mapping from file paths to their contents that can be used to initialize +a Directory.

+

Generated using TypeDoc

\ No newline at end of file diff --git a/types/InitInput.html b/types/InitInput.html new file mode 100644 index 00000000..7840234e --- /dev/null +++ b/types/InitInput.html @@ -0,0 +1 @@ +InitInput | @wasmer/sdk

Type alias InitInput

InitInput: RequestInfo | URL | Response | BufferSource | WebAssembly.Module

Generated using TypeDoc

\ No newline at end of file diff --git a/types/NamedApp.html b/types/NamedApp.html new file mode 100644 index 00000000..d0e7fc29 --- /dev/null +++ b/types/NamedApp.html @@ -0,0 +1,3 @@ +NamedApp | @wasmer/sdk

Type alias NamedApp

NamedApp: {
    name: string;
    owner: string;
}

Type declaration

  • name: string

    The name of the app.

    +
  • owner: string

    The owner of the app.

    +

Generated using TypeDoc

\ No newline at end of file diff --git a/types/Output.html b/types/Output.html new file mode 100644 index 00000000..30e8ec24 --- /dev/null +++ b/types/Output.html @@ -0,0 +1 @@ +Output | @wasmer/sdk

Type alias Output

Output: {
    code: number;
    ok: boolean;
    stderr: string;
    stderrBytes: Uint8Array;
    stdout: string;
    stdoutBytes: Uint8Array;
}

Type declaration

  • code: number
  • ok: boolean
  • Readonly stderr: string
  • stderrBytes: Uint8Array
  • Readonly stdout: string
  • stdoutBytes: Uint8Array

Generated using TypeDoc

\ No newline at end of file diff --git a/types/PackageCommand.html b/types/PackageCommand.html new file mode 100644 index 00000000..b4c136a9 --- /dev/null +++ b/types/PackageCommand.html @@ -0,0 +1,2 @@ +PackageCommand | @wasmer/sdk

Type alias PackageCommand

PackageCommand: {
    annotations?: {
        wasi?: {
            env?: string[];
            main-args: string[];
        };
    };
    module: string;
    name: string;
    runner: "https://webc.org/runner/wasi";
}

A command available in a package

+

Type declaration

  • Optional annotations?: {
        wasi?: {
            env?: string[];
            main-args: string[];
        };
    }
    • Optional wasi?: {
          env?: string[];
          main-args: string[];
      }
      • Optional env?: string[]
      • main-args: string[]
  • module: string
  • name: string
  • runner: "https://webc.org/runner/wasi"

Generated using TypeDoc

\ No newline at end of file diff --git a/types/PackageManifest.html b/types/PackageManifest.html new file mode 100644 index 00000000..4c28fed0 --- /dev/null +++ b/types/PackageManifest.html @@ -0,0 +1,4 @@ +PackageManifest | @wasmer/sdk

Type alias PackageManifest

PackageManifest: {
    command?: PackageCommand[];
    dependencies?: {
        [name: string]: string;
    };
    fs: VolumeTree;
}

Manifest of a package. +For more information, please check the package manifest docs: +https://docs.wasmer.io/registry/manifest

+

Type declaration

  • Optional command?: PackageCommand[]
  • Optional dependencies?: {
        [name: string]: string;
    }
    • [name: string]: string
  • fs: VolumeTree

Generated using TypeDoc

\ No newline at end of file diff --git a/types/RunOptions.html b/types/RunOptions.html new file mode 100644 index 00000000..6f8e7da7 --- /dev/null +++ b/types/RunOptions.html @@ -0,0 +1,7 @@ +RunOptions | @wasmer/sdk

Type alias RunOptions

RunOptions: CommonOptions & {
    program?: string;
    runtime?: Runtime;
}

Configuration used when starting a WASIX program with runWasix.

+

Type declaration

  • Optional program?: string

    The name of the program being run (passed in as arg 0)

    +
  • Optional runtime?: Runtime

    The WASIX runtime to use.

    +

    Providing a Runtime allows multiple WASIX instances to share things +like caches and threadpools. If not provided, a default Runtime will be +created.

    +

Generated using TypeDoc

\ No newline at end of file diff --git a/types/RuntimeOptions.html b/types/RuntimeOptions.html new file mode 100644 index 00000000..4b9907c5 --- /dev/null +++ b/types/RuntimeOptions.html @@ -0,0 +1,8 @@ +RuntimeOptions | @wasmer/sdk

Type alias RuntimeOptions

RuntimeOptions: {
    apiKey?: string;
    networkGateway?: string;
    registry?: string | null;
}

Options used when constructing a Runtime.

+

Type declaration

  • Optional apiKey?: string

    An optional API key to use when sending requests to the Wasmer registry.

    +
  • Optional networkGateway?: string

    Enable networking (i.e. TCP and UDP) via a gateway server.

    +
  • Optional registry?: string | null

    The GraphQL endpoint for the Wasmer registry used when looking up +packages.

    +

    Defaults to "https://registry.wasmer.io/graphql".

    +

    If null, no queries will be made to the registry.

    +

Generated using TypeDoc

\ No newline at end of file diff --git a/types/SpawnOptions.html b/types/SpawnOptions.html new file mode 100644 index 00000000..9c6e07f5 --- /dev/null +++ b/types/SpawnOptions.html @@ -0,0 +1,4 @@ +SpawnOptions | @wasmer/sdk

Type alias SpawnOptions

SpawnOptions: CommonOptions & {
    uses?: string[];
}

Options used when running a command from a WASIX package with +Command.run.

+

Type declaration

  • Optional uses?: string[]

    Packages that should also be loaded into the WASIX environment.

    +

Generated using TypeDoc

\ No newline at end of file diff --git a/types/SyncInitInput.html b/types/SyncInitInput.html new file mode 100644 index 00000000..a5bd751d --- /dev/null +++ b/types/SyncInitInput.html @@ -0,0 +1 @@ +SyncInitInput | @wasmer/sdk

Generated using TypeDoc

\ No newline at end of file diff --git a/types/VolumeFile.html b/types/VolumeFile.html new file mode 100644 index 00000000..08ba8a06 --- /dev/null +++ b/types/VolumeFile.html @@ -0,0 +1 @@ +VolumeFile | @wasmer/sdk

Generated using TypeDoc

\ No newline at end of file diff --git a/types/VolumeFileData.html b/types/VolumeFileData.html new file mode 100644 index 00000000..2d594391 --- /dev/null +++ b/types/VolumeFileData.html @@ -0,0 +1 @@ +VolumeFileData | @wasmer/sdk

Generated using TypeDoc

\ No newline at end of file diff --git a/types/VolumeFileDate.html b/types/VolumeFileDate.html new file mode 100644 index 00000000..8a89637b --- /dev/null +++ b/types/VolumeFileDate.html @@ -0,0 +1 @@ +VolumeFileDate | @wasmer/sdk

Generated using TypeDoc

\ No newline at end of file diff --git a/types/VolumeTree.html b/types/VolumeTree.html new file mode 100644 index 00000000..e0d432ce --- /dev/null +++ b/types/VolumeTree.html @@ -0,0 +1 @@ +VolumeTree | @wasmer/sdk

Type alias VolumeTree

VolumeTree: {
    [name: string]: VolumeFile | VolumeTree;
}

Type declaration

Generated using TypeDoc

\ No newline at end of file diff --git a/types/WasmerInitInput.html b/types/WasmerInitInput.html new file mode 100644 index 00000000..92981dd5 --- /dev/null +++ b/types/WasmerInitInput.html @@ -0,0 +1 @@ +WasmerInitInput | @wasmer/sdk

Type alias WasmerInitInput

WasmerInitInput: {
    log?: string;
    memory?: WebAssembly.Memory;
    module?: InitInput | Promise<InitInput>;
    workerUrl?: string | URL;
} & WasmerRegistryConfig

Type declaration

  • Optional log?: string
  • Optional memory?: WebAssembly.Memory
  • Optional module?: InitInput | Promise<InitInput>
  • Optional workerUrl?: string | URL

Generated using TypeDoc

\ No newline at end of file diff --git a/types/WasmerRegistryConfig.html b/types/WasmerRegistryConfig.html new file mode 100644 index 00000000..7f0bd0e7 --- /dev/null +++ b/types/WasmerRegistryConfig.html @@ -0,0 +1 @@ +WasmerRegistryConfig | @wasmer/sdk

Type alias WasmerRegistryConfig

WasmerRegistryConfig: {
    registryUrl?: string;
    token?: string;
}

Type declaration

  • Optional registryUrl?: string
  • Optional token?: string

Generated using TypeDoc

\ No newline at end of file