diff --git a/src/app/page.tsx b/src/app/page.tsx
index 0937927..f879839 100644
--- a/src/app/page.tsx
+++ b/src/app/page.tsx
@@ -1,6 +1,7 @@
'use client'
import React, { useCallback, useState } from 'react'
+import { QueryClient, QueryClientProvider } from '@tanstack/react-query'
import WebRTCProvider from '../components/WebRTCProvider'
import DropZone from '../components/DropZone'
import UploadFileList from '../components/UploadFileList'
@@ -13,6 +14,8 @@ import Spinner from '../components/Spinner'
import Wordmark from '../components/Wordmark'
import CancelButton from '../components/CancelButton'
+const queryClient = new QueryClient()
+
function PageWrapper({
children,
isRotating = false,
@@ -21,11 +24,13 @@ function PageWrapper({
isRotating?: boolean
}): JSX.Element {
return (
-
-
-
- {children}
-
+
+
+
+
+ {children}
+
+
)
}
diff --git a/src/components/Uploader.tsx b/src/components/Uploader.tsx
index 2805954..19defc7 100644
--- a/src/components/Uploader.tsx
+++ b/src/components/Uploader.tsx
@@ -325,6 +325,46 @@ function CopyableInput({ label, value }: { label: string; value: string }) {
)
}
+function ConnectionListItem({ conn }: { conn: UploaderConnection }) {
+ const getStatusColor = (status: UploaderConnectionStatus) => {
+ switch (status) {
+ case UploaderConnectionStatus.Uploading:
+ return 'bg-green-500'
+ case UploaderConnectionStatus.Paused:
+ return 'bg-yellow-500'
+ case UploaderConnectionStatus.Done:
+ return 'bg-blue-500'
+ case UploaderConnectionStatus.Closed:
+ return 'bg-red-500'
+ default:
+ return 'bg-gray-500'
+ }
+ }
+
+ return (
+
+
+
+ {conn.browserName} {conn.browserVersion}
+
+
+ {conn.status}
+
+
+
+
+ )
+}
+
export default function Uploader({
files,
password,
@@ -355,18 +395,7 @@ export default function Uploader({
{connections.map((conn, i) => (
-
- {/* TODO(@kern): Make this look nicer */}
-
- {conn.status} {conn.browserName} {conn.browserVersion}
-
-
-
+
))}
>
)