From 258f815bea0bd0e44091bda8b48b83ff15e39aa6 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Mon, 3 Aug 2026 09:56:56 -0700 Subject: Zap: resolve inside a skeleton of the card that's coming MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The inline-progress attempt still read as a flash — the send form was visible behind it with the raw npub, its verification block and the gift button, then all of that was replaced. Now both resolution phases (ark advert, then lightning) render the SHAPE of the destination card: same title, same recipient chip, a spinner where the amount form will be, and a working Back. The card fills in instead of the screen changing twice, and the two flows share one title so it never re-titles at the handoff. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01Wvj4aoeMZwA7VUGdJP9Swi --- src/app.js | 7 ------- 1 file changed, 7 deletions(-) (limited to 'src/app.js') diff --git a/src/app.js b/src/app.js index feb9a6a..9830800 100644 --- a/src/app.js +++ b/src/app.js @@ -2812,13 +2812,6 @@ function recipientRow(s, r, i) { !single && h('button', { type: 'button', class: 'btn-sm', title: t('remove'), onClick: () => { s.recipients.splice(i, 1); render(); } }, '✕') ), check, - i === 0 ? (() => { - const note = featureHook('resolvingNote'); - return note - ? h('div', { class: 'row gap6', style: 'align-items:center;padding:2px 0' }, - h('span', { class: 'spinner sm' }), h('span', { class: 'small muted' }, note)) - : null; - })() : null, i === 0 && sendSearch.rows && sendSearch.rows.length && searchable(r.address) ? h('div', { class: 'list send-suggest' }, resultRows(h, sendSearch.rows, pickRecipient)) : null, -- cgit v1.2.3