mirror of
https://github.com/lightningequipment/circuitbreaker.git
synced 2026-08-13 12:33:02 +02:00
web: add forwarding history download button
This commit is contained in:
parent
9cb88f29a4
commit
bcd5ef6091
11 changed files with 38 additions and 10 deletions
|
|
@ -2,6 +2,7 @@
|
|||
"cancel": "Cancel",
|
||||
"edit": "Edit",
|
||||
"edit-defaults": "Edit defaults",
|
||||
"download-fwd-history": "Download forwarding history (json)",
|
||||
"max-hourly-rate": "Max hourly rate",
|
||||
"max-pending": "Max pending",
|
||||
"mode": "Mode",
|
||||
|
|
|
|||
|
|
@ -1,14 +1,23 @@
|
|||
import { Box, Typography } from '@mui/material';
|
||||
import { Box, Typography, Tooltip, IconButton } from '@mui/material';
|
||||
import DownloadIcon from '@mui/icons-material/Download';
|
||||
import Image from 'next/image';
|
||||
|
||||
import { HEADER_HEIGHT_DESKTOP, HEADER_HEIGHT_MOBILE } from 'constant';
|
||||
import { useInfo } from 'hooks';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
|
||||
import NodeInfo from './NodeInfo';
|
||||
import DefaultLimits from './DefaultLimits';
|
||||
|
||||
|
||||
const Header = () => {
|
||||
const { info } = useInfo();
|
||||
const { t } = useTranslation();
|
||||
|
||||
const openFwdHistory = () => {
|
||||
const url = '/api/forwarding_history';
|
||||
window.location.href = url;
|
||||
};
|
||||
|
||||
return (
|
||||
<Box
|
||||
|
|
@ -53,6 +62,23 @@ const Header = () => {
|
|||
}}
|
||||
/>
|
||||
<NodeInfo />
|
||||
<Box
|
||||
sx={{
|
||||
mx: 2,
|
||||
backgroundColor: 'grey.700',
|
||||
height: '4px',
|
||||
width: '4px',
|
||||
borderRadius: '50%',
|
||||
}}
|
||||
/>
|
||||
<Tooltip
|
||||
enterTouchDelay={0}
|
||||
title={<Typography sx={{ color: 'black' }}>{t('download-fwd-history')}</Typography>}
|
||||
>
|
||||
<IconButton sx={{padding: 0, mt:0.5}} onClick={openFwdHistory}>
|
||||
<DownloadIcon sx={{ color: '#5C6484' }}/>
|
||||
</IconButton>
|
||||
</Tooltip>
|
||||
</Box>
|
||||
</Box>
|
||||
</Box>
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
transition: opacity 250ms ease-in-out 0ms;
|
||||
opacity: 1;
|
||||
}
|
||||
</style><link rel="preload" href="/_next/static/css/779cbc72c8a1eff6.css" as="style"/><link rel="stylesheet" href="/_next/static/css/779cbc72c8a1eff6.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-36d12a75f0098f30.js" defer=""></script><script src="/_next/static/chunks/framework-2c79e2a64abdb08b.js" defer=""></script><script src="/_next/static/chunks/main-ac344eb87244516d.js" defer=""></script><script src="/_next/static/chunks/pages/_app-f2c78e63b56a3ec3.js" defer=""></script><script src="/_next/static/chunks/pages/_error-8353112a01355ec2.js" defer=""></script><script src="/_next/static/circuitbreaker-build-id/_buildManifest.js" defer=""></script><script src="/_next/static/circuitbreaker-build-id/_ssgManifest.js" defer=""></script></head><body><div id="globalLoader"><img class="globalLoaderSpinner" src="/images/circuitbreaker-logo.svg" height="40" width="40" alt="loader"/></div><div id="__next"><style data-emotion="css-global 15wno9g">@font-face{font-family:'Helvetica Neue';src:url('/fonts/HelveticaNeue.eot') format('embedded-opentype'),url('/fonts/HelveticaNeue.woff2') format('woff2'),url('/fonts/HelveticaNeue.woff') format('woff'),url('/fonts/HelveticaNeue.ttf') format('truetype');font-weight:500;font-display:auto;}@font-face{font-family:'Helvetica Neue';src:url('/fonts/HelveticaNeueBold.eot') format('embedded-opentype'),url('/fonts/HelveticaNeueBold.woff2') format('woff2'),url('/fonts/HelveticaNeueBold.ttf') format('truetype');font-weight:700;font-display:auto;}</style><div style="font-family:-apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Fira Sans", Avenir, "Helvetica Neue", "Lucida Grande", sans-serif;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>
|
||||
</style><link rel="preload" href="/_next/static/css/779cbc72c8a1eff6.css" as="style"/><link rel="stylesheet" href="/_next/static/css/779cbc72c8a1eff6.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-36d12a75f0098f30.js" defer=""></script><script src="/_next/static/chunks/framework-2c79e2a64abdb08b.js" defer=""></script><script src="/_next/static/chunks/main-ac344eb87244516d.js" defer=""></script><script src="/_next/static/chunks/pages/_app-94e942cdef13bf2d.js" defer=""></script><script src="/_next/static/chunks/pages/_error-8353112a01355ec2.js" defer=""></script><script src="/_next/static/circuitbreaker-build-id/_buildManifest.js" defer=""></script><script src="/_next/static/circuitbreaker-build-id/_ssgManifest.js" defer=""></script></head><body><div id="globalLoader"><img class="globalLoaderSpinner" src="/images/circuitbreaker-logo.svg" height="40" width="40" alt="loader"/></div><div id="__next"><style data-emotion="css-global 15wno9g">@font-face{font-family:'Helvetica Neue';src:url('/fonts/HelveticaNeue.eot') format('embedded-opentype'),url('/fonts/HelveticaNeue.woff2') format('woff2'),url('/fonts/HelveticaNeue.woff') format('woff'),url('/fonts/HelveticaNeue.ttf') format('truetype');font-weight:500;font-display:auto;}@font-face{font-family:'Helvetica Neue';src:url('/fonts/HelveticaNeueBold.eot') format('embedded-opentype'),url('/fonts/HelveticaNeueBold.woff2') format('woff2'),url('/fonts/HelveticaNeueBold.ttf') format('truetype');font-weight:700;font-display:auto;}</style><div style="font-family:-apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Fira Sans", Avenir, "Helvetica Neue", "Lucida Grande", sans-serif;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>
|
||||
body { margin: 0; color: #000; background: #fff; }
|
||||
.next-error-h1 {
|
||||
border-right: 1px solid rgba(0, 0, 0, .3);
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
2
webui-build/_next/static/chunks/891-8bf07850cd47e076.js
Normal file
2
webui-build/_next/static/chunks/891-8bf07850cd47e076.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1 +1 @@
|
|||
self.__BUILD_MANIFEST={__rewrites:{beforeFiles:[],afterFiles:[],fallback:[]},"/":["static/chunks/128-9254255b6c84c993.js","static/chunks/pages/index-da1d4b362851c9fc.js"],"/_error":["static/chunks/pages/_error-8353112a01355ec2.js"],sortedPages:["/","/_app","/_error"]},self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
||||
self.__BUILD_MANIFEST={__rewrites:{beforeFiles:[],afterFiles:[],fallback:[]},"/":["static/chunks/891-8bf07850cd47e076.js","static/chunks/pages/index-46a2438053d26b8b.js"],"/_error":["static/chunks/pages/_error-8353112a01355ec2.js"],sortedPages:["/","/_app","/_error"]},self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
||||
|
|
@ -13,4 +13,4 @@
|
|||
transition: opacity 250ms ease-in-out 0ms;
|
||||
opacity: 1;
|
||||
}
|
||||
</style><link rel="preload" href="/_next/static/css/779cbc72c8a1eff6.css" as="style"/><link rel="stylesheet" href="/_next/static/css/779cbc72c8a1eff6.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-36d12a75f0098f30.js" defer=""></script><script src="/_next/static/chunks/framework-2c79e2a64abdb08b.js" defer=""></script><script src="/_next/static/chunks/main-ac344eb87244516d.js" defer=""></script><script src="/_next/static/chunks/pages/_app-f2c78e63b56a3ec3.js" defer=""></script><script src="/_next/static/chunks/128-9254255b6c84c993.js" defer=""></script><script src="/_next/static/chunks/pages/index-da1d4b362851c9fc.js" defer=""></script><script src="/_next/static/circuitbreaker-build-id/_buildManifest.js" defer=""></script><script src="/_next/static/circuitbreaker-build-id/_ssgManifest.js" defer=""></script></head><body><div id="globalLoader"><img class="globalLoaderSpinner" src="/images/circuitbreaker-logo.svg" height="40" width="40" alt="loader"/></div><div id="__next"><style data-emotion="css-global 15wno9g">@font-face{font-family:'Helvetica Neue';src:url('/fonts/HelveticaNeue.eot') format('embedded-opentype'),url('/fonts/HelveticaNeue.woff2') format('woff2'),url('/fonts/HelveticaNeue.woff') format('woff'),url('/fonts/HelveticaNeue.ttf') format('truetype');font-weight:500;font-display:auto;}@font-face{font-family:'Helvetica Neue';src:url('/fonts/HelveticaNeueBold.eot') format('embedded-opentype'),url('/fonts/HelveticaNeueBold.woff2') format('woff2'),url('/fonts/HelveticaNeueBold.ttf') format('truetype');font-weight:700;font-display:auto;}</style></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/","query":{},"buildId":"circuitbreaker-build-id","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
||||
</style><link rel="preload" href="/_next/static/css/779cbc72c8a1eff6.css" as="style"/><link rel="stylesheet" href="/_next/static/css/779cbc72c8a1eff6.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-36d12a75f0098f30.js" defer=""></script><script src="/_next/static/chunks/framework-2c79e2a64abdb08b.js" defer=""></script><script src="/_next/static/chunks/main-ac344eb87244516d.js" defer=""></script><script src="/_next/static/chunks/pages/_app-94e942cdef13bf2d.js" defer=""></script><script src="/_next/static/chunks/891-8bf07850cd47e076.js" defer=""></script><script src="/_next/static/chunks/pages/index-46a2438053d26b8b.js" defer=""></script><script src="/_next/static/circuitbreaker-build-id/_buildManifest.js" defer=""></script><script src="/_next/static/circuitbreaker-build-id/_ssgManifest.js" defer=""></script></head><body><div id="globalLoader"><img class="globalLoaderSpinner" src="/images/circuitbreaker-logo.svg" height="40" width="40" alt="loader"/></div><div id="__next"><style data-emotion="css-global 15wno9g">@font-face{font-family:'Helvetica Neue';src:url('/fonts/HelveticaNeue.eot') format('embedded-opentype'),url('/fonts/HelveticaNeue.woff2') format('woff2'),url('/fonts/HelveticaNeue.woff') format('woff'),url('/fonts/HelveticaNeue.ttf') format('truetype');font-weight:500;font-display:auto;}@font-face{font-family:'Helvetica Neue';src:url('/fonts/HelveticaNeueBold.eot') format('embedded-opentype'),url('/fonts/HelveticaNeueBold.woff2') format('woff2'),url('/fonts/HelveticaNeueBold.ttf') format('truetype');font-weight:700;font-display:auto;}</style></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/","query":{},"buildId":"circuitbreaker-build-id","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script></body></html>
|
||||
|
|
@ -2,6 +2,7 @@
|
|||
"cancel": "Cancel",
|
||||
"edit": "Edit",
|
||||
"edit-defaults": "Edit defaults",
|
||||
"download-fwd-history": "Download forwarding history (json)",
|
||||
"max-hourly-rate": "Max hourly rate",
|
||||
"max-pending": "Max pending",
|
||||
"mode": "Mode",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue