diff --git a/web/app/(app)/dashboard/(components)/message-history/sms-details-dialog.tsx b/web/app/(app)/dashboard/(components)/message-history/sms-details-dialog.tsx
index df96a7a..63cdd04 100644
--- a/web/app/(app)/dashboard/(components)/message-history/sms-details-dialog.tsx
+++ b/web/app/(app)/dashboard/(components)/message-history/sms-details-dialog.tsx
@@ -1,6 +1,6 @@
'use client'
-import { useState, type ReactNode } from 'react'
+import { useState } from 'react'
import {
Dialog,
DialogContent,
@@ -9,14 +9,8 @@ import {
DialogTitle,
} from '@/components/ui/dialog'
import { Button } from '@/components/ui/button'
-import {
- ArrowDownLeft,
- ArrowUpRight,
- Copy,
- MessageSquare,
- Reply,
-} from 'lucide-react'
-import { toast } from '@/hooks/use-toast'
+import { ArrowDownLeft, ArrowUpRight, MessageSquare, Reply, Smartphone } from 'lucide-react'
+import { CopyButton } from '@/components/shared/copy-button'
import { getStatusBadge } from './utils'
import { messageDate, messageDirection } from './group'
import { toExactLabel } from '@/components/shared/relative-time'
@@ -34,17 +28,9 @@ type SmsDetailsDialogProps = {
fallbackDeviceId?: string
}
-function Row({ label, children }: { label: string; children: ReactNode }) {
- return (
-
-
{label}
-
{children}
-
- )
-}
-
// Ordered by what people open this for: the message itself first, then the
-// metadata that explains it.
+// few facts that explain it. Copy actions sit next to the thing they copy,
+// rather than a single footer button whose target had to be inferred.
export default function SmsDetailsDialog({
message,
open,
@@ -61,19 +47,17 @@ export default function SmsDetailsDialog({
: message.sender || 'Unknown'
const date = messageDate(message)
const composerDeviceId = message.device?._id || fallbackDeviceId
-
- const handleCopyMessage = () => {
- if (message?.message) {
- navigator.clipboard.writeText(message.message)
- toast({ title: 'Message copied to clipboard!' })
- }
- }
+ const deviceName = [message.device?.brand, message.device?.model]
+ .filter(Boolean)
+ .join(' ')
return (
<>