@aastar/sdk 0.20.9 → 0.21.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/UserClient-BDGP37PK.js +6 -0
- package/dist/{UserClient-AIIHB54I.js.map → UserClient-BDGP37PK.js.map} +1 -1
- package/dist/UserClient-FOAOBLGK.cjs +15 -0
- package/dist/{UserClient-2J6XMTNV.cjs.map → UserClient-FOAOBLGK.cjs.map} +1 -1
- package/dist/account.cjs +8 -8
- package/dist/account.js +3 -3
- package/dist/admin.cjs +4 -4
- package/dist/admin.js +3 -3
- package/dist/airaccount.cjs +98 -98
- package/dist/airaccount.js +3 -3
- package/dist/channel.cjs +7 -7
- package/dist/channel.js +3 -3
- package/dist/{chunk-GRDC6ZRA.cjs → chunk-3HZEIFBW.cjs} +5 -5
- package/dist/{chunk-GRDC6ZRA.cjs.map → chunk-3HZEIFBW.cjs.map} +1 -1
- package/dist/{chunk-7ARJ3OSU.js → chunk-57XLR2NT.js} +3 -3
- package/dist/{chunk-7ARJ3OSU.js.map → chunk-57XLR2NT.js.map} +1 -1
- package/dist/{chunk-QLF7N6H7.cjs → chunk-5JFYTJOE.cjs} +4 -4
- package/dist/{chunk-QLF7N6H7.cjs.map → chunk-5JFYTJOE.cjs.map} +1 -1
- package/dist/{chunk-KDH3UPKD.js → chunk-5NKU5NT5.js} +8 -8
- package/dist/{chunk-KDH3UPKD.js.map → chunk-5NKU5NT5.js.map} +1 -1
- package/dist/{chunk-WQREDGUF.cjs → chunk-63JM67L7.cjs} +26 -26
- package/dist/{chunk-WQREDGUF.cjs.map → chunk-63JM67L7.cjs.map} +1 -1
- package/dist/{chunk-IC3G6YM2.js → chunk-6OWZOTE7.js} +113 -9
- package/dist/chunk-6OWZOTE7.js.map +1 -0
- package/dist/{chunk-FTJD2DWE.cjs → chunk-CIEYY3A6.cjs} +870 -83
- package/dist/chunk-CIEYY3A6.cjs.map +1 -0
- package/dist/{chunk-GX7NROST.cjs → chunk-DEUBKZH5.cjs} +16 -16
- package/dist/{chunk-GX7NROST.cjs.map → chunk-DEUBKZH5.cjs.map} +1 -1
- package/dist/{chunk-TENYCMJ3.js → chunk-DF4WVR2H.js} +9 -9
- package/dist/{chunk-TENYCMJ3.js.map → chunk-DF4WVR2H.js.map} +1 -1
- package/dist/{chunk-BN5WY5GM.js → chunk-DQBKE4ND.js} +4 -4
- package/dist/{chunk-BN5WY5GM.js.map → chunk-DQBKE4ND.js.map} +1 -1
- package/dist/{chunk-4EZD7LPE.js → chunk-E4CQFW75.js} +3 -3
- package/dist/{chunk-4EZD7LPE.js.map → chunk-E4CQFW75.js.map} +1 -1
- package/dist/{chunk-LXWIPTPX.js → chunk-ENSMYCU6.js} +3 -3
- package/dist/{chunk-LXWIPTPX.js.map → chunk-ENSMYCU6.js.map} +1 -1
- package/dist/{chunk-FJ7XECC5.js → chunk-EY2AJTGV.js} +3 -3
- package/dist/{chunk-FJ7XECC5.js.map → chunk-EY2AJTGV.js.map} +1 -1
- package/dist/{chunk-2RCJBWPO.cjs → chunk-GAMSWXWI.cjs} +11 -11
- package/dist/{chunk-2RCJBWPO.cjs.map → chunk-GAMSWXWI.cjs.map} +1 -1
- package/dist/{chunk-MRREGCWN.cjs → chunk-IJN776TA.cjs} +32 -32
- package/dist/{chunk-MRREGCWN.cjs.map → chunk-IJN776TA.cjs.map} +1 -1
- package/dist/{chunk-PKCHRXFR.js → chunk-KZERVPUR.js} +3 -3
- package/dist/{chunk-PKCHRXFR.js.map → chunk-KZERVPUR.js.map} +1 -1
- package/dist/{chunk-6QYXGMCR.js → chunk-M5WFKETT.js} +833 -47
- package/dist/{chunk-FTJD2DWE.cjs.map → chunk-M5WFKETT.js.map} +1 -1
- package/dist/{chunk-HSVQIFIK.cjs → chunk-M7HXR7G5.cjs} +5 -5
- package/dist/{chunk-HSVQIFIK.cjs.map → chunk-M7HXR7G5.cjs.map} +1 -1
- package/dist/{chunk-PAABYXS6.js → chunk-MCALA6WM.js} +6 -6
- package/dist/{chunk-PAABYXS6.js.map → chunk-MCALA6WM.js.map} +1 -1
- package/dist/{chunk-S5IKOOUR.cjs → chunk-MXJEULSE.cjs} +39 -36
- package/dist/chunk-MXJEULSE.cjs.map +1 -0
- package/dist/{chunk-TFLZETWB.cjs → chunk-OVNOSAL3.cjs} +113 -9
- package/dist/chunk-OVNOSAL3.cjs.map +1 -0
- package/dist/{chunk-MVEWJIPY.js → chunk-RXPSL33E.js} +3 -3
- package/dist/{chunk-MVEWJIPY.js.map → chunk-RXPSL33E.js.map} +1 -1
- package/dist/{chunk-G3UJC4EL.js → chunk-UCLK6LTB.js} +39 -36
- package/dist/chunk-UCLK6LTB.js.map +1 -0
- package/dist/{chunk-JTWY2XEG.cjs → chunk-WR4OZUXR.cjs} +6 -6
- package/dist/{chunk-JTWY2XEG.cjs.map → chunk-WR4OZUXR.cjs.map} +1 -1
- package/dist/{chunk-NT26BDGN.cjs → chunk-Y4EJX7UA.cjs} +12 -12
- package/dist/{chunk-NT26BDGN.cjs.map → chunk-Y4EJX7UA.cjs.map} +1 -1
- package/dist/{chunk-RNHSA3LO.cjs → chunk-Z4GZ6DQA.cjs} +9 -9
- package/dist/{chunk-RNHSA3LO.cjs.map → chunk-Z4GZ6DQA.cjs.map} +1 -1
- package/dist/{contract-addresses-TANQ5DLX.cjs → contract-addresses-RABD77VP.cjs} +13 -13
- package/dist/{contract-addresses-TANQ5DLX.cjs.map → contract-addresses-RABD77VP.cjs.map} +1 -1
- package/dist/{contract-addresses-N3TOL2WL.js → contract-addresses-TVXSRQ7I.js} +3 -3
- package/dist/{contract-addresses-N3TOL2WL.js.map → contract-addresses-TVXSRQ7I.js.map} +1 -1
- package/dist/core.cjs +227 -223
- package/dist/core.d.cts +130 -12
- package/dist/core.d.ts +130 -12
- package/dist/core.js +2 -2
- package/dist/dapp.cjs +6 -6
- package/dist/dapp.js +3 -3
- package/dist/enduser.cjs +7 -7
- package/dist/enduser.js +4 -4
- package/dist/identity.cjs +6 -6
- package/dist/identity.js +3 -3
- package/dist/index.cjs +340 -336
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +17 -17
- package/dist/kms.cjs +98 -98
- package/dist/kms.d.cts +62 -12
- package/dist/kms.d.ts +62 -12
- package/dist/kms.js +3 -3
- package/dist/operator.cjs +7 -7
- package/dist/operator.js +3 -3
- package/dist/paymaster.cjs +16 -16
- package/dist/paymaster.js +3 -3
- package/dist/{src-TQKEO2I4.cjs → src-CUHI6G6W.cjs} +229 -225
- package/dist/src-CUHI6G6W.cjs.map +1 -0
- package/dist/{src-ENPA7D2S.cjs → src-KHCWIS4Q.cjs} +18 -18
- package/dist/src-KHCWIS4Q.cjs.map +1 -0
- package/dist/{src-X5MIV3EB.js → src-RSN4U2T2.js} +5 -5
- package/dist/src-RSN4U2T2.js.map +1 -0
- package/dist/{src-L5SI5WNB.js → src-XCV6BTSV.js} +4 -4
- package/dist/{src-X5MIV3EB.js.map → src-XCV6BTSV.js.map} +1 -1
- package/dist/tokens.cjs +4 -4
- package/dist/tokens.js +3 -3
- package/dist/x402.cjs +26 -26
- package/dist/x402.js +3 -3
- package/package.json +113 -29
- package/dist/UserClient-2J6XMTNV.cjs +0 -15
- package/dist/UserClient-AIIHB54I.js +0 -6
- package/dist/chunk-6QYXGMCR.js.map +0 -1
- package/dist/chunk-G3UJC4EL.js.map +0 -1
- package/dist/chunk-IC3G6YM2.js.map +0 -1
- package/dist/chunk-S5IKOOUR.cjs.map +0 -1
- package/dist/chunk-TFLZETWB.cjs.map +0 -1
- package/dist/src-ENPA7D2S.cjs.map +0 -1
- package/dist/src-L5SI5WNB.js.map +0 -1
- package/dist/src-TQKEO2I4.cjs.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var chunkXQROKLZI_cjs = require('./chunk-XQROKLZI.cjs');
|
|
4
|
-
var
|
|
4
|
+
var chunkMXJEULSE_cjs = require('./chunk-MXJEULSE.cjs');
|
|
5
5
|
var viem = require('viem');
|
|
6
6
|
var axios = require('axios');
|
|
7
7
|
var crypto = require('crypto');
|
|
@@ -12,7 +12,7 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
|
12
12
|
var axios__default = /*#__PURE__*/_interopDefault(axios);
|
|
13
13
|
|
|
14
14
|
// ../airaccount/src/server/constants/entrypoint.ts
|
|
15
|
-
var CORE_SEPOLIA =
|
|
15
|
+
var CORE_SEPOLIA = chunkMXJEULSE_cjs.CANONICAL_ADDRESSES[11155111];
|
|
16
16
|
var EntryPointVersion = /* @__PURE__ */ ((EntryPointVersion2) => {
|
|
17
17
|
EntryPointVersion2["V0_6"] = "0.6";
|
|
18
18
|
EntryPointVersion2["V0_7"] = "0.7";
|
|
@@ -98,7 +98,7 @@ var AIRACCOUNT_ADDRESSES = {
|
|
|
98
98
|
agentSessionKeyValidatorM7r4: "0x1F06961e133217801F92e1CF552187F594a32873",
|
|
99
99
|
// ── Current: derived from @aastar/core CANONICAL_ADDRESSES[11155111] ───────────
|
|
100
100
|
// SINGLE SOURCE OF TRUTH. Do NOT hand-copy hex here. core is synced on every
|
|
101
|
-
// protocol redeploy (currently AirAccount v0.
|
|
101
|
+
// protocol redeploy (currently AirAccount v0.20.0, Sepolia 2026-06-20),
|
|
102
102
|
// and these fields re-derive automatically. The key mapping (airaccount field ←
|
|
103
103
|
// core key) is asserted by entrypoint.addresses.test.ts so it can't silently drift.
|
|
104
104
|
factory: CORE_SEPOLIA.airAccountFactoryV7,
|
|
@@ -186,13 +186,18 @@ var AIRACCOUNT_ABI = [
|
|
|
186
186
|
"event ModuleInstalled(uint256 indexed moduleTypeId, address indexed module)",
|
|
187
187
|
"event ModuleUninstalled(uint256 indexed moduleTypeId, address indexed module)",
|
|
188
188
|
"event OwnerChanged(address indexed oldOwner, address indexed newOwner)",
|
|
189
|
-
|
|
189
|
+
// v0.20.0 (#120): recovery events gained a trailing `uint8 guardianIdx` naming the
|
|
190
|
+
// authorizing guardian slot (on P-256 relayer-submitted paths msg.sender is the relayer,
|
|
191
|
+
// not the guardian). topic0 of these three events changed — decoders must use the new shape.
|
|
192
|
+
"event RecoveryProposed(address indexed newOwner, address indexed proposedBy, uint8 guardianIdx)",
|
|
193
|
+
"event RecoveryApproved(address indexed newOwner, address indexed approvedBy, uint256 approvalCount, uint8 guardianIdx)",
|
|
194
|
+
"event RecoveryCancelVoted(address indexed votedBy, uint256 cancelCount, uint8 guardianIdx)",
|
|
190
195
|
"event RecoveryExecuted(address indexed oldOwner, address indexed newOwner)"
|
|
191
196
|
];
|
|
192
197
|
var AIRACCOUNT_FACTORY_ABI = [
|
|
193
198
|
// Full config creation
|
|
194
|
-
"function createAccount(address owner, uint256 salt, (address[3] guardians, uint256 dailyLimit, uint8[] approvedAlgIds, uint256 minDailyLimit, address[] initialTokens, (uint256 tier1Limit, uint256 tier2Limit, uint256 dailyLimit)[] initialTokenConfigs) config) external returns (address)",
|
|
195
|
-
"function getAddress(address owner, uint256 salt, (address[3] guardians, uint256 dailyLimit, uint8[] approvedAlgIds, uint256 minDailyLimit, address[] initialTokens, (uint256 tier1Limit, uint256 tier2Limit, uint256 dailyLimit)[] initialTokenConfigs) config) external view returns (address)",
|
|
199
|
+
"function createAccount(address owner, uint256 salt, (address[3] guardians, bytes32[3] guardianP256X, bytes32[3] guardianP256Y, uint256 dailyLimit, uint8[] approvedAlgIds, uint256 minDailyLimit, address[] initialTokens, (uint256 tier1Limit, uint256 tier2Limit, uint256 dailyLimit)[] initialTokenConfigs) config) external returns (address)",
|
|
200
|
+
"function getAddress(address owner, uint256 salt, (address[3] guardians, bytes32[3] guardianP256X, bytes32[3] guardianP256Y, uint256 dailyLimit, uint8[] approvedAlgIds, uint256 minDailyLimit, address[] initialTokens, (uint256 tier1Limit, uint256 tier2Limit, uint256 dailyLimit)[] initialTokenConfigs) config) external view returns (address)",
|
|
196
201
|
// Default guardian setup (requires guardian acceptance sigs — M5.3+)
|
|
197
202
|
"function createAccountWithDefaults(address owner, uint256 salt, address guardian1, bytes guardian1Sig, address guardian2, bytes guardian2Sig, uint256 dailyLimit) external returns (address)",
|
|
198
203
|
"function getAddressWithDefaults(address owner, uint256 salt, address guardian1, address guardian2, uint256 dailyLimit) external view returns (address)",
|
|
@@ -209,7 +214,7 @@ var AIRACCOUNT_FACTORY_ABI = [
|
|
|
209
214
|
"function defaultHookModule() external view returns (address)",
|
|
210
215
|
// M7.4 ERC-7828 chain-qualified address helpers
|
|
211
216
|
"function getChainQualifiedAddress(address account) external view returns (bytes32)",
|
|
212
|
-
"function getAddressWithChainId(address owner, uint256 salt, (address[3] guardians, uint256 dailyLimit, uint8[] approvedAlgIds, uint256 minDailyLimit, address[] initialTokens, (uint256 tier1Limit, uint256 tier2Limit, uint256 dailyLimit)[] initialTokenConfigs) config) external view returns (address account, bytes32 chainQualified)",
|
|
217
|
+
"function getAddressWithChainId(address owner, uint256 salt, (address[3] guardians, bytes32[3] guardianP256X, bytes32[3] guardianP256Y, uint256 dailyLimit, uint8[] approvedAlgIds, uint256 minDailyLimit, address[] initialTokens, (uint256 tier1Limit, uint256 tier2Limit, uint256 dailyLimit)[] initialTokenConfigs) config) external view returns (address account, bytes32 chainQualified)",
|
|
213
218
|
// Events
|
|
214
219
|
"event AccountCreated(address indexed account, address indexed owner, uint256 salt)"
|
|
215
220
|
];
|
|
@@ -711,6 +716,8 @@ function readBuildP256GrantHash(validator, account, keyX, keyY, cfg) {
|
|
|
711
716
|
}
|
|
712
717
|
|
|
713
718
|
// ../airaccount/src/server/services/account-manager.ts
|
|
719
|
+
var ZERO32 = "0x" + "0".repeat(64);
|
|
720
|
+
var EMPTY_P256 = [ZERO32, ZERO32, ZERO32];
|
|
714
721
|
var AccountManager = class {
|
|
715
722
|
constructor(ethereum, storage, signer, logger) {
|
|
716
723
|
this.ethereum = ethereum;
|
|
@@ -735,6 +742,10 @@ var AccountManager = class {
|
|
|
735
742
|
const minimalConfig = [
|
|
736
743
|
[viem.zeroAddress, viem.zeroAddress, viem.zeroAddress],
|
|
737
744
|
// guardians (address[3])
|
|
745
|
+
EMPTY_P256,
|
|
746
|
+
// guardianP256X (bytes32[3]) — v0.20.0
|
|
747
|
+
EMPTY_P256,
|
|
748
|
+
// guardianP256Y (bytes32[3]) — v0.20.0
|
|
738
749
|
dailyLimitValue,
|
|
739
750
|
// dailyLimit (0 = no guard)
|
|
740
751
|
[],
|
|
@@ -1231,6 +1242,8 @@ var PaymasterManager = class {
|
|
|
1231
1242
|
};
|
|
1232
1243
|
|
|
1233
1244
|
// ../airaccount/src/server/services/transfer-manager.ts
|
|
1245
|
+
var ZERO322 = "0x" + "0".repeat(64);
|
|
1246
|
+
var EMPTY_P2562 = [ZERO322, ZERO322, ZERO322];
|
|
1234
1247
|
var AIRACCOUNT_ABI_PARSED = viem.parseAbi(AIRACCOUNT_ABI);
|
|
1235
1248
|
var AIRACCOUNT_FACTORY_ABI_PARSED = viem.parseAbi(AIRACCOUNT_FACTORY_ABI);
|
|
1236
1249
|
var FACTORY_ABI_V6_PARSED = viem.parseAbi(FACTORY_ABI_V6);
|
|
@@ -1549,6 +1562,10 @@ var TransferManager = class {
|
|
|
1549
1562
|
const minimalConfig = [
|
|
1550
1563
|
[viem.zeroAddress, viem.zeroAddress, viem.zeroAddress],
|
|
1551
1564
|
// guardians (address[3])
|
|
1565
|
+
EMPTY_P2562,
|
|
1566
|
+
// guardianP256X (bytes32[3]) — v0.20.0
|
|
1567
|
+
EMPTY_P2562,
|
|
1568
|
+
// guardianP256Y (bytes32[3]) — v0.20.0
|
|
1552
1569
|
storedDailyLimit,
|
|
1553
1570
|
[],
|
|
1554
1571
|
// approvedAlgIds
|
|
@@ -2839,6 +2856,7 @@ var AIRACCOUNT_ABI_PARSED2 = viem.parseAbi(AIRACCOUNT_ABI);
|
|
|
2839
2856
|
var RECOVERY_THRESHOLD = 2;
|
|
2840
2857
|
var MAX_GUARDIANS = 3;
|
|
2841
2858
|
var RECOVERY_TIMELOCK_SECONDS = 2n * 24n * 60n * 60n;
|
|
2859
|
+
var GUARDIAN_SIG_VERSION = 4;
|
|
2842
2860
|
function popcount(value) {
|
|
2843
2861
|
let v = value;
|
|
2844
2862
|
let count = 0;
|
|
@@ -2885,6 +2903,92 @@ var RecoveryService = class {
|
|
|
2885
2903
|
args: [index, guardianSigs]
|
|
2886
2904
|
});
|
|
2887
2905
|
}
|
|
2906
|
+
/**
|
|
2907
|
+
* Build the RAW (un-prefixed) challenge hash that each guardian must sign to
|
|
2908
|
+
* authorize `removeGuardian(index, ...)` / `removeGuardianWithMixedSigs(...)`.
|
|
2909
|
+
*
|
|
2910
|
+
* ## v0.20.0 breaking change (#120 final-review [HIGH], spec §6.4)
|
|
2911
|
+
* The signed `opData` changed from `abi.encode(nonce, guardianToRemove)` to
|
|
2912
|
+
* `abi.encode(nonce, index, guardianToRemove, p256X, p256Y)` — it now binds the
|
|
2913
|
+
* SLOT INDEX and the slot's P-256 key. Because P-256 guardians all share the
|
|
2914
|
+
* sentinel address, the old 2-field payload was identical for every P-256 slot,
|
|
2915
|
+
* so a signature collected to remove slot A could be replayed to remove slot B
|
|
2916
|
+
* (or survive a key rotation). The new 5-field payload affects EVERY removal,
|
|
2917
|
+
* including the plain ECDSA path: for an ECDSA slot `p256X`/`p256Y` are both
|
|
2918
|
+
* `bytes32(0)`, but the payload STRUCTURE (extra `index` + two key words) still
|
|
2919
|
+
* changed, so the ECDSA `removeGuardian` signing payload MUST use this encoding.
|
|
2920
|
+
*
|
|
2921
|
+
* Hash construction (matches `AAStarAirAccountBase._guardianOpHash`):
|
|
2922
|
+
* ```
|
|
2923
|
+
* opData = abi.encode(uint256 nonce, uint8 index, address guardianToRemove,
|
|
2924
|
+
* bytes32 p256X, bytes32 p256Y)
|
|
2925
|
+
* challenge = keccak256(abi.encode(uint8 GUARDIAN_SIG_VERSION, uint256 chainId,
|
|
2926
|
+
* address account, "REMOVE_GUARDIAN", bytes opData))
|
|
2927
|
+
* ```
|
|
2928
|
+
* The contract additionally applies `toEthSignedMessageHash()` before
|
|
2929
|
+
* `ecrecover`, so this returns the RAW inner hash and each guardian signs it via
|
|
2930
|
+
* `personal_sign` / `signMessage({ raw: hash })` (which adds the EIP-191 prefix).
|
|
2931
|
+
* Do NOT pre-apply the prefix here (mirrors `buildGuardianAcceptanceHash`).
|
|
2932
|
+
*
|
|
2933
|
+
* @param account The AirAccount address whose guardian is being removed.
|
|
2934
|
+
* @param chainId EVM chain id (bound into the challenge).
|
|
2935
|
+
* @param removalNonce Current `_guardianRemovalNonce` — there is no on-chain
|
|
2936
|
+
* getter (internal storage slot 15), so the caller tracks
|
|
2937
|
+
* it (starts at 0, increments once per successful removal).
|
|
2938
|
+
* @param index Guardian slot being removed (0-indexed, < guardianCount).
|
|
2939
|
+
* @param guardianToRemove Address stored in that slot (a P-256 slot stores
|
|
2940
|
+
* {@link P256_GUARDIAN_SENTINEL}; an ECDSA slot stores the EOA).
|
|
2941
|
+
* @param p256X Slot's P-256 x coordinate; `bytes32(0)` for an ECDSA slot (default).
|
|
2942
|
+
* @param p256Y Slot's P-256 y coordinate; `bytes32(0)` for an ECDSA slot (default).
|
|
2943
|
+
* @returns raw hex keccak256 challenge — guardians sign it with `personal_sign`.
|
|
2944
|
+
*/
|
|
2945
|
+
buildRemoveGuardianHash(args) {
|
|
2946
|
+
const ZERO323 = "0x0000000000000000000000000000000000000000000000000000000000000000";
|
|
2947
|
+
const opData = viem.encodeAbiParameters(
|
|
2948
|
+
[
|
|
2949
|
+
{ type: "uint256" },
|
|
2950
|
+
// _guardianRemovalNonce
|
|
2951
|
+
{ type: "uint8" },
|
|
2952
|
+
// index
|
|
2953
|
+
{ type: "address" },
|
|
2954
|
+
// guardianToRemove
|
|
2955
|
+
{ type: "bytes32" },
|
|
2956
|
+
// p256X (0 for ECDSA slot)
|
|
2957
|
+
{ type: "bytes32" }
|
|
2958
|
+
// p256Y (0 for ECDSA slot)
|
|
2959
|
+
],
|
|
2960
|
+
[
|
|
2961
|
+
args.removalNonce,
|
|
2962
|
+
args.index,
|
|
2963
|
+
args.guardianToRemove,
|
|
2964
|
+
args.p256X ?? ZERO323,
|
|
2965
|
+
args.p256Y ?? ZERO323
|
|
2966
|
+
]
|
|
2967
|
+
);
|
|
2968
|
+
return viem.keccak256(
|
|
2969
|
+
viem.encodeAbiParameters(
|
|
2970
|
+
[
|
|
2971
|
+
{ type: "uint8" },
|
|
2972
|
+
// GUARDIAN_SIG_VERSION
|
|
2973
|
+
{ type: "uint256" },
|
|
2974
|
+
// chainId
|
|
2975
|
+
{ type: "address" },
|
|
2976
|
+
// address(this) — the account
|
|
2977
|
+
{ type: "string" },
|
|
2978
|
+
// opLabel
|
|
2979
|
+
{ type: "bytes" }
|
|
2980
|
+
// opData
|
|
2981
|
+
],
|
|
2982
|
+
[
|
|
2983
|
+
GUARDIAN_SIG_VERSION,
|
|
2984
|
+
BigInt(args.chainId),
|
|
2985
|
+
args.account,
|
|
2986
|
+
"REMOVE_GUARDIAN",
|
|
2987
|
+
opData
|
|
2988
|
+
]
|
|
2989
|
+
)
|
|
2990
|
+
);
|
|
2991
|
+
}
|
|
2888
2992
|
/**
|
|
2889
2993
|
* Encode `proposeRecovery(newOwner)` calldata. **Any guardian** may call.
|
|
2890
2994
|
* Starts the {@link RECOVERY_TIMELOCK_SECONDS} timelock and records the
|
|
@@ -4689,5 +4793,5 @@ exports.runWebAuthnCeremony = runWebAuthnCeremony;
|
|
|
4689
4793
|
exports.sepoliaV07Config = sepoliaV07Config;
|
|
4690
4794
|
exports.validateConfig = validateConfig;
|
|
4691
4795
|
exports.wrapExecuteUserOp = wrapExecuteUserOp;
|
|
4692
|
-
//# sourceMappingURL=chunk-
|
|
4693
|
-
//# sourceMappingURL=chunk-
|
|
4796
|
+
//# sourceMappingURL=chunk-OVNOSAL3.cjs.map
|
|
4797
|
+
//# sourceMappingURL=chunk-OVNOSAL3.cjs.map
|