aboutsummaryrefslogtreecommitdiffstats
path: root/lib/rpc.js
blob: 366e1e708ff4f530fdc8787480d09f70d2920af6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import wretch from "./wretch";

export default ({ host, port, wallet, username, password }) =>
  new Proxy(
    {},
    {
      get: (target, prop) => (...params) =>
        ((method, ...params) =>
          wretch()
            .url(`http://${host}:${port}/wallet/${wallet}`)
            .auth(
              `Basic ${Buffer.from(`${username}:${password}`).toString(
                "base64"
              )}`
            )
            .post({
              method,
              params
            })
            .json(({ result }) => result))(prop.toLowerCase(), ...params)
    }
  );