@manahippo/aptos-wallet-adapter 0.1.19 → 0.1.20
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/dist/WalletAdapters/AptosWallet.d.ts +8 -5
- package/dist/WalletAdapters/AptosWallet.d.ts.map +1 -1
- package/dist/WalletAdapters/AptosWallet.js +21 -25
- package/dist/WalletAdapters/AptosWallet.js.map +1 -1
- package/dist/WalletAdapters/BaseAdapter.d.ts +7 -3
- package/dist/WalletAdapters/BaseAdapter.d.ts.map +1 -1
- package/dist/WalletAdapters/BaseAdapter.js.map +1 -1
- package/dist/WalletAdapters/FewchaWallet.d.ts +4 -2
- package/dist/WalletAdapters/FewchaWallet.d.ts.map +1 -1
- package/dist/WalletAdapters/FewchaWallet.js +56 -56
- package/dist/WalletAdapters/FewchaWallet.js.map +1 -1
- package/dist/WalletAdapters/HippoExtensionWallet.d.ts +4 -2
- package/dist/WalletAdapters/HippoExtensionWallet.d.ts.map +1 -1
- package/dist/WalletAdapters/HippoExtensionWallet.js +1 -1
- package/dist/WalletAdapters/HippoExtensionWallet.js.map +1 -1
- package/dist/WalletAdapters/HippoWallet.d.ts +4 -2
- package/dist/WalletAdapters/HippoWallet.d.ts.map +1 -1
- package/dist/WalletAdapters/HippoWallet.js +2 -1
- package/dist/WalletAdapters/HippoWallet.js.map +1 -1
- package/dist/WalletAdapters/MartianWallet.d.ts +7 -4
- package/dist/WalletAdapters/MartianWallet.d.ts.map +1 -1
- package/dist/WalletAdapters/MartianWallet.js +13 -24
- package/dist/WalletAdapters/MartianWallet.js.map +1 -1
- package/dist/WalletAdapters/MultiMaskWallet.d.ts +4 -2
- package/dist/WalletAdapters/MultiMaskWallet.d.ts.map +1 -1
- package/dist/WalletAdapters/MultiMaskWallet.js +1 -1
- package/dist/WalletAdapters/MultiMaskWallet.js.map +1 -1
- package/dist/WalletProviders/useWallet.d.ts +4 -2
- package/dist/WalletProviders/useWallet.d.ts.map +1 -1
- package/dist/utilities/util.js +1 -1
- package/dist/utilities/util.js.map +1 -1
- package/package.json +2 -2
- package/src/WalletAdapters/AptosWallet.ts +27 -29
- package/src/WalletAdapters/BaseAdapter.ts +6 -4
- package/src/WalletAdapters/FewchaWallet.ts +63 -67
- package/src/WalletAdapters/HippoExtensionWallet.ts +5 -3
- package/src/WalletAdapters/HippoWallet.ts +6 -4
- package/src/WalletAdapters/MartianWallet.ts +24 -29
- package/src/WalletAdapters/MultiMaskWallet.ts +7 -5
- package/src/WalletProviders/useWallet.ts +3 -3
- package/src/utilities/util.ts +1 -1
@@ -2,7 +2,7 @@ import { MaybeHexString } from 'aptos';
|
|
2
2
|
import {
|
3
3
|
TransactionPayload,
|
4
4
|
SubmitTransactionRequest,
|
5
|
-
|
5
|
+
HexEncodedBytes
|
6
6
|
} from 'aptos/dist/generated';
|
7
7
|
import { payloadV1ToV0 } from '../utilities/util';
|
8
8
|
import {
|
@@ -33,12 +33,12 @@ interface MartianAccount {
|
|
33
33
|
isConnected: boolean;
|
34
34
|
}
|
35
35
|
interface IMartianWallet {
|
36
|
-
connect: (
|
36
|
+
connect: () => Promise<ConnectMartianAccount>;
|
37
37
|
account(): Promise<MartianAccount>;
|
38
38
|
isConnected(): Promise<boolean>;
|
39
39
|
generateTransaction(sender: MaybeHexString, payload: any): Promise<any>;
|
40
|
-
signAndSubmitTransaction(transaction:
|
41
|
-
|
40
|
+
signAndSubmitTransaction(transaction: TransactionPayload): Promise<HexEncodedBytes>;
|
41
|
+
signTransaction(transaction: TransactionPayload): Promise<HexEncodedBytes>;
|
42
42
|
disconnect(): Promise<void>;
|
43
43
|
}
|
44
44
|
|
@@ -93,7 +93,7 @@ export class MartianWalletAdapter extends BaseWalletAdapter {
|
|
93
93
|
|
94
94
|
if (this._readyState !== WalletReadyState.Unsupported) {
|
95
95
|
scopePollingDetectionStrategy(() => {
|
96
|
-
if (
|
96
|
+
if (this._provider) {
|
97
97
|
this._readyState = WalletReadyState.Installed;
|
98
98
|
this.emit('readyStateChange', this._readyState);
|
99
99
|
return true;
|
@@ -125,9 +125,7 @@ export class MartianWalletAdapter extends BaseWalletAdapter {
|
|
125
125
|
|
126
126
|
async connect(): Promise<void> {
|
127
127
|
try {
|
128
|
-
// console.log(1, window.martian);
|
129
128
|
if (this.connected || this.connecting) return;
|
130
|
-
// console.log(2);
|
131
129
|
if (
|
132
130
|
!(
|
133
131
|
this._readyState === WalletReadyState.Loadable ||
|
@@ -135,37 +133,31 @@ export class MartianWalletAdapter extends BaseWalletAdapter {
|
|
135
133
|
)
|
136
134
|
)
|
137
135
|
throw new WalletNotReadyError();
|
138
|
-
// console.log(3);
|
139
136
|
this._connecting = true;
|
140
137
|
|
141
|
-
const provider = window.martian;
|
138
|
+
const provider = this._provider || window.martian;
|
142
139
|
const isConnected = await provider?.isConnected();
|
143
|
-
if (isConnected)
|
144
|
-
|
140
|
+
if (isConnected) {
|
141
|
+
await provider?.disconnect();
|
142
|
+
}
|
145
143
|
const response = await provider?.connect();
|
146
|
-
// console.log(5, response);
|
147
144
|
|
148
145
|
if (!response) {
|
149
146
|
throw new WalletNotConnectedError('No connect response');
|
150
147
|
}
|
151
148
|
|
152
149
|
const walletAccount = await provider?.account();
|
153
|
-
// console.log(6, walletAccount);
|
154
150
|
if (walletAccount) {
|
155
151
|
this._wallet = {
|
156
152
|
...walletAccount,
|
157
153
|
isConnected: true
|
158
154
|
};
|
159
|
-
// console.log(6, this._wallet);
|
160
155
|
}
|
161
|
-
// console.log(9, this._wallet?.address);
|
162
156
|
this.emit('connect', this._wallet?.address || '');
|
163
157
|
} catch (error: any) {
|
164
|
-
|
165
|
-
this.emit('error', error);
|
158
|
+
this.emit('error', new Error(error));
|
166
159
|
throw error;
|
167
160
|
} finally {
|
168
|
-
// console.log(11);
|
169
161
|
this._connecting = false;
|
170
162
|
}
|
171
163
|
}
|
@@ -189,11 +181,14 @@ export class MartianWalletAdapter extends BaseWalletAdapter {
|
|
189
181
|
async signTransaction(transactionPyld: TransactionPayload): Promise<SubmitTransactionRequest> {
|
190
182
|
try {
|
191
183
|
const wallet = this._wallet;
|
192
|
-
const provider = this._provider;
|
193
|
-
if (!wallet) throw new WalletNotConnectedError();
|
194
|
-
const tx = await provider
|
195
|
-
|
196
|
-
|
184
|
+
const provider = this._provider || window.martian;
|
185
|
+
if (!wallet || !provider) throw new WalletNotConnectedError();
|
186
|
+
const tx = await provider.generateTransaction(
|
187
|
+
wallet.address || '',
|
188
|
+
payloadV1ToV0(transactionPyld)
|
189
|
+
);
|
190
|
+
if (!tx) throw new WalletSignTransactionError('Cannot generate transaction');
|
191
|
+
const response = await provider?.signTransaction(tx);
|
197
192
|
|
198
193
|
if (!response) {
|
199
194
|
throw new WalletSignTransactionError('No response');
|
@@ -206,13 +201,15 @@ export class MartianWalletAdapter extends BaseWalletAdapter {
|
|
206
201
|
}
|
207
202
|
}
|
208
203
|
|
209
|
-
async signAndSubmitTransaction(
|
204
|
+
async signAndSubmitTransaction(
|
205
|
+
transactionPyld: TransactionPayload
|
206
|
+
): Promise<{ hash: HexEncodedBytes }> {
|
210
207
|
try {
|
211
208
|
const wallet = this._wallet;
|
212
209
|
const provider = this._provider || window.martian;
|
213
210
|
if (!wallet || !provider) throw new WalletNotConnectedError();
|
214
211
|
const tx = await provider.generateTransaction(
|
215
|
-
wallet.address
|
212
|
+
wallet.address || '',
|
216
213
|
payloadV1ToV0(transactionPyld)
|
217
214
|
);
|
218
215
|
if (!tx) throw new WalletSignTransactionError('Cannot generate transaction');
|
@@ -221,11 +218,9 @@ export class MartianWalletAdapter extends BaseWalletAdapter {
|
|
221
218
|
if (!response) {
|
222
219
|
throw new WalletSignTransactionError('No response');
|
223
220
|
}
|
224
|
-
return {
|
225
|
-
hash: response
|
226
|
-
} as PendingTransaction;
|
221
|
+
return { hash: response };
|
227
222
|
} catch (error: any) {
|
228
|
-
this.emit('error', error);
|
223
|
+
this.emit('error', new Error(error));
|
229
224
|
throw error;
|
230
225
|
}
|
231
226
|
}
|
@@ -1,8 +1,8 @@
|
|
1
1
|
import {
|
2
2
|
TransactionPayload,
|
3
3
|
SubmitTransactionRequest,
|
4
|
-
|
5
|
-
|
4
|
+
ScriptFunctionPayload,
|
5
|
+
HexEncodedBytes
|
6
6
|
} from 'aptos/dist/generated';
|
7
7
|
import {
|
8
8
|
WalletDisconnectionError,
|
@@ -202,7 +202,9 @@ export class MultiMaskWalletAdapter extends BaseWalletAdapter {
|
|
202
202
|
}
|
203
203
|
}
|
204
204
|
|
205
|
-
async signAndSubmitTransaction(
|
205
|
+
async signAndSubmitTransaction(
|
206
|
+
tempTransaction: TransactionPayload
|
207
|
+
): Promise<{ hash: HexEncodedBytes }> {
|
206
208
|
try {
|
207
209
|
const wallet = this._provider;
|
208
210
|
if (!wallet) throw new WalletNotConnectedError();
|
@@ -210,13 +212,13 @@ export class MultiMaskWalletAdapter extends BaseWalletAdapter {
|
|
210
212
|
|
211
213
|
try {
|
212
214
|
// console.log('trans', 1);
|
213
|
-
const response = await new Promise<
|
215
|
+
const response = await new Promise<{ hash: HexEncodedBytes }>((resolve, reject) => {
|
214
216
|
// const args = [...transaction.type_arguments, transaction.arguments[0] / 1000];
|
215
217
|
// console.log('trans 2', transaction, transaction.function.split(':')[0]);
|
216
218
|
wallet.currentProvider.sendAsync(
|
217
219
|
{
|
218
220
|
method: 'eth_sendTransaction',
|
219
|
-
params: [{ from: transaction.function.name.split(':')[0] }]
|
221
|
+
params: []//[{ from: transaction.function.name.split(':')[0] }]
|
220
222
|
},
|
221
223
|
(error, resp: any) => {
|
222
224
|
console.log('signTransaction', error, resp);
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import {
|
2
2
|
TransactionPayload,
|
3
|
-
|
4
|
-
|
3
|
+
SubmitTransactionRequest,
|
4
|
+
HexEncodedBytes
|
5
5
|
} from 'aptos/dist/generated';
|
6
6
|
import { createContext, useContext } from 'react';
|
7
7
|
import {
|
@@ -31,7 +31,7 @@ export interface WalletContextState {
|
|
31
31
|
transaction: TransactionPayload
|
32
32
|
// connection: Connection,
|
33
33
|
// options?: SendTransactionOptions
|
34
|
-
): Promise<
|
34
|
+
): Promise<{ hash: HexEncodedBytes }>;
|
35
35
|
|
36
36
|
signTransaction(transaction: TransactionPayload): Promise<SubmitTransactionRequest>;
|
37
37
|
// signAllTransactions: SignerWalletAdapterProps['signAllTransactions'] | undefined;
|
package/src/utilities/util.ts
CHANGED
@@ -4,7 +4,7 @@ export const payloadV1ToV0 = (payload: TransactionPayload) => {
|
|
4
4
|
const v1 = payload as TransactionPayload_ScriptFunctionPayload;
|
5
5
|
return {
|
6
6
|
type: 'script_function_payload',
|
7
|
-
function:
|
7
|
+
function: v1.function,
|
8
8
|
type_arguments: v1.type_arguments,
|
9
9
|
arguments: v1.arguments
|
10
10
|
};
|