@instadapp/avocado-base 0.0.66 → 0.0.67
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/contracts/index.ts
CHANGED
|
@@ -6,9 +6,11 @@ export type { BalanceResolver } from "./BalanceResolver";
|
|
|
6
6
|
export type { Erc20 } from "./Erc20";
|
|
7
7
|
export type { Forwarder } from "./Forwarder";
|
|
8
8
|
export type { GaslessWallet } from "./GaslessWallet";
|
|
9
|
+
export type { MultisigForwarder } from "./MultisigForwarder";
|
|
9
10
|
export * as factories from "./factories";
|
|
10
11
|
export { AvoFactoryProxy__factory } from "./factories/AvoFactoryProxy__factory";
|
|
11
12
|
export { BalanceResolver__factory } from "./factories/BalanceResolver__factory";
|
|
12
13
|
export { Erc20__factory } from "./factories/Erc20__factory";
|
|
13
14
|
export { Forwarder__factory } from "./factories/Forwarder__factory";
|
|
14
15
|
export { GaslessWallet__factory } from "./factories/GaslessWallet__factory";
|
|
16
|
+
export { MultisigForwarder__factory } from "./factories/MultisigForwarder__factory";
|
package/package.json
CHANGED
package/utils/metadata.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ethers, utils } from "ethers";
|
|
2
|
-
import { Forwarder__factory } from "../contracts";
|
|
2
|
+
import { Forwarder__factory, MultisigForwarder__factory } from "../contracts";
|
|
3
3
|
|
|
4
4
|
export const MetadataEnums = {
|
|
5
5
|
"transfer": "transfer",
|
|
@@ -346,8 +346,10 @@ export const decodeMetadata = (metadata: string) => {
|
|
|
346
346
|
}
|
|
347
347
|
};
|
|
348
348
|
|
|
349
|
+
const iface = Forwarder__factory.createInterface();
|
|
350
|
+
const ifaceMultisig = MultisigForwarder__factory.createInterface();
|
|
351
|
+
|
|
349
352
|
const getMetadataFromData = (data: string) => {
|
|
350
|
-
const iface = Forwarder__factory.createInterface();
|
|
351
353
|
let metadata = "0x";
|
|
352
354
|
|
|
353
355
|
if (data.startsWith("0x18e7f485")) {
|
|
@@ -367,28 +369,18 @@ const getMetadataFromData = (data: string) => {
|
|
|
367
369
|
} else {
|
|
368
370
|
metadata = executeDataV2.params_.metadata;
|
|
369
371
|
}
|
|
370
|
-
} else if (data.startsWith("0x85114d53")) {
|
|
371
|
-
const executeDataV3 = iface.decodeFunctionData("executeV3", data);
|
|
372
|
-
if (
|
|
373
|
-
executeDataV3.params_.metadata === "0x" ||
|
|
374
|
-
!executeDataV3.params_.metadata
|
|
375
|
-
) {
|
|
376
|
-
return null;
|
|
377
|
-
} else {
|
|
378
|
-
metadata = executeDataV3.params_.metadata;
|
|
379
|
-
}
|
|
380
372
|
} else {
|
|
381
|
-
const
|
|
382
|
-
"
|
|
373
|
+
const executeDataMultisig = ifaceMultisig.decodeFunctionData(
|
|
374
|
+
"executeV1",
|
|
383
375
|
data
|
|
384
376
|
);
|
|
385
377
|
if (
|
|
386
|
-
|
|
387
|
-
!
|
|
378
|
+
executeDataMultisig.params_.metadata === "0x" ||
|
|
379
|
+
!executeDataMultisig.params_.metadata
|
|
388
380
|
) {
|
|
389
381
|
return null;
|
|
390
382
|
} else {
|
|
391
|
-
metadata =
|
|
383
|
+
metadata = executeDataMultisig.params_.metadata;
|
|
392
384
|
}
|
|
393
385
|
}
|
|
394
386
|
|