thirdweb 5.102.4-nightly-3d1c321bd6f5783bdee43185deef88f91b325a23-20250604000438 → 5.102.4
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/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/cjs/wallets/ecosystem/get-ecosystem-wallet-auth-options.js.map +1 -1
- package/dist/cjs/wallets/in-app/core/wallet/in-app-core.js +42 -55
- package/dist/cjs/wallets/in-app/core/wallet/in-app-core.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/esm/wallets/ecosystem/get-ecosystem-wallet-auth-options.js.map +1 -1
- package/dist/esm/wallets/in-app/core/wallet/in-app-core.js +42 -55
- package/dist/esm/wallets/in-app/core/wallet/in-app-core.js.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/version.d.ts.map +1 -1
- package/dist/types/wallets/ecosystem/get-ecosystem-wallet-auth-options.d.ts +2 -1
- package/dist/types/wallets/ecosystem/get-ecosystem-wallet-auth-options.d.ts.map +1 -1
- package/dist/types/wallets/in-app/core/wallet/in-app-core.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/version.ts +1 -1
- package/src/wallets/ecosystem/get-ecosystem-wallet-auth-options.ts +2 -1
- package/src/wallets/in-app/core/wallet/in-app-core.ts +50 -63
package/dist/cjs/version.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.version = void 0;
|
4
|
-
exports.version = "5.102.4
|
4
|
+
exports.version = "5.102.4";
|
5
5
|
//# sourceMappingURL=version.js.map
|
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,SAAS,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"get-ecosystem-wallet-auth-options.js","sourceRoot":"","sources":["../../../../src/wallets/ecosystem/get-ecosystem-wallet-auth-options.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"get-ecosystem-wallet-auth-options.js","sourceRoot":"","sources":["../../../../src/wallets/ecosystem/get-ecosystem-wallet-auth-options.ts"],"names":[],"mappings":";;AA2BA,4CAoCC;AA/DD,uDAA4D;AAC5D,mEAA6D;AAoB7D;;;;;GAKG;AACI,KAAK,UAAU,gBAAgB,CACpC,QAA2B;IAE3B,OAAO,IAAA,wBAAS,EACd,KAAK,IAAI,EAAE;QACT,MAAM,GAAG,GAAG,MAAM,KAAK,CACrB,GAAG,IAAA,+BAAkB,EAAC,aAAa,CAAC,kCAAkC,EACtE;YACE,OAAO,EAAE;gBACP,gBAAgB,EAAE,QAAQ;aAC3B;SACF,CACF,CAAC;QAEF,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAE9B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CACb,IAAI,CAAC,OAAO;gBACV,2CAA2C,QAAQ,qDAAqD,CAC3G,CAAC;QACJ,CAAC;QAED,uGAAuG;QACvG,IAAI,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;YACxE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,EACD;QACE,QAAQ,EAAE,4BAA4B,QAAQ,EAAE;QAChD,SAAS,EAAE,IAAI,GAAG,EAAE,GAAG,CAAC,EAAE,SAAS;KACpC,CACF,CAAC;AACJ,CAAC"}
|
@@ -37,26 +37,23 @@ function createInAppWallet(args) {
|
|
37
37
|
let chain = undefined;
|
38
38
|
let client;
|
39
39
|
let authToken = null;
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
const ecosystemOptions = await (0, get_ecosystem_wallet_auth_options_js_1.getEcosystemInfo)(ecosystem.id);
|
58
|
-
const smartAccountOptions = ecosystemOptions?.smartAccountOptions;
|
59
|
-
if (smartAccountOptions) {
|
40
|
+
const resolveSmartAccountOptionsFromEcosystem = async (options) => {
|
41
|
+
if (ecosystem) {
|
42
|
+
const ecosystemOptions = await (0, get_ecosystem_wallet_auth_options_js_1.getEcosystemInfo)(ecosystem.id);
|
43
|
+
const smartAccountOptions = ecosystemOptions?.smartAccountOptions;
|
44
|
+
if (smartAccountOptions) {
|
45
|
+
const executionMode = ecosystemOptions.smartAccountOptions.executionMode;
|
46
|
+
if (executionMode === "EIP7702") {
|
47
|
+
createOptions = {
|
48
|
+
...createOptions,
|
49
|
+
executionMode: {
|
50
|
+
mode: "EIP7702",
|
51
|
+
sponsorGas: smartAccountOptions.sponsorGas,
|
52
|
+
},
|
53
|
+
};
|
54
|
+
}
|
55
|
+
else {
|
56
|
+
// default to 4337
|
60
57
|
const { defaultChainId } = ecosystemOptions.smartAccountOptions;
|
61
58
|
const preferredChain = options.chain ??
|
62
59
|
(defaultChainId ? (0, utils_js_1.getCachedChain)(defaultChainId) : undefined);
|
@@ -73,6 +70,25 @@ function createInAppWallet(args) {
|
|
73
70
|
};
|
74
71
|
}
|
75
72
|
}
|
73
|
+
}
|
74
|
+
};
|
75
|
+
return {
|
76
|
+
id: walletId,
|
77
|
+
getAuthToken: () => authToken,
|
78
|
+
subscribe: emitter.subscribe,
|
79
|
+
getChain() {
|
80
|
+
if (!chain) {
|
81
|
+
return undefined;
|
82
|
+
}
|
83
|
+
chain = (0, utils_js_1.getCachedChainIfExists)(chain.id) || chain;
|
84
|
+
return chain;
|
85
|
+
},
|
86
|
+
getConfig: () => createOptions,
|
87
|
+
getAccount: () => account,
|
88
|
+
autoConnect: async (options) => {
|
89
|
+
const { autoConnectInAppWallet } = await Promise.resolve().then(() => require("./index.js"));
|
90
|
+
const connector = await getOrCreateInAppWalletConnector(options.client, connectorFactory, ecosystem);
|
91
|
+
await resolveSmartAccountOptionsFromEcosystem(options);
|
76
92
|
const { account: connectedAccount, chain: connectedChain, adminAccount: _adminAccount, } = await autoConnectInAppWallet(options, createOptions, connector);
|
77
93
|
// set the states
|
78
94
|
client = options.client;
|
@@ -99,26 +115,7 @@ function createInAppWallet(args) {
|
|
99
115
|
connect: async (options) => {
|
100
116
|
const { connectInAppWallet } = await Promise.resolve().then(() => require("./index.js"));
|
101
117
|
const connector = await getOrCreateInAppWalletConnector(options.client, connectorFactory, ecosystem);
|
102
|
-
|
103
|
-
const ecosystemOptions = await (0, get_ecosystem_wallet_auth_options_js_1.getEcosystemInfo)(ecosystem.id);
|
104
|
-
const smartAccountOptions = ecosystemOptions?.smartAccountOptions;
|
105
|
-
if (smartAccountOptions) {
|
106
|
-
const { defaultChainId } = ecosystemOptions.smartAccountOptions;
|
107
|
-
const preferredChain = options.chain ??
|
108
|
-
(defaultChainId ? (0, utils_js_1.getCachedChain)(defaultChainId) : undefined);
|
109
|
-
if (!preferredChain) {
|
110
|
-
throw new Error(`A chain must be provided either via 'chain' in connect options or 'defaultChainId' in ecosystem configuration. Please pass it via connect() or update the ecosystem configuration.`);
|
111
|
-
}
|
112
|
-
createOptions = {
|
113
|
-
...createOptions,
|
114
|
-
smartAccount: {
|
115
|
-
chain: preferredChain,
|
116
|
-
sponsorGas: smartAccountOptions.sponsorGas,
|
117
|
-
factoryAddress: smartAccountOptions.accountFactoryAddress,
|
118
|
-
},
|
119
|
-
};
|
120
|
-
}
|
121
|
-
}
|
118
|
+
await resolveSmartAccountOptionsFromEcosystem(options);
|
122
119
|
const { account: connectedAccount, chain: connectedChain, adminAccount: _adminAccount, } = await connectInAppWallet(options, createOptions, connector);
|
123
120
|
// set the states
|
124
121
|
client = options.client;
|
@@ -158,24 +155,14 @@ function createInAppWallet(args) {
|
|
158
155
|
emitter.emit("disconnect", undefined);
|
159
156
|
},
|
160
157
|
switchChain: async (newChain) => {
|
161
|
-
if (createOptions?.smartAccount
|
158
|
+
if ((createOptions?.smartAccount ||
|
159
|
+
createOptions?.executionMode?.mode === "EIP4337") &&
|
160
|
+
client &&
|
161
|
+
account) {
|
162
162
|
// if account abstraction is enabled, reconnect to smart account on the new chain
|
163
163
|
const { autoConnectInAppWallet } = await Promise.resolve().then(() => require("./index.js"));
|
164
164
|
const connector = await getOrCreateInAppWalletConnector(client, connectorFactory, ecosystem);
|
165
|
-
|
166
|
-
const ecosystemOptions = await (0, get_ecosystem_wallet_auth_options_js_1.getEcosystemInfo)(ecosystem.id);
|
167
|
-
const smartAccountOptions = ecosystemOptions?.smartAccountOptions;
|
168
|
-
if (smartAccountOptions) {
|
169
|
-
createOptions = {
|
170
|
-
...createOptions,
|
171
|
-
smartAccount: {
|
172
|
-
chain: newChain,
|
173
|
-
sponsorGas: smartAccountOptions.sponsorGas,
|
174
|
-
factoryAddress: smartAccountOptions.accountFactoryAddress,
|
175
|
-
},
|
176
|
-
};
|
177
|
-
}
|
178
|
-
}
|
165
|
+
await resolveSmartAccountOptionsFromEcosystem({ chain: newChain });
|
179
166
|
const { account: connectedAccount, chain: connectedChain, adminAccount: _adminAccount, } = await autoConnectInAppWallet({
|
180
167
|
chain: newChain,
|
181
168
|
client,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"in-app-core.js","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/core/wallet/in-app-core.ts"],"names":[],"mappings":";;AAuBA,0EAgBC;AAKD,
|
1
|
+
{"version":3,"file":"in-app-core.js","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/core/wallet/in-app-core.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/version.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export const version = "5.102.4
|
1
|
+
export const version = "5.102.4";
|
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,SAAS,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"get-ecosystem-wallet-auth-options.js","sourceRoot":"","sources":["../../../../src/wallets/ecosystem/get-ecosystem-wallet-auth-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;
|
1
|
+
{"version":3,"file":"get-ecosystem-wallet-auth-options.js","sourceRoot":"","sources":["../../../../src/wallets/ecosystem/get-ecosystem-wallet-auth-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAoB7D;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAA2B;IAE3B,OAAO,SAAS,CACd,KAAK,IAAI,EAAE;QACT,MAAM,GAAG,GAAG,MAAM,KAAK,CACrB,GAAG,kBAAkB,CAAC,aAAa,CAAC,kCAAkC,EACtE;YACE,OAAO,EAAE;gBACP,gBAAgB,EAAE,QAAQ;aAC3B;SACF,CACF,CAAC;QAEF,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAE9B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CACb,IAAI,CAAC,OAAO;gBACV,2CAA2C,QAAQ,qDAAqD,CAC3G,CAAC;QACJ,CAAC;QAED,uGAAuG;QACvG,IAAI,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;YACxE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,EACD;QACE,QAAQ,EAAE,4BAA4B,QAAQ,EAAE;QAChD,SAAS,EAAE,IAAI,GAAG,EAAE,GAAG,CAAC,EAAE,SAAS;KACpC,CACF,CAAC;AACJ,CAAC"}
|
@@ -33,26 +33,23 @@ export function createInAppWallet(args) {
|
|
33
33
|
let chain = undefined;
|
34
34
|
let client;
|
35
35
|
let authToken = null;
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
const ecosystemOptions = await getEcosystemInfo(ecosystem.id);
|
54
|
-
const smartAccountOptions = ecosystemOptions?.smartAccountOptions;
|
55
|
-
if (smartAccountOptions) {
|
36
|
+
const resolveSmartAccountOptionsFromEcosystem = async (options) => {
|
37
|
+
if (ecosystem) {
|
38
|
+
const ecosystemOptions = await getEcosystemInfo(ecosystem.id);
|
39
|
+
const smartAccountOptions = ecosystemOptions?.smartAccountOptions;
|
40
|
+
if (smartAccountOptions) {
|
41
|
+
const executionMode = ecosystemOptions.smartAccountOptions.executionMode;
|
42
|
+
if (executionMode === "EIP7702") {
|
43
|
+
createOptions = {
|
44
|
+
...createOptions,
|
45
|
+
executionMode: {
|
46
|
+
mode: "EIP7702",
|
47
|
+
sponsorGas: smartAccountOptions.sponsorGas,
|
48
|
+
},
|
49
|
+
};
|
50
|
+
}
|
51
|
+
else {
|
52
|
+
// default to 4337
|
56
53
|
const { defaultChainId } = ecosystemOptions.smartAccountOptions;
|
57
54
|
const preferredChain = options.chain ??
|
58
55
|
(defaultChainId ? getCachedChain(defaultChainId) : undefined);
|
@@ -69,6 +66,25 @@ export function createInAppWallet(args) {
|
|
69
66
|
};
|
70
67
|
}
|
71
68
|
}
|
69
|
+
}
|
70
|
+
};
|
71
|
+
return {
|
72
|
+
id: walletId,
|
73
|
+
getAuthToken: () => authToken,
|
74
|
+
subscribe: emitter.subscribe,
|
75
|
+
getChain() {
|
76
|
+
if (!chain) {
|
77
|
+
return undefined;
|
78
|
+
}
|
79
|
+
chain = getCachedChainIfExists(chain.id) || chain;
|
80
|
+
return chain;
|
81
|
+
},
|
82
|
+
getConfig: () => createOptions,
|
83
|
+
getAccount: () => account,
|
84
|
+
autoConnect: async (options) => {
|
85
|
+
const { autoConnectInAppWallet } = await import("./index.js");
|
86
|
+
const connector = await getOrCreateInAppWalletConnector(options.client, connectorFactory, ecosystem);
|
87
|
+
await resolveSmartAccountOptionsFromEcosystem(options);
|
72
88
|
const { account: connectedAccount, chain: connectedChain, adminAccount: _adminAccount, } = await autoConnectInAppWallet(options, createOptions, connector);
|
73
89
|
// set the states
|
74
90
|
client = options.client;
|
@@ -95,26 +111,7 @@ export function createInAppWallet(args) {
|
|
95
111
|
connect: async (options) => {
|
96
112
|
const { connectInAppWallet } = await import("./index.js");
|
97
113
|
const connector = await getOrCreateInAppWalletConnector(options.client, connectorFactory, ecosystem);
|
98
|
-
|
99
|
-
const ecosystemOptions = await getEcosystemInfo(ecosystem.id);
|
100
|
-
const smartAccountOptions = ecosystemOptions?.smartAccountOptions;
|
101
|
-
if (smartAccountOptions) {
|
102
|
-
const { defaultChainId } = ecosystemOptions.smartAccountOptions;
|
103
|
-
const preferredChain = options.chain ??
|
104
|
-
(defaultChainId ? getCachedChain(defaultChainId) : undefined);
|
105
|
-
if (!preferredChain) {
|
106
|
-
throw new Error(`A chain must be provided either via 'chain' in connect options or 'defaultChainId' in ecosystem configuration. Please pass it via connect() or update the ecosystem configuration.`);
|
107
|
-
}
|
108
|
-
createOptions = {
|
109
|
-
...createOptions,
|
110
|
-
smartAccount: {
|
111
|
-
chain: preferredChain,
|
112
|
-
sponsorGas: smartAccountOptions.sponsorGas,
|
113
|
-
factoryAddress: smartAccountOptions.accountFactoryAddress,
|
114
|
-
},
|
115
|
-
};
|
116
|
-
}
|
117
|
-
}
|
114
|
+
await resolveSmartAccountOptionsFromEcosystem(options);
|
118
115
|
const { account: connectedAccount, chain: connectedChain, adminAccount: _adminAccount, } = await connectInAppWallet(options, createOptions, connector);
|
119
116
|
// set the states
|
120
117
|
client = options.client;
|
@@ -154,24 +151,14 @@ export function createInAppWallet(args) {
|
|
154
151
|
emitter.emit("disconnect", undefined);
|
155
152
|
},
|
156
153
|
switchChain: async (newChain) => {
|
157
|
-
if (createOptions?.smartAccount
|
154
|
+
if ((createOptions?.smartAccount ||
|
155
|
+
createOptions?.executionMode?.mode === "EIP4337") &&
|
156
|
+
client &&
|
157
|
+
account) {
|
158
158
|
// if account abstraction is enabled, reconnect to smart account on the new chain
|
159
159
|
const { autoConnectInAppWallet } = await import("./index.js");
|
160
160
|
const connector = await getOrCreateInAppWalletConnector(client, connectorFactory, ecosystem);
|
161
|
-
|
162
|
-
const ecosystemOptions = await getEcosystemInfo(ecosystem.id);
|
163
|
-
const smartAccountOptions = ecosystemOptions?.smartAccountOptions;
|
164
|
-
if (smartAccountOptions) {
|
165
|
-
createOptions = {
|
166
|
-
...createOptions,
|
167
|
-
smartAccount: {
|
168
|
-
chain: newChain,
|
169
|
-
sponsorGas: smartAccountOptions.sponsorGas,
|
170
|
-
factoryAddress: smartAccountOptions.accountFactoryAddress,
|
171
|
-
},
|
172
|
-
};
|
173
|
-
}
|
174
|
-
}
|
161
|
+
await resolveSmartAccountOptionsFromEcosystem({ chain: newChain });
|
175
162
|
const { account: connectedAccount, chain: connectedChain, adminAccount: _adminAccount, } = await autoConnectInAppWallet({
|
176
163
|
chain: newChain,
|
177
164
|
client,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"in-app-core.js","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/core/wallet/in-app-core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AAEtE,OAAO,EACL,cAAc,EACd,sBAAsB,GACvB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yDAAyD,CAAC;AAE3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAQjE,MAAM,cAAc,GAAG,IAAI,GAAG,EAA0B,CAAC;AAEzD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,MAAsB,EACtB,gBAAqE,EACrE,SAAqB;IAErB,MAAM,GAAG,GAAG,SAAS,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,SAAS;QACT,gBAAgB,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;KAChD,CAAC,CAAC;IACH,IAAI,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,cAAc,CAAC,GAAG,CAAC,GAAG,CAAmB,CAAC;IACnD,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACjD,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACnC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAIjC;IACC,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,gBAAgB,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAC5E,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;IACpD,MAAM,OAAO,GAAG,mBAAmB,EAAW,CAAC;IAC/C,IAAI,aAAa,GAAG,cAAc,CAAC;IACnC,IAAI,OAAO,GAAwB,SAAS,CAAC;IAC7C,IAAI,YAAY,GAAwB,SAAS,CAAC,CAAC,qEAAqE;IACxH,IAAI,KAAK,GAAsB,SAAS,CAAC;IACzC,IAAI,MAAkC,CAAC;IACvC,IAAI,SAAS,GAAkB,IAAI,CAAC;IAEpC,
|
1
|
+
{"version":3,"file":"in-app-core.js","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/core/wallet/in-app-core.ts"],"names":[],"mappings":"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"}
|
package/dist/types/version.d.ts
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export declare const version = "5.102.4
|
1
|
+
export declare const version = "5.102.4";
|
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,YAAY,CAAC"}
|
@@ -11,7 +11,8 @@ type EcosystemOptions = {
|
|
11
11
|
type SmartAccountOptions = {
|
12
12
|
defaultChainId: number;
|
13
13
|
sponsorGas: boolean;
|
14
|
-
accountFactoryAddress
|
14
|
+
accountFactoryAddress?: string;
|
15
|
+
executionMode?: "EIP4337" | "EIP7702";
|
15
16
|
};
|
16
17
|
/**
|
17
18
|
* Retrieves the specified auth options for a given ecosystem wallet, if any.
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"get-ecosystem-wallet-auth-options.d.ts","sourceRoot":"","sources":["../../../../src/wallets/ecosystem/get-ecosystem-wallet-auth-options.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,mBAAmB,EAAE,mBAAmB,CAAC;CAC1C,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;
|
1
|
+
{"version":3,"file":"get-ecosystem-wallet-auth-options.d.ts","sourceRoot":"","sources":["../../../../src/wallets/ecosystem/get-ecosystem-wallet-auth-options.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,mBAAmB,EAAE,mBAAmB,CAAC;CAC1C,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,aAAa,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;CACvC,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,iBAAiB,GAC1B,OAAO,CAAC,gBAAgB,CAAC,CAkC3B"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"in-app-core.d.ts","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/core/wallet/in-app-core.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAGnE,OAAO,KAAK,EAAW,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAErE,OAAO,KAAK,EACV,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAI5C;;GAEG;AACH,wBAAsB,+BAA+B,CACnD,MAAM,EAAE,cAAc,EACtB,gBAAgB,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,OAAO,CAAC,cAAc,CAAC,EACrE,SAAS,CAAC,EAAE,SAAS,2BAatB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,aAAa,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,gBAAgB,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACtE,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,GAAG,MAAM,CAAC,OAAO,GAAG,iBAAiB,CAAC,
|
1
|
+
{"version":3,"file":"in-app-core.d.ts","sourceRoot":"","sources":["../../../../../../src/wallets/in-app/core/wallet/in-app-core.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAGnE,OAAO,KAAK,EAAW,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAErE,OAAO,KAAK,EACV,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAI5C;;GAEG;AACH,wBAAsB,+BAA+B,CACnD,MAAM,EAAE,cAAc,EACtB,gBAAgB,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,OAAO,CAAC,cAAc,CAAC,EACrE,SAAS,CAAC,EAAE,SAAS,2BAatB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,aAAa,CAAC,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,gBAAgB,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACtE,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,GAAG,MAAM,CAAC,OAAO,GAAG,iBAAiB,CAAC,CAwMtC"}
|
package/package.json
CHANGED
package/src/version.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export const version = "5.102.4
|
1
|
+
export const version = "5.102.4";
|
@@ -57,6 +57,47 @@ export function createInAppWallet(args: {
|
|
57
57
|
let client: ThirdwebClient | undefined;
|
58
58
|
let authToken: string | null = null;
|
59
59
|
|
60
|
+
const resolveSmartAccountOptionsFromEcosystem = async (options: {
|
61
|
+
chain?: Chain;
|
62
|
+
}) => {
|
63
|
+
if (ecosystem) {
|
64
|
+
const ecosystemOptions = await getEcosystemInfo(ecosystem.id);
|
65
|
+
const smartAccountOptions = ecosystemOptions?.smartAccountOptions;
|
66
|
+
if (smartAccountOptions) {
|
67
|
+
const executionMode =
|
68
|
+
ecosystemOptions.smartAccountOptions.executionMode;
|
69
|
+
if (executionMode === "EIP7702") {
|
70
|
+
createOptions = {
|
71
|
+
...createOptions,
|
72
|
+
executionMode: {
|
73
|
+
mode: "EIP7702",
|
74
|
+
sponsorGas: smartAccountOptions.sponsorGas,
|
75
|
+
},
|
76
|
+
};
|
77
|
+
} else {
|
78
|
+
// default to 4337
|
79
|
+
const { defaultChainId } = ecosystemOptions.smartAccountOptions;
|
80
|
+
const preferredChain =
|
81
|
+
options.chain ??
|
82
|
+
(defaultChainId ? getCachedChain(defaultChainId) : undefined);
|
83
|
+
if (!preferredChain) {
|
84
|
+
throw new Error(
|
85
|
+
`A chain must be provided either via 'chain' in connect options or 'defaultChainId' in ecosystem configuration. Please pass it via connect() or update the ecosystem configuration.`,
|
86
|
+
);
|
87
|
+
}
|
88
|
+
createOptions = {
|
89
|
+
...createOptions,
|
90
|
+
smartAccount: {
|
91
|
+
chain: preferredChain,
|
92
|
+
sponsorGas: smartAccountOptions.sponsorGas,
|
93
|
+
factoryAddress: smartAccountOptions.accountFactoryAddress,
|
94
|
+
},
|
95
|
+
};
|
96
|
+
}
|
97
|
+
}
|
98
|
+
}
|
99
|
+
};
|
100
|
+
|
60
101
|
return {
|
61
102
|
id: walletId,
|
62
103
|
getAuthToken: () => authToken,
|
@@ -80,30 +121,7 @@ export function createInAppWallet(args: {
|
|
80
121
|
ecosystem,
|
81
122
|
);
|
82
123
|
|
83
|
-
|
84
|
-
const ecosystemOptions = await getEcosystemInfo(ecosystem.id);
|
85
|
-
const smartAccountOptions = ecosystemOptions?.smartAccountOptions;
|
86
|
-
if (smartAccountOptions) {
|
87
|
-
const { defaultChainId } = ecosystemOptions.smartAccountOptions;
|
88
|
-
const preferredChain =
|
89
|
-
options.chain ??
|
90
|
-
(defaultChainId ? getCachedChain(defaultChainId) : undefined);
|
91
|
-
if (!preferredChain) {
|
92
|
-
throw new Error(
|
93
|
-
`A chain must be provided either via 'chain' in connect options or 'defaultChainId' in ecosystem configuration. Please pass it via connect() or update the ecosystem configuration.`,
|
94
|
-
);
|
95
|
-
}
|
96
|
-
|
97
|
-
createOptions = {
|
98
|
-
...createOptions,
|
99
|
-
smartAccount: {
|
100
|
-
chain: preferredChain,
|
101
|
-
sponsorGas: smartAccountOptions.sponsorGas,
|
102
|
-
factoryAddress: smartAccountOptions.accountFactoryAddress,
|
103
|
-
},
|
104
|
-
};
|
105
|
-
}
|
106
|
-
}
|
124
|
+
await resolveSmartAccountOptionsFromEcosystem(options);
|
107
125
|
|
108
126
|
const {
|
109
127
|
account: connectedAccount,
|
@@ -140,30 +158,7 @@ export function createInAppWallet(args: {
|
|
140
158
|
ecosystem,
|
141
159
|
);
|
142
160
|
|
143
|
-
|
144
|
-
const ecosystemOptions = await getEcosystemInfo(ecosystem.id);
|
145
|
-
const smartAccountOptions = ecosystemOptions?.smartAccountOptions;
|
146
|
-
if (smartAccountOptions) {
|
147
|
-
const { defaultChainId } = ecosystemOptions.smartAccountOptions;
|
148
|
-
const preferredChain =
|
149
|
-
options.chain ??
|
150
|
-
(defaultChainId ? getCachedChain(defaultChainId) : undefined);
|
151
|
-
if (!preferredChain) {
|
152
|
-
throw new Error(
|
153
|
-
`A chain must be provided either via 'chain' in connect options or 'defaultChainId' in ecosystem configuration. Please pass it via connect() or update the ecosystem configuration.`,
|
154
|
-
);
|
155
|
-
}
|
156
|
-
|
157
|
-
createOptions = {
|
158
|
-
...createOptions,
|
159
|
-
smartAccount: {
|
160
|
-
chain: preferredChain,
|
161
|
-
sponsorGas: smartAccountOptions.sponsorGas,
|
162
|
-
factoryAddress: smartAccountOptions.accountFactoryAddress,
|
163
|
-
},
|
164
|
-
};
|
165
|
-
}
|
166
|
-
}
|
161
|
+
await resolveSmartAccountOptionsFromEcosystem(options);
|
167
162
|
|
168
163
|
const {
|
169
164
|
account: connectedAccount,
|
@@ -212,7 +207,12 @@ export function createInAppWallet(args: {
|
|
212
207
|
emitter.emit("disconnect", undefined);
|
213
208
|
},
|
214
209
|
switchChain: async (newChain) => {
|
215
|
-
if (
|
210
|
+
if (
|
211
|
+
(createOptions?.smartAccount ||
|
212
|
+
createOptions?.executionMode?.mode === "EIP4337") &&
|
213
|
+
client &&
|
214
|
+
account
|
215
|
+
) {
|
216
216
|
// if account abstraction is enabled, reconnect to smart account on the new chain
|
217
217
|
const { autoConnectInAppWallet } = await import("./index.js");
|
218
218
|
const connector = await getOrCreateInAppWalletConnector(
|
@@ -221,20 +221,7 @@ export function createInAppWallet(args: {
|
|
221
221
|
ecosystem,
|
222
222
|
);
|
223
223
|
|
224
|
-
|
225
|
-
const ecosystemOptions = await getEcosystemInfo(ecosystem.id);
|
226
|
-
const smartAccountOptions = ecosystemOptions?.smartAccountOptions;
|
227
|
-
if (smartAccountOptions) {
|
228
|
-
createOptions = {
|
229
|
-
...createOptions,
|
230
|
-
smartAccount: {
|
231
|
-
chain: newChain,
|
232
|
-
sponsorGas: smartAccountOptions.sponsorGas,
|
233
|
-
factoryAddress: smartAccountOptions.accountFactoryAddress,
|
234
|
-
},
|
235
|
-
};
|
236
|
-
}
|
237
|
-
}
|
224
|
+
await resolveSmartAccountOptionsFromEcosystem({ chain: newChain });
|
238
225
|
|
239
226
|
const {
|
240
227
|
account: connectedAccount,
|