@instadapp/avocado-base 0.0.0-dev.d8050bd → 0.0.0-dev.dcb4af3
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 +30 -20
- 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 +29 -32
- 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 +408 -349
- package/utils/network.ts +508 -263
- package/utils/services.ts +11 -13
- package/utils/utils.d.ts +117 -103
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
|
|
@@ -15,121 +17,133 @@ declare global {
|
|
|
15
17
|
| 122
|
|
16
18
|
| 534352
|
|
17
19
|
| 204
|
|
18
|
-
| 63400
|
|
20
|
+
| 63400
|
|
21
|
+
| 169
|
|
22
|
+
| 34443
|
|
23
|
+
| 81457
|
|
24
|
+
| 59144
|
|
25
|
+
| 146
|
|
26
|
+
| 9745
|
|
19
27
|
|
|
20
|
-
type ISlackMessageType =
|
|
28
|
+
type ISlackMessageType = 'danger' | 'error' | 'success' | 'banner'
|
|
21
29
|
|
|
22
|
-
type MetadataTypes = keyof typeof MetadataEnums
|
|
30
|
+
type MetadataTypes = keyof typeof MetadataEnums
|
|
23
31
|
|
|
24
|
-
type PayloadFunction = (data: any, type: MetadataTypes) => any
|
|
32
|
+
type PayloadFunction = (data: any, type: MetadataTypes) => any
|
|
25
33
|
|
|
26
|
-
type IPayload = Record<MetadataTypes, PayloadFunction
|
|
34
|
+
type IPayload = Record<MetadataTypes, PayloadFunction>
|
|
27
35
|
|
|
28
36
|
interface Network {
|
|
29
|
-
name: string
|
|
30
|
-
debankName?: string
|
|
31
|
-
ankrName?: string
|
|
32
|
-
zerionName?: string
|
|
33
|
-
chainId: ChainId
|
|
34
|
-
color: string
|
|
35
|
-
isAvocado?: boolean
|
|
36
|
-
serverRpcUrl: string | undefined
|
|
37
|
-
balanceResolverAddress?: string
|
|
38
|
-
usdcAddress?: string
|
|
39
|
-
explorerUrl: string
|
|
40
|
-
fakeTransactionHash: string
|
|
41
|
-
|
|
37
|
+
name: string
|
|
38
|
+
debankName?: string
|
|
39
|
+
ankrName?: string
|
|
40
|
+
zerionName?: string
|
|
41
|
+
chainId: ChainId
|
|
42
|
+
color: string
|
|
43
|
+
isAvocado?: boolean
|
|
44
|
+
serverRpcUrl: string | undefined
|
|
45
|
+
balanceResolverAddress?: string
|
|
46
|
+
usdcAddress?: string
|
|
47
|
+
explorerUrl: string
|
|
48
|
+
fakeTransactionHash: string
|
|
49
|
+
viemChain: Chain
|
|
50
|
+
legacySupported: boolean
|
|
51
|
+
// must start with https://
|
|
52
|
+
apiURL: `https://${string}` | null
|
|
42
53
|
params: {
|
|
43
|
-
chainName?: string
|
|
44
|
-
iconUrls?: string[]
|
|
45
|
-
rpcUrls: string[]
|
|
54
|
+
chainName?: string
|
|
55
|
+
iconUrls?: string[]
|
|
56
|
+
rpcUrls: string[] | readonly string[]
|
|
46
57
|
nativeCurrency?: {
|
|
47
|
-
name: string
|
|
48
|
-
symbol: string
|
|
49
|
-
decimals: number
|
|
50
|
-
}
|
|
51
|
-
}
|
|
58
|
+
name: string
|
|
59
|
+
symbol: string
|
|
60
|
+
decimals: number
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
interface SignMetadataProps {
|
|
66
|
+
token: string
|
|
67
|
+
spender: string
|
|
68
|
+
amount: string
|
|
69
|
+
expiration: string
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
interface DappMetadataProps {
|
|
73
|
+
name: string
|
|
74
|
+
url: string
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
interface SendMetadataProps {
|
|
78
|
+
token: string
|
|
79
|
+
amount: string
|
|
80
|
+
receiver: string
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
interface CrossSendMetadataProps {
|
|
84
|
+
fromToken: string
|
|
85
|
+
toToken: string
|
|
86
|
+
toChainId: string
|
|
87
|
+
amount: string
|
|
88
|
+
receiver: string
|
|
89
|
+
provider?: string
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
interface AuthMetadataProps {
|
|
93
|
+
address: string
|
|
94
|
+
chainId: string
|
|
95
|
+
remove: boolean
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
interface UpgradeMetadataProps {
|
|
99
|
+
version: string
|
|
100
|
+
walletImpl: string
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
interface TopupMetadataProps {
|
|
104
|
+
amount: string
|
|
105
|
+
token: string
|
|
106
|
+
onBehalf: string
|
|
52
107
|
}
|
|
53
108
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
type AuthMetadataProps = {
|
|
81
|
-
address: string;
|
|
82
|
-
chainId: string;
|
|
83
|
-
remove: boolean;
|
|
84
|
-
};
|
|
85
|
-
|
|
86
|
-
type UpgradeMetadataProps = {
|
|
87
|
-
version: string;
|
|
88
|
-
walletImpl: string;
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
type TopupMetadataProps = {
|
|
92
|
-
amount: string;
|
|
93
|
-
token: string;
|
|
94
|
-
onBehalf: string;
|
|
95
|
-
};
|
|
96
|
-
|
|
97
|
-
type BridgeMetadataProps = {
|
|
98
|
-
amount: string;
|
|
99
|
-
receiver: string;
|
|
100
|
-
fromToken: string;
|
|
101
|
-
toToken: string;
|
|
102
|
-
toChainId: string;
|
|
103
|
-
bridgeFee: string;
|
|
104
|
-
nativeToken: string;
|
|
105
|
-
};
|
|
106
|
-
|
|
107
|
-
type SwapMetadataProps = {
|
|
108
|
-
sellToken: string;
|
|
109
|
-
buyToken: string;
|
|
110
|
-
sellAmount: string;
|
|
111
|
-
buyAmount: string;
|
|
112
|
-
receiver: string;
|
|
113
|
-
protocol?: string;
|
|
114
|
-
};
|
|
115
|
-
|
|
116
|
-
type MetadataProps = {
|
|
117
|
-
type: MetadataTypes;
|
|
118
|
-
encodedData: string;
|
|
119
|
-
version?: string;
|
|
120
|
-
};
|
|
109
|
+
interface BridgeMetadataProps {
|
|
110
|
+
amount: string
|
|
111
|
+
receiver: string
|
|
112
|
+
fromToken: string
|
|
113
|
+
toToken: string
|
|
114
|
+
toChainId: string
|
|
115
|
+
bridgeFee: string
|
|
116
|
+
nativeToken: string
|
|
117
|
+
version?: string
|
|
118
|
+
provider: string
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
interface SwapMetadataProps {
|
|
122
|
+
sellToken: string
|
|
123
|
+
buyToken: string
|
|
124
|
+
sellAmount: string
|
|
125
|
+
buyAmount: string
|
|
126
|
+
receiver: string
|
|
127
|
+
protocol?: string
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
interface MetadataProps {
|
|
131
|
+
type: MetadataTypes
|
|
132
|
+
encodedData: string
|
|
133
|
+
version?: string
|
|
134
|
+
}
|
|
121
135
|
|
|
122
136
|
interface ITokenPrice {
|
|
123
|
-
address: string
|
|
124
|
-
chain_id: string
|
|
125
|
-
name: string
|
|
126
|
-
symbol: string
|
|
127
|
-
decimals: number
|
|
128
|
-
logo_url: string
|
|
129
|
-
price: string
|
|
130
|
-
coingecko_id: string
|
|
131
|
-
sparkline_price_7d: number[]
|
|
137
|
+
address: string
|
|
138
|
+
chain_id: string
|
|
139
|
+
name: string
|
|
140
|
+
symbol: string
|
|
141
|
+
decimals: number
|
|
142
|
+
logo_url: string
|
|
143
|
+
price: string
|
|
144
|
+
coingecko_id: string
|
|
145
|
+
sparkline_price_7d: number[]
|
|
132
146
|
}
|
|
133
147
|
}
|
|
134
148
|
|
|
135
|
-
export {}
|
|
149
|
+
export {}
|