jared and Claude Opus 4.8
d0614710b0
feat(status): built-in and custom status presets
...
The Status Message field required typing every status from scratch. Add
a one-click preset row:
- Built-in "Quick statuses" spanning gaming, social, life and work
(Gaming, In a party, Ranked grind, AFK, Watching, In a meeting,
Working remotely, Lunch, On vacation, Out sick...), each carrying a
suggested auto-clear so a click sets the message and the timer at once.
- Custom presets: save the current status as a reusable preset, stored
in io.lotus.status_presets account data (synced across devices via the
shared account-data list store), de-duped by normalized label, capped
at 20, deletable inline.
The existing save path is factored into a shared applyStatus() used by
the Save button and by preset apply, so server writes, the status
localStorage keys, and the auto-clear expiry bookkeeping stay identical.
Ordering/de-dupe logic is pure in utils/statusPresets.ts (upsertPreset,
normalizeLabel) with unit tests; no change to the presence wire format,
expiry monitor, or presence-mode selector.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-07-09 23:30:08 -04:00
..
2026-05-21 23:30:50 -04:00
2026-02-22 15:14:04 +11:00
2026-07-07 23:24:08 -04:00
2026-05-21 23:30:50 -04:00
2026-07-07 23:14:35 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-07-02 20:20:07 -04:00
2023-06-12 16:45:23 +05:30
2026-06-02 10:34:46 -04:00
2026-05-21 23:30:50 -04:00
2024-01-21 18:20:56 +05:30
2025-07-15 22:40:16 +10:00
2024-01-21 18:20:56 +05:30
2024-01-21 18:20:56 +05:30
2026-07-07 20:28:40 -04:00
2026-07-07 23:24:08 -04:00
2026-05-23 11:26:45 -04:00
2026-06-24 08:22:01 -04:00
2026-06-12 22:20:22 -04:00
2026-06-30 22:34:17 -04:00
2026-06-30 01:33:52 -04:00
2024-06-01 00:19:46 +10:00
2026-05-21 23:30:50 -04:00
2026-05-15 13:37:03 -04:00
2026-07-07 23:32:50 -04:00
2026-05-21 23:30:50 -04:00
2025-02-10 16:49:47 +11:00
2026-05-21 23:30:50 -04:00
2026-05-22 13:24:07 -04:00
2026-06-13 18:52:23 -04:00
2026-05-21 23:30:50 -04:00
2026-06-09 22:56:06 -04:00
2025-08-13 00:12:30 +10:00
2023-10-21 12:44:21 +05:30
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-06-10 21:31:58 -04:00
2026-07-01 10:40:31 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-22 19:52:23 -04:00
2026-05-22 13:24:07 -04:00
2026-05-21 23:30:50 -04:00
2025-02-28 18:47:23 +11:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-22 17:17:26 -04:00
2024-06-01 00:19:46 +10:00
2026-05-21 23:30:50 -04:00
2023-06-12 16:45:23 +05:30
2025-08-27 22:25:49 +10:00
2026-03-09 21:39:58 +11:00
2024-06-01 00:19:46 +10:00
2026-06-03 23:15:29 -04:00
2023-06-12 16:45:23 +05:30
2026-05-21 23:30:50 -04:00
2024-09-14 18:54:06 +05:30
2024-06-01 00:19:46 +10:00
2026-07-07 23:01:39 -04:00
2025-01-26 22:53:16 +11:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-22 17:17:26 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-06-18 13:34:40 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2024-06-01 00:19:46 +10:00
2026-06-18 17:56:34 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-30 17:13:54 -04:00
2026-06-17 20:26:43 -04:00
2026-06-30 15:51:23 -04:00
2026-06-30 15:51:23 -04:00
2026-05-21 23:30:50 -04:00
2024-01-21 18:20:56 +05:30
2026-06-12 19:53:19 -04:00
2025-02-10 21:02:33 +11:00
2026-05-22 19:52:23 -04:00
2026-05-21 23:30:50 -04:00
2026-07-02 21:40:07 -04:00
2024-07-08 21:27:10 +10:00
2026-05-21 23:30:50 -04:00
2026-07-02 00:19:16 -04:00
2026-07-02 21:40:07 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-07-07 23:24:08 -04:00
2025-05-24 20:07:56 +05:30
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2025-03-23 22:09:29 +11:00
2025-03-19 23:14:54 +11:00
2026-07-07 23:32:50 -04:00
2026-05-21 23:30:50 -04:00
2025-08-13 00:12:30 +10:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-07-02 21:40:07 -04:00
2023-06-22 09:14:50 +10:00
2026-07-07 23:14:35 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2024-12-16 16:25:15 +05:30
2026-05-22 11:16:11 -04:00
2026-07-01 22:53:32 -04:00
2026-05-22 11:16:11 -04:00
2025-03-19 23:14:54 +11:00
2026-05-21 23:30:50 -04:00
2026-07-03 22:30:57 -04:00
2026-05-21 23:30:50 -04:00
2025-02-10 16:49:47 +11:00
2026-07-01 21:19:02 -04:00
2026-05-21 23:30:50 -04:00
2026-07-07 22:29:47 -04:00
2024-06-01 00:19:46 +10:00
2026-05-21 23:30:50 -04:00
2024-01-21 18:20:56 +05:30
2024-07-30 22:18:59 +10:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-07-09 23:30:08 -04:00
2026-05-21 23:30:50 -04:00
2026-07-01 09:07:03 -04:00
2026-07-01 09:07:03 -04:00
2026-07-02 20:56:27 -04:00
2026-07-01 10:01:10 -04:00
2026-07-01 09:07:03 -04:00
2026-07-01 09:07:03 -04:00
2026-07-02 20:56:27 -04:00
2026-07-01 09:07:03 -04:00
2026-07-01 10:40:31 -04:00
2026-07-01 10:01:10 -04:00
2026-07-02 20:56:27 -04:00
2026-07-01 09:07:03 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-06-28 16:47:50 -04:00
2026-07-07 23:14:35 -04:00
2026-07-01 23:43:20 -04:00
2026-05-22 13:24:07 -04:00
2026-05-21 23:30:50 -04:00
2026-05-20 21:26:18 -04:00
2026-05-21 23:30:50 -04:00
2026-07-07 23:24:08 -04:00
2026-07-02 22:57:09 -04:00
2026-05-21 23:30:50 -04:00
2026-05-21 23:30:50 -04:00
2026-05-23 12:19:06 -04:00
2026-05-21 23:30:50 -04:00
2026-05-22 13:24:07 -04:00
2023-10-06 08:14:06 +05:30