Commit Graph

375 Commits

Author SHA1 Message Date
admin 07658071f2 fix(chat): reset input lift after keyboard closes 2026-06-24 16:35:42 +08:00
admin b489e50e3e fix(chat): disable keyboard adaptation in regular browsers 2026-06-24 16:18:53 +08:00
admin a68dfbfa99 fix(chat): allow Xiaomi Facebook keyboard fallback 2026-06-24 16:14:10 +08:00
admin 3624c08387 chore(chat): log keyboard adaptation diagnostics 2026-06-24 16:00:21 +08:00
admin 890eedf7d9 fix(chat): release keyboard fallback on close 2026-06-24 15:48:29 +08:00
admin a229dcf7d1 fix(chat): scope keyboard fallback to Xiaomi Facebook IAB 2026-06-24 15:40:16 +08:00
admin 08c954903f fix(chat): improve in-app keyboard avoidance 2026-06-24 15:13:11 +08:00
admin 853ae776f9 fix(chat): adapt input bar to soft keyboard in FB in-app browser
FB IAB on Xiaomi (and similar WebViews that don't shrink 100dvh) keeps
the chat input covered by the soft keyboard. Fix by writing the
visualViewport-derived keyboard height to a CSS variable on <html> and
consuming it as padding-bottom on the chat input bar.

- Add useKeyboardHeight hook (visualViewport + rAF batching, no re-renders)
- Apply --keyboard-height + env(safe-area-inset-bottom) to .bar padding
- Add scrollIntoView on textarea focus so the input stays visible
- Add viewportFit: cover so safe-area-inset-bottom is reported
2026-06-24 14:13:18 +08:00
admin 42c03f8901 feat(chat): migrate chat protocol to lock detail 2026-06-24 14:06:30 +08:00
admin c280a3c1ea chore(app): add lan dev script 2026-06-24 12:05:27 +08:00
admin 6180a8a515 feat(chat): blur locked image previews 2026-06-24 11:53:20 +08:00
admin 57e4add7a4 style(sidebar): refine action buttons 2026-06-24 11:35:15 +08:00
admin 3e766a0ecd fix(chat): preserve private send response fields 2026-06-24 11:02:15 +08:00
admin f80b5215a9 feat(chat): log websocket traffic 2026-06-24 10:48:36 +08:00
admin a571867620 fix(chat): hide text for ai image messages 2026-06-24 10:19:30 +08:00
admin bfbf7ee91a feat(app): improve payment and paywall UX 2026-06-24 10:02:22 +08:00
admin 6c25a24440 feat(config): add new image hosting configuration for picui 2026-06-23 18:58:40 +08:00
admin 25b786bcad fix(chat): omit websocket token in development 2026-06-23 18:35:15 +08:00
admin 18617ac7e5 refactor(payment): remove websocket event dto 2026-06-23 18:11:26 +08:00
admin a47038c46f fix(payment): guard ezpay redirect persistence 2026-06-23 17:59:16 +08:00
admin 05821d9a29 fix(chat): prompt guests to log in at quota limit 2026-06-23 17:41:07 +08:00
admin 9874cadb49 style(subscription): limit visible plan cards 2026-06-23 17:40:50 +08:00
admin 3e148f5c0d style(subscription): update payment section spacing 2026-06-23 16:55:34 +08:00
admin b40e6476bf refactor(subscription): move subscription helper functions to a separate file 2026-06-23 16:13:01 +08:00
admin a26dbec873 style(subscription): adjust agreement label font size to 12px 2026-06-23 15:48:27 +08:00
admin 24e52d6ead fix(payment): support updated plan pricing fields 2026-06-23 15:47:09 +08:00
admin c5eca65303 style(subscription): adjust back button spacing 2026-06-23 15:28:29 +08:00
admin f14b8a48d2 fix(chat): handle guest total limit 2026-06-23 15:14:17 +08:00
admin cb7087f8ad chore(chat): add mock fixtures 2026-06-23 14:54:24 +08:00
admin 7dd4878d7d fix(chat): constrain auth state transitions 2026-06-23 14:10:59 +08:00
admin ebd44c4980 feat(chat): add private message unlock flow 2026-06-23 13:21:57 +08:00
admin c9d75b6fe6 Revert "feat(observability): add sentry monitoring"
This reverts commit e21f2502a5.
2026-06-23 11:51:23 +08:00
admin e21f2502a5 feat(observability): add sentry monitoring 2026-06-23 11:42:33 +08:00
admin 6bcc070ba1 refactor(chat): rely on server message limits 2026-06-23 11:20:48 +08:00
admin d81abd6efd feat(chat): support ai photo viewing 2026-06-23 10:34:02 +08:00
admin cebc8f7443 feat(chat): expand empty input actions 2026-06-22 19:14:27 +08:00
admin e68cabdc54 fix(payment): confirm ezpay redirect before opening 2026-06-22 18:59:01 +08:00
admin 9a65f2f9ad feat(chat): toggle send button icon by input content 2026-06-22 18:58:57 +08:00
admin 031bad376f fix(subscription): increase EZPAY development redirect delay to 10 seconds 2026-06-22 18:53:49 +08:00
admin 41b9a49c74 copy(chat): update input placeholder 2026-06-22 18:48:36 +08:00
admin 9a3c8f0d12 fix(payment): allow renewing active subscriptions 2026-06-22 18:48:21 +08:00
admin 2cfbaba058 fix(payment): resume ezpay orders only after return 2026-06-22 18:23:59 +08:00
admin 27021f9328 fix(chat): normalize message date headers 2026-06-22 18:23:50 +08:00
admin 0b8bae5e5f fix(payment): enable ezpay debug delay outside production 2026-06-22 18:10:27 +08:00
admin 01ef89452d Revert "fix(payment): allow new orders after paid state"
This reverts commit c6b65f0b3a.
2026-06-22 18:09:54 +08:00
admin c6b65f0b3a fix(payment): allow new orders after paid state 2026-06-22 18:00:54 +08:00
admin dd95dd8a26 chore(payment): update ezpay dev redirect notice 2026-06-22 17:37:53 +08:00
admin 21b9954351 feat(payment): restore ezpay return orders 2026-06-22 17:31:04 +08:00
admin 890c955712 fix(payment): support ezpay cashier urls 2026-06-22 16:35:06 +08:00
admin 5ed43a37ce feat(subscription): add payment channel selector 2026-06-22 16:14:34 +08:00