Commit graph

46 commits

Author SHA1 Message Date
Chris
733b6cd14b
fix: use nullish coalescing for recurrence weekday to allow Sunday selection (#1014)
Fixes #812

When creating a "Monthly on weekday" recurring task, the selector would
jump back to Monday when trying to select Sunday. This was caused by using
the logical OR operator (||) instead of the nullish coalescing operator (??)
when handling the recurrence_weekday value.

Since Sunday is represented as 0, the || operator treated it as falsy and
defaulted to null/undefined, which then defaulted to 1 (Monday).

Changes:
- Replace || with ?? for recurrence_weekday in TaskRecurrenceCard.tsx
- Replace || with ?? for recurrence_weekday in TaskDetails.tsx
- Also fix recurrence_week_of_month and recurrence_month_day for consistency
2026-04-13 19:07:20 +03:00
Chris
e8c7eed226
fix: prevent subtasks from disappearing when updating parent task (#984)
This commit addresses a critical bug where subtasks would disappear when
updating the parent task (e.g., assigning tags). The issue had multiple
potential causes:

1. Backend vulnerability: The updateSubtasks() function would delete all
   subtasks if an empty array was sent, treating it as "delete everything
   not in this list"

2. Frontend state management: After reloading a task, subtasks weren't
   being preserved if the backend response didn't include them

3. Unclear error messages: "Invalid parent task" errors didn't provide
   enough context for debugging

Changes:
- Added defensive logging in updateSubtasks() to warn when all subtasks
  are being deleted with an empty array
- Enhanced validateParentTaskAccess() error messages to provide detailed
  diagnostics (task not found vs. permission issues vs. wrong user)
- Updated handleTagsUpdate() in TaskDetails to explicitly preserve
  subtasks when reloading task after tag updates

This fix is defensive in nature and adds better observability for
diagnosing similar issues in the future.

Fixes issue reported by user where subtasks disappeared after assigning
tags to parent task, and "Invalid parent task" errors occurred when
trying to update the orphaned subtasks.
2026-04-01 17:37:20 +03:00
Chris
11c3fe5e43
Fix: Resolve 20 security vulnerabilities in dependencies (#983)
* Fix critical bug causing subtasks to disappear when updating parent task

This fixes a serious bug where updating tags, priority, status, or due_date
on a parent task would inadvertently delete all its subtasks.

Root Cause:
1. Backend serializer returns `subtasks: []` when Subtasks association is not loaded
2. Frontend was spreading entire task object when updating, sending `subtasks: []`
3. Backend updateSubtasks() interpreted empty array as "delete all subtasks"

Solution:
Remove object spreading from updateTask calls. Only send the specific fields
being updated, not the entire task object.

Fixes the issue reported where assigning tags to a task caused subtasks to vanish.

Related: #TBD (GitHub issue to be created)

* fix: upgrade dependencies to resolve security vulnerabilities

- jest-environment-jsdom: 29.0.0 → 30.3.0
- nodemailer: 7.0.10 → 8.0.4
- sqlite3: 5.1.7 → 6.0.1

All npm audit vulnerabilities resolved (20 high/critical → 0).
Tests passing (1157 pass, 1 pre-existing failure unrelated to upgrades).
2026-03-28 23:37:23 +02:00
Chris
aa686702e9
Fix defer date validation for recurring task instances (#910)
* Fix defer date validation for recurring task instances

* fixup! Fix defer date validation for recurring task instances
2026-03-05 08:20:30 +02:00
Chris
0bde44e460
Fix task name not being saved for new tasks (#905) 2026-03-04 18:13:37 +02:00
Chris
b81abd9bfe
Fix abandoned 'New Task' persisting when navigating away without changes (#889) 2026-03-02 18:28:54 +02:00
Chris
a80e9b5aba
Fix redirect after task deletion to return to originating view (#887) 2026-03-01 16:07:02 +02:00
Chris
6e3b1b4099
Fix tag validation error messages not shown to user (#861) 2026-02-24 14:49:49 +02:00
Chris
d127070f76
Auto focus on new task (#856)
* Auto focus on new task

* fixup! Auto focus on new task
2026-02-24 12:28:19 +02:00
Chris
d5d8b8f1a7
Fix date comparison bugs causing false past due warnings and Today view miscategorization (#826) 2026-02-07 22:40:33 +02:00
Chris
f562101ca5
Fix subtasks dissapearing issue (#811) 2026-02-01 14:16:04 +02:00
Chris
2f13d0d4a7
Fix saving subtasks on edit (#806) 2026-01-31 08:29:44 +02:00
Chris
5dbf12be98
Fix task detail status change (#789) 2026-01-22 18:53:46 +02:00
Chris
b4de9c23eb
Fix recurrence occurences (#750) 2025-12-29 12:13:08 +02:00
Chris
3f37113a2c
Add tooltips (#744) 2025-12-28 12:03:50 +02:00
Chris
e73c354e7e
Fix bug 733 (#735)
* Refactor today

* fixup! Refactor today

* fixup! fixup! Refactor today
2025-12-27 21:00:52 +02:00
Chris
ad8ab3ec72
Fix refactor pt2 (#734)
* Cleanup task routes

* Cleanup frontend tasks

* Clean tasks

* Cleanup project uid

* Cleanup quick capture old modal

* Cleanup taskmodal

* Move all icons to shared components

* Test inbox flow

* fixup! Test inbox flow
2025-12-27 17:46:34 +02:00
Chris
4d2ea4212c
Cleanup statuses (#724)
* Cleanup statuses

* Add more statuses

* Hide buttons

* fixup! Hide buttons

* Show subtasks on click

* Fix status button in taskdetails page

* fixup! Fix status button in taskdetails page

* fixup! fixup! Fix status button in taskdetails page

* Fix today planned query
2025-12-19 11:13:27 +02:00
Chris
b0b613f7bd
Reorder elements (#687)
* Reorder elements

* Enhance global search
2025-12-09 10:51:51 +02:00
Chris Veleris
eb0f2e603e Fix attachments layout 2025-12-07 14:12:38 +02:00
Chris Veleris
c5851ea38b Add file attacmhments 2025-12-07 14:12:38 +02:00
Chris
9665ba1f62
Feat refactor task details (#660)
* Move elements to tabs

* Add priority

* Fix priority

* Priority mobile fix

* fixup! Priority mobile fix

* fixup! fixup! Priority mobile fix

* fixup! fixup! fixup! Priority mobile fix

* fixup! fixup! fixup! fixup! Priority mobile fix
2025-12-06 09:41:58 +02:00
Chris
cd6b810b08
Fix recurring structure (#646)
* Refactor recurring

* fixup! Refactor recurring

* Add after completion tests

* fixup! Add after completion tests

* fixup! fixup! Add after completion tests
2025-12-04 13:29:37 +02:00
Chris
fcaf9a9a4d
Fix bug 613 (#638)
* Fix missing project meta

* fixup! Fix missing project meta

* fixup! fixup! Fix missing project meta

* fixup! fixup! fixup! Fix missing project meta
2025-12-03 12:58:24 +02:00
Chris
bfeffa069f
Fix an issue with task not completing in TaskDetails view (#620)
* Fix test issues

* Fix uid issue

* Fix id wrong param

* Fix test issues

* fixup! Fix test issues

* fixup! fixup! Fix test issues

* fixup! fixup! fixup! Fix test issues

* fixup! fixup! fixup! fixup! Fix test issues
2025-11-30 14:51:49 +02:00
Chris
b2a5a4c63e
Feat add defer until date (#592)
* Add defer until datetime

* fixup! Add defer until datetime

* fixup! fixup! Add defer until datetime

* fixup! fixup! fixup! Add defer until datetime

* fixup! fixup! fixup! fixup! Add defer until datetime

* fixup! fixup! fixup! fixup! fixup! Add defer until datetime

* fixup! fixup! fixup! fixup! fixup! fixup! Add defer until datetime
2025-11-24 21:57:30 +02:00
Chris
75a1e68730
Tc refactor pt1 (#589)
* Refactor ProfileSettings

* Cleanup comments

* Refactor TaskDetails

* Refactor InboxModal

* fixup! Refactor InboxModal

* Fix project layout

* Add visuals to project details

* Refactor projectdetails

* Remake project metrics

* Complete project details refactor

* Fix note issues and enhance view

* Add filters

* Fix project tasks filters

* Add filters to task lists

* Add filters to task lists

* fixup! Add filters to task lists
2025-11-23 21:48:49 +02:00
Chris
8dc6194c80
Feat improve task details (#585)
* Fix project section

* Add project and tags sections

* Enhance task details page and add translations

* Enhance Task Details page

* Enhance project details page

* Note details page fix

* Enhance Views Tags Search

* Search enhancements

* fixup! Search enhancements
2025-11-21 18:43:10 +02:00
Chris
eb10ea8355
Fix redesign recurring tasks (#582)
* Break down TaskModal

* Fix an issue with counting past times

* Add daily reccurence on week

* fixup! Add daily reccurence on week

* fixup! fixup! Add daily reccurence on week

* Improve recurring widget on task page

* fixup! Improve recurring widget on task page
2025-11-19 17:03:26 +02:00
Chris
b0041bafe1
Fix today recurring missing (#548)
* Expose today task from a recurring series

* fixup! Expose today task from a recurring series

* fixup! fixup! Expose today task from a recurring series
2025-11-16 18:00:39 +02:00
Antonis
c9f7fbb522
Fix notes.js & areas.js UID usage and remove IDs. (#355)
* Add logging placeholder functions, fix notes.js uids

* Fix areas.js uids and remove ids

* Add UIDs to inbox items. Includes migration.

* id -> uid for task-events.js

---------

Co-authored-by: antanst <>
2025-09-29 16:03:46 +03:00
Antonis
70956f9ecd
Change tags to use uids instead of ids. (#351)
* Small cleanups

* Change tags to use uid instead of id.

---------

Co-authored-by: antanst <>
2025-09-22 17:10:29 +03:00
Chris Veleris
175c6a1d7e Remove duplicate toaster 2025-09-18 12:57:28 +03:00
Chris Veleris
a4e2a97cb1 Fix test issues 2025-08-18 17:12:12 +03:00
Chris Veleris
dbe724f1a7 Fix an issue with subtasks not showing on project details list 2025-08-18 17:12:12 +03:00
Chris Veleris
f91b375079 Refactor Upcoming section and recurring setup 2025-08-13 19:00:37 +03:00
Chris Veleris
066820418d Convert upcoming view by day 2025-08-13 19:00:37 +03:00
antanst
6cf79c322d Update frontend to use UID-based routing
- Update all entities to include UID field
- Convert components to use UID for navigation and links
- Update services to support UID-based API calls
- Add slug utilities for UID extraction
- Update store to handle UID fields
- Fix routing throughout all components
2025-08-06 15:54:45 +03:00
Chris Veleris
3599bc2b60 Add nanoid 2025-08-04 23:50:53 +03:00
Chris Veleris
e590fec7aa Fix layout view in today 2025-08-04 23:50:53 +03:00
Chris Veleris
a326e0f3b2 Fix an issue with taskmodal refreshing page 2025-08-04 23:50:53 +03:00
Chris Veleris
9d8542aa1e Fix an issue with taskmodal refreshing the page 2025-08-04 23:50:53 +03:00
Chris Veleris
62b2143689 Improve task page 2025-08-04 23:50:53 +03:00
Chris Veleris
a9fa67d616 Fix an issue with Enter not saving task 2025-08-04 23:50:53 +03:00
Chris Veleris
40cd82a2e6 Update detailed view for tasks 2025-08-04 23:50:53 +03:00
Chris Veleris
5694df4adf Split screen 2025-08-04 23:50:53 +03:00