From f94c06618d3e779bb6370c7dd9e55d8657220400 Mon Sep 17 00:00:00 2001 From: "cgero.eth" Date: Mon, 8 Jul 2024 16:32:38 +0200 Subject: [PATCH] fix(APP-3384): Correctly identify OSx updates as latest version (#1382) --- src/context/update.tsx | 34 +++++++++++----------------------- 1 file changed, 11 insertions(+), 23 deletions(-) diff --git a/src/context/update.tsx b/src/context/update.tsx index f85a6868a..3888498c3 100644 --- a/src/context/update.tsx +++ b/src/context/update.tsx @@ -169,30 +169,18 @@ const UpdateProvider: React.FC<{children: ReactElement}> = ({children}) => { useEffect(() => { if (versions) { const OSXVersions = new Map(); + const versionKeys = Object.keys(SupportedVersions); - Object.keys(SupportedVersions).forEach(key => { - if ( - compareVersions( - SupportedVersions[key as keyof typeof SupportedVersions], - versions.join('.') - ) === 1 - ) { - OSXVersions.set( - SupportedVersions[key as keyof typeof SupportedVersions], - { - version: SupportedVersions[ - key as keyof typeof SupportedVersions - ] as string, - ...(key === 'LATEST' && {isLatest: true}), - } as OSX - ); - - if (key === 'LATEST') { - setValue('osSelectedVersion', { - version: SupportedVersions[ - key as keyof typeof SupportedVersions - ] as string, - }); + versionKeys.forEach((key, index) => { + const version = + SupportedVersions[key as keyof typeof SupportedVersions]; + const isLatest = index === versionKeys.length - 1; + + if (compareVersions(version, versions.join('.')) === 1) { + OSXVersions.set(version, {version, isLatest}); + + if (isLatest) { + setValue('osSelectedVersion', {version}); } } });