Commit Graph

81 Commits

Author SHA1 Message Date
Jason Zimdars 000bd158eb Reactions on comments 2025-02-18 17:08:56 -06:00
Jason Zimdars 3e5b531d12 Extract into a single-purpose controller 2025-02-13 17:40:18 -06:00
Jason Zimdars ddfaf8bf33 Paste files in the new editor 2025-02-13 17:04:43 -06:00
Kevin McConnell cd9fce9b89 Add auto-save to the draft comment field 2025-02-13 15:16:42 +00:00
Kevin McConnell dac2611c57 Auto-pop bubbles 2025-02-12 13:20:05 +00:00
Kevin McConnell 4121f68f7d Auto-save edits to bubble title 2025-02-11 14:34:39 +00:00
Kevin McConnell 7189e7a39e Periodically refresh relative times
Otherwise the text will get out of date. For example, a new notification
will say "Less than a minute ago", which is not true for very long if
the page isn't refreshed.
2025-02-05 15:18:40 +00:00
Jason Zimdars 6f351b956c Allow pasting files in comments 2025-01-31 18:07:12 -06:00
Kevin McConnell b320b72bc6 Use local time helper for comment dates
Also has the advantage you can hover to see the time.
2025-01-30 17:10:58 +00:00
Kevin McConnell d248bd6323 Clear Activity highlights on back navigation
Also small refactor of the controller.
2025-01-29 18:00:21 +00:00
Jason Zimdars 4827cb3a30 Refactor using more Stimulus-y conventions 2025-01-28 20:07:45 -06:00
Jason Zimdars 367a618064 When you hover a chip, highlight all the other chips about that bubble for that day 2025-01-28 18:02:32 -06:00
Kevin McConnell bfaac4bd44 Render activity directly into requested timezone 2025-01-27 15:41:01 +00:00
Kevin McConnell 94b2c256b9 Set request timezone to match browser 2025-01-27 14:16:15 +00:00
Jason Zimdars 881e1d07fc Merge branch 'main' into latest-activity
* main: (27 commits)
  Leave some space for the tray
  Let's not assume it's a due date
  Avoid overlap
  Let's try without the big drag button, extend beyond the column a touch
  Tighten labels
  Match notification dot
  Spacing
  Add more context
  Avoid leaving the tray open
  This shouldn't be here
  Paginate the read notifications
  Add a test case
  Split up a big view
  Allow filtering by stage
  Send beacon request on disconnect as well
  Wire up notifications "Mark all as read" button
  Add unread dot
  Set state for when there are no new notifications
  Move to right side, smooth transition
  Open tray on click, stub mark-as-read button
  ...
2025-01-24 15:07:17 -06:00
Kevin McConnell 1f3bc1134f Paginate the read notifications 2025-01-24 17:42:36 +00:00
Kevin McConnell 2cd2d5e2a1 We're not using the future class now 2025-01-23 12:45:22 +00:00
Kevin McConnell 6bc88466a3 Only highlight current hour on today's entry 2025-01-23 12:45:12 +00:00
Jason Zimdars 1c20872b83 Highlight the current hour
FIXME: only do this on the current day
2025-01-22 21:57:38 -06:00
Kevin McConnell 86cb627120 Include neighbouring events in paginated query
Since we're rendering according to the local timezone, we'll need to
include events that fall before or after the specific date on the
server, as they might get be inside the current day in the client's
timezone. So let's just grab a window of events either side of today,
and then hide anything that falls outside the client's day.
2025-01-22 16:44:30 +00:00
Kevin McConnell 4807d3cf7d Don't try to render fetched response
Because it's a turbo stream response, it will be rendered automatically.
2025-01-22 16:41:53 +00:00
Kevin McConnell b2f72ff668 Use Stimulus to position events by timezone 2025-01-22 14:38:38 +00:00
Jason Zimdars 49866a121d Merge branch 'main' into latest-activity
* main:
  Don't round up in time distance expression
  Tidy Gemfile
  Banner for draft state
  Drafts should always use the dashed outline wherever they're displayed
  Unnecessary parens
  Use distance to nearest edge
  Simplify overlap logic
  Fix divider drag jankiness
  Use cache-friendly "time ago"
  positionedClass -> installedClass
  Pull out moveDividerTo
  Before comes before After
  DividerElement -> Divider
  Clean up divider-controller
  Drag bubble divider
2025-01-21 13:50:28 -06:00
Kevin McConnell 42fa37d347 Send beacon request on disconnect as well
This is so we can dismiss any notifications that arrived for a bubble
while we were viewing that bubble. Otherwise, they'll stick around until
we leave the page and come back.
2025-01-21 14:47:56 +00:00
Jason Zimdars 02573b6dc8 Set state for when there are no new notifications 2025-01-20 17:58:56 -06:00
Kevin McConnell 11454a1952 Lazy-load activity pages 2025-01-17 17:28:07 +00:00
Kevin McConnell 181b7f3b64 Don't round up in time distance expression
e.g. 1.5 days ago is still "1 day ago", not "2 days ago".
2025-01-17 13:33:26 +00:00
Jose Farias d65d8a899b Merge pull request #209 from basecamp/drag-jankiness
Fix divider drag jankiness
2025-01-16 15:13:05 -06:00
Jose Farias fb27cee9b0 Unnecessary parens 2025-01-16 15:11:44 -06:00
Jose Farias 8877d2e66d Use distance to nearest edge
This feels the smoothest
2025-01-16 15:09:46 -06:00
Jose Farias dc6da76b38 Simplify overlap logic 2025-01-16 14:01:25 -06:00
Jose Farias af0783d8ff Fix divider drag jankiness 2025-01-16 13:54:42 -06:00
Kevin McConnell 6f8c929898 Use cache-friendly "time ago"
Also introduces a local time helper that we can use to format dates and
times.
2025-01-16 17:47:25 +00:00
Jose Farias 622e340e83 positionedClass -> installedClass 2025-01-15 20:31:09 -06:00
Jose Farias 775e29fb8e Pull out moveDividerTo 2025-01-15 20:26:56 -06:00
Jose Farias 40085b16d6 Before comes before After 2025-01-15 20:14:30 -06:00
Jose Farias 3ab6ee84d0 DividerElement -> Divider 2025-01-15 20:13:18 -06:00
Jose Farias 9b1c140eef Clean up divider-controller 2025-01-15 20:10:54 -06:00
Jose Farias dac9aa9d26 Drag bubble divider 2025-01-15 17:22:25 -06:00
Kevin McConnell c11b5af5e0 Make Stimulus controller more generic 2025-01-14 13:37:54 +00:00
Kevin McConnell 46989f6ebe Mark notification read when viewing the Bubble 2025-01-13 14:21:47 +00:00
Kevin McConnell fd1789ed58 Mark notifications read when clicked on 2025-01-13 14:21:47 +00:00
Jason Zimdars 1530b76af8 Hit esc to navigate back after opening a bubble 2024-12-19 16:22:01 -06:00
Jose Farias 0e8d4104f8 Implement lightbox 2024-11-29 15:52:45 -06:00
Jose Farias f266e46b57 Wire up comboboxes 2024-11-21 19:58:21 -06:00
Jose Farias 0995eee074 Turn filter chips into links 2024-11-18 11:34:44 -06:00
Jose Farias fb04249209 Make filters into a simple form 2024-11-14 21:50:38 -06:00
Jose Farias 9e99d961ba Iron out quirks from navigating back and forth 2024-11-11 15:05:54 -06:00
Jose Farias 0baaf5d87f Wire up filter form sans search 2024-11-11 13:46:15 -06:00
Jose Farias 4c02a46867 Comment on the query merger controller 2024-11-07 11:32:21 -06:00