seekerpay_core library

Classes

ActivityService
Riverpod StateNotifier that loads and caches the wallet's transaction history from the Solana RPC.
ActivityState
Immutable state for the transaction activity feed.
BalanceNotifier
Generic Riverpod StateNotifier for a wallet balance expressed as BigInt.
ConfirmationPoller
MultiTransfer
Describes a single transfer leg within a multi-recipient transaction.
MwaClient
Singleton client for interacting with a Solana wallet via the Mobile Wallet Adapter (MWA) protocol on Android.
PaymentReceipt
Confirmation record returned after a successful payment.
PaymentRequest
Parameters for a single SKR token payment.
PaymentService
Riverpod StateNotifier that orchestrates the full SKR payment lifecycle: balance check, transaction building, simulation, MWA signing, submission, and on-chain confirmation polling.
PaymentState
Immutable snapshot of the current payment operation state.
PendingTransaction
A signed transaction that has been stored locally for deferred on-chain submission.
PendingTransactionManager
Persists and manages a queue of signed-but-unsubmitted transactions using SharedPreferences.
PendingTransactionsNotifier
PriceNotifier
Riverpod StateNotifier that exposes TokenPrices as an AsyncValue.
PriceService
Fetches and caches USD prices for SOL and SKR via the CoinGecko API.
RecentWallet
RecentWalletsNotifier
RpcClient
Low-level Solana JSON-RPC client.
RpcUrlNotifier
Riverpod StateNotifier that manages the active Solana RPC endpoint URL.
SimulationResult
Result of a simulateTransaction RPC call.
SKRToken
Constants for the SKR SPL token on Solana mainnet.
SplTokenTransfer
Builds serialised SPL token transfer transactions.
TokenPrices
Holds the latest USD prices for SOL and SKR tokens.
TransactionParser
TransactionRecord
A normalised record representing a single on-chain transaction as seen from a specific wallet address.
TxSignature
A transaction signature entry returned by getSignaturesForAddress.
TxStatus
Confirmation status for a single transaction signature.
WalletState
Immutable snapshot of the wallet connection state.
WalletStateNotifier
Riverpod StateNotifier that manages wallet connection lifecycle.

Enums

PaymentStatus
Progression stages of a payment operation, from building through confirmation.
TransactionType
Direction of a parsed transaction relative to the viewing wallet.

Properties

activityServiceProvider → AutoDisposeStateNotifierProvider<ActivityService, ActivityState>
Auto-disposing provider for ActivityService scoped to the current wallet address.
final
hasHeliusKeyProvider → Provider<bool>
Derived provider that is true when the active RPC URL points to Helius.
final
paymentServiceProvider → StateNotifierProvider<PaymentService, PaymentState>
final
pendingTransactionsProvider → StateNotifierProvider<PendingTransactionsNotifier, List<PendingTransaction>>
final
priceServiceProvider → Provider<PriceService>
Provider that creates a singleton PriceService.
final
pricesProvider → StateNotifierProvider<PriceNotifier, AsyncValue<TokenPrices>>
Provider for PriceNotifier that exposes live/cached token prices.
final
recentWalletsProvider → StateNotifierProvider<RecentWalletsNotifier, List<RecentWallet>>
final
rpcClientProvider → Provider<RpcClient>
Provider that creates an RpcClient from the current rpcUrlProvider value.
final
rpcUrlProvider → StateNotifierProvider<RpcUrlNotifier, String>
Provider exposing the currently active RPC endpoint URL as a String.
final
skrBalanceProvider → StateNotifierProvider<BalanceNotifier, AsyncValue<BigInt>>
Provider that tracks the SKR token balance (in base units) for the connected wallet.
final
solBalanceProvider → StateNotifierProvider<BalanceNotifier, AsyncValue<BigInt>>
Provider that tracks the SOL balance (in lamports) for the connected wallet.
final
walletStateProvider → StateNotifierProvider<WalletStateNotifier, WalletState>
Global provider for WalletStateNotifier backed by the MwaClient singleton.
final

Exceptions / Errors

ConfirmationTimeoutException
MwaException
Base exception thrown when a Mobile Wallet Adapter operation fails.
MwaTimeoutException
Thrown when the wallet app does not establish a connection within the timeout window.
MwaUserRejectedException
Thrown when the user explicitly declines a wallet authorization or signing request.
RpcException
Exception thrown when a Solana JSON-RPC call returns an error or the network request fails after all retries.