@xlabs-libs/wallet-aggregator-near

v0.0.1-alpha.7
Implements the base abstractions for the [Near](https://near.org/) blockchain.

Wallet Aggregator - NEAR

Implements the base abstractions for the Near blockchain.

Usage

There are two methods of using this package. You may either use the NearModalSelectorWallet class, which under the hood the wallet uses the @near-wallet-selector/core and @near-wallet-selector/modal-ui packages. Upon calling connect, the wallet will create a modal and prompt the user to login through it. On the other hand, you can use the WrappedNearWallet which allows programatically interacting with a single wallet; a utility function wrapWallet is provided to help create them.

Using the NearModalSelectorWallet

import { NearModalSelectorWallet } from "@xlabs-libs/wallet-aggregator-near";
import { setupDefaultWallets } from "@near-wallet-selector/default-wallets";
import { setupMyNearWallet } from "@near-wallet-selector/my-near-wallet";
import { setupNightly } from "@near-wallet-selector/nightly";
import { setupMeteorWallet } from "@near-wallet-selector/meteor-wallet";
import "@near-wallet-selector/modal-ui/styles.css";

const contractId = "contract.dapp.near";

const config = {
  networkId: "mainnet",
  keyStore: nearKeyStore,
  nodeUrl: "https://rpc.mainnet.near.org",
  walletUrl: "https://wallet.mainnet.near.org",
  helperUrl: "https://helper.mainnet.near.org",
  headers: {},
};

const wallet = new NearModalSelectorWallet({
  config,
  contractId,
  modules: [
    ...(await setupDefaultWallets()),
    setupMyNearWallet(),
    setupNightly(),
    setupMeteorWallet(),
  ],
});

await wallet.connect();

Using the WrappedNearWallet

import { setupMeteorWallet } from "@near-wallet-selector/meteor-wallet";
import { setupSender } from "@near-wallet-selector/sender";
import "@near-wallet-selector/modal-ui/styles.css";

const contractId = "contract.dapp.near";

const config = {
  networkId: "mainnet",
  keyStore: nearKeyStore,
  nodeUrl: "https://rpc.mainnet.near.org",
  walletUrl: "https://wallet.mainnet.near.org",
  helperUrl: "https://helper.mainnet.near.org",
  headers: {},
};

const meteor = await wrapWallet({
  config,
  contractId,
  factory: setupMeteorWallet(),
});
const sender = await wrapWallet({ config, contractId, factory: setupSender() });

await meteor.connect();
npm i @xlabs-libs/wallet-aggregator-near

Metadata

  • MIT
  • Whatever
  • Unknown
  • released 7/18/2023

Downloads