chore(deps): update npm dependencies to v9 (major) (#6819)

* fix: replace DeleteOutline with DeleteOutlined icon in BackupHistoryViewer

* chore(deps): update npm dependencies to v9

* refactor: bump @mui to v9

---------

Co-authored-by: Tunglies <77394545+Tunglies@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
This commit is contained in:
renovate[bot]
2026-04-15 14:12:06 +00:00
committed by GitHub
co-authored by Tunglies renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
parent 0dd861fa32
commit 71dc5f0bdb
39 changed files with 225 additions and 184 deletions
@@ -134,7 +134,11 @@ export function AutoBackupSettings() {
return (
<Fragment>
<ListItem divider disableGutters>
<Stack direction="row" alignItems="center" spacing={1} width="100%">
<Stack
direction="row"
spacing={1}
sx={{ alignItems: 'center', width: '100%' }}
>
<ListItemText
primary={t('settings.modals.backup.auto.scheduleLabel')}
secondary={t('settings.modals.backup.auto.scheduleHelper')}
@@ -149,7 +153,11 @@ export function AutoBackupSettings() {
</ListItem>
<ListItem divider disableGutters>
<Stack direction="row" alignItems="center" spacing={2} width="100%">
<Stack
direction="row"
spacing={2}
sx={{ alignItems: 'center', width: '100%' }}
>
<ListItemText
primary={t('settings.modals.backup.auto.intervalLabel')}
/>
@@ -187,7 +195,11 @@ export function AutoBackupSettings() {
</ListItem>
<ListItem divider disableGutters>
<Stack direction="row" alignItems="center" spacing={1} width="100%">
<Stack
direction="row"
spacing={1}
sx={{ alignItems: 'center', width: '100%' }}
>
<ListItemText
primary={t('settings.modals.backup.auto.changeLabel')}
secondary={t('settings.modals.backup.auto.changeHelper')}
@@ -234,9 +234,11 @@ export const BackupConfigViewer = memo(
<Grid size={{ xs: 12, sm: 3 }}>
<Stack
direction="column"
justifyContent="space-between"
alignItems="stretch"
sx={{ height: '100%' }}
sx={{
justifyContent: 'space-between',
alignItems: 'stretch',
height: '100%',
}}
>
{webdavChanged ||
webdav_url === undefined ||
@@ -1,4 +1,4 @@
import DeleteOutline from '@mui/icons-material/DeleteOutline'
import DeleteOutlined from '@mui/icons-material/DeleteOutlined'
import DownloadRounded from '@mui/icons-material/DownloadRounded'
import RefreshRounded from '@mui/icons-material/RefreshRounded'
import RestoreRounded from '@mui/icons-material/RestoreRounded'
@@ -282,8 +282,7 @@ export const BackupHistoryViewer = ({
<Stack spacing={2}>
<Stack
direction="row"
alignItems="center"
justifyContent="space-between"
sx={{ alignItems: 'center', justifyContent: 'space-between' }}
>
<Tabs
value={source}
@@ -345,9 +344,11 @@ export const BackupHistoryViewer = ({
secondary={
<Stack
direction="row"
alignItems="center"
justifyContent="space-between"
spacing={1.5}
sx={{
alignItems: 'center',
justifyContent: 'space-between',
}}
>
<Typography variant="caption" color="text.secondary">
{`${row.platform} · ${row.display_time}`}
@@ -355,7 +356,7 @@ export const BackupHistoryViewer = ({
<Stack
direction="row"
spacing={0.5}
alignItems="center"
sx={{ alignItems: 'center' }}
>
{isLocal && (
<IconButton
@@ -371,7 +372,7 @@ export const BackupHistoryViewer = ({
disabled={isBusy}
onClick={() => handleDelete(row.filename)}
>
<DeleteOutline fontSize="small" />
<DeleteOutlined fontSize="small" />
</IconButton>
<IconButton
size="small"
@@ -393,8 +394,7 @@ export const BackupHistoryViewer = ({
<Stack
direction="row"
spacing={1}
justifyContent="flex-end"
alignItems="center"
sx={{ justifyContent: 'flex-end', alignItems: 'center' }}
>
<Typography variant="caption">
{currentPage + 1} / {pageCount}
@@ -237,8 +237,7 @@ export function BackupViewer({ ref }: { ref?: Ref<DialogRef> }) {
direction="row"
spacing={1}
useFlexGap
flexWrap="wrap"
alignItems="center"
sx={{ flexWrap: 'wrap', alignItems: 'center' }}
>
{item.actions}
</Stack>
@@ -117,7 +117,7 @@ export function ClashCoreViewer({ ref }: { ref?: Ref<DialogRef> }) {
<BaseDialog
open={open}
title={
<Box display="flex" justifyContent="space-between">
<Box sx={{ display: 'flex', justifyContent: 'space-between' }}>
{t('settings.sections.clash.form.fields.clashCore')}
<Box>
<LoadingButton
@@ -221,7 +221,7 @@ export const ClashPortViewer = forwardRef<ClashPortViewerRef>((_, ref) => {
}}
okBtn={
loading ? (
<Stack direction="row" alignItems="center" spacing={1}>
<Stack direction="row" spacing={1} sx={{ alignItems: 'center' }}>
<CircularProgress size={20} />
{t('shared.statuses.saving')}
</Stack>
@@ -36,7 +36,7 @@ export const ConfigViewer = forwardRef<DialogRef>((_, ref) => {
<EditorViewer
open={true}
title={
<Box display="flex" alignItems="center" gap={2}>
<Box sx={{ display: 'flex', alignItems: 'center', gap: 2 }}>
{t('settings.components.verge.advanced.fields.runtimeConfig')}
<Chip label={t('shared.labels.readOnly')} size="small" />
</Box>
@@ -111,7 +111,7 @@ export function ControllerViewer({ ref }: { ref?: Ref<DialogRef> }) {
contentSx={{ width: 400 }}
okBtn={
isSaving ? (
<Box display="flex" alignItems="center" gap={1}>
<Box sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>
<CircularProgress size={16} color="inherit" />
{t('shared.statuses.saving')}
</Box>
@@ -153,7 +153,7 @@ export function ControllerViewer({ ref }: { ref?: Ref<DialogRef> }) {
<ListItemText
primary={t('settings.sections.externalController.fields.address')}
/>
<Box display="flex" alignItems="center" gap={1}>
<Box sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>
<TextField
size="small"
sx={{
@@ -193,7 +193,7 @@ export function ControllerViewer({ ref }: { ref?: Ref<DialogRef> }) {
<ListItemText
primary={t('settings.sections.externalController.fields.secret')}
/>
<Box display="flex" alignItems="center" gap={1}>
<Box sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>
<TextField
size="small"
sx={{
+8 -2
View File
@@ -623,9 +623,15 @@ export function DnsViewer({ ref }: { ref?: Ref<DialogRef> }) {
open={open}
disableEnforceFocus={!visualization}
title={
<Box display="flex" justifyContent="space-between" alignItems="center">
<Box
sx={{
display: 'flex',
justifyContent: 'space-between',
alignItems: 'center',
}}
>
{t('settings.modals.dns.dialog.title')}
<Box display="flex" alignItems="center" gap={1}>
<Box sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>
<Button
variant="outlined"
size="small"
@@ -194,10 +194,12 @@ export const HeaderConfiguration = forwardRef<ClashHeaderConfigingRef>(
<List sx={{ width: '90%', padding: 2 }}>
<ListItem sx={{ padding: '8px 0' }}>
<Box
display="flex"
justifyContent="space-between"
alignItems="center"
width="100%"
sx={{
display: 'flex',
justifyContent: 'space-between',
alignItems: 'center',
width: '100%',
}}
>
<span style={{ fontWeight: 'normal' }}>
{t('settings.sections.externalCors.fields.allowPrivateNetwork')}
@@ -240,7 +242,7 @@ export const HeaderConfiguration = forwardRef<ClashHeaderConfigingRef>(
placeholder={t(
'settings.sections.externalCors.placeholders.origin',
)}
inputProps={{ style: { fontSize: 14 } }}
slotProps={{ htmlInput: { style: { fontSize: 14 } } }}
/>
<Button
variant="contained"
+1 -1
View File
@@ -90,7 +90,7 @@ export const HotkeyInput = (props: Props) => {
<div className="list">
{keys.map((key, index) => (
<Box display="flex" key={key}>
<Box sx={{ display: 'flex' }} key={key}>
<span className="delimiter" hidden={index === 0}>
+
</span>
@@ -27,7 +27,7 @@ export function NetworkInterfaceViewer({ ref }: { ref?: Ref<DialogRef> }) {
<BaseDialog
open={open}
title={
<Box display="flex" justifyContent="space-between">
<Box sx={{ display: 'flex', justifyContent: 'space-between' }}>
{t('settings.modals.networkInterface.title')}
<Box>
<Button
+1 -1
View File
@@ -141,7 +141,7 @@ export function TunViewer({ ref }: { ref?: Ref<DialogRef> }) {
<BaseDialog
open={open}
title={
<Box display="flex" justifyContent="space-between" gap={1}>
<Box sx={{ display: 'flex', justifyContent: 'space-between', gap: 1 }}>
<Typography variant="h6">{t('settings.modals.tun.title')}</Typography>
<Button
variant="outlined"
@@ -112,7 +112,7 @@ export function UpdateViewer({ ref }: { ref?: Ref<DialogRef> }) {
<BaseDialog
open={open}
title={
<Box display="flex" justifyContent="space-between">
<Box sx={{ display: 'flex', justifyContent: 'space-between' }}>
{t('settings.modals.update.title', {
version: updateInfo?.version ?? '',
})}
+11 -3
View File
@@ -49,7 +49,11 @@ export const WebUIItem = (props: Props) => {
if (editing || onlyEdit) {
return (
<>
<Stack spacing={0.75} direction="row" mt={1} mb={1} alignItems="center">
<Stack
spacing={0.75}
direction="row"
sx={{ mt: 1, mb: 1, alignItems: 'center' }}
>
<TextField
autoComplete="new-password"
fullWidth
@@ -105,13 +109,17 @@ export const WebUIItem = (props: Props) => {
return (
<>
<Stack spacing={0.75} direction="row" alignItems="center" mt={1} mb={1}>
<Stack
spacing={0.75}
direction="row"
sx={{ alignItems: 'center', mt: 1, mb: 1 }}
>
<Typography
component="div"
width="100%"
title={value}
color={value ? 'text.primary' : 'text.secondary'}
sx={({ palette }) => ({
width: '100%',
overflow: 'hidden',
textOverflow: 'ellipsis',
'> .placeholder': {
@@ -100,7 +100,7 @@ export function WebUIViewer({ ref }: { ref?: Ref<DialogRef> }) {
<BaseDialog
open={open}
title={
<Box display="flex" justifyContent="space-between">
<Box sx={{ display: 'flex', justifyContent: 'space-between' }}>
{t('settings.modals.webUI.title')}
<Button
variant="contained"
@@ -127,7 +127,7 @@ export function WebUIViewer({ ref }: { ref?: Ref<DialogRef> }) {
{!editing && webUIList.length === 0 && (
<BaseEmpty
extra={
<Typography mt={2} sx={{ fontSize: '12px' }}>
<Typography sx={{ mt: 2, fontSize: '12px' }}>
{t('settings.modals.webUI.messages.placeholderInstruction')}
</Typography>
}