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 (