From 2f90a4fcf7af67f7ed5c044982779579d1624f69 Mon Sep 17 00:00:00 2001 From: Marco Rodolfi Date: Tue, 17 Sep 2024 15:21:31 +0200 Subject: Rebase semver parsing on main (#677) Co-authored-by: Marco Rodolfi --- frontend/src/store.tsx | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'frontend/src') diff --git a/frontend/src/store.tsx b/frontend/src/store.tsx index 8ab8f50a..5391a15a 100644 --- a/frontend/src/store.tsx +++ b/frontend/src/store.tsx @@ -1,3 +1,5 @@ +import { compare } from 'compare-versions'; + import { InstallType, Plugin, installPlugin, installPlugins } from './plugin'; import { getSetting, setSetting } from './utils/settings'; @@ -137,7 +139,15 @@ export async function checkForPluginUpdates(plugins: Plugin[]): Promise(); for (let plugin of plugins) { const remotePlugin = serverData?.find((x) => x.name == plugin.name); - if (remotePlugin && remotePlugin.versions?.length > 0 && plugin.version != remotePlugin?.versions?.[0]?.name) { + //FIXME: Ugly hack since plugin.version might be null during evaluation, + //so this will set the older version possible + const curVer = plugin.version ? plugin.version : '0.0'; + if ( + remotePlugin && + remotePlugin.versions?.length > 0 && + plugin.version != remotePlugin?.versions?.[0]?.name && + compare(remotePlugin?.versions?.[0]?.name, curVer, '>') + ) { updateMap.set(plugin.name, remotePlugin.versions[0]); } } -- cgit v1.2.3