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

Function writeTokenDefinitions

scripts/generateTokenlist.ts:268–291  ·  view source on GitHub ↗
(tokenDefinitions: TokenDefinition[])

Source from the content-addressed store, hash-verified

266}
267
268async function writeTokenDefinitions(tokenDefinitions: TokenDefinition[]) {
269 mkdirSync(definitionsDir, { recursive: true })
270
271 const generatedFiles = new Set(
272 tokenDefinitions.map((token) => `${token.importName}.ts`),
273 )
274
275 for (const fileName of readdirSync(definitionsDir)) {
276 if (!fileName.endsWith('.ts')) continue
277 if (generatedFiles.has(fileName)) continue
278
279 const file = new URL(fileName, definitionsDir)
280 if (hasGeneratedBanner(readFileSync(file, 'utf8'))) unlinkSync(file)
281 }
282
283 await Promise.all(
284 tokenDefinitions.map((token) =>
285 Bun.write(
286 new URL(`${token.importName}.ts`, definitionsDir),
287 getTokenDefinitionSource(token),
288 ),
289 ),
290 )
291}
292
293async function writeTokensIndex(tokenDefinitions: TokenDefinition[]) {
294 const definitionExports = getDefinitionExports(tokenDefinitions)

Callers 1

Calls 2

hasGeneratedBannerFunction · 0.85
getTokenDefinitionSourceFunction · 0.85

Tested by

no test coverage detected