Update project dependencies
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
606
central_backend/Cargo.lock
generated
606
central_backend/Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@@ -15,32 +15,32 @@ openssl = { version = "0.10.74" }
|
|||||||
openssl-sys = "0.9.110"
|
openssl-sys = "0.9.110"
|
||||||
libc = "0.2.177"
|
libc = "0.2.177"
|
||||||
foreign-types-shared = "0.1.1"
|
foreign-types-shared = "0.1.1"
|
||||||
asn1 = "0.22.0"
|
asn1 = "0.23.0"
|
||||||
actix-web = { version = "4.11.0", features = ["openssl"] }
|
actix-web = { version = "4.11.0", features = ["openssl"] }
|
||||||
futures = "0.3.31"
|
futures = "0.3.31"
|
||||||
serde = { version = "1.0.228", features = ["derive"] }
|
serde = { version = "1.0.228", features = ["derive"] }
|
||||||
reqwest = { version = "0.12.24", features = ["json"] }
|
reqwest = { version = "0.12.24", features = ["json"] }
|
||||||
serde_json = "1.0.145"
|
serde_json = "1.0.145"
|
||||||
rand = "0.9.2"
|
rand = "0.10.0-rc.0"
|
||||||
actix = "0.13.5"
|
actix = "0.13.5"
|
||||||
actix-identity = "0.8.0"
|
actix-identity = "0.9.0"
|
||||||
actix-session = { version = "0.11.0", features = ["cookie-session"] }
|
actix-session = { version = "0.11.0", features = ["cookie-session"] }
|
||||||
actix-cors = "0.7.1"
|
actix-cors = "0.7.1"
|
||||||
actix-multipart = { version = "0.7.2", features = ["derive"] }
|
actix-multipart = { version = "0.7.2", features = ["derive"] }
|
||||||
actix-remote-ip = "0.1.0"
|
actix-remote-ip = "0.1.0"
|
||||||
futures-util = "0.3.31"
|
futures-util = "0.3.31"
|
||||||
uuid = { version = "1.17.0", features = ["v4", "serde"] }
|
uuid = { version = "1.18.1", features = ["v4", "serde"] }
|
||||||
semver = { version = "1.0.27", features = ["serde"] }
|
semver = { version = "1.0.27", features = ["serde"] }
|
||||||
lazy-regex = "3.4.1"
|
lazy-regex = "3.4.1"
|
||||||
tokio = { version = "1.47.1", features = ["full"] }
|
tokio = { version = "1.48.0", features = ["full"] }
|
||||||
tokio_schedule = "0.3.2"
|
tokio_schedule = "0.3.2"
|
||||||
mime_guess = "2.0.5"
|
mime_guess = "2.0.5"
|
||||||
rust-embed = "8.7.2"
|
rust-embed = "8.8.0"
|
||||||
jsonwebtoken = { version = "9.3.1", features = ["use_pem"] }
|
jsonwebtoken = { version = "10.1.0", features = ["use_pem", "rust_crypto"] }
|
||||||
prettytable-rs = "0.10.0"
|
prettytable-rs = "0.10.0"
|
||||||
chrono = "0.4.42"
|
chrono = "0.4.42"
|
||||||
serde_yml = "0.0.12"
|
serde_yml = "0.0.12"
|
||||||
bincode = "2.0.1"
|
bincode = "2.0.1"
|
||||||
fs4 = { version = "0.13.1", features = ["sync"] }
|
fs4 = { version = "0.13.1", features = ["sync"] }
|
||||||
zip = { version = "2.2.0", features = ["bzip2"] }
|
zip = { version = "6.0.0", features = ["bzip2"] }
|
||||||
walkdir = "2.5.0"
|
walkdir = "2.5.0"
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ use crate::server::custom_error::HttpResult;
|
|||||||
use crate::server::devices_api::jwt_parser::JWTRequest;
|
use crate::server::devices_api::jwt_parser::JWTRequest;
|
||||||
use actix_web::{HttpResponse, web};
|
use actix_web::{HttpResponse, web};
|
||||||
|
|
||||||
#[derive(Debug, serde::Deserialize)]
|
#[derive(Debug, serde::Deserialize, Clone)]
|
||||||
pub struct LogRequest {
|
pub struct LogRequest {
|
||||||
severity: LogSeverity,
|
severity: LogSeverity,
|
||||||
message: String,
|
message: String,
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ pub struct JWTRequest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl JWTRequest {
|
impl JWTRequest {
|
||||||
pub async fn parse_jwt<E: DeserializeOwned>(
|
pub async fn parse_jwt<E: DeserializeOwned + std::clone::Clone>(
|
||||||
&self,
|
&self,
|
||||||
actor: WebEnergyActor,
|
actor: WebEnergyActor,
|
||||||
) -> anyhow::Result<(Device, E)> {
|
) -> anyhow::Result<(Device, E)> {
|
||||||
|
|||||||
@@ -130,7 +130,7 @@ pub async fn get_certificate(query: web::Query<ReqWithDevID>, actor: WebEnergyAc
|
|||||||
.body(cert))
|
.body(cert))
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, serde::Serialize, serde::Deserialize)]
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
|
||||||
struct Claims {
|
struct Claims {
|
||||||
info: DeviceInfo,
|
info: DeviceInfo,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ use crate::server::web_api::*;
|
|||||||
use crate::server::web_app_controller;
|
use crate::server::web_app_controller;
|
||||||
use actix_cors::Cors;
|
use actix_cors::Cors;
|
||||||
use actix_identity::IdentityMiddleware;
|
use actix_identity::IdentityMiddleware;
|
||||||
use actix_identity::config::LogoutBehaviour;
|
use actix_identity::config::LogoutBehavior;
|
||||||
use actix_remote_ip::RemoteIPConfig;
|
use actix_remote_ip::RemoteIPConfig;
|
||||||
use actix_session::SessionMiddleware;
|
use actix_session::SessionMiddleware;
|
||||||
use actix_session::storage::CookieSessionStore;
|
use actix_session::storage::CookieSessionStore;
|
||||||
@@ -84,7 +84,7 @@ pub async fn secure_server(energy_actor: EnergyActorAddr) -> anyhow::Result<()>
|
|||||||
.build();
|
.build();
|
||||||
|
|
||||||
let identity_middleware = IdentityMiddleware::builder()
|
let identity_middleware = IdentityMiddleware::builder()
|
||||||
.logout_behaviour(LogoutBehaviour::PurgeSession)
|
.logout_behavior(LogoutBehavior::PurgeSession)
|
||||||
.visit_deadline(Some(Duration::from_secs(
|
.visit_deadline(Some(Duration::from_secs(
|
||||||
constants::MAX_INACTIVITY_DURATION,
|
constants::MAX_INACTIVITY_DURATION,
|
||||||
)))
|
)))
|
||||||
|
|||||||
818
central_frontend/package-lock.json
generated
818
central_frontend/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -17,11 +17,11 @@
|
|||||||
"@mdi/react": "^1.6.1",
|
"@mdi/react": "^1.6.1",
|
||||||
"@mui/icons-material": "^7.3.4",
|
"@mui/icons-material": "^7.3.4",
|
||||||
"@mui/material": "^7.3.4",
|
"@mui/material": "^7.3.4",
|
||||||
"@mui/x-charts": "^7.29.1",
|
"@mui/x-charts": "^8.15.0",
|
||||||
"@mui/x-date-pickers": "^7.29.4",
|
"@mui/x-date-pickers": "^8.15.0",
|
||||||
"date-and-time": "^3.6.0",
|
"date-and-time": "^4.1.0",
|
||||||
"dayjs": "^1.11.18",
|
"dayjs": "^1.11.18",
|
||||||
"filesize": "^10.1.6",
|
"filesize": "^11.0.13",
|
||||||
"react": "^19.2.0",
|
"react": "^19.2.0",
|
||||||
"react-dom": "^19.2.0",
|
"react-dom": "^19.2.0",
|
||||||
"react-router-dom": "^7.9.4",
|
"react-router-dom": "^7.9.4",
|
||||||
@@ -33,13 +33,13 @@
|
|||||||
"@types/semver": "^7.7.1",
|
"@types/semver": "^7.7.1",
|
||||||
"@typescript-eslint/eslint-plugin": "^8.46.2",
|
"@typescript-eslint/eslint-plugin": "^8.46.2",
|
||||||
"@typescript-eslint/parser": "^8.46.2",
|
"@typescript-eslint/parser": "^8.46.2",
|
||||||
"@vitejs/plugin-react": "^4.7.0",
|
"@vitejs/plugin-react": "^5.1.0",
|
||||||
"eslint": "^9.38.0",
|
"eslint": "^9.38.0",
|
||||||
"eslint-plugin-react-hooks": "^5.2.0",
|
"eslint-plugin-react-hooks": "^7.0.1",
|
||||||
"eslint-plugin-react-refresh": "^0.4.24",
|
"eslint-plugin-react-refresh": "^0.4.24",
|
||||||
"globals": "^16.4.0",
|
"globals": "^16.4.0",
|
||||||
"typescript": "^5.9.3",
|
"typescript": "^5.9.3",
|
||||||
"typescript-eslint": "^8.46.2",
|
"typescript-eslint": "^8.46.2",
|
||||||
"vite": "^6.4.1"
|
"vite": "^7.1.12"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -106,7 +106,7 @@ export default function StatCard({
|
|||||||
<Box sx={{ width: "100%", height: 100 }}>
|
<Box sx={{ width: "100%", height: 100 }}>
|
||||||
{data && interval && (
|
{data && interval && (
|
||||||
<SparkLineChart
|
<SparkLineChart
|
||||||
colors={[chartColor]}
|
color={chartColor}
|
||||||
data={data}
|
data={data}
|
||||||
area
|
area
|
||||||
showHighlight
|
showHighlight
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
import { Tooltip } from "@mui/material";
|
import { Tooltip } from "@mui/material";
|
||||||
import date from "date-and-time";
|
import { format } from "date-and-time";
|
||||||
import { time } from "../utils/DateUtils";
|
import { time } from "../utils/DateUtils";
|
||||||
|
|
||||||
export function formatDate(time: number): string {
|
export function formatDate(time: number): string {
|
||||||
const t = new Date();
|
const t = new Date();
|
||||||
t.setTime(1000 * time);
|
t.setTime(1000 * time);
|
||||||
return date.format(t, "DD/MM/YYYY HH:mm:ss");
|
return format(t, "DD/MM/YYYY HH:mm:ss");
|
||||||
}
|
}
|
||||||
|
|
||||||
export function timeDiff(a: number, b: number): string {
|
export function timeDiff(a: number, b: number): string {
|
||||||
|
|||||||
Reference in New Issue
Block a user