@aptos-labs/wallet-adapter-core 3.1.1 → 3.2.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.
- package/CHANGELOG.md +10 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.js +18 -12
- package/dist/index.mjs +6 -1
- package/package.json +3 -3
- package/src/WalletCore.ts +3 -4
- package/src/utils/helpers.ts +10 -0
package/CHANGELOG.md
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -237,5 +237,6 @@ declare function isMobile(): boolean;
|
|
|
237
237
|
declare function isInAppBrowser(): boolean;
|
|
238
238
|
declare function isRedirectable(): boolean;
|
|
239
239
|
declare function generalizedErrorMessage(error: any): string;
|
|
240
|
+
declare const areBCSArguments: (args: any) => boolean;
|
|
240
241
|
|
|
241
|
-
export { AccountInfo, AdapterPlugin, AdapterPluginEvents, AdapterPluginProps, AptosWalletErrorResult, InputTransactionData, NetworkInfo, NetworkName, OnAccountChange, OnNetworkChange, SignMessagePayload, SignMessageResponse, TransactionOptions, Wallet, WalletCore, WalletCoreEvents, WalletInfo, WalletName, WalletReadyState, generalizedErrorMessage, getLocalStorage, isInAppBrowser, isMobile, isRedirectable, removeLocalStorage, scopePollingDetectionStrategy, setLocalStorage };
|
|
242
|
+
export { AccountInfo, AdapterPlugin, AdapterPluginEvents, AdapterPluginProps, AptosWalletErrorResult, InputTransactionData, NetworkInfo, NetworkName, OnAccountChange, OnNetworkChange, SignMessagePayload, SignMessageResponse, TransactionOptions, Wallet, WalletCore, WalletCoreEvents, WalletInfo, WalletName, WalletReadyState, areBCSArguments, generalizedErrorMessage, getLocalStorage, isInAppBrowser, isMobile, isRedirectable, removeLocalStorage, scopePollingDetectionStrategy, setLocalStorage };
|
package/dist/index.js
CHANGED
|
@@ -31,6 +31,7 @@ __export(src_exports, {
|
|
|
31
31
|
Types: () => import_aptos3.Types,
|
|
32
32
|
WalletCore: () => WalletCore,
|
|
33
33
|
WalletReadyState: () => WalletReadyState,
|
|
34
|
+
areBCSArguments: () => areBCSArguments,
|
|
34
35
|
generalizedErrorMessage: () => generalizedErrorMessage,
|
|
35
36
|
getLocalStorage: () => getLocalStorage,
|
|
36
37
|
isInAppBrowser: () => isInAppBrowser,
|
|
@@ -44,7 +45,7 @@ module.exports = __toCommonJS(src_exports);
|
|
|
44
45
|
|
|
45
46
|
// src/WalletCore.ts
|
|
46
47
|
var import_aptos2 = require("aptos");
|
|
47
|
-
var
|
|
48
|
+
var import_ts_sdk3 = require("@aptos-labs/ts-sdk");
|
|
48
49
|
var import_eventemitter32 = __toESM(require("eventemitter3"));
|
|
49
50
|
var import_tweetnacl = __toESM(require("tweetnacl"));
|
|
50
51
|
var import_buffer = require("buffer");
|
|
@@ -199,6 +200,7 @@ function getLocalStorage() {
|
|
|
199
200
|
}
|
|
200
201
|
|
|
201
202
|
// src/utils/helpers.ts
|
|
203
|
+
var import_ts_sdk = require("@aptos-labs/ts-sdk");
|
|
202
204
|
function isMobile() {
|
|
203
205
|
return /Mobile|iP(hone|od|ad)|Android|BlackBerry|IEMobile|Kindle|NetFront|Silk-Accelerated|(hpw|web)OS|Fennec|Minimo|Opera M(obi|ini)|Blazer|Dolfin|Dolphin|Skyfire|Zune/i.test(
|
|
204
206
|
navigator.userAgent
|
|
@@ -221,6 +223,9 @@ function isRedirectable() {
|
|
|
221
223
|
function generalizedErrorMessage(error) {
|
|
222
224
|
return typeof error === "object" && "message" in error ? error.message : error;
|
|
223
225
|
}
|
|
226
|
+
var areBCSArguments = (args) => {
|
|
227
|
+
return args.every((arg) => arg instanceof import_ts_sdk.Serializable);
|
|
228
|
+
};
|
|
224
229
|
|
|
225
230
|
// src/ans.ts
|
|
226
231
|
var ChainIdToAnsContractAddressMap = {
|
|
@@ -243,16 +248,16 @@ var getNameByAddress = async (chainId, address) => {
|
|
|
243
248
|
};
|
|
244
249
|
|
|
245
250
|
// src/conversion.ts
|
|
246
|
-
var
|
|
251
|
+
var import_ts_sdk2 = require("@aptos-labs/ts-sdk");
|
|
247
252
|
var import_aptos = require("aptos");
|
|
248
253
|
function convertNetwork(networkInfo) {
|
|
249
254
|
switch (networkInfo == null ? void 0 : networkInfo.name.toLowerCase()) {
|
|
250
255
|
case "mainnet":
|
|
251
|
-
return
|
|
256
|
+
return import_ts_sdk2.Network.MAINNET;
|
|
252
257
|
case "testnet":
|
|
253
|
-
return
|
|
258
|
+
return import_ts_sdk2.Network.TESTNET;
|
|
254
259
|
case "devnet":
|
|
255
|
-
return
|
|
260
|
+
return import_ts_sdk2.Network.DEVNET;
|
|
256
261
|
default:
|
|
257
262
|
throw new Error("Invalid network name");
|
|
258
263
|
}
|
|
@@ -268,7 +273,7 @@ function convertV2PayloadToV1JSONPayload(payload) {
|
|
|
268
273
|
} else {
|
|
269
274
|
const stringTypeTags = (_a = payload.typeArguments) == null ? void 0 : _a.map(
|
|
270
275
|
(typeTag) => {
|
|
271
|
-
if (typeTag instanceof
|
|
276
|
+
if (typeTag instanceof import_ts_sdk2.TypeTag) {
|
|
272
277
|
return typeTag.toString();
|
|
273
278
|
}
|
|
274
279
|
return typeTag;
|
|
@@ -494,11 +499,11 @@ var WalletCore = class extends import_eventemitter32.default {
|
|
|
494
499
|
return response2;
|
|
495
500
|
}
|
|
496
501
|
const payloadData = transactionInput.data;
|
|
497
|
-
if (
|
|
498
|
-
const aptosConfig = new
|
|
502
|
+
if (areBCSArguments(payloadData.functionArguments)) {
|
|
503
|
+
const aptosConfig = new import_ts_sdk3.AptosConfig({
|
|
499
504
|
network: convertNetwork(this._network)
|
|
500
505
|
});
|
|
501
|
-
const newPayload = await (0,
|
|
506
|
+
const newPayload = await (0, import_ts_sdk3.generateTransactionPayload)({
|
|
502
507
|
...payloadData,
|
|
503
508
|
aptosConfig
|
|
504
509
|
});
|
|
@@ -567,9 +572,9 @@ var WalletCore = class extends import_eventemitter32.default {
|
|
|
567
572
|
const transactionAuthenticator = deserializedSignature.authenticator;
|
|
568
573
|
const publicKey = transactionAuthenticator.public_key.value;
|
|
569
574
|
const signature = transactionAuthenticator.signature.value;
|
|
570
|
-
const accountAuthenticator = new
|
|
571
|
-
new
|
|
572
|
-
new
|
|
575
|
+
const accountAuthenticator = new import_ts_sdk3.AccountAuthenticatorEd25519(
|
|
576
|
+
new import_ts_sdk3.Ed25519PublicKey(publicKey),
|
|
577
|
+
new import_ts_sdk3.Ed25519Signature(signature)
|
|
573
578
|
);
|
|
574
579
|
return accountAuthenticator;
|
|
575
580
|
} catch (error) {
|
|
@@ -702,6 +707,7 @@ var import_aptos3 = require("aptos");
|
|
|
702
707
|
Types,
|
|
703
708
|
WalletCore,
|
|
704
709
|
WalletReadyState,
|
|
710
|
+
areBCSArguments,
|
|
705
711
|
generalizedErrorMessage,
|
|
706
712
|
getLocalStorage,
|
|
707
713
|
isInAppBrowser,
|
package/dist/index.mjs
CHANGED
|
@@ -161,6 +161,7 @@ function getLocalStorage() {
|
|
|
161
161
|
}
|
|
162
162
|
|
|
163
163
|
// src/utils/helpers.ts
|
|
164
|
+
import { Serializable } from "@aptos-labs/ts-sdk";
|
|
164
165
|
function isMobile() {
|
|
165
166
|
return /Mobile|iP(hone|od|ad)|Android|BlackBerry|IEMobile|Kindle|NetFront|Silk-Accelerated|(hpw|web)OS|Fennec|Minimo|Opera M(obi|ini)|Blazer|Dolfin|Dolphin|Skyfire|Zune/i.test(
|
|
166
167
|
navigator.userAgent
|
|
@@ -183,6 +184,9 @@ function isRedirectable() {
|
|
|
183
184
|
function generalizedErrorMessage(error) {
|
|
184
185
|
return typeof error === "object" && "message" in error ? error.message : error;
|
|
185
186
|
}
|
|
187
|
+
var areBCSArguments = (args) => {
|
|
188
|
+
return args.every((arg) => arg instanceof Serializable);
|
|
189
|
+
};
|
|
186
190
|
|
|
187
191
|
// src/ans.ts
|
|
188
192
|
var ChainIdToAnsContractAddressMap = {
|
|
@@ -459,7 +463,7 @@ var WalletCore = class extends EventEmitter2 {
|
|
|
459
463
|
return response2;
|
|
460
464
|
}
|
|
461
465
|
const payloadData = transactionInput.data;
|
|
462
|
-
if (
|
|
466
|
+
if (areBCSArguments(payloadData.functionArguments)) {
|
|
463
467
|
const aptosConfig = new AptosConfig({
|
|
464
468
|
network: convertNetwork(this._network)
|
|
465
469
|
});
|
|
@@ -666,6 +670,7 @@ export {
|
|
|
666
670
|
Types3 as Types,
|
|
667
671
|
WalletCore,
|
|
668
672
|
WalletReadyState,
|
|
673
|
+
areBCSArguments,
|
|
669
674
|
generalizedErrorMessage,
|
|
670
675
|
getLocalStorage,
|
|
671
676
|
isInAppBrowser,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aptos-labs/wallet-adapter-core",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.2.0",
|
|
4
4
|
"description": "Aptos Wallet Adapter Core",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -43,8 +43,8 @@
|
|
|
43
43
|
"tweetnacl": "^1.0.3"
|
|
44
44
|
},
|
|
45
45
|
"peerDependencies": {
|
|
46
|
-
"aptos": "^1.
|
|
47
|
-
"@aptos-labs/ts-sdk": "^1.
|
|
46
|
+
"aptos": "^1.21.0",
|
|
47
|
+
"@aptos-labs/ts-sdk": "^1.2.0"
|
|
48
48
|
},
|
|
49
49
|
"scripts": {
|
|
50
50
|
"build": "tsup src/index.ts --format esm,cjs --dts",
|
package/src/WalletCore.ts
CHANGED
|
@@ -49,6 +49,7 @@ import {
|
|
|
49
49
|
scopePollingDetectionStrategy,
|
|
50
50
|
isRedirectable,
|
|
51
51
|
generalizedErrorMessage,
|
|
52
|
+
areBCSArguments,
|
|
52
53
|
} from "./utils";
|
|
53
54
|
import { getNameByAddress } from "./ans";
|
|
54
55
|
import {
|
|
@@ -310,9 +311,8 @@ export class WalletCore extends EventEmitter<WalletCoreEvents> {
|
|
|
310
311
|
// get the payload piece from the input
|
|
311
312
|
const payloadData = transactionInput.data;
|
|
312
313
|
|
|
313
|
-
//
|
|
314
|
-
|
|
315
|
-
if (typeof payloadData.functionArguments[0] === "object") {
|
|
314
|
+
// first check if each argument is a BCS serialized argument
|
|
315
|
+
if (areBCSArguments(payloadData.functionArguments)) {
|
|
316
316
|
const aptosConfig = new AptosConfig({
|
|
317
317
|
network: convertNetwork(this._network),
|
|
318
318
|
});
|
|
@@ -337,7 +337,6 @@ export class WalletCore extends EventEmitter<WalletCoreEvents> {
|
|
|
337
337
|
const { hash, ...output } = response;
|
|
338
338
|
return { hash, output };
|
|
339
339
|
}
|
|
340
|
-
|
|
341
340
|
// if it is not a bcs serialized arguments transaction, convert to the old
|
|
342
341
|
// json format
|
|
343
342
|
const oldTransactionPayload =
|
package/src/utils/helpers.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { Serializable } from "@aptos-labs/ts-sdk";
|
|
2
|
+
|
|
1
3
|
export function isMobile(): boolean {
|
|
2
4
|
return /Mobile|iP(hone|od|ad)|Android|BlackBerry|IEMobile|Kindle|NetFront|Silk-Accelerated|(hpw|web)OS|Fennec|Minimo|Opera M(obi|ini)|Blazer|Dolfin|Dolphin|Skyfire|Zune/i.test(
|
|
3
5
|
navigator.userAgent
|
|
@@ -30,3 +32,11 @@ export function generalizedErrorMessage(error: any): string {
|
|
|
30
32
|
? error.message
|
|
31
33
|
: error;
|
|
32
34
|
}
|
|
35
|
+
|
|
36
|
+
// Helper function to check if input arguments are BCS serialized arguments.
|
|
37
|
+
// In @aptos-labs/ts-sdk each move representative class extends
|
|
38
|
+
// Serializable, so if each argument is of an instance of a class
|
|
39
|
+
// the extends Serializable - we know these are BCS arguments
|
|
40
|
+
export const areBCSArguments = (args: any): boolean => {
|
|
41
|
+
return args.every((arg: any) => arg instanceof Serializable);
|
|
42
|
+
};
|