Neanderthal Pudding Mix

    @eth-optimism/core-utils
    TypeScript icon, indicating that this package has built-in type declarations

    0.11.0 • Public • Published

    @eth-optimism/core-utils

    codecov

    What is this?

    @eth-optimism/core-utils contains the Optimistic Virtual Machine core utilities.

    Getting started

    Building and usage

    After cloning and switching to the repository, install dependencies:

    $ yarn

    Use the following commands to build, use, test, and lint:

    $ yarn build
    $ yarn start
    $ yarn test
    $ yarn lint

    L2 Fees

    TxGasLimit can be used to encode and decode the L2 Gas Limit locally.

    import { TxGasLimit } from '@eth-optimism/core-utils'
    import { JsonRpcProvider } from 'ethers'
    
    const L2Provider = new JsonRpcProvider('https://mainnet.optimism.io')
    const L1Provider = new JsonRpcProvider('http://127.0.0.1:8545')
    
    const l2GasLimit = await L2Provider.send('eth_estimateExecutionGas', [tx])
    const l1GasPrice = await L1Provider.getGasPrice()
    
    const encoded = TxGasLimit.encode({
      data: '0x',
      l1GasPrice,
      l2GasLimit,
      l2GasPrice: 10000000,
    })
    
    const decoded = TxGasLimit.decode(encoded)
    assert(decoded.eq(gasLimit))
    
    const estimate = await L2Provider.estimateGas()
    assert(estimate.eq(encoded))

    Install

    npm i @eth-optimism/core-utils

    DownloadsWeekly Downloads

    25,089

    Version

    0.11.0

    License

    MIT

    Unpacked Size

    105 kB

    Total Files

    78

    Last publish

    Collaborators

    • karlfloersch
    • ben-chain
    • k-ho
    • tynes
    • kelvinfichter