avocado-safe
TypeScript icon, indicating that this package has built-in type declarations

0.0.49 • Public • Published

avocado-safe

Usage

Install package:

# npm
npm install avocado-safe

# yarn
yarn add avocado-safe

# pnpm
pnpm install avocado-safe

Import:

// ESM
import {} from "avocado-safe";

// CommonJS
const {} = require("avocado-safe");

Examples

import { AvocadoSafeProvider } from 'avocado-safe'
import { ethers } from 'ethers'
import Web3 from 'web3'

const ethereum = new AvocadoSafeProvider({ chainId: 137 }) // window.etherem
await ethereum.enable()

const provider = new ethers.providers.Web3Provider(ethereum, "any")
const web3 = new Web3(ethereum)

console.log(await provider.listAccounts())
console.log(await provider.getBalance("0x910E413DBF3F6276Fe8213fF656726bDc142E08E"))
console.log(await web3.eth.getBalance("0x910E413DBF3F6276Fe8213fF656726bDc142E08E"))
import { AvocadoInjectedConnector } from 'avocado-safe'

const avocado = new AvocadoInjectedConnector({ chainId: 137 })

const { activate } = useWeb3() // web3-react v6 or @instadapp/vue-web3
await activate(avocado)
import { AvocadoSafeProvider } from 'avocado-safe'

const providerOptions = {
    'custom-avocado': {
      display: {
        logo: SVGavocado,
        name: 'Avocado',
        description: '',
      },
      package: AvocadoSafeProvider,

      options: {
        chainId: 137,
      },

      connector: async (ProviderPackage, options) => {
        const provider = new ProviderPackage(options)

        await provider.enable()

        return provider
      },
    }
}


```ts
const { createSafe } = require('@instadapp/avocado')

// Should be connected to chainId 634 (https://rpc.avocado.instadapp.io), before doing any transaction
const provider = new ethers.providers.Web3Provider(window.ethereum, "any")

const safe = createSafe( provider.getSigner() )

await safe.getOwnerAddress()

await safe.getSafeAddress()

await safe.sendTransaction({
    to: "0x910E413DBF3F6276Fe8213fF656726bDc142E08E",
    value: 42,
    chainId: 137
})

await safe.sendTransaction({
    to: "0x910E413DBF3F6276Fe8213fF656726bDc142E08E",
    value: 42,
}, 137)

await safe.sendTransactions([
    { to: "0x910E413DBF3F6276Fe8213fF656726bDc142E08E", value: 42 }
    { to: "0x910E413DBF3F6276Fe8213fF656726bDc142E08E", value: 69}
], 137)

await safe.getSigner().sendTransaction({
    to: "0x69420",
    chainId: 137
})

const signer = safe.getSignerForChainId(137);

await signer.sendTransaction({
    to: "0x69420"
})

const erc20 = new ethers.Contract(
    "0x2791bca1f2de4661ed88a30c99a7a9449aa84174",
    ["function transfer(address to, uint amount) returns (bool)",],
    signer,
)

await erc20.transfer("0x910E413DBF3F6276Fe8213fF656726bDc142E08E", 69420)

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
0.0.492latest

Version History

VersionDownloads (Last 7 Days)Published
0.0.492
0.0.480
0.0.470
0.0.460
0.0.450
0.0.440
0.0.430
0.0.420
0.0.410
0.0.400
0.0.390
0.0.380
0.0.370
0.0.360
0.0.350
0.0.340
0.0.330
0.0.321
0.0.310
0.0.300
0.0.290
0.0.280
0.0.270
0.0.260
0.0.250
0.0.240
0.0.230
0.0.220
0.0.200
0.0.190
0.0.180
0.0.170
0.0.160
0.0.150
0.0.140
0.0.130
0.0.120
0.0.110
0.0.100
0.0.90
0.0.80
0.0.70
0.0.60
0.0.50
0.0.40
0.0.30
0.0.20
0.0.10

Package Sidebar

Install

npm i avocado-safe

Weekly Downloads

3

Version

0.0.49

License

none

Unpacked Size

212 kB

Total Files

34

Last publish

Collaborators

  • kabbouchi