@velora-dex/widget 0.2.3 → 0.2.4
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/components/widget/DexesList/DexItem.d.ts.map +1 -1
- package/dist/components/widget/DexesList/DexItem.js +57 -62
- package/dist/components/widget/DexesList/DexItem.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js +6 -6
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.d.ts.map +1 -1
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js +0 -5
- package/dist/components/widget/SwapModeSwitcher/state/swapSideAtom.js.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/utils.d.ts.map +1 -1
- package/dist/components/widget/TradeOverview/TradeComplete/utils.js +4 -2
- package/dist/components/widget/TradeOverview/TradeComplete/utils.js.map +1 -1
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.d.ts.map +1 -1
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js +46 -34
- package/dist/components/widget/WrapEth/hooks/useWrapEthProps.js.map +1 -1
- package/dist/configurator/Configurator.d.ts.map +1 -1
- package/dist/core/Updaters.d.ts.map +1 -1
- package/dist/core/Updaters.js +2 -0
- package/dist/core/Updaters.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenFromInputProps.js +25 -16
- package/dist/core/inputs/hooks/useTokenFromInputProps.js.map +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useTokenToInputProps.js +9 -12
- package/dist/core/inputs/hooks/useTokenToInputProps.js.map +1 -1
- package/dist/core/inputs/state/common.d.ts +2 -2
- package/dist/core/inputs/state/selectedTokenActionsAtom.d.ts.map +1 -1
- package/dist/core/inputs/state/selectedTokenActionsAtom.js +34 -25
- package/dist/core/inputs/state/selectedTokenActionsAtom.js.map +1 -1
- package/dist/core/inputs/state/selectedTokenAtom.d.ts +2 -2
- package/dist/core/inputs/state/selectedTokenAtom.d.ts.map +1 -1
- package/dist/core/inputs/state/selectedTokenAtom.js +9 -2
- package/dist/core/inputs/state/selectedTokenAtom.js.map +1 -1
- package/dist/core/inputs/state/types.d.ts.map +1 -1
- package/dist/core/limit/useLimitRate.js +3 -1
- package/dist/core/limit/useLimitRate.js.map +1 -1
- package/dist/core/state/widgetEventsAtom.d.ts.map +1 -1
- package/dist/core/state/widgetEventsAtom.js +4 -4
- package/dist/core/state/widgetEventsAtom.js.map +1 -1
- package/dist/core/swapDetails/maxToPay.d.ts +11 -0
- package/dist/core/swapDetails/maxToPay.d.ts.map +1 -0
- package/dist/core/swapDetails/maxToPay.js +41 -0
- package/dist/core/swapDetails/maxToPay.js.map +1 -0
- package/dist/core/swapDetails/useSwapDetailsListProps.d.ts.map +1 -1
- package/dist/core/swapDetails/useSwapDetailsListProps.js +9 -2
- package/dist/core/swapDetails/useSwapDetailsListProps.js.map +1 -1
- package/dist/core/swapDetails/youGet.d.ts.map +1 -1
- package/dist/core/swapDetails/youGet.js.map +1 -1
- package/dist/events/effects/price.js +3 -3
- package/dist/events/effects/price.js.map +1 -1
- package/dist/events/effects/swapMode.js +2 -2
- package/dist/events/effects/swapMode.js.map +1 -1
- package/dist/events/hooks/useOnPriceUpdates.d.ts +2 -0
- package/dist/events/hooks/useOnPriceUpdates.d.ts.map +1 -0
- package/dist/events/hooks/useOnPriceUpdates.js +104 -0
- package/dist/events/hooks/useOnPriceUpdates.js.map +1 -0
- package/dist/events/types/priceChange.d.ts +12 -4
- package/dist/events/types/priceChange.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts +33 -4
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.d.ts.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js +98 -29
- package/dist/hooks/swap/prices/delta/queries/useDeltaPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/delta/queries/utils.d.ts +3 -0
- package/dist/hooks/swap/prices/delta/queries/utils.d.ts.map +1 -0
- package/dist/hooks/swap/prices/delta/queries/utils.js +9 -0
- package/dist/hooks/swap/prices/delta/queries/utils.js.map +1 -0
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts +35 -2
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.d.ts.map +1 -1
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js +102 -98
- package/dist/hooks/swap/prices/market/queries/useMarketPriceQuery.js.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.d.ts +8 -0
- package/dist/hooks/swap/prices/useSwapPrices.d.ts.map +1 -1
- package/dist/hooks/swap/prices/useSwapPrices.js +234 -99
- package/dist/hooks/swap/prices/useSwapPrices.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js +13 -20
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketFlow.js.map +1 -1
- package/dist/hooks/useCachedQueryError.d.ts +3 -0
- package/dist/hooks/useCachedQueryError.d.ts.map +1 -0
- package/dist/hooks/useCachedQueryError.js +11 -0
- package/dist/hooks/useCachedQueryError.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/lib/web3/privy/config.js +1 -1
- package/dist/lib/web3/wagmi/config.js +1 -1
- package/dist/styles.css +1 -1
- package/dist/tokens/overrides.d.ts +13 -2
- package/dist/tokens/overrides.d.ts.map +1 -1
- package/dist/tokens/overrides.js +71 -3
- package/dist/tokens/overrides.js.map +1 -1
- package/dist/tokens/types.d.ts +4 -0
- package/dist/tokens/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,3 +1,14 @@
|
|
|
1
|
-
import { TokenList } from '@uniswap/token-lists';
|
|
2
|
-
export declare function overrideTokenList(tokenList: TokenList, listURL: string):
|
|
1
|
+
import { TokenInfo, TokenList } from '@uniswap/token-lists';
|
|
2
|
+
export declare function overrideTokenList(tokenList: TokenList, listURL: string): {
|
|
3
|
+
tokens: TokenInfo[];
|
|
4
|
+
name: string;
|
|
5
|
+
timestamp: string;
|
|
6
|
+
version: import('@uniswap/token-lists').Version;
|
|
7
|
+
tokenMap?: {
|
|
8
|
+
readonly [key: string]: TokenInfo;
|
|
9
|
+
};
|
|
10
|
+
keywords?: string[];
|
|
11
|
+
tags?: import('@uniswap/token-lists').Tags;
|
|
12
|
+
logoURI?: string;
|
|
13
|
+
};
|
|
3
14
|
//# sourceMappingURL=overrides.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overrides.d.ts","sourceRoot":"","sources":["../../src/tokens/overrides.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"overrides.d.ts","sourceRoot":"","sources":["../../src/tokens/overrides.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AA2JjE,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM;;;;;;;;;;;EA+CtE"}
|
package/dist/tokens/overrides.js
CHANGED
|
@@ -81,13 +81,81 @@ const TokenListsOverrides = {
|
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
};
|
|
84
|
+
const USDT0Icon = "https://static.optimism.io/data/USD%E2%82%AE0/logo.png";
|
|
85
|
+
const IndividualTokensOverrides = {
|
|
86
|
+
// USDT on Ethereum stays USDT
|
|
87
|
+
"0xdac17f958d2ee523a2206206994597c13d831ec7@1": {
|
|
88
|
+
merge: {
|
|
89
|
+
symbol: "USDT",
|
|
90
|
+
name: "Tether USD",
|
|
91
|
+
logoURI: "https://etherscan.io/token/images/tethernew_32.svg"
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
// USDT on other chains is USDT0 but tokenLists may have it under USDT,
|
|
95
|
+
// basically USDT on Ethereum bridged through LayerZero = USDT0.
|
|
96
|
+
// overriding their symbol from USD₮0 to USDT0 to make it consistent with other chains and searchable
|
|
97
|
+
"0xc2132d05d31c914a87c6611c10748aeb04b58e8f@137": {
|
|
98
|
+
merge: {
|
|
99
|
+
symbol: "USDT0",
|
|
100
|
+
name: "USD₮0",
|
|
101
|
+
logoURI: USDT0Icon
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
"0x01bff41798a0bcf287b996046ca68b395dbc1071@10": {
|
|
105
|
+
merge: {
|
|
106
|
+
symbol: "USDT0",
|
|
107
|
+
name: "USD₮0",
|
|
108
|
+
logoURI: USDT0Icon
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
"0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9@42161": {
|
|
112
|
+
merge: {
|
|
113
|
+
symbol: "USDT0",
|
|
114
|
+
name: "USD₮0",
|
|
115
|
+
logoURI: USDT0Icon
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
"0x9151434b16b9763660705744891fa906f660ecc5@130": {
|
|
119
|
+
merge: {
|
|
120
|
+
symbol: "USDT0",
|
|
121
|
+
name: "USD₮0",
|
|
122
|
+
logoURI: USDT0Icon
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
// separate USDT0 on Base through Stargate bridge,
|
|
126
|
+
// included to make the symbol consistent with other chains and searchable
|
|
127
|
+
"0x102d758f688a4c1c5a80b116bd945d4455460282@8453": {
|
|
128
|
+
merge: {
|
|
129
|
+
symbol: "USDT0",
|
|
130
|
+
name: "Stargate USD₮0 (Bridged)",
|
|
131
|
+
logoURI: USDT0Icon
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
};
|
|
84
135
|
function overrideTokenList(tokenList, listURL) {
|
|
85
136
|
const overrides = TokenListsOverrides[listURL];
|
|
86
|
-
if (!overrides) return tokenList;
|
|
87
137
|
const overriddenTokens = tokenList.tokens.reduce((accum, tokenInfo) => {
|
|
138
|
+
const individualOverride = IndividualTokensOverrides[`${tokenInfo.address.toLowerCase()}@${tokenInfo.chainId}`];
|
|
139
|
+
if (individualOverride) {
|
|
140
|
+
if (individualOverride.remove) {
|
|
141
|
+
return accum;
|
|
142
|
+
}
|
|
143
|
+
if (individualOverride.merge) {
|
|
144
|
+
const override2 = {
|
|
145
|
+
...tokenInfo,
|
|
146
|
+
...individualOverride.merge
|
|
147
|
+
};
|
|
148
|
+
accum.push(override2);
|
|
149
|
+
return accum;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
if (!overrides) {
|
|
153
|
+
accum.push(tokenInfo);
|
|
154
|
+
return accum;
|
|
155
|
+
}
|
|
88
156
|
const remove = overrides.remove?.has(tokenInfo.address.toLowerCase());
|
|
89
157
|
if (remove) return accum;
|
|
90
|
-
const override = overrides
|
|
158
|
+
const override = overrides.merge?.[tokenInfo.address.toLowerCase()];
|
|
91
159
|
const token = override ? {
|
|
92
160
|
...tokenInfo,
|
|
93
161
|
...override
|
|
@@ -95,7 +163,7 @@ function overrideTokenList(tokenList, listURL) {
|
|
|
95
163
|
accum.push(token);
|
|
96
164
|
return accum;
|
|
97
165
|
}, []);
|
|
98
|
-
if (overrides
|
|
166
|
+
if (overrides?.add) {
|
|
99
167
|
overriddenTokens.push(...overrides.add);
|
|
100
168
|
}
|
|
101
169
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overrides.js","sources":["../../src/tokens/overrides.ts"],"sourcesContent":["import type { TokenInfo, TokenList } from \"@uniswap/token-lists\";\nimport type { TokenListOverride } from \"./types\";\n\n// AAVE and GHO tokens have deprecated logos in some lists\nconst AAVE_OverrideTokenInfo: Partial<TokenInfo> = {\n logoURI:\n \"https://coin-images.coingecko.com/coins/images/12645/large/aave-token-round.png?1720472354\",\n};\nconst GHO_OverrideTokenInfo: Partial<TokenInfo> = {\n logoURI:\n \"https://coin-images.coingecko.com/coins/images/30663/large/gho-token-logo.png?1720517092\",\n};\n\n// override decimals that we know are wrong in Gemini token list https://paraswap.slack.com/archives/C01AUMPP56J/p1669810101097819?thread_ts=1669804269.667909&cid=C01AUMPP56J\nconst TokenListsOverrides: Record<string, TokenListOverride> = {\n // Ethereum\n \"https://tokens.uniswap.org\": {\n merge: {\n \"0x7fc66500c84a76ad7e9c93437bfc5ac33e2ddae9\": AAVE_OverrideTokenInfo,\n \"0x40d16fc0246ad3160ccc09b8d0d3a2cd28ae6c2f\": GHO_OverrideTokenInfo,\n },\n },\n\n \"https://raw.githubusercontent.com/paraswap/community-token-list/master/src/sources/paraswap.extralist.json\":\n {\n merge: {\n \"0x40d16fc0246ad3160ccc09b8d0d3a2cd28ae6c2f\": GHO_OverrideTokenInfo,\n },\n },\n\n // Optimism\n \"https://static.optimism.io/optimism.tokenlist.json\": {\n merge: {\n \"0x76fb31fb4af56892a25e32cfc43de717950c9278\": AAVE_OverrideTokenInfo,\n },\n },\n\n // Avalanche\n \"https://raw.githubusercontent.com/pangolindex/tokenlists/main/pangolin.tokenlist.json\":\n {\n merge: {\n \"0x63a72806098bd3d9520cc43356dd78afe5d386d9\": AAVE_OverrideTokenInfo,\n },\n },\n \"https://raw.githubusercontent.com/traderjoe-xyz/joe-tokenlists/main/mc.tokenlist.json\":\n {\n merge: {\n \"0x63a72806098bd3d9520cc43356dd78afe5d386d9\": AAVE_OverrideTokenInfo,\n },\n },\n\n // Polygon\n \"https://unpkg.com/quickswap-default-token-list@latest/build/quickswap-default.tokenlist.json\":\n {\n merge: {\n \"0xd6df932a45c0f255f85145f286ea0b292b21c90b\": AAVE_OverrideTokenInfo,\n \"0x7ceb23fd6bc0add59e62ac25578270cff1b9f619\": {\n symbol: \"WETH\",\n name: \"Wrapped Ether\",\n },\n },\n },\n \"https://unpkg.com/@cometh-game/default-token-list@latest/build/comethswap-default.tokenlist.json\":\n {\n merge: {\n \"0xd6df932a45c0f255f85145f286ea0b292b21c90b\": AAVE_OverrideTokenInfo,\n \"0x7ceb23fd6bc0add59e62ac25578270cff1b9f619\": {\n symbol: \"WETH\",\n name: \"Wrapped Ether\",\n },\n },\n },\n\n // Arbitrum\n \"https://bridge.arbitrum.io/token-list-42161.json\": {\n // Gemini tokens list has been removed from our dApp, but we keep the overrides in case of similar issues in the future and a need of quick fix\n // \"https://www.gemini.com/uniswap/manifest.json\": {merge: {\n // \"0x6b0b3a982b4634ac68dd83a4dbf02311ce324181\": { decimals: 18 },\n // \"0xbb0e17ef65f82ab018d8edd776e8dd940327b28b\": { decimals: 18 },\n // \"0x18aaa7115705e8be94bffebde57af9bfc265b998\": { decimals: 18 },\n // }},\n // Arbitrum GMX is under an old address in the list\n remove: new Set([\"0x590020b1005b8b25f1a2c82c5f743c540dcfa24d\"]),\n },\n\n // Gnosis\n \"https://tokens.coingecko.com/xdai/all.json\": {\n merge: {\n \"0xe91d153e0b41518a2ce8dd3d7944fa863463a97d\": { symbol: \"WXDAI\" },\n },\n },\n \"https://tokens.coingecko.com/polygon-pos/all.json\": {\n merge: {\n // MLN token with wrong decimals in the tokenList\n \"0xa9f37d84c856fda3812ad0519dad44fa0a3fe207\": { decimals: 18 },\n },\n },\n};\n\nexport function overrideTokenList(tokenList: TokenList, listURL: string) {\n const overrides = TokenListsOverrides[listURL];\n if (!overrides) return tokenList;\n\n const overriddenTokens = tokenList.tokens.reduce<TokenInfo[]>(\n (accum, tokenInfo) => {\n const remove = overrides.remove?.has(tokenInfo.address.toLowerCase());\n if (remove) return accum;\n\n const override = overrides?.merge?.[tokenInfo.address.toLowerCase()];\n const token = override ? { ...tokenInfo, ...override } : tokenInfo;\n\n accum.push(token);\n\n return accum;\n },\n []\n );\n\n if (overrides.add) {\n overriddenTokens.push(...overrides.add);\n }\n\n return { ...tokenList, tokens: overriddenTokens };\n}\n"],"names":["AAVE_OverrideTokenInfo","logoURI","GHO_OverrideTokenInfo","TokenListsOverrides","merge","symbol","name","remove","Set","decimals","overrideTokenList","tokenList","listURL","overrides","overriddenTokens","tokens","reduce","accum","tokenInfo","has","address","toLowerCase","override","token","push","add"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"overrides.js","sources":["../../src/tokens/overrides.ts"],"sourcesContent":["import type { TokenInfo, TokenList } from \"@uniswap/token-lists\";\nimport type { TokenListOverride, IndividualTokenOverride } from \"./types\";\n\n// AAVE and GHO tokens have deprecated logos in some lists\nconst AAVE_OverrideTokenInfo: Partial<TokenInfo> = {\n logoURI:\n \"https://coin-images.coingecko.com/coins/images/12645/large/aave-token-round.png?1720472354\",\n};\nconst GHO_OverrideTokenInfo: Partial<TokenInfo> = {\n logoURI:\n \"https://coin-images.coingecko.com/coins/images/30663/large/gho-token-logo.png?1720517092\",\n};\n\n// override decimals that we know are wrong in Gemini token list https://paraswap.slack.com/archives/C01AUMPP56J/p1669810101097819?thread_ts=1669804269.667909&cid=C01AUMPP56J\nconst TokenListsOverrides: Record<string, TokenListOverride> = {\n // Ethereum\n \"https://tokens.uniswap.org\": {\n merge: {\n \"0x7fc66500c84a76ad7e9c93437bfc5ac33e2ddae9\": AAVE_OverrideTokenInfo,\n \"0x40d16fc0246ad3160ccc09b8d0d3a2cd28ae6c2f\": GHO_OverrideTokenInfo,\n },\n },\n\n \"https://raw.githubusercontent.com/paraswap/community-token-list/master/src/sources/paraswap.extralist.json\":\n {\n merge: {\n \"0x40d16fc0246ad3160ccc09b8d0d3a2cd28ae6c2f\": GHO_OverrideTokenInfo,\n },\n },\n\n // Optimism\n \"https://static.optimism.io/optimism.tokenlist.json\": {\n merge: {\n \"0x76fb31fb4af56892a25e32cfc43de717950c9278\": AAVE_OverrideTokenInfo,\n },\n },\n\n // Avalanche\n \"https://raw.githubusercontent.com/pangolindex/tokenlists/main/pangolin.tokenlist.json\":\n {\n merge: {\n \"0x63a72806098bd3d9520cc43356dd78afe5d386d9\": AAVE_OverrideTokenInfo,\n },\n },\n \"https://raw.githubusercontent.com/traderjoe-xyz/joe-tokenlists/main/mc.tokenlist.json\":\n {\n merge: {\n \"0x63a72806098bd3d9520cc43356dd78afe5d386d9\": AAVE_OverrideTokenInfo,\n },\n },\n\n // Polygon\n \"https://unpkg.com/quickswap-default-token-list@latest/build/quickswap-default.tokenlist.json\":\n {\n merge: {\n \"0xd6df932a45c0f255f85145f286ea0b292b21c90b\": AAVE_OverrideTokenInfo,\n \"0x7ceb23fd6bc0add59e62ac25578270cff1b9f619\": {\n symbol: \"WETH\",\n name: \"Wrapped Ether\",\n },\n },\n },\n \"https://unpkg.com/@cometh-game/default-token-list@latest/build/comethswap-default.tokenlist.json\":\n {\n merge: {\n \"0xd6df932a45c0f255f85145f286ea0b292b21c90b\": AAVE_OverrideTokenInfo,\n \"0x7ceb23fd6bc0add59e62ac25578270cff1b9f619\": {\n symbol: \"WETH\",\n name: \"Wrapped Ether\",\n },\n },\n },\n\n // Arbitrum\n \"https://bridge.arbitrum.io/token-list-42161.json\": {\n // Gemini tokens list has been removed from our dApp, but we keep the overrides in case of similar issues in the future and a need of quick fix\n // \"https://www.gemini.com/uniswap/manifest.json\": {merge: {\n // \"0x6b0b3a982b4634ac68dd83a4dbf02311ce324181\": { decimals: 18 },\n // \"0xbb0e17ef65f82ab018d8edd776e8dd940327b28b\": { decimals: 18 },\n // \"0x18aaa7115705e8be94bffebde57af9bfc265b998\": { decimals: 18 },\n // }},\n // Arbitrum GMX is under an old address in the list\n remove: new Set([\"0x590020b1005b8b25f1a2c82c5f743c540dcfa24d\"]),\n },\n\n // Gnosis\n \"https://tokens.coingecko.com/xdai/all.json\": {\n merge: {\n \"0xe91d153e0b41518a2ce8dd3d7944fa863463a97d\": { symbol: \"WXDAI\" },\n },\n },\n \"https://tokens.coingecko.com/polygon-pos/all.json\": {\n merge: {\n // MLN token with wrong decimals in the tokenList\n \"0xa9f37d84c856fda3812ad0519dad44fa0a3fe207\": { decimals: 18 },\n },\n },\n};\n\nconst USDT0Icon = \"https://static.optimism.io/data/USD%E2%82%AE0/logo.png\";\n// `lowercase_address@chainId`: override\nconst IndividualTokensOverrides: Record<\n `${string}@${number}`,\n IndividualTokenOverride\n> = {\n // USDT on Ethereum stays USDT\n \"0xdac17f958d2ee523a2206206994597c13d831ec7@1\": {\n merge: {\n symbol: \"USDT\",\n name: \"Tether USD\",\n logoURI: \"https://etherscan.io/token/images/tethernew_32.svg\",\n },\n },\n // USDT on other chains is USDT0 but tokenLists may have it under USDT,\n // basically USDT on Ethereum bridged through LayerZero = USDT0.\n // overriding their symbol from USD₮0 to USDT0 to make it consistent with other chains and searchable\n \"0xc2132d05d31c914a87c6611c10748aeb04b58e8f@137\": {\n merge: {\n symbol: \"USDT0\",\n name: \"USD₮0\",\n logoURI: USDT0Icon,\n },\n },\n \"0x01bff41798a0bcf287b996046ca68b395dbc1071@10\": {\n merge: {\n symbol: \"USDT0\",\n name: \"USD₮0\",\n logoURI: USDT0Icon,\n },\n },\n \"0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9@42161\": {\n merge: {\n symbol: \"USDT0\",\n name: \"USD₮0\",\n logoURI: USDT0Icon,\n },\n },\n \"0x9151434b16b9763660705744891fa906f660ecc5@130\": {\n merge: {\n symbol: \"USDT0\",\n name: \"USD₮0\",\n logoURI: USDT0Icon,\n },\n },\n // separate USDT0 on Base through Stargate bridge,\n // included to make the symbol consistent with other chains and searchable\n \"0x102d758f688a4c1c5a80b116bd945d4455460282@8453\": {\n merge: {\n symbol: \"USDT0\",\n name: \"Stargate USD₮0 (Bridged)\",\n logoURI: USDT0Icon,\n },\n },\n};\n\nexport function overrideTokenList(tokenList: TokenList, listURL: string) {\n const overrides = TokenListsOverrides[listURL];\n\n const overriddenTokens = tokenList.tokens.reduce<TokenInfo[]>(\n (accum, tokenInfo) => {\n const individualOverride =\n IndividualTokensOverrides[\n `${tokenInfo.address.toLowerCase()}@${tokenInfo.chainId}`\n ];\n\n // override individual token in all tokenLists\n if (individualOverride) {\n if (individualOverride.remove) {\n return accum;\n }\n if (individualOverride.merge) {\n const override = { ...tokenInfo, ...individualOverride.merge };\n accum.push(override);\n return accum;\n }\n }\n\n if (!overrides) {\n // no overrides specifically for this tokenList\n accum.push(tokenInfo);\n return accum;\n }\n\n // override token in this tokenList\n const remove = overrides.remove?.has(tokenInfo.address.toLowerCase());\n if (remove) return accum;\n\n const override = overrides.merge?.[tokenInfo.address.toLowerCase()];\n const token = override ? { ...tokenInfo, ...override } : tokenInfo;\n\n accum.push(token);\n\n return accum;\n },\n []\n );\n\n if (overrides?.add) {\n overriddenTokens.push(...overrides.add);\n }\n\n return { ...tokenList, tokens: overriddenTokens };\n}\n"],"names":["AAVE_OverrideTokenInfo","logoURI","GHO_OverrideTokenInfo","TokenListsOverrides","merge","symbol","name","remove","Set","decimals","USDT0Icon","IndividualTokensOverrides","overrideTokenList","tokenList","listURL","overrides","overriddenTokens","tokens","reduce","accum","tokenInfo","individualOverride","address","toLowerCase","chainId","override","push","has","token","add"],"mappings":"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"}
|
package/dist/tokens/types.d.ts
CHANGED
|
@@ -21,5 +21,9 @@ export type TokenListOverride = {
|
|
|
21
21
|
export type TokenInfoWithSupportedChainId = Omit<TokenInfo, "chainId"> & {
|
|
22
22
|
chainId: SupportedChainId;
|
|
23
23
|
};
|
|
24
|
+
export type IndividualTokenOverride = {
|
|
25
|
+
remove?: boolean;
|
|
26
|
+
merge?: Partial<TokenInfo>;
|
|
27
|
+
};
|
|
24
28
|
export type ChainTokensSet = Record<number, Set<string>>;
|
|
25
29
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tokens/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjE,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,MAAM,GAAG,KAAK,GAAG,KAAK;IACjE,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,KAAK,CAAC;CAClB;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,MAAM,GAAG,KAAK,GAAG,KAAK,IACzD,iBAAiB,CAAC,CAAC,CAAC,GACpB,oBAAoB,CAAC;AAEzB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG;IACvE,OAAO,EAAE,gBAAgB,CAAC;CAC3B,CAAC;AAGF,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tokens/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjE,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,MAAM,GAAG,KAAK,GAAG,KAAK;IACjE,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,KAAK,CAAC;CAClB;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,MAAM,GAAG,KAAK,GAAG,KAAK,IACzD,iBAAiB,CAAC,CAAC,CAAC,GACpB,oBAAoB,CAAC;AAEzB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG;IACvE,OAAO,EAAE,gBAAgB,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;CAC5B,CAAC;AAGF,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC"}
|