aboutsummaryrefslogtreecommitdiffstats
path: root/src/nostr-login.js
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-08-02 23:26:38 -0700
committerAdam Soltys <[email protected]>2026-08-02 23:26:38 -0700
commit02d60eb824cad0b8c09cb5685a6c2dbe02e16c4f (patch)
tree9c3637c21783bf55ce8d3d3aa6de4cd47c6abb59 /src/nostr-login.js
parent70b02f00c63ba6f6cae939a5ebdedac6e3552eb6 (diff)
downloadcoinosv3-02d60eb824cad0b8c09cb5685a6c2dbe02e16c4f.tar.gz
coinosv3-02d60eb824cad0b8c09cb5685a6c2dbe02e16c4f.zip
Tab carousel, login avatar fix, signer callback hint
Tab changes no longer flash the whole page: only the content pane below the tab strip slides sideways with a soft cross-fade — swipe direction when a gesture caused it, index order for taps — while the balance card and strip stay planted. Full-page entrances remain for real page changes (settings, chat, profile, takeovers). After a nostr sign-in the header briefly wore the wallet key's face: nostrLoginIdentity now reports a just-connected live signer immediately instead of waiting for the persisted link that only lands after the wallet opens. The nostrconnect URI carries a callbackUrl hint (NIP-55 style) so signer apps that honor it can bounce back to the PWA after approval — apps that don't will still find the session signed in when the user returns, since the handshake completes over the relay in the background. Co-Authored-By: Claude Fable 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Wvj4aoeMZwA7VUGdJP9Swi
Diffstat (limited to 'src/nostr-login.js')
-rw-r--r--src/nostr-login.js2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/nostr-login.js b/src/nostr-login.js
index b142dd7..8a4603f 100644
--- a/src/nostr-login.js
+++ b/src/nostr-login.js
@@ -132,7 +132,7 @@ export function nostrConnect({ relays = ['wss://relay.coinos.io', 'wss://nos.lol
name: 'coinos',
url: 'https://v3.coinos.io',
perms: ['get_public_key', 'sign_event', 'nip44_encrypt', 'nip44_decrypt'],
- });
+ }) + '&callbackUrl=' + encodeURIComponent('https://v3.coinos.io/');
const controller = new AbortController();
const timer = setTimeout(() => controller.abort(new Error('signer connect timed out')), timeoutMs);
const ready = (async () => {