@txnlab/use-wallet 1.3.2 → 2.0.0-alpha.1

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 +509 -188
  2. package/dist/cjs/index.js +234 -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 +37 -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 +234 -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 +37 -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 +239 -254
  102. package/package.json +15 -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.2",
15
+ "version": "2.0.0-alpha.1",
16
16
  "description": "React hooks for using Algorand compatible wallets in dApps.",
17
17
  "scripts": {
18
18
  "dev": "yarn storybook",
@@ -33,28 +33,27 @@
33
33
  "@babel/preset-typescript": "^7.16.0",
34
34
  "@blockshake/defly-connect": "^1.1.3",
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",
58
57
  "algosdk": "^2.1.0",
59
58
  "babel-jest": "^29.1.2",
60
59
  "babel-loader": "^8.2.3",
@@ -72,6 +71,7 @@
72
71
  "html-webpack-plugin": "^5.5.0",
73
72
  "identity-obj-proxy": "^3.0.0",
74
73
  "jest": "^29.1.2",
74
+ "jest-canvas-mock": "^2.5.0",
75
75
  "jest-environment-jsdom": "^29.3.1",
76
76
  "postcss": "^8.4.17",
77
77
  "react": "^18.2.0",
@@ -87,6 +87,7 @@
87
87
  "sass-loader": "^13.1.0",
88
88
  "style-loader": "^3.3.1",
89
89
  "ts-node": "^10.9.1",
90
+ "tsconfig-paths-webpack-plugin": "^4.0.1",
90
91
  "tslib": "^2.4.0",
91
92
  "typescript": "^4.8.4",
92
93
  "utf-8-validate": "^6.0.3"
@@ -94,11 +95,10 @@
94
95
  "peerDependencies": {
95
96
  "@blockshake/defly-connect": "^1.1.3",
96
97
  "@daffiwallet/connect": "^1.0.3",
97
- "@json-rpc-tools/utils": "^1.7.6",
98
98
  "@perawallet/connect": "^1.2.1",
99
99
  "@randlabs/myalgo-connect": "^1.4.2",
100
- "@walletconnect/client": "^1.8.0",
101
- "algorand-walletconnect-qrcode-modal": "^1.8.0",
100
+ "@walletconnect/modal": "^2.4.7",
101
+ "@walletconnect/sign-client": "^2.8.1",
102
102
  "algosdk": "^2.1.0",
103
103
  "react": "^18.2.0",
104
104
  "react-dom": "^18.2.0"
@@ -110,19 +110,16 @@
110
110
  "@daffiwallet/connect": {
111
111
  "optional": true
112
112
  },
113
- "@json-rpc-tools/utils": {
114
- "optional": true
115
- },
116
113
  "@perawallet/connect": {
117
114
  "optional": true
118
115
  },
119
116
  "@randlabs/myalgo-connect": {
120
117
  "optional": true
121
118
  },
122
- "@walletconnect/client": {
119
+ "@walletconnect/sign-client": {
123
120
  "optional": true
124
121
  },
125
- "algorand-walletconnect-qrcode-modal": {
122
+ "@walletconnect/modal": {
126
123
  "optional": true
127
124
  }
128
125
  },
@@ -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
- };