Alp Keser
a48c88cb5d
Stabilize notifications tray test ordering via fixture updated_at timestamps
2026-02-16 18:33:32 +03:00
Alp Keser
bcc0f93bb9
Preload notification card associations used by JSON responses
2026-02-16 17:58:33 +03:00
Jirka Hutárek
c4c46cce44
Add postponed and closed flags to Pinned and Notification cards
2026-02-13 00:45:47 +01:00
Alp Keser
abcbb74ac8
Make notification ordering deterministic.
2026-02-12 15:32:10 +03:00
Alp Keser
b755522a73
Add notification.source_type.underscore
2026-02-12 14:55:34 +03:00
Alp Keser
a6eb331710
Fix query parameter name
2026-02-12 14:55:34 +03:00
Alp Keser
b8793bfec3
Add include_unread param to tray API and vary cache
2026-02-12 14:55:34 +03:00
Alp Keser
80546a6b47
Include read notifications in the tray API response
2026-02-12 14:55:34 +03:00
Fernando Olivares
a844353f1e
Remove unused has_attachments and assignees from notification JSON
...
These fields were added but are not used by the iOS client.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-12 14:55:34 +03:00
Fernando Olivares
6809804d3a
Add card assignees to notification JSON
...
Includes assignee users in the card object for display in notification UI.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-12 14:55:34 +03:00
Fernando Olivares
009e431ad8
Add has_attachments to notification card JSON
...
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-02-12 14:55:34 +03:00
Denis Švara
683547e310
Use the existing user partial on notifications.
2026-02-12 14:55:34 +03:00
Denis Švara
af2efe6d76
Add avatar_url to the shared user JSON partial.
2026-02-12 14:55:34 +03:00
Denis Švara
3dca00a9ab
Extend notification JSON payload.
...
Add avatar url, board name, and column.
2026-02-12 14:55:34 +03:00
Denis Švara
0b9869f3c9
Add JSON response support for notifications/tray.
2026-02-12 14:55:34 +03:00
Zoltan Hosszu
135fe128f7
Table style tweaks
2026-02-12 11:46:04 +01:00
Zoltan Hosszu
ff80dfeb06
Fix dark mode colors
2026-02-12 11:37:08 +01:00
Stanko Krtalić
61144667fc
Merge pull request #2512 from basecamp/server-side-notification-grouping
...
Stack notifications in all views
2026-02-12 10:33:12 +01:00
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
Zoltan Hosszu
e0f8a182c5
HR fixes
2026-02-12 09:54:21 +01:00
Zoltan Hosszu
343bf016a3
Removing duplicate code language picker
2026-02-12 09:54:21 +01:00
Zoltan Hosszu
9a2e30b9c8
Regression fixes
2026-02-12 09:54:21 +01:00
Andy Smith
322de4217f
Touch up link button hover styles
2026-02-12 09:54:21 +01:00
Zoltan Hosszu
0d45a42ebf
Remove link dialog size limit
2026-02-12 09:54:21 +01:00
Zoltan Hosszu
374856f641
Fix toolbar dropdown icon background
2026-02-12 09:54:21 +01:00
Zoltan Hosszu
a315af1090
Table tweaks
2026-02-12 09:54:21 +01:00
Andy Smith
a4303dbe71
Use existing lexxy-content styles instead of rewriting everything
2026-02-12 09:54:21 +01:00
Andy Smith
4e5a5e1523
Use built-in lexxy styles and sprinkle in some overrides
2026-02-12 09:54:20 +01:00
Zoltan Hosszu
a586f77a71
Use Lexxy's built in CSS for Lexxy
2026-02-12 09:54:20 +01:00
Stanko K.R.
37d7f5c569
Give more detail about why the import failed
2026-02-11 13:47:21 +01:00
Alp Keser
03ed6df109
Merge pull request #2455 from basecamp/expose-has-attachment-for-card
...
Add json.has_attachments for the card
2026-02-10 11:36:30 +03:00
Andy Smith
b3951564bc
Only disable the current column if it's open
2026-02-09 16:02:02 -06:00
Andy Smith
e1a70a330d
Merge pull request #2513 from basecamp/truncate-account-menu
...
Truncate long account names in the menu
2026-02-09 10:51:02 -06:00
Mike Dalessio
8c5b47d774
Group notification emails by board ( #2506 )
...
* Group notification emails by board
Notification bundle emails now group items by board instead of
showing the board name redundantly for each card. Each board
section has a linked header and an <hr> separator.
* Adjust board title styles and remove rem units
* Sort board groups alphabetically
Sort notification email board sections alphabetically by name
(case-insensitive).
Also, rewrite mailer tests to use Nokogiri::HTML5 for precise DOM
assertions instead of regex matching.
---------
Co-authored-by: Andy Smith <andy@37signals.com >
2026-02-09 11:29:11 -05:00
Andy Smith
4127eaeacf
Truncate long account names in the menu
2026-02-09 10:22:58 -06:00
Adrien Maston
a8676ada4c
Merge pull request #2490 from basecamp/fix-hidden-filters-in-firefox
...
Fix hidden filters in Firefox
2026-02-06 11:01:54 +01:00
Andy Smith
8e93f9d45e
Content overflow scrolling for users list
2026-02-05 13:20:01 -06:00
Adrien Maston
9c7afcbee8
Merge pull request #2484 from basecamp/mobile/fix-board-scroll-position
...
Mobile / Fix expanded column not being scrolled into view
2026-02-05 17:47:38 +01:00
Adrien Maston
4072688974
Use a dedicated link to bridge a "go to" board button
2026-02-05 17:36:48 +01:00
Adrien Maston
fe555f751e
Move "Edit" action to ellipsis menu
2026-02-05 17:33:29 +01:00
Adrien Maston
626b8aa8a6
Revert "Show "Go to" board button in card perma"
...
This reverts commit d689f560b4 .
2026-02-05 17:31:37 +01:00
Adrien Maston
186d759672
Instant scrolling on restore, animated on user action
2026-02-05 17:17:49 +01:00
Adrien Maston
d689f560b4
Show "Go to" board button in card perma
2026-02-05 17:04:03 +01:00
Stanko Krtalić
421525e725
Merge pull request #2480 from basecamp/move-import-button-to-signup-screen
...
Move import button to sign up screen
2026-02-05 12:33:11 +01:00
Adrien Maston
9d4655d35e
Make filters "open" by default then hide in mobile apps
2026-02-05 11:12:50 +01:00
Mike Dalessio
d611b2cc6c
Move comment events when card moves to a new board ( #2486 )
...
When a card moves between boards, comment events were staying on the
old board. Now they move with the card.
2026-02-04 15:04:28 -05:00
Adrien Maston
171b8caa45
Switch non-animated scrolling in the mobile apps
2026-02-04 18:35:12 +01:00
Mike Dalessio
e311d8f521
Omit inactive users from board mention picker
...
The board-scoped mention prompt was returning all users with board access,
including those marked as inactive. This adds the `.active` scope to match
the behavior of the account-wide mention prompt.
Fixes https://app.fizzy.do/5986089/cards/3861
2026-02-03 18:42:15 -05:00
Mike Dalessio
8074bfd43e
Merge pull request #2481 from basecamp/import-associations-check
...
Validate ActionText associations during import check phase
2026-02-03 17:47:10 -05:00
Mike Dalessio
7f473eda66
Validate ActionText associations during import check phase
...
ActionTextRichTextRecordSet now calls check_associations_dont_exist to
ensure imported ActionText records only reference records within the
same import, matching the behavior of the parent RecordSet class.
2026-02-03 13:46:28 -05:00