@wormhole-foundation/sdk-connect 3.9.0-beta.0 → 3.10.0-beta.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/dist/cjs/routes/tokenBridge/automatic.d.ts.map +1 -1
- package/dist/cjs/routes/tokenBridge/automatic.js +25 -0
- package/dist/cjs/routes/tokenBridge/automatic.js.map +1 -1
- package/dist/cjs/routes/tokenBridge/manual.d.ts.map +1 -1
- package/dist/cjs/routes/tokenBridge/manual.js +26 -0
- package/dist/cjs/routes/tokenBridge/manual.js.map +1 -1
- package/dist/esm/routes/tokenBridge/automatic.d.ts.map +1 -1
- package/dist/esm/routes/tokenBridge/automatic.js +26 -1
- package/dist/esm/routes/tokenBridge/automatic.js.map +1 -1
- package/dist/esm/routes/tokenBridge/manual.d.ts.map +1 -1
- package/dist/esm/routes/tokenBridge/manual.js +26 -0
- package/dist/esm/routes/tokenBridge/manual.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"automatic.d.ts","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/automatic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"automatic.d.ts","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/automatic.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,6 +58,31 @@ class AutomaticTokenBridgeRoute extends route_js_1.AutomaticRoute {
|
|
|
58
58
|
error: new Error("Source and destination chains cannot be the same"),
|
|
59
59
|
};
|
|
60
60
|
}
|
|
61
|
+
// Prevent transfers to/from SVM chains if the destination token is Token2022
|
|
62
|
+
// except when using ExecutorTokenBridge
|
|
63
|
+
// Attempting to manually redeem Token2022 tokens will fail if recipient account
|
|
64
|
+
// has the immutableOwner extension, so just disable such transfers here
|
|
65
|
+
// Executor route creates temporary account without the extension
|
|
66
|
+
if ((0, sdk_base_1.chainToPlatform)(request.fromChain.chain) === "Solana") {
|
|
67
|
+
const isToken2022 = await request.fromChain.isToken2022(request.source.id.address);
|
|
68
|
+
if (isToken2022) {
|
|
69
|
+
return {
|
|
70
|
+
valid: false,
|
|
71
|
+
params,
|
|
72
|
+
error: new Error("Transfers of Token-2022 assets from SVM chains are not supported via the Automatic Token Bridge route. Please use the Executor Token Bridge route instead."),
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
if ((0, sdk_base_1.chainToPlatform)(request.toChain.chain) === "Solana") {
|
|
77
|
+
const isToken2022 = await request.toChain.isToken2022(request.destination.id.address);
|
|
78
|
+
if (isToken2022) {
|
|
79
|
+
return {
|
|
80
|
+
valid: false,
|
|
81
|
+
params,
|
|
82
|
+
error: new Error("Transfers of Token-2022 assets to SVM chains are not supported via the Automatic Token Bridge route. Please use the Executor Token Bridge route instead."),
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
}
|
|
61
86
|
const options = params.options ?? this.getDefaultOptions();
|
|
62
87
|
if (options.nativeGas && (options.nativeGas > 1.0 || options.nativeGas < 0.0))
|
|
63
88
|
throw new Error("Native gas must be between 0.0 and 1.0 (0% and 100%)");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"automatic.js","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/automatic.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"automatic.js","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/automatic.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manual.d.ts","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/manual.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,MAAM,EAAa,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,MAAM,EACN,OAAO,EAEP,aAAa,EACd,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAC7E,OAAO,KAAK,EACV,kBAAkB,EAElB,eAAe,EAChB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,cAAc,EACd,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"manual.d.ts","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/manual.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ const tokenTransfer_js_1 = require("../../protocols/tokenBridge/tokenTransfer.js
|
|
|
6
6
|
const types_js_1 = require("../../types.js");
|
|
7
7
|
const wormhole_js_1 = require("../../wormhole.js");
|
|
8
8
|
const route_js_1 = require("../route.js");
|
|
9
|
+
const sdk_base_2 = require("@wormhole-foundation/sdk-base");
|
|
9
10
|
class TokenBridgeRoute extends route_js_1.ManualRoute {
|
|
10
11
|
static meta = {
|
|
11
12
|
name: "ManualTokenBridge",
|
|
@@ -38,6 +39,31 @@ class TokenBridgeRoute extends route_js_1.ManualRoute {
|
|
|
38
39
|
error: new Error("Source and destination chains cannot be the same"),
|
|
39
40
|
};
|
|
40
41
|
}
|
|
42
|
+
// Prevent transfers to/from SVM chains if the destination token is Token2022
|
|
43
|
+
// except when using ExecutorTokenBridge
|
|
44
|
+
// Attempting to manually redeem Token2022 tokens will fail if recipient account
|
|
45
|
+
// has the immutableOwner extension, so just disable such transfers here
|
|
46
|
+
// Executor route creates temporary account without the extension
|
|
47
|
+
if ((0, sdk_base_2.chainToPlatform)(request.fromChain.chain) === "Solana") {
|
|
48
|
+
const isToken2022 = await request.fromChain.isToken2022(request.source.id.address);
|
|
49
|
+
if (isToken2022) {
|
|
50
|
+
return {
|
|
51
|
+
valid: false,
|
|
52
|
+
params,
|
|
53
|
+
error: new Error("Transfers of Token-2022 assets from SVM chains are not supported via the Manual Token Bridge route. Please use the Executor Token Bridge route instead."),
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
if ((0, sdk_base_2.chainToPlatform)(request.toChain.chain) === "Solana") {
|
|
58
|
+
const isToken2022 = await request.toChain.isToken2022(request.destination.id.address);
|
|
59
|
+
if (isToken2022) {
|
|
60
|
+
return {
|
|
61
|
+
valid: false,
|
|
62
|
+
params,
|
|
63
|
+
error: new Error("Transfers of Token-2022 assets to SVM chains are not supported via the Manual Token Bridge route. Please use the Executor Token Bridge route instead."),
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
}
|
|
41
67
|
const amt = sdk_base_1.amount.parse(params.amount, request.source.decimals);
|
|
42
68
|
const validatedParams = {
|
|
43
69
|
amount: params.amount,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manual.js","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/manual.ts"],"names":[],"mappings":";;;AACA,4DAAkE;AASlE,mFAA6E;AAM7E,6CAA2D;AAC3D,mDAA6C;AAE7C,0CAA0C;
|
|
1
|
+
{"version":3,"file":"manual.js","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/manual.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"automatic.d.ts","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/automatic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"automatic.d.ts","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/automatic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,MAAM,EAA8B,MAAM,+BAA+B,CAAC;AACnF,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,MAAM,EACN,OAAO,EAER,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAC7E,OAAO,KAAK,EAAE,kBAAkB,EAAkC,MAAM,gBAAgB,CAAC;AAGzF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,OAAO,EACP,cAAc,EACd,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAE1D,yBAAiB,yBAAyB,CAAC;IACzC,KAAY,OAAO,GAAG;QAGpB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IAEF,KAAY,gBAAgB,GAAG;QAC7B,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC;KAChC,CAAC;IAEF,UAAiB,eAAgB,SAAQ,uBAAuB,CAAC,OAAO,CAAC;QACvE,gBAAgB,EAAE,gBAAgB,CAAC;KACpC;CACF;AAED,KAAK,EAAE,GAAG,yBAAyB,CAAC,OAAO,CAAC;AAC5C,KAAK,EAAE,GAAG,yBAAyB,CAAC,eAAe,CAAC;AAEpD,KAAK,EAAE,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;AAC7B,KAAK,EAAE,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC;AAC/B,KAAK,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,sBAAsB,CAAC,CAAC,CAAC;AAC7D,KAAK,EAAE,GAAG,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;AAC9B,KAAK,CAAC,GAAG,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;AAEvB,qBAAa,yBAAyB,CAAC,CAAC,SAAS,OAAO,CACtD,SAAQ,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CACnC,YAAW,kBAAkB,CAAC,OAAO,yBAAyB,CAAC;IAE/D,MAAM,CAAC,4BAA4B,UAAQ;IAE3C,MAAM,CAAC,IAAI;;MAET;IAEF,MAAM,CAAC,iBAAiB,IAAI,OAAO,EAAE;IAIrC,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK,EAAE;WAQpC,0BAA0B,CAAC,CAAC,SAAS,OAAO,EACvD,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,EAC1B,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GACvB,OAAO,CAAC,OAAO,EAAE,CAAC;IA4BrB,iBAAiB,IAAI,EAAE;IAIjB,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;YA8D3D,uBAAuB;IAgE/B,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;IA6BhE,QAAQ,CACZ,OAAO,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAChC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,CAAC,EACR,EAAE,EAAE,YAAY,GACf,OAAO,CAAC,CAAC,CAAC;IAiBU,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM;IAQzD,OAAO,CAAC,iBAAiB;CAe1B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { amount, contracts } from "@wormhole-foundation/sdk-base";
|
|
1
|
+
import { amount, chainToPlatform, contracts } from "@wormhole-foundation/sdk-base";
|
|
2
2
|
import { isNative, isTokenId } from "@wormhole-foundation/sdk-definitions";
|
|
3
3
|
import { TokenTransfer } from "../../protocols/tokenBridge/tokenTransfer.js";
|
|
4
4
|
import { TransferState } from "../../types.js";
|
|
@@ -55,6 +55,31 @@ export class AutomaticTokenBridgeRoute extends AutomaticRoute {
|
|
|
55
55
|
error: new Error("Source and destination chains cannot be the same"),
|
|
56
56
|
};
|
|
57
57
|
}
|
|
58
|
+
// Prevent transfers to/from SVM chains if the destination token is Token2022
|
|
59
|
+
// except when using ExecutorTokenBridge
|
|
60
|
+
// Attempting to manually redeem Token2022 tokens will fail if recipient account
|
|
61
|
+
// has the immutableOwner extension, so just disable such transfers here
|
|
62
|
+
// Executor route creates temporary account without the extension
|
|
63
|
+
if (chainToPlatform(request.fromChain.chain) === "Solana") {
|
|
64
|
+
const isToken2022 = await request.fromChain.isToken2022(request.source.id.address);
|
|
65
|
+
if (isToken2022) {
|
|
66
|
+
return {
|
|
67
|
+
valid: false,
|
|
68
|
+
params,
|
|
69
|
+
error: new Error("Transfers of Token-2022 assets from SVM chains are not supported via the Automatic Token Bridge route. Please use the Executor Token Bridge route instead."),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
if (chainToPlatform(request.toChain.chain) === "Solana") {
|
|
74
|
+
const isToken2022 = await request.toChain.isToken2022(request.destination.id.address);
|
|
75
|
+
if (isToken2022) {
|
|
76
|
+
return {
|
|
77
|
+
valid: false,
|
|
78
|
+
params,
|
|
79
|
+
error: new Error("Transfers of Token-2022 assets to SVM chains are not supported via the Automatic Token Bridge route. Please use the Executor Token Bridge route instead."),
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
}
|
|
58
83
|
const options = params.options ?? this.getDefaultOptions();
|
|
59
84
|
if (options.nativeGas && (options.nativeGas > 1.0 || options.nativeGas < 0.0))
|
|
60
85
|
throw new Error("Native gas must be between 0.0 and 1.0 (0% and 100%)");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"automatic.js","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/automatic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"automatic.js","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/automatic.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manual.d.ts","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/manual.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,MAAM,EAAa,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,MAAM,EACN,OAAO,EAEP,aAAa,EACd,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAC7E,OAAO,KAAK,EACV,kBAAkB,EAElB,eAAe,EAChB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EACV,KAAK,EACL,WAAW,EACX,cAAc,EACd,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"manual.d.ts","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/manual.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import { TokenTransfer } from "../../protocols/tokenBridge/tokenTransfer.js";
|
|
|
3
3
|
import { TransferState, isAttested } from "../../types.js";
|
|
4
4
|
import { Wormhole } from "../../wormhole.js";
|
|
5
5
|
import { ManualRoute } from "../route.js";
|
|
6
|
+
import { chainToPlatform } from "@wormhole-foundation/sdk-base";
|
|
6
7
|
export class TokenBridgeRoute extends ManualRoute {
|
|
7
8
|
static meta = {
|
|
8
9
|
name: "ManualTokenBridge",
|
|
@@ -35,6 +36,31 @@ export class TokenBridgeRoute extends ManualRoute {
|
|
|
35
36
|
error: new Error("Source and destination chains cannot be the same"),
|
|
36
37
|
};
|
|
37
38
|
}
|
|
39
|
+
// Prevent transfers to/from SVM chains if the destination token is Token2022
|
|
40
|
+
// except when using ExecutorTokenBridge
|
|
41
|
+
// Attempting to manually redeem Token2022 tokens will fail if recipient account
|
|
42
|
+
// has the immutableOwner extension, so just disable such transfers here
|
|
43
|
+
// Executor route creates temporary account without the extension
|
|
44
|
+
if (chainToPlatform(request.fromChain.chain) === "Solana") {
|
|
45
|
+
const isToken2022 = await request.fromChain.isToken2022(request.source.id.address);
|
|
46
|
+
if (isToken2022) {
|
|
47
|
+
return {
|
|
48
|
+
valid: false,
|
|
49
|
+
params,
|
|
50
|
+
error: new Error("Transfers of Token-2022 assets from SVM chains are not supported via the Manual Token Bridge route. Please use the Executor Token Bridge route instead."),
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
if (chainToPlatform(request.toChain.chain) === "Solana") {
|
|
55
|
+
const isToken2022 = await request.toChain.isToken2022(request.destination.id.address);
|
|
56
|
+
if (isToken2022) {
|
|
57
|
+
return {
|
|
58
|
+
valid: false,
|
|
59
|
+
params,
|
|
60
|
+
error: new Error("Transfers of Token-2022 assets to SVM chains are not supported via the Manual Token Bridge route. Please use the Executor Token Bridge route instead."),
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
}
|
|
38
64
|
const amt = amount.parse(params.amount, request.source.decimals);
|
|
39
65
|
const validatedParams = {
|
|
40
66
|
amount: params.amount,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manual.js","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/manual.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AASlE,OAAO,EAAE,aAAa,EAAE,MAAM,8CAA8C,CAAC;AAM7E,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"manual.js","sourceRoot":"","sources":["../../../../src/routes/tokenBridge/manual.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wormhole-foundation/sdk-connect",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.10.0-beta.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/wormhole-foundation/wormhole-sdk-ts.git"
|
|
@@ -98,8 +98,8 @@
|
|
|
98
98
|
},
|
|
99
99
|
"dependencies": {
|
|
100
100
|
"axios": "^1.4.0",
|
|
101
|
-
"@wormhole-foundation/sdk-base": "3.
|
|
102
|
-
"@wormhole-foundation/sdk-definitions": "3.
|
|
101
|
+
"@wormhole-foundation/sdk-base": "3.10.0-beta.0",
|
|
102
|
+
"@wormhole-foundation/sdk-definitions": "3.10.0-beta.0"
|
|
103
103
|
},
|
|
104
104
|
"type": "module"
|
|
105
105
|
}
|