thirdweb 5.64.5 → 5.64.6-nightly-f40d2474e6cc1227a8d05151210ef4793beb6142-20241101000357
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/utils/any-evm/zksync/isZkSyncChain.js +1 -10
- package/dist/cjs/utils/any-evm/zksync/isZkSyncChain.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/cjs/wallets/smart/smart-wallet.js +14 -10
- package/dist/cjs/wallets/smart/smart-wallet.js.map +1 -1
- package/dist/esm/utils/any-evm/zksync/isZkSyncChain.js +1 -10
- package/dist/esm/utils/any-evm/zksync/isZkSyncChain.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/esm/wallets/smart/smart-wallet.js +14 -10
- package/dist/esm/wallets/smart/smart-wallet.js.map +1 -1
- package/dist/types/utils/any-evm/zksync/isZkSyncChain.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/version.d.ts.map +1 -1
- package/dist/types/wallets/smart/smart-wallet.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/utils/any-evm/zksync/isZkSyncChain.ts +1 -9
- package/src/version.ts +1 -1
- package/src/wallets/smart/smart-wallet.ts +19 -13
@@ -1,7 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.isZkSyncChain = isZkSyncChain;
|
4
|
-
const utils_js_1 = require("../../../chains/utils.js");
|
5
4
|
async function isZkSyncChain(chain) {
|
6
5
|
if (chain.id === 1337 || chain.id === 31337) {
|
7
6
|
return false;
|
@@ -19,14 +18,6 @@ async function isZkSyncChain(chain) {
|
|
19
18
|
chain.id === 978658) {
|
20
19
|
return true;
|
21
20
|
}
|
22
|
-
|
23
|
-
try {
|
24
|
-
const chainMetadata = await (0, utils_js_1.getChainMetadata)(chain);
|
25
|
-
return chainMetadata.stackType === "zksync_stack";
|
26
|
-
}
|
27
|
-
catch {
|
28
|
-
// If the network check fails, assume it's not a ZkSync chain
|
29
|
-
return false;
|
30
|
-
}
|
21
|
+
return false;
|
31
22
|
}
|
32
23
|
//# sourceMappingURL=isZkSyncChain.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"isZkSyncChain.js","sourceRoot":"","sources":["../../../../../src/utils/any-evm/zksync/isZkSyncChain.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"isZkSyncChain.js","sourceRoot":"","sources":["../../../../../src/utils/any-evm/zksync/isZkSyncChain.ts"],"names":[],"mappings":";;AAEA,sCAsBC;AAtBM,KAAK,UAAU,aAAa,CAAC,KAAY;IAC9C,IAAI,KAAK,CAAC,EAAE,KAAK,IAAI,IAAI,KAAK,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,qCAAqC;IACrC,IACE,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,KAAK;QAClB,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,IAAI;QACjB,KAAK,CAAC,EAAE,KAAK,MAAM;QACnB,KAAK,CAAC,EAAE,KAAK,KAAK;QAClB,KAAK,CAAC,EAAE,KAAK,MAAM,EACnB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/dist/cjs/version.js
CHANGED
package/dist/cjs/version.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG,
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG,wEAAwE,CAAC"}
|
@@ -4,6 +4,7 @@ exports.smartWallet = smartWallet;
|
|
4
4
|
const connect_js_1 = require("../../analytics/track/connect.js");
|
5
5
|
const utils_js_1 = require("../../chains/utils.js");
|
6
6
|
const contract_js_1 = require("../../contract/contract.js");
|
7
|
+
const isZkSyncChain_js_1 = require("../../utils/any-evm/zksync/isZkSyncChain.js");
|
7
8
|
const is_contract_deployed_js_1 = require("../../utils/bytecode/is-contract-deployed.js");
|
8
9
|
const wallet_emitter_js_1 = require("../wallet-emitter.js");
|
9
10
|
const constants_js_1 = require("./lib/constants.js");
|
@@ -186,16 +187,19 @@ function smartWallet(createOptions) {
|
|
186
187
|
if (!lastConnectOptions) {
|
187
188
|
throw new Error("Cannot switch chain without a previous connection");
|
188
189
|
}
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
190
|
+
const isZksyncChain = await (0, isZkSyncChain_js_1.isZkSyncChain)(newChain);
|
191
|
+
if (!isZksyncChain) {
|
192
|
+
// check if factory is deployed
|
193
|
+
const factory = (0, contract_js_1.getContract)({
|
194
|
+
address: createOptions.factoryAddress ||
|
195
|
+
(0, constants_js_1.getDefaultAccountFactory)(createOptions.overrides?.entrypointAddress),
|
196
|
+
chain: newChain,
|
197
|
+
client: lastConnectOptions.client,
|
198
|
+
});
|
199
|
+
const isDeployed = await (0, is_contract_deployed_js_1.isContractDeployed)(factory);
|
200
|
+
if (!isDeployed) {
|
201
|
+
throw new Error(`Factory contract not deployed on chain: ${newChain.id}`);
|
202
|
+
}
|
199
203
|
}
|
200
204
|
const { connectSmartWallet } = await Promise.resolve().then(() => require("./index.js"));
|
201
205
|
const [connectedAccount, connectedChain] = await connectSmartWallet(_smartWallet, { ...lastConnectOptions, chain: newChain }, createOptions);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"smart-wallet.js","sourceRoot":"","sources":["../../../../src/wallets/smart/smart-wallet.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"smart-wallet.js","sourceRoot":"","sources":["../../../../src/wallets/smart/smart-wallet.ts"],"names":[],"mappings":";;AAmIA,kCA2GC;AA9OD,iEAAgE;AAEhE,oDAA+D;AAC/D,4DAAyD;AACzD,kFAA4E;AAC5E,0FAAkF;AAElF,4DAA2D;AAK3D,qDAA8D;AAE9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoHG;AACH,SAAgB,WAAW,CACzB,aAA2C;IAE3C,MAAM,OAAO,GAAG,IAAA,uCAAmB,GAAW,CAAC;IAC/C,IAAI,OAAO,GAAwB,SAAS,CAAC;IAC7C,IAAI,YAAY,GAAwB,SAAS,CAAC;IAClD,IAAI,KAAK,GAAsB,SAAS,CAAC;IACzC,IAAI,kBAA+D,CAAC;IAEpE,MAAM,YAAY,GAAoB;QACpC,EAAE,EAAE,OAAO;QACX,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,QAAQ;YACN,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,KAAK,GAAG,IAAA,iCAAsB,EAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC;YAClD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,SAAS,EAAE,GAAG,EAAE,CAAC,aAAa;QAC9B,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO;QACzB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY;QACnC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YAC7B,MAAM,EAAE,kBAAkB,EAAE,GAAG,2CAAa,YAAY,EAAC,CAAC;YAC1D,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,GAAG,MAAM,kBAAkB,CACjE,YAAY,EACZ,OAAO,EACP,aAAa,CACd,CAAC;YACF,iBAAiB;YACjB,kBAAkB,GAAG,OAAO,CAAC;YAC7B,OAAO,GAAG,gBAAgB,CAAC;YAC3B,KAAK,GAAG,cAAc,CAAC;YACvB,IAAA,yBAAY,EAAC;gBACX,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,UAAU,EAAE,OAAO;gBACnB,aAAa,EAAE,OAAO,CAAC,OAAO;aAC/B,CAAC,CAAC;YACH,iBAAiB;YACjB,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACzB,MAAM,EAAE,kBAAkB,EAAE,GAAG,2CAAa,YAAY,EAAC,CAAC;YAC1D,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,GAAG,MAAM,kBAAkB,CACjE,YAAY,EACZ,OAAO,EACP,aAAa,CACd,CAAC;YACF,iBAAiB;YACjB,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC;YACvC,kBAAkB,GAAG,OAAO,CAAC;YAC7B,OAAO,GAAG,gBAAgB,CAAC;YAC3B,KAAK,GAAG,cAAc,CAAC;YACvB,IAAA,yBAAY,EAAC;gBACX,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,UAAU,EAAE,OAAO;gBACnB,aAAa,EAAE,OAAO,CAAC,OAAO;aAC/B,CAAC,CAAC;YACH,iBAAiB;YACjB,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;YACxC,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,UAAU,EAAE,KAAK,IAAI,EAAE;YACrB,OAAO,GAAG,SAAS,CAAC;YACpB,KAAK,GAAG,SAAS,CAAC;YAClB,MAAM,EAAE,qBAAqB,EAAE,GAAG,2CAAa,YAAY,EAAC,CAAC;YAC7D,MAAM,qBAAqB,CAAC,YAAY,CAAC,CAAC;YAC1C,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QACxC,CAAC;QACD,WAAW,EAAE,KAAK,EAAE,QAAe,EAAE,EAAE;YACrC,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;YACvE,CAAC;YACD,MAAM,aAAa,GAAG,MAAM,IAAA,gCAAa,EAAC,QAAQ,CAAC,CAAC;YACpD,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,+BAA+B;gBAC/B,MAAM,OAAO,GAAG,IAAA,yBAAW,EAAC;oBAC1B,OAAO,EACL,aAAa,CAAC,cAAc;wBAC5B,IAAA,uCAAwB,EACtB,aAAa,CAAC,SAAS,EAAE,iBAAiB,CAC3C;oBACH,KAAK,EAAE,QAAQ;oBACf,MAAM,EAAE,kBAAkB,CAAC,MAAM;iBAClC,CAAC,CAAC;gBACH,MAAM,UAAU,GAAG,MAAM,IAAA,4CAAkB,EAAC,OAAO,CAAC,CAAC;gBACrD,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,MAAM,IAAI,KAAK,CACb,2CAA2C,QAAQ,CAAC,EAAE,EAAE,CACzD,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,MAAM,EAAE,kBAAkB,EAAE,GAAG,2CAAa,YAAY,EAAC,CAAC;YAC1D,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,GAAG,MAAM,kBAAkB,CACjE,YAAY,EACZ,EAAE,GAAG,kBAAkB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAC1C,aAAa,CACd,CAAC;YACF,iBAAiB;YACjB,OAAO,GAAG,gBAAgB,CAAC;YAC3B,KAAK,GAAG,cAAc,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KACF,CAAC;IAEF,OAAO,YAAY,CAAC;AACtB,CAAC"}
|
@@ -1,4 +1,3 @@
|
|
1
|
-
import { getChainMetadata } from "../../../chains/utils.js";
|
2
1
|
export async function isZkSyncChain(chain) {
|
3
2
|
if (chain.id === 1337 || chain.id === 31337) {
|
4
3
|
return false;
|
@@ -16,14 +15,6 @@ export async function isZkSyncChain(chain) {
|
|
16
15
|
chain.id === 978658) {
|
17
16
|
return true;
|
18
17
|
}
|
19
|
-
|
20
|
-
try {
|
21
|
-
const chainMetadata = await getChainMetadata(chain);
|
22
|
-
return chainMetadata.stackType === "zksync_stack";
|
23
|
-
}
|
24
|
-
catch {
|
25
|
-
// If the network check fails, assume it's not a ZkSync chain
|
26
|
-
return false;
|
27
|
-
}
|
18
|
+
return false;
|
28
19
|
}
|
29
20
|
//# sourceMappingURL=isZkSyncChain.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"isZkSyncChain.js","sourceRoot":"","sources":["../../../../../src/utils/any-evm/zksync/isZkSyncChain.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"isZkSyncChain.js","sourceRoot":"","sources":["../../../../../src/utils/any-evm/zksync/isZkSyncChain.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,KAAY;IAC9C,IAAI,KAAK,CAAC,EAAE,KAAK,IAAI,IAAI,KAAK,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,qCAAqC;IACrC,IACE,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,KAAK;QAClB,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,GAAG;QAChB,KAAK,CAAC,EAAE,KAAK,IAAI;QACjB,KAAK,CAAC,EAAE,KAAK,MAAM;QACnB,KAAK,CAAC,EAAE,KAAK,KAAK;QAClB,KAAK,CAAC,EAAE,KAAK,MAAM,EACnB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/dist/esm/version.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export const version = "5.64.
|
1
|
+
export const version = "5.64.6-nightly-f40d2474e6cc1227a8d05151210ef4793beb6142-20241101000357";
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/dist/esm/version.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,wEAAwE,CAAC"}
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { trackConnect } from "../../analytics/track/connect.js";
|
2
2
|
import { getCachedChainIfExists } from "../../chains/utils.js";
|
3
3
|
import { getContract } from "../../contract/contract.js";
|
4
|
+
import { isZkSyncChain } from "../../utils/any-evm/zksync/isZkSyncChain.js";
|
4
5
|
import { isContractDeployed } from "../../utils/bytecode/is-contract-deployed.js";
|
5
6
|
import { createWalletEmitter } from "../wallet-emitter.js";
|
6
7
|
import { getDefaultAccountFactory } from "./lib/constants.js";
|
@@ -183,16 +184,19 @@ export function smartWallet(createOptions) {
|
|
183
184
|
if (!lastConnectOptions) {
|
184
185
|
throw new Error("Cannot switch chain without a previous connection");
|
185
186
|
}
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
187
|
+
const isZksyncChain = await isZkSyncChain(newChain);
|
188
|
+
if (!isZksyncChain) {
|
189
|
+
// check if factory is deployed
|
190
|
+
const factory = getContract({
|
191
|
+
address: createOptions.factoryAddress ||
|
192
|
+
getDefaultAccountFactory(createOptions.overrides?.entrypointAddress),
|
193
|
+
chain: newChain,
|
194
|
+
client: lastConnectOptions.client,
|
195
|
+
});
|
196
|
+
const isDeployed = await isContractDeployed(factory);
|
197
|
+
if (!isDeployed) {
|
198
|
+
throw new Error(`Factory contract not deployed on chain: ${newChain.id}`);
|
199
|
+
}
|
196
200
|
}
|
197
201
|
const { connectSmartWallet } = await import("./index.js");
|
198
202
|
const [connectedAccount, connectedChain] = await connectSmartWallet(_smartWallet, { ...lastConnectOptions, chain: newChain }, createOptions);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"smart-wallet.js","sourceRoot":"","sources":["../../../../src/wallets/smart/smart-wallet.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"smart-wallet.js","sourceRoot":"","sources":["../../../../src/wallets/smart/smart-wallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAEhE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAElF,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAK3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAE9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoHG;AACH,MAAM,UAAU,WAAW,CACzB,aAA2C;IAE3C,MAAM,OAAO,GAAG,mBAAmB,EAAW,CAAC;IAC/C,IAAI,OAAO,GAAwB,SAAS,CAAC;IAC7C,IAAI,YAAY,GAAwB,SAAS,CAAC;IAClD,IAAI,KAAK,GAAsB,SAAS,CAAC;IACzC,IAAI,kBAA+D,CAAC;IAEpE,MAAM,YAAY,GAAoB;QACpC,EAAE,EAAE,OAAO;QACX,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,QAAQ;YACN,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,KAAK,GAAG,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC;YAClD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,SAAS,EAAE,GAAG,EAAE,CAAC,aAAa;QAC9B,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO;QACzB,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY;QACnC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YAC7B,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1D,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,GAAG,MAAM,kBAAkB,CACjE,YAAY,EACZ,OAAO,EACP,aAAa,CACd,CAAC;YACF,iBAAiB;YACjB,kBAAkB,GAAG,OAAO,CAAC;YAC7B,OAAO,GAAG,gBAAgB,CAAC;YAC3B,KAAK,GAAG,cAAc,CAAC;YACvB,YAAY,CAAC;gBACX,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,UAAU,EAAE,OAAO;gBACnB,aAAa,EAAE,OAAO,CAAC,OAAO;aAC/B,CAAC,CAAC;YACH,iBAAiB;YACjB,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACzB,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1D,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,GAAG,MAAM,kBAAkB,CACjE,YAAY,EACZ,OAAO,EACP,aAAa,CACd,CAAC;YACF,iBAAiB;YACjB,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC;YACvC,kBAAkB,GAAG,OAAO,CAAC;YAC7B,OAAO,GAAG,gBAAgB,CAAC;YAC3B,KAAK,GAAG,cAAc,CAAC;YACvB,YAAY,CAAC;gBACX,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,UAAU,EAAE,OAAO;gBACnB,aAAa,EAAE,OAAO,CAAC,OAAO;aAC/B,CAAC,CAAC;YACH,iBAAiB;YACjB,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;YACxC,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,UAAU,EAAE,KAAK,IAAI,EAAE;YACrB,OAAO,GAAG,SAAS,CAAC;YACpB,KAAK,GAAG,SAAS,CAAC;YAClB,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAC7D,MAAM,qBAAqB,CAAC,YAAY,CAAC,CAAC;YAC1C,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QACxC,CAAC;QACD,WAAW,EAAE,KAAK,EAAE,QAAe,EAAE,EAAE;YACrC,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;YACvE,CAAC;YACD,MAAM,aAAa,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;YACpD,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,+BAA+B;gBAC/B,MAAM,OAAO,GAAG,WAAW,CAAC;oBAC1B,OAAO,EACL,aAAa,CAAC,cAAc;wBAC5B,wBAAwB,CACtB,aAAa,CAAC,SAAS,EAAE,iBAAiB,CAC3C;oBACH,KAAK,EAAE,QAAQ;oBACf,MAAM,EAAE,kBAAkB,CAAC,MAAM;iBAClC,CAAC,CAAC;gBACH,MAAM,UAAU,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;gBACrD,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,MAAM,IAAI,KAAK,CACb,2CAA2C,QAAQ,CAAC,EAAE,EAAE,CACzD,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YAC1D,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,GAAG,MAAM,kBAAkB,CACjE,YAAY,EACZ,EAAE,GAAG,kBAAkB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAC1C,aAAa,CACd,CAAC;YACF,iBAAiB;YACjB,OAAO,GAAG,gBAAgB,CAAC;YAC3B,KAAK,GAAG,cAAc,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;KACF,CAAC;IAEF,OAAO,YAAY,CAAC;AACtB,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"isZkSyncChain.d.ts","sourceRoot":"","sources":["../../../../../src/utils/any-evm/zksync/isZkSyncChain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;
|
1
|
+
{"version":3,"file":"isZkSyncChain.d.ts","sourceRoot":"","sources":["../../../../../src/utils/any-evm/zksync/isZkSyncChain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,wBAAsB,aAAa,CAAC,KAAK,EAAE,KAAK,oBAsB/C"}
|
package/dist/types/version.d.ts
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export declare const version = "5.64.
|
1
|
+
export declare const version = "5.64.6-nightly-f40d2474e6cc1227a8d05151210ef4793beb6142-20241101000357";
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,2EAA2E,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"smart-wallet.d.ts","sourceRoot":"","sources":["../../../../src/wallets/smart/smart-wallet.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"smart-wallet.d.ts","sourceRoot":"","sources":["../../../../src/wallets/smart/smart-wallet.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAW,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAE/D,OAAO,KAAK,EACV,gBAAgB,EAEjB,MAAM,oBAAoB,CAAC;AAG5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoHG;AACH,wBAAgB,WAAW,CACzB,aAAa,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAC1C,MAAM,CAAC,OAAO,CAAC,CAyGjB"}
|
package/package.json
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
import type { Chain } from "../../../chains/types.js";
|
2
|
-
import { getChainMetadata } from "../../../chains/utils.js";
|
3
2
|
|
4
3
|
export async function isZkSyncChain(chain: Chain) {
|
5
4
|
if (chain.id === 1337 || chain.id === 31337) {
|
@@ -22,12 +21,5 @@ export async function isZkSyncChain(chain: Chain) {
|
|
22
21
|
return true;
|
23
22
|
}
|
24
23
|
|
25
|
-
|
26
|
-
try {
|
27
|
-
const chainMetadata = await getChainMetadata(chain);
|
28
|
-
return chainMetadata.stackType === "zksync_stack";
|
29
|
-
} catch {
|
30
|
-
// If the network check fails, assume it's not a ZkSync chain
|
31
|
-
return false;
|
32
|
-
}
|
24
|
+
return false;
|
33
25
|
}
|
package/src/version.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export const version = "5.64.
|
1
|
+
export const version = "5.64.6-nightly-f40d2474e6cc1227a8d05151210ef4793beb6142-20241101000357";
|
@@ -2,6 +2,7 @@ import { trackConnect } from "../../analytics/track/connect.js";
|
|
2
2
|
import type { Chain } from "../../chains/types.js";
|
3
3
|
import { getCachedChainIfExists } from "../../chains/utils.js";
|
4
4
|
import { getContract } from "../../contract/contract.js";
|
5
|
+
import { isZkSyncChain } from "../../utils/any-evm/zksync/isZkSyncChain.js";
|
5
6
|
import { isContractDeployed } from "../../utils/bytecode/is-contract-deployed.js";
|
6
7
|
import type { Account, Wallet } from "../interfaces/wallet.js";
|
7
8
|
import { createWalletEmitter } from "../wallet-emitter.js";
|
@@ -202,19 +203,24 @@ export function smartWallet(
|
|
202
203
|
if (!lastConnectOptions) {
|
203
204
|
throw new Error("Cannot switch chain without a previous connection");
|
204
205
|
}
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
);
|
206
|
+
const isZksyncChain = await isZkSyncChain(newChain);
|
207
|
+
if (!isZksyncChain) {
|
208
|
+
// check if factory is deployed
|
209
|
+
const factory = getContract({
|
210
|
+
address:
|
211
|
+
createOptions.factoryAddress ||
|
212
|
+
getDefaultAccountFactory(
|
213
|
+
createOptions.overrides?.entrypointAddress,
|
214
|
+
),
|
215
|
+
chain: newChain,
|
216
|
+
client: lastConnectOptions.client,
|
217
|
+
});
|
218
|
+
const isDeployed = await isContractDeployed(factory);
|
219
|
+
if (!isDeployed) {
|
220
|
+
throw new Error(
|
221
|
+
`Factory contract not deployed on chain: ${newChain.id}`,
|
222
|
+
);
|
223
|
+
}
|
218
224
|
}
|
219
225
|
const { connectSmartWallet } = await import("./index.js");
|
220
226
|
const [connectedAccount, connectedChain] = await connectSmartWallet(
|