@txnlab/use-wallet 1.0.2 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -0
- package/dist/cjs/clients/algosigner/client.d.ts +1 -1
- package/dist/cjs/clients/algosigner/types.d.ts +2 -1
- package/dist/cjs/clients/base/base.d.ts +4 -9
- package/dist/cjs/clients/defly/client.d.ts +1 -1
- package/dist/cjs/clients/defly/types.d.ts +2 -1
- package/dist/cjs/clients/exodus/client.d.ts +1 -1
- package/dist/cjs/clients/exodus/types.d.ts +2 -1
- package/dist/cjs/clients/kmd/client.d.ts +1 -1
- package/dist/cjs/clients/kmd/types.d.ts +2 -1
- package/dist/cjs/clients/myalgo/client.d.ts +1 -1
- package/dist/cjs/clients/myalgo/types.d.ts +2 -1
- package/dist/cjs/clients/pera/client.d.ts +1 -1
- package/dist/cjs/clients/pera/types.d.ts +2 -1
- package/dist/cjs/clients/walletconnect/client.d.ts +2 -3
- package/dist/cjs/clients/walletconnect/types.d.ts +2 -1
- package/dist/cjs/hooks/useWallet.d.ts +2 -107
- package/dist/cjs/index.js +81 -56
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/store/state/walletStore.d.ts +17 -0
- package/dist/cjs/types/wallet.d.ts +10 -5
- package/dist/cjs/utils/clearAccounts.d.ts +2 -0
- package/dist/esm/clients/algosigner/client.d.ts +1 -1
- package/dist/esm/clients/algosigner/types.d.ts +2 -1
- package/dist/esm/clients/base/base.d.ts +4 -9
- package/dist/esm/clients/defly/client.d.ts +1 -1
- package/dist/esm/clients/defly/types.d.ts +2 -1
- package/dist/esm/clients/exodus/client.d.ts +1 -1
- package/dist/esm/clients/exodus/types.d.ts +2 -1
- package/dist/esm/clients/kmd/client.d.ts +1 -1
- package/dist/esm/clients/kmd/types.d.ts +2 -1
- package/dist/esm/clients/myalgo/client.d.ts +1 -1
- package/dist/esm/clients/myalgo/types.d.ts +2 -1
- package/dist/esm/clients/pera/client.d.ts +1 -1
- package/dist/esm/clients/pera/types.d.ts +2 -1
- package/dist/esm/clients/walletconnect/client.d.ts +2 -3
- package/dist/esm/clients/walletconnect/types.d.ts +2 -1
- package/dist/esm/hooks/useWallet.d.ts +2 -107
- package/dist/esm/index.js +82 -57
- package/dist/esm/store/state/walletStore.d.ts +17 -0
- package/dist/esm/types/wallet.d.ts +10 -5
- package/dist/esm/utils/clearAccounts.d.ts +2 -0
- package/dist/index.d.ts +29 -126
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -457,6 +457,12 @@ In the root of `use-wallet` directory, run:
|
|
|
457
457
|
yarn link react
|
|
458
458
|
```
|
|
459
459
|
|
|
460
|
+
## Used By
|
|
461
|
+
|
|
462
|
+
Are you using `@txnlab/use-wallet`? We'd love to include you here. Let us know! [Twitter](https://twitter.com/NFDomains) | [Discord](https://discord.gg/7XcuMTfeZP) | [Email](mailto:admin@txnlab.dev)
|
|
463
|
+
|
|
464
|
+
* [@algoscan/use-wallet-ui](https://github.com/algoscan/use-wallet-ui)
|
|
465
|
+
|
|
460
466
|
## License
|
|
461
467
|
|
|
462
468
|
See the [LICENSE](https://github.com/TxnLab/use-wallet/blob/main/LICENSE.md) file for license rights and limitations (MIT)
|
|
@@ -5,7 +5,7 @@ import type { AlgoSignerTransaction, AlgoSignerClientConstructor, InitParams } f
|
|
|
5
5
|
declare class AlgoSignerClient extends BaseWallet {
|
|
6
6
|
#private;
|
|
7
7
|
network: Network;
|
|
8
|
-
constructor({ client, algosdk, algodClient, network, }: AlgoSignerClientConstructor);
|
|
8
|
+
constructor({ metadata, client, algosdk, algodClient, network, }: AlgoSignerClientConstructor);
|
|
9
9
|
static metadata: {
|
|
10
10
|
id: PROVIDER_ID;
|
|
11
11
|
name: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type _algosdk from "algosdk";
|
|
2
2
|
import { PROVIDER_ID } from "../../constants";
|
|
3
|
-
import type { AlgodClientOptions, Network } from "../../types";
|
|
3
|
+
import type { AlgodClientOptions, Network, Metadata } from "../../types";
|
|
4
4
|
export declare type WindowExtended = {
|
|
5
5
|
AlgoSigner: AlgoSigner;
|
|
6
6
|
} & Window & typeof globalThis;
|
|
@@ -27,6 +27,7 @@ export declare type AlgoSigner = {
|
|
|
27
27
|
};
|
|
28
28
|
};
|
|
29
29
|
export declare type AlgoSignerClientConstructor = {
|
|
30
|
+
metadata: Metadata;
|
|
30
31
|
client: AlgoSigner;
|
|
31
32
|
id: PROVIDER_ID;
|
|
32
33
|
algosdk: typeof _algosdk;
|
|
@@ -1,22 +1,17 @@
|
|
|
1
1
|
import type _algosdk from "algosdk";
|
|
2
|
-
import {
|
|
3
|
-
import type { Asset, Wallet, AccountInfo, TransactionsArray } from "../../types";
|
|
2
|
+
import type { Asset, Wallet, AccountInfo, TransactionsArray, Metadata } from "../../types";
|
|
4
3
|
declare abstract class BaseClient {
|
|
5
4
|
algosdk: typeof _algosdk;
|
|
6
5
|
algodClient: _algosdk.Algodv2;
|
|
7
6
|
keepWCAlive: HTMLAudioElement;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
name: string;
|
|
11
|
-
icon: string;
|
|
12
|
-
isWalletConnect: boolean;
|
|
13
|
-
};
|
|
7
|
+
metadata: Metadata;
|
|
8
|
+
static metadata: Metadata;
|
|
14
9
|
abstract connect(onDisconnect: () => void): Promise<Wallet>;
|
|
15
10
|
abstract disconnect(): Promise<void>;
|
|
16
11
|
abstract reconnect(onDisconnect: () => void): Promise<Wallet | null>;
|
|
17
12
|
abstract signTransactions(connectedAccounts: string[], transactions: Array<Uint8Array>): Promise<Uint8Array[]>;
|
|
18
13
|
abstract signEncodedTransactions(transactions: TransactionsArray): Promise<Uint8Array[]>;
|
|
19
|
-
protected constructor(algosdk: typeof _algosdk, algodClient: _algosdk.Algodv2);
|
|
14
|
+
protected constructor(metadata: Metadata, algosdk: typeof _algosdk, algodClient: _algosdk.Algodv2);
|
|
20
15
|
healthCheck(): Promise<{}>;
|
|
21
16
|
getAccountInfo(address: string): Promise<AccountInfo>;
|
|
22
17
|
getAssets(address: string): Promise<Asset[]>;
|
|
@@ -7,7 +7,7 @@ import { DeflyTransaction, InitParams, DeflyWalletClientConstructor } from "./ty
|
|
|
7
7
|
declare class DeflyWalletClient extends BaseWallet {
|
|
8
8
|
#private;
|
|
9
9
|
network: Network;
|
|
10
|
-
constructor({ client, algosdk, algodClient, network, }: DeflyWalletClientConstructor);
|
|
10
|
+
constructor({ metadata, client, algosdk, algodClient, network, }: DeflyWalletClientConstructor);
|
|
11
11
|
static metadata: {
|
|
12
12
|
id: PROVIDER_ID;
|
|
13
13
|
name: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Transaction } from "algosdk";
|
|
2
|
-
import type { AlgodClientOptions, Network } from "../../types";
|
|
2
|
+
import type { AlgodClientOptions, Network, Metadata } from "../../types";
|
|
3
3
|
import type { DeflyWalletConnect } from "@blockshake/defly-connect";
|
|
4
4
|
import type _algosdk from "algosdk";
|
|
5
5
|
export declare type ClientOptions = {
|
|
@@ -22,6 +22,7 @@ export declare type DeflyTransaction = {
|
|
|
22
22
|
signers?: string[];
|
|
23
23
|
};
|
|
24
24
|
export declare type DeflyWalletClientConstructor = {
|
|
25
|
+
metadata: Metadata;
|
|
25
26
|
client: DeflyWalletConnect;
|
|
26
27
|
algosdk: typeof _algosdk;
|
|
27
28
|
algodClient: _algosdk.Algodv2;
|
|
@@ -5,7 +5,7 @@ import { InitParams, ExodusClientConstructor } from "./types";
|
|
|
5
5
|
declare class ExodusClient extends BaseWallet {
|
|
6
6
|
#private;
|
|
7
7
|
network: Network;
|
|
8
|
-
constructor({ client, algosdk, algodClient, onlyIfTrusted, network, }: ExodusClientConstructor);
|
|
8
|
+
constructor({ metadata, client, algosdk, algodClient, onlyIfTrusted, network, }: ExodusClientConstructor);
|
|
9
9
|
static metadata: {
|
|
10
10
|
id: PROVIDER_ID;
|
|
11
11
|
name: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { PROVIDER_ID } from "../../constants";
|
|
2
2
|
import type _algosdk from "algosdk";
|
|
3
|
-
import type { AlgodClientOptions, Network } from "../../types";
|
|
3
|
+
import type { AlgodClientOptions, Network, Metadata } from "../../types";
|
|
4
4
|
export declare type ClientOptions = {
|
|
5
5
|
onlyIfTrusted: boolean;
|
|
6
6
|
};
|
|
@@ -25,6 +25,7 @@ export declare type Exodus = {
|
|
|
25
25
|
signTransaction(transactions: Bytes[]): Promise<Bytes[]>;
|
|
26
26
|
};
|
|
27
27
|
export declare type ExodusClientConstructor = {
|
|
28
|
+
metadata: Metadata;
|
|
28
29
|
client: Exodus;
|
|
29
30
|
id: PROVIDER_ID;
|
|
30
31
|
algosdk: typeof _algosdk;
|
|
@@ -7,7 +7,7 @@ declare class KMDWalletClient extends BaseWallet {
|
|
|
7
7
|
walletId: string;
|
|
8
8
|
id: PROVIDER_ID;
|
|
9
9
|
network: Network;
|
|
10
|
-
constructor({ client, id, wallet, password, algosdk, algodClient, network, }: KMDWalletClientConstructor);
|
|
10
|
+
constructor({ metadata, client, id, wallet, password, algosdk, algodClient, network, }: KMDWalletClientConstructor);
|
|
11
11
|
static metadata: {
|
|
12
12
|
id: PROVIDER_ID;
|
|
13
13
|
name: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type _algosdk from "algosdk";
|
|
2
|
-
import type { AlgodClientOptions, Network } from "../../types";
|
|
2
|
+
import type { AlgodClientOptions, Network, Metadata } from "../../types";
|
|
3
3
|
import { PROVIDER_ID } from "../../constants";
|
|
4
4
|
export declare type ClientOptions = {
|
|
5
5
|
wallet: string;
|
|
@@ -22,6 +22,7 @@ export interface InitWalletHandle {
|
|
|
22
22
|
error?: boolean;
|
|
23
23
|
}
|
|
24
24
|
export declare type KMDWalletClientConstructor = {
|
|
25
|
+
metadata: Metadata;
|
|
25
26
|
client: _algosdk.Kmd;
|
|
26
27
|
id: PROVIDER_ID;
|
|
27
28
|
algosdk: typeof _algosdk;
|
|
@@ -9,7 +9,7 @@ import { MyAlgoWalletClientConstructor, InitParams } from "./types";
|
|
|
9
9
|
declare class MyAlgoWalletClient extends BaseWallet {
|
|
10
10
|
#private;
|
|
11
11
|
network: Network;
|
|
12
|
-
constructor({ client, algosdk, algodClient, network, }: MyAlgoWalletClientConstructor);
|
|
12
|
+
constructor({ metadata, client, algosdk, algodClient, network, }: MyAlgoWalletClientConstructor);
|
|
13
13
|
static metadata: {
|
|
14
14
|
id: PROVIDER_ID;
|
|
15
15
|
name: string;
|
|
@@ -4,8 +4,9 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import type _MyAlgoConnect from "@randlabs/myalgo-connect";
|
|
6
6
|
import type _algosdk from "algosdk";
|
|
7
|
-
import { AlgodClientOptions, Network } from "../../types";
|
|
7
|
+
import { AlgodClientOptions, Network, Metadata } from "../../types";
|
|
8
8
|
export declare type MyAlgoWalletClientConstructor = {
|
|
9
|
+
metadata: Metadata;
|
|
9
10
|
client: _MyAlgoConnect;
|
|
10
11
|
algosdk: typeof _algosdk;
|
|
11
12
|
algodClient: _algosdk.Algodv2;
|
|
@@ -5,7 +5,7 @@ import { PeraTransaction, PeraWalletClientConstructor, InitParams } from "./type
|
|
|
5
5
|
declare class PeraWalletClient extends BaseWallet {
|
|
6
6
|
#private;
|
|
7
7
|
network: Network;
|
|
8
|
-
constructor({ client, algosdk, algodClient, network, }: PeraWalletClientConstructor);
|
|
8
|
+
constructor({ metadata, client, algosdk, algodClient, network, }: PeraWalletClientConstructor);
|
|
9
9
|
static metadata: {
|
|
10
10
|
id: PROVIDER_ID;
|
|
11
11
|
name: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type _algosdk from "algosdk";
|
|
2
2
|
import type { PeraWalletConnect } from "@perawallet/connect";
|
|
3
3
|
import type { Transaction } from "algosdk";
|
|
4
|
-
import type { AlgodClientOptions, Network } from "../../types";
|
|
4
|
+
import type { AlgodClientOptions, Network, Metadata } from "../../types";
|
|
5
5
|
export declare type ClientOptions = {
|
|
6
6
|
bridge?: string;
|
|
7
7
|
deep_link?: string;
|
|
@@ -22,6 +22,7 @@ export interface PeraTransaction {
|
|
|
22
22
|
signers?: string[];
|
|
23
23
|
}
|
|
24
24
|
export declare type PeraWalletClientConstructor = {
|
|
25
|
+
metadata: Metadata;
|
|
25
26
|
client: PeraWalletConnect;
|
|
26
27
|
algosdk: typeof _algosdk;
|
|
27
28
|
algodClient: _algosdk.Algodv2;
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import type { Wallet } from "../../types";
|
|
2
1
|
import { PROVIDER_ID } from "../../constants";
|
|
3
2
|
import BaseWallet from "../base";
|
|
4
|
-
import { TransactionsArray, Network } from "../../types";
|
|
3
|
+
import { Wallet, TransactionsArray, Network } from "../../types";
|
|
5
4
|
import { WalletConnectClientConstructor, InitParams, WalletConnectTransaction } from "./types";
|
|
6
5
|
declare class WalletConnectClient extends BaseWallet {
|
|
7
6
|
#private;
|
|
8
7
|
network: Network;
|
|
9
|
-
constructor({ client, algosdk, algodClient, network, }: WalletConnectClientConstructor);
|
|
8
|
+
constructor({ metadata, client, algosdk, algodClient, network, }: WalletConnectClientConstructor);
|
|
10
9
|
static metadata: {
|
|
11
10
|
id: PROVIDER_ID;
|
|
12
11
|
name: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type _algosdk from "algosdk";
|
|
2
2
|
import type WalletConnect from "@walletconnect/client";
|
|
3
3
|
import QRCodeModal from "algorand-walletconnect-qrcode-modal";
|
|
4
|
-
import type { AlgodClientOptions, Network } from "../../types";
|
|
4
|
+
import type { AlgodClientOptions, Network, Metadata } from "../../types";
|
|
5
5
|
export interface IClientMeta {
|
|
6
6
|
description: string;
|
|
7
7
|
url: string;
|
|
@@ -47,6 +47,7 @@ export declare type InitParams = {
|
|
|
47
47
|
network?: Network;
|
|
48
48
|
};
|
|
49
49
|
export declare type WalletConnectClientConstructor = {
|
|
50
|
+
metadata: Metadata;
|
|
50
51
|
client: WalletConnect;
|
|
51
52
|
algosdk: typeof _algosdk;
|
|
52
53
|
algodClient: _algosdk.Algodv2;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type algosdk from "algosdk";
|
|
2
|
-
import { PROVIDER_ID, TransactionsArray } from "../types";
|
|
2
|
+
import { PROVIDER_ID, TransactionsArray, Provider } from "../types";
|
|
3
3
|
export { PROVIDER_ID };
|
|
4
4
|
export default function useWallet(): {
|
|
5
5
|
clients: Partial<{
|
|
@@ -11,112 +11,7 @@ export default function useWallet(): {
|
|
|
11
11
|
exodus: Promise<import("../clients/base/base").default | null>;
|
|
12
12
|
walletconnect: Promise<import("../clients/base/base").default | null>;
|
|
13
13
|
}> | null;
|
|
14
|
-
providers:
|
|
15
|
-
accounts: import("../types").Account[];
|
|
16
|
-
isActive: boolean;
|
|
17
|
-
isConnected: boolean;
|
|
18
|
-
connect: () => Promise<void>;
|
|
19
|
-
disconnect: () => Promise<void>;
|
|
20
|
-
reconnect: () => Promise<void>;
|
|
21
|
-
setActiveProvider: () => Promise<void>;
|
|
22
|
-
setActiveAccount: (account: string) => Promise<void>;
|
|
23
|
-
metadata: {
|
|
24
|
-
id: PROVIDER_ID;
|
|
25
|
-
name: string;
|
|
26
|
-
icon: string;
|
|
27
|
-
isWalletConnect: boolean;
|
|
28
|
-
};
|
|
29
|
-
} | {
|
|
30
|
-
accounts: import("../types").Account[];
|
|
31
|
-
isActive: boolean;
|
|
32
|
-
isConnected: boolean;
|
|
33
|
-
connect: () => Promise<void>;
|
|
34
|
-
disconnect: () => Promise<void>;
|
|
35
|
-
reconnect: () => Promise<void>;
|
|
36
|
-
setActiveProvider: () => Promise<void>;
|
|
37
|
-
setActiveAccount: (account: string) => Promise<void>;
|
|
38
|
-
metadata: {
|
|
39
|
-
id: PROVIDER_ID;
|
|
40
|
-
name: string;
|
|
41
|
-
icon: string;
|
|
42
|
-
isWalletConnect: boolean;
|
|
43
|
-
};
|
|
44
|
-
} | {
|
|
45
|
-
accounts: import("../types").Account[];
|
|
46
|
-
isActive: boolean;
|
|
47
|
-
isConnected: boolean;
|
|
48
|
-
connect: () => Promise<void>;
|
|
49
|
-
disconnect: () => Promise<void>;
|
|
50
|
-
reconnect: () => Promise<void>;
|
|
51
|
-
setActiveProvider: () => Promise<void>;
|
|
52
|
-
setActiveAccount: (account: string) => Promise<void>;
|
|
53
|
-
metadata: {
|
|
54
|
-
id: PROVIDER_ID;
|
|
55
|
-
name: string;
|
|
56
|
-
icon: string;
|
|
57
|
-
isWalletConnect: boolean;
|
|
58
|
-
};
|
|
59
|
-
} | {
|
|
60
|
-
accounts: import("../types").Account[];
|
|
61
|
-
isActive: boolean;
|
|
62
|
-
isConnected: boolean;
|
|
63
|
-
connect: () => Promise<void>;
|
|
64
|
-
disconnect: () => Promise<void>;
|
|
65
|
-
reconnect: () => Promise<void>;
|
|
66
|
-
setActiveProvider: () => Promise<void>;
|
|
67
|
-
setActiveAccount: (account: string) => Promise<void>;
|
|
68
|
-
metadata: {
|
|
69
|
-
id: PROVIDER_ID;
|
|
70
|
-
name: string;
|
|
71
|
-
icon: string;
|
|
72
|
-
isWalletConnect: boolean;
|
|
73
|
-
};
|
|
74
|
-
} | {
|
|
75
|
-
accounts: import("../types").Account[];
|
|
76
|
-
isActive: boolean;
|
|
77
|
-
isConnected: boolean;
|
|
78
|
-
connect: () => Promise<void>;
|
|
79
|
-
disconnect: () => Promise<void>;
|
|
80
|
-
reconnect: () => Promise<void>;
|
|
81
|
-
setActiveProvider: () => Promise<void>;
|
|
82
|
-
setActiveAccount: (account: string) => Promise<void>;
|
|
83
|
-
metadata: {
|
|
84
|
-
id: PROVIDER_ID;
|
|
85
|
-
name: string;
|
|
86
|
-
icon: string;
|
|
87
|
-
isWalletConnect: boolean;
|
|
88
|
-
};
|
|
89
|
-
} | {
|
|
90
|
-
accounts: import("../types").Account[];
|
|
91
|
-
isActive: boolean;
|
|
92
|
-
isConnected: boolean;
|
|
93
|
-
connect: () => Promise<void>;
|
|
94
|
-
disconnect: () => Promise<void>;
|
|
95
|
-
reconnect: () => Promise<void>;
|
|
96
|
-
setActiveProvider: () => Promise<void>;
|
|
97
|
-
setActiveAccount: (account: string) => Promise<void>;
|
|
98
|
-
metadata: {
|
|
99
|
-
id: PROVIDER_ID;
|
|
100
|
-
name: string;
|
|
101
|
-
icon: string;
|
|
102
|
-
isWalletConnect: boolean;
|
|
103
|
-
};
|
|
104
|
-
} | {
|
|
105
|
-
accounts: import("../types").Account[];
|
|
106
|
-
isActive: boolean;
|
|
107
|
-
isConnected: boolean;
|
|
108
|
-
connect: () => Promise<void>;
|
|
109
|
-
disconnect: () => Promise<void>;
|
|
110
|
-
reconnect: () => Promise<void>;
|
|
111
|
-
setActiveProvider: () => Promise<void>;
|
|
112
|
-
setActiveAccount: (account: string) => Promise<void>;
|
|
113
|
-
metadata: {
|
|
114
|
-
id: PROVIDER_ID;
|
|
115
|
-
name: string;
|
|
116
|
-
icon: string;
|
|
117
|
-
isWalletConnect: boolean;
|
|
118
|
-
};
|
|
119
|
-
})[] | null;
|
|
14
|
+
providers: Provider[] | null;
|
|
120
15
|
connectedAccounts: import("../types").Account[];
|
|
121
16
|
connectedActiveAccounts: import("../types").Account[];
|
|
122
17
|
activeAccount: import("../types").Account | null;
|