Commit Graph

42 Commits (d688914b2864791eeadbf21c882608632875f17c)

Author SHA1 Message Date
boojack d688914b28
feat(auth): add SSO user identity linkage (#5883) 2 months ago
memoclaw 24fc8ab8ca
feat(mentions): add memo mention parsing, notifications, and rendering (#5811)
Co-authored-by: memoclaw <265580040+memoclaw@users.noreply.github.com>
2 months ago
memoclaw acddef1f3d
fix(api): switch user resource names to usernames (#5779)
Co-authored-by: memoclaw <265580040+memoclaw@users.noreply.github.com>
3 months ago
boojack 65d14fbb63
feat(instance): add canonical tag metadata setting (#5736) 3 months ago
boojack 330291d4d9
feat(user): add per-user tag metadata settings (#5735) 3 months ago
boojack 04f239a2fc
fix(api): remove public activity service (#5734) 3 months ago
Johnny 0f3c9a467d refactor: migrate HOST roles to ADMIN
- Updated the isSuperUser function to only check for ADMIN role.
- Added SQL migration scripts for MySQL, PostgreSQL, and SQLite to change user roles from HOST to ADMIN.
- Created a new SQLite migration to alter the user table structure and ensure data integrity during the migration process.
5 months ago
Steven d0c3908168 refactor: remove deprecated Sessions and AccessTokens settings
- Remove ListSessions and RevokeSession RPC endpoints
- Remove Session message and SessionsSetting from UserSetting
- Remove ACCESS_TOKENS key and AccessTokensSetting
- Update references to use RefreshTokensUserSetting with its own ClientInfo
- Remove UserSessionsSection frontend component
- Clean up user store to remove session and access token settings
- Regenerate protobuf files

The system now uses:
- REFRESH_TOKENS for session management with sliding expiration
- PERSONAL_ACCESS_TOKENS for long-lived API tokens
6 months ago
Johnny 7932f6d0d0
refactor: user auth improvements (#5360) 6 months ago
Steven 1cf047707b refactor: migrate binary file serving from gRPC to dedicated HTTP fileserver
Migrates attachment and avatar binary serving from gRPC endpoints to a new dedicated HTTP fileserver package, fixing Safari video playback issues and improving architectural separation.

Key changes:
- Created server/router/fileserver package for all binary file serving
- Removed GetAttachmentBinary and GetUserAvatar gRPC endpoints from proto
- Implemented native HTTP handlers with full range request support
- Added authentication support (session cookies + JWT) to fileserver
- New avatar endpoint supports lookup by user ID or username
- Eliminated duplicate auth constants (imports from api/v1)

HTTP endpoints:
- Attachments: /file/attachments/:uid/:filename (unchanged URL)
- Avatars: /file/users/:identifier/avatar (new URL format)

This fixes Safari video/audio playback by using http.ServeContent() which properly handles HTTP 206 Partial Content responses and range request headers.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
6 months ago
Steven bc1550e926 refactor(api): migrate inbox functionality to user notifications
- Remove standalone InboxService and move functionality to UserService
- Rename inbox to user notifications for better API consistency
- Add ListUserNotifications, UpdateUserNotification, DeleteUserNotification methods
- Update frontend components to use new notification endpoints
- Update store layer to support new notification model

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
8 months ago
Steven 9121ddbad9 feat(api): support username lookup in GetUser endpoint
- Update GetUser to accept both numeric IDs and username strings (users/{id} or users/{username})
- Implement CEL filter parsing for username-based lookups
- Update proto documentation to reflect dual lookup capability
- Simplify frontend user store to use GetUser instead of ListUsers filter
- Update ListUsers filter documentation to show current capabilities
8 months ago
Johnny e93f3cbb8b refactor: unify theme and apperance 10 months ago
johnnyjoy 506b477d50 fix: get user by username 11 months ago
Johnny 8f51791da8 chore: update user setting definition 11 months ago
johnnyjoy c5d497a1f0 chore: update user settings 11 months ago
Steven 533591af2b chore: theme in user setting 11 months ago
johnnyjoy 1fffc41f79 feat: sliding expiration for user sessions 12 months ago
Steven 83febf9928 chore: clean resource definition 12 months ago
Johnny 4e3a4e36f6 feat: implement user sessions 12 months ago
Johnny 77b7fc4441 feat: implement user session 1 year ago
Steven c9ab03e1a0 refactor: user service 1 year ago
Steven 64b27d5a4e refactor: shortcut service 1 year ago
Johnny 0dfcb1a7c8 feat: total memo count 1 year ago
Johnny 925e97882e feat: support pinned factor 1 year ago
Johnny 47b41bce85 refactor: move memo relation definition 1 year ago
johnnyjoy 6682917931 chore: add validate only to create shortcut 1 year ago
johnnyjoy 14c72fa7df feat: implement shortcuts 1 year ago
johnnyjoy 57014e392f feat: get user by username 1 year ago
johnnyjoy 5e770dda52 refactor: memo name 1 year ago
johnnyjoy c76ab87a0a refactor: update list user stats 1 year ago
johnnyjoy ee96465be0 feat: list user stats 1 year ago
johnnyjoy d050a6fd46 chore: update user stats 1 year ago
johnnyjoy 34c26a394a feat: implement user stats endpoint 1 year ago
Steven 8b7e9f5443 chore: remove unused user id 1 year ago
johnnyjoy 2a861ea430 refactor: tweak resource state in api 1 year ago
Steven f54b05a521 chore: tweak comments 2 years ago
Steven 26545c855c refactor: implement s3 storage 2 years ago
Steven 144269fbbc chore: fix router 2 years ago
Steven ff175bbb7e refactor: update resource binary request handler 2 years ago
Steven 6295979592 chore: add user avatar route 2 years ago
Steven 1b291422e7 refactor: api version 2 years ago