@tomo-inc/embedded-wallet-providers
v0.0.16
Published
```bash pnpm add @tomo-inc/embedded-wallet-providers ```
Readme
embedded-wallet-providers
Installation
pnpm add @tomo-inc/embedded-wallet-providers1. Embedded Wallet
1.1 Init
const config = {
tomoStage: "dev" as "dev" | "prod",
name: "******",
logo: "https://******",
tomoClientId: "******",
xClientId: "******",
googleClientId: "******",
walletBaseUrl: "https://******", // embedded-wallet link
};
embeddedWallet = EmbeddedWallet.getInstance();
const { isAvailable, message, connectedInfo } =
await embeddedWallet.init(config);
if ((isAvailable = false)) {
// oidc auth
// wallet login
}
embeddedWallet.setWalletZIndex(999); // default1.2 OIDC Auth
const oidcToken = await embeddedWallet.loginByGoogle();
const oidcToken = await embeddedWallet.loginByX();
const oidcToken = await embeddedWallet.loginByEmail({ email });1.3 Wallet Login
Same response as init:
const { isAvailable, connectedInfo } = await embeddedWallet.login(oidcToken);
connectInfo = {
evmProvider: {
connected: true;
address: string[];
},
solanaProvider: {
connected: false;
}
};2. Wallet Brand Info
embeddedWallet.info = {
uuid: string;
name: string;
icon: string;
rdns: string;
iconBackground?: string;
links?: {
homepage: string;
};
};3. Wallet API
embeddedWallet.open("setting"); // mfa config
embeddedWallet.open("mnemonicExport");
embeddedWallet.logout();4. Providers
isAvailable = true
4.1 EVM
const evmProvider = embeddedWallet.evmProvider;
// methods
connect;
disconnect;
getChainId;
switchChain;
signMessage(siweSign);
signTypedData;
eth_signTransaction;
sendTransaction;API docs: https://qsg07xytt12z.sg.larksuite.com/wiki/XLq9wrNRLiAXANkCj4QlERCxg7f
4.2 Solana (todo)
const solanaProvider = embeddedWallet.solanaProvider;API docs: https://qsg07xytt12z.sg.larksuite.com/wiki/LyVnwBkzaibRDEkUfXclabRmg6g
4.3 Dogecoin (todo)
const dogecoinProvider = embeddedWallet.dogecoinProvider;API docs: https://qsg07xytt12z.sg.larksuite.com/wiki/FKuOwiSN7iNHHNkA4zjl4S5JgLb
5. Demo
Demo repo: https://github.com/tomo-inc/tomo-wallet/tree/tomo-sdk-design/examples/wallet-sdk-demo/src/embedded-wallet-providers
