polish(v0.7): replace timeline 📜 + push 🔔 emoji with themed line icons

Swap the two v0.7 emoji buttons for lucide line icons (stroke=currentColor) so
they take the Amber theme colour like the toolbar icons:
- timeline toggle (tabs.ts) → scroll-text icon
- push toggle + disabled bell (push.ts) → bell icon, keeping the On/Off label
- icons.ts: ICON_TIMELINE, ICON_BELL; style.css sizes the inline svgs (16px)

Frontend-only. web tsc + build:web clean, 102 push tests green, bundle emoji-free.
This commit is contained in:
Yaojia Wang
2026-06-30 18:54:11 +02:00
parent d6809c65c4
commit e554c053ee
3 changed files with 11 additions and 3 deletions

View File

@@ -16,6 +16,8 @@
* (NOTIFY_DND env). They are independent.
*/
import { ICON_BELL } from './icons.js'
/* ── Types ─────────────────────────────────────────────────────────────────── */
/** All possible push-readiness states. Drives UI rendering in mountPushToggle. */
@@ -297,7 +299,8 @@ function renderPushToggle(
function renderDisabled(container: HTMLElement, ariaLabel: string, hint: string): void {
const wrap = el('span', 'push-toggle-disabled')
const bell = el('span', 'push-bell push-bell-off', '🔔')
const bell = el('span', 'push-bell push-bell-off')
bell.innerHTML = ICON_BELL
bell.setAttribute('aria-label', ariaLabel)
const hintEl = el('span', 'push-hint', hint)
wrap.append(bell, hintEl)
@@ -313,8 +316,9 @@ function renderToggleButton(
const btn = el(
'button',
isSubscribed ? 'push-toggle-btn push-toggle-on' : 'push-toggle-btn push-toggle-off',
isSubscribed ? '🔔 On' : '🔔 Off',
)
btn.innerHTML = ICON_BELL
btn.append(' ' + (isSubscribed ? 'On' : 'Off'))
btn.title = isSubscribed
? 'Click to disable push notifications'
: 'Click to enable push notifications'