fix(hub): prevent clearing all containers when single system update is empty (#1620)

This commit is contained in:
henrygd
2026-01-11 19:03:06 -05:00
parent 618e5b4cc1
commit 1388711105

View File

@@ -57,8 +57,13 @@ export default function ContainersTable({ systemId }: { systemId?: string }) {
.then( .then(
({ items }) => { ({ items }) => {
if (items.length === 0) { if (items.length === 0) {
setData([]); setData((curItems) => {
return; if (systemId) {
return curItems?.filter((item) => item.system !== systemId) ?? []
}
return []
})
return
} }
setData((curItems) => { setData((curItems) => {
const lastUpdated = Math.max(items[0].updated, items.at(-1)?.updated ?? 0) const lastUpdated = Math.max(items[0].updated, items.at(-1)?.updated ?? 0)
@@ -280,7 +285,7 @@ async function getInfoHtml(container: ContainerRecord): Promise<string> {
]) ])
try { try {
info = JSON.stringify(JSON.parse(info), null, 2) info = JSON.stringify(JSON.parse(info), null, 2)
} catch (_) {} } catch (_) { }
return info ? highlighter.codeToHtml(info, { lang: "json", theme: syntaxTheme }) : t`No results.` return info ? highlighter.codeToHtml(info, { lang: "json", theme: syntaxTheme }) : t`No results.`
} catch (error) { } catch (error) {
console.error(error) console.error(error)
@@ -337,7 +342,7 @@ function ContainerSheet({
setLogsDisplay("") setLogsDisplay("")
setInfoDisplay("") setInfoDisplay("")
if (!container) return if (!container) return
;(async () => { ; (async () => {
const [logsHtml, infoHtml] = await Promise.all([getLogsHtml(container), getInfoHtml(container)]) const [logsHtml, infoHtml] = await Promise.all([getLogsHtml(container), getInfoHtml(container)])
setLogsDisplay(logsHtml) setLogsDisplay(logsHtml)
setInfoDisplay(infoHtml) setInfoDisplay(infoHtml)