Commit Graph

2537 Commits (47ebb04dc3231498e4340f648111067c83730571)

Author SHA1 Message Date
Johnny 47ebb04dc3 refactor: remove mode flag and introduce explicit demo flag 5 months ago
Johnny dc7ec8a8ad feat: allow setting custom timestamps when creating memos and comments
Allow API users to set custom create_time, update_time, and display_time
when creating memos and comments. This enables importing historical data
with accurate timestamps.

Changes:
- Update proto definitions: change create_time and update_time from
  OUTPUT_ONLY to OPTIONAL to allow setting on creation
- Modify CreateMemo service to handle custom timestamps from request
- Update database drivers (SQLite, MySQL, PostgreSQL) to support
  inserting custom timestamps when provided
- Add comprehensive test coverage for custom timestamp functionality
- Maintain backward compatibility: auto-generated timestamps still
  work when custom values are not provided
- Fix golangci-lint issues in plugin/filter (godot and revive)

Fixes #5483
5 months ago
Johnny 253e79c111 style: remove unnecessary font-weight classes for cleaner UI 5 months ago
Steven 73c301072b refactor: simplify editor scroll logic
- Extract `scrollToCaret` helper to deduplicate scroll logic
- Unify precise scroll behavior for both manual triggers and auto-scroll
5 months ago
Steven 4e34ef22bf fix: improve editor auto-scroll and Safari IME handling (#5469)
- Use `textarea-caret` for precise cursor position calculation instead of line approximation
- Update `scrollToCursor` to scroll to the actual cursor position
- Fix Safari double-enter issue with IME in list completion
5 months ago
Steven 61dbca8dc2 fix: prevent browser cache from serving stale memo data (#5470)
This fixes a critical data loss issue where users editing the same memo
on multiple devices would overwrite each other's changes due to aggressive
browser caching, particularly in Chromium-based browsers and PWAs.

Changes:
- Backend: Add Cache-Control headers to all API responses to prevent
  browser HTTP caching
- Frontend: Force fresh fetch from server when opening memo editor by
  invalidating React Query cache
- Frontend: Reduce memo query staleTime from 60s to 10s for better
  collaborative editing support

Fixes #5470
5 months ago
Johnny 8f9ff5634c chore: remove redundant icon 5 months ago
Johnny 9a3451b9d1 fix(editor): filter RelationList to only show referencing memos
- Filter out COMMENT type relations, only show REFERENCE type
- When editing a memo, only show relations where current memo is the source
- Pass memoName through EditorMetadata to RelationList for filtering
5 months ago
Jongho Hong 07eac279d0
chore(i18n): add missing Korean translations (#5456)
Signed-off-by: Jongho Hong <myodan@pm.me>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
5 months ago
Om vataliya 013ea52519
fix: apply theme and locale changes immediately on login screen (#5440) (#5442) 6 months ago
Johnny 9ccb658768 fix: sign up redirect 6 months ago
Johnny 1f755f74a4 fix(web): make login screen theme selector reactive
This fixes an issue where the theme selector on the login screen would not update its display value after selection because the component was not re-rendering. Added local state to track the current theme. Validated that this pattern is unique to the unauthenticated context.
6 months ago
Faizaan pochi 874a4a7142
fix: KaTeX math rendering with underscores (#5438) 6 months ago
Steven 62646853eb chore: tweak comments display 6 months ago
Steven ed66e0fec2 chore: fix linter 6 months ago
Steven 5a8e1845e2 fix: reaction button in mobile view 6 months ago
Johnny d68ca84832 fix: delete unused attachments by using filter 6 months ago
Johnny 4b110d0d38 fix: cursor position after slash commands 6 months ago
Steven 15646a8989 chore: fix linter 6 months ago
Steven e268a1fe9c chore: tweak memo content renderer 6 months ago
Steven ac37738148 fix: default visibility setting 6 months ago
lif cbbb585b2e
fix(frontend): ensure attachments are properly linked when creating memos (#5428)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
6 months ago
Sheep-realms b7b658358e
chore: update simplified chinese localization (#5422) 6 months ago
Roman Teitge 8cf99f5200
Update german translations (#5419)
Signed-off-by: Roman Teitge <83205200+rteitge@users.noreply.github.com>
6 months ago
Steven 06d1c60aaf chore: tweak domain format 6 months ago
Johnny d2b421213f chore: optimize RelationList and unify RelationCard usage 6 months ago
Johnny 77e9376e03 chore: improve metadata section UI consistency and maintainability 6 months ago
Johnny 5612fb8f41 feat: add HDR image and video support
- Add HDR detection utilities for wide color gamut formats (HEIC, HEIF, WebP)
- Apply colorSpace attribute to image/video elements for HDR-capable files
- Update frontend components (AttachmentCard, PreviewImageDialog, AttachmentList)
- Expand backend thumbnail generation to support HEIC, HEIF, WebP formats
- Add Color-Gamut response headers to advertise wide gamut support
- Extend avatar MIME type validation for HDR formats

Supported formats:
- Images: HEIC, HEIF, WebP, PNG, JPEG
- Videos: MP4, QuickTime, Matroska, WebM (VP9 Profile 2)

Browser support:
- Safari 14.1+, Chrome 118+, Edge 118+
- Gracefully degrades to sRGB on unsupported browsers
6 months ago
Johnny e761ef8684 chore: move memo-metadata components to MemoView and MemoEditor
- Remove shared memo-metadata folder
- Move metadata display components (AttachmentList, LocationDisplay, RelationList) to MemoView/components/metadata
- Move attachment types and utilities (LocalFile, AttachmentItem, toAttachmentItems) to MemoEditor/types/attachment
- Simplify AttachmentList and AttachmentCard to work directly with Attachment proto
- Update all imports across MemoEditor and MemoView components
- Better separation of concerns: MemoView handles display, MemoEditor handles local files + attachments
6 months ago
Johnny a6e8ba7fb2
refactor: consolidate MemoEditor components (#5409) 6 months ago
Guillaume e85a3da899
chore: add missing French locale translations (#5405)
Co-authored-by: Guillaume Reichenbach <guillaume.reichenbach@reflet-digital.com>
6 months ago
Lynchi 7b35a2672f
chore: unify the Chinese localization of ellipsis (#5404)
Signed-off-by: Lynchi <77619755+Linqi1234@users.noreply.github.com>
6 months ago
Johnny d2acebcc53 fix: auth checks in reaction selector 6 months ago
Johnny ef8e3cfb99 chore: remove unused keyboard shortcuts 6 months ago
Johnny 02f39c2a59 refactor: replace generic LeafletMap with dedicated LocationPicker 6 months ago
Johnny bd02de9895
chore: add store tests (#5397) 6 months ago
Johnny 12f32acd09 chore: remove dnd-kit dependencies 6 months ago
Johnny be1b758d30 refactor: simplify memo-metadata components 6 months ago
Johnny d7284fe867 refactor: nest reaction resource names under memos 6 months ago
Johnny d55af9b527 refactor: standardize loading indicators by using Spinner for route fallbacks and specializing Skeleton for memo lists 6 months ago
Johnny 61e94e8b08 refactor: replace i18n language change with loadLocale 6 months ago
Johnny 0735c11d75 feat: implement memo map in user profile 6 months ago
Johnny f416eb00b0 refactor(web): simplify Skeleton component structure 6 months ago
Johnny b826e90276 refactor: polish ActivityCalendar components with modern design 6 months ago
Johnny 5d677828a6 refactor: remove NSFW content settings from instance configuration 6 months ago
Johnny 96a91ebff0 chore: add week days to calendar 6 months ago
Johnny ea3371badb chore: add ActivityCalendar components 6 months ago
Johnny 78aa41336a feat: implement attachment filtering functionality 6 months ago
Johnny 955ff0cad6 refactor: optimize user fetching in MemoCommentMessage and MemoReactionListView components 6 months ago
Johnny 115d1bacd7 refactor: replace MemoSkeleton with a new Skeleton component for improved loading states 6 months ago