From a0bc14d2c6f9f7947199b2f76eca7fc7a9f5499d Mon Sep 17 00:00:00 2001
From: he3als <65787561+he3als@users.noreply.github.com>
Date: Tue, 20 Aug 2024 19:32:37 +0100
Subject: [PATCH] feat(backup): icons, mobile support
---
.../server/backups/BackupContainer.tsx | 8 +-
.../components/server/backups/BackupRow.tsx | 93 ++++++++++---------
2 files changed, 51 insertions(+), 50 deletions(-)
diff --git a/resources/scripts/components/server/backups/BackupContainer.tsx b/resources/scripts/components/server/backups/BackupContainer.tsx
index 43618216d..1aadea77b 100644
--- a/resources/scripts/components/server/backups/BackupContainer.tsx
+++ b/resources/scripts/components/server/backups/BackupContainer.tsx
@@ -76,10 +76,10 @@ const BackupContainer = () => {
}}
className='p-1 border-[1px] border-[#ffffff12] rounded-xl'
>
-
-
- {(backup) => }
-
+
+ {items.map((backup) => (
+
+ ))}
)
diff --git a/resources/scripts/components/server/backups/BackupRow.tsx b/resources/scripts/components/server/backups/BackupRow.tsx
index 22b231e9d..11bee3e5d 100644
--- a/resources/scripts/components/server/backups/BackupRow.tsx
+++ b/resources/scripts/components/server/backups/BackupRow.tsx
@@ -15,6 +15,8 @@ import getServerBackups from '@/api/swr/getServerBackups';
import useWebsocketEvent from '@/plugins/useWebsocketEvent';
import BackupContextMenu from './BackupContextMenu';
+import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
+import { faFile, faLock } from '@fortawesome/free-solid-svg-icons';
interface Props {
backup: ServerBackup;
@@ -34,12 +36,12 @@ export default ({ backup }: Props) => {
b.uuid !== backup.uuid
? b
: {
- ...b,
- isSuccessful: parsed.is_successful || true,
- checksum: (parsed.checksum_type || '') + ':' + (parsed.checksum || ''),
- bytes: parsed.file_size || 0,
- completedAt: new Date(),
- },
+ ...b,
+ isSuccessful: parsed.is_successful || true,
+ checksum: (parsed.checksum_type || '') + ':' + (parsed.checksum || ''),
+ bytes: parsed.file_size || 0,
+ completedAt: new Date(),
+ },
),
}),
false,
@@ -51,52 +53,51 @@ export default ({ backup }: Props) => {
return (
-
-
-
-
-
- {backup.completedAt !== null && !backup.isSuccessful && (
-
- Failed
-
- )}
-
-
{backup.name}
- {backup.completedAt !== null ? (
- backup.isLocked ? (
-
- Locked
-
- ) : null
- ) : (
-
+
+
+
+
+ {backup.completedAt === null ? (
+
+ ) : backup.isLocked ? (
+
+ ) : (
+
+ )}
+
+
+
+
+ {backup.completedAt !== null && !backup.isSuccessful && (
+
+ Failed
+
)}
+
+
{backup.checksum}
-
{backup.checksum}
-
- {backup.completedAt !== null && backup.isSuccessful && (
- {bytesToString(backup.bytes)}
- )}
-
-
-
- {formatDistanceToNow(backup.createdAt, { includeSeconds: true, addSuffix: true })}
-
-
-
- {!backup.completedAt ? <>> : }
-
+
+
+ {backup.completedAt !== null && backup.isSuccessful && (
+
{bytesToString(backup.bytes)}
+ )}
+
,
+
+ {formatDistanceToNow(backup.createdAt, { includeSeconds: true, addSuffix: true })}
+
+
+
+
+ {!backup.completedAt ? <>> : }
+
);