mirror of
https://github.com/community-scripts/ProxmoxVE
synced 2025-02-10 17:59:17 +00:00
Filter out duplicate scripts in LatestScripts component and sort by creation date (#1828)
This commit is contained in:
parent
63061942b9
commit
1f39208c1c
@ -35,8 +35,18 @@ export function LatestScripts({ items }: { items: Category[] }) {
|
|||||||
|
|
||||||
const latestScripts = useMemo(() => {
|
const latestScripts = useMemo(() => {
|
||||||
if (!items) return [];
|
if (!items) return [];
|
||||||
|
|
||||||
const scripts = items.flatMap((category) => category.scripts || []);
|
const scripts = items.flatMap((category) => category.scripts || []);
|
||||||
return scripts.sort(
|
|
||||||
|
// Filter out duplicates by slug
|
||||||
|
const uniqueScriptsMap = new Map<string, Script>();
|
||||||
|
scripts.forEach((script) => {
|
||||||
|
if (!uniqueScriptsMap.has(script.slug)) {
|
||||||
|
uniqueScriptsMap.set(script.slug, script);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
return Array.from(uniqueScriptsMap.values()).sort(
|
||||||
(a, b) =>
|
(a, b) =>
|
||||||
new Date(b.date_created).getTime() - new Date(a.date_created).getTime(),
|
new Date(b.date_created).getTime() - new Date(a.date_created).getTime(),
|
||||||
);
|
);
|
||||||
|
Loading…
Reference in New Issue
Block a user