Commit Graph

139 Commits

Author SHA1 Message Date
Denis Švara a75d56d243 Merge branch 'main' into pins-api
* main: (127 commits)
  Align board name start so it doesn't get too big
  Clean up card/events header layout
  Sync email to Stripe when user changes email address (#2432)
  Fix IDOR in webhook activation endpoint (#2431)
  Add card reactions to API docs and reactions_url to card JSON (#2427)
  Remove unnecessary claude plan
  Allow boosts on cards (#2411)
  Revert "Fix notification click URL by using correct data property"
  Add migration to remove draft cards from search index
  Guard search indexing with searchable? check
  Forbid comments on draft cards
  prefactor: update search to use published cards
  Fix notification click URL by using correct data property
  Wait for service worker to be active before subscribing
  Fix stuck state when permission granted but no subscription
  Extract Card::Commentable
  Include arm64 build in Docker workflow
  Remove unnecessary `await` in push handler
  Correctly initialise WebPush connection (#2417)
  Update models, views, and fixtures for polymorphic reactions
  ...
2026-01-27 15:37:47 +01:00
Denis Švara e82dc08f6c Add JSON support for GET /my/pins with no pagination and tests. 2026-01-14 17:43:16 +01:00
Jay Ohms 3cada3ce82 Merge branch 'main' into mobile/bridge-components
* main:
  Add rollback script to convert relative URLs back to absolute
  Add a script to migrate existing rich texts to relative URLs
  Use relative URLs where possible across all the app
  Use relative URLs for avatars and rich text attachments
2026-01-14 09:39:08 -05:00
Rosa Gutierrez 527ffc42b9 Use relative URLs where possible across all the app
Skipping API responses, where we need absolute URLs, and those that are
intended for sharing or external use:

- account/join_codes/show.html.erb - Join code URL for sharing
- boards/edit/_publication.html.erb - Publication URL for sharing
- public/* views - Public page URLs and og:url meta tags
- pwa/manifest.json.erb - PWA manifest needs absolute URLs

For this, we had to replace `url_for` used with Active Storage variants
and previews with the specific path helper (for Active Storage
representations).
2026-01-14 11:01:42 +01:00
Adrien Maston 3b97b2e5c8 Merge branch 'main' into mobile/bridge-components
* main: (22 commits)
  Disable card column buttons when active
  Prevent comment content from overlapping with reaction button
  Delete pins belonging to cards in a board with revoked access
  Update development dependencies in SAAS lockfile
  Update runtime dependencies
  Update development dependencies
  Balance magic link instructions
  Add `.txt-balance` utility
  Move handleDesktop inside restoreColumnsDisablingTransitions
  Adjust border radius
  Clean up blank slates
  Add dialog manager to events page
  More sturated mini bubbles in light mode
  Brighten mini bubbles in dark mode
  Use separate cache namespaces for each beta instance
  Bump boost size up a tick on mobile
  Move Undo form inside closure message element
  Phrasing tweak for exceeding storage limit
  Keep strong tags words on same line
  Allow ActionText embed reuse and safe purge (#2346)
  ...
2026-01-14 10:34:13 +01:00
Denis Švara 4f7cec3b71 Rename bride page controller to title controller and remove text size related code. 2026-01-13 09:36:24 +01:00
Andy Smith 64fdbf6b8f Clean up blank slates 2026-01-12 15:37:06 -06:00
Jay Ohms d5fef48e42 Merge branch 'main' into mobile/bridge-components
* main:
  Consolidate footer text into a shared partial
  Tweak comment history button on mobile
  Transparent lexxy toolbar when inside a golden card
  Add rel noopener to external links
2026-01-09 14:42:22 -05:00
Andy Smith 509f0ca305 Consolidate footer text into a shared partial 2026-01-09 11:57:45 -06:00
Andrii Furmanets a84530a97f Add rel noopener to external links 2026-01-07 21:52:20 +02:00
Denis Švara ecf0921af9 Add bridge page targets. 2026-01-06 16:03:28 +01:00
Jay Ohms e379721c2f Merge branch 'main' into mobile-app/prepare-webviews
* main: (107 commits)
  Document the new sign in method
  Replace handle_ naming
  Use same constant for fake magic links
  Replace FakeMagicLink with a temporary object
  Tidy up session_token
  Clean up interfaces
  Split tests by controller or responsibility
  Simplify auth logic
  Fix due to unit test when creating with invalid emails
  Restore sessions_controller test on creating invalid email address
  Move magic link api tests to their own files
  Rename test to clarify what they're about
  Cleanup session creation
  Update to always return a pending auth token for JSON responses.
  Update API test for cross code
  Change test expectation on single tenant mode account creation
  Add unit tests for the new endpoints
  Pass a server token when creating a magic link via API
  Simplify code a bit
  Simplify session create logic for both html and json
  ...
2025-12-19 13:52:04 -05:00
Adrien Maston 573ffe0ee4 Add titles to pins and search permas 2025-12-19 15:44:36 +01:00
Jorge Manrubia 33fc239571 Merge pull request #2140 from dilberryhoundog/fix-stale-account-cache
Fix: resolve stale account names in jump menu and page titles
2025-12-19 11:26:23 +01:00
Andy Smith 1a01aa0a69 Fizzy menu a11y 2025-12-17 11:12:38 -06:00
Adrien Maston 86ec2959fb Move pins perma panel out of turbo frame 2025-12-17 12:55:58 +01:00
Adrien Maston 92e63d80cc Make my/pins perma mobile-friendly 2025-12-17 12:30:08 +01:00
Adrien Maston 0f26baee09 Hide elements
Menu, back buttons, bottom bar
2025-12-17 10:45:24 +01:00
Kevin McConnell 741eff7bdc Revert "Merge pull request #1865 from basecamp/public-avatar-caching"
This reverts commit c628f14c01, reversing
changes made to 4bafc73236.
2025-12-15 13:07:13 +00:00
Dylan f01a648441 🐛 fix: resolve stale account names in jump menu and page titles
Add account data to fresh_when etag arrays so Rails serves fresh responses after account changes.

- Add @accounts to menus controller etag

- Add Current.account to boards controller etag

- Add ETag cache invalidation tests for both controllers
2025-12-15 15:59:25 +08:00
Kevin McConnell eec96ff384 Serve own avatar from its own endpoint
This allows us to have different cache controls depending on whether
you're viewing your own avatar, or someone else's. Your own avatar will
always be fresh, while other folks' avatars can be pulled from the CDN.
2025-12-12 09:03:35 +00:00
Stanko K.R. 3257e4a6e9 Inline partials 2025-12-10 15:27:56 +01:00
Stanko K.R. 5ce71bf941 Move Identities to My::Identities 2025-12-10 15:13:35 +01:00
Jason Zimdars d82093c0cd Complete the view transition loop 2025-12-10 09:23:52 +01:00
Jason Zimdars fa2eb06992 Design show view 2025-12-10 09:23:52 +01:00
David Heinemeier Hansson d36be764e2 Awaiting JZ's design 2025-12-10 09:23:52 +01:00
David Heinemeier Hansson 96b62d6ec4 Only allow new token to be viewed within 10 seconds 2025-12-10 09:23:52 +01:00
David Heinemeier Hansson 88902485e1 Access tokens are strictly personal 2025-12-10 09:23:52 +01:00
Andy Smith 6074ed2347 Add blank slate to the main menu 2025-12-09 15:56:10 -06:00
Jason Zimdars e32ec6f5e9 Rename 2025-12-01 16:29:32 -06:00
Jason Zimdars b2feab1e60 Introduce a means to hide sections for filtering only 2025-12-01 16:21:35 -06:00
Jason Zimdars e4fb0e8314 Add static quick filters 2025-12-01 16:01:24 -06:00
Jason Zimdars 86332e3a2f Remove custom views UI 2025-12-01 16:00:42 -06:00
Andy Smith 48b70d175a Move card title margins to perma CSS 2025-12-01 15:40:28 -06:00
Jorge Manrubia 5e23e6c3d3 Prevent Fizzy menu from closing on page refreshes
https://app.fizzy.do/5986089/cards/3190
2025-11-27 07:07:27 +01:00
Jorge Manrubia 6daccc88ae Deselect column/card selection when clicking outside 2025-11-21 12:53:13 +01:00
Jorge Manrubia 9d08f26c59 Disable turbo when navigating to another account
So that the turbo-permanent trays get properly replaced

https://app.fizzy.do/5986089/cards/3094
2025-11-21 09:54:16 +01:00
Jorge Manrubia 021831f810 Extract partials for the different sections 2025-11-21 09:48:00 +01:00
Jorge Manrubia 85b9e3dfd4 Make the notifications tray reload on broadcasted refreshes
We can't use the normal refresh: :morph because everything is contained in a turbo permanent section
so that the trays persist across regular navigation.
2025-11-21 09:41:03 +01:00
Jason Zimdars fd3b32fd15 Merge pull request #1643 from basecamp/account-to-cache-key
Add `Current.account` to cache key
2025-11-20 10:27:59 -06:00
Kevin McConnell 4fc85883ee Don't open account links in new window
This allows switching account in-place inside the same PWA or browser
tab.
2025-11-20 09:36:18 +00:00
Jason Zimdars 5bab67999e Add Current.account to cache key 2025-11-19 15:44:57 -06:00
David Heinemeier Hansson 66d397fa80 Eager load lazy frames inside dialogs on hover 2025-11-19 08:28:18 +01:00
Jason Zimdars 3d1b3e22a7 Need to trigger navigable list after the menu contents load
Fixed arrow navigation
2025-11-18 17:54:34 -06:00
Jason Zimdars e9819000b6 We can simplify this now 2025-11-18 17:26:40 -06:00
Jason Zimdars 7d0bc3ddf6 Show the currently selected account in the menu
This is a regression. Showing the current account means you always see
the same items in this menu section as you move back and forth
2025-11-18 17:25:32 -06:00
Jason Zimdars 5964431fc4 Merge pull request #1592 from basecamp/add-nav-logotype
Add logotype to nav
2025-11-17 18:03:50 -06:00
Stanko K.R. 8fa9566c07 Update sign up 2025-11-17 09:12:40 -05:00
Stanko K.R. edf837fed3 Drop memberships 2025-11-17 09:12:39 -05:00
Kevin McConnell d7fe54b7cf Scope account 2025-11-17 09:12:24 -05:00