JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 87
  • Score
    100M100P100Q68533F
  • License MIT

Package Exports

  • @unique-nft/accounts
  • @unique-nft/accounts/keyring
  • @unique-nft/accounts/keyring-local
  • @unique-nft/accounts/metamask
  • @unique-nft/accounts/polkadot

Readme

Аккаунты

Пакет необходим для подключения разных аккаунтов и создания подписей к ним. Чтобы получить список аккаунтов, необходимо создать экземпляр класса Accounts и подключить к нему необходимые провайдеры:

import { Account, Accounts, SdkSigner } from '@unique-nft/accounts';
import { KeyringLocalProvider } from '@unique-nft/accounts/keyring-local';
import { PolkadotProvider } from '@unique-nft/accounts/polkadot';

const accounts = new Accounts();
await accounts.addProvider(KeyringLocalProvider);
await accounts.addProvider(PolkadotProvider);

const accountsList = await accounts.getAccounts();

const account: Account = accountsList[0];

const signer: SdkSigner = account.getSigner();

Провайдеры

Если вам необходимо получить аккаунт с одного определенного провайдера, тогда не обязательно создавать объект Accounts, можно обращаться напрямую к провайдеру:

import { Account } from '@unique-nft/accounts';
import { KeyringProvider } from '@unique-nft/accounts/keyring';
import { KeyringOptions } from '@polkadot/keyring/types';

const options: KeyringOptions = {
  type: 'sr25519',
};
const provider = new KeyringProvider(options);
await provider.init();
provider.addSeed('<seed of account>');

const account: Account | undefined = await provider.first();
const signer = account?.getSigner();

Поддерживаются следующие провайдеры:

Generate new account

import { generateAccount, SignatureType } from '@unique-nft/accounts';

const account = await generateAccount({
  password: '123456',
  pairType: SignatureType.Sr25519,
  meta: {
    name: 'my_test_account',
  },
});

Get account from mnemonic

import { getAccountFromMnemonic } from '@unique-nft/accounts';

const account = await getAccountFromMnemonic({
  mnemonic: 'your mnemonic phrase',
});