No host-state differences detected — the backup state matches the current host (or the backup didn't include /etc/pve).
@@ -7195,70 +7196,43 @@ function RollbackPlanView({ plan }: { plan: RollbackPlan }) {
)
}
- const Pill = ({ children, tone }: { children: any; tone: "red" | "green" }) => (
-
+ // Pill renders inline with proper flex wrapping so dozens of VM
+ // IDs don't overflow the modal on mobile (previous version used
+ // raw spaces between pills and any value past the viewport got
+ // clipped).
+ const Pill = ({ children }: { children: any }) => (
+
+ )
+ // Row uses flex-wrap + min-w-0 + gap so labels and pills flow to
+ // a new line on narrow screens instead of pushing the card wider.
+ const Row = ({ label, items }: { label: string; items: (string | number)[] }) => (
+
- {hasDestructive && (
-
-
- Not in backup — will be deleted on rollback
-
- {plan.vms_to_remove.length > 0 && (
-
-
VMs:
- {plan.vms_to_remove.map((id) =>
{id})}
-
- )}
- {plan.lxcs_to_remove.length > 0 && (
-
-
LXCs:
- {plan.lxcs_to_remove.map((id) =>
{id})}
-
- )}
- {plan.components_to_uninstall.length > 0 && (
-
-
Components:
- {plan.components_to_uninstall.map((c) =>
{c})}
-
- )}
-
+
+
+ Configurations included in backup
+
+ {plan.vms_to_restore.length > 0 && (
+
|
)}
-
- {hasRollback && (
-
-
- Configurations included in backup
-
- {plan.vms_to_restore.length > 0 && (
-
-
VM configs:
- {plan.vms_to_restore.map((id) =>
{id})}
-
- )}
- {plan.lxcs_to_restore.length > 0 && (
-
-
LXC configs:
- {plan.lxcs_to_restore.map((id) =>
{id})}
-
- )}
- {plan.components_to_reinstall.length > 0 && (
-
-
Components:
- {plan.components_to_reinstall.map((c) =>
{c})}
-
- )}
-
- Only the /etc/pve config is restored — disk images stay where they live.
-
-
+ {plan.lxcs_to_restore.length > 0 && (
+
|
)}
+ {plan.components_to_reinstall.length > 0 && (
+
|
+ )}
+
+ Only the /etc/pve config is restored — disk images stay where they live.
+
)
}
diff --git a/AppImage/components/temperature-detail-modal.tsx b/AppImage/components/temperature-detail-modal.tsx
index dc364175..5e5f0653 100644
--- a/AppImage/components/temperature-detail-modal.tsx
+++ b/AppImage/components/temperature-detail-modal.tsx
@@ -70,7 +70,10 @@ const getStatusInfo = (temp: number) => {
}
export function TemperatureDetailModal({ open, onOpenChange, liveTemperature }: TemperatureDetailModalProps) {
- const [timeframe, setTimeframe] = useState("hour")
+ // Default to 24 h — matches the disk temperature modal and is the
+ // useful timeframe for spotting trends; the 1-h view rarely tells
+ // you anything that the live reading doesn't already show.
+ const [timeframe, setTimeframe] = useState("day")
const [data, setData] = useState
([])
const [stats, setStats] = useState({ min: 0, max: 0, avg: 0, current: 0 })
const [loading, setLoading] = useState(true)