Refactoring, noinspection

This commit is contained in:
Xinos 2023-08-16 14:14:59 +07:00
parent bf8c10bb61
commit edb591651b
4 changed files with 19 additions and 10 deletions

View File

@ -1,3 +1,5 @@
// noinspection JSUnresolvedVariable
import useWidgetAPI from "utils/proxy/use-widget-api"; import useWidgetAPI from "utils/proxy/use-widget-api";
import Container from "components/services/widget/container"; import Container from "components/services/widget/container";
import Block from "components/services/widget/block"; import Block from "components/services/widget/block";
@ -10,10 +12,11 @@ const downloadReduce = (acc, e) => {
}; };
const items = [ const items = [
{ label: "openmediavault.downloading", getNumber: (data) => (!data ? null : data.reduce(downloadReduce, 0)) }, { label: "openmediavault.downloading", getNumber: (data) => data.reduce(downloadReduce, 0) },
{ label: "openmediavault.total", getNumber: (data) => (!data ? null : data?.length) }, { label: "openmediavault.total", getNumber: (data) => data?.length },
]; ];
// noinspection DuplicatedCode
export default function Component({ service }) { export default function Component({ service }) {
const { data, error } = useWidgetAPI(service.widget); const { data, error } = useWidgetAPI(service.widget);
@ -23,7 +26,7 @@ export default function Component({ service }) {
const itemsWithData = items.map((item) => ({ const itemsWithData = items.map((item) => ({
...item, ...item,
number: item.getNumber(data?.response?.data), number: data?.response?.data ? item.getNumber(data?.response?.data) : null,
})); }));
return ( return (

View File

@ -16,11 +16,12 @@ const notRunningReduce = (acc, e) => {
}; };
const items = [ const items = [
{ label: "openmediavault.running", getNumber: (data) => (!data ? null : data.reduce(isRunningReduce, 0)) }, { label: "openmediavault.running", getNumber: (data) => data.reduce(isRunningReduce, 0) },
{ label: "openmediavault.stopped", getNumber: (data) => (!data ? null : data.reduce(notRunningReduce, 0)) }, { label: "openmediavault.stopped", getNumber: (data) => data.reduce(notRunningReduce, 0) },
{ label: "openmediavault.total", getNumber: (data) => (!data ? null : data?.length) }, { label: "openmediavault.total", getNumber: (data) => data?.length },
]; ];
// noinspection DuplicatedCode
export default function Component({ service }) { export default function Component({ service }) {
const { data, error } = useWidgetAPI(service.widget); const { data, error } = useWidgetAPI(service.widget);
@ -30,7 +31,7 @@ export default function Component({ service }) {
const itemsWithData = items.map((item) => ({ const itemsWithData = items.map((item) => ({
...item, ...item,
number: item.getNumber(data?.response?.data), number: data?.response?.data ? item.getNumber(data?.response?.data) : null,
})); }));
return ( return (

View File

@ -1,3 +1,5 @@
// noinspection JSUnresolvedVariable
import useWidgetAPI from "utils/proxy/use-widget-api"; import useWidgetAPI from "utils/proxy/use-widget-api";
import Container from "components/services/widget/container"; import Container from "components/services/widget/container";
import Block from "components/services/widget/block"; import Block from "components/services/widget/block";
@ -16,8 +18,8 @@ const failedReduce = (acc, e) => {
}; };
const items = [ const items = [
{ label: "openmediavault.passed", getNumber: (data) => (!data ? null : data.reduce(passedReduce, 0)) }, { label: "openmediavault.passed", getNumber: (data) => data.reduce(passedReduce, 0) },
{ label: "openmediavault.failed", getNumber: (data) => (!data ? null : data.reduce(failedReduce, 0)) }, { label: "openmediavault.failed", getNumber: (data) => data.reduce(failedReduce, 0) },
]; ];
export default function Component({ service }) { export default function Component({ service }) {
@ -29,7 +31,7 @@ export default function Component({ service }) {
const itemsWithData = items.map((item) => ({ const itemsWithData = items.map((item) => ({
...item, ...item,
number: item.getNumber(JSON.parse(data?.response?.output || "{}")?.data), number: data?.response?.output ? item.getNumber(JSON.parse(data?.response?.output || "{}")?.data) : null,
})); }));
return ( return (

View File

@ -1,3 +1,5 @@
// noinspection JSUnresolvedVariable
import { formatApiCall } from "utils/proxy/api-helpers"; import { formatApiCall } from "utils/proxy/api-helpers";
import { httpProxy } from "utils/proxy/http"; import { httpProxy } from "utils/proxy/http";
import getServiceWidget from "utils/config/service-helpers"; import getServiceWidget from "utils/config/service-helpers";
@ -11,6 +13,7 @@ const BG_POLL_PERIOD = 500;
const logger = createLogger(PROXY_NAME); const logger = createLogger(PROXY_NAME);
// noinspection DuplicatedCode
async function getWidget(req) { async function getWidget(req) {
const { group, service } = req.query; const { group, service } = req.query;