diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000..2a4da91 --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,126 @@ +version: 2 + +defaults: &defaults + working_directory: ~/grc + docker: + - image: cimg/node:16.17 + +jobs: + build: + <<: *defaults + steps: + - checkout + - restore_cache: + keys: + - v1-dependencies-{{ checksum "package.json" }} # fallback to using the latest cache if no exact match is found + - v1-dependencies- + - run: npm install + - run: npm run build + - save_cache: + paths: + - node_modules + key: v1-dependencies-{{ checksum "package.json" }} + - persist_to_workspace: + root: ~/grc + paths: . + + test: + <<: *defaults + steps: + - attach_workspace: + at: ~/grc + - run: + name: Run tests + command: npm run test:prod + + lint_commit_message: + <<: *defaults + steps: + - attach_workspace: + at: ~/grc + - run: + name: Define environment variable with lastest commit's message + command: | + echo 'export COMMIT_MESSAGE=$(git log -1 --pretty=format:"%s")' >> $BASH_ENV + source $BASH_ENV + - run: + name: Lint commit message + command: echo "$COMMIT_MESSAGE" | npx commitlint + + typecheck: + <<: *defaults + steps: + - attach_workspace: + at: ~/grc + - run: + name: "Typecheck" + command: npm run typecheck + + deploy-npm: + <<: *defaults + steps: + - attach_workspace: + at: ~/grc + - run: + name: Semantic release + command: npm run semantic-release + + deploy-docs: + <<: *defaults + steps: + - attach_workspace: + at: ~/grc + - run: + name: Deploy docs + command: npm run deploy:docs + +workflows: + version: 2 + test-deploy: + jobs: + - build: + filters: + branches: + ignore: gh-pages + - lint_commit_message: + filters: + branches: + ignore: gh-pages + requires: + - build + - typecheck: + filters: + branches: + ignore: gh-pages + requires: + - build + - test: + filters: + branches: + ignore: gh-pages + requires: + - build + - deploy-docs: + filters: + branches: + only: master + ignore: gh-pages + requires: + - build + - lint_commit_message + - test + - typecheck + context: + - semantic-release + - deploy-npm: + filters: + branches: + only: master + ignore: gh-pages + requires: + - build + - lint_commit_message + - test + - typecheck + context: + - semantic-release diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e2ac661 --- /dev/null +++ b/.nojekyll @@ -0,0 +1 @@ +TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false. \ No newline at end of file diff --git a/assets/highlight.css b/assets/highlight.css new file mode 100644 index 0000000..cadb795 --- /dev/null +++ b/assets/highlight.css @@ -0,0 +1,113 @@ +:root { + --light-hl-0: #000000; + --dark-hl-0: #D4D4D4; + --light-hl-1: #0000FF; + --dark-hl-1: #569CD6; + --light-hl-2: #0070C1; + --dark-hl-2: #4FC1FF; + --light-hl-3: #795E26; + --dark-hl-3: #DCDCAA; + --light-hl-4: #A31515; + --dark-hl-4: #CE9178; + --light-hl-5: #001080; + --dark-hl-5: #9CDCFE; + --light-hl-6: #098658; + --dark-hl-6: #B5CEA8; + --light-hl-7: #008000; + --dark-hl-7: #6A9955; + --light-hl-8: #AF00DB; + --dark-hl-8: #C586C0; + --light-hl-9: #EE0000; + --dark-hl-9: #D7BA7D; + --light-hl-10: #CD3131; + --dark-hl-10: #F44747; + --light-hl-11: #267F99; + --dark-hl-11: #4EC9B0; + --light-hl-12: #000000; + --dark-hl-12: #C8C8C8; + --light-code-background: #FFFFFF; + --dark-code-background: #1E1E1E; +} + +@media (prefers-color-scheme: light) { :root { + --hl-0: var(--light-hl-0); + --hl-1: var(--light-hl-1); + --hl-2: var(--light-hl-2); + --hl-3: var(--light-hl-3); + --hl-4: var(--light-hl-4); + --hl-5: var(--light-hl-5); + --hl-6: var(--light-hl-6); + --hl-7: var(--light-hl-7); + --hl-8: var(--light-hl-8); + --hl-9: var(--light-hl-9); + --hl-10: var(--light-hl-10); + --hl-11: var(--light-hl-11); + --hl-12: var(--light-hl-12); + --code-background: var(--light-code-background); +} } + +@media (prefers-color-scheme: dark) { :root { + --hl-0: var(--dark-hl-0); + --hl-1: var(--dark-hl-1); + --hl-2: var(--dark-hl-2); + --hl-3: var(--dark-hl-3); + --hl-4: var(--dark-hl-4); + --hl-5: var(--dark-hl-5); + --hl-6: var(--dark-hl-6); + --hl-7: var(--dark-hl-7); + --hl-8: var(--dark-hl-8); + --hl-9: var(--dark-hl-9); + --hl-10: var(--dark-hl-10); + --hl-11: var(--dark-hl-11); + --hl-12: var(--dark-hl-12); + --code-background: var(--dark-code-background); +} } + +:root[data-theme='light'] { + --hl-0: var(--light-hl-0); + --hl-1: var(--light-hl-1); + --hl-2: var(--light-hl-2); + --hl-3: var(--light-hl-3); + --hl-4: var(--light-hl-4); + --hl-5: var(--light-hl-5); + --hl-6: var(--light-hl-6); + --hl-7: var(--light-hl-7); + --hl-8: var(--light-hl-8); + --hl-9: var(--light-hl-9); + --hl-10: var(--light-hl-10); + --hl-11: var(--light-hl-11); + --hl-12: var(--light-hl-12); + --code-background: var(--light-code-background); +} + +:root[data-theme='dark'] { + --hl-0: var(--dark-hl-0); + --hl-1: var(--dark-hl-1); + --hl-2: var(--dark-hl-2); + --hl-3: var(--dark-hl-3); + --hl-4: var(--dark-hl-4); + --hl-5: var(--dark-hl-5); + --hl-6: var(--dark-hl-6); + --hl-7: var(--dark-hl-7); + --hl-8: var(--dark-hl-8); + --hl-9: var(--dark-hl-9); + --hl-10: var(--dark-hl-10); + --hl-11: var(--dark-hl-11); + --hl-12: var(--dark-hl-12); + --code-background: var(--dark-code-background); +} + +.hl-0 { color: var(--hl-0); } +.hl-1 { color: var(--hl-1); } +.hl-2 { color: var(--hl-2); } +.hl-3 { color: var(--hl-3); } +.hl-4 { color: var(--hl-4); } +.hl-5 { color: var(--hl-5); } +.hl-6 { color: var(--hl-6); } +.hl-7 { color: var(--hl-7); } +.hl-8 { color: var(--hl-8); } +.hl-9 { color: var(--hl-9); } +.hl-10 { color: var(--hl-10); } +.hl-11 { color: var(--hl-11); } +.hl-12 { color: var(--hl-12); } +pre, code { background: var(--code-background); } diff --git a/assets/main.js b/assets/main.js new file mode 100644 index 0000000..0e05961 --- /dev/null +++ b/assets/main.js @@ -0,0 +1,4 @@ +"use strict"; +"use strict";(()=>{var Qe=Object.create;var ae=Object.defineProperty;var Pe=Object.getOwnPropertyDescriptor;var Ce=Object.getOwnPropertyNames;var Oe=Object.getPrototypeOf,Re=Object.prototype.hasOwnProperty;var _e=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Me=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Ce(e))!Re.call(t,i)&&i!==n&&ae(t,i,{get:()=>e[i],enumerable:!(r=Pe(e,i))||r.enumerable});return t};var De=(t,e,n)=>(n=t!=null?Qe(Oe(t)):{},Me(e||!t||!t.__esModule?ae(n,"default",{value:t,enumerable:!0}):n,t));var de=_e((ce,he)=>{(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 h=t.utils.clone(n)||{};h.position=[a,l],h.index=s.length,s.push(new t.Token(r.slice(a,o),h))}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(ou?h+=2:a==u&&(n+=r[l+1]*i[h+1],l+=2,h+=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 u=s.node.edges["*"];else{var u=new t.TokenSet;s.node.edges["*"]=u}if(s.str.length==0&&(u.final=!0),i.push({node:u,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 l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}s.str.length==1&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var h=s.str.charAt(0),m=s.str.charAt(1),v;m in s.node.edges?v=s.node.edges[m]:(v=new t.TokenSet,s.node.edges[m]=v),s.str.length==1&&(v.final=!0),i.push({node:v,editsRemaining:s.editsRemaining-1,str:h+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),u=0;u1?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 ce=="object"?he.exports=n():e.lunr=n()}(this,function(){return t})})()});var le=[];function B(t,e){le.push({selector:e,constructor:t})}var Y=class{constructor(){this.alwaysVisibleMember=null;this.createComponents(document.body),this.ensureFocusedElementVisible(),window.addEventListener("hashchange",()=>this.ensureFocusedElementVisible())}createComponents(e){le.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()}ensureFocusedElementVisible(){this.alwaysVisibleMember&&(this.alwaysVisibleMember.classList.remove("always-visible"),this.alwaysVisibleMember.firstElementChild.remove(),this.alwaysVisibleMember=null);let e=document.getElementById(location.hash.substring(1));if(!e)return;let n=e.parentElement;for(;n.tagName!=="SECTION";)n=n.parentElement;if(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)}}};var I=class{constructor(e){this.el=e.el,this.app=e.app}};var J=class{constructor(){this.listeners={}}addEventListener(e,n){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push(n)}removeEventListener(e,n){if(!(e in this.listeners))return;let r=this.listeners[e];for(let i=0,s=r.length;i{let n=Date.now();return(...r)=>{n+e-Date.now()<0&&(t(...r),n=Date.now())}};var re=class extends J{constructor(){super();this.scrollTop=0;this.lastY=0;this.width=0;this.height=0;this.showToolbar=!0;this.toolbar=document.querySelector(".tsd-page-toolbar"),this.navigation=document.querySelector(".col-menu"),window.addEventListener("scroll",ne(()=>this.onScroll(),10)),window.addEventListener("resize",ne(()=>this.onResize(),10)),this.searchInput=document.querySelector("#tsd-search input"),this.searchInput&&this.searchInput.addEventListener("focus",()=>{this.hideShowToolbar()}),this.onResize(),this.onScroll()}triggerResize(){let n=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(n)}onResize(){this.width=window.innerWidth||0,this.height=window.innerHeight||0;let n=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(n)}onScroll(){this.scrollTop=window.scrollY||0;let n=new CustomEvent("scroll",{detail:{scrollTop:this.scrollTop}});this.dispatchEvent(n),this.hideShowToolbar()}hideShowToolbar(){let n=this.showToolbar;this.showToolbar=this.lastY>=this.scrollTop||this.scrollTop<=0||!!this.searchInput&&this.searchInput===document.activeElement,n!==this.showToolbar&&(this.toolbar.classList.toggle("tsd-page-toolbar--hide"),this.navigation?.classList.toggle("col-menu--hide")),this.lastY=this.scrollTop}},R=re;R.instance=new re;var X=class extends I{constructor(n){super(n);this.anchors=[];this.index=-1;R.instance.addEventListener("resize",()=>this.onResize()),R.instance.addEventListener("scroll",r=>this.onScroll(r)),this.createAnchors()}createAnchors(){let n=window.location.href;n.indexOf("#")!=-1&&(n=n.substring(0,n.indexOf("#"))),this.el.querySelectorAll("a").forEach(r=>{let i=r.href;if(i.indexOf("#")==-1||i.substring(0,n.length)!=n)return;let s=i.substring(i.indexOf("#")+1),o=document.querySelector("a.tsd-anchor[name="+s+"]"),a=r.parentNode;!o||!a||this.anchors.push({link:a,anchor:o,position:0})}),this.onResize()}onResize(){let n;for(let i=0,s=this.anchors.length;ii.position-s.position);let r=new CustomEvent("scroll",{detail:{scrollTop:R.instance.scrollTop}});this.onScroll(r)}onScroll(n){let r=n.detail.scrollTop+5,i=this.anchors,s=i.length-1,o=this.index;for(;o>-1&&i[o].position>r;)o-=1;for(;o-1&&this.anchors[this.index].link.classList.remove("focus"),this.index=o,this.index>-1&&this.anchors[this.index].link.classList.add("focus"))}};var ue=(t,e=100)=>{let n;return()=>{clearTimeout(n),n=setTimeout(()=>t(),e)}};var me=De(de());function ve(){let t=document.getElementById("tsd-search");if(!t)return;let e=document.getElementById("search-script");t.classList.add("loading"),e&&(e.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),e.addEventListener("load",()=>{t.classList.remove("loading"),t.classList.add("ready")}),window.searchData&&t.classList.remove("loading"));let n=document.querySelector("#tsd-search input"),r=document.querySelector("#tsd-search .results");if(!n||!r)throw new Error("The input field or the result list wrapper was not found");let i=!1;r.addEventListener("mousedown",()=>i=!0),r.addEventListener("mouseup",()=>{i=!1,t.classList.remove("has-focus")}),n.addEventListener("focus",()=>t.classList.add("has-focus")),n.addEventListener("blur",()=>{i||(i=!1,t.classList.remove("has-focus"))});let s={base:t.dataset.base+"/"};Fe(t,r,n,s)}function Fe(t,e,n,r){n.addEventListener("input",ue(()=>{He(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"?pe(e,-1):s.key==="ArrowDown"?pe(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 Ae(t,e){t.index||window.searchData&&(e.classList.remove("loading"),e.classList.add("ready"),t.data=window.searchData,t.index=me.Index.load(window.searchData.index))}function He(t,e,n,r){if(Ae(r,t),!r.index||!r.data)return;e.textContent="";let i=n.value.trim(),s=i?r.index.search(`*${i}*`):[];for(let o=0;oa.score-o.score);for(let o=0,a=Math.min(10,s.length);o${fe(u.parent,i)}.${l}`);let h=document.createElement("li");h.classList.value=u.classes??"";let m=document.createElement("a");m.href=r.base+u.url,m.innerHTML=l,h.append(m),e.appendChild(h)}}function pe(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 fe(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(ie(t.substring(s,o)),`${ie(t.substring(o,o+r.length))}`),s=o+r.length,o=n.indexOf(r,s);return i.push(ie(t.substring(s))),i.join("")}var Ne={"&":"&","<":"<",">":">","'":"'",'"':"""};function ie(t){return t.replace(/[&<>"'"]/g,e=>Ne[e])}var F="mousedown",ye="mousemove",j="mouseup",Z={x:0,y:0},ge=!1,se=!1,Be=!1,A=!1,xe=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(xe?"is-mobile":"not-mobile");xe&&"ontouchstart"in document.documentElement&&(Be=!0,F="touchstart",ye="touchmove",j="touchend");document.addEventListener(F,t=>{se=!0,A=!1;let e=F=="touchstart"?t.targetTouches[0]:t;Z.y=e.pageY||0,Z.x=e.pageX||0});document.addEventListener(ye,t=>{if(se&&!A){let e=F=="touchstart"?t.targetTouches[0]:t,n=Z.x-(e.pageX||0),r=Z.y-(e.pageY||0);A=Math.sqrt(n*n+r*r)>10}});document.addEventListener(j,()=>{se=!1});document.addEventListener("click",t=>{ge&&(t.preventDefault(),t.stopImmediatePropagation(),ge=!1)});var K=class extends I{constructor(n){super(n);this.className=this.el.dataset.toggle||"",this.el.addEventListener(j,r=>this.onPointerUp(r)),this.el.addEventListener("click",r=>r.preventDefault()),document.addEventListener(F,r=>this.onDocumentPointerDown(r)),document.addEventListener(j,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){A||(this.setActive(!0),n.preventDefault())}onDocumentPointerDown(n){if(this.active){if(n.target.closest(".col-menu, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(n){if(!A&&this.active&&n.target.closest(".col-menu")){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 oe;try{oe=localStorage}catch{oe={getItem(){return null},setItem(){}}}var Q=oe;var Le=document.head.appendChild(document.createElement("style"));Le.dataset.for="filters";var ee=class extends I{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()),Le.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 te=class extends I{constructor(n){super(n);this.calculateHeights(),this.summary=this.el.querySelector(".tsd-accordion-summary"),this.icon=this.summary.querySelector("svg"),this.key=`tsd-accordion-${this.summary.textContent.replace(/\s+/g,"-").toLowerCase()}`,this.setLocalStorage(this.fromLocalStorage(),!0),this.summary.addEventListener("click",r=>this.toggleVisibility(r)),this.icon.style.transform=this.getIconRotation()}getIconRotation(n=this.el.open){return`rotate(${n?0:-90}deg)`}calculateHeights(){let n=this.el.open,{position:r,left:i}=this.el.style;this.el.style.position="fixed",this.el.style.left="-9999px",this.el.open=!0,this.expandedHeight=this.el.offsetHeight+"px",this.el.open=!1,this.collapsedHeight=this.el.offsetHeight+"px",this.el.open=n,this.el.style.height=n?this.expandedHeight:this.collapsedHeight,this.el.style.position=r,this.el.style.left=i}toggleVisibility(n){n.preventDefault(),this.el.style.overflow="hidden",this.el.open?this.collapse():this.expand()}expand(n=!0){this.el.open=!0,this.animate(this.collapsedHeight,this.expandedHeight,{opening:!0,duration:n?300:0})}collapse(n=!0){this.animate(this.expandedHeight,this.collapsedHeight,{opening:!1,duration:n?300:0})}animate(n,r,{opening:i,duration:s=300}){if(this.animation)return;let o={duration:s,easing:"ease"};this.animation=this.el.animate({height:[n,r]},o),this.icon.animate({transform:[this.icon.style.transform||this.getIconRotation(!i),this.getIconRotation(i)]},o).addEventListener("finish",()=>{this.icon.style.transform=this.getIconRotation(i)}),this.animation.addEventListener("finish",()=>this.animationEnd(i))}animationEnd(n){this.el.open=n,this.animation=void 0,this.el.style.height="auto",this.el.style.overflow="visible",this.setLocalStorage(n)}fromLocalStorage(){let n=Q.getItem(this.key);return n?n==="true":this.el.open}setLocalStorage(n,r=!1){this.fromLocalStorage()===n&&!r||(Q.setItem(this.key,n.toString()),this.el.open=n,this.handleValueChange(r))}handleValueChange(n=!1){this.fromLocalStorage()===this.el.open&&!n||(this.fromLocalStorage()?this.expand(!1):this.collapse(!1))}};function be(t){let e=Q.getItem("tsd-theme")||"os";t.value=e,Ee(e),t.addEventListener("change",()=>{Q.setItem("tsd-theme",t.value),Ee(t.value)})}function Ee(t){document.documentElement.dataset.theme=t}ve();B(X,".menu-highlight");B(K,"a[data-toggle]");B(te,".tsd-index-accordion");B(ee,".tsd-filter-item input[type=checkbox]");var we=document.getElementById("theme");we&&be(we);var je=new Y;Object.defineProperty(window,"app",{value:je});})(); diff --git a/assets/search.js b/assets/search.js new file mode 100644 index 0000000..18bb1d6 --- /dev/null +++ b/assets/search.js @@ -0,0 +1 @@ +window.searchData = JSON.parse("{\"kinds\":{\"2\":\"Module\",\"128\":\"Class\",\"512\":\"Constructor\",\"1024\":\"Property\",\"2048\":\"Method\",\"4194304\":\"Type alias\"},\"rows\":[{\"kind\":2,\"name\":\"GridcoinRPC\",\"url\":\"modules/GridcoinRPC.html\",\"classes\":\"tsd-kind-module\"},{\"kind\":128,\"name\":\"GridcoinRPC\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html\",\"classes\":\"tsd-kind-class tsd-parent-kind-module\",\"parent\":\"GridcoinRPC\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":1024,\"name\":\"client\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#client\",\"classes\":\"tsd-kind-property tsd-parent-kind-class tsd-is-inherited\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"call\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#call\",\"classes\":\"tsd-kind-method tsd-parent-kind-class tsd-is-protected tsd-is-inherited\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"addMultisigAddress\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#addMultisigAddress\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"addRedeemScript\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#addRedeemScript\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"backupPrivateKeys\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#backupPrivateKeys\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"backupWallet\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#backupWallet\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"burn\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#burn\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"checkWallet\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#checkWallet\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"createRawTransaction\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#createRawTransaction\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"decodeRawTransaction\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#decodeRawTransaction\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"decodeScript\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#decodeScript\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getAccount\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getAccount\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getAccountAddress\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getAccountAddress\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getAddressesByAccount\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getAddressesByAccount\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getBalance\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getBalance\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getBalanceDetail\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getBalanceDetail\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getNewAddress\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getNewAddress\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getNewPubkey\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getNewPubkey\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getRawTransaction\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getRawTransaction\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getRawWalletTransaction\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getRawWalletTransaction\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getReceivedByAccount\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getReceivedByAccount\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getReceivedByAddress\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getReceivedByAddress\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getTransaction\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getTransaction\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getUnconfirmedBalance\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getUnconfirmedBalance\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getWalletInfo\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getWalletInfo\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"keyPoolRefill\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#keyPoolRefill\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"listAccounts\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#listAccounts\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"listAddressGroupings\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#listAddressGroupings\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"listReceivedByAddress\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#listReceivedByAddress\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"listSinceBlock\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#listSinceBlock\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"listStakes\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#listStakes\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"listTransactions\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#listTransactions\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"listUnspent\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#listUnspent\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"makeKeyPair\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#makeKeyPair\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"rainByMagnitude\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#rainByMagnitude\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"repairWallet\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#repairWallet\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"resendTx\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#resendTx\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"reserveBalance\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#reserveBalance\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"scanForUnspent\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#scanForUnspent\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"sendFrom\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#sendFrom\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"sendMany\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#sendMany\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"sendRawTransaction\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#sendRawTransaction\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"sendToAddress\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#sendToAddress\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"setAccount\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#setAccount\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"setTXfee\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#setTXfee\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"signMessage\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#signMessage\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"signRawTransaction\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#signRawTransaction\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"validateAddress\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#validateAddress\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"validatePubkey\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#validatePubkey\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"verifyMessage\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#verifyMessage\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"walletLock\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#walletLock\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"walletPassPhrase\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#walletPassPhrase\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"walletPassPhraseChange\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#walletPassPhraseChange\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"advertiseBeacon\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#advertiseBeacon\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"beaconReport\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#beaconReport\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"beaconConvergence\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#beaconConvergence\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"beaconStatus\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#beaconStatus\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"explainMagnitude\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#explainMagnitude\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getLastStake\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getLastStake\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getMiningInfo\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getMiningInfo\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"lifetime\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#lifetime\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"magnitude\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#magnitude\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"pendingBeaconReport\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#pendingBeaconReport\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"resetCPIDs\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#resetCPIDs\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"revokeBeacon\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#revokeBeacon\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"superblockAge\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#superblockAge\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"superBlocks\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#superBlocks\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"auditSnapshotAccrual\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#auditSnapshotAccrual\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"auditSnapshotAccruals\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#auditSnapshotAccruals\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"addKey\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#addKey\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"compareSnapshotAccrual\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#compareSnapshotAccrual\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"currentContractAverage\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#currentContractAverage\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"debug\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#debug\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getBlockStats\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getBlockStats\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"listProjects\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#listProjects\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"listResearcherAccounts\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#listResearcherAccounts\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"logging\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#logging\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"network\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#network\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"projects\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#projects\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"readConfig\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#readConfig\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"superblockAverage\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#superblockAverage\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"versionReport\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#versionReport\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"listManifests\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#listManifests\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"archiveLog\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#archiveLog\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"scrapeReport\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#scrapeReport\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"addNode\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#addNode\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"askForOutstandingBlocks\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#askForOutstandingBlocks\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"clearBanned\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#clearBanned\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"currentTime\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#currentTime\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getAddedNodeInfo\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getAddedNodeInfo\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getBestBlockhash\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getBestBlockhash\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getBlock\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getBlock\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getBlockByNumber\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getBlockByNumber\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getBlockchainInfo\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getBlockchainInfo\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getBlockCount\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getBlockCount\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getBlockHash\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getBlockHash\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getBurnReport\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getBurnReport\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getCheckpoint\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getCheckpoint\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getConnectionCount\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getConnectionCount\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getDifficulty\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getDifficulty\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getInfo\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getInfo\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getNetTotals\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getNetTotals\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getNetworkInfo\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getNetworkInfo\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getPeerInfo\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getPeerInfo\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getRawMemPool\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getRawMemPool\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"listBanned\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#listBanned\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"memoryPool\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#memoryPool\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"networkTime\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#networkTime\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"ping\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#ping\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getSuperVotes\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getSuperVotes\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"setBan\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#setBan\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"showBlock\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#showBlock\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"addPoll\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#addPoll\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getPollResults\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getPollResults\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"getVotingClaim\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#getVotingClaim\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"listPolls\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#listPolls\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"voteById\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#voteById\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2048,\"name\":\"voteDetails\",\"url\":\"classes/GridcoinRPC.GridcoinRPC.html#voteDetails\",\"classes\":\"tsd-kind-method tsd-parent-kind-class\",\"parent\":\"GridcoinRPC.GridcoinRPC\"},{\"kind\":2,\"name\":\"RPCBase\",\"url\":\"modules/RPCBase.html\",\"classes\":\"tsd-kind-module\"},{\"kind\":4194304,\"name\":\"callParameters\",\"url\":\"types/RPCBase.callParameters.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-module\",\"parent\":\"RPCBase\"},{\"kind\":128,\"name\":\"RPCBase\",\"url\":\"classes/RPCBase.RPCBase.html\",\"classes\":\"tsd-kind-class tsd-parent-kind-module\",\"parent\":\"RPCBase\"},{\"kind\":512,\"name\":\"constructor\",\"url\":\"classes/RPCBase.RPCBase.html#constructor\",\"classes\":\"tsd-kind-constructor tsd-parent-kind-class\",\"parent\":\"RPCBase.RPCBase\"},{\"kind\":1024,\"name\":\"client\",\"url\":\"classes/RPCBase.RPCBase.html#client\",\"classes\":\"tsd-kind-property tsd-parent-kind-class\",\"parent\":\"RPCBase.RPCBase\"},{\"kind\":2048,\"name\":\"call\",\"url\":\"classes/RPCBase.RPCBase.html#call\",\"classes\":\"tsd-kind-method tsd-parent-kind-class tsd-is-protected\",\"parent\":\"RPCBase.RPCBase\"},{\"kind\":2048,\"name\":\"filterParameters\",\"url\":\"classes/RPCBase.RPCBase.html#filterParameters\",\"classes\":\"tsd-kind-method tsd-parent-kind-class tsd-is-private\",\"parent\":\"RPCBase.RPCBase\"},{\"kind\":2,\"name\":\"types\",\"url\":\"modules/types.html\",\"classes\":\"tsd-kind-module\"},{\"kind\":4194304,\"name\":\"Address\",\"url\":\"types/types.Address.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-module\",\"parent\":\"types\"},{\"kind\":4194304,\"name\":\"PublicKey\",\"url\":\"types/types.PublicKey.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-module\",\"parent\":\"types\"},{\"kind\":4194304,\"name\":\"Hex\",\"url\":\"types/types.Hex.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-module\",\"parent\":\"types\"},{\"kind\":4194304,\"name\":\"TX\",\"url\":\"types/types.TX.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-module\",\"parent\":\"types\"},{\"kind\":4194304,\"name\":\"CPID\",\"url\":\"types/types.CPID.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-module\",\"parent\":\"types\"},{\"kind\":4194304,\"name\":\"Block\",\"url\":\"types/types.Block.html\",\"classes\":\"tsd-kind-type-alias tsd-parent-kind-module\",\"parent\":\"types\"}],\"index\":{\"version\":\"2.3.9\",\"fields\":[\"name\",\"comment\"],\"fieldVectors\":[[\"name/0\",[0,39.964]],[\"comment/0\",[]],[\"name/1\",[0,39.964]],[\"comment/1\",[]],[\"name/2\",[1,39.964]],[\"comment/2\",[]],[\"name/3\",[2,39.964]],[\"comment/3\",[]],[\"name/4\",[3,39.964]],[\"comment/4\",[]],[\"name/5\",[4,45.072]],[\"comment/5\",[]],[\"name/6\",[5,45.072]],[\"comment/6\",[]],[\"name/7\",[6,45.072]],[\"comment/7\",[]],[\"name/8\",[7,45.072]],[\"comment/8\",[]],[\"name/9\",[8,45.072]],[\"comment/9\",[]],[\"name/10\",[9,45.072]],[\"comment/10\",[]],[\"name/11\",[10,45.072]],[\"comment/11\",[]],[\"name/12\",[11,45.072]],[\"comment/12\",[]],[\"name/13\",[12,45.072]],[\"comment/13\",[]],[\"name/14\",[13,45.072]],[\"comment/14\",[]],[\"name/15\",[14,45.072]],[\"comment/15\",[]],[\"name/16\",[15,45.072]],[\"comment/16\",[]],[\"name/17\",[16,45.072]],[\"comment/17\",[]],[\"name/18\",[17,45.072]],[\"comment/18\",[]],[\"name/19\",[18,45.072]],[\"comment/19\",[]],[\"name/20\",[19,45.072]],[\"comment/20\",[]],[\"name/21\",[20,45.072]],[\"comment/21\",[]],[\"name/22\",[21,45.072]],[\"comment/22\",[]],[\"name/23\",[22,45.072]],[\"comment/23\",[]],[\"name/24\",[23,45.072]],[\"comment/24\",[]],[\"name/25\",[24,45.072]],[\"comment/25\",[]],[\"name/26\",[25,45.072]],[\"comment/26\",[]],[\"name/27\",[26,45.072]],[\"comment/27\",[]],[\"name/28\",[27,45.072]],[\"comment/28\",[]],[\"name/29\",[28,45.072]],[\"comment/29\",[]],[\"name/30\",[29,45.072]],[\"comment/30\",[]],[\"name/31\",[30,45.072]],[\"comment/31\",[]],[\"name/32\",[31,45.072]],[\"comment/32\",[]],[\"name/33\",[32,45.072]],[\"comment/33\",[]],[\"name/34\",[33,45.072]],[\"comment/34\",[]],[\"name/35\",[34,45.072]],[\"comment/35\",[]],[\"name/36\",[35,45.072]],[\"comment/36\",[]],[\"name/37\",[36,45.072]],[\"comment/37\",[]],[\"name/38\",[37,45.072]],[\"comment/38\",[]],[\"name/39\",[38,45.072]],[\"comment/39\",[]],[\"name/40\",[39,45.072]],[\"comment/40\",[]],[\"name/41\",[40,45.072]],[\"comment/41\",[]],[\"name/42\",[41,45.072]],[\"comment/42\",[]],[\"name/43\",[42,45.072]],[\"comment/43\",[]],[\"name/44\",[43,45.072]],[\"comment/44\",[]],[\"name/45\",[44,45.072]],[\"comment/45\",[]],[\"name/46\",[45,45.072]],[\"comment/46\",[]],[\"name/47\",[46,45.072]],[\"comment/47\",[]],[\"name/48\",[47,45.072]],[\"comment/48\",[]],[\"name/49\",[48,45.072]],[\"comment/49\",[]],[\"name/50\",[49,45.072]],[\"comment/50\",[]],[\"name/51\",[50,45.072]],[\"comment/51\",[]],[\"name/52\",[51,45.072]],[\"comment/52\",[]],[\"name/53\",[52,45.072]],[\"comment/53\",[]],[\"name/54\",[53,45.072]],[\"comment/54\",[]],[\"name/55\",[54,45.072]],[\"comment/55\",[]],[\"name/56\",[55,45.072]],[\"comment/56\",[]],[\"name/57\",[56,45.072]],[\"comment/57\",[]],[\"name/58\",[57,45.072]],[\"comment/58\",[]],[\"name/59\",[58,45.072]],[\"comment/59\",[]],[\"name/60\",[59,45.072]],[\"comment/60\",[]],[\"name/61\",[60,45.072]],[\"comment/61\",[]],[\"name/62\",[61,45.072]],[\"comment/62\",[]],[\"name/63\",[62,45.072]],[\"comment/63\",[]],[\"name/64\",[63,45.072]],[\"comment/64\",[]],[\"name/65\",[64,45.072]],[\"comment/65\",[]],[\"name/66\",[65,45.072]],[\"comment/66\",[]],[\"name/67\",[66,45.072]],[\"comment/67\",[]],[\"name/68\",[67,45.072]],[\"comment/68\",[]],[\"name/69\",[68,45.072]],[\"comment/69\",[]],[\"name/70\",[69,45.072]],[\"comment/70\",[]],[\"name/71\",[70,45.072]],[\"comment/71\",[]],[\"name/72\",[71,45.072]],[\"comment/72\",[]],[\"name/73\",[72,45.072]],[\"comment/73\",[]],[\"name/74\",[73,45.072]],[\"comment/74\",[]],[\"name/75\",[74,45.072]],[\"comment/75\",[]],[\"name/76\",[75,45.072]],[\"comment/76\",[]],[\"name/77\",[76,45.072]],[\"comment/77\",[]],[\"name/78\",[77,45.072]],[\"comment/78\",[]],[\"name/79\",[78,45.072]],[\"comment/79\",[]],[\"name/80\",[79,45.072]],[\"comment/80\",[]],[\"name/81\",[80,45.072]],[\"comment/81\",[]],[\"name/82\",[81,45.072]],[\"comment/82\",[]],[\"name/83\",[82,45.072]],[\"comment/83\",[]],[\"name/84\",[83,45.072]],[\"comment/84\",[]],[\"name/85\",[84,45.072]],[\"comment/85\",[]],[\"name/86\",[85,45.072]],[\"comment/86\",[]],[\"name/87\",[86,45.072]],[\"comment/87\",[]],[\"name/88\",[87,45.072]],[\"comment/88\",[]],[\"name/89\",[88,45.072]],[\"comment/89\",[]],[\"name/90\",[89,45.072]],[\"comment/90\",[]],[\"name/91\",[90,45.072]],[\"comment/91\",[]],[\"name/92\",[91,45.072]],[\"comment/92\",[]],[\"name/93\",[92,45.072]],[\"comment/93\",[]],[\"name/94\",[93,45.072]],[\"comment/94\",[]],[\"name/95\",[94,45.072]],[\"comment/95\",[]],[\"name/96\",[95,45.072]],[\"comment/96\",[]],[\"name/97\",[96,45.072]],[\"comment/97\",[]],[\"name/98\",[97,45.072]],[\"comment/98\",[]],[\"name/99\",[98,45.072]],[\"comment/99\",[]],[\"name/100\",[99,45.072]],[\"comment/100\",[]],[\"name/101\",[100,45.072]],[\"comment/101\",[]],[\"name/102\",[101,45.072]],[\"comment/102\",[]],[\"name/103\",[102,45.072]],[\"comment/103\",[]],[\"name/104\",[103,45.072]],[\"comment/104\",[]],[\"name/105\",[104,45.072]],[\"comment/105\",[]],[\"name/106\",[105,45.072]],[\"comment/106\",[]],[\"name/107\",[106,45.072]],[\"comment/107\",[]],[\"name/108\",[107,45.072]],[\"comment/108\",[]],[\"name/109\",[108,45.072]],[\"comment/109\",[]],[\"name/110\",[109,45.072]],[\"comment/110\",[]],[\"name/111\",[110,45.072]],[\"comment/111\",[]],[\"name/112\",[111,45.072]],[\"comment/112\",[]],[\"name/113\",[112,45.072]],[\"comment/113\",[]],[\"name/114\",[113,45.072]],[\"comment/114\",[]],[\"name/115\",[114,45.072]],[\"comment/115\",[]],[\"name/116\",[115,45.072]],[\"comment/116\",[]],[\"name/117\",[116,45.072]],[\"comment/117\",[]],[\"name/118\",[117,45.072]],[\"comment/118\",[]],[\"name/119\",[118,45.072]],[\"comment/119\",[]],[\"name/120\",[119,45.072]],[\"comment/120\",[]],[\"name/121\",[120,39.964]],[\"comment/121\",[]],[\"name/122\",[121,45.072]],[\"comment/122\",[]],[\"name/123\",[120,39.964]],[\"comment/123\",[]],[\"name/124\",[1,39.964]],[\"comment/124\",[]],[\"name/125\",[2,39.964]],[\"comment/125\",[]],[\"name/126\",[3,39.964]],[\"comment/126\",[]],[\"name/127\",[122,45.072]],[\"comment/127\",[]],[\"name/128\",[123,45.072]],[\"comment/128\",[]],[\"name/129\",[124,45.072]],[\"comment/129\",[]],[\"name/130\",[125,45.072]],[\"comment/130\",[]],[\"name/131\",[126,45.072]],[\"comment/131\",[]],[\"name/132\",[127,45.072]],[\"comment/132\",[]],[\"name/133\",[128,45.072]],[\"comment/133\",[]],[\"name/134\",[129,45.072]],[\"comment/134\",[]]],\"invertedIndex\":[[\"addkey\",{\"_index\":71,\"name\":{\"72\":{}},\"comment\":{}}],[\"addmultisigaddress\",{\"_index\":4,\"name\":{\"5\":{}},\"comment\":{}}],[\"addnode\",{\"_index\":87,\"name\":{\"88\":{}},\"comment\":{}}],[\"addpoll\",{\"_index\":114,\"name\":{\"115\":{}},\"comment\":{}}],[\"addredeemscript\",{\"_index\":5,\"name\":{\"6\":{}},\"comment\":{}}],[\"address\",{\"_index\":124,\"name\":{\"129\":{}},\"comment\":{}}],[\"advertisebeacon\",{\"_index\":55,\"name\":{\"56\":{}},\"comment\":{}}],[\"archivelog\",{\"_index\":85,\"name\":{\"86\":{}},\"comment\":{}}],[\"askforoutstandingblocks\",{\"_index\":88,\"name\":{\"89\":{}},\"comment\":{}}],[\"auditsnapshotaccrual\",{\"_index\":69,\"name\":{\"70\":{}},\"comment\":{}}],[\"auditsnapshotaccruals\",{\"_index\":70,\"name\":{\"71\":{}},\"comment\":{}}],[\"backupprivatekeys\",{\"_index\":6,\"name\":{\"7\":{}},\"comment\":{}}],[\"backupwallet\",{\"_index\":7,\"name\":{\"8\":{}},\"comment\":{}}],[\"beaconconvergence\",{\"_index\":57,\"name\":{\"58\":{}},\"comment\":{}}],[\"beaconreport\",{\"_index\":56,\"name\":{\"57\":{}},\"comment\":{}}],[\"beaconstatus\",{\"_index\":58,\"name\":{\"59\":{}},\"comment\":{}}],[\"block\",{\"_index\":129,\"name\":{\"134\":{}},\"comment\":{}}],[\"burn\",{\"_index\":8,\"name\":{\"9\":{}},\"comment\":{}}],[\"call\",{\"_index\":3,\"name\":{\"4\":{},\"126\":{}},\"comment\":{}}],[\"callparameters\",{\"_index\":121,\"name\":{\"122\":{}},\"comment\":{}}],[\"checkwallet\",{\"_index\":9,\"name\":{\"10\":{}},\"comment\":{}}],[\"clearbanned\",{\"_index\":89,\"name\":{\"90\":{}},\"comment\":{}}],[\"client\",{\"_index\":2,\"name\":{\"3\":{},\"125\":{}},\"comment\":{}}],[\"comparesnapshotaccrual\",{\"_index\":72,\"name\":{\"73\":{}},\"comment\":{}}],[\"constructor\",{\"_index\":1,\"name\":{\"2\":{},\"124\":{}},\"comment\":{}}],[\"cpid\",{\"_index\":128,\"name\":{\"133\":{}},\"comment\":{}}],[\"createrawtransaction\",{\"_index\":10,\"name\":{\"11\":{}},\"comment\":{}}],[\"currentcontractaverage\",{\"_index\":73,\"name\":{\"74\":{}},\"comment\":{}}],[\"currenttime\",{\"_index\":90,\"name\":{\"91\":{}},\"comment\":{}}],[\"debug\",{\"_index\":74,\"name\":{\"75\":{}},\"comment\":{}}],[\"decoderawtransaction\",{\"_index\":11,\"name\":{\"12\":{}},\"comment\":{}}],[\"decodescript\",{\"_index\":12,\"name\":{\"13\":{}},\"comment\":{}}],[\"explainmagnitude\",{\"_index\":59,\"name\":{\"60\":{}},\"comment\":{}}],[\"filterparameters\",{\"_index\":122,\"name\":{\"127\":{}},\"comment\":{}}],[\"getaccount\",{\"_index\":13,\"name\":{\"14\":{}},\"comment\":{}}],[\"getaccountaddress\",{\"_index\":14,\"name\":{\"15\":{}},\"comment\":{}}],[\"getaddednodeinfo\",{\"_index\":91,\"name\":{\"92\":{}},\"comment\":{}}],[\"getaddressesbyaccount\",{\"_index\":15,\"name\":{\"16\":{}},\"comment\":{}}],[\"getbalance\",{\"_index\":16,\"name\":{\"17\":{}},\"comment\":{}}],[\"getbalancedetail\",{\"_index\":17,\"name\":{\"18\":{}},\"comment\":{}}],[\"getbestblockhash\",{\"_index\":92,\"name\":{\"93\":{}},\"comment\":{}}],[\"getblock\",{\"_index\":93,\"name\":{\"94\":{}},\"comment\":{}}],[\"getblockbynumber\",{\"_index\":94,\"name\":{\"95\":{}},\"comment\":{}}],[\"getblockchaininfo\",{\"_index\":95,\"name\":{\"96\":{}},\"comment\":{}}],[\"getblockcount\",{\"_index\":96,\"name\":{\"97\":{}},\"comment\":{}}],[\"getblockhash\",{\"_index\":97,\"name\":{\"98\":{}},\"comment\":{}}],[\"getblockstats\",{\"_index\":75,\"name\":{\"76\":{}},\"comment\":{}}],[\"getburnreport\",{\"_index\":98,\"name\":{\"99\":{}},\"comment\":{}}],[\"getcheckpoint\",{\"_index\":99,\"name\":{\"100\":{}},\"comment\":{}}],[\"getconnectioncount\",{\"_index\":100,\"name\":{\"101\":{}},\"comment\":{}}],[\"getdifficulty\",{\"_index\":101,\"name\":{\"102\":{}},\"comment\":{}}],[\"getinfo\",{\"_index\":102,\"name\":{\"103\":{}},\"comment\":{}}],[\"getlaststake\",{\"_index\":60,\"name\":{\"61\":{}},\"comment\":{}}],[\"getmininginfo\",{\"_index\":61,\"name\":{\"62\":{}},\"comment\":{}}],[\"getnettotals\",{\"_index\":103,\"name\":{\"104\":{}},\"comment\":{}}],[\"getnetworkinfo\",{\"_index\":104,\"name\":{\"105\":{}},\"comment\":{}}],[\"getnewaddress\",{\"_index\":18,\"name\":{\"19\":{}},\"comment\":{}}],[\"getnewpubkey\",{\"_index\":19,\"name\":{\"20\":{}},\"comment\":{}}],[\"getpeerinfo\",{\"_index\":105,\"name\":{\"106\":{}},\"comment\":{}}],[\"getpollresults\",{\"_index\":115,\"name\":{\"116\":{}},\"comment\":{}}],[\"getrawmempool\",{\"_index\":106,\"name\":{\"107\":{}},\"comment\":{}}],[\"getrawtransaction\",{\"_index\":20,\"name\":{\"21\":{}},\"comment\":{}}],[\"getrawwallettransaction\",{\"_index\":21,\"name\":{\"22\":{}},\"comment\":{}}],[\"getreceivedbyaccount\",{\"_index\":22,\"name\":{\"23\":{}},\"comment\":{}}],[\"getreceivedbyaddress\",{\"_index\":23,\"name\":{\"24\":{}},\"comment\":{}}],[\"getsupervotes\",{\"_index\":111,\"name\":{\"112\":{}},\"comment\":{}}],[\"gettransaction\",{\"_index\":24,\"name\":{\"25\":{}},\"comment\":{}}],[\"getunconfirmedbalance\",{\"_index\":25,\"name\":{\"26\":{}},\"comment\":{}}],[\"getvotingclaim\",{\"_index\":116,\"name\":{\"117\":{}},\"comment\":{}}],[\"getwalletinfo\",{\"_index\":26,\"name\":{\"27\":{}},\"comment\":{}}],[\"gridcoinrpc\",{\"_index\":0,\"name\":{\"0\":{},\"1\":{}},\"comment\":{}}],[\"hex\",{\"_index\":126,\"name\":{\"131\":{}},\"comment\":{}}],[\"keypoolrefill\",{\"_index\":27,\"name\":{\"28\":{}},\"comment\":{}}],[\"lifetime\",{\"_index\":62,\"name\":{\"63\":{}},\"comment\":{}}],[\"listaccounts\",{\"_index\":28,\"name\":{\"29\":{}},\"comment\":{}}],[\"listaddressgroupings\",{\"_index\":29,\"name\":{\"30\":{}},\"comment\":{}}],[\"listbanned\",{\"_index\":107,\"name\":{\"108\":{}},\"comment\":{}}],[\"listmanifests\",{\"_index\":84,\"name\":{\"85\":{}},\"comment\":{}}],[\"listpolls\",{\"_index\":117,\"name\":{\"118\":{}},\"comment\":{}}],[\"listprojects\",{\"_index\":76,\"name\":{\"77\":{}},\"comment\":{}}],[\"listreceivedbyaddress\",{\"_index\":30,\"name\":{\"31\":{}},\"comment\":{}}],[\"listresearcheraccounts\",{\"_index\":77,\"name\":{\"78\":{}},\"comment\":{}}],[\"listsinceblock\",{\"_index\":31,\"name\":{\"32\":{}},\"comment\":{}}],[\"liststakes\",{\"_index\":32,\"name\":{\"33\":{}},\"comment\":{}}],[\"listtransactions\",{\"_index\":33,\"name\":{\"34\":{}},\"comment\":{}}],[\"listunspent\",{\"_index\":34,\"name\":{\"35\":{}},\"comment\":{}}],[\"logging\",{\"_index\":78,\"name\":{\"79\":{}},\"comment\":{}}],[\"magnitude\",{\"_index\":63,\"name\":{\"64\":{}},\"comment\":{}}],[\"makekeypair\",{\"_index\":35,\"name\":{\"36\":{}},\"comment\":{}}],[\"memorypool\",{\"_index\":108,\"name\":{\"109\":{}},\"comment\":{}}],[\"network\",{\"_index\":79,\"name\":{\"80\":{}},\"comment\":{}}],[\"networktime\",{\"_index\":109,\"name\":{\"110\":{}},\"comment\":{}}],[\"pendingbeaconreport\",{\"_index\":64,\"name\":{\"65\":{}},\"comment\":{}}],[\"ping\",{\"_index\":110,\"name\":{\"111\":{}},\"comment\":{}}],[\"projects\",{\"_index\":80,\"name\":{\"81\":{}},\"comment\":{}}],[\"publickey\",{\"_index\":125,\"name\":{\"130\":{}},\"comment\":{}}],[\"rainbymagnitude\",{\"_index\":36,\"name\":{\"37\":{}},\"comment\":{}}],[\"readconfig\",{\"_index\":81,\"name\":{\"82\":{}},\"comment\":{}}],[\"repairwallet\",{\"_index\":37,\"name\":{\"38\":{}},\"comment\":{}}],[\"resendtx\",{\"_index\":38,\"name\":{\"39\":{}},\"comment\":{}}],[\"reservebalance\",{\"_index\":39,\"name\":{\"40\":{}},\"comment\":{}}],[\"resetcpids\",{\"_index\":65,\"name\":{\"66\":{}},\"comment\":{}}],[\"revokebeacon\",{\"_index\":66,\"name\":{\"67\":{}},\"comment\":{}}],[\"rpcbase\",{\"_index\":120,\"name\":{\"121\":{},\"123\":{}},\"comment\":{}}],[\"scanforunspent\",{\"_index\":40,\"name\":{\"41\":{}},\"comment\":{}}],[\"scrapereport\",{\"_index\":86,\"name\":{\"87\":{}},\"comment\":{}}],[\"sendfrom\",{\"_index\":41,\"name\":{\"42\":{}},\"comment\":{}}],[\"sendmany\",{\"_index\":42,\"name\":{\"43\":{}},\"comment\":{}}],[\"sendrawtransaction\",{\"_index\":43,\"name\":{\"44\":{}},\"comment\":{}}],[\"sendtoaddress\",{\"_index\":44,\"name\":{\"45\":{}},\"comment\":{}}],[\"setaccount\",{\"_index\":45,\"name\":{\"46\":{}},\"comment\":{}}],[\"setban\",{\"_index\":112,\"name\":{\"113\":{}},\"comment\":{}}],[\"settxfee\",{\"_index\":46,\"name\":{\"47\":{}},\"comment\":{}}],[\"showblock\",{\"_index\":113,\"name\":{\"114\":{}},\"comment\":{}}],[\"signmessage\",{\"_index\":47,\"name\":{\"48\":{}},\"comment\":{}}],[\"signrawtransaction\",{\"_index\":48,\"name\":{\"49\":{}},\"comment\":{}}],[\"superblockage\",{\"_index\":67,\"name\":{\"68\":{}},\"comment\":{}}],[\"superblockaverage\",{\"_index\":82,\"name\":{\"83\":{}},\"comment\":{}}],[\"superblocks\",{\"_index\":68,\"name\":{\"69\":{}},\"comment\":{}}],[\"tx\",{\"_index\":127,\"name\":{\"132\":{}},\"comment\":{}}],[\"types\",{\"_index\":123,\"name\":{\"128\":{}},\"comment\":{}}],[\"validateaddress\",{\"_index\":49,\"name\":{\"50\":{}},\"comment\":{}}],[\"validatepubkey\",{\"_index\":50,\"name\":{\"51\":{}},\"comment\":{}}],[\"verifymessage\",{\"_index\":51,\"name\":{\"52\":{}},\"comment\":{}}],[\"versionreport\",{\"_index\":83,\"name\":{\"84\":{}},\"comment\":{}}],[\"votebyid\",{\"_index\":118,\"name\":{\"119\":{}},\"comment\":{}}],[\"votedetails\",{\"_index\":119,\"name\":{\"120\":{}},\"comment\":{}}],[\"walletlock\",{\"_index\":52,\"name\":{\"53\":{}},\"comment\":{}}],[\"walletpassphrase\",{\"_index\":53,\"name\":{\"54\":{}},\"comment\":{}}],[\"walletpassphrasechange\",{\"_index\":54,\"name\":{\"55\":{}},\"comment\":{}}]],\"pipeline\":[]}}"); \ No newline at end of file diff --git a/assets/style.css b/assets/style.css new file mode 100644 index 0000000..2d02570 --- /dev/null +++ b/assets/style.css @@ -0,0 +1,1280 @@ +: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-text: #222; + --light-color-text-aside: #707070; + --light-color-link: #4da6ff; + --light-color-ts: #db1373; + --light-color-ts-interface: #139d2c; + --light-color-ts-enum: #9c891a; + --light-color-ts-class: #2484e5; + --light-color-ts-function: #572be7; + --light-color-ts-namespace: #b111c9; + --light-color-ts-private: #707070; + --light-color-ts-variable: #4d68ff; + --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-text: #f5f5f5; + --dark-color-text-aside: #dddddd; + --dark-color-link: #00aff4; + --dark-color-ts: #ff6492; + --dark-color-ts-interface: #6cff87; + --dark-color-ts-enum: #f4d93e; + --dark-color-ts-class: #61b0ff; + --dark-color-ts-function: #9772ff; + --dark-color-ts-namespace: #e14dff; + --dark-color-ts-private: #e2e2e2; + --dark-color-ts-variable: #4d68ff; + --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-text: var(--light-color-text); + --color-text-aside: var(--light-color-text-aside); + --color-link: var(--light-color-link); + --color-ts: var(--light-color-ts); + --color-ts-interface: var(--light-color-ts-interface); + --color-ts-enum: var(--light-color-ts-enum); + --color-ts-class: var(--light-color-ts-class); + --color-ts-function: var(--light-color-ts-function); + --color-ts-namespace: var(--light-color-ts-namespace); + --color-ts-private: var(--light-color-ts-private); + --color-ts-variable: var(--light-color-ts-variable); + --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-text: var(--dark-color-text); + --color-text-aside: var(--dark-color-text-aside); + --color-link: var(--dark-color-link); + --color-ts: var(--dark-color-ts); + --color-ts-interface: var(--dark-color-ts-interface); + --color-ts-enum: var(--dark-color-ts-enum); + --color-ts-class: var(--dark-color-ts-class); + --color-ts-function: var(--dark-color-ts-function); + --color-ts-namespace: var(--dark-color-ts-namespace); + --color-ts-private: var(--dark-color-ts-private); + --color-ts-variable: var(--dark-color-ts-variable); + --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-text: var(--light-color-text); + --color-text-aside: var(--light-color-text-aside); + --color-link: var(--light-color-link); + --color-ts: var(--light-color-ts); + --color-ts-interface: var(--light-color-ts-interface); + --color-ts-enum: var(--light-color-ts-enum); + --color-ts-class: var(--light-color-ts-class); + --color-ts-function: var(--light-color-ts-function); + --color-ts-namespace: var(--light-color-ts-namespace); + --color-ts-private: var(--light-color-ts-private); + --color-ts-variable: var(--light-color-ts-variable); + --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-text: var(--dark-color-text); + --color-text-aside: var(--dark-color-text-aside); + --color-link: var(--dark-color-link); + --color-ts: var(--dark-color-ts); + --color-ts-interface: var(--dark-color-ts-interface); + --color-ts-enum: var(--dark-color-ts-enum); + --color-ts-class: var(--dark-color-ts-class); + --color-ts-function: var(--dark-color-ts-function); + --color-ts-namespace: var(--dark-color-ts-namespace); + --color-ts-private: var(--dark-color-ts-private); + --color-ts-variable: var(--dark-color-ts-variable); + --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 { + 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; +} + +pre { + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; +} + +dl, +menu, +ol, +ul { + margin: 1em 0; +} + +dd { + margin: 0 0 0 40px; +} + +.container { + max-width: 1600px; + padding: 0 2rem; +} + +@media (min-width: 640px) { + .container { + padding: 0 4rem; + } +} +@media (min-width: 1200px) { + .container { + padding: 0 8rem; + } +} +@media (min-width: 1600px) { + .container { + padding: 0 12rem; + } +} + +/* 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 { + display: flex; + justify-content: space-between; + position: relative; + margin: 0 auto; +} + +.col-4, +.col-8 { + box-sizing: border-box; + float: left; + padding: 2rem 1rem; +} + +.col-4 { + flex: 0 0 25%; +} +.col-8 { + flex: 1 0; + flex-wrap: wrap; + padding-left: 0; +} + +@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 shift-to-left { + from { + transform: translate(0, 0); + } + to { + transform: translate(-25%, 0); + } +} +@keyframes unshift-to-left { + from { + transform: translate(-25%, 0); + } + to { + transform: translate(0, 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 { + padding: 10px; + border: 0.1em solid var(--color-accent); +} +pre code { + padding: 0; + font-size: 100%; +} + +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 h4, +.tsd-typography .tsd-index-panel h3, +.tsd-index-panel .tsd-typography h3, +.tsd-typography h5, +.tsd-typography h6 { + font-size: 1em; + margin: 0; +} +.tsd-typography h5, +.tsd-typography h6 { + font-weight: normal; +} +.tsd-typography p, +.tsd-typography ul, +.tsd-typography ol { + margin: 1em 0; +} + +@media (max-width: 1024px) { + html .col-content { + float: none; + max-width: 100%; + width: 100%; + padding-top: 3rem; + } + html .col-menu { + 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; + max-width: 25rem; + visibility: hidden; + background-color: var(--color-background); + transform: translate(100%, 0); + } + html .col-menu > *: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 :is(header, footer, .col-content) { + animation: shift-to-left 0.4s; + } + + .to-has-menu .col-menu { + animation: pop-in-from-right 0.4s; + } + + .from-has-menu .overlay { + animation: fade-out 0.4s; + } + + .from-has-menu :is(header, footer, .col-content) { + animation: unshift-to-left 0.4s; + } + + .from-has-menu .col-menu { + animation: pop-out-to-right 0.4s; + } + + .has-menu body { + overflow: hidden; + } + .has-menu .overlay { + visibility: visible; + } + .has-menu :is(header, footer, .col-content) { + transform: translate(-25%, 0); + } + .has-menu .col-menu { + visibility: visible; + transform: translate(0, 0); + display: grid; + align-items: center; + grid-template-rows: auto 1fr; + grid-gap: 1.5rem; + max-height: 100vh; + padding: 1rem 2rem; + } + .has-menu .tsd-navigation { + max-height: 100%; + } +} + +.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-index-panel a, +.tsd-index-panel a.tsd-parent-kind-module { + color: var(--color-ts); +} +.tsd-index-panel a.tsd-parent-kind-interface { + color: var(--color-ts-interface); +} +.tsd-index-panel a.tsd-parent-kind-enum { + color: var(--color-ts-enum); +} +.tsd-index-panel a.tsd-parent-kind-class { + color: var(--color-ts-class); +} +.tsd-index-panel a.tsd-kind-module { + color: var(--color-ts-namespace); +} +.tsd-index-panel a.tsd-kind-interface { + color: var(--color-ts-interface); +} +.tsd-index-panel a.tsd-kind-enum { + color: var(--color-ts-enum); +} +.tsd-index-panel a.tsd-kind-class { + color: var(--color-ts-class); +} +.tsd-index-panel a.tsd-kind-function { + color: var(--color-ts-function); +} +.tsd-index-panel a.tsd-kind-namespace { + color: var(--color-ts-namespace); +} +.tsd-index-panel a.tsd-kind-variable { + color: var(--color-ts-variable); +} +.tsd-index-panel a.tsd-is-private { + color: var(--color-ts-private); +} + +.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: absolute; + 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-member [data-tsd-kind] { + color: var(--color-ts); +} +.tsd-member [data-tsd-kind="Interface"] { + color: var(--color-ts-interface); +} +.tsd-member [data-tsd-kind="Enum"] { + color: var(--color-ts-enum); +} +.tsd-member [data-tsd-kind="Class"] { + color: var(--color-ts-class); +} +.tsd-member [data-tsd-kind="Private"] { + color: var(--color-ts-private); +} + +.tsd-navigation a { + display: block; + margin: 0.4rem 0; + border-left: 2px solid transparent; + color: var(--color-text); + text-decoration: none; + transition: border-left-color 0.1s; +} +.tsd-navigation a:hover { + text-decoration: underline; +} +.tsd-navigation ul { + margin: 0; + padding: 0; + list-style: none; +} +.tsd-navigation li { + padding: 0; +} + +.tsd-navigation.primary .tsd-accordion-details > ul { + margin-top: 0.75rem; +} +.tsd-navigation.primary a { + padding: 0.75rem 0.5rem; + margin: 0; +} +.tsd-navigation.primary ul li a { + margin-left: 0.5rem; +} +.tsd-navigation.primary ul li li a { + margin-left: 1.5rem; +} +.tsd-navigation.primary ul li li li a { + margin-left: 2.5rem; +} +.tsd-navigation.primary ul li li li li a { + margin-left: 3.5rem; +} +.tsd-navigation.primary ul li li li li li a { + margin-left: 4.5rem; +} +.tsd-navigation.primary ul li li li li li li a { + margin-left: 5.5rem; +} +.tsd-navigation.primary li.current > a { + border-left: 0.15rem var(--color-text) solid; +} +.tsd-navigation.primary li.selected > a { + font-weight: bold; + border-left: 0.2rem var(--color-text) solid; +} +.tsd-navigation.primary ul li a:hover { + border-left: 0.2rem var(--color-text-aside) solid; +} +.tsd-navigation.primary li.globals + li > span, +.tsd-navigation.primary li.globals + li > a { + padding-top: 20px; +} + +.tsd-navigation.secondary.tsd-navigation--toolbar-hide { + max-height: calc(100vh - 1rem); + top: 0.5rem; +} +.tsd-navigation.secondary > ul { + display: inline; + padding-right: 0.5rem; + transition: opacity 0.2s; +} +.tsd-navigation.secondary ul li a { + padding-left: 0; +} +.tsd-navigation.secondary ul li li a { + padding-left: 1.1rem; +} +.tsd-navigation.secondary ul li li li a { + padding-left: 2.2rem; +} +.tsd-navigation.secondary ul li li li li a { + padding-left: 3.3rem; +} +.tsd-navigation.secondary ul li li li li li a { + padding-left: 4.4rem; +} +.tsd-navigation.secondary ul li li li li li li a { + padding-left: 5.5rem; +} + +#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 { + margin: 0.25rem 0; + font-size: 1rem; + line-height: 1.25rem; + display: inline-flex; + align-items: center; +} +.tsd-accordion-summary > h1, +.tsd-accordion-summary > h2, +.tsd-accordion-summary > h3, +.tsd-accordion-summary > h4, +.tsd-accordion-summary > h5 { + display: inline-flex; + align-items: center; + vertical-align: middle; + margin-bottom: 0; + user-select: none; + -moz-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; +} +.tsd-accordion-summary { + display: block; + cursor: pointer; +} +.tsd-accordion-summary > * { + margin-top: 0; + margin-bottom: 0; + padding-top: 0; + padding-bottom: 0; +} +.tsd-accordion-summary::-webkit-details-marker { + display: none; +} +.tsd-index-accordion .tsd-accordion-summary svg { + margin-right: 0.25rem; +} +.tsd-index-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; +} + +@media (min-width: 1024px) { + .col-content { + margin: 2rem auto; + } + + .menu-sticky-wrap { + position: sticky; + height: calc(100vh - 2rem); + top: 4rem; + right: 0; + padding: 0 1.5rem; + padding-top: 1rem; + margin-top: 3rem; + transition: 0.3s ease-in-out; + transition-property: top, padding-top, padding, height; + overflow-y: auto; + } + .col-menu { + border-left: 1px solid var(--color-accent); + } + .col-menu--hide { + top: 1rem; + } + .col-menu .tsd-navigation:not(:last-child) { + padding-bottom: 1.75rem; + } +} + +.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 { + padding: 0 10px; + background-color: var(--color-background); +} +#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, +#tsd-search .results li:hover { + background-color: var(--color-accent); +} +#tsd-search .results a { + display: block; +} +#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-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: fixed; + 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-page-toolbar--hide { + transform: translateY(-100%); +} + +.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; +} +@media (max-width: 1024px) { + .tsd-widget.options, + .tsd-widget.menu { + display: inline-block; + } +} +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; +} + +.warning { + padding: 1rem; + color: var(--color-warning-text); + background: var(--color-background-warning); +} + +* { + 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); +} diff --git a/classes/GridcoinRPC.GridcoinRPC.html b/classes/GridcoinRPC.GridcoinRPC.html new file mode 100644 index 0000000..05f58d8 --- /dev/null +++ b/classes/GridcoinRPC.GridcoinRPC.html @@ -0,0 +1,2875 @@ +GridcoinRPC | gridcoin-rpc
+
+ +
+
+
+
+ +

Class GridcoinRPC

+
+

Hierarchy

+
    +
  • RPCBase
  • +
  • Wallet
  • +
  • Mining
  • +
  • Developer
  • +
  • Network
  • +
  • Voting +
      +
    • GridcoinRPC
+
+
+
+ +
+
+

Constructors

+
+
+

Properties

+
+
+

Methods

+
addKey +addMultisigAddress +addNode +addPoll +addRedeemScript +advertiseBeacon +archiveLog +askForOutstandingBlocks +auditSnapshotAccrual +auditSnapshotAccruals +backupPrivateKeys +backupWallet +beaconConvergence +beaconReport +beaconStatus +burn +call +checkWallet +clearBanned +compareSnapshotAccrual +createRawTransaction +currentContractAverage +currentTime +debug +decodeRawTransaction +decodeScript +explainMagnitude +getAccount +getAccountAddress +getAddedNodeInfo +getAddressesByAccount +getBalance +getBalanceDetail +getBestBlockhash +getBlock +getBlockByNumber +getBlockCount +getBlockHash +getBlockStats +getBlockchainInfo +getBurnReport +getCheckpoint +getConnectionCount +getDifficulty +getInfo +getLastStake +getMiningInfo +getNetTotals +getNetworkInfo +getNewAddress +getNewPubkey +getPeerInfo +getPollResults +getRawMemPool +getRawTransaction +getRawWalletTransaction +getReceivedByAccount +getReceivedByAddress +getSuperVotes +getTransaction +getUnconfirmedBalance +getVotingClaim +getWalletInfo +keyPoolRefill +lifetime +listAccounts +listAddressGroupings +listBanned +listManifests +listPolls +listProjects +listReceivedByAddress +listResearcherAccounts +listSinceBlock +listStakes +listTransactions +listUnspent +logging +magnitude +makeKeyPair +memoryPool +network +networkTime +pendingBeaconReport +ping +projects +rainByMagnitude +readConfig +repairWallet +resendTx +reserveBalance +resetCPIDs +revokeBeacon +scanForUnspent +scrapeReport +sendFrom +sendMany +sendRawTransaction +sendToAddress +setAccount +setBan +setTXfee +showBlock +signMessage +signRawTransaction +superBlocks +superblockAge +superblockAverage +validateAddress +validatePubkey +verifyMessage +versionReport +voteById +voteDetails +walletLock +walletPassPhrase +walletPassPhraseChange +
+
+

Constructors

+
+ +
    + +
  • +

    Creates an instance of GridcoinRPC

    + +

    Memberof

    GridcoinRPC

    +
    +
    +

    Parameters

    +
      +
    • +
      config: IParameters
    • +
    • +
      Optional rpc: IJsonRPC
      +

      Dependency injection for the client class

      +
    +

    Returns GridcoinRPC

+
+

Properties

+
+ +
client: IJsonRPC
+
+

Methods

+
+ +
    + +
  • +

    Send a transaction that contains an administrative contract.

    + +

    Description

    Before invoking this command, import the master key used to sign and verify +transactions that contain administrative contracts. The label is optional: + importprivkey private_key_hex master +Send some coins to the master key address if necessary: + sendtoaddress address +To whitelist a project: + addkey add project projectname url +To de-whitelist a project: + addkey delete project projectname 1 +Key examples: + addkey add project milkyway@home http://milkyway.cs.rpi.edu/milkyway/@ + addkey delete project milkyway@home 1 +GRC will only memorize the last value it finds for a key in the highest block. +@todo: check return values as I am guessing here

    + +

    Returns

    +

    Memberof

    Developer

    +
    +
    +

    Parameters

    +
      +
    • +
      action: "add" | "delete"
    • +
    • +
      keyType: string
    • +
    • +
      keyName: string
    • +
    • +
      keyValue: string | number | boolean
    +

    Returns Promise<{
        contract: Contract;
        txid: string;
    }>

+
+ +
    + +
  • +

    Add a nrequired-to-sign multisignature address to the wallet.

    + +

    Description

    Adds a multisignature address to the wallet. +Returns the address addeded. +Requires to tell the number of keys needed for a transaction and list of +keys (keys are either addresses or a hexadecimal public key). +If an account is given, the address will go into that account. +Multisignature addresses make it so that you can share a wallet with multiple people and +require nrequired people to approve of a transaction. The maximum number keys is 16.

    + +

    Example

    grcRPC.addmultisigaddress(2, ['SBqubTKufqwpupnZsvzC3kSv9MCLrFXEUz', 'mhE9F4Cixhx9Dn8cB4Uf2EXLMCJR7muAFZ']);
    +
    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      nrequired: number
      +

      The minimum (m) number of signatures required to spend this m-of-n multisig script.

      +
    • +
    • +
      keys: string[]
      +

      A public key against which signatures will be checked.

      +
    • +
    • +
      Optional account: string
      +

      The account name in which the address should be stored. Leave blank for the default account.

      +
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Attempts add or remove node from the addnode list or try a connection to node once

    +

    RPC command will always return { result: 'ok' }

    + +

    Returns

    +

    Memberof

    Network

    +
    +
    +

    Parameters

    +
      +
    • +
      node: string
    • +
    • +
      command: addNodeCommand
    +

    Returns Promise<{
        result: "ok";
    }>

+
+ +
    + +
  • +

    Add a poll to the network. +Requires 100K GRC balance. Costs 50 GRC. +Provide an empty string for answers when choosing "yes/no/abstain" for responsetype.

    + +

    Returns

    +

    Memberof

    Voting

    +
    +
    +

    Parameters

    +
      +
    • +
      title: string
      +

      Title for the poll

      +
    • +
    • +
      days: number
      +

      Number of days that the poll will run

      +
    • +
    • +
      question: string
      +

      Prompt that voters shall answer

      +
    • +
    • +
      answers: string[]
      +

      Answers for voters to choose from.

      +
    • +
    • +
      weightType: WeightType
      +

      Weighing method for the poll: 1 = Balance, 2 = Magnitude + Balance

      +
    • +
    • +
      responseType: ResponseType
      +

      1 = yes/no/abstain, 2 = single-choice, 3 = multiple-choice

      +
    • +
    • +
      url: string
      +

      Discussion web page URL for the poll

      +
    +

    Returns Promise<Poll>

+
+ +
    + +
  • +

    Adds a reedemscript specified in hex to the wallet. +Will return the address generated. +If account is given, the pay to script hash will go into that account.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      redeemScript: string
    • +
    • +
      Optional account: string
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Sends out a beacon (only applicable to solo mining).

    +

    Requires the wallet to be fully unlocked

    + +

    Returns

    +

    Memberof

    Mining

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional force: boolean
      +

      If true, generate new beacon keys and send a new beacon +even when an active or pending beacon exists for your CPID. +This is useful if you lose a wallet with your original beacon keys +but not necessary otherwise

      +
    +

    Returns Promise<AdvertiseBeacon>

+
+ +
    + +
  • +

    Immediately archives the specified log. Currently valid values are debug and scraper.

    + +

    Returns

    +

    Memberof

    Developer

    +
    +
    +

    Parameters

    +
      +
    • +
      log: "debug" | "scraper"
    +

    Returns Promise<boolean>

+
+ +
    + +
  • +

    Requests network for outstanding blocks

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<{
        sent: boolean;
    }>

+
+ +
    + +
  • +

    Report accrual snapshot deltas for the specified CPID.

    + +

    Returns

    +

    Memberof

    Developer

    +
    +
    +

    Parameters

    +
      +
    • +
      cpid: string
    • +
    • +
      detailed: false
    +

    Returns Promise<AuditSnapshot>

  • + +
  • +

    Report accrual snapshot deltas for the specified CPID.

    + +

    Returns

    +

    Memberof

    Developer

    +
    +
    +

    Parameters

    +
      +
    • +
      cpid: string
    • +
    • +
      detailed: true
    +

    Returns Promise<AuditSnapshotDetailed>

+
+ +
    + +
  • +

    Report accrual audit for entire population of CPIDs.

    + +

    Returns

    +

    Memberof

    Developer

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional mismatchedOnly: boolean
    +

    Returns Promise<AuditSnapshotAccurals>

+
+ +
    + +
  • +

    Creates a backup of the private keys and creates a keys.dat files (also includes the date in the filename). +The data in the file is formatted like this: Address: ADDRESS, Secret: PRIVATE KEY. +File location and "result": true will be given if it successes, otherwise it will show an error message. +Requires the wallet to be fully unlocked

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +

    Returns Promise<BackupPrivateKeys>

+
+ +
    + +
  • +

    Creates a backup of the wallet.dat and gridcoinresearch.conf files (it also adds dates in the backup files’ names). +Returns if it was successful for each file +The files will be created in the walletbackups folder. +See the Config Wiki Page to find the location for your operating system of the walletbackups folder and other Gridcoin files

    + +

    See

    https://gridcoin.us/wiki/config-file

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +

    Returns Promise<BackupWallet>

+
+ +
    + +
  • +

    Displays verified and pending beacons from the scraper or subscriber viewpoint.

    + +

    Description

    There are three output sections:

    +
      +
    • verified_beacons_from_scraper_global: +Comes directly from the scraper global map for verified beacons. This is +for scraper monitoring of an individual scraper and will be empty if not +run on an actual scraper nod
    • +
    • verified_beacons_from_latest_convergence: +From the latest convergence formed from all of the scrapers. This list +is what will be activated in the next superblock.
    • +
    • pending_beacons_from_GetConsensusBeaconList: +This is a list of pending beacons. Note that it is subject to a one +hour ladder, so it will lag the information from the +pendingbeaconreport rpc call.
    • +
    + +

    Returns

    +

    Memberof

    Mining

    +
    +

    Returns Promise<BeaconConvergence>

+
+ +
    + +
  • +

    Returns a JSON list of all valid beacons on the network (as of where the wallet is synced to).

    + +

    Returns

    +

    Memberof

    Mining

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional activeOnly: boolean
      +

      Boolean specifying whether only active beacons should be returned. +Defaults to false which also includes expired beacons.

      +
    +

    Returns Promise<BeaconReport[]>

+
+ +
    + +
  • +

    Displays information about your beacon or the beacon for cpid.

    + +

    Returns

    +

    Memberof

    Mining

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional cpid: string
    +

    Returns Promise<BeaconStatusCollection>

+
+ +
    + +
  • +

    Creates a transaction that will send the given amount (rounded to 0.00000001) to no one making the coins disappear permanently. +No one can get back the coins spent by this command. +If hex string is specified, it will add on to the script used in the transaction.

    +

    Requires the wallet to be fully unlocked

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      amount: number
      +

      Amount to be burned down

      +
    • +
    • +
      Optional hexString: string
    +

    Returns Promise<string>

+
+ +
    + +
  • Protected +

    Send command to the rpc server, get response +Transform response field to the camelcase

    + +

    Returns

    +

    Throws

    +

    Memberof

    RPCBase

    +
    +
    +

    Type Parameters

    +
      +
    • +

      T

    +
    +

    Parameters

    +
    +

    Returns Promise<T>

+
+ +
    + +
  • +

    Checks that the wallet is reporting the correct balance and is not missing any transactions. +Returns { walletCheckPassed: true } if it finds no issues. On error it will return: +{ + mismatchedSpentCoins: nMismatchSpent, + amountInQuestion: nBalanceInQuestion +} +with nMismatchSpent numbers showing the number of transactions missed (either counted when it shouldn’t be or not counted when it should) +and nBalanceInQuestion showing the amount involved in those transactions (absolute value, does not subtract)

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +

    Returns Promise<WalletSuccessStatus | WalletFailStatus>

+
+ +
    + +
  • +

    Clear all banned IPs.

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<void>

+
+ +
    + +
  • +

    Compare snapshot and legacy accrual for active CPIDs.

    + +

    Returns

    +

    Memberof

    Developer

    +
    +

    Returns Promise<CompareSnapshotAccural>

+
+ +
    + +
  • +

    Create a transaction spending the given inputs and creating new outputs.

    +

    Outputs can be addresses or data. +Returns hex-encoded raw transaction. +Note that the transaction's inputs are not signed, and +it is not stored in the wallet or transmitted to the network.

    + +

    Example

    [
    {
    "txid":"id", (string, required) The transaction id
    "vout":n (numeric, required) The output number
    }
    ,...
    ] +
    + +

    Example

    {
    * "address": x.xxx (numeric, required) The key is the bitcoin address, the value is the CURRENCY_UNIT amount
    * "data\": "hex", (string, required) The key is "data", the value is hex encoded data
    * ...
    * }
    * @returns {Promise<{ transaction: string }>}
    * @memberof Wallet +
    +
    +
    +

    Parameters

    +
      +
    • +
      transactions: RawTransaction[]
      +

      A json array of json objects

      +
    • +
    • +
      outputs: Output
      +

      a json object with outputs

      +
    +

    Returns Promise<{
        transaction: string;
    }>

+
+ +
    + +
  • +

    Displays information on your current contract average with regards to superblock contract

    + +

    Returns

    +

    Memberof

    Developer

    +
    +

    Returns Promise<ContractAverage>

+
+ +
    + +
  • +

    Displays UTC Unix time as well as date and time in UTC

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<CurrentTime>

+
+ +
    + +
  • +

    Enable or disable VERBOSE logging category (aka old debug) on the fly

    + +

    Deprecated

    +

    See

    logging

    + +

    Returns

    +

    Memberof

    Developer

    +
    +
    +

    Parameters

    +
      +
    • +
      enable: boolean
    +

    Returns Promise<{
        Logging category VERBOSE (aka old debug) : boolean;
    }>

+
+ +
    + +
  • +

    Return a JSON object representing the serialized, hex-encoded transaction

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      rawTransaction: string
      +

      hex string

      +
    +

    Returns Promise<Transaction>

+
+ +
    + +
  • +

    Decode a hex-encoded script

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      script: string
      +

      hex string

      +
    +

    Returns Promise<Script>

+
+ +
    + +
  • +

    Shows what your magnitude is per project. +On success returns JSON containing every project and the magnitude recorded +on the network from your CPID.

    + +

    Returns

    +

    Memberof

    Mining

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional cpid: string
      +

      Optional CPID to explain magnitude for

      +
    +

    Returns Promise<ProjectMagnitude>

+
+ +
    + +
  • +

    Returns the account associated with the given address.

    + +

    Returns

      +
    • an account name
    • +
    + +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      gridcoinAddress: string
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Returns the current Gridcoin address for receiving payments to this account.

    + +

    Description

    If account does not exist, it will be created along with an associated new address that will be returned.

    + +

    Returns

      +
    • GRC address
    • +
    + +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      account: string
      +

      an account name

      +
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Returns information about the given added node, or all added nodes +(note that onetry addnodes are not listed here) +If dns is false, only a list of added nodes will be provided, +otherwise connected information will also be available

    + +

    Returns

    +

    Memberof

    Network

    +
    +
    +

    Parameters

    +
      +
    • +
      dns: boolean
    • +
    • +
      node: string
    +

    Returns Promise<{
        addednode: string;
    }>

+
+ +
    + +
  • +

    Returns the list of addresses for the given account.

    + +

    Returns

      +
    • a list of addresses
    • +
    + +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      account: string
      +

      the account name

      +
    +

    Returns Promise<string[]>

+
+ +
    + +
  • +

    Get current balance

    + +

    Description

    If account is not specified, returns the server's total available balance +If account is specified, returns the balance in the account +Note that the account "" is not the same as leaving the parameter out +The server total may be different to the balance in the default "" account.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional account: string = '*'
      +

      The selected account, or "*" for entire wallet. It may be the default account using

      +
    • +
    • +
      Optional minConf: number = 1
      +

      Only include transactions confirmed at least this many times.

      +
    • +
    • +
      Optional includeWatchOnly: boolean = false
      +

      Also include balance in watchonly addresses (@see importAddress)

      +
    +

    Returns Promise<number>

+
+ +
    + +
  • +

    Lists outputs similar to listtransactions that compose the entire balance

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional minConf: number = 1
      +

      Only include transactions confirmed at least this many times

      +
    • +
    • +
      Optional includeWatchOnly: boolean = false
      +

      Also include balance in watchonly addresses (@see importAddress)

      +
    +

    Returns Promise<BalanceDetail>

+
+ +
    + +
  • +

    Returns the hash of the best block in the longest block chain

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Returns information about the block with the given hash.

    + +

    Returns

    +

    Memberof

    Network

    +
    +
    +

    Type Parameters

    +
      +
    • +

      Type extends boolean

    +
    +

    Parameters

    +
      +
    • +
      hash: string
    • +
    • +
      Optional txinfo: Type
      +

      optional to print more detailed tx info

      +
    +

    Returns Promise<Type extends true ? BlockWithTX : Block>

+
+ +
    + +
  • +

    Returns details of a block with given block-number

    + +

    Returns

    +

    Memberof

    Network

    +
    +
    +

    Type Parameters

    +
      +
    • +

      Type extends boolean

    +
    +

    Parameters

    +
      +
    • +
      number: number
    • +
    • +
      txinfo: Type
      +

      optional to print more detailed tx info

      +
    +

    Returns Promise<Type extends true ? BlockWithTX : Block>

+
+ +
    + +
  • +

    Returns the number of blocks in the longest block chain

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<number>

+
+ +
    + +
  • +

    Returns hash of block in best-block-chain at index

    + +

    Returns

    +

    Memberof

    Network

    +
    +
    +

    Parameters

    +
      +
    • +
      index: number
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Show stats on what wallets and cpids staked recent blocks

    + +

    Description

    Mode 0: Startheight is the starting height, endheight is the chain head if not specified. +Mode 1: Startheight is actually the number of blocks back from endheight or the chain head if not specified.

    + +

    Returns

    +

    Memberof

    Developer

    +
    +
    +

    Parameters

    +
      +
    • +
      mode: 0 | 1
    • +
    • +
      Optional startHeight: number
    • +
    • +
      Optional endHeight: number
    +

    Returns Promise<BlockStats>

+
+ +
    + +
  • +

    Displays data on current blockchain

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<BlockchainInfo>

+
+ +
    + +
  • +

    Scan for and aggregate network-wide amounts for provably-destroyed outputs.

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<BurnReport>

+
+ +
    + +
  • +

    Show info of synchronized checkpoint.

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<Checkpoint>

+
+ +
    + +
  • +

    Returns the number of connections to other node

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<number>

+
+ +
    + +
  • +

    Returns the difficulty as a multiple of the minimum difficulty

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<BlockchainDifficulty>

+
+ +
    + +
  • +

    Returns an object containing various state info.

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<Info>

+
+ +
    + +
  • +

    Fetch information about this wallet's last staked block.

    + +

    Returns

    +

    Memberof

    Mining

    +
    +

    Returns Promise<Stake>

+
+ +
+
+ +
    + +
  • +

    Returns information about network traffic, including bytes in, bytes out and current time

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<NetTotals>

+
+ +
    + +
  • +

    Displays network related information

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<NetworkInfo>

+
+ +
    + +
  • +

    Returns a new Gridcoin address for receiving payments.

    + +

    Description

    If [account] is specified, it is added to the address book +so payments received with the address will be credited to account.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional account: string
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Returns new public key for coinbase generation.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional account: string
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Returns data about each connected network node.

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<Peer[]>

+
+ +
    + +
  • +

    Display the results for the specified poll

    + +

    Returns

    +

    Memberof

    Voting

    +
    +
    +

    Parameters

    +
      +
    • +
      voteIdOrTitle: string
      +

      Title or ID of the poll.

      +
    +

    Returns Promise<PollResults[]>

+
+ +
    + +
  • +

    Returns all transaction ids in memory pool

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<string[]>

+
+ +
    + +
  • +

    returns an Object with information about txid

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Type Parameters

    +
      +
    • +

      Type extends boolean

    +
    +

    Parameters

    +
      +
    • +
      txid: string
    • +
    • +
      verbose: Type
    +

    Returns Promise<Type extends true ? DetailedRawTransaction : string>

+
+ +
    + +
  • +

    Get a string that is serialized, hex-encoded data for txid from the wallet.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      txid: string
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Returns the total amount received by addresses with account in transactions with at least minconf confirmations. +If account not provided return will include all transactions to all accounts.

    + +

    Returns

      +
    • the number of coins received
    • +
    + +

    Deprecated

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      account: string
      +

      the account name

      +
    • +
    • +
      Optional minconf: number = 1
      +

      the minimum number of confirmations

      +
    +

    Returns Promise<number>

+
+ +
    + +
  • +

    Returns the amount received by gridcoinaddress in transactions with at least minconf confirmations.

    + +

    Description

    It correctly handles the case where someone has sent to the address in multiple transactions. +Keep in mind that addresses are only ever used for receiving transactions. +Works only for addresses in the local wallet, external addresses will always show 0.

    + +

    Returns

      +
    • the number of coins received
    • +
    + +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      gridcoinAddress: string
      +

      the address

      +
    • +
    • +
      Optional minconf: number = 1
      +

      the minimum number of confirmations

      +
    +

    Returns Promise<number>

+
+ +
    + +
  • +

    Report votes for specified superblock.

    + +

    Returns

    +

    Memberof

    Network

    +
    +
    +

    Parameters

    +
      +
    • +
      mode: 0
      +

      mode: 0=text, 1,2=json

      +
    • +
    • +
      superBlock: string
      +

      block hash or last= currently active, now= ongoing sb votes.

      +
    +

    Returns Promise<SuperVotesModeText>

  • + +
  • +

    Report votes for specified superblock.

    + +

    Returns

    +

    Memberof

    Network

    +
    +
    +

    Parameters

    +
      +
    • +
      mode: 1
      +

      mode: 0=text, 1,2=json

      +
    • +
    • +
      superBlock: string
      +

      block hash or last= currently active, now= ongoing sb votes.

      +
    +

    Returns Promise<SuperVotesModeJson1>

  • + +
  • +

    Report votes for specified superblock.

    + +

    Returns

    +

    Memberof

    Network

    +
    +
    +

    Parameters

    +
      +
    • +
      mode: 2
      +

      mode: 0=text, 1,2=json

      +
    • +
    • +
      superBlock: string
      +

      block hash or last= currently active, now= ongoing sb votes.

      +
    +

    Returns Promise<SuperVotesModeJson2>

+
+ +
    + +
  • +

    Get detailed information about in-wallet transaction txid

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      txid: string
      +

      The transaction id

      +
    • +
    • +
      Optional includeWatchOnly: boolean = false
      +

      Whether to include watchonly addresses in balance calculation and details

      +
    +

    Returns Promise<Transaction>

+
+ +
    + +
  • +

    returns the unconfirmed balance in the wallet

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +

    Returns Promise<number>

+
+ +
    + +
  • +

    Display the claim for the specified poll or vote.

    + +

    Returns

    +

    Memberof

    Voting

    +
    +
    +

    Parameters

    +
      +
    • +
      pollIdOrVoteId: string
      +

      Transaction hash of the poll or vote.

      +
    +

    Returns Promise<VotingClaim>

+
+ +
    + +
  • +

    Returns useful information about current wallet state.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +

    Returns Promise<WalletInfo>

+
+ +
    + +
  • +

    Fills the keypool.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      newSize: number
    +

    Returns Promise<null>

+
+ +
    + +
  • +

    Displays research rewards for the lifetime of a CPID

    + +

    Returns

    +

    Memberof

    Mining

    +
    +
    +

    Parameters

    +
      +
    • +
      cpid: string
    +

    Returns Promise<Lifetime>

+
+ +
    + +
  • +

    Returns UniValue that has account names as keys, account balances as values.

    + +

    Deprecated

    +

    Returns

      +
    • The property name is the account name, and the value is the total balance for the account
    • +
    + +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional minConf: number = 1
      +

      Only include transactions with at least this many confirmations

      +
    • +
    • +
      Optional includeWatchOnly: boolean = false
      +

      Include balances in watchonly addresses (@see importaddress)

      +
    +

    Returns Promise<{
        [key: string]: number;
    }>

+
+ +
    + +
  • +

    Lists groups of addresses which have had their common ownership +made public by common use as inputs or as the resulting change in past transactions

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +

    Returns Promise<[string, number][][]>

+
+ +
    + +
  • +

    List all banned IPs/subnets.

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<Banned>

+
+ +
    + +
  • +

    @todo: implement writedata

    +
    +
    +

    Parameters

    +
      +
    • +
      details: false
    • +
    • +
      Optional manifestHash: string
    +

    Returns Promise<Manifests>

  • + +
  • +

    Show list of known ScraperManifest objects.

    + +

    Returns

    +

    Memberof

    Developer

    +
    +
    +

    Parameters

    +
      +
    • +
      details: true
      +

      to show details of manifests

      +
    • +
    • +
      Optional manifestHash: string
      +

      hash of specific manifest (Not provided returns all.)

      +
    +

    Returns Promise<ManifestsDetailed>

+
+ +
    + +
  • +

    Lists poll details

    + +

    Returns

    +

    Memberof

    Voting

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional showFinished: boolean
      +

      If true, show finished polls as well.

      +
    +

    Returns Promise<Poll[]>

+
+ +
    + +
  • +

    Displays information about whitelisted projects.

    + +

    Returns

    +

    Memberof

    Developer

    +
    +

    Returns Promise<Projects>

+
+ +
    + +
  • +

    List balances by receiving address.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional minConf: number = 1
      +

      The minimum number of confirmations before payments are included.

      +
    • +
    • +
      Optional includeEmpty: boolean = false
      +

      Whether to include addresses that haven't received any payments.

      +
    • +
    • +
      Optional includeWatchOnly: boolean = false
      +

      Whether to include watchonly addresses (see 'importaddress').

      +
    +

    Returns Promise<Receivement[]>

+
+ +
    + +
  • +

    List researcher accounts in the accrual system and their current accruals.

    + +

    Returns

    +

    Memberof

    Developer

    +
    +

    Returns Promise<ResearcherAccounts>

+
+ +
    + +
  • +

    Get all transactions in blocks since block blockhash, or all transactions if omitted

    + +

    Returns

    +

    Memberof

    GridcoinRPC

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional blockHash: string
      +

      The block hash to list transactions since

      +
    • +
    • +
      Optional targetConfirmations: number
      +

      The confirmations required, must be 1 or more

      +
    • +
    • +
      Optional includeWatchonly: boolean
      +

      Include transactions to watchonly addresses (@see importaddress)

      +
    +

    Returns Promise<ListSinceBlock>

+
+ +
    + +
  • +

    Returns count most recent stakes.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional count: number = 10
    +

    Returns Promise<StakeListing[]>

+
+ +
    + +
  • +

    Returns up to 'count' most recent transactions skipping the first 'from' transactions for account 'account'.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional account: string = '*'
      +

      The account name. If not included, it will list all transactions for all accounts.

      +
    • +
    • +
      Optional count: number = 10
      +

      The number of transactions to return

      +
    • +
    • +
      Optional from: number = 0
      +

      The number of transactions to skip

      +
    • +
    • +
      Optional includeWatchonly: boolean = false
      +

      Include transactions to watchonly addresses (@see importaddress) If is set true, it will list sent transactions as well

      +
    +

    Returns Promise<TransactionShort[]>

+
+ +
    + +
  • +

    Returns array of unspent transaction outputs with between minconf and maxconf (inclusive) confirmations +Optionally filtered to only include txouts paid to specified addresses +Results are an array of Objects, each of which has +{txid, vout, scriptPubKey, amount, confirmations}

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional minConf: number
    • +
    • +
      Optional maxConf: number
    • +
    • +
      Rest ...addresses: string[]
    +

    Returns Promise<TransactionUnspent[]>

+
+ +
    + +
  • +

    logging json array category adds json array category removes +Gets and sets the logging configuration. +When called without an argument, returns the list of categories with status that are currently being debug logged or not. +When called with arguments, adds or removes categories from debug logging and return the lists above. +The arguments are evaluated in order "include", "exclude". +If an item is both included and excluded, it will thus end up being excluded. +The valid logging categories are: " + ListLogCategories() + ". +In addition, the following are available as category names with special meanings: +all or 1: represent all logging categories. +none or 0: even if other logging categories are specified, ignore all of them.

    + +

    Example

    logging all net: enables all and disables net.
    logging "" all: disables all.
    Note that unlike Bitcoin, we don't process JSON arrays correctly as arguments yet for the command line,
    so, for the rpc cli, it is limited to one enable and/or one disable category. Using CURL works with the full arrays. +
    + +

    Returns

    +

    Memberof

    Developer

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional enable: "" | "all" | keyof LoggingCategories
    • +
    • +
      Optional disable: "all" | keyof LoggingCategories
    +

    Returns Promise<LoggingCategories>

+
+ +
    + +
  • +

    Displays information for the magnitude of the specified CPID in the network

    + +

    Returns

    +

    Memberof

    Mining

    +
    +
    +

    Parameters

    +
      +
    • +
      cpid: string
    +

    Returns Promise<Magnitude>

+
+ +
    + +
  • +

    Make a public/private key pair.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional prefix: string
      +

      is optional preferred prefix for the public key

      +
    +

    Returns Promise<KeysPair>

+
+ +
    + +
  • +

    Displays included and excluded memory pool txs

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<MemoryPool>

+
+ +
    + +
  • +

    Display information about the network health

    + +

    Returns

    +

    Memberof

    Developer

    +
    +

    Returns Promise<NetworkHealth>

+
+ +
    + +
  • +

    Displays current network time

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<{
        networkTime: number;
    }>

+
+ +
    + +
  • +

    Displays pending beacons directly from the beacon registry.

    + +

    Returns

    +

    Memberof

    Mining

    +
    +

    Returns Promise<Beacon[]>

+
+ +
    + +
  • +

    Requests that a ping be sent to all other nodes, to measure ping time. +Results provided in getpeerinfo, pingtime and pingwait fields are decimal seconds. +Ping command is handled in queue with all other commands, so it measures processing backlog, not just network ping.

    + +

    Returns

    +

    Memberof

    Network

    +
    +

    Returns Promise<null>

+
+ +
    + +
  • +

    Show the status of locally attached BOINC projects.

    + +

    Returns

    +

    Memberof

    Developer

    +
    +

    Returns Promise<LocalProject[]>

+
+ +
    + +
  • +

    rain coins by magnitude on network

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      project: string
      +

      Required: If a project is specified, rain will be limited to that project. Use * for network-wide.

      +
    • +
    • +
      amount: number
      +

      Required: Specify amount of coins to be rained in double precision float

      +
    • +
    • +
      Optional message: string
      +

      Optional: Provide a message rained to all rainees

      +
    +

    Returns Promise<RainByMagnitude>

+
+ +
    + +
  • +

    Re-reads config file; Does not overwrite pre-existing loaded values

    + +

    Returns

    +

    Memberof

    Developer

    +
    +

    Returns Promise<{
        readconfig: 1;
    }>

+
+ +
    + +
  • +

    Repair wallet if checkwallet reports any problem.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +

    Returns Promise<WalletSuccessStatus | WalletFailStatus>

+
+ +
    + +
  • +

    Resend any failed or unsent transactions. +Requires unlocked wallet

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +

    Returns Promise<null>

+
+ +
    + +
  • +

    Reserved amount secures a balance in wallet that can be spendable at anytime. +However reserve will secure utxo(s) of any size to respect this setting. +If no parameters provided current setting is printed

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional reserve: boolean
      +

      is true or false to turn balance reserve on or off.

      +
    • +
    • +
      Optional amount: number
      +

      is a real and rounded to cent

      +
    +

    Returns Promise<Reserve>

+
+ +
    + +
  • +

    Reloads cpids

    + +

    Returns

    +

    Memberof

    Mining

    +
    +

    Returns Promise<{
        reset: 1;
    }>

+
+ +
    + +
  • +

    Advertise a beacon (Requires wallet to be fully unlocked)

    + +

    Returns

    +

    Memberof

    Mining

    +
    +
    +

    Parameters

    +
      +
    • +
      cpid: string
      +

      CPID associated with the beacon to revoke.

      +
    +

    Returns Promise<BeaconRevoke>

+
+ +
    + +
  • +

    Searches a block range for a specified address with unspent utxos +and displays them in a json response with the option of exporting +to file

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      address: string
      +

      Multi-signature address

      +
    • +
    • +
      blockStart: number
      +

      Block number to start search from

      +
    • +
    • +
      blockEnd: number
      +

      Block number to end search on

      +
    • +
    • +
      Optional exports: boolean
      +

      Exports to a file in backup-dir/rpc in format of multisigaddress-datetime.type

      +
    • +
    • +
      Optional type: string
      +

      Export to a file with file type (xml, txt or json -- Required if export true)

      +
    +

    Returns Promise<[UTXO[], UnspentReport]>

+
+ +
    + +
  • +

    Report containing various statistics about the scraper.

    + +

    Returns

    +

    Memberof

    Developer

    +
    +

    Returns Promise<ScrapeReport>

+
+ +
    + +
  • +

    Sends amount of Gridcoin from account to gridcoinaddress.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      account: string
      +

      Account FROM

      +
    • +
    • +
      address: string
      +

      Address TO

      +
    • +
    • +
      amount: number
      +

      Amount to send

      +
    • +
    • +
      Optional minConf: number
      +

      is the minimum number of confirmations for a UTXO to be used.

      +
    • +
    • +
      Optional comment: string
      +

      is a personal comment about what the transaction is for (doesn’t go into the transaction, it is only stored locally).

      +
    • +
    • +
      Optional commentTo: string
      +

      is also a personal comment about who you are sending to (also only local).

      +
    • +
    • +
      Optional message: string
      +

      is a message/comment that is sent publicly on the transaction.

      +
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Send from fromaccount to a list of addresses. +Use '' if you don’t want to limit to one account label. Addresses should be listed in JSON format.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      account: string
      +

      Account FROM

      +
    • +
    • +
      recipients: {
          [key: string]: number;
      }
      +

      { Address1: amount1, Address2: amount2, ... }

      +
      +
        +
      • +
        [key: string]: number
    • +
    • +
      Optional minConf: number = 1
      +

      is the minimum number of confirmations for a UTXO to be used.

      +
    • +
    • +
      Optional comment: string
      +

      is a personal comment about what the transaction is for (doesn’t go into the transaction, it is only stored locally).

      +
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Submits raw transaction (serialized, hex-encoded) to local node and network

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      rawTransaction: string
      +

      raw transaction (serialized, hex-encoded)

      +
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Sends amount of Gridcoin to gridcoinaddress.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      address: string
      +

      Recipient address

      +
    • +
    • +
      amount: number
      +

      is a real and is rounded to the nearest 0.000001

      +
    • +
    • +
      Optional comment: string
      +

      a comment used to store what the transaction is for. This is not part of the transaction, just kept in your wallet.

      +
    • +
    • +
      Optional commentTo: string
      +

      a comment to store the name of the person or organization to which you're sending the transaction. This is not part of the transaction, just kept in your wallet

      +
    • +
    • +
      Optional message: string
      +

      Optional message to add to the receiver.

      +
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Sets the account associated with the given address. +Assigning address that is already assigned to the same account will create a new address associated with that account.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      address: string
    • +
    • +
      account: string
    +

    Returns Promise<null>

+
+ +
    + +
  • +

    add or remove an IP/Subnet from the banned list.

    + +

    Returns

    +

    Memberof

    Network

    +
    +
    +

    Parameters

    +
      +
    • +
      subnet: string
      +

      The IP/Subnet (see getpeerinfo for nodes IP) with an optional netmask (default is /32 = single IP)

      +
    • +
    • +
      command: "add" | "remove"
      +

      'add' to add an IP/Subnet to the list, 'remove' to remove an IP/Subnet from the list

      +
    • +
    • +
      Optional banTime: number
      +

      time in seconds how long (or until when if absolute is set) the IP is banned +(0 or empty means using the default time of 24h which can also be overwritten by the -bantime startup argument)

      +
    • +
    • +
      Optional absolute: number | false
      +

      Defaults to false. If set, the bantime must be an absolute timestamp in seconds since epoch (Jan 1 1970 GMT).

      +
    +

    Returns Promise<null>

+
+ +
    + +
  • +

    Set the transaction fee per kilobyte paid by transactions created by this wallet.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      amount: number
      +

      TX fee, rounds to 0.00000001 GRC

      +
    +

    Returns Promise<boolean>

+
+ +
    + +
  • +

    Returns all information about the block at index

    + +

    Returns

    +

    Memberof

    Network

    +
    +
    +

    Parameters

    +
      +
    • +
      index: number
      +

      Block number

      +
    +

    Returns Promise<Block>

+
+ +
    + +
  • +

    Returns a signed a message using the private key from Gridcoinaddress. +Lets you prove that this message came from the owner of an address. +You can verify a signed message with the verify message command. +(It will not send this message anywhere. You have to do that)

    + +

    Returns

      +
    • Base64 signature
    • +
    + +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      address: string
    • +
    • +
      message: string
    +

    Returns Promise<string>

+
+ +
    + +
  • +

    Sign inputs for raw transaction (serialized, hex-encoded).

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      rawTransaction: string
      +

      raw transaction (serialized, hex-encoded)

      +
    • +
    • +
      transactionDependencies: TransactionDependencies[]
      +

      is an array of previous transaction outputs that this transaction depends on but may not yet be in the blockchain.

      +
    • +
    • +
      privateKeys: string[]
      +

      is an array of base58-encoded private keys that, if given, will be the only keys used to sign the transaction

      +
    • +
    • +
      sigHashType: SigHashType
      +

      is a string that is one of six values; ALL, NONE, SINGLE or ALL|ANYONECANPAY, NONE|ANYONECANPAY, SINGLE|ANYONECANPAY.

      +
    +

    Returns Promise<TransactionSigned>

+
+ +
    + +
  • +

    Display data on recent superblocks

    + +

    Returns

    +

    Memberof

    Mining

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional lookback: number
      +

      number of superblocks to show (default 14)

      +
    • +
    • +
      Optional displayContract: boolean
      +

      display superblock contract (default false)

      +
    • +
    • +
      Optional cpid: string
      +

      Shows magnitude for a cpid for recent superblocks

      +
    +

    Returns Promise<Superblock[]>

+
+ +
    + +
  • +

    Display information regarding superblock age

    + +

    Returns

    +

    Memberof

    Mining

    +
    +

    Returns Promise<SuperblockAge>

+
+ +
    + +
  • +

    Displays average information for current superblock

    + +

    Returns

    +

    Memberof

    Developer

    +
    +

    Returns Promise<SuperblockAverage>

+
+ +
    + +
  • +

    Return information about gridcoinaddress.

    + +

    Description

    The validateaddress RPC accepts a block +verifies it is a valid addition to the block chain +and broadcasts it to the network.

    + +

    Returns

    +

    Memberof

    GridcoinRPC

    +
    +
    +

    Parameters

    +
      +
    • +
      gridcoinAddress: string
    +

    Returns Promise<AddressValidation>

+
+ +
    + +
  • +

    Return information about gridcoinpubkey.

    + +

    Returns

    +

    Memberof

    GridcoinRPC

    +
    +
    +

    Parameters

    +
      +
    • +
      gridcoinPubkey: string
    +

    Returns Promise<PubKeyValidation>

+
+ +
    + +
  • +

    Verify a signed message.

    + +

    Description

    The P2PKH address corresponding to the private key which made the signature. +A P2PKH address is a hash of the public key corresponding to the private key which made the signature. +When the ECDSA signature is checked, up to four possible ECDSA public keys will be reconstructed from the signature; +each key will be hashed and compared against the P2PKH address provided to see if any of them match. +If there are no matches, signature validation will fail.

    + +

    Returns

    +

    Memberof

    GridcoinRPC

    + +

    See

    signmessage

    +
    +
    +

    Parameters

    +
      +
    • +
      gridcoinAddress: string
      +

      The gridcoin address to use for the signature.

      +
    • +
    • +
      signature: string
      +

      The signature provided by the signer in base 64 encoding.

      +
    • +
    • +
      message: string
      +

      The message that was signed.

      +
    +

    Returns Promise<boolean>

+
+ +
    + +
  • +

    Display the software versions of nodes that recently staked.

    + +

    Returns

    +

    Memberof

    Developer

    +
    +
    +

    Parameters

    +
      +
    • +
      Optional lookBack: number
      +

      Number of blocks to tally from the chain head

      +
    • +
    • +
      Optional full: boolean
      +

      Classify by commit suffix (default: false)

      +
    +

    Returns Promise<Version[]>

+
+ +
    + +
  • +

    Cast a vote for a poll.

    + +

    Returns

    +

    Memberof

    Voting

    +
    +
    +

    Parameters

    +
      +
    • +
      pollId: string
      +

      ID of the poll to vote for.

      +
    • +
    • +
      Rest ...choices: number[]
      +

      Numeric IDs of the choices to vote for.

      +
    +

    Returns Promise<VoteResult>

+
+ +
    + +
  • +

    Display the vote details for the specified poll

    + +

    Returns

    +

    Memberof

    Voting

    +
    +
    +

    Parameters

    +
      +
    • +
      voteIdOrTitle: string
      +

      Title or ID of the poll

      +
    +

    Returns Promise<Vote[]>

+
+ +
    + +
  • +

    Removes the wallet encryption key from memory, locking the wallet. +After calling this method, you will need to call

    + +

    See

    walletPassPhrase again +before being able to call any methods which require the wallet to be unlocked.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +

    Returns Promise<null>

+
+ +
    + +
  • +

    Stores the wallet decryption key in memory for timeout seconds. +if stakingonly is true sending functions are disabled.

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      passphrase: string
    • +
    • +
      timeout: number
    • +
    • +
      isStakingOnly: boolean
    +

    Returns Promise<null>

+
+ +
    + +
  • +

    Changes the wallet passphrase from oldpassphrase to newpassphrase

    + +

    Returns

    +

    Memberof

    Wallet

    +
    +
    +

    Parameters

    +
      +
    • +
      oldPassphrase: string
    • +
    • +
      newPassphrase: string
    +

    Returns Promise<null>

+
+
+

Generated using TypeDoc

+
\ No newline at end of file diff --git a/classes/RPCBase.RPCBase.html b/classes/RPCBase.RPCBase.html new file mode 100644 index 0000000..015b2bd --- /dev/null +++ b/classes/RPCBase.RPCBase.html @@ -0,0 +1,156 @@ +RPCBase | gridcoin-rpc
+
+ +
+
+
+
+ +

Class RPCBase

+
+

Hierarchy

+
+
+
+
+ +
+
+

Constructors

+
+
+

Properties

+
+
+

Methods

+
+
+

Constructors

+
+ +
    + +
  • +

    Creates an instance of GridcoinRPC

    + +

    Memberof

    GridcoinRPC

    +
    +
    +

    Parameters

    +
      +
    • +
      config: IParameters
    • +
    • +
      Optional rpc: IJsonRPC
      +

      Dependency injection for the client class

      +
    +

    Returns RPCBase

+
+

Properties

+
+ +
client: IJsonRPC
+
+

Methods

+
+ +
    + +
  • Protected +

    Send command to the rpc server, get response +Transform response field to the camelcase

    + +

    Returns

    +

    Throws

    +

    Memberof

    RPCBase

    +
    +
    +

    Type Parameters

    +
      +
    • +

      T

    +
    +

    Parameters

    +
    +

    Returns Promise<T>

+
+ +
    + +
  • Private +

    Filter out undefined parameters

    + +

    Returns

    +

    Memberof

    RPCBase

    +
    +
    +

    Parameters

    +
    +

    Returns filteredCallParameters[]

+
+
+

Generated using TypeDoc

+
\ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 0000000..7afc427 --- /dev/null +++ b/index.html @@ -0,0 +1,83 @@ +gridcoin-rpc
+
+ +
+
+
+
+

gridcoin-rpc

+
+ +

gridcoin-rpc – Promise based Gridcoin RPC client

+
+

TS library for the interactions with gridcoin RPC api

+

NPM Version + CI build + SNYK report + semantic-release + Commitzen Friendly

+

+

This library is intended to be the simple proxy for those who want to use JS/TS to tinker with Gridcoin RPC library. +Library won't do validation by itself, it relies on the RPC validation. It will just help you with a typings.

+ + +

Installation

+
+
npm install gridcoin-rpc
+
+ + +

Usage

+
+
const { GridcoinRPC } = require('gridcoin-rpc');

const rpc = new GridcoinRPC({
port: 6553,
host: '127.0.0.1',
username: 'username',
password: 'very-strong-password',
});

async main = () => {
// Get wallet info
try {
const walletInfo = await rpc.getWalletInfo();
console.log(JSON.stringify(res, null, 2))
} catch (e) {
console.log(err.message)
}
}

main();


// {
// "walletversion": 60000,
// "balance": 121.12304127,
// "newmint": 0,
// "stake": 0,
// "keypoololdest": 1508531912,
// "keypoolsize": 101,
// "unlocked_until": 0
// }
+
+ + +

Documentation

+
+

API documentation

+ + +

GRC: SJVaQcJriv7N8Py8eWjNUtWPTPBtDZashD

+ + +

Follow me

+
+

keybase

+

steemit

+
+
+
+

Generated using TypeDoc

+
\ No newline at end of file diff --git a/modules.html b/modules.html new file mode 100644 index 0000000..de8050e --- /dev/null +++ b/modules.html @@ -0,0 +1,50 @@ +gridcoin-rpc
+
+ +
+
+
+
+

gridcoin-rpc

+
+
+

Index

+
+

Modules

+
+
+
+

Generated using TypeDoc

+
\ No newline at end of file diff --git a/modules/GridcoinRPC.html b/modules/GridcoinRPC.html new file mode 100644 index 0000000..bd634b3 --- /dev/null +++ b/modules/GridcoinRPC.html @@ -0,0 +1,58 @@ +GridcoinRPC | gridcoin-rpc
+
+ +
+
+
+
+ +

Module GridcoinRPC

+
+
+
+
+

Index

+
+

Classes

+
+
+
+

Generated using TypeDoc

+
\ No newline at end of file diff --git a/modules/RPCBase.html b/modules/RPCBase.html new file mode 100644 index 0000000..41d7a00 --- /dev/null +++ b/modules/RPCBase.html @@ -0,0 +1,63 @@ +RPCBase | gridcoin-rpc
+
+ +
+
+
+
+ +

Module RPCBase

+
+
+
+
+

Index

+
+

Classes

+
+
+

Type Aliases

+
+
+
+

Generated using TypeDoc

+
\ No newline at end of file diff --git a/modules/types.html b/modules/types.html new file mode 100644 index 0000000..6bc98aa --- /dev/null +++ b/modules/types.html @@ -0,0 +1,68 @@ +types | gridcoin-rpc
+
+ +
+
+
+
+ +

Module types

+
+
+
+
+

Index

+
+

Type Aliases

+
+
+
+

Generated using TypeDoc

+
\ No newline at end of file diff --git a/types/RPCBase.callParameters.html b/types/RPCBase.callParameters.html new file mode 100644 index 0000000..feabd30 --- /dev/null +++ b/types/RPCBase.callParameters.html @@ -0,0 +1,52 @@ +callParameters | gridcoin-rpc
+
+ +
+
+
+
+ +

Type alias callParameters

+
callParameters: string | number | boolean | undefined | string[] | Record<string, unknown> | Record<string, unknown>[]
+
+
+

Generated using TypeDoc

+
\ No newline at end of file diff --git a/types/types.Address.html b/types/types.Address.html new file mode 100644 index 0000000..5740752 --- /dev/null +++ b/types/types.Address.html @@ -0,0 +1,56 @@ +Address | gridcoin-rpc
+
+ +
+
+
+
+ +

Type alias Address

+
Address: string
+
+
+

Generated using TypeDoc

+
\ No newline at end of file diff --git a/types/types.Block.html b/types/types.Block.html new file mode 100644 index 0000000..47530d7 --- /dev/null +++ b/types/types.Block.html @@ -0,0 +1,56 @@ +Block | gridcoin-rpc
+
+ +
+
+
+
+ +

Type alias Block

+
Block: string
+
+
+

Generated using TypeDoc

+
\ No newline at end of file diff --git a/types/types.CPID.html b/types/types.CPID.html new file mode 100644 index 0000000..38ee61a --- /dev/null +++ b/types/types.CPID.html @@ -0,0 +1,56 @@ +CPID | gridcoin-rpc
+
+ +
+
+
+
+ +

Type alias CPID

+
CPID: string | "INVESTOR"
+
+
+

Generated using TypeDoc

+
\ No newline at end of file diff --git a/types/types.Hex.html b/types/types.Hex.html new file mode 100644 index 0000000..170ec28 --- /dev/null +++ b/types/types.Hex.html @@ -0,0 +1,56 @@ +Hex | gridcoin-rpc
+
+ +
+
+
+
+ +

Type alias Hex

+
Hex: string
+
+
+

Generated using TypeDoc

+
\ No newline at end of file diff --git a/types/types.PublicKey.html b/types/types.PublicKey.html new file mode 100644 index 0000000..4c6842e --- /dev/null +++ b/types/types.PublicKey.html @@ -0,0 +1,56 @@ +PublicKey | gridcoin-rpc
+
+ +
+
+
+
+ +

Type alias PublicKey

+
PublicKey: string
+
+
+

Generated using TypeDoc

+
\ No newline at end of file diff --git a/types/types.TX.html b/types/types.TX.html new file mode 100644 index 0000000..09681e1 --- /dev/null +++ b/types/types.TX.html @@ -0,0 +1,56 @@ +TX | gridcoin-rpc
+
+ +
+
+
+
+ +

Type alias TX

+
TX: string
+
+
+

Generated using TypeDoc

+
\ No newline at end of file