Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
0d5e1ab
feat(bookmarks): add message bookmarks (MSC4438) with reminder infras…
Just-Insane May 8, 2026
0a740c8
chore: replace silent catch with console.warn in BookmarksList
Just-Insane May 8, 2026
bb2574a
fix(bookmarks): use cached account-data fields as fallback when event…
Just-Insane May 11, 2026
3e55efd
feat(bookmarks): add bookmark reminders setting and per-bookmark remi…
Just-Insane May 12, 2026
50f85aa
fix(bookmarks): sidebar tab always navigates to bookmarks page
Just-Insane May 12, 2026
69234a1
fix(reminders): clear fired reminders from account data via SW message
Just-Insane May 12, 2026
04b846e
fix(bookmarks): open bookmarks panel on reminder notification tap; mi…
Just-Insane May 12, 2026
9e33537
feat(bookmarks): add reminder support to full-page bookmarks view
Just-Insane May 14, 2026
bca977e
chore(bookmarks): remove dead panel/inbox variant
Just-Insane May 14, 2026
9acba07
feat(bookmarks): show unread count for fired reminder bookmarks in si…
Just-Insane May 18, 2026
8139df1
fix(bookmarks): restore filled indicator + re-export prefix constant
Just-Insane May 15, 2026
0287138
fix(bookmarks): restore ReminderBanners, appIsVisible persistence, in…
Just-Insane May 18, 2026
51ee0e9
fix(bookmarks): only fill sidebar bookmark icon when on bookmarks page
Just-Insane May 18, 2026
c868556
fix(bookmarks): correct reminder notification routing and cleanup
Just-Insane May 18, 2026
89fabf2
fix(bookmarks): show reminder picker in local timezone
Just-Insane May 18, 2026
819dac0
fix(bookmarks): restore filled indicator + re-export prefix constant
Just-Insane May 15, 2026
a65d3d6
fix(bookmarks): only fill sidebar bookmark icon when on bookmarks page
Just-Insane May 18, 2026
f9cc2ec
fix(bookmarks): only fill icon on bookmarks page; show reminder badge…
Just-Insane May 19, 2026
0d67cc8
feat(bookmarks): add quick-pick duration presets to reminder picker
Just-Insane May 19, 2026
81ff899
Fix bookmarks file formatting
Just-Insane May 19, 2026
d8a7997
feat(bookmarks): show reminder time inline on bookmark items
Just-Insane May 19, 2026
eb82e40
fix(bookmarks): fill bookmark icon when message is already bookmarked
Just-Insane May 19, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/message-bookmarks.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
default: minor
---

Add message bookmarks (MSC4438). Users can bookmark messages for easy retrieval via a new Bookmarks section in the home sidebar. Gated by an operator `config.json` experiment flag (`experiments.messageBookmarks`) and a per-user experimental settings toggle.
11 changes: 10 additions & 1 deletion src/app/components/AccountDataEditor.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -197,8 +197,9 @@ type AccountDataViewProps = {
type: string;
defaultContent: string;
onEdit: () => void;
onDelete?: () => void;
};
function AccountDataView({ type, defaultContent, onEdit }: AccountDataViewProps) {
function AccountDataView({ type, defaultContent, onEdit, onDelete }: AccountDataViewProps) {
return (
<Box
direction="Column"
Expand All @@ -222,6 +223,11 @@ function AccountDataView({ type, defaultContent, onEdit }: AccountDataViewProps)
<Button variant="Secondary" size="400" radii="300" onClick={onEdit}>
<Text size="B400">Edit</Text>
</Button>
{onDelete && (
<Button variant="Critical" fill="Soft" size="400" radii="300" onClick={onDelete}>
<Text size="B400">Delete</Text>
</Button>
)}
</Box>
<Box grow="Yes" direction="Column" gap="100">
<Text size="L400">JSON Content</Text>
Expand All @@ -246,13 +252,15 @@ export type AccountDataEditorProps = {
type?: string;
content?: object;
submitChange: AccountDataSubmitCallback;
onDelete?: () => void;
requestClose: () => void;
};

export function AccountDataEditor({
type,
content,
submitChange,
onDelete,
requestClose,
}: AccountDataEditorProps) {
const [data, setData] = useState<AccountDataInfo>({
Expand Down Expand Up @@ -315,6 +323,7 @@ export function AccountDataEditor({
type={data.type}
defaultContent={contentJSONStr}
onEdit={() => setEdit(true)}
onDelete={onDelete}
/>
)}
</Box>
Expand Down
Loading
Loading