npm.io
1.20.18 • Published 5d ago

@injectivelabs/wallet-cosmostation

Licence
Apache-2.0
Version
1.20.18
Deps
5
Size
56 kB
Vulns
0
Weekly
3.5K
DeprecatedThis package is deprecated

Injective Protocol - Wallet Cosmostation

DEPRECATED: This package is deprecated. Please use @injectivelabs/wallet-cosmos with Wallet.Cosmostation instead.

import { Wallet } from '@injectivelabs/wallet-base'
import { CosmosWalletStrategy } from '@injectivelabs/wallet-cosmos'

const strategy = new CosmosWalletStrategy({
  chainId: ChainId.Mainnet,
  wallet: Wallet.Cosmostation,
})

downloads npm-version license

Package to use Magic Wallets on Injective via the wallet strategy.


Installation

pnpm add @injectivelabs/wallet-cosmostation

Documentation

Injective's wallet packages are intended to make it easy for developers to choose exactly what wallets - and subsequent dependencies - they want to include in their projects.

Regardless of which wallet package(s) you choose to use you must also have @injectivelabs/wallet-core and @injectivelabs/wallet-base installed. These contain all of the types and core wallet functionality, with the separate wallet packages only providing the necessary dependencies and implementations for their specific wallets.

Here's a brief example of how to use this package to send 1 INJ.:

import { Wallet } from '@injectivelabs/wallet-base'
import { BaseWalletStrategy, MsgBroadcaster } from '@injectivelabs/wallet-core'
import { CosmostationWalletStrategy } from '@injectivelabs/wallet-cosmostation'

const strategyArgs: WalletStrategyArguments = {
  chainId: ChainId.Mainnet,
  wallet: Wallet.Cosmostation,
  strategies: {
    [Wallet.Cosmostation]: new CosmostationWalletStrategy({
      chainId: ChainId.Mainnet,
    }),
  },
}
const walletStrategy = new BaseWalletStrategy(strategyArgs)

const msgBroadcaster = new MsgBroadcaster({
  walletStrategy,
  simulateTx: true,
  network: Network.Mainnet,
})

const sendTX = async () => {
  const injectiveAddress = 'someInjectiveAddress'

  const message = MsgSend.fromJSON({
    srcInjectiveAddress: injectiveAddress,
    dstInjectiveAddress: injectiveAddress,
    amount: {
      amount: '1',
      denom: 'inj',
    },
  })

  return await msgBroadcaster.broadcastV2({ msgs: message })
}

const result = await sendTX()

Read more and find example usages on our WalletStrategy Docs


Contribution

Contribution guides and practices will be available once there is a stable foundation of the whole package set within the injective-ts repo.


Support

Reach out to us at one of the following places!


License

Copyright 2021 - 2022 Injective Labs Inc. (https://injectivelabs.org/)

Originally released by Injective Labs Inc. under:
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

 

Powering the future of decentralized finance.