aboutsummaryrefslogtreecommitdiffstats
path: root/src/style.css
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-08-02 17:51:37 -0700
committerAdam Soltys <[email protected]>2026-08-02 17:51:37 -0700
commitd33643e0683dfac4037c0b61d4aa823782f582e7 (patch)
treeff185690f42cbb07d3fa925b2b7e5f8db5e1e53c /src/style.css
parent64f96e031e6ea219cc03eb8aa2cc4d0cf7e1f4e4 (diff)
downloadcoinosv3-d33643e0683dfac4037c0b61d4aa823782f582e7.tar.gz
coinosv3-d33643e0683dfac4037c0b61d4aa823782f582e7.zip
Recipient search: usernames and npubs, in chat and the Send form
A shared engine (src/recipient-search.js) merges three ranked sources: an exact npub/hex paste, coinos usernames from the registrar's new /search prefix endpoint, and NIP-50 kind-0 full-text search on relay.nostr.band — the approach the major web clients take, since ordinary relays don't index profiles. Results dedupe by pubkey, fill avatars in one batched kind-0 fetch, and cache per query so narrowing never re-hits the network. Input is debounced 300ms and gated by a searchable() heuristic so addresses, invoices, and keys never trigger a search. Chat's New message panel narrows as you type and opens the thread on pick; the Send form shows the same candidates under the destination input and picking one runs the normal paste path (payment address → BIP-353, npub → zap). Co-Authored-By: Claude Fable 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Wvj4aoeMZwA7VUGdJP9Swi
Diffstat (limited to 'src/style.css')
-rw-r--r--src/style.css1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/style.css b/src/style.css
index 7c30d81..82a8c09 100644
--- a/src/style.css
+++ b/src/style.css
@@ -388,3 +388,4 @@ hr.divider { margin: 16px 0; }
.balance-move .seg { display: flex; width: 100%; }
.balance-move .seg button { flex: 1; }
.balance-seg { display: inline-flex; margin-bottom: 6px; }
+.send-suggest { max-height: 260px; overflow-y: auto; }