From 58de4653e11b275792218d354d5f62f6761bdd6c Mon Sep 17 00:00:00 2001 From: jp Date: Thu, 13 Aug 2026 19:46:55 +0100 Subject: [PATCH] =?UTF-8?q?Add=20dropdown=20menu=20on=20messages=20page=20?= =?UTF-8?q?contact=20rows=20-=20=E2=8B=AE=20button=20beside=20contact=20na?= =?UTF-8?q?me/number=20-=20Call=20back=20uses=20tel:=20link=20with=20sanit?= =?UTF-8?q?ised=20digits=20-=20Lookup=20number=20opens=20Google=20search?= =?UTF-8?q?=20in=20new=20tab=20-=20dropdown=20closes=20on=20outside=20clic?= =?UTF-8?q?k?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/components/MessagesPage.tsx | 70 +++++++++++++++++++++++- 1 file changed, 68 insertions(+), 2 deletions(-) diff --git a/frontend/src/components/MessagesPage.tsx b/frontend/src/components/MessagesPage.tsx index 36e274c..23e3080 100644 --- a/frontend/src/components/MessagesPage.tsx +++ b/frontend/src/components/MessagesPage.tsx @@ -76,9 +76,21 @@ export default function MessagesPage() { const showAdd = !m.contact_name && num; return (
-
+
{m.contact_name && num ? ( - {whoRaw} + <> + {whoRaw} + + + + + ) : num ? ( + <> + {whoRaw} + + + + ) : ( {whoRaw} )} @@ -147,3 +159,57 @@ export default function MessagesPage() { ); } + +function MsgContactMenu({ number, name, callerid }: { number?: string; name?: string; callerid?: string }) { + const [open, setOpen] = useState(false); + const digits = (number || "").replace(/[^\d+]/g, ""); + const lookup = encodeURIComponent(name || number || callerid || ""); + return ( + <> + + {open && ( + <> + setOpen(false)} + /> + + + )} + + ); +}