Skip to content

Commit 4de4409

Browse files
authored
Merge pull request #638 from BitGo/vet-wrw
feat: add support for vet recovery
2 parents 49dbe8a + 27eda44 commit 4de4409

File tree

17 files changed

+2562
-5802
lines changed

17 files changed

+2562
-5802
lines changed

VET.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
Wallet Recovery Wizard supports building transactions to recover VET from your BitGo Hot and Self-Managed Cold wallets.
2+
3+
For Hot wallets Wallet Recovery Wizard signs the transaction. This transaction needs to be broadcasted manually.
4+
For Self-Managed Cold wallets Wallet Recovery Wizard builds the unsigned transaction and allows you to sign it offline. After signing, you will need to broadcast the transaction manually.
5+
6+
Below is a official full node public REST endpoint that must be called to broadcast the transaction.
7+
8+
Construct the API request to the full node:
9+
10+
Mainnet Request URL: https://sync-mainnet.vechain.org/
11+
12+
Request Body format (find "serializedTx" in your downloaded JSON):
13+
14+
```json
15+
{
16+
"raw": "serializedTx"
17+
}
18+
```
19+
20+
## Important Note
21+
22+
If using an API request tool such as [Postman](https://www.postman.com/), you must add a header with key: "Content-Type" and value: "application/json".

electron/coinFactory.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ const tokenParentCoins = {
2525
txrpToken: 'xrp',
2626
nep141Token: 'near',
2727
tnep141Token: 'near',
28+
vetToken: 'vet',
29+
tvetToken: 'vet',
2830
};
2931

3032
const CoinFactory = () => {

electron/main/index.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ import { Icp, Ticp } from '@bitgo/sdk-coin-icp';
7979
import { Stx, Tstx, Sip10Token } from '@bitgo/sdk-coin-stx';
8080
import { Soneium, Tsoneium } from '@bitgo/sdk-coin-soneium';
8181
import { Polyx, Tpolyx } from '@bitgo/sdk-coin-polyx';
82+
import { Vet, Tvet, VetToken } from '@bitgo/sdk-coin-vet';
8283
import { registerAll as EVMCoinRegisterAll } from '@bitgo/sdk-coin-evm';
8384
import { CoinFeature, coins } from '@bitgo/statics';
8485
import { Xtz, Txtz } from '@bitgo/sdk-coin-xtz';
@@ -202,6 +203,8 @@ sdk.register('wemix', Wemix.createInstance);
202203
sdk.register('twemix', Twemix.createInstance);
203204
sdk.register('icp', Icp.createInstance);
204205
sdk.register('ticp', Ticp.createInstance);
206+
sdk.register('vet', Vet.createInstance);
207+
sdk.register('tvet', Tvet.createInstance);
205208
sdk.register('stx', Stx.createInstance);
206209
sdk.register('tstx', Tstx.createInstance);
207210
sdk.register('soneium', Soneium.createInstance);
@@ -245,6 +248,9 @@ Sip10Token.createTokenConstructors().forEach(({ name, coinConstructor }) => {
245248
Nep141Token.createTokenConstructors().forEach(({ name, coinConstructor }) => {
246249
sdk.register(name, coinConstructor);
247250
});
251+
VetToken.createTokenConstructors().forEach(({ name, coinConstructor }) => {
252+
sdk.register(name, coinConstructor);
253+
});
248254

249255
function handleSdkError(e: unknown): string {
250256
if (typeof e === 'string' && e !== null) {

electron/types.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import { Coredao, Tcoredao } from '@bitgo/sdk-coin-coredao';
2222
import { Polygon, Tpolygon } from '@bitgo/sdk-coin-polygon';
2323
import { Bsc, Tbsc } from '@bitgo/sdk-coin-bsc';
2424
import { Ton, Tton } from '@bitgo/sdk-coin-ton';
25+
import { Vet, Tvet } from '@bitgo/sdk-coin-vet';
2526

2627
export type BroadcastableSweepTransaction = Awaited<
2728
ReturnType<
@@ -71,6 +72,8 @@ export type BroadcastTransactionOptions = Awaited<
7172
| Parameters<Tbsc['broadcastTransaction']>[0]
7273
| Parameters<Ton['broadcastTransaction']>[0]
7374
| Parameters<Tton['broadcastTransaction']>[0]
75+
| Parameters<Vet['broadcastTransaction']>[0]
76+
| Parameters<Tvet['broadcastTransaction']>[0]
7477
>;
7578

7679
export type BroadcastTransactionResult = Awaited<

0 commit comments

Comments
 (0)