@txnlab/use-wallet 1.3.1 → 2.0.0-alpha.0

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.
Files changed (108) hide show
  1. package/README.md +490 -188
  2. package/dist/cjs/index.js +231 -129
  3. package/dist/cjs/index.js.map +1 -1
  4. package/dist/cjs/jest.config.d.ts +7 -0
  5. package/dist/cjs/src/clients/algosigner/client.d.ts +3 -3
  6. package/dist/cjs/src/clients/algosigner/types.d.ts +2 -8
  7. package/dist/cjs/src/clients/base/base.d.ts +3 -2
  8. package/dist/cjs/src/clients/base/index.d.ts +2 -2
  9. package/dist/cjs/src/clients/daffi/client.d.ts +5 -4
  10. package/dist/cjs/src/clients/daffi/types.d.ts +5 -7
  11. package/dist/cjs/src/clients/defly/client.d.ts +6 -5
  12. package/dist/cjs/src/clients/defly/types.d.ts +5 -7
  13. package/dist/cjs/src/clients/exodus/client.d.ts +6 -5
  14. package/dist/cjs/src/clients/exodus/types.d.ts +5 -10
  15. package/dist/cjs/src/clients/index.d.ts +1 -1
  16. package/dist/cjs/src/clients/kmd/client.d.ts +4 -5
  17. package/dist/cjs/src/clients/kmd/types.d.ts +4 -9
  18. package/dist/cjs/src/clients/mnemonic/client.d.ts +4 -5
  19. package/dist/cjs/src/clients/mnemonic/types.d.ts +2 -9
  20. package/dist/cjs/src/clients/myalgo/client.d.ts +6 -5
  21. package/dist/cjs/src/clients/myalgo/types.d.ts +10 -12
  22. package/dist/cjs/src/clients/pera/client.d.ts +6 -5
  23. package/dist/cjs/src/clients/pera/types.d.ts +5 -7
  24. package/dist/cjs/src/clients/{walletconnect → walletconnect2}/client.d.ts +8 -7
  25. package/dist/cjs/src/clients/walletconnect2/constants.d.ts +6 -0
  26. package/dist/cjs/src/clients/walletconnect2/index.d.ts +2 -0
  27. package/dist/cjs/src/clients/walletconnect2/types.d.ts +38 -0
  28. package/dist/cjs/src/clients/walletconnect2/utils.d.ts +2 -0
  29. package/dist/cjs/src/hooks/index.d.ts +1 -0
  30. package/dist/cjs/src/hooks/useInitializeProviders.d.ts +9 -0
  31. package/dist/cjs/src/hooks/useInitializeProviders.test.d.ts +4 -0
  32. package/dist/cjs/src/hooks/useWallet.d.ts +4 -13
  33. package/dist/cjs/src/hooks/useWallet.test.d.ts +4 -0
  34. package/dist/cjs/src/index.d.ts +1 -1
  35. package/dist/cjs/src/store/state/clientStore.d.ts +2 -23
  36. package/dist/cjs/src/testUtils/createWrapper.d.ts +6 -0
  37. package/dist/cjs/src/testUtils/mockAccounts.d.ts +3 -0
  38. package/dist/cjs/src/testUtils/mockClients.d.ts +33 -0
  39. package/dist/cjs/src/types/index.d.ts +1 -0
  40. package/dist/cjs/src/types/node.d.ts +2 -1
  41. package/dist/cjs/src/types/providers.d.ts +71 -0
  42. package/dist/cjs/src/types/wallet.d.ts +5 -3
  43. package/dist/cjs/src/utils/clearAccounts.d.ts +1 -1
  44. package/dist/cjs/src/utils/encodeNFDTransactionArray.spec.d.ts +1 -0
  45. package/dist/cjs/src/utils/initializeProviders.d.ts +2 -12
  46. package/dist/cjs/src/utils/initializeProviders.test.d.ts +4 -0
  47. package/dist/cjs/src/utils/providers.d.ts +1 -1
  48. package/dist/cjs/src/utils/providers.spec.d.ts +1 -0
  49. package/dist/cjs/src/utils/reconnectProviders.d.ts +1 -5
  50. package/dist/cjs/src/utils/reconnectProviders.test.d.ts +1 -0
  51. package/dist/cjs/src/utils/types.d.ts +2 -0
  52. package/dist/esm/index.js +231 -130
  53. package/dist/esm/jest.config.d.ts +7 -0
  54. package/dist/esm/src/clients/algosigner/client.d.ts +3 -3
  55. package/dist/esm/src/clients/algosigner/types.d.ts +2 -8
  56. package/dist/esm/src/clients/base/base.d.ts +3 -2
  57. package/dist/esm/src/clients/base/index.d.ts +2 -2
  58. package/dist/esm/src/clients/daffi/client.d.ts +5 -4
  59. package/dist/esm/src/clients/daffi/types.d.ts +5 -7
  60. package/dist/esm/src/clients/defly/client.d.ts +6 -5
  61. package/dist/esm/src/clients/defly/types.d.ts +5 -7
  62. package/dist/esm/src/clients/exodus/client.d.ts +6 -5
  63. package/dist/esm/src/clients/exodus/types.d.ts +5 -10
  64. package/dist/esm/src/clients/index.d.ts +1 -1
  65. package/dist/esm/src/clients/kmd/client.d.ts +4 -5
  66. package/dist/esm/src/clients/kmd/types.d.ts +4 -9
  67. package/dist/esm/src/clients/mnemonic/client.d.ts +4 -5
  68. package/dist/esm/src/clients/mnemonic/types.d.ts +2 -9
  69. package/dist/esm/src/clients/myalgo/client.d.ts +6 -5
  70. package/dist/esm/src/clients/myalgo/types.d.ts +10 -12
  71. package/dist/esm/src/clients/pera/client.d.ts +6 -5
  72. package/dist/esm/src/clients/pera/types.d.ts +5 -7
  73. package/dist/esm/src/clients/{walletconnect → walletconnect2}/client.d.ts +8 -7
  74. package/dist/esm/src/clients/walletconnect2/constants.d.ts +6 -0
  75. package/dist/esm/src/clients/walletconnect2/index.d.ts +2 -0
  76. package/dist/esm/src/clients/walletconnect2/types.d.ts +38 -0
  77. package/dist/esm/src/clients/walletconnect2/utils.d.ts +2 -0
  78. package/dist/esm/src/hooks/index.d.ts +1 -0
  79. package/dist/esm/src/hooks/useInitializeProviders.d.ts +9 -0
  80. package/dist/esm/src/hooks/useInitializeProviders.test.d.ts +4 -0
  81. package/dist/esm/src/hooks/useWallet.d.ts +4 -13
  82. package/dist/esm/src/hooks/useWallet.test.d.ts +4 -0
  83. package/dist/esm/src/index.d.ts +1 -1
  84. package/dist/esm/src/store/state/clientStore.d.ts +2 -23
  85. package/dist/esm/src/testUtils/createWrapper.d.ts +6 -0
  86. package/dist/esm/src/testUtils/mockAccounts.d.ts +3 -0
  87. package/dist/esm/src/testUtils/mockClients.d.ts +33 -0
  88. package/dist/esm/src/types/index.d.ts +1 -0
  89. package/dist/esm/src/types/node.d.ts +2 -1
  90. package/dist/esm/src/types/providers.d.ts +71 -0
  91. package/dist/esm/src/types/wallet.d.ts +5 -3
  92. package/dist/esm/src/utils/clearAccounts.d.ts +1 -1
  93. package/dist/esm/src/utils/encodeNFDTransactionArray.spec.d.ts +1 -0
  94. package/dist/esm/src/utils/initializeProviders.d.ts +2 -12
  95. package/dist/esm/src/utils/initializeProviders.test.d.ts +4 -0
  96. package/dist/esm/src/utils/providers.d.ts +1 -1
  97. package/dist/esm/src/utils/providers.spec.d.ts +1 -0
  98. package/dist/esm/src/utils/reconnectProviders.d.ts +1 -5
  99. package/dist/esm/src/utils/reconnectProviders.test.d.ts +1 -0
  100. package/dist/esm/src/utils/types.d.ts +2 -0
  101. package/dist/index.d.ts +240 -254
  102. package/package.json +17 -18
  103. package/dist/cjs/src/clients/walletconnect/constants.d.ts +0 -2
  104. package/dist/cjs/src/clients/walletconnect/index.d.ts +0 -2
  105. package/dist/cjs/src/clients/walletconnect/types.d.ts +0 -55
  106. package/dist/esm/src/clients/walletconnect/constants.d.ts +0 -2
  107. package/dist/esm/src/clients/walletconnect/index.d.ts +0 -2
  108. package/dist/esm/src/clients/walletconnect/types.d.ts +0 -55
package/package.json CHANGED
@@ -12,7 +12,7 @@
12
12
  "url": "https://github.com/txnlab/use-wallet/issues"
13
13
  },
14
14
  "homepage": "https://txnlab.github.io/use-wallet",
15
- "version": "1.3.1",
15
+ "version": "2.0.0-alpha.0",
16
16
  "description": "React hooks for using Algorand compatible wallets in dApps.",
17
17
  "scripts": {
18
18
  "dev": "yarn storybook",
@@ -33,28 +33,29 @@
33
33
  "@babel/preset-typescript": "^7.16.0",
34
34
  "@blockshake/defly-connect": "^1.1.2",
35
35
  "@daffiwallet/connect": "^1.0.3",
36
- "@json-rpc-tools/utils": "^1.7.6",
37
36
  "@mdx-js/react": "^2.1.2",
38
37
  "@perawallet/connect": "^1.2.1",
39
38
  "@randlabs/myalgo-connect": "^1.4.2",
40
39
  "@rollup/plugin-commonjs": "^23.0.2",
41
40
  "@rollup/plugin-json": "^5.0.1",
42
41
  "@rollup/plugin-node-resolve": "^15.0.1",
43
- "@storybook/addon-actions": "^6.5.9",
44
- "@storybook/addon-essentials": "^6.5.9",
45
- "@storybook/addon-links": "^6.5.9",
46
- "@storybook/builder-webpack5": "^6.5.9",
47
- "@storybook/manager-webpack5": "^6.5.9",
42
+ "@storybook/addon-actions": "^6.5.16",
43
+ "@storybook/addon-essentials": "^6.5.16",
44
+ "@storybook/addon-links": "^6.5.16",
45
+ "@storybook/builder-webpack5": "^6.5.16",
46
+ "@storybook/manager-webpack5": "^6.5.16",
48
47
  "@storybook/preset-scss": "^1.0.3",
49
- "@storybook/react": "^6.5.9",
48
+ "@storybook/react": "^6.5.16",
50
49
  "@testing-library/react": "^13.3.0",
51
50
  "@types/big.js": "^6.1.6",
52
51
  "@types/jest": "^29.1.2",
53
52
  "@types/react": "^18.0.15",
54
53
  "@typescript-eslint/eslint-plugin": "^5.55.0",
55
54
  "@typescript-eslint/parser": "^5.55.0",
56
- "@walletconnect/client": "^1.8.0",
57
- "algorand-walletconnect-qrcode-modal": "^1.8.0",
55
+ "@walletconnect/modal": "^2.4.7",
56
+ "@walletconnect/sign-client": "^2.8.1",
57
+ "@walletconnect/types": "^2.8.1",
58
+ "@walletconnect/utils": "^2.8.1",
58
59
  "algosdk": "^2.1.0",
59
60
  "babel-jest": "^29.1.2",
60
61
  "babel-loader": "^8.2.3",
@@ -72,6 +73,7 @@
72
73
  "html-webpack-plugin": "^5.5.0",
73
74
  "identity-obj-proxy": "^3.0.0",
74
75
  "jest": "^29.1.2",
76
+ "jest-canvas-mock": "^2.5.0",
75
77
  "jest-environment-jsdom": "^29.3.1",
76
78
  "postcss": "^8.4.17",
77
79
  "react": "^18.2.0",
@@ -87,6 +89,7 @@
87
89
  "sass-loader": "^13.1.0",
88
90
  "style-loader": "^3.3.1",
89
91
  "ts-node": "^10.9.1",
92
+ "tsconfig-paths-webpack-plugin": "^4.0.1",
90
93
  "tslib": "^2.4.0",
91
94
  "typescript": "^4.8.4",
92
95
  "utf-8-validate": "^6.0.3"
@@ -94,11 +97,10 @@
94
97
  "peerDependencies": {
95
98
  "@blockshake/defly-connect": "^1.1.2",
96
99
  "@daffiwallet/connect": "^1.0.3",
97
- "@json-rpc-tools/utils": "^1.7.6",
98
100
  "@perawallet/connect": "^1.2.1",
99
101
  "@randlabs/myalgo-connect": "^1.4.2",
100
- "@walletconnect/client": "^1.8.0",
101
- "algorand-walletconnect-qrcode-modal": "^1.8.0",
102
+ "@walletconnect/modal": "^2.4.7",
103
+ "@walletconnect/sign-client": "^2.8.1",
102
104
  "algosdk": "^2.1.0",
103
105
  "react": "^18.2.0",
104
106
  "react-dom": "^18.2.0"
@@ -110,19 +112,16 @@
110
112
  "@daffiwallet/connect": {
111
113
  "optional": true
112
114
  },
113
- "@json-rpc-tools/utils": {
114
- "optional": true
115
- },
116
115
  "@perawallet/connect": {
117
116
  "optional": true
118
117
  },
119
118
  "@randlabs/myalgo-connect": {
120
119
  "optional": true
121
120
  },
122
- "@walletconnect/client": {
121
+ "@walletconnect/sign-client": {
123
122
  "optional": true
124
123
  },
125
- "algorand-walletconnect-qrcode-modal": {
124
+ "@walletconnect/modal": {
126
125
  "optional": true
127
126
  }
128
127
  },
@@ -1,2 +0,0 @@
1
- export declare const ICON: string;
2
- export declare const DEFAULT_NETWORK = "mainnet";
@@ -1,2 +0,0 @@
1
- import walletconnect from './client';
2
- export default walletconnect;
@@ -1,55 +0,0 @@
1
- import type _algosdk from 'algosdk';
2
- import type WalletConnect from '@walletconnect/client';
3
- import type QRCodeModal from 'algorand-walletconnect-qrcode-modal';
4
- import type { AlgodClientOptions, Network, Metadata } from '../../types';
5
- export interface IClientMeta {
6
- description: string;
7
- url: string;
8
- icons: string[];
9
- name: string;
10
- }
11
- export interface IWalletConnectSession {
12
- connected: boolean;
13
- accounts: string[];
14
- chainId: number;
15
- bridge: string;
16
- key: string;
17
- clientId: string;
18
- clientMeta: IClientMeta | null;
19
- peerId: string;
20
- peerMeta: IClientMeta | null;
21
- handshakeId: number;
22
- handshakeTopic: string;
23
- qrcodeModal: {
24
- open: (uri: string, cb: any, qrcodeModalOptions?: any) => void;
25
- close: () => void;
26
- };
27
- }
28
- export declare type ClientOptions = {
29
- bridge?: string;
30
- uri?: string;
31
- storageId?: string;
32
- signingMethods?: string[];
33
- session?: IWalletConnectSession;
34
- clientMeta?: IClientMeta;
35
- };
36
- export declare type WalletConnectTransaction = {
37
- txn: string;
38
- message?: string;
39
- signers?: string[] | [];
40
- };
41
- export declare type InitParams = {
42
- clientOptions?: ClientOptions;
43
- algodOptions?: AlgodClientOptions;
44
- clientStatic?: typeof WalletConnect;
45
- modalStatic?: typeof QRCodeModal;
46
- algosdkStatic?: typeof _algosdk;
47
- network?: Network;
48
- };
49
- export declare type WalletConnectClientConstructor = {
50
- metadata: Metadata;
51
- client: WalletConnect;
52
- algosdk: typeof _algosdk;
53
- algodClient: _algosdk.Algodv2;
54
- network: Network;
55
- };
@@ -1,2 +0,0 @@
1
- export declare const ICON: string;
2
- export declare const DEFAULT_NETWORK = "mainnet";
@@ -1,2 +0,0 @@
1
- import walletconnect from './client';
2
- export default walletconnect;
@@ -1,55 +0,0 @@
1
- import type _algosdk from 'algosdk';
2
- import type WalletConnect from '@walletconnect/client';
3
- import type QRCodeModal from 'algorand-walletconnect-qrcode-modal';
4
- import type { AlgodClientOptions, Network, Metadata } from '../../types';
5
- export interface IClientMeta {
6
- description: string;
7
- url: string;
8
- icons: string[];
9
- name: string;
10
- }
11
- export interface IWalletConnectSession {
12
- connected: boolean;
13
- accounts: string[];
14
- chainId: number;
15
- bridge: string;
16
- key: string;
17
- clientId: string;
18
- clientMeta: IClientMeta | null;
19
- peerId: string;
20
- peerMeta: IClientMeta | null;
21
- handshakeId: number;
22
- handshakeTopic: string;
23
- qrcodeModal: {
24
- open: (uri: string, cb: any, qrcodeModalOptions?: any) => void;
25
- close: () => void;
26
- };
27
- }
28
- export declare type ClientOptions = {
29
- bridge?: string;
30
- uri?: string;
31
- storageId?: string;
32
- signingMethods?: string[];
33
- session?: IWalletConnectSession;
34
- clientMeta?: IClientMeta;
35
- };
36
- export declare type WalletConnectTransaction = {
37
- txn: string;
38
- message?: string;
39
- signers?: string[] | [];
40
- };
41
- export declare type InitParams = {
42
- clientOptions?: ClientOptions;
43
- algodOptions?: AlgodClientOptions;
44
- clientStatic?: typeof WalletConnect;
45
- modalStatic?: typeof QRCodeModal;
46
- algosdkStatic?: typeof _algosdk;
47
- network?: Network;
48
- };
49
- export declare type WalletConnectClientConstructor = {
50
- metadata: Metadata;
51
- client: WalletConnect;
52
- algosdk: typeof _algosdk;
53
- algodClient: _algosdk.Algodv2;
54
- network: Network;
55
- };