MCPcopy Create free account
hub / github.com/wevm/viem / getTokenDefinitionSource

Function getTokenDefinitionSource

scripts/generateTokenlist.ts:343–365  ·  view source on GitHub ↗
(token: TokenDefinition)

Source from the content-addressed store, hash-verified

341}
342
343function getTokenDefinitionSource(token: TokenDefinition) {
344 const addresses = Array.from(token.addresses.entries())
345 .sort(([chainIdA], [chainIdB]) => chainIdA - chainIdB)
346 .map(([chainId, address]) => {
347 const target = chainTargetById.get(chainId)
348 const comment = target ? ` // ${target.name}` : ''
349 return ` ${chainId}: '${address}',${comment}`
350 })
351 .join('\n')
352 return `${generatedBanner}
353
354import { defineToken } from '../defineToken.js'
355
356export const ${token.importName} = /*#__PURE__*/ defineToken({
357 addresses: {
358${addresses}
359 },
360${token.currency ? ` currency: ${toStringLiteral(token.currency)},\n` : ''} decimals: ${token.decimals},
361 name: ${toStringLiteral(token.name)},
362${token.popular ? ' popular: true,\n' : ''} symbol: ${toStringLiteral(token.symbol)},
363})
364`
365}
366
367function toStringLiteral(value: string) {
368 return `'${value

Callers 1

writeTokenDefinitionsFunction · 0.85

Calls 2

toStringLiteralFunction · 0.85
getMethod · 0.80

Tested by

no test coverage detected