bc9d943d11
chats: add chat avatars and profile view-only modal
CI / test (push) Successful in 23s
2026-03-08 13:53:29 +03:00
f7413bc626
web: add avatar file upload in profile editors
CI / test (push) Successful in 28s
2026-03-08 13:45:47 +03:00
688cf0dd39
feat(web): add Tenor-backed GIF search in composer
CI / test (push) Successful in 22s
2026-03-08 13:41:35 +03:00
5d69d53301
feat(threads): support nested replies in thread API and panel
CI / test (push) Successful in 31s
2026-03-08 13:40:42 +03:00
88ff11c130
feat(web): add favorites for sticker and GIF pickers
CI / test (push) Successful in 21s
2026-03-08 13:38:55 +03:00
c6e8b779b0
feat(threads): add basic message thread API and web thread panel
CI / test (push) Successful in 21s
2026-03-08 13:37:53 +03:00
cf1a77ae76
feat(web): add notifications history block in settings
CI / test (push) Successful in 23s
2026-03-08 13:33:50 +03:00
10b11b065f
feat(web): add built-in sticker and GIF picker
CI / test (push) Successful in 21s
2026-03-08 13:32:26 +03:00
eb0852e64d
fix(web): keep editable text stable while typing
CI / test (push) Successful in 21s
2026-03-08 13:25:28 +03:00
704781e359
feat(web): add message edit flow in context menu and composer
CI / test (push) Successful in 24s
2026-03-08 13:22:57 +03:00
18596e6dab
fix(web): enforce channel read-only and admin delete rules
2026-03-08 13:18:52 +03:00
13b5f5b855
feat(realtime): sync message edits and deletes instantly
2026-03-08 13:17:09 +03:00
eda84d4d82
feat(web): redesign full-screen media viewer UX
CI / test (push) Successful in 27s
2026-03-08 13:14:18 +03:00
10d4e0386a
fix(web): refresh attachments when message list updates
CI / test (push) Successful in 20s
2026-03-08 13:11:11 +03:00
072677b9ad
feat(web): improve album layout and captions for multi-attachments
CI / test (push) Successful in 31s
2026-03-08 13:07:53 +03:00
d2dd9aa01b
feat(chat): add in-message attachments gallery and multi-file send
CI / test (push) Successful in 19s
2026-03-08 13:06:00 +03:00
65d8a9379b
feat(web): implement robust inline message formatting parser
CI / test (push) Successful in 25s
2026-03-08 13:00:11 +03:00
58208787e7
feat(web): refresh audio card UI and enforce outside-click menu close
CI / test (push) Successful in 24s
2026-03-08 12:55:55 +03:00
82322c4d42
fix(realtime,ui): sync message deletes and channel delete/leave behavior
CI / test (push) Successful in 23s
2026-03-08 12:52:31 +03:00
613edbecfe
fix(web): keep delivery status monotonic after reconnect
CI / test (push) Successful in 20s
2026-03-08 12:48:41 +03:00
dcc0f2abbc
fix(web): reconcile unread mention counters in realtime
CI / test (push) Successful in 20s
2026-03-08 12:46:52 +03:00
2af4588688
feat: improve voice recording UX and realtime state reconciliation
CI / test (push) Successful in 20s
2026-03-08 12:44:15 +03:00
d7160af908
ui: move audio volume control to top player bar
CI / test (push) Successful in 29s
2026-03-08 12:42:07 +03:00
30169a3a27
feat: add waveform voice messages end-to-end
CI / test (push) Successful in 23s
2026-03-08 12:40:49 +03:00
3b82b5e558
fix: restore light theme text and menu icon contrast
CI / test (push) Successful in 24s
2026-03-08 12:30:04 +03:00
831047447b
fix: improve light theme contrast and remove dark artifacts
CI / test (push) Successful in 25s
2026-03-08 12:25:49 +03:00
0594b890c3
feat: mentions badge in chat list and muted-mention delivery
CI / test (push) Successful in 21s
2026-03-08 12:23:39 +03:00
fc7a9cc3a6
test+web: fix test suite and remove redundant privacy checkbox
CI / test (push) Successful in 25s
2026-03-08 12:16:21 +03:00
79baadb522
feat(auth,privacy,web): step-by-step login, privacy settings persistence, TOTP QR, and API docs
CI / test (push) Failing after 22s
2026-03-08 12:09:53 +03:00
1546ae7381
web: move contacts to dedicated burger-menu screen
CI / test (push) Failing after 24s
2026-03-08 11:57:01 +03:00
f6fecf57c7
fix(web): move Contacts access to burger menu only
...
CI / test (push) Failing after 25s
- remove Contacts from top chat tabs
- keep contacts screen reachable via burger menu
2026-03-08 11:52:11 +03:00
cbd1b008bb
feat(contacts): switch contacts UX to email-first flow
...
CI / test (push) Failing after 18s
- expose email in user search/contact responses
- add add-contact-by-email API endpoint
- show email in contacts/search and add contact form by email in Contacts tab
2026-03-08 11:51:02 +03:00
897defc39d
fix(audio,sessions): unify audio playback state and improve session discovery
...
CI / test (push) Failing after 18s
- move voice/audio players to single global audio engine with shared volume
- stop/reset previous track when switching to another media
- keep playback alive across chat switches via global audio element
- list refresh sessions by redis scan fallback when user session set is missing
2026-03-08 11:48:13 +03:00
27d3340a37
feat(auth): add TOTP 2FA setup and login verification
...
CI / test (push) Failing after 21s
- add user twofa fields and migration
- add 2FA setup/enable/disable endpoints
- enforce OTP on login when 2FA enabled
- add web login OTP field and settings UI
2026-03-08 11:43:51 +03:00
e685a38be6
feat(auth): add active sessions management
...
CI / test (push) Failing after 33s
- store refresh session metadata in redis (ip/user-agent/created_at)
- add auth APIs: list sessions, revoke one, revoke all
- add web privacy UI for active sessions
2026-03-08 11:41:03 +03:00
da73b79ee7
feat(contacts): add contacts module with backend APIs and web tab
...
CI / test (push) Failing after 18s
- add user_contacts table and migration
- expose /users/contacts list/add/remove endpoints
- add Contacts tab in chat list with add/remove actions
2026-03-08 11:38:11 +03:00
39b61ec94b
feat(web): split chat list into pinned and regular sections
...
CI / test (push) Failing after 19s
- render explicit Pinned and Chats blocks
- keep pin context actions unchanged
2026-03-08 11:35:31 +03:00
8fcfd60ff5
feat(web): improve archive chats UX
...
CI / test (push) Failing after 18s
- keep archived list synced while browsing chats
- add archived entry in All tab with unread count-like badge
- show loading/empty states in Archived tab
2026-03-08 11:34:45 +03:00
4fe89ce89a
feat(web): service-worker notifications and composer/scroll UX fixes
...
CI / test (push) Failing after 21s
- register notifications service worker and handle click-to-open chat/message
- route realtime notifications through service worker with fallback
- support ?chat=&message= deep-link navigation in chats page
- enforce 1s minimum voice message length
- lift scroll-to-bottom button to avoid overlap with composer action
2026-03-08 11:33:58 +03:00
68ba97bb90
fix(web): unify mic/send button and restore scroll-down
...
CI / test (push) Failing after 20s
- show one action button in composer: mic when empty, send when text exists
- add floating scroll-to-bottom button in message list
- exclude non-text/media messages from Chat Info links list to avoid duplicates
2026-03-08 11:27:16 +03:00
14610b5699
feat(web): inline chat search and global audio bar
...
CI / test (push) Failing after 20s
- replace modal message search with header inline search controls
- add global top audio bar linked to active inline audio player
- improve chat info header variants and light theme readability
2026-03-08 11:21:57 +03:00
03bf197949
fix(web): stabilize realtime chat list synchronization
...
CI / test (push) Failing after 17s
- throttle chat list reload on realtime events
- refresh chat previews after incoming messages
- keep active chat messages in sync on chat_updated
2026-03-08 11:10:55 +03:00
c58678ee09
feat(web): refine media gallery UX in chat info
...
CI / test (push) Failing after 18s
- add per-tab counters and sticky media tabs
- normalize media ordering by newest first
- improve links tab readability with short host/path preview
2026-03-08 11:10:25 +03:00
48f521e551
feat(web): upgrade settings UX to telegram-like structure
...
CI / test (push) Failing after 18s
- redesign settings main/general/notifications/privacy screens
- add status subtitles and structured rows
- improve privacy and notifications sections
2026-03-08 11:09:36 +03:00
0e44988634
fix(web): notification media preview and theme switching
...
CI / test (push) Failing after 19s
- show media labels instead of raw URLs in browser notifications
- support notification icon preview for image messages
- implement effective light/dark/system theme application
- apply appearance prefs on app startup
2026-03-08 11:07:30 +03:00
663df37d92
fix(web): media preview labels and burger menu interactions
...
CI / test (push) Failing after 19s
- show emoji+media type in chat list preview
- prevent burger menu from closing immediately via event propagation
2026-03-08 11:03:16 +03:00
99e7c70901
feat: realtime sync, settings UX and chat list improvements
...
CI / test (push) Failing after 21s
- add chat_updated realtime event and dynamic chat subscriptions
- auto-join invite links in web app
- implement Telegram-like settings panel (general/notifications/privacy)
- add browser notification preferences and keyboard send mode
- improve chat list with last message preview/time and online badge
- rework chat members UI with context actions and role crowns
2026-03-08 10:59:44 +03:00
a4fa72df30
fix(web): always show media actions in context menu for media messages
CI / test (push) Failing after 20s
2026-03-08 10:40:57 +03:00
72c3b10ba5
feat(web): fullscreen media preview/viewer and fix media context menu
CI / test (push) Failing after 26s
2026-03-08 10:38:46 +03:00
a77516cfea
feat(web): sprint1 ui core with global toasts and improved chat layout
CI / test (push) Failing after 19s
2026-03-08 10:35:21 +03:00