メインコンテンツへスキップ
まず、Sequence Projectアカウントを作成していることを確認してください。まだお持ちでない場合はこちらから作成できます。続行するにはProject Access Keyが必要です。
当社のWeb SDKはwagmiの上に構築されています。高度な設定やトランザクション送信、コントラクト呼び出しなどについては、wagmiのドキュメントをご参照ください。
1

必要なライブラリをインストールします

2

ウォレット設定を作成します

次に、Ecosystem Walletの設定を作成します。Ecosystem Walletに必須
  • projectAccessKey
  • walletUrl
オプション
  • dappOrigin
  • signIn.projectName, appName
  • chainIds, defaultChainId
  • explicitSession(オプション;明示的なセッション権限と制限をリクエスト)
  • includeFeeOptionPermissions, enableImplicitSession
  • nodesUrl, relayerUrl
  • walletConnect
[config.ts]
walletUrl は、dApp が利用するエコシステムウォレットのURLです。デモでは、Acme エコシステムウォレット を使用しています。dappOriginはdappのオリジンで、ユーザーのアクセス元を確認するために使われます。explicitSessionオブジェクトを使うことで、dAppが接続時にユーザーから特定の権限をリクエストできます。 これらの権限により、ユーザーに取引確認を求めずに一定期間dAppが特定の操作を代行でき、よりシームレスな体験や自動化が可能になります。参照:権限の詳細解説 および トークンディレクトリ

手数料オプションの挙動(重要)

アプリがSequenceリレーを通じてトランザクションを送信する際、リレーラーは手数料の支払い方法を判断する必要があります。
  • 明示的なセッション作成時にSDKが自動で必要な手数料関連の権限をリクエストするようにしたい場合は、includeFeeOptionPermissionsを有効にしてください。
  • これを無効にした場合、利用する手数料オプションに必要な手数料関連の権限を自分で含める必要があります。
手数料の支払いが満たされない場合、コアのコントラクトコール権限が正しくても、トランザクションは送信時に失敗することがあります。nativeTokenSpendingはオプションです。省略した場合、セッションはネイティブトークンの支出許可なしがデフォルトとなります。例として、「次の24時間、ユーザーの代理でArbitrum上のAAVE V3プールに100 USDCを入金する」ための明示的セッションを作成してみましょう。
[config.ts]
ユーザーがウォレットを接続すると、dAppに権限を付与するよう求められます。承認されると、AAVEへのUSDC供給などの操作が追加のポップアップなしで実行でき、ユーザーがオフラインでも自動化が可能です。
3

アプリをProviderでラップする

アプリケーション全体でパッケージのフックやコンポーネントを利用できるよう、アプリケーションをSequenceConnect Providerでラップしてください。ステップ2で作成した設定を、Providerのconfigに渡す必要があります。
[main.tsx]
4

接続モーダルの表示

[App.tsx]
接続時にユーザーに権限の承認が求められます。メインダッシュボード画面