Skip to main content

@kea-wallet/embedded-provider

Embedded wallet provider for KEA Wallet — manages iframe lifecycle, postMessage protocol, connection state, and chain adapters.

Install

npm install @kea-wallet/embedded-provider

When to use

Use this package when you need direct control over the wallet iframe and postMessage layer. For higher-level integrations:

  • @kea-wallet/browser-sdk — adds a typed RPC client on top
  • @kea-wallet/react-sdk — React provider and hooks
  • @kea-wallet/react-ui — prebuilt React wallet UI components

Quick start

import { EmbeddedProvider } from '@kea-wallet/embedded-provider';

const provider = new EmbeddedProvider();
await provider.initialize();

const { accounts } = await provider.connect({
metadata: { appName: 'My dApp', appUrl: window.location.origin },
});

// Sign a transaction via the Thru chain adapter
const signingContext = await provider.thru.getSigningContext();
const signed = await provider.thru.signTransaction(base64Transaction);

// Clean up
await provider.disconnect();
provider.destroy();

Events

Subscribe with provider.on(event, callback):

  • connectStart — connection flow initiated
  • connect — connection succeeded
  • connectError — connection failed
  • disconnect — wallet disconnected
  • accountChanged — active account switched
  • lock — wallet locked
  • uiShow — wallet UI became visible

Lifecycle

ClassDescription
EmbeddedProviderEmbedded wallet provider that communicates with the KEA Wallet via a hidden iframe and the postMessage protocol.

Chain

ClassDescription
EmbeddedThruChainThru chain adapter that delegates all signing operations to the KEA Wallet iframe via the postMessage protocol. Implements the IThruChain interface.

Other

NameDescription
ConnectOptionsOptions passed to EmbeddedProvider.connect.
EmbeddedProviderConfigConfiguration options for EmbeddedProvider.
DEFAULT_IFRAME_URLDefault URL for the KEA Wallet embedded iframe. Override via EmbeddedProviderConfig.iframeUrl for custom deployments or http://localhost:... during development.