Skip to main content

Overview

Framework-agnostic wallet adapter management.

Installation

npm install @hermis/solana-headless-adapter-base

WalletAdapterManager

Main class for managing wallet adapters.
import { WalletAdapterManager } from '@hermis/solana-headless-adapter-base';

const manager = new WalletAdapterManager(adapters);

// Events
manager.on('connect', (publicKey) => console.log('Connected'));
manager.on('disconnect', () => console.log('Disconnected'));
manager.on('error', (error) => console.error(error));

// Methods
manager.selectAdapter('Phantom');
await manager.connect();
await manager.disconnect();

Utility Functions

getStandardWalletAdapters()

Get all standard wallet adapters including custom ones.
import { getStandardWalletAdapters } from '@hermis/solana-headless-adapter-base';

const adapters = getStandardWalletAdapters(customAdapters);

sortWalletAdapters()

Sort adapters by priority (mobile wallets, then installed wallets first).
import { sortWalletAdapters } from '@hermis/solana-headless-adapter-base';

const sorted = sortWalletAdapters(adapters);

getAdaptersByReadyState()

Filter adapters by ready state.
import { getAdaptersByReadyState } from '@hermis/solana-headless-adapter-base';

const installed = getAdaptersByReadyState(adapters, 'Installed');
const loadable = getAdaptersByReadyState(adapters, 'Loadable');

Events

  • connect - Wallet connected
  • disconnect - Wallet disconnected
  • error - Error occurred
  • walletChanged - Selected wallet changed

Complete API

See detailed documentation: