Refactoring
This commit is contained in:
parent
fc2a9336dc
commit
b0bc29227e
@ -1,14 +1,16 @@
|
||||
import useSWR from "swr";
|
||||
import { FaCheck } from "react-icons/fa";
|
||||
import { FaDownload } from "react-icons/fa";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import Resource from "../widget/resource";
|
||||
import Error from "../widget/error";
|
||||
|
||||
const params = new URLSearchParams({ method: "apt.enumerateUpgraded" }).toString();
|
||||
const useApi = () => useSWR(`/api/widgets/openmediavault?${params}`);
|
||||
|
||||
export default function Uptime({ expanded }) {
|
||||
const { t, i18n } = useTranslation();
|
||||
const params = { lang: i18n.language, method: "apt.enumerateUpgraded" };
|
||||
const { data, error } = useSWR(`/api/widgets/openmediavault?${new URLSearchParams(params).toString()}`);
|
||||
const { t } = useTranslation();
|
||||
const { data, error } = useApi();
|
||||
|
||||
if (error || data?.error) {
|
||||
return <Error />;
|
||||
@ -20,7 +22,7 @@ export default function Uptime({ expanded }) {
|
||||
|
||||
return (
|
||||
<Resource
|
||||
icon={FaCheck}
|
||||
icon={FaDownload}
|
||||
value={t("openmediavault.updatesAvailable")}
|
||||
expandedValue={t("openmediavault.packageCount", { value: data.response.length })}
|
||||
expanded={expanded}
|
||||
|
||||
@ -4,7 +4,6 @@ import { getPrivateWidgetOptions } from "utils/config/widget-helpers";
|
||||
|
||||
export default async function handler(req, res) {
|
||||
const { index, method } = req.query;
|
||||
|
||||
const [{ options }] = await getPrivateWidgetOptions("openmediavault", index);
|
||||
const widget = {
|
||||
type: "openmediavault",
|
||||
|
||||
@ -20,13 +20,13 @@ const items = [
|
||||
export default function Component({ service }) {
|
||||
const { data, error } = useWidgetAPI(service.widget);
|
||||
|
||||
if (error) {
|
||||
return <Container service={service} error={error} />;
|
||||
if (error || data?.error) {
|
||||
return <Container service={service} error={error || data?.error} />;
|
||||
}
|
||||
|
||||
const itemsWithData = items.map((item) => ({
|
||||
...item,
|
||||
number: data?.response?.data ? item.getNumber(data?.response?.data) : null,
|
||||
number: data?.response?.data ? item.getNumber(data.response.data) : null,
|
||||
}));
|
||||
|
||||
return (
|
||||
|
||||
@ -25,13 +25,13 @@ const items = [
|
||||
export default function Component({ service }) {
|
||||
const { data, error } = useWidgetAPI(service.widget);
|
||||
|
||||
if (error) {
|
||||
return <Container service={service} error={error} />;
|
||||
if (error || data?.error) {
|
||||
return <Container service={service} error={error || data?.error} />;
|
||||
}
|
||||
|
||||
const itemsWithData = items.map((item) => ({
|
||||
...item,
|
||||
number: data?.response?.data ? item.getNumber(data?.response?.data) : null,
|
||||
number: data?.response?.data ? item.getNumber(data.response.data) : null,
|
||||
}));
|
||||
|
||||
return (
|
||||
|
||||
@ -25,13 +25,13 @@ const items = [
|
||||
export default function Component({ service }) {
|
||||
const { data, error } = useWidgetAPI(service.widget);
|
||||
|
||||
if (error) {
|
||||
return <Container service={service} error={error} />;
|
||||
if (error || data?.error) {
|
||||
return <Container service={service} error={error || data?.error} />;
|
||||
}
|
||||
|
||||
const itemsWithData = items.map((item) => ({
|
||||
...item,
|
||||
number: data?.response?.output ? item.getNumber(JSON.parse(data?.response?.output || "{}")?.data) : null,
|
||||
number: data?.response?.output ? item.getNumber(JSON.parse(data.response.output).data) : null,
|
||||
}));
|
||||
|
||||
return (
|
||||
|
||||
@ -38,10 +38,10 @@ export default function Component({ service }) {
|
||||
}
|
||||
}, [data]);
|
||||
|
||||
if (error) {
|
||||
if (error || data?.error) {
|
||||
return (
|
||||
<Container>
|
||||
<Error error={error} />
|
||||
<Error error={error || data?.error} />
|
||||
</Container>
|
||||
);
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user