diff options
| author | Adam Soltys <[email protected]> | 2026-08-26 17:29:14 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-08-26 17:29:14 -0700 |
| commit | 6c04a5e1d6c16eb0547e7b6d5e064d503ef045a5 (patch) | |
| tree | 394877c04a2a9e8de8909d799c896b359f1352d3 /src/features | |
| parent | 52b6ed80d2d54f66cce1783e966b68e72e746cec (diff) | |
| download | coinosv3-6c04a5e1d6c16eb0547e7b6d5e064d503ef045a5.tar.gz coinosv3-6c04a5e1d6c16eb0547e7b6d5e064d503ef045a5.zip | |
The hat pitch moves next door to the head it would sit on: a small "Support Coinos — buy a hat for your avatar" link beside the profile avatar replaces the block button buried in the editor
Co-Authored-By: Claude Fable 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_019eA8JRq9Wr7z2fRQk99HLi
Diffstat (limited to 'src/features')
| -rw-r--r-- | src/features/hats.js | 4 | ||||
| -rw-r--r-- | src/features/messages.js | 5 |
2 files changed, 6 insertions, 3 deletions
diff --git a/src/features/hats.js b/src/features/hats.js index 43151ad..829c4d8 100644 --- a/src/features/hats.js +++ b/src/features/hats.js @@ -340,7 +340,9 @@ export function hatsFeature(ctx) { }, // Own-profile editor entry: the door to the shop. hatShopEntry() { - return h('button', { class: 'btn-block', onClick: openShop }, '🎩 ' + t('hats')); + return h('button', { + class: 'linklike small', style: 'padding:0;text-align:left', onClick: openShop, + }, '🎩 ' + t('hatShopSupport')); }, screenView() { if (ui.screen !== 'wallet' || !ui.hatShop) return null; diff --git a/src/features/messages.js b/src/features/messages.js index 7bee3f8..708b40a 100644 --- a/src/features/messages.js +++ b/src/features/messages.js @@ -1663,7 +1663,9 @@ export function messagesFeature(ctx) { h('div', { class: 'col grow', style: 'min-width:0;gap:2px' }, h('div', { class: 'chat-title' }, name), nip05 ? h('div', { class: 'muted small break' }, nip05) : null, - showLud ? h('div', { class: 'muted small break' }, '⚡ ' + lud16) : null)), + showLud ? h('div', { class: 'muted small break' }, '⚡ ' + lud16) : null, + // the hat pitch lives beside the avatar it decorates + mine ? hook('hatShopEntry') : null)), // no spinner while the kind 0 loads — prefetch keeps this rare, and // an empty beat reads calmer than a spinner showAbout && !ui.profEdit ? h('p', { class: 'small', style: 'margin:0;white-space:pre-wrap' }, about.slice(0, 1000)) : null, @@ -1693,7 +1695,6 @@ export function messagesFeature(ctx) { field(t('profPicture'), 'picture', 'https://…'), h('button', { class: 'btn-primary btn-block', disabled: ui.profSaving, onClick: saveProfile }, ui.profSaving ? h('span', { class: 'spinner sm' }) : t('save')), - hook('hatShopEntry'), logoutBtn()) : mine ? logoutBtn() // the editor renders above once the kind 0 loads |
