From 814afe77acf3fbfbd271e61f613aa111025bcbd5 Mon Sep 17 00:00:00 2001 From: Tony Giorgio Date: Fri, 18 Aug 2023 14:35:44 -0500 Subject: [PATCH] Add nwc callback query parameters --- src/routes/settings/Connections.tsx | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/routes/settings/Connections.tsx b/src/routes/settings/Connections.tsx index 47c745b..08da779 100644 --- a/src/routes/settings/Connections.tsx +++ b/src/routes/settings/Connections.tsx @@ -40,8 +40,10 @@ function Nwc() { } }); - const [dialogOpen, setDialogOpen] = createSignal(false); - const [formName, setFormName] = createSignal(""); + const urlParams = new URLSearchParams(window.location.search); + const queryName = urlParams.get("name"); + const [formName, setFormName] = createSignal(queryName || ""); + const [dialogOpen, setDialogOpen] = createSignal(!!queryName); const [createLoading, setCreateLoading] = createSignal(false); const [error, setError] = createSignal(""); @@ -65,6 +67,15 @@ function Nwc() { refetch(); } + const callbackUriScheme = getCallbackQueryParam(); + if (callbackUriScheme) { + const fullURI = profile.nwc_uri.replace( + "nostr+walletconnect://", + `${getCallbackQueryParam()}://` + ); + window.open(fullURI, "_blank"); + } + setFormName(""); setDialogOpen(false); } catch (e) { @@ -102,6 +113,11 @@ function Nwc() { window.open(connectString, "_blank"); } + function getCallbackQueryParam() { + const urlParams = new URLSearchParams(window.location.search); + return urlParams.get("callbackUri"); + } + return (