Check default settings availability in DefaultSettings component and handle undefined values more gracefully in rendering

This commit is contained in:
Bram Suurd 2024-11-06 19:51:52 +01:00
parent 994e958df0
commit db82fe8ec6

View File

@ -5,23 +5,28 @@ export default function DefaultSettings({ item }: { item: Script }) {
(method) => method.type === "default", (method) => method.type === "default",
); );
const defaultSettingsAvailable =
defaultSettings?.resources.cpu !== null ||
defaultSettings?.resources.ram !== null ||
defaultSettings?.resources.hdd !== null;
const defaultAlpineSettings = item.install_methods.find( const defaultAlpineSettings = item.install_methods.find(
(method) => method.type === "alpine", (method) => method.type === "alpine",
); );
return ( return (
<> <>
{defaultSettings && ( {defaultSettingsAvailable && (
<div> <div>
<h2 className="text-md font-semibold">Default settings</h2> <h2 className="text-md font-semibold">Default settings</h2>
<p className="text-sm text-muted-foreground"> <p className="text-sm text-muted-foreground">
CPU: {defaultSettings.resources.cpu}vCPU CPU: {defaultSettings?.resources.cpu}vCPU
</p> </p>
<p className="text-sm text-muted-foreground"> <p className="text-sm text-muted-foreground">
RAM: {defaultSettings.resources.ram}MB RAM: {defaultSettings?.resources.ram}MB
</p> </p>
<p className="text-sm text-muted-foreground"> <p className="text-sm text-muted-foreground">
HDD: {defaultSettings.resources.hdd}GB HDD: {defaultSettings?.resources.hdd}GB
</p> </p>
</div> </div>
)} )}