JSPM

@rialo/wallet-standard

0.1.1
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1273
  • Score
    100M100P100Q125644F
  • License Apache-2.0

Wallet Standard definition for Rialo Network

Package Exports

  • @rialo/wallet-standard

Readme

@rialo/wallet-standard

Wallet Standard implementation for Rialo Network, providing a standardized interface for wallet interactions following the Wallet Standard specification.

Installation

npm install @rialo/wallet-standard
yarn add @rialo/wallet-standard
pnpm add @rialo/wallet-standard

Overview

This package provides the standard wallet interface for Rialo Network applications. It implements the Wallet Standard specification to ensure compatibility and interoperability across different wallet implementations and dApps.

Features

  • Full Wallet Standard compliance
  • Rialo-specific transaction signing and submission
  • Multi-chain support for Rialo networks
  • Message signing capabilities
  • Event-driven architecture for state management

Usage

Connect to Wallet

const { accounts } = await wallet.features['standard:connect'].connect();

// Access the connected account
const account = accounts[0];
console.log('Connected account:', account.address);

Sign and Send Transaction

import { RialoSignAndSendTransaction } from '@rialo/wallet-standard';

const result = await wallet.features[RialoSignAndSendTransaction].signAndSendTransaction({
  account: account,
  transaction: transactionBuffer,
  chain: 'rialo:mainnet',
  options: {
    skipPreflight: false
  }
});

console.log('Transaction signature:', result.signature);

Sign Message

import { RialoSignMessage } from '@rialo/wallet-standard';

const result = await wallet.features[RialoSignMessage].signMessage({
  account: account,
  message: new TextEncoder().encode('Hello, Rialo!'),
  chain: 'rialo:mainnet'
});

console.log('Message signature:', result.signature);

Event Handling

wallet.features['standard:events'].on('change', ({ accounts, chains }) => {
  console.log('Wallet state changed');
  console.log('Active accounts:', accounts);
  console.log('Active chains:', chains);
});

API Reference

Features

Standard Features

  • standard:connect - Connect to the wallet
  • standard:disconnect - Disconnect from the wallet
  • standard:events - Event subscription interface

Rialo Features

  • rialo:signAndSendTransaction - Sign and submit a single transaction
  • rialo:signAndSendAllTransactions - Sign and submit multiple transactions
  • rialo:signTransaction - Sign a transaction without submitting
  • rialo:signMessage - Sign an arbitrary message

Types

RialoWalletAccount

interface RialoWalletAccount {
  address: string;
  publicKey: Uint8Array;
  chains: RialoChain[];
  features: string[];
  label?: string;
  icon?: string;
}

RialoChain

type RialoChain = 'rialo:testnet' | 'rialo:devnet' | 'rialo:localnet';

Chain Support

The wallet standard supports the following Rialo chains:

  • rialo:localnet - Rialo Local Network
  • rialo:testnet - Rialo Testnet
  • rialo:devnet - Rialo Development Network

Browser Support

This package supports all modern browsers with ES2020 compatibility:

  • Chrome 80+
  • Firefox 75+
  • Safari 14+
  • Edge 80+

TypeScript Support

This package includes TypeScript definitions. No additional @types packages are required.

import type {
  RialoWalletAccount,
  RialoChain,
  RialoSignTransactionOutput
} from '@rialo/wallet-standard';

Contributing

Contributions are welcome. Please ensure all changes maintain Wallet Standard compliance.

License

Apache-2.0