95 Commits

Author SHA1 Message Date
Stanko K.R. 36ee253a1a Stack notifications everywhere
We had client-side notification stacking in the tray since launch, but now we want to stack notifications in the notifications page, in API responses and in email bundles.
2026-02-12 10:29:50 +01:00
Jason Zimdars ad7eb594d3 Match copy coming in #1663 2025-11-20 21:31:40 -06:00
Jorge Manrubia c052839bd6 Removed quotes since we were not using them 2025-11-20 21:37:41 +01:00
Jorge Manrubia baadd484b4 Review triage 2025-11-20 21:28:41 +01:00
Jorge Manrubia 3f21ea2329 Revert "Revert "Add more detail to events summaries"" 2025-11-20 21:12:41 +01:00
Jorge Manrubia 7200af879f Revert "Add more detail to events summaries" 2025-11-20 21:12:10 +01:00
Jorge Manrubia a48aa84f11 Remove legacy event 2025-11-20 21:11:02 +01:00
Jorge Manrubia 93a80ab8c2 Add more detail to events 2025-11-20 21:07:55 +01:00
Mike Dalessio 2cb050af33 Missed a few changes in a rebase somewhere
This changeset now matches plan-b commit 609a0041
2025-11-17 09:19:46 -05:00
Jorge Manrubia eea9afb639 Fix: dismiss grouped notifications by card from the notifications tray
This also splits the templates into two: index and tray, since the URL now changes.
2025-11-14 12:58:24 +01:00
Jason Zimdars 3625585a9d Adjust unread indicator to include unread count 2025-11-12 11:15:25 -06:00
Jason Zimdars 4080b742ca Merge branch 'main' into unique-notifications 2025-11-12 10:06:47 -06:00
Jason Zimdars 24cb40d917 Close stack on click 2025-11-10 18:43:35 -06:00
Jorge Manrubia b5c25cce2b Redundant concat 2025-11-02 00:06:23 +01:00
Jorge Manrubia b21f6e1a6e Group notifications for the same card as they show up 2025-11-01 17:31:48 +01:00
Andy Smith b2a83f1625 Add Basecamp-style boosts 2025-10-27 16:59:57 -05:00
Andy Smith 6b0fc35627 Revert "Reactions" 2025-10-27 16:16:57 -05:00
Andy Smith a742ed65ff Use new icons 2025-10-27 14:10:47 -05:00
Jason Zimdars 8ca9e80c6c Settle on "Moved to Done" 2025-10-17 16:56:26 -05:00
Jason Zimdars da413e7540 Remove closure reasons 2025-10-15 16:15:56 -05:00
Jorge Manrubia d533f05c7b Use vanilla resources for handling notifications 2025-09-10 09:17:57 +02:00
Jorge Manrubia cb67352275 Don't render HTML stripping the tags for comment bodies, use to_plain_text instead
This will prevent error when generating notification bundles such as:

Type	ActionView::Template::Error
Message	undefined method 'rails_blob_path' for an instance of #<Class:0x00007fbb7e0c2a88>

We could just use the _url variant but this feels better nevertheless
2025-09-08 08:41:18 +02:00
Jorge Manrubia 2adb4571e1 Copy 2025-08-28 12:03:49 +02:00
Jorge Manrubia 53144a379c Add option to change the bundled email notification frequency 2025-08-28 11:56:40 +02:00
Andy Smith c354ac4ac2 Fox wonky notification position 2025-08-19 10:33:36 -05:00
Jason Zimdars 133ef1405d Navigate the notifications list on the Index 2025-07-29 17:27:29 -05:00
Jason Zimdars 8c9d7d9d91 Update badge counts clientside because we can't count on pushes to remove badges 2025-07-24 14:43:51 -05:00
Jason Zimdars 046d66fbed Consistent with Mark as read 2025-07-23 17:45:12 -05:00
Jason Zimdars 250d38768f Rename helper since it now handles both actions 2025-07-23 17:44:52 -05:00
Jason Zimdars db92de7a27 data-controller = form needs to be on the form or it causes errors
- The whole reason we're using `form.submit` here is to prevent clicks on the card link
2025-07-23 17:43:15 -05:00
Jason Zimdars 4276aad5a7 Mark notifications as unread from the index 2025-07-23 17:01:59 -05:00
Mike Dalessio 3156fbd770 Fix notification rendering on card closure events
where the closure no longer exists, possibly due to being
reopened.

Previously, fragment caching generally prevented any problems, but if
the cache is busted for any reason (like Andy did in c7eeb56c), then
the previous logic would raise an exception like "undefined method
'reason' for nil".

So, if the closure no longer exists, let's just note that it was
closed, and by who.
2025-06-30 23:45:53 -04:00
Jason Zimdars 5163382bee Avoid visits to the card when marking as read 2025-06-19 15:02:24 -05:00
Jason Zimdars 538102419d Inline unread indicator so it aligns reliably 2025-06-17 14:14:29 -05:00
Jason Zimdars 23439509c5 Add meta to collection notification line, adjust content 2025-06-16 19:27:51 -05:00
Jason Zimdars 65d9ef25b4 Don't close notifications panel when navigating
- Allows you to power through them
2025-06-11 17:45:24 -05:00
Jorge Manrubia 84fdeb4a5e Track events when reopening cards 2025-06-04 17:18:01 +02:00
Jason Zimdars 8072a74562 event.assignees collection doesn't include event.creator when self-assigning 2025-06-02 22:37:58 -05:00
Jorge Manrubia fa04016cbe Revert "Revert "Replace House with Lexical"" 2025-05-29 14:25:16 +02:00
Jorge Manrubia 08d8b2e5ff Revert "Replace House with Lexical" 2025-05-29 14:22:27 +02:00
Jorge Manrubia 10b2aad647 Replace House with lexical-powered actiontext 2025-05-23 11:41:08 +02:00
Jason Zimdars 684f77c687 Can just inline this now 2025-05-21 15:45:52 -05:00
Mike Dalessio ecbe040e3e Implement Notification#card
Models now know how to find their cards, rather than trying to
implement this logic in a view helper.
2025-05-21 16:30:18 -04:00
Jason Zimdars 6ab166b439 We need to set card color on the notification 2025-05-21 14:29:43 -05:00
Jason Zimdars ccc83a9916 Some eventables are comments so we need to get to card.closed? via a different method 2025-05-21 14:07:25 -05:00
Jason Zimdars 92b4746edb Color closed notifications, too 2025-05-21 13:58:02 -05:00
Andy Smith 04d01d7d10 Merge notification styles into a card variant 2025-05-20 13:50:53 -05:00
Andy Smith 900fbef686 Add card header to notifications 2025-05-19 15:20:56 -05:00
Mike Dalessio c2c4def3b4 Ensure that cards with an empty title aren't mysterious in notifs
Use something like "Card 55" instead of it being blank or raising an exception.
2025-05-07 15:57:55 -04:00
Jason Zimdars c2a563c699 Need to name the assignee(s) 2025-05-06 15:45:28 -05:00