@matterlabs/composables

Collection of essential Vue.js composables for zkSync
2,139
Install
npm install @matterlabs/composables
Latest Version:1.3.0
Vue:3
License:ISC
Last Updated:Apr 24, 2023
Links: npm
Maintainer: gluk64

@matterlabs/composables

Collection of essential Vue.js composables for zkSync

Usage

npm install @matterlabs/composables
  • useWallet - used to setup a connection to MetaMask wallet

    import { useWallet } from "@matterlabs/composables";
    
    const { initialize } = useWallet(context);
    initialize().then(() => { /* application bootstrap */ })
    
    const { getL1Signer, getL2Signer } = useWallet(context);
    
    const l1Signer = await getL1Signer();
    const tx = await l1signer.deposit({
        to,
        token,
        amount,
    })
    
    const l2Signer = await getL2Signer();
    const tx = await l2Signer.transfer({
        to,
        token,
        amount
    });
    

Logging

You can override default existing logging behavior via attachLogger:

import { attachLogger } from "@matterlabs/composables";

attachLogger(logger);

Type definition for logger:

type LoggerLike = {
  log(...data: unknown[]): void;
  error(e: unknown, ...data: unknown[]): void;
  warn(message: string, ...data: unknown[]): void;
};

Peer dependencies

  • vue
  • @vueuse/core
  • zksync-web3

Related Packages

@matterlabs/eslint-config-nuxt

Shared eslint configuration for projects based on Nuxt.js v2

875
@matterlabs/eslint-config-vue

Shared eslint configuration for projects based on Vue 3

7,287
@matterlabs/zksync-nuxt-ui

UI components for the zkSync dApps

413

Version History

Version Released Vue License
1.3.0 ^3.2.41 ISC
1.2.0 ^3.2.41 ISC
1.1.12 ^3.2.41 ISC
1.1.11 ^3.2.41 ISC
1.1.10 ^3.2.41 ISC