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 

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);