Enhancement: Add port_forwarded field to Gluetun widget (#2262)
Some checks failed
Crowdin Action / Crowdin Sync (push) Has been cancelled
Docker CI / Linting Checks (push) Has been cancelled
Docker CI / Docker Build & Push (push) Has been cancelled
Repository Maintenance / Stale (push) Has been cancelled
Repository Maintenance / Lock Old Threads (push) Has been cancelled
Repository Maintenance / Close Answered Discussions (push) Has been cancelled
Repository Maintenance / Close Outdated Discussions (push) Has been cancelled
Repository Maintenance / Close Unsupported Feature Requests (push) Has been cancelled

This commit is contained in:
Jasper
2025-05-12 08:16:13 -07:00
committed by GitHub
parent 6c82883fa9
commit d5f66e12fc
4 changed files with 13 additions and 5 deletions

View File

@@ -7,17 +7,19 @@ export default function Component({ service }) {
const { widget } = service;
const { data: gluetunData, error: gluetunError } = useWidgetAPI(widget, "ip");
const { data: portForwardedData, error: portForwardedError } = useWidgetAPI(widget, "port_forwarded");
if (gluetunError) {
return <Container service={service} error={gluetunError} />;
if (gluetunError || portForwardedError) {
return <Container service={service} error={gluetunError || portForwardedError} />;
}
if (!gluetunData) {
if (!gluetunData || !portForwardedData) {
return (
<Container service={service}>
<Block label="gluetun.public_ip" />
<Block label="gluetun.region" />
<Block label="gluetun.country" />
<Block label="gluetun.port_forwarded" />
</Container>
);
}
@@ -27,6 +29,7 @@ export default function Component({ service }) {
<Block label="gluetun.public_ip" value={gluetunData.public_ip} />
<Block label="gluetun.region" value={gluetunData.region} />
<Block label="gluetun.country" value={gluetunData.country} />
<Block label="gluetun.port_forwarded" value={portForwardedData.port} />
</Container>
);
}

View File

@@ -9,6 +9,10 @@ const widget = {
endpoint: "publicip/ip",
validate: ["public_ip", "country"],
},
port_forwarded: {
endpoint: "openvpn/portforwarded",
validate: ["port"],
},
},
};