[BTAPP-47] Add quick-tag notification actions for Budgeted and Personal transactions #61

Merged
chris merged 3 commits from feature/BTAPP-47 into main 2026-07-03 09:44:57 -06:00
Owner

Ticket

BTAPP-47 Add quick-tag notification actions for "Budgeted" and "Personal" transactions

Summary

  • Registers a transaction notification category with "Tag as Budgeted" and "Tag as Personal" action buttons via setNotificationCategoryAsync on app startup.
  • Adds a addNotificationResponseReceivedListener handler in useNotifications that reads actionIdentifier and data.transactionId, fetches the transaction and recent tags in parallel, adds the matching tag, and calls POST /transaction — handling foregrounded, backgrounded, and cold-started states via Expo's JS response buffer.
  • Adds GET /transaction/:id server endpoint (using the existing TransactionService.findById) so the handler can fetch the full transaction before updating it.
  • Extends the validate middleware to support 'params' as a source, consistent with the existing body/query support.
  • Errors are logged and swallowed so a failed tag action never crashes the app.
## Ticket [BTAPP-47](http://192.168.2.100:7123/home/browse/BTAPP-47/) Add quick-tag notification actions for "Budgeted" and "Personal" transactions ## Summary - Registers a `transaction` notification category with "Tag as Budgeted" and "Tag as Personal" action buttons via `setNotificationCategoryAsync` on app startup. - Adds a `addNotificationResponseReceivedListener` handler in `useNotifications` that reads `actionIdentifier` and `data.transactionId`, fetches the transaction and recent tags in parallel, adds the matching tag, and calls `POST /transaction` — handling foregrounded, backgrounded, and cold-started states via Expo's JS response buffer. - Adds `GET /transaction/:id` server endpoint (using the existing `TransactionService.findById`) so the handler can fetch the full transaction before updating it. - Extends the `validate` middleware to support `'params'` as a source, consistent with the existing body/query support. - Errors are logged and swallowed so a failed tag action never crashes the app.
[BTAPP-47] Register notification category and handle quick-tag actions.
All checks were successful
app / check (pull_request) Successful in 22s
server / check (pull_request) Successful in 23s
plane-sync / sync (pull_request) Successful in 2s
314032045a
chris merged commit 52631b560d into main 2026-07-03 09:44:57 -06:00
chris deleted branch feature/BTAPP-47 2026-07-03 09:44:57 -06:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
chris/budget-tracker!61
No description provided.