From 13afe82fa5c11380625fd419fc9f4f079545426e Mon Sep 17 00:00:00 2001 From: aidenpwnz Date: Fri, 2 Sep 2022 16:48:28 +0200 Subject: [PATCH] FEAT: NGINX Proxy Manager --- .../services/widgets/service/npm.jsx | 58 +++++++------------ src/skeleton/services.yaml | 5 ++ 2 files changed, 27 insertions(+), 36 deletions(-) diff --git a/src/components/services/widgets/service/npm.jsx b/src/components/services/widgets/service/npm.jsx index 921cd69b9..222bf1bdf 100644 --- a/src/components/services/widgets/service/npm.jsx +++ b/src/components/services/widgets/service/npm.jsx @@ -2,49 +2,35 @@ import useSWR from "swr"; import Widget from "../widget"; import Block from "../block"; -import { useState } from "react"; export default function Npm({ service }) { const config = service.widget; const { url } = config; - const [token, setToken] = useState(); - const fetcher = async (reqUrl) => { - const { url, email, password } = config; - const urlConstructed = `${url}/api/tokens`; - const body = { identity: email, secret: password }; + const { url, username, password } = config; + const loginUrl = `${url}/api/tokens`; + const body = { identity: username, secret: password }; - if (!token) { - const res = await fetch(urlConstructed, { - method: "POST", - body: JSON.stringify(body), - headers: { - "Content-Type": "application/json", - }, - }) - .then((response) => response.json()) - .then( - async (data) => - await fetch(reqUrl, { - method: "GET", - headers: { - "Content-Type": "application/json", - Authorization: "Bearer " + data.token, - }, - }) - ); - return res.json(); - } else { - const resp = await fetch(reqUrl, { - method: "GET", - headers: { - "Content-Type": "application/json", - Authorization: "Bearer " + token, - }, - }); - return resp.json(); - } + const res = await fetch(loginUrl, { + method: "POST", + body: JSON.stringify(body), + headers: { + "Content-Type": "application/json", + }, + }) + .then((response) => response.json()) + .then( + async (data) => + await fetch(reqUrl, { + method: "GET", + headers: { + "Content-Type": "application/json", + Authorization: "Bearer " + data.token, + }, + }) + ); + return res.json(); }; const { data: infoData, error: infoError } = useSWR(`${url}/api/nginx/proxy-hosts`, fetcher); diff --git a/src/skeleton/services.yaml b/src/skeleton/services.yaml index 169082a0c..5ee3ca14c 100644 --- a/src/skeleton/services.yaml +++ b/src/skeleton/services.yaml @@ -5,6 +5,11 @@ - My First Service: href: http://localhosdt/ description: Homepage is awesome + widget: + type: npm # npm for NGINX Proxy Manager + url: http://localhost:81 # no slash at the end + username: aidenpwnz@proton.me # your email + password: AidenProxy1994! # your password - My Second Group: - My Second Service: