1 Commits

Author SHA1 Message Date
de15d33031 Update Node.js to v24
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-07-14 00:15:41 +00:00
5 changed files with 38 additions and 97 deletions

View File

@ -6,7 +6,7 @@ name: default
steps:
# Frontend
- name: web_build
image: node:23
image: node:24
volumes:
- name: web_app
path: /tmp/web_build

View File

@ -56,7 +56,7 @@ impl FromRequest for AuthExtractor {
};
Box::pin(async move {
// Check for authentication using API token
// Check for authentication using OpenID
if let Some(token) = req.headers().get(constants::API_TOKEN_HEADER) {
let Ok(jwt_token) = token.to_str() else {
return Err(actix_web::error::ErrorBadRequest(

View File

@ -16,8 +16,8 @@
"@mdi/react": "^1.6.1",
"@mui/icons-material": "^7.1.2",
"@mui/material": "^7.1.2",
"@mui/x-charts": "^8.8.0",
"@mui/x-data-grid": "^8.8.0",
"@mui/x-charts": "^8.7.0",
"@mui/x-data-grid": "^8.7.0",
"@mui/x-date-pickers": "^8.7.0",
"date-and-time": "^3.6.0",
"dayjs": "^1.11.13",
@ -30,7 +30,7 @@
"ts-pattern": "^5.7.1"
},
"devDependencies": {
"@eslint/js": "^9.31.0",
"@eslint/js": "^9.30.1",
"@types/react": "^19.1.8",
"@types/react-dom": "^19.1.6",
"@vitejs/plugin-react": "^4.6.0",
@ -1145,9 +1145,9 @@
}
},
"node_modules/@eslint/js": {
"version": "9.31.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.31.0.tgz",
"integrity": "sha512-LOm5OVt7D4qiKCqoiPbA7LWmI+tbw1VbTUowBcUMgQSuM6poJufkFkYDcQpo5KfgD39TnNySV26QjOh7VFpSyw==",
"version": "9.30.1",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.30.1.tgz",
"integrity": "sha512-zXhuECFlyep42KZUhWjfvsmXGX39W8K8LFb8AWXM9gSV9dQB+MrJGLKvW6Zw0Ggnbpw0VHTtrhFXYe3Gym18jg==",
"dev": true,
"license": "MIT",
"engines": {
@ -1544,12 +1544,12 @@
}
},
"node_modules/@mui/types": {
"version": "7.4.4",
"resolved": "https://registry.npmjs.org/@mui/types/-/types-7.4.4.tgz",
"integrity": "sha512-p63yhbX52MO/ajXC7hDHJA5yjzJekvWD3q4YDLl1rSg+OXLczMYPvTuSuviPRCgRX8+E42RXz1D/dz9SxPSlWg==",
"version": "7.4.3",
"resolved": "https://registry.npmjs.org/@mui/types/-/types-7.4.3.tgz",
"integrity": "sha512-2UCEiK29vtiZTeLdS2d4GndBKacVyxGvReznGXGr+CzW/YhjIX+OHUdCIczZjzcRAgKBGmE9zCIgoV9FleuyRQ==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.27.6"
"@babel/runtime": "^7.27.1"
},
"peerDependencies": {
"@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0"
@ -1561,14 +1561,14 @@
}
},
"node_modules/@mui/utils": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/@mui/utils/-/utils-7.2.0.tgz",
"integrity": "sha512-O0i1GQL6MDzhKdy9iAu5Yr0Sz1wZjROH1o3aoztuivdCXqEeQYnEjTDiRLGuFxI9zrUbTHBwobMyQH5sNtyacw==",
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/@mui/utils/-/utils-7.1.1.tgz",
"integrity": "sha512-BkOt2q7MBYl7pweY2JWwfrlahhp+uGLR8S+EhiyRaofeRYUWL2YKbSGQvN4hgSN1i8poN0PaUiii1kEMrchvzg==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.27.6",
"@mui/types": "^7.4.4",
"@types/prop-types": "^15.7.15",
"@babel/runtime": "^7.27.1",
"@mui/types": "^7.4.3",
"@types/prop-types": "^15.7.14",
"clsx": "^2.1.1",
"prop-types": "^15.8.1",
"react-is": "^19.1.0"
@ -1591,16 +1591,16 @@
}
},
"node_modules/@mui/x-charts": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@mui/x-charts/-/x-charts-8.8.0.tgz",
"integrity": "sha512-tqdwKoUpo8u+KZdEWO4C21Q0P3HOL/DadAZSMmTdtO1LDCO/m4S8UtHFpj2B0pZuikdiBJ5bz49I+nfBfK1Xng==",
"version": "8.7.0",
"resolved": "https://registry.npmjs.org/@mui/x-charts/-/x-charts-8.7.0.tgz",
"integrity": "sha512-HFUpJUvJfZlBD15WWhHzXin2MwToUwJaXeiQCqe4r6W4T7VQMM3qqm+Rb6OQ0QQ3tvykQuogHfSzhSUbKW0cHw==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.27.6",
"@mui/utils": "^7.2.0",
"@mui/utils": "^7.1.1",
"@mui/x-charts-vendor": "8.5.3",
"@mui/x-internal-gestures": "0.2.1",
"@mui/x-internals": "8.8.0",
"@mui/x-internal-gestures": "0.2.0",
"@mui/x-internals": "8.7.0",
"bezier-easing": "^2.1.0",
"clsx": "^2.1.1",
"prop-types": "^15.8.1",
@ -1652,37 +1652,15 @@
"robust-predicates": "^3.0.2"
}
},
"node_modules/@mui/x-charts/node_modules/@mui/x-internals": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@mui/x-internals/-/x-internals-8.8.0.tgz",
"integrity": "sha512-qTRK5oINkAjZ7sIHpSnESLNq1xtQUmmfmGscYUSEP0uHoYh6pKkNWH9+7yzggRHuTv+4011VBwN9s+efrk+xZg==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.27.6",
"@mui/utils": "^7.2.0",
"reselect": "^5.1.1"
},
"engines": {
"node": ">=14.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/mui-org"
},
"peerDependencies": {
"@mui/system": "^5.15.14 || ^6.0.0 || ^7.0.0",
"react": "^17.0.0 || ^18.0.0 || ^19.0.0"
}
},
"node_modules/@mui/x-data-grid": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@mui/x-data-grid/-/x-data-grid-8.8.0.tgz",
"integrity": "sha512-xWoBmxHi5JvT0QvAYGYJYNy4DEi+Lez+lrsqw3YV7z0jEYyJoV9vjFCiFE4QmG6IPg62B1gZHYE5AkDLFCvPkw==",
"version": "8.7.0",
"resolved": "https://registry.npmjs.org/@mui/x-data-grid/-/x-data-grid-8.7.0.tgz",
"integrity": "sha512-3hVjnADSBXEd/7f+CHlxTNhqJrnRL0XkTbvI+yfttPuqLHYQJwNUR7p7d/VtyRcR6QlaK19+Bu8Q6u0Ygmw/PQ==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.27.6",
"@mui/utils": "^7.2.0",
"@mui/x-internals": "8.8.0",
"@mui/utils": "^7.1.1",
"@mui/x-internals": "8.7.0",
"clsx": "^2.1.1",
"prop-types": "^15.8.1",
"use-sync-external-store": "^1.5.0"
@ -1711,28 +1689,6 @@
}
}
},
"node_modules/@mui/x-data-grid/node_modules/@mui/x-internals": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@mui/x-internals/-/x-internals-8.8.0.tgz",
"integrity": "sha512-qTRK5oINkAjZ7sIHpSnESLNq1xtQUmmfmGscYUSEP0uHoYh6pKkNWH9+7yzggRHuTv+4011VBwN9s+efrk+xZg==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.27.6",
"@mui/utils": "^7.2.0",
"reselect": "^5.1.1"
},
"engines": {
"node": ">=14.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/mui-org"
},
"peerDependencies": {
"@mui/system": "^5.15.14 || ^6.0.0 || ^7.0.0",
"react": "^17.0.0 || ^18.0.0 || ^19.0.0"
}
},
"node_modules/@mui/x-date-pickers": {
"version": "8.7.0",
"resolved": "https://registry.npmjs.org/@mui/x-date-pickers/-/x-date-pickers-8.7.0.tgz",
@ -1800,9 +1756,9 @@
}
},
"node_modules/@mui/x-internal-gestures": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/@mui/x-internal-gestures/-/x-internal-gestures-0.2.1.tgz",
"integrity": "sha512-7Po6F4/RdUrFyRwiwvh5ZNeY/bi8wavTCUe+stKAyMliKpgcYiEtH7ywTgroOEq0o56fIpyPzwC4+bbGwYFnvA==",
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/@mui/x-internal-gestures/-/x-internal-gestures-0.2.0.tgz",
"integrity": "sha512-HXCKslmb17wfRRLZ20g2mzzvEcGd31Os8oNbW1IvodlZqJpHhwT25A1fN9Ss3GiJa/+miD/Y0Ad5o6OiMbI1Uw==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.27.6"
@ -2288,9 +2244,9 @@
"license": "MIT"
},
"node_modules/@types/prop-types": {
"version": "15.7.15",
"resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz",
"integrity": "sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==",
"version": "15.7.14",
"resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.14.tgz",
"integrity": "sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==",
"license": "MIT"
},
"node_modules/@types/react": {

View File

@ -18,8 +18,8 @@
"@mdi/react": "^1.6.1",
"@mui/icons-material": "^7.1.2",
"@mui/material": "^7.1.2",
"@mui/x-charts": "^8.8.0",
"@mui/x-data-grid": "^8.8.0",
"@mui/x-charts": "^8.7.0",
"@mui/x-data-grid": "^8.7.0",
"@mui/x-date-pickers": "^8.7.0",
"date-and-time": "^3.6.0",
"dayjs": "^1.11.13",
@ -32,7 +32,7 @@
"ts-pattern": "^5.7.1"
},
"devDependencies": {
"@eslint/js": "^9.31.0",
"@eslint/js": "^9.30.1",
"@types/react": "^19.1.8",
"@types/react-dom": "^19.1.6",
"@vitejs/plugin-react": "^4.6.0",

View File

@ -2,11 +2,9 @@ import DeleteIcon from "@mui/icons-material/DeleteOutlined";
import DriveFileMoveOutlineIcon from "@mui/icons-material/DriveFileMoveOutline";
import LinkOffIcon from "@mui/icons-material/LinkOff";
import MoreVertIcon from "@mui/icons-material/MoreVert";
import ClearIcon from "@mui/icons-material/Clear";
import RefreshIcon from "@mui/icons-material/Refresh";
import {
IconButton,
InputAdornment,
ListItemIcon,
ListItemText,
TextField,
@ -394,19 +392,6 @@ function MovementsTable(p: {
setFilter(e.target.value);
}}
style={{ padding: "0px", flex: 1 }}
slotProps={{
input: {
endAdornment: filter.length > 0 && (
<InputAdornment position="end">
<Tooltip title="Clear current filter">
<IconButton size="small" onClick={() => { setFilter(""); }}>
<ClearIcon />
</IconButton>
</Tooltip>
</InputAdornment>
),
},
}}
/>
<span style={{ flex: 1 }}></span>
<Tooltip title="Refresh table">