@account-kit/smart-contracts 4.35.0 → 4.35.1
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/esm/plugindefs/session-key/config.js.map +1 -1
- package/dist/esm/src/light-account/accounts/account.js.map +1 -1
- package/dist/esm/src/light-account/accounts/base.js.map +1 -1
- package/dist/esm/src/light-account/accounts/multiOwner.js.map +1 -1
- package/dist/esm/src/light-account/accounts/predictAddress.js.map +1 -1
- package/dist/esm/src/light-account/actions/transferOwnership.d.ts +1 -1
- package/dist/esm/src/light-account/actions/transferOwnership.js.map +1 -1
- package/dist/esm/src/light-account/actions/updateOwners.js.map +1 -1
- package/dist/esm/src/light-account/clients/alchemyClient.js.map +1 -1
- package/dist/esm/src/light-account/clients/client.js.map +1 -1
- package/dist/esm/src/light-account/clients/multiOwnerAlchemyClient.js.map +1 -1
- package/dist/esm/src/light-account/clients/multiOwnerLightAccount.js.map +1 -1
- package/dist/esm/src/light-account/decorators/lightAccount.js.map +1 -1
- package/dist/esm/src/light-account/decorators/multiOwnerLightAccount.js.map +1 -1
- package/dist/esm/src/light-account/types.js.map +1 -1
- package/dist/esm/src/light-account/utils.d.ts +1 -1
- package/dist/esm/src/light-account/utils.js.map +1 -1
- package/dist/esm/src/ma-v2/account/common/modularAccountV2Base.js.map +1 -1
- package/dist/esm/src/ma-v2/account/modularAccountV2.js.map +1 -1
- package/dist/esm/src/ma-v2/account/nativeSMASigner.d.ts +2 -207
- package/dist/esm/src/ma-v2/account/nativeSMASigner.js +7 -4
- package/dist/esm/src/ma-v2/account/nativeSMASigner.js.map +1 -1
- package/dist/esm/src/ma-v2/account/predictAddress.js.map +1 -1
- package/dist/esm/src/ma-v2/actions/deferralActions.js.map +1 -1
- package/dist/esm/src/ma-v2/actions/install-validation/installValidation.js.map +1 -1
- package/dist/esm/src/ma-v2/client/client.js.map +1 -1
- package/dist/esm/src/ma-v2/modules/allowlist-module/module.js.map +1 -1
- package/dist/esm/src/ma-v2/modules/native-token-limit-module/module.js.map +1 -1
- package/dist/esm/src/ma-v2/modules/paymaster-guard-module/module.js.map +1 -1
- package/dist/esm/src/ma-v2/modules/single-signer-validation/module.js.map +1 -1
- package/dist/esm/src/ma-v2/modules/single-signer-validation/signer.d.ts +2 -207
- package/dist/esm/src/ma-v2/modules/single-signer-validation/signer.js +7 -4
- package/dist/esm/src/ma-v2/modules/single-signer-validation/signer.js.map +1 -1
- package/dist/esm/src/ma-v2/modules/time-range-module/module.js.map +1 -1
- package/dist/esm/src/ma-v2/modules/utils.js.map +1 -1
- package/dist/esm/src/ma-v2/modules/webauthn-validation/module.js.map +1 -1
- package/dist/esm/src/ma-v2/permissionBuilder.js.map +1 -1
- package/dist/esm/src/ma-v2/permissionBuilderErrors.js +1 -1
- package/dist/esm/src/ma-v2/permissionBuilderErrors.js.map +1 -1
- package/dist/esm/src/ma-v2/utils.js.map +1 -1
- package/dist/esm/src/msca/account/multiOwnerAccount.js.map +1 -1
- package/dist/esm/src/msca/account/multisigAccount.d.ts +1 -1
- package/dist/esm/src/msca/account/multisigAccount.js.map +1 -1
- package/dist/esm/src/msca/account-loupe/decorator.js.map +1 -1
- package/dist/esm/src/msca/account-loupe/types.js.map +1 -1
- package/dist/esm/src/msca/client/alchemyClient.js.map +1 -1
- package/dist/esm/src/msca/client/client.js.map +1 -1
- package/dist/esm/src/msca/client/multiSigAlchemyClient.js.map +1 -1
- package/dist/esm/src/msca/plugin-manager/decorator.js.map +1 -1
- package/dist/esm/src/msca/plugin-manager/installPlugin.js.map +1 -1
- package/dist/esm/src/msca/plugin-manager/uninstallPlugin.js.map +1 -1
- package/dist/esm/src/msca/plugins/multi-owner/extension.js.map +1 -1
- package/dist/esm/src/msca/plugins/multi-owner/plugin.js.map +1 -1
- package/dist/esm/src/msca/plugins/multi-owner/signer.d.ts +3 -208
- package/dist/esm/src/msca/plugins/multi-owner/signer.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/actions/getThreshold.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/actions/isOwnerOf.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/actions/proposeUserOperation.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/actions/readOwners.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/actions/signMultisigUserOperation.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/extension.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/middleware.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/plugin.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/signer.d.ts +3 -208
- package/dist/esm/src/msca/plugins/multisig/signer.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/types.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/utils/formatSignatures.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/utils/getSignerType.d.ts +1 -1
- package/dist/esm/src/msca/plugins/multisig/utils/getSignerType.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/utils/splitAggregatedSignature.d.ts +1 -1
- package/dist/esm/src/msca/plugins/multisig/utils/splitAggregatedSignature.js.map +1 -1
- package/dist/esm/src/msca/plugins/session-key/extension.js.map +1 -1
- package/dist/esm/src/msca/plugins/session-key/permissions.js.map +1 -1
- package/dist/esm/src/msca/plugins/session-key/plugin.js.map +1 -1
- package/dist/esm/src/msca/plugins/session-key/signer.d.ts +4 -209
- package/dist/esm/src/msca/plugins/session-key/signer.js.map +1 -1
- package/dist/esm/src/msca/plugins/session-key/utils.js.map +1 -1
- package/dist/esm/src/msca/plugins/types.js.map +1 -1
- package/dist/esm/src/msca/utils.js.map +1 -1
- package/dist/types/src/light-account/accounts/account.d.ts.map +1 -1
- package/dist/types/src/light-account/accounts/base.d.ts.map +1 -1
- package/dist/types/src/light-account/accounts/multiOwner.d.ts.map +1 -1
- package/dist/types/src/light-account/actions/transferOwnership.d.ts +1 -1
- package/dist/types/src/light-account/actions/transferOwnership.d.ts.map +1 -1
- package/dist/types/src/light-account/actions/updateOwners.d.ts.map +1 -1
- package/dist/types/src/light-account/types.d.ts.map +1 -1
- package/dist/types/src/light-account/utils.d.ts +1 -1
- package/dist/types/src/light-account/utils.d.ts.map +1 -1
- package/dist/types/src/ma-v2/account/nativeSMASigner.d.ts +2 -207
- package/dist/types/src/ma-v2/account/nativeSMASigner.d.ts.map +1 -1
- package/dist/types/src/ma-v2/modules/allowlist-module/module.d.ts.map +1 -1
- package/dist/types/src/ma-v2/modules/single-signer-validation/signer.d.ts +2 -207
- package/dist/types/src/ma-v2/modules/single-signer-validation/signer.d.ts.map +1 -1
- package/dist/types/src/ma-v2/modules/utils.d.ts.map +1 -1
- package/dist/types/src/ma-v2/permissionBuilderErrors.d.ts.map +1 -1
- package/dist/types/src/ma-v2/utils.d.ts.map +1 -1
- package/dist/types/src/msca/account/multisigAccount.d.ts +1 -1
- package/dist/types/src/msca/account/multisigAccount.d.ts.map +1 -1
- package/dist/types/src/msca/plugin-manager/decorator.d.ts.map +1 -1
- package/dist/types/src/msca/plugin-manager/installPlugin.d.ts.map +1 -1
- package/dist/types/src/msca/plugin-manager/uninstallPlugin.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/multi-owner/plugin.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/multi-owner/signer.d.ts +3 -208
- package/dist/types/src/msca/plugins/multi-owner/signer.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/multisig/actions/proposeUserOperation.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/multisig/plugin.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/multisig/signer.d.ts +3 -208
- package/dist/types/src/msca/plugins/multisig/signer.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/multisig/types.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/multisig/utils/formatSignatures.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/multisig/utils/getSignerType.d.ts +1 -1
- package/dist/types/src/msca/plugins/multisig/utils/getSignerType.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/multisig/utils/splitAggregatedSignature.d.ts +1 -1
- package/dist/types/src/msca/plugins/multisig/utils/splitAggregatedSignature.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/session-key/extension.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/session-key/plugin.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/session-key/signer.d.ts +4 -209
- package/dist/types/src/msca/plugins/session-key/signer.d.ts.map +1 -1
- package/dist/types/src/msca/utils.d.ts.map +1 -1
- package/package.json +7 -9
- package/plugindefs/session-key/config.ts +1 -1
- package/src/light-account/accounts/account.ts +7 -5
- package/src/light-account/accounts/base.ts +18 -15
- package/src/light-account/accounts/multiOwner.ts +9 -6
- package/src/light-account/accounts/predictAddress.ts +5 -5
- package/src/light-account/actions/transferOwnership.ts +5 -4
- package/src/light-account/actions/updateOwners.ts +6 -5
- package/src/light-account/clients/alchemyClient.ts +3 -3
- package/src/light-account/clients/client.ts +6 -6
- package/src/light-account/clients/multiOwnerAlchemyClient.ts +3 -3
- package/src/light-account/clients/multiOwnerLightAccount.ts +7 -7
- package/src/light-account/decorators/lightAccount.ts +4 -4
- package/src/light-account/decorators/multiOwnerLightAccount.ts +4 -4
- package/src/light-account/types.ts +3 -2
- package/src/light-account/utils.ts +10 -10
- package/src/ma-v2/account/common/modularAccountV2Base.ts +8 -8
- package/src/ma-v2/account/modularAccountV2.ts +4 -4
- package/src/ma-v2/account/nativeSMASigner.ts +16 -13
- package/src/ma-v2/account/predictAddress.ts +13 -13
- package/src/ma-v2/actions/deferralActions.ts +7 -7
- package/src/ma-v2/actions/install-validation/installValidation.ts +14 -14
- package/src/ma-v2/client/client.ts +8 -8
- package/src/ma-v2/modules/allowlist-module/module.ts +5 -5
- package/src/ma-v2/modules/native-token-limit-module/module.ts +1 -1
- package/src/ma-v2/modules/paymaster-guard-module/module.ts +2 -2
- package/src/ma-v2/modules/single-signer-validation/module.ts +2 -2
- package/src/ma-v2/modules/single-signer-validation/signer.ts +14 -11
- package/src/ma-v2/modules/time-range-module/module.ts +6 -6
- package/src/ma-v2/modules/utils.ts +4 -4
- package/src/ma-v2/modules/webauthn-validation/module.ts +2 -2
- package/src/ma-v2/permissionBuilder.ts +14 -14
- package/src/ma-v2/permissionBuilderErrors.ts +9 -7
- package/src/ma-v2/utils.ts +4 -4
- package/src/msca/account/multiOwnerAccount.ts +5 -5
- package/src/msca/account/multisigAccount.ts +6 -6
- package/src/msca/account-loupe/decorator.ts +11 -11
- package/src/msca/account-loupe/types.ts +1 -1
- package/src/msca/client/alchemyClient.ts +4 -4
- package/src/msca/client/client.ts +12 -12
- package/src/msca/client/multiSigAlchemyClient.ts +4 -4
- package/src/msca/plugin-manager/decorator.ts +6 -5
- package/src/msca/plugin-manager/installPlugin.ts +8 -7
- package/src/msca/plugin-manager/uninstallPlugin.ts +6 -5
- package/src/msca/plugins/multi-owner/extension.ts +10 -10
- package/src/msca/plugins/multi-owner/plugin.ts +21 -19
- package/src/msca/plugins/multi-owner/signer.ts +4 -4
- package/src/msca/plugins/multisig/actions/getThreshold.ts +3 -3
- package/src/msca/plugins/multisig/actions/isOwnerOf.ts +2 -2
- package/src/msca/plugins/multisig/actions/proposeUserOperation.ts +4 -3
- package/src/msca/plugins/multisig/actions/readOwners.ts +3 -3
- package/src/msca/plugins/multisig/actions/signMultisigUserOperation.ts +5 -5
- package/src/msca/plugins/multisig/extension.ts +16 -16
- package/src/msca/plugins/multisig/middleware.ts +2 -2
- package/src/msca/plugins/multisig/plugin.ts +21 -19
- package/src/msca/plugins/multisig/signer.ts +5 -5
- package/src/msca/plugins/multisig/types.ts +4 -2
- package/src/msca/plugins/multisig/utils/formatSignatures.ts +1 -1
- package/src/msca/plugins/multisig/utils/getSignerType.ts +2 -2
- package/src/msca/plugins/multisig/utils/splitAggregatedSignature.ts +7 -6
- package/src/msca/plugins/session-key/extension.ts +16 -14
- package/src/msca/plugins/session-key/permissions.ts +7 -7
- package/src/msca/plugins/session-key/plugin.ts +30 -28
- package/src/msca/plugins/session-key/signer.ts +5 -5
- package/src/msca/plugins/session-key/utils.ts +4 -4
- package/src/msca/plugins/types.ts +1 -1
- package/src/msca/utils.ts +11 -11
|
@@ -39,7 +39,8 @@ type ExecutionActions<
|
|
|
39
39
|
TContext extends UserOperationContext | undefined =
|
|
40
40
|
| UserOperationContext
|
|
41
41
|
| undefined,
|
|
42
|
-
TEntryPointVersion extends
|
|
42
|
+
TEntryPointVersion extends
|
|
43
|
+
GetEntryPointFromAccount<TAccount> = GetEntryPointFromAccount<TAccount>,
|
|
43
44
|
> = {
|
|
44
45
|
executeWithSessionKey: (
|
|
45
46
|
args: Pick<
|
|
@@ -51,7 +52,7 @@ type ExecutionActions<
|
|
|
51
52
|
> &
|
|
52
53
|
UserOperationOverridesParameter<TEntryPointVersion> &
|
|
53
54
|
GetAccountParameter<TAccount> &
|
|
54
|
-
GetContextParameter<TContext
|
|
55
|
+
GetContextParameter<TContext>,
|
|
55
56
|
) => Promise<SendUserOperationResult<TEntryPointVersion>>;
|
|
56
57
|
|
|
57
58
|
addSessionKey: (
|
|
@@ -64,7 +65,7 @@ type ExecutionActions<
|
|
|
64
65
|
> &
|
|
65
66
|
UserOperationOverridesParameter<TEntryPointVersion> &
|
|
66
67
|
GetAccountParameter<TAccount> &
|
|
67
|
-
GetContextParameter<TContext
|
|
68
|
+
GetContextParameter<TContext>,
|
|
68
69
|
) => Promise<SendUserOperationResult<TEntryPointVersion>>;
|
|
69
70
|
|
|
70
71
|
removeSessionKey: (
|
|
@@ -77,7 +78,7 @@ type ExecutionActions<
|
|
|
77
78
|
> &
|
|
78
79
|
UserOperationOverridesParameter<TEntryPointVersion> &
|
|
79
80
|
GetAccountParameter<TAccount> &
|
|
80
|
-
GetContextParameter<TContext
|
|
81
|
+
GetContextParameter<TContext>,
|
|
81
82
|
) => Promise<SendUserOperationResult<TEntryPointVersion>>;
|
|
82
83
|
|
|
83
84
|
rotateSessionKey: (
|
|
@@ -90,7 +91,7 @@ type ExecutionActions<
|
|
|
90
91
|
> &
|
|
91
92
|
UserOperationOverridesParameter<TEntryPointVersion> &
|
|
92
93
|
GetAccountParameter<TAccount> &
|
|
93
|
-
GetContextParameter<TContext
|
|
94
|
+
GetContextParameter<TContext>,
|
|
94
95
|
) => Promise<SendUserOperationResult<TEntryPointVersion>>;
|
|
95
96
|
|
|
96
97
|
updateKeyPermissions: (
|
|
@@ -103,14 +104,14 @@ type ExecutionActions<
|
|
|
103
104
|
> &
|
|
104
105
|
UserOperationOverridesParameter<TEntryPointVersion> &
|
|
105
106
|
GetAccountParameter<TAccount> &
|
|
106
|
-
GetContextParameter<TContext
|
|
107
|
+
GetContextParameter<TContext>,
|
|
107
108
|
) => Promise<SendUserOperationResult<TEntryPointVersion>>;
|
|
108
109
|
};
|
|
109
110
|
|
|
110
111
|
type InstallArgs = [
|
|
111
112
|
{ type: "address[]"; name: "initialKeys" },
|
|
112
113
|
{ type: "bytes32[]"; name: "tags" },
|
|
113
|
-
{ type: "bytes[][]"; name: "initialPermissions" }
|
|
114
|
+
{ type: "bytes[][]"; name: "initialPermissions" },
|
|
114
115
|
];
|
|
115
116
|
|
|
116
117
|
export type InstallSessionKeyPluginParams = {
|
|
@@ -126,13 +127,14 @@ type ManagementActions<
|
|
|
126
127
|
TContext extends UserOperationContext | undefined =
|
|
127
128
|
| Record<string, any>
|
|
128
129
|
| undefined,
|
|
129
|
-
TEntryPointVersion extends
|
|
130
|
+
TEntryPointVersion extends
|
|
131
|
+
GetEntryPointFromAccount<TAccount> = GetEntryPointFromAccount<TAccount>,
|
|
130
132
|
> = {
|
|
131
133
|
installSessionKeyPlugin: (
|
|
132
134
|
args: UserOperationOverridesParameter<TEntryPointVersion> &
|
|
133
135
|
InstallSessionKeyPluginParams &
|
|
134
136
|
GetAccountParameter<TAccount> &
|
|
135
|
-
GetContextParameter<TContext
|
|
137
|
+
GetContextParameter<TContext>,
|
|
136
138
|
) => Promise<SendUserOperationResult<TEntryPointVersion>>;
|
|
137
139
|
};
|
|
138
140
|
|
|
@@ -144,7 +146,7 @@ type ReadAndEncodeActions = {
|
|
|
144
146
|
"executeWithSessionKey"
|
|
145
147
|
>,
|
|
146
148
|
"args"
|
|
147
|
-
|
|
149
|
+
>,
|
|
148
150
|
) => Hex;
|
|
149
151
|
|
|
150
152
|
encodeAddSessionKey: (
|
|
@@ -154,7 +156,7 @@ type ReadAndEncodeActions = {
|
|
|
154
156
|
"addSessionKey"
|
|
155
157
|
>,
|
|
156
158
|
"args"
|
|
157
|
-
|
|
159
|
+
>,
|
|
158
160
|
) => Hex;
|
|
159
161
|
|
|
160
162
|
encodeRemoveSessionKey: (
|
|
@@ -164,7 +166,7 @@ type ReadAndEncodeActions = {
|
|
|
164
166
|
"removeSessionKey"
|
|
165
167
|
>,
|
|
166
168
|
"args"
|
|
167
|
-
|
|
169
|
+
>,
|
|
168
170
|
) => Hex;
|
|
169
171
|
|
|
170
172
|
encodeRotateSessionKey: (
|
|
@@ -174,7 +176,7 @@ type ReadAndEncodeActions = {
|
|
|
174
176
|
"rotateSessionKey"
|
|
175
177
|
>,
|
|
176
178
|
"args"
|
|
177
|
-
|
|
179
|
+
>,
|
|
178
180
|
) => Hex;
|
|
179
181
|
|
|
180
182
|
encodeUpdateKeyPermissions: (
|
|
@@ -184,7 +186,7 @@ type ReadAndEncodeActions = {
|
|
|
184
186
|
"updateKeyPermissions"
|
|
185
187
|
>,
|
|
186
188
|
"args"
|
|
187
|
-
|
|
189
|
+
>,
|
|
188
190
|
) => Hex;
|
|
189
191
|
};
|
|
190
192
|
|
|
@@ -194,7 +196,7 @@ export type SessionKeyPluginActions<
|
|
|
194
196
|
| undefined,
|
|
195
197
|
TContext extends UserOperationContext | undefined =
|
|
196
198
|
| UserOperationContext
|
|
197
|
-
| undefined
|
|
199
|
+
| undefined,
|
|
198
200
|
> = ExecutionActions<TAccount, TContext> &
|
|
199
201
|
ManagementActions<TAccount, TContext> &
|
|
200
202
|
ReadAndEncodeActions;
|
|
@@ -225,7 +227,7 @@ export const SessionKeyPlugin: Plugin<typeof SessionKeyPluginAbi> = {
|
|
|
225
227
|
},
|
|
226
228
|
getContract: <C extends Client>(
|
|
227
229
|
client: C,
|
|
228
|
-
address?: Address
|
|
230
|
+
address?: Address,
|
|
229
231
|
): GetContractReturnType<
|
|
230
232
|
typeof SessionKeyPluginAbi,
|
|
231
233
|
PublicClient,
|
|
@@ -253,9 +255,9 @@ export const sessionKeyPluginActions: <
|
|
|
253
255
|
| undefined,
|
|
254
256
|
TContext extends UserOperationContext | undefined =
|
|
255
257
|
| UserOperationContext
|
|
256
|
-
| undefined
|
|
258
|
+
| undefined,
|
|
257
259
|
>(
|
|
258
|
-
client: Client<TTransport, TChain, TAccount
|
|
260
|
+
client: Client<TTransport, TChain, TAccount>,
|
|
259
261
|
) => SessionKeyPluginActions<TAccount, TContext> = (client) => ({
|
|
260
262
|
executeWithSessionKey({
|
|
261
263
|
args,
|
|
@@ -270,7 +272,7 @@ export const sessionKeyPluginActions: <
|
|
|
270
272
|
throw new IncompatibleClientError(
|
|
271
273
|
"SmartAccountClient",
|
|
272
274
|
"executeWithSessionKey",
|
|
273
|
-
client
|
|
275
|
+
client,
|
|
274
276
|
);
|
|
275
277
|
}
|
|
276
278
|
|
|
@@ -290,7 +292,7 @@ export const sessionKeyPluginActions: <
|
|
|
290
292
|
throw new IncompatibleClientError(
|
|
291
293
|
"SmartAccountClient",
|
|
292
294
|
"addSessionKey",
|
|
293
|
-
client
|
|
295
|
+
client,
|
|
294
296
|
);
|
|
295
297
|
}
|
|
296
298
|
|
|
@@ -310,7 +312,7 @@ export const sessionKeyPluginActions: <
|
|
|
310
312
|
throw new IncompatibleClientError(
|
|
311
313
|
"SmartAccountClient",
|
|
312
314
|
"removeSessionKey",
|
|
313
|
-
client
|
|
315
|
+
client,
|
|
314
316
|
);
|
|
315
317
|
}
|
|
316
318
|
|
|
@@ -330,7 +332,7 @@ export const sessionKeyPluginActions: <
|
|
|
330
332
|
throw new IncompatibleClientError(
|
|
331
333
|
"SmartAccountClient",
|
|
332
334
|
"rotateSessionKey",
|
|
333
|
-
client
|
|
335
|
+
client,
|
|
334
336
|
);
|
|
335
337
|
}
|
|
336
338
|
|
|
@@ -350,7 +352,7 @@ export const sessionKeyPluginActions: <
|
|
|
350
352
|
throw new IncompatibleClientError(
|
|
351
353
|
"SmartAccountClient",
|
|
352
354
|
"updateKeyPermissions",
|
|
353
|
-
client
|
|
355
|
+
client,
|
|
354
356
|
);
|
|
355
357
|
}
|
|
356
358
|
|
|
@@ -376,7 +378,7 @@ export const sessionKeyPluginActions: <
|
|
|
376
378
|
throw new IncompatibleClientError(
|
|
377
379
|
"SmartAccountClient",
|
|
378
380
|
"installSessionKeyPlugin",
|
|
379
|
-
client
|
|
381
|
+
client,
|
|
380
382
|
);
|
|
381
383
|
}
|
|
382
384
|
|
|
@@ -390,7 +392,7 @@ export const sessionKeyPluginActions: <
|
|
|
390
392
|
const pluginAddress = MultiOwnerPlugin.meta.addresses[chain.id];
|
|
391
393
|
if (!pluginAddress) {
|
|
392
394
|
throw new Error(
|
|
393
|
-
"missing MultiOwnerPlugin address for chain " + chain.name
|
|
395
|
+
"missing MultiOwnerPlugin address for chain " + chain.name,
|
|
394
396
|
);
|
|
395
397
|
}
|
|
396
398
|
|
|
@@ -401,7 +403,7 @@ export const sessionKeyPluginActions: <
|
|
|
401
403
|
const pluginAddress = MultiOwnerPlugin.meta.addresses[chain.id];
|
|
402
404
|
if (!pluginAddress) {
|
|
403
405
|
throw new Error(
|
|
404
|
-
"missing MultiOwnerPlugin address for chain " + chain.name
|
|
406
|
+
"missing MultiOwnerPlugin address for chain " + chain.name,
|
|
405
407
|
);
|
|
406
408
|
}
|
|
407
409
|
|
|
@@ -414,7 +416,7 @@ export const sessionKeyPluginActions: <
|
|
|
414
416
|
|
|
415
417
|
if (!pluginAddress) {
|
|
416
418
|
throw new Error(
|
|
417
|
-
"missing SessionKeyPlugin address for chain " + chain.name
|
|
419
|
+
"missing SessionKeyPlugin address for chain " + chain.name,
|
|
418
420
|
);
|
|
419
421
|
}
|
|
420
422
|
|
|
@@ -426,7 +428,7 @@ export const sessionKeyPluginActions: <
|
|
|
426
428
|
{ type: "bytes32[]", name: "tags" },
|
|
427
429
|
{ type: "bytes[][]", name: "initialPermissions" },
|
|
428
430
|
],
|
|
429
|
-
params.args
|
|
431
|
+
params.args,
|
|
430
432
|
),
|
|
431
433
|
dependencies,
|
|
432
434
|
overrides,
|
|
@@ -56,8 +56,8 @@ export class SessionKeySigner
|
|
|
56
56
|
typeof this.storageType !== "string"
|
|
57
57
|
? this.storageType
|
|
58
58
|
: this.storageType === "session-storage"
|
|
59
|
-
|
|
60
|
-
|
|
59
|
+
? sessionStorage
|
|
60
|
+
: localStorage;
|
|
61
61
|
const key = storage.getItem(this.storageKey);
|
|
62
62
|
|
|
63
63
|
if (key) {
|
|
@@ -104,7 +104,7 @@ export class SessionKeySigner
|
|
|
104
104
|
* @returns {Promise<Hex>} A promise that resolves to the signed message
|
|
105
105
|
*/
|
|
106
106
|
signMessage: (msg: SignableMessage) => Promise<`0x${string}`> = async (
|
|
107
|
-
msg
|
|
107
|
+
msg,
|
|
108
108
|
) => {
|
|
109
109
|
return this.inner.signMessage(msg);
|
|
110
110
|
};
|
|
@@ -134,9 +134,9 @@ export class SessionKeySigner
|
|
|
134
134
|
*/
|
|
135
135
|
signTypedData = async <
|
|
136
136
|
const TTypedData extends TypedData | { [key: string]: unknown },
|
|
137
|
-
TPrimaryType extends keyof TTypedData | "EIP712Domain" = keyof TTypedData
|
|
137
|
+
TPrimaryType extends keyof TTypedData | "EIP712Domain" = keyof TTypedData,
|
|
138
138
|
>(
|
|
139
|
-
params: TypedDataDefinition<TTypedData, TPrimaryType
|
|
139
|
+
params: TypedDataDefinition<TTypedData, TPrimaryType>,
|
|
140
140
|
) => {
|
|
141
141
|
return this.inner.signTypedData(params);
|
|
142
142
|
};
|
|
@@ -6,7 +6,7 @@ import { SessionKeyPlugin } from "./plugin.js";
|
|
|
6
6
|
type BuildSessionKeysToRemoveStructParams<
|
|
7
7
|
TAccount extends SmartContractAccount | undefined =
|
|
8
8
|
| SmartContractAccount
|
|
9
|
-
| undefined
|
|
9
|
+
| undefined,
|
|
10
10
|
> = {
|
|
11
11
|
keys: ReadonlyArray<Address>;
|
|
12
12
|
pluginAddress?: Address;
|
|
@@ -35,10 +35,10 @@ export async function buildSessionKeysToRemoveStruct<
|
|
|
35
35
|
TChain extends Chain | undefined = Chain | undefined,
|
|
36
36
|
TAccount extends SmartContractAccount | undefined =
|
|
37
37
|
| SmartContractAccount
|
|
38
|
-
| undefined
|
|
38
|
+
| undefined,
|
|
39
39
|
>(
|
|
40
40
|
client: Client<TTransport, TChain, TAccount>,
|
|
41
|
-
args: BuildSessionKeysToRemoveStructParams
|
|
41
|
+
args: BuildSessionKeysToRemoveStructParams,
|
|
42
42
|
): Promise<{ sessionKey: Address; predecessor: Address }[]> {
|
|
43
43
|
const { keys, pluginAddress, account = client.account } = args;
|
|
44
44
|
|
|
@@ -52,7 +52,7 @@ export async function buildSessionKeysToRemoveStruct<
|
|
|
52
52
|
key,
|
|
53
53
|
await contract.read.findPredecessor([account.address, key]),
|
|
54
54
|
];
|
|
55
|
-
})
|
|
55
|
+
}),
|
|
56
56
|
)
|
|
57
57
|
).map(([key, predecessor]) => ({
|
|
58
58
|
sessionKey: key,
|
package/src/msca/utils.ts
CHANGED
|
@@ -46,7 +46,7 @@ import { MultiOwnerPlugin } from "./plugins/multi-owner/plugin.js";
|
|
|
46
46
|
* @throws if the chain doesn't have an address currently deployed
|
|
47
47
|
*/
|
|
48
48
|
export const getDefaultMultisigModularAccountFactoryAddress = (
|
|
49
|
-
chain: Chain
|
|
49
|
+
chain: Chain,
|
|
50
50
|
): Address => {
|
|
51
51
|
switch (chain.id) {
|
|
52
52
|
case sepolia.id:
|
|
@@ -72,7 +72,7 @@ export const getDefaultMultisigModularAccountFactoryAddress = (
|
|
|
72
72
|
* @throws if the chain doesn't have an address currently deployed
|
|
73
73
|
*/
|
|
74
74
|
export const getDefaultMultiOwnerModularAccountFactoryAddress = (
|
|
75
|
-
chain: Chain
|
|
75
|
+
chain: Chain,
|
|
76
76
|
): Address => {
|
|
77
77
|
switch (chain.id) {
|
|
78
78
|
default:
|
|
@@ -84,7 +84,7 @@ export type GetMSCAUpgradeToData<
|
|
|
84
84
|
TSigner extends SmartAccountSigner = SmartAccountSigner,
|
|
85
85
|
TAccount extends
|
|
86
86
|
| SmartContractAccountWithSigner<string, TSigner>
|
|
87
|
-
| undefined = SmartContractAccountWithSigner<string, TSigner> | undefined
|
|
87
|
+
| undefined = SmartContractAccountWithSigner<string, TSigner> | undefined,
|
|
88
88
|
> = {
|
|
89
89
|
multiOwnerPluginAddress?: Address;
|
|
90
90
|
} & GetAccountParameter<TAccount>;
|
|
@@ -110,10 +110,10 @@ export async function getMSCAUpgradeToData<
|
|
|
110
110
|
TSigner extends SmartAccountSigner = SmartAccountSigner,
|
|
111
111
|
TAccount extends
|
|
112
112
|
| SmartContractAccountWithSigner<string, TSigner>
|
|
113
|
-
| undefined = SmartContractAccountWithSigner<string, TSigner> | undefined
|
|
113
|
+
| undefined = SmartContractAccountWithSigner<string, TSigner> | undefined,
|
|
114
114
|
>(
|
|
115
115
|
client: SmartAccountClient<TTransport, TChain, TAccount>,
|
|
116
|
-
args: GetMSCAUpgradeToData<TSigner, TAccount
|
|
116
|
+
args: GetMSCAUpgradeToData<TSigner, TAccount>,
|
|
117
117
|
): Promise<
|
|
118
118
|
UpgradeToData & {
|
|
119
119
|
createMAAccount: () => Promise<MultiOwnerModularAccount<TSigner>>;
|
|
@@ -154,7 +154,7 @@ export type GetMAInitializationDataParams<
|
|
|
154
154
|
TChain extends Chain | undefined = Chain | undefined,
|
|
155
155
|
TAccount extends SmartContractAccount | undefined =
|
|
156
156
|
| SmartContractAccount
|
|
157
|
-
| undefined
|
|
157
|
+
| undefined,
|
|
158
158
|
> = {
|
|
159
159
|
multiOwnerPluginAddress?: Address;
|
|
160
160
|
client: SmartAccountClient<TTransport, TChain, TAccount>;
|
|
@@ -187,7 +187,7 @@ export async function getMAInitializationData<
|
|
|
187
187
|
TChain extends Chain | undefined = Chain | undefined,
|
|
188
188
|
TAccount extends SmartContractAccount | undefined =
|
|
189
189
|
| SmartContractAccount
|
|
190
|
-
| undefined
|
|
190
|
+
| undefined,
|
|
191
191
|
>({
|
|
192
192
|
client,
|
|
193
193
|
multiOwnerPluginAddress,
|
|
@@ -202,7 +202,7 @@ export async function getMAInitializationData<
|
|
|
202
202
|
}
|
|
203
203
|
|
|
204
204
|
const factoryAddress = getDefaultMultiOwnerModularAccountFactoryAddress(
|
|
205
|
-
client.chain
|
|
205
|
+
client.chain,
|
|
206
206
|
);
|
|
207
207
|
|
|
208
208
|
const implAddress = await client.readContract({
|
|
@@ -229,17 +229,17 @@ export async function getMAInitializationData<
|
|
|
229
229
|
abi: IPluginAbi,
|
|
230
230
|
functionName: "pluginManifest",
|
|
231
231
|
result: moPluginManifest,
|
|
232
|
-
})
|
|
232
|
+
}),
|
|
233
233
|
);
|
|
234
234
|
|
|
235
235
|
const encodedOwner = encodeAbiParameters(
|
|
236
236
|
parseAbiParameters("address[]"),
|
|
237
|
-
Array.isArray(signerAddress) ? [signerAddress] : [[signerAddress]]
|
|
237
|
+
Array.isArray(signerAddress) ? [signerAddress] : [[signerAddress]],
|
|
238
238
|
);
|
|
239
239
|
|
|
240
240
|
const encodedPluginInitData = encodeAbiParameters(
|
|
241
241
|
parseAbiParameters("bytes32[], bytes[]"),
|
|
242
|
-
[[hashedMultiOwnerPluginManifest], [encodedOwner]]
|
|
242
|
+
[[hashedMultiOwnerPluginManifest], [encodedOwner]],
|
|
243
243
|
);
|
|
244
244
|
|
|
245
245
|
const encodedMSCAInitializeData = encodeFunctionData({
|