@@ -32,8 +32,8 @@ import type { AssetsContractController } from './AssetsContractController';
3232import { isTokenDetectionSupportedForNetwork } from './assetsUtil' ;
3333import type {
3434 GetTokenListState ,
35+ TokenListMap ,
3536 TokenListStateChange ,
36- TokenListToken ,
3737} from './TokenListController' ;
3838import type { Token } from './TokenRatesController' ;
3939import type {
@@ -63,25 +63,23 @@ export function isEqualCaseInsensitive(
6363 return value1 . toLowerCase ( ) === value2 . toLowerCase ( ) ;
6464}
6565
66- type LegacyToken = Omit <
67- Token ,
68- 'aggregators' | 'image' | 'balanceError' | 'isERC721'
69- > & {
66+ type LegacyToken = {
7067 name : string ;
71- logo : string ;
68+ logo : `${string } .svg`;
69+ symbol : string ;
70+ decimals : number ;
7271 erc20 ?: boolean ;
7372 erc721 ?: boolean ;
7473} ;
7574
75+ type TokenDetectionMap = {
76+ [ P in keyof TokenListMap ] : Omit < TokenListMap [ P ] , 'occurrences' > ;
77+ } ;
78+
7679export const STATIC_MAINNET_TOKEN_LIST = Object . entries < LegacyToken > (
7780 contractMap ,
78- ) . reduce <
79- Record <
80- string ,
81- Partial < TokenListToken > & Pick < Token , 'address' | 'symbol' | 'decimals' >
82- >
83- > ( ( acc , [ base , contract ] ) => {
84- const { logo, ...tokenMetadata } = contract ;
81+ ) . reduce < TokenDetectionMap > ( ( acc , [ base , contract ] ) => {
82+ const { logo, erc20, erc721, ...tokenMetadata } = contract ;
8583 return {
8684 ...acc ,
8785 [ base . toLowerCase ( ) ] : {
@@ -168,6 +166,8 @@ export class TokenDetectionController extends StaticIntervalPollingController<
168166
169167 #networkClientIdAgainstWhichToDetect: NetworkClientId ;
170168
169+ #tokenList: TokenDetectionMap = { } ;
170+
171171 #disabled: boolean ;
172172
173173 #isUnlocked: boolean ;
0 commit comments