Skip to content

Commit b489364

Browse files
committed
[docs update] update docs
1 parent 5cb6448 commit b489364

File tree

2 files changed

+36
-7
lines changed

2 files changed

+36
-7
lines changed

src/StakeWiseSDK.ts

+14
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,20 @@ class StakeWiseSDK {
3838
}
3939

4040
const provider = options.provider || createProvider(options)
41+
const originalGetSigner = provider.getSigner
42+
43+
provider.getSigner = async function (address?: string) {
44+
const providerError = 'To send this transaction, please provide BrowserProvider to the StakeWiseSDK'
45+
46+
try {
47+
const signer = await originalGetSigner.bind(this)(address)
48+
49+
return signer
50+
}
51+
catch (error) {
52+
throw new Error(providerError)
53+
}
54+
}
4155

4256
const contracts = createContracts({ provider, config })
4357

website/setup/installation-setup.md

+22-7
Original file line numberDiff line numberDiff line change
@@ -25,22 +25,37 @@ webpackConfig.module.rules.push(
2525
```typescript
2626
import { StakeWiseSDK, Network } from '@stakewise/v3-sdk'
2727

28+
// sdk without provider allows to call methods to get data such as `sdk.vault.getVault`,
29+
// but doesn't allow to send transactions such as `sdk.vault.deposit`
2830
const sdk = new StakeWiseSDK({
2931
network: Network.Mainnet,
3032
endpoints: {
3133
web3: 'https://mainnet.infura.io/v3/...',
3234
},
3335
})
3436

37+
// sdk with provider allows to call methods to get data and send transactions
38+
const provider = new BrowserProvider(window.ethereum, {
39+
name: 'mainnet',
40+
chainId: Network.Mainnet,
41+
})
42+
43+
const sdk = new StakeWiseSDK({
44+
network: Network.Mainnet,
45+
provider: new BrowserProvider(window.ethereum, {
46+
name: 'mainnet',
47+
chainId: Network.Mainnet,
48+
}),
49+
})
3550
```
3651

3752
#### SDK Constructor Arguments:
3853

39-
| Name | Type | Required | Description |
40-
|--------------------|------------------------------------------------------------------|----------|---------------------------|
41-
| network | `Network` | **Yes** | Chain id |
42-
| provider | `BrowserProvider or JsonRpcProvider` | **No** | You can provide your implementation of the provender for ethers |
43-
| endpoints.web3 | `string OR Array<(string \| { url: string, headers: Headers })>` | **No** | Your urls for connecting to blockchain. This parameter is required if `provider` is not provided. If more than one URL is provided, they will be used as fallbacks. |
44-
| endpoints.subgraph | `string` | **No** | stakewise subgraph url |
45-
| endpoints.api | `string` | **No** | stakewise backend url |
54+
| Name | Type | Required | Description |
55+
|--------------------|--------------------------------------------------------------------|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|
56+
| network | `Network` | **Yes** | Chain id |
57+
| provider | `BrowserProvider` or `JsonRpcProvider` | **No** | You can provide your implementation of the provender for ethers. This parameter is required to send transactions. |
58+
| endpoints.web3 | `string` or `Array<(string \| { url: string, headers: Headers })>` | **No** | Your urls for connecting to blockchain. This parameter is required if `provider` is not provided. If more than one URL is provided, they will be used as fallbacks. |
59+
| endpoints.subgraph | `string` | **No** | stakewise subgraph url |
60+
| endpoints.api | `string` | **No** | stakewise backend url |
4661

0 commit comments

Comments
 (0)