You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Closes TOOL-2991
<!--
## title your PR with this format: "[SDK/Dashboard/Portal] Feature/Fix: Concise title for the changes"
If you did not copy the branch name from Linear, paste the issue tag here (format is TEAM-0000):
## Notes for the reviewer
Anything important to call out? Be sure to also clarify these in your comments.
## How to test
Unit tests, playground, etc.
-->
<!-- start pr-codex -->
---
## PR-Codex overview
This PR introduces enhancements to the `sidebar` structure and API documentation, adds new wallet authentication options, and refines existing content for clarity. It also includes new RPC overrides and updates to the `InAppWallet` and `EcosystemWallet` functionalities.
### Detailed summary
- Added `rpcOverrides` example to `page.mdx`.
- Updated `sidebar.tsx` to include "API Reference" and "Blockchain API" sections.
- Replaced "Blockchain API" with "Nebula AI" in `sidebar.tsx`.
- Enhanced `EcosystemWallet` and `InAppWallet` functionalities with new login options.
- Clarified documentation on wallet connections and authentication methods.
- Added examples for `SiweExternal` login process.
- Updated various sections in `page.mdx` for better clarity and detail.
> ✨ Ask PR-Codex anything about this PR by commenting with `/codex {your question}`
<!-- end pr-codex -->
The last piece of the puzzle required to create .NET apps and games leveraging a blockchain-powered AI assistant or NPC that also has the power to fully execute transactions.
11
+
12
+
## Read, Write, Reason.
13
+
The best way to understand is to look at examples.
14
+
15
+
We'll prepare some context for the AI - here, we'll generate a basic `PrivateKeyWallet` and upgrade it to a `SmartWallet` on Sepolia.
This wallet is designed for client-side use in applications where direct access to the user's private keys is not safe or necessary. It leverages OTP for secure authentication, allowing users to interact with blockchain applications seamlessly.
80
-
</Callout>
81
99
<Detailssummary="Parameters">
82
100
83
101
### client (required)
@@ -108,6 +126,18 @@ The OAuth provider to use for authentication. Supported values are `AuthProvider
108
126
109
127
The path to the directory where the wallet data is stored. Defaults to the application's data directory.
110
128
129
+
### siweSigner (optional)
130
+
131
+
An external wallet instance to use for SIWE authentication.
132
+
133
+
### legacyEncryptionKey (optional)
134
+
135
+
The encryption key that is no longer required but was used in the past. Only pass this if you had used custom auth before this was deprecated.
136
+
137
+
### walletSecret (optional)
138
+
139
+
The secret identifier to use when creating server-side wallets with backend authentication.
140
+
111
141
</Details>
112
142
113
143
<Detailssummary="Return Value">
@@ -246,6 +276,31 @@ if (!await ecosystemWallet.IsConnected())
246
276
247
277
**Note:** The `LoginWithOauth` API allows for custom browser handling, making it suitable for various application types and platforms.
248
278
279
+
## External Wallet Auth (Siwe & SiweExternal)
280
+
281
+
**LoginWithSiwe:** Initiate the login process by calling LoginWithSiwe on the EcosystemWallet instance. This will prompt the external wallet to sign a message instantly.
**LoginWithSiweExternal:** Initiate the login process by calling LoginWithSiweExternal on the EcosystemWallet instance. This will initiate a browser-based login flow for external wallets that only support web platforms.
288
+
289
+
```csharp
290
+
varaddress=awaitwallet.LoginWithSiweExternal(
291
+
// Windows console app example, adaptable to any runtime
Note: The parameters are similar to the OAuth flow, with the addition of `forceWalletIds` to specify the wallet IDs to force the user to use. Using a single wallet id will skip the wallet selection screen and directly open the wallet.
303
+
249
304
## Unified Identity - Account Linking
250
305
251
306
EcosystemWallet supports linking multiple authentication methods to a single user account. This feature enables users to access their account using different authentication methods, such as email, phone, or OAuth, without creating separate accounts for each method.
0 commit comments