feat: Enhance UserPoints component with improved filtering and layout

- Updated UserPoints component to include a more user-friendly filter bar with enhanced styling.
- Added a summary section to display the current filter context.
- Refactored user selection and time period filtering logic for better clarity and performance.
- Improved the layout of points cards and history sections for better visual hierarchy.
- Integrated a bar chart for visual representation of points over time.
- Updated redeem points functionality with better user feedback.

feat: Add keyboard shortcuts in AddTaskModal for improved usability

- Implemented keyboard shortcuts for adding descriptions, subtasks, and due dates.
- Enhanced user experience by providing visual hints for keyboard shortcuts.
- Refactored task creation logic to streamline the process.

fix: Refactor ChoreActionMenu to handle mouse events and improve accessibility

- Added mouse enter and leave event handlers for better interaction feedback.
- Adjusted menu positioning for improved usability.

refactor: Update RichTextEditor to support focus handling from parent components

- Converted RichTextEditor to use forwardRef for better integration with parent components.
- Exposed focus and blur methods for external control.
- Improved image upload handling with better error management.

fix: Adjust SubTask component to handle Enter key behavior correctly

- Modified key event handling to prevent unintended task creation when holding meta or ctrl keys.
- Added autoFocus prop to new task input for better user experience.
This commit is contained in:
Mo Tarbin
2025-07-11 20:10:28 -04:00
parent c2f5569010
commit 953c62cc66
42 changed files with 6262 additions and 1887 deletions

View File

@@ -184,8 +184,8 @@ function SortableItem({
value={editedText}
onChange={e => setEditedText(e.target.value)}
onBlur={handleSave}
onKeyPress={e => {
if (e.key === 'Enter') {
onKeyDown={e => {
if (!(e.metaKey || e.ctrlKey) && e.key === 'Enter') {
handleSave()
}
}}
@@ -308,6 +308,7 @@ const SubTasks = ({
tasks = [],
setTasks,
performers,
shouldFocus = false,
}) => {
const [newTask, setNewTask] = useState('')
const { data: userProfile } = useUserProfile()
@@ -501,6 +502,7 @@ const SubTasks = ({
{editMode && (
<ListItem sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>
<Input
autoFocus={shouldFocus}
placeholder='Add new task...'
value={newTask}
onChange={e => setNewTask(e.target.value)}