- Added search input for filtering posts by keywords.
- Implemented pagination controls for navigating through posts.
- Introduced order selector for sorting posts based on various criteria.
- Enhanced post item display with additional metrics (view count, like count, comment count).
- Added dropdown menu for post actions (edit, view, toggle privacy, delete).
- Integrated double confirmation for delete action.
- Updated user profile to support background image upload.
- Improved user security settings with better layout and validation.
- Refactored auth context to use useCallback for logout function.
- Added command palette component for improved command execution.
- Introduced popover component for better UI interactions.
- Implemented debounce hooks for optimized state updates.
- Updated localization files with new keys for improved internationalization.
- Added tailwind configuration for styling.
- Introduced new CSS files for rose, violet, and yellow themes with custom color variables.
- Implemented dark mode styles for each theme.
- Created a color data structure to manage theme colors in the console settings.
feat: implement image cropper component
- Added an image cropper component for user profile picture editing.
- Integrated the image cropper into the user profile page.
feat: enhance console sidebar with user permissions
- Defined sidebar items with permission checks for admin and editor roles.
- Updated user center navigation to reflect user permissions.
feat: add user profile and security settings
- Developed user profile page with avatar upload and editing functionality.
- Implemented user security settings for password and email verification.
feat: create reusable dialog and OTP input components
- Built a dialog component for modal interactions.
- Developed an OTP input component for email verification.
fix: improve file handling utilities
- Added utility functions for file URI generation.
- Implemented permission checks for user roles in the common utilities.
fix: Update Gravatar URL size and improve avatar rendering logic
style: Adjust footer margin for better layout consistency
refactor: Remove old navbar component and integrate new layout structure
feat: Enhance user profile page with user header component
chore: Remove unused user profile component
fix: Update posts per page configuration for better pagination
feat: Extend device context to support system theme mode
refactor: Remove unused device hook
fix: Improve storage state hook for better error handling
i18n: Add new translations for blog home page
feat: Implement pagination component for better navigation
feat: Create theme toggle component for improved user experience
feat: Introduce responsive navbar or side layout with theme toggle
feat: Develop custom select component for better UI consistency
feat: Create user header component to display user information
chore: Add query key constants for better code maintainability
- Renamed `orderedBy` to `orderBy` and `reverse` to `desc` in ListPostsParams interface and related functions.
- Updated all usages of the sorting parameters in the post listing logic to reflect the new naming convention.
feat: add user-related API functions
- Implemented `getLoginUser` and `getUserById` functions in the user API to fetch user details.
- Enhanced user model to include `language` property.
feat: integrate next-intl for internationalization
- Added `next-intl` plugin to Next.js configuration for improved localization support.
- Removed previous i18n implementation and replaced it with a new structure using JSON files for translations.
- Created locale files for English, Japanese, and Chinese with basic translations.
- Implemented a request configuration to handle user locales and messages dynamically.
fix: clean up unused imports and code
- Removed unused i18n utility functions and language settings from device context.
- Cleaned up commented-out code in blog card component and sidebar.
chore: update dependencies
- Added `deepmerge` for merging locale messages.
- Updated package.json and pnpm-lock.yaml to reflect new dependencies.