import { getDatasources } from '../../lib/modules/datasource/index.ts'; import { readFile, updateFile } from '../utils/index.ts'; import { getDisplayName, replaceContent } from './utils.ts'; export async function generateDatasourceReleaseTimestampSupportForMinimumReleaseAge( dist: string, ): Promise { const datasources = getDatasources(); let tableContent = '| Datasource | Supports release timestamp? | Notes |\n'; tableContent += '| :-- | :-: | :-- |\n'; for (const [datasource, definition] of datasources) { const displayName = getDisplayName(datasource, definition); const { releaseTimestampSupport, releaseTimestampNote } = definition; const supported = releaseTimestampSupport ? '🟠
Maybe1' : '❌'; tableContent += `| [${displayName}](../modules/datasource/${datasource}/index.md) | ${supported} | ${releaseTimestampNote ?? ''} |\n`; } tableContent += '\n1 Whether release timestamps are actually available depends on the registry you use - check [Which registries support release timestamps?](#which-registries-support-release-timestamps).\n'; let content = await readFile( 'docs/usage/key-concepts/minimum-release-age.md', ); content = replaceContent( content, `${tableContent}\n`, '', ); await updateFile(`${dist}/key-concepts/minimum-release-age.md`, content); }