@instadapp/avocado-base 0.0.0-dev.50ceb02 → 0.0.0-dev.54d5618
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/.github/workflows/npm-publish-dev.yml +2 -5
- package/.vscode/settings.json +67 -0
- package/abi/avoFactoryProxy.json +1 -1
- package/abi/forwarder.json +1 -1
- package/abi/multisigAgnosticForwarder.json +937 -0
- package/abi/multisigForwarder.json +680 -680
- package/app.vue +5 -5
- package/assets/images/icons/check.svg +3 -0
- package/assets/images/icons/copy.svg +9 -2
- package/assets/images/icons/stars.svg +4 -0
- package/components/ActionLogo.vue +33 -31
- package/components/ActionMetadata.vue +40 -33
- package/components/Address.vue +74 -0
- package/components/AuthorityAvatar.vue +4 -3
- package/components/ChainLogo.vue +22 -25
- package/components/CopyClipboard.vue +16 -38
- package/components/metadata/Bridge.vue +22 -23
- package/components/metadata/CrossTransfer.vue +35 -30
- package/components/metadata/GasTopup.vue +14 -15
- package/components/metadata/Permit2.vue +12 -13
- package/components/metadata/Signers.vue +11 -55
- package/components/metadata/Swap.vue +45 -53
- package/components/metadata/Transfer.vue +26 -27
- package/contracts/MultisigAgnosticForwarder.ts +1423 -0
- package/contracts/factories/MultisigAgnosticForwarder__factory.ts +2135 -0
- package/contracts/factories/index.ts +1 -0
- package/contracts/index.ts +2 -0
- package/eslint.config.mjs +34 -0
- package/nuxt.config.ts +21 -12
- package/package.json +14 -14
- package/server/utils/index.ts +4 -4
- package/utils/avocado.ts +17 -17
- package/utils/bignumber.ts +47 -36
- package/utils/formatter.ts +55 -61
- package/utils/helper.ts +33 -30
- package/utils/metadata.ts +418 -334
- package/utils/network.ts +524 -232
- package/utils/services.ts +11 -13
- package/utils/utils.d.ts +118 -102
package/utils/services.ts
CHANGED
|
@@ -1,21 +1,19 @@
|
|
|
1
|
-
export
|
|
2
|
-
address
|
|
3
|
-
|
|
4
|
-
tokens?: ITokenPrice[]
|
|
5
|
-
) => {
|
|
6
|
-
if (!address || !chainId) return null;
|
|
1
|
+
export async function fetchTokenByAddress(address: string, chainId: string | number, tokens?: ITokenPrice[]) {
|
|
2
|
+
if (!address || !chainId)
|
|
3
|
+
return null
|
|
7
4
|
|
|
8
5
|
if (tokens?.length) {
|
|
9
|
-
const token = tokens.find(
|
|
10
|
-
if (token)
|
|
6
|
+
const token = tokens.find(token => token.address?.toLocaleLowerCase() === address?.toLocaleLowerCase() && token.chain_id == chainId)
|
|
7
|
+
if (token)
|
|
8
|
+
return token
|
|
11
9
|
}
|
|
12
10
|
|
|
13
11
|
const [token] = (await $fetch(`${blockQueryURL}/${chainId}/tokens`, {
|
|
14
12
|
params: {
|
|
15
|
-
sparkline: false,
|
|
16
|
-
|
|
13
|
+
'sparkline': false,
|
|
14
|
+
'addresses[]': [address],
|
|
17
15
|
},
|
|
18
|
-
})) as ITokenPrice[]
|
|
16
|
+
})) as ITokenPrice[]
|
|
19
17
|
|
|
20
|
-
return token
|
|
21
|
-
}
|
|
18
|
+
return token
|
|
19
|
+
}
|
package/utils/utils.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import type { Chain } from 'viem'
|
|
2
|
+
|
|
1
3
|
declare global {
|
|
2
4
|
type ChainId =
|
|
3
5
|
| 1
|
|
@@ -13,120 +15,134 @@ declare global {
|
|
|
13
15
|
| 1313161554
|
|
14
16
|
| 8453
|
|
15
17
|
| 122
|
|
16
|
-
|
|
|
18
|
+
| 534352
|
|
19
|
+
| 204
|
|
20
|
+
| 63400
|
|
21
|
+
| 169
|
|
22
|
+
| 34443
|
|
23
|
+
| 81457
|
|
24
|
+
| 59144
|
|
25
|
+
| 146
|
|
17
26
|
|
|
18
|
-
type ISlackMessageType =
|
|
27
|
+
type ISlackMessageType = 'danger' | 'error' | 'success' | 'banner'
|
|
19
28
|
|
|
20
|
-
type MetadataTypes = keyof typeof MetadataEnums
|
|
29
|
+
type MetadataTypes = keyof typeof MetadataEnums
|
|
21
30
|
|
|
22
|
-
type PayloadFunction = (data: any, type: MetadataTypes) => any
|
|
31
|
+
type PayloadFunction = (data: any, type: MetadataTypes) => any
|
|
23
32
|
|
|
24
|
-
type IPayload = Record<MetadataTypes, PayloadFunction
|
|
33
|
+
type IPayload = Record<MetadataTypes, PayloadFunction>
|
|
25
34
|
|
|
26
35
|
interface Network {
|
|
27
|
-
name: string
|
|
28
|
-
debankName?: string
|
|
29
|
-
ankrName?: string
|
|
30
|
-
zerionName?: string
|
|
31
|
-
chainId: ChainId
|
|
32
|
-
color: string
|
|
33
|
-
isAvocado?: boolean
|
|
34
|
-
serverRpcUrl: string | undefined
|
|
35
|
-
balanceResolverAddress?: string
|
|
36
|
-
usdcAddress
|
|
37
|
-
explorerUrl: string
|
|
38
|
-
|
|
36
|
+
name: string
|
|
37
|
+
debankName?: string
|
|
38
|
+
ankrName?: string
|
|
39
|
+
zerionName?: string
|
|
40
|
+
chainId: ChainId
|
|
41
|
+
color: string
|
|
42
|
+
isAvocado?: boolean
|
|
43
|
+
serverRpcUrl: string | undefined
|
|
44
|
+
balanceResolverAddress?: string
|
|
45
|
+
usdcAddress?: string
|
|
46
|
+
explorerUrl: string
|
|
47
|
+
fakeTransactionHash: string
|
|
48
|
+
viemChain: Chain
|
|
49
|
+
legacySupported: boolean
|
|
50
|
+
// must start with https://
|
|
51
|
+
apiURL: `https://${string}` | null
|
|
39
52
|
params: {
|
|
40
|
-
chainName?: string
|
|
41
|
-
iconUrls?: string[]
|
|
42
|
-
rpcUrls: string[]
|
|
53
|
+
chainName?: string
|
|
54
|
+
iconUrls?: string[]
|
|
55
|
+
rpcUrls: string[]
|
|
43
56
|
nativeCurrency?: {
|
|
44
|
-
name: string
|
|
45
|
-
symbol: string
|
|
46
|
-
decimals: number
|
|
47
|
-
}
|
|
48
|
-
}
|
|
57
|
+
name: string
|
|
58
|
+
symbol: string
|
|
59
|
+
decimals: number
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
interface SignMetadataProps {
|
|
65
|
+
token: string
|
|
66
|
+
spender: string
|
|
67
|
+
amount: string
|
|
68
|
+
expiration: string
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
interface DappMetadataProps {
|
|
72
|
+
name: string
|
|
73
|
+
url: string
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
interface SendMetadataProps {
|
|
77
|
+
token: string
|
|
78
|
+
amount: string
|
|
79
|
+
receiver: string
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
interface CrossSendMetadataProps {
|
|
83
|
+
fromToken: string
|
|
84
|
+
toToken: string
|
|
85
|
+
toChainId: string
|
|
86
|
+
amount: string
|
|
87
|
+
receiver: string
|
|
88
|
+
provider?: string
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
interface AuthMetadataProps {
|
|
92
|
+
address: string
|
|
93
|
+
chainId: string
|
|
94
|
+
remove: boolean
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
interface UpgradeMetadataProps {
|
|
98
|
+
version: string
|
|
99
|
+
walletImpl: string
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
interface TopupMetadataProps {
|
|
103
|
+
amount: string
|
|
104
|
+
token: string
|
|
105
|
+
onBehalf: string
|
|
49
106
|
}
|
|
50
107
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
type AuthMetadataProps = {
|
|
78
|
-
address: string;
|
|
79
|
-
chainId: string;
|
|
80
|
-
remove: boolean;
|
|
81
|
-
};
|
|
82
|
-
|
|
83
|
-
type UpgradeMetadataProps = {
|
|
84
|
-
version: string;
|
|
85
|
-
walletImpl: string;
|
|
86
|
-
};
|
|
87
|
-
|
|
88
|
-
type TopupMetadataProps = {
|
|
89
|
-
amount: string;
|
|
90
|
-
token: string;
|
|
91
|
-
onBehalf: string;
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
type BridgeMetadataProps = {
|
|
95
|
-
amount: string;
|
|
96
|
-
receiver: string;
|
|
97
|
-
fromToken: string;
|
|
98
|
-
toToken: string;
|
|
99
|
-
toChainId: string;
|
|
100
|
-
bridgeFee: string;
|
|
101
|
-
nativeToken: string;
|
|
102
|
-
};
|
|
103
|
-
|
|
104
|
-
type SwapMetadataProps = {
|
|
105
|
-
sellToken: string;
|
|
106
|
-
buyToken: string;
|
|
107
|
-
sellAmount: string;
|
|
108
|
-
buyAmount: string;
|
|
109
|
-
receiver: string;
|
|
110
|
-
protocol?: string;
|
|
111
|
-
};
|
|
112
|
-
|
|
113
|
-
type MetadataProps = {
|
|
114
|
-
type: MetadataTypes;
|
|
115
|
-
encodedData: string;
|
|
116
|
-
version?: string;
|
|
117
|
-
};
|
|
108
|
+
interface BridgeMetadataProps {
|
|
109
|
+
amount: string
|
|
110
|
+
receiver: string
|
|
111
|
+
fromToken: string
|
|
112
|
+
toToken: string
|
|
113
|
+
toChainId: string
|
|
114
|
+
bridgeFee: string
|
|
115
|
+
nativeToken: string
|
|
116
|
+
version?: string
|
|
117
|
+
provider: string
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
interface SwapMetadataProps {
|
|
121
|
+
sellToken: string
|
|
122
|
+
buyToken: string
|
|
123
|
+
sellAmount: string
|
|
124
|
+
buyAmount: string
|
|
125
|
+
receiver: string
|
|
126
|
+
protocol?: string
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
interface MetadataProps {
|
|
130
|
+
type: MetadataTypes
|
|
131
|
+
encodedData: string
|
|
132
|
+
version?: string
|
|
133
|
+
}
|
|
118
134
|
|
|
119
135
|
interface ITokenPrice {
|
|
120
|
-
address: string
|
|
121
|
-
chain_id: string
|
|
122
|
-
name: string
|
|
123
|
-
symbol: string
|
|
124
|
-
decimals: number
|
|
125
|
-
logo_url: string
|
|
126
|
-
price: string
|
|
127
|
-
coingecko_id: string
|
|
128
|
-
sparkline_price_7d: number[]
|
|
136
|
+
address: string
|
|
137
|
+
chain_id: string
|
|
138
|
+
name: string
|
|
139
|
+
symbol: string
|
|
140
|
+
decimals: number
|
|
141
|
+
logo_url: string
|
|
142
|
+
price: string
|
|
143
|
+
coingecko_id: string
|
|
144
|
+
sparkline_price_7d: number[]
|
|
129
145
|
}
|
|
130
146
|
}
|
|
131
147
|
|
|
132
|
-
export {}
|
|
148
|
+
export {}
|