JSPM

@getsafle/vault-arbitrum-controller

1.0.8
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 3
  • Score
    100M100P100Q44180F
  • License MIT

arbitrum controller for safle vault

Package Exports

  • @getsafle/vault-arbitrum-controller
  • @getsafle/vault-arbitrum-controller/src/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@getsafle/vault-arbitrum-controller) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Vault-arbitrum-controller

npm version Static Badge Discussions Static Badge

A module written in javascript for managing various keyrings of Arbitrum accounts, encrypting them, and using them.

Installation

npm install --save @getsafle/vault-arbitrum-controller

Initialize the Arbitrum Controller class

const { KeyringController, getBalance } = require('@getsafle/vault-arbitrum-controller');

const arbitrumController = new KeyringController({
  encryptor: {
    // An optional object for defining encryption schemes:
    // Defaults to Browser-native SubtleCrypto.
    encrypt(password, object) {
      return new Promise('encrypted!');
    },
    decrypt(password, encryptedString) {
      return new Promise({ foo: 'bar' });
    },
  },
});

Methods

Generate Keyring with 1 account and encrypt

const keyringState = await arbitrumController.createNewVaultAndKeychain(password);

Restore a keyring with the first account using a mnemonic

const keyringState = await arbitrumController.createNewVaultAndRestore(password, mnemonic);

Add a new account to the keyring object

const keyringState = await arbitrumController.addNewAccount(keyringObject);

Export the private key of an address present in the keyring

const privateKey = await arbitrumController.exportAccount(address);

Sign a transaction

const signedTx = await arbitrumController.signTransaction(arbitrumTx, _fromAddress);

Sign a message

const signedMsg = await arbitrumController.signMessage(msgParams);

Sign a message

const signedObj = await arbitrumController.sign(msgParams, pvtKey, web3Obj);

Sign Typed Data (EIP-712)

const signedData = await arbitrumController.signTypedMessage(msgParams);

Get balance

const balance = await getBalance(address, web3);