From 9719c27a222a9e523c04102cc6685ec90a4a495b Mon Sep 17 00:00:00 2001 From: Priyanshubhartistm Date: Fri, 10 Apr 2026 19:08:57 +0530 Subject: [PATCH] feat(nip46): launch signer via nostrsigner callback --- src/app/util/nip46.ts | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/app/util/nip46.ts b/src/app/util/nip46.ts index 5d1f1a01..7c67eb7a 100644 --- a/src/app/util/nip46.ts +++ b/src/app/util/nip46.ts @@ -15,19 +15,18 @@ const APP_SCHEME = "social.flotilla" type NostrSignerScheme = "aegis" | "nostrsigner" -const makeSignerCallbackUrl = (path: string, sourceAppScheme: string) => - `${sourceAppScheme}://x-callback-url/${path}` +const makeSignerCallbackUrl = (path: string) => `${APP_SCHEME}://x-callback-url/${path}` -const makeSignerLaunchUrl = (scheme: NostrSignerScheme, nostrconnectUrl: string) => { +const makeSignerLaunchUrl = (nostrconnectUrl: string) => { const params = new URLSearchParams({ method: "connect", nostrconnect: nostrconnectUrl, "x-source": APP_SCHEME, - "x-success": makeSignerCallbackUrl("authSuccess", APP_SCHEME), - "x-error": makeSignerCallbackUrl("authError", APP_SCHEME), + "x-success": makeSignerCallbackUrl("authSuccess"), + "x-error": makeSignerCallbackUrl("authError"), }) - return `${scheme}://x-callback-url/auth/nip46?${params.toString()}` + return `nostrsigner://x-callback-url/auth/nip46?${params.toString()}` } export class Nip46Controller { @@ -54,8 +53,8 @@ export class Nip46Controller { this.url.set(url) this.signerUrls.set({ - aegis: makeSignerLaunchUrl("aegis", url), - nostrsigner: makeSignerLaunchUrl("nostrsigner", url), + aegis: makeSignerLaunchUrl(url), + nostrsigner: makeSignerLaunchUrl(url), }) let response @@ -78,8 +77,9 @@ export class Nip46Controller { } } - launchSigner(scheme: NostrSignerScheme) { - const signerUrl = get(this.signerUrls)?.[scheme] + launchSigner(_scheme?: NostrSignerScheme) { + const nostrconnectUrl = get(this.url) + const signerUrl = nostrconnectUrl && makeSignerLaunchUrl(nostrconnectUrl) if (!signerUrl) { pushToast({