diff --git a/app/[locale]/next-data/api-data/route.ts b/app/[locale]/next-data/api-data/route.ts index 4798aad101ac8..16e243d62c9db 100644 --- a/app/[locale]/next-data/api-data/route.ts +++ b/app/[locale]/next-data/api-data/route.ts @@ -16,8 +16,8 @@ const getPathnameForApiFile = (name: string, version: string) => export const GET = async () => { const releases = provideReleaseData(); - const { versionWithPrefix } = releases.find(release => - ['Active LTS', 'Maintenance LTS'].includes(release.status) + const { versionWithPrefix } = releases.find( + release => release.status === 'LTS' )!; const gitHubApiResponse = await fetch(getGitHubApiDocsUrl(versionWithPrefix)); diff --git a/components/Downloads/DownloadButton/index.stories.tsx b/components/Downloads/DownloadButton/index.stories.tsx index 17256bc44b9db..84c68376a49a9 100644 --- a/components/Downloads/DownloadButton/index.stories.tsx +++ b/components/Downloads/DownloadButton/index.stories.tsx @@ -12,7 +12,7 @@ export const Default: Story = { ltsStart: '2023-10-24', maintenanceStart: '2024-10-22', endOfLife: '2026-04-30', - status: 'Active LTS', + status: 'LTS', major: 20, version: '20.11.0', versionWithPrefix: 'v20.11.0', diff --git a/components/Downloads/Release/PlatformDropdown.tsx b/components/Downloads/Release/PlatformDropdown.tsx index 9513d08cde7e0..b6b0da30d38dd 100644 --- a/components/Downloads/Release/PlatformDropdown.tsx +++ b/components/Downloads/Release/PlatformDropdown.tsx @@ -13,7 +13,7 @@ import { ReleaseContext } from '@/providers/releaseProvider'; import type { PackageManager } from '@/types/release'; import { formatDropdownItems, platformItems } from '@/util/downloadUtils'; -const supportedHomebrewVersions = ['Active LTS', 'Maintenance LTS', 'Current']; +const supportedHomebrewVersions = ['LTS', 'Current']; const PlatformDropdown: FC = () => { const { release, os, platform, setPlatform } = useContext(ReleaseContext); diff --git a/components/Downloads/Release/VersionDropdown.tsx b/components/Downloads/Release/VersionDropdown.tsx index 94e8b29032f6f..6dd2e67fb5a47 100644 --- a/components/Downloads/Release/VersionDropdown.tsx +++ b/components/Downloads/Release/VersionDropdown.tsx @@ -8,7 +8,7 @@ import Select from '@/components/Common/Select'; import { ReleaseContext } from '@/providers/releaseProvider'; const getDropDownStatus = (version: string, status: string) => { - if (status === 'Active LTS') { + if (status === 'LTS') { return `${version} (LTS)`; } @@ -16,10 +16,6 @@ const getDropDownStatus = (version: string, status: string) => { return `${version} (Current)`; } - if (status === 'Maintenance') { - return `${version} (Maintenance)`; - } - return version; }; diff --git a/components/withDownloadCategories.tsx b/components/withDownloadCategories.tsx index b35453ad4bb0d..4710a53952d12 100644 --- a/components/withDownloadCategories.tsx +++ b/components/withDownloadCategories.tsx @@ -16,9 +16,9 @@ const WithDownloadCategories: FC = async ({ children }) => { const { pathname } = useClientContext(); const { page, category, subCategory } = getDownloadCategory(pathname); - const initialRelease: Array = pathname.includes('current') - ? ['Current', 'Maintenance'] - : ['Active LTS', 'Maintenance LTS']; + const initialRelease: NodeReleaseStatus = pathname.includes('current') + ? 'Current' + : 'LTS'; return ( { expect(release.v8).toBe('8.0.276.20'); expect(release.releaseDate).toBe('2021-04-20'); expect(release.modules).toBe('83'); - expect(release.status).toBe('Maintenance LTS'); + expect(release.status).toBe('LTS'); }); }); diff --git a/next-data/generators/releaseData.mjs b/next-data/generators/releaseData.mjs index 3ba2f69fbea77..2beea90861c1e 100644 --- a/next-data/generators/releaseData.mjs +++ b/next-data/generators/releaseData.mjs @@ -4,18 +4,14 @@ import nodevu from '@nodevu/core'; // Gets the appropriate release status for each major release const getNodeReleaseStatus = (now, support) => { - const { endOfLife, maintenanceStart, ltsStart, currentStart } = support; + const { endOfLife, ltsStart, currentStart } = support; - if (endOfLife && now > new Date(endOfLife)) { + if (endOfLife && now >= new Date(endOfLife)) { return 'End-of-life'; } - if (maintenanceStart && now > new Date(maintenanceStart)) { - return ltsStart ? 'Maintenance LTS' : 'Maintenance'; - } - - if (ltsStart && now > new Date(ltsStart)) { - return 'Active LTS'; + if (ltsStart && now >= new Date(ltsStart)) { + return 'LTS'; } if (currentStart && now >= new Date(currentStart)) { @@ -58,7 +54,7 @@ const generateReleaseData = () => { version: latestVersion.semver.raw, versionWithPrefix: `v${latestVersion.semver.raw}`, codename: major.support.codename || '', - isLts: status === 'Active LTS' || status === 'Maintenance LTS', + isLts: status === 'LTS', npm: latestVersion.dependencies.npm || '', v8: latestVersion.dependencies.v8 || '', releaseDate: latestVersion.releaseDate || '', diff --git a/pages/en/index.mdx b/pages/en/index.mdx index dea0d0f1da96c..ada1f5fa052d7 100644 --- a/pages/en/index.mdx +++ b/pages/en/index.mdx @@ -16,7 +16,7 @@ layout: home
- + {({ release }) => ( <> Download Node.js (LTS) @@ -28,7 +28,7 @@ layout: home )} - + {({ release }) => ( Want new features sooner? diff --git a/types/releases.ts b/types/releases.ts index 228d21fa0d70d..2fc4a4f101d54 100644 --- a/types/releases.ts +++ b/types/releases.ts @@ -1,10 +1,4 @@ -export type NodeReleaseStatus = - | 'Maintenance LTS' - | 'Maintenance' - | 'Active LTS' - | 'Current' - | 'End-of-life' - | 'Pending'; +export type NodeReleaseStatus = 'LTS' | 'Current' | 'End-of-life' | 'Pending'; export interface NodeReleaseSource { major: number;