fix(http-rpc): use before init, off by onearg
authorAJ ONeal <coolaj86@gmail.com>
Sun, 19 Jun 2022 11:35:50 +0000 (05:35 -0600)
committerAJ ONeal <coolaj86@gmail.com>
Sun, 19 Jun 2022 11:35:50 +0000 (05:35 -0600)
bin/crowdnode.js
lib/crowdnode.js

index e20ca1c86de055187639e2d13da70be115d81274..500289b10bbc1ae76dfce6353353949bacf46228 100755 (executable)
@@ -129,12 +129,22 @@ async function main() {
     return;
   }
 
+  let insightBaseUrl =
+    process.env.INSIGHT_BASE_URL || "https://insight.dash.org";
+  let insightApi = Insight.create({ baseUrl: insightBaseUrl });
+  let dashApi = Dash.create({ insightApi: insightApi });
+
+  process.stdout.write("Checking CrowdNode API... ");
+  await CrowdNode.init({
+    baseUrl: "https://app.crowdnode.io",
+    insightBaseUrl,
+    insightApi: insightApi,
+  });
+  console.info(`hotwallet is ${CrowdNode.main.hotwallet}`);
+
   let rpc = "";
   if ("http" === subcommand) {
     rpc = args.shift();
-  }
-
-  if ("http" === subcommand) {
     let keyfile = args.shift();
     let pub = await wifFileToAddr(keyfile);
 
@@ -174,11 +184,6 @@ async function main() {
     process.exit(1);
   }
 
-  let insightBaseUrl =
-    process.env.INSIGHT_BASE_URL || "https://insight.dash.org";
-  let insightApi = Insight.create({ baseUrl: insightBaseUrl });
-  let dashApi = Dash.create({ insightApi: insightApi });
-
   let pk = new Dashcore.PrivateKey(privKey);
   let pub = pk.toPublicKey().toAddress().toString();
 
@@ -206,7 +211,7 @@ async function main() {
     balanceInfo: balanceInfo,
     dashApi: dashApi,
     forceConfirm: forceConfirm,
-    hotwallet: "",
+    hotwallet: CrowdNode.main.hotwallet,
     insightBaseUrl: insightBaseUrl,
     insightApi: insightApi,
     noReserve: noReserve,
@@ -236,15 +241,6 @@ async function main() {
     return;
   }
 
-  process.stdout.write("Checking CrowdNode API... ");
-  await CrowdNode.init({
-    baseUrl: "https://app.crowdnode.io",
-    insightBaseUrl,
-    insightApi: insightApi,
-  });
-  state.hotwallet = CrowdNode.main.hotwallet;
-  console.info(`hotwallet is ${state.hotwallet}`);
-
   state.status = await CrowdNode.status(pub, state.hotwallet);
   if (state.status?.signup) {
     state.signup = "✅";
index 0ff758b0f17d288f622c3ef349297b60b6e77c8b..977c022e1d8af2aea2859731168a2626ce4db37c 100644 (file)
@@ -71,6 +71,7 @@ CrowdNode.responses = {
 
 /**
  * @param {Object} opts
+ * @param {String} opts.baseUrl
  * @param {String} opts.insightBaseUrl
  */
 CrowdNode.init = async function ({ baseUrl, insightBaseUrl }) {
@@ -425,7 +426,7 @@ function createApi(tmplUrl) {
   return async function () {
     /** @type Array<String> */
     //@ts-ignore - arguments
-    let args = [].slice.call(arguments, 1);
+    let args = [].slice.call(arguments, 0);
 
     // ex:
     let url = `${CrowdNode._baseUrl}${tmplUrl}`;
@@ -488,7 +489,11 @@ function parseAddr(prefix, html) {
 if (require.main === module) {
   (async function main() {
     //@ts-ignore
-    await CrowdNode.init();
+    await CrowdNode.init({
+      //@ts-ignore
+      baseUrl: CrowdNode.main.baseUrl,
+      insightBaseUrl: "https://insight.dash.org",
+    });
     console.info(CrowdNode);
   })().catch(function (err) {
     console.error(err);