@manahippo/aptos-wallet-adapter 0.2.0 → 0.3.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 (84) hide show
  1. package/README.md +21 -19
  2. package/dist/WalletAdapters/AptosWallet.d.ts +18 -7
  3. package/dist/WalletAdapters/AptosWallet.d.ts.map +1 -1
  4. package/dist/WalletAdapters/AptosWallet.js +47 -32
  5. package/dist/WalletAdapters/AptosWallet.js.map +1 -1
  6. package/dist/WalletAdapters/BaseAdapter.d.ts +10 -6
  7. package/dist/WalletAdapters/BaseAdapter.d.ts.map +1 -1
  8. package/dist/WalletAdapters/BaseAdapter.js.map +1 -1
  9. package/dist/WalletAdapters/FewchaWallet.d.ts +7 -4
  10. package/dist/WalletAdapters/FewchaWallet.d.ts.map +1 -1
  11. package/dist/WalletAdapters/FewchaWallet.js +90 -88
  12. package/dist/WalletAdapters/FewchaWallet.js.map +1 -1
  13. package/dist/WalletAdapters/HippoExtensionWallet.d.ts +8 -4
  14. package/dist/WalletAdapters/HippoExtensionWallet.d.ts.map +1 -1
  15. package/dist/WalletAdapters/HippoExtensionWallet.js +27 -5
  16. package/dist/WalletAdapters/HippoExtensionWallet.js.map +1 -1
  17. package/dist/WalletAdapters/HippoWallet.d.ts +7 -4
  18. package/dist/WalletAdapters/HippoWallet.d.ts.map +1 -1
  19. package/dist/WalletAdapters/HippoWallet.js +28 -2
  20. package/dist/WalletAdapters/HippoWallet.js.map +1 -1
  21. package/dist/WalletAdapters/MartianWallet.d.ts +11 -6
  22. package/dist/WalletAdapters/MartianWallet.d.ts.map +1 -1
  23. package/dist/WalletAdapters/MartianWallet.js +51 -35
  24. package/dist/WalletAdapters/MartianWallet.js.map +1 -1
  25. package/dist/WalletAdapters/NightlyWallet.d.ts +1 -41
  26. package/dist/WalletAdapters/NightlyWallet.d.ts.map +1 -1
  27. package/dist/WalletAdapters/NightlyWallet.js +232 -198
  28. package/dist/WalletAdapters/NightlyWallet.js.map +1 -1
  29. package/dist/WalletAdapters/PontemWallet.d.ts +57 -0
  30. package/dist/WalletAdapters/PontemWallet.d.ts.map +1 -0
  31. package/dist/WalletAdapters/PontemWallet.js +182 -0
  32. package/dist/WalletAdapters/PontemWallet.js.map +1 -0
  33. package/dist/WalletAdapters/SpikaWallet.d.ts +46 -0
  34. package/dist/WalletAdapters/SpikaWallet.d.ts.map +1 -0
  35. package/dist/WalletAdapters/{MultiMaskWallet.js → SpikaWallet.js} +72 -83
  36. package/dist/WalletAdapters/SpikaWallet.js.map +1 -0
  37. package/dist/WalletAdapters/index.d.ts +2 -2
  38. package/dist/WalletAdapters/index.d.ts.map +1 -1
  39. package/dist/WalletAdapters/index.js +3 -2
  40. package/dist/WalletAdapters/index.js.map +1 -1
  41. package/dist/WalletProviders/WalletProvider.d.ts +0 -1
  42. package/dist/WalletProviders/WalletProvider.d.ts.map +1 -1
  43. package/dist/WalletProviders/WalletProvider.js +10 -7
  44. package/dist/WalletProviders/WalletProvider.js.map +1 -1
  45. package/dist/WalletProviders/useWallet.d.ts +5 -3
  46. package/dist/WalletProviders/useWallet.d.ts.map +1 -1
  47. package/dist/WalletProviders/useWallet.js +1 -1
  48. package/dist/WalletProviders/useWallet.js.map +1 -1
  49. package/dist/config/aptosConstants.d.ts +2 -2
  50. package/dist/config/aptosConstants.d.ts.map +1 -1
  51. package/dist/config/aptosConstants.js +1 -1
  52. package/dist/config/aptosConstants.js.map +1 -1
  53. package/dist/hooks/useLocalStorage.d.ts.map +1 -1
  54. package/dist/hooks/useLocalStorage.js +9 -4
  55. package/dist/hooks/useLocalStorage.js.map +1 -1
  56. package/dist/hooks/useSSR.d.ts +4 -0
  57. package/dist/hooks/useSSR.d.ts.map +1 -0
  58. package/dist/hooks/useSSR.js +17 -0
  59. package/dist/hooks/useSSR.js.map +1 -0
  60. package/dist/utilities/util.d.ts +8 -0
  61. package/dist/utilities/util.d.ts.map +1 -0
  62. package/dist/utilities/util.js +14 -0
  63. package/dist/utilities/util.js.map +1 -0
  64. package/package.json +10 -10
  65. package/src/WalletAdapters/AptosWallet.ts +63 -37
  66. package/src/WalletAdapters/BaseAdapter.ts +14 -16
  67. package/src/WalletAdapters/FewchaWallet.ts +97 -81
  68. package/src/WalletAdapters/HippoExtensionWallet.ts +32 -9
  69. package/src/WalletAdapters/HippoWallet.ts +35 -7
  70. package/src/WalletAdapters/MartianWallet.ts +57 -42
  71. package/src/WalletAdapters/NightlyWallet.ts +230 -229
  72. package/src/WalletAdapters/PontemWallet.ts +250 -0
  73. package/src/WalletAdapters/SpikaWallet.ts +229 -0
  74. package/src/WalletAdapters/index.ts +3 -2
  75. package/src/WalletProviders/WalletProvider.tsx +12 -10
  76. package/src/WalletProviders/useWallet.ts +7 -14
  77. package/src/config/aptosConstants.ts +1 -1
  78. package/src/hooks/useLocalStorage.ts +9 -4
  79. package/src/hooks/useSSR.ts +15 -0
  80. package/src/utilities/util.ts +11 -0
  81. package/dist/WalletAdapters/MultiMaskWallet.d.ts +0 -39
  82. package/dist/WalletAdapters/MultiMaskWallet.d.ts.map +0 -1
  83. package/dist/WalletAdapters/MultiMaskWallet.js.map +0 -1
  84. package/src/WalletAdapters/MultiMaskWallet.ts +0 -245
@@ -1,39 +0,0 @@
1
- import { PendingTransaction, SubmitTransactionRequest, TransactionPayload } from 'aptos/dist/api/data-contracts';
2
- import { AccountKeys, BaseWalletAdapter, PublicKey, WalletName, WalletReadyState } from './BaseAdapter';
3
- interface IMultiMaskWallet {
4
- currentProvider: {
5
- enable: () => Promise<PublicKey[]>;
6
- sendAsync(payload: any, callback: (error: Error | null, result?: any) => void): void;
7
- };
8
- request: (params?: any) => Promise<any>;
9
- publicKey?: string;
10
- isConnected?: boolean;
11
- signGenericTransaction(transaction: any): Promise<void>;
12
- disconnect(): Promise<void>;
13
- }
14
- export declare const MultiMaskWalletName: WalletName<"MultiMaskWallet">;
15
- export interface MultiMaskWalletAdapterConfig {
16
- provider?: IMultiMaskWallet;
17
- timeout?: number;
18
- }
19
- export declare class MultiMaskWalletAdapter extends BaseWalletAdapter {
20
- name: WalletName<"MultiMaskWallet">;
21
- url: string;
22
- icon: string;
23
- protected _provider: IMultiMaskWallet | undefined;
24
- protected _timeout: number;
25
- protected _readyState: WalletReadyState;
26
- protected _connecting: boolean;
27
- protected _wallet: any | null;
28
- constructor({ timeout }?: MultiMaskWalletAdapterConfig);
29
- get publicAccount(): AccountKeys;
30
- get connecting(): boolean;
31
- get connected(): boolean;
32
- get readyState(): WalletReadyState;
33
- connect(): Promise<void>;
34
- disconnect(): Promise<void>;
35
- signTransaction(transaction: TransactionPayload): Promise<SubmitTransactionRequest>;
36
- signAndSubmitTransaction(tempTransaction: TransactionPayload): Promise<PendingTransaction>;
37
- }
38
- export {};
39
- //# sourceMappingURL=MultiMaskWallet.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MultiMaskWallet.d.ts","sourceRoot":"","sources":["../../src/WalletAdapters/MultiMaskWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAElB,wBAAwB,EACxB,kBAAkB,EACnB,MAAM,+BAA+B,CAAC;AAOvC,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,SAAS,EAET,UAAU,EACV,gBAAgB,EACjB,MAAM,eAAe,CAAC;AAEvB,UAAU,gBAAgB;IACxB,eAAe,EAAE;QACf,MAAM,EAAE,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;QACnC,SAAS,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,GAAG,KAAK,IAAI,GAAG,IAAI,CAAC;KACtF,CAAC;IACF,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,sBAAsB,CAAC,WAAW,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExD,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAQD,eAAO,MAAM,mBAAmB,+BAAqD,CAAC;AAEtF,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAE5B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,sBAAuB,SAAQ,iBAAiB;IAC3D,IAAI,gCAAuB;IAE3B,GAAG,SAAuE;IAE1E,IAAI,SAA6D;IAEjE,SAAS,CAAC,SAAS,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAGlD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE3B,SAAS,CAAC,WAAW,EAAE,gBAAgB,CAGJ;IAEnC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC;IAE/B,SAAS,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAAC;gBAElB,EAGV,OAAe,EAChB,GAAE,4BAAiC;IAqBpC,IAAI,aAAa,IAAI,WAAW,CAM/B;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,UAAU,IAAI,gBAAgB,CAEjC;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAqCxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B3B,eAAe,CAAC,WAAW,EAAE,kBAAkB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IA2BnF,wBAAwB,CAAC,eAAe,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAwCjG"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"MultiMaskWallet.js","sourceRoot":"","sources":["../../src/WalletAdapters/MultiMaskWallet.ts"],"names":[],"mappings":"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"}
@@ -1,245 +0,0 @@
1
- import {
2
- PendingTransaction,
3
- ScriptFunctionPayload,
4
- SubmitTransactionRequest,
5
- TransactionPayload
6
- } from 'aptos/dist/api/data-contracts';
7
- import {
8
- WalletDisconnectionError,
9
- WalletNotConnectedError,
10
- WalletNotReadyError,
11
- WalletSignTransactionError
12
- } from '../WalletProviders/errors';
13
- import {
14
- AccountKeys,
15
- BaseWalletAdapter,
16
- PublicKey,
17
- scopePollingDetectionStrategy,
18
- WalletName,
19
- WalletReadyState
20
- } from './BaseAdapter';
21
-
22
- interface IMultiMaskWallet {
23
- currentProvider: {
24
- enable: () => Promise<PublicKey[]>;
25
- sendAsync(payload: any, callback: (error: Error | null, result?: any) => void): void;
26
- };
27
- request: (params?: any) => Promise<any>;
28
- publicKey?: string;
29
- isConnected?: boolean;
30
- signGenericTransaction(transaction: any): Promise<void>;
31
- // signTransaction(transaction: any): Promise<void>;
32
- disconnect(): Promise<void>;
33
- }
34
-
35
- interface MultiMaskWindow extends Window {
36
- aptosWeb3?: IMultiMaskWallet;
37
- }
38
-
39
- declare const window: MultiMaskWindow;
40
-
41
- export const MultiMaskWalletName = 'MultiMaskWallet' as WalletName<'MultiMaskWallet'>;
42
-
43
- export interface MultiMaskWalletAdapterConfig {
44
- provider?: IMultiMaskWallet;
45
- // network?: WalletAdapterNetwork;
46
- timeout?: number;
47
- }
48
-
49
- export class MultiMaskWalletAdapter extends BaseWalletAdapter {
50
- name = MultiMaskWalletName;
51
-
52
- url = 'https://github.com/pontem-network/aptos-chrome-extension/releases';
53
-
54
- icon = 'https://liquidswap.pontem.network/img/logo.87454209.svg';
55
-
56
- protected _provider: IMultiMaskWallet | undefined;
57
-
58
- // protected _network: WalletAdapterNetwork;
59
- protected _timeout: number;
60
-
61
- protected _readyState: WalletReadyState =
62
- typeof window === 'undefined' || typeof document === 'undefined'
63
- ? WalletReadyState.Unsupported
64
- : WalletReadyState.NotDetected;
65
-
66
- protected _connecting: boolean;
67
-
68
- protected _wallet: any | null;
69
-
70
- constructor({
71
- // provider,
72
- // network = WalletAdapterNetwork.Mainnet,
73
- timeout = 10000
74
- }: MultiMaskWalletAdapterConfig = {}) {
75
- super();
76
-
77
- this._provider = window.aptosWeb3;
78
- // this._network = network;
79
- this._timeout = timeout;
80
- this._connecting = false;
81
- this._wallet = null;
82
-
83
- if (this._readyState !== WalletReadyState.Unsupported) {
84
- scopePollingDetectionStrategy(() => {
85
- if (this._provider) {
86
- this._readyState = WalletReadyState.Installed;
87
- this.emit('readyStateChange', this._readyState);
88
- return true;
89
- }
90
- return false;
91
- });
92
- }
93
- }
94
-
95
- get publicAccount(): AccountKeys {
96
- return {
97
- publicKey: this._wallet?.publicKey || null,
98
- address: this._wallet?.address || null,
99
- authKey: this._wallet?.authKey || null
100
- };
101
- }
102
-
103
- get connecting(): boolean {
104
- return this._connecting;
105
- }
106
-
107
- get connected(): boolean {
108
- return !!this._wallet?.isConnected;
109
- }
110
-
111
- get readyState(): WalletReadyState {
112
- return this._readyState;
113
- }
114
-
115
- async connect(): Promise<void> {
116
- try {
117
- // console.log(1);
118
- if (this.connected || this.connecting) return;
119
- // console.log(2);
120
- if (
121
- !(
122
- this._readyState === WalletReadyState.Loadable ||
123
- this._readyState === WalletReadyState.Installed
124
- )
125
- )
126
- throw new WalletNotReadyError();
127
- // console.log(3);
128
- this._connecting = true;
129
-
130
- const provider = this._provider;
131
- // console.log(4);
132
-
133
- const wallets = await provider?.currentProvider.enable();
134
- if (wallets && wallets.length) {
135
- this._wallet = {
136
- publicKey: wallets[0],
137
- isConnected: true
138
- };
139
- // console.log(9, this._wallet);
140
- this.emit('connect', this._wallet);
141
- }
142
- } catch (error: any) {
143
- // console.log(10, error);
144
- this.emit('error', error);
145
- throw error;
146
- } finally {
147
- // console.log(11);
148
- this._connecting = false;
149
- }
150
- }
151
-
152
- async disconnect(): Promise<void> {
153
- const wallet = this._wallet;
154
- if (wallet) {
155
- this._wallet = null;
156
-
157
- try {
158
- await new Promise<void>((resolve, reject) => {
159
- const timeout = setTimeout(() => resolve(), 250);
160
-
161
- try {
162
- wallet.disconnect(() => {
163
- clearTimeout(timeout);
164
- resolve();
165
- });
166
- } catch (err) {
167
- reject(err);
168
- }
169
- });
170
- } catch (error: any) {
171
- this.emit('error', new WalletDisconnectionError(error?.message, error));
172
- }
173
- }
174
-
175
- this.emit('disconnect');
176
- }
177
-
178
- async signTransaction(transaction: TransactionPayload): Promise<SubmitTransactionRequest> {
179
- try {
180
- const wallet = this._wallet;
181
- if (!wallet) throw new WalletNotConnectedError();
182
-
183
- try {
184
- const response = await new Promise<SubmitTransactionRequest>((resolve, reject) => {
185
- wallet.signGenericTransaction(transaction, (resp: any) => {
186
- // console.log('signTransaction', resp);
187
- if (resp.status === 200) {
188
- // console.log('Transaction is Signed successfully.');
189
- resolve(resp);
190
- } else {
191
- reject(resp.message);
192
- }
193
- });
194
- });
195
- return response;
196
- } catch (error: any) {
197
- throw new WalletSignTransactionError(error?.message, error);
198
- }
199
- } catch (error: any) {
200
- this.emit('error', error);
201
- throw error;
202
- }
203
- }
204
-
205
- async signAndSubmitTransaction(tempTransaction: TransactionPayload): Promise<PendingTransaction> {
206
- try {
207
- const wallet = this._provider;
208
- if (!wallet) throw new WalletNotConnectedError();
209
- const transaction = tempTransaction as ScriptFunctionPayload;
210
-
211
- try {
212
- // console.log('trans', 1);
213
- const response = await new Promise<PendingTransaction>((resolve, reject) => {
214
- // const args = [...transaction.type_arguments, transaction.arguments[0] / 1000];
215
- // console.log('trans 2', transaction, transaction.function.split(':')[0]);
216
- wallet.currentProvider.sendAsync(
217
- {
218
- method: 'eth_sendTransaction',
219
- params: [{ from: transaction.function.split(':')[0] }]
220
- },
221
- (error, resp: any) => {
222
- console.log('signTransaction', error, resp);
223
- if (error) {
224
- reject(error.message);
225
- } else {
226
- resolve(resp);
227
- }
228
- // if (resp.status === 200) {
229
- // // console.log('Transaction is Signed successfully.');
230
- // } else {
231
- // reject(resp.message);
232
- // }
233
- }
234
- );
235
- });
236
- return response;
237
- } catch (error: any) {
238
- throw new WalletSignTransactionError(error);
239
- }
240
- } catch (error: any) {
241
- this.emit('error', error);
242
- throw error;
243
- }
244
- }
245
- }