Commit Graph

3573 Commits

Author SHA1 Message Date
Jason Zimdars 6b4c32ef9f Copy for screen readers 2025-07-02 15:34:17 -05:00
Jason Zimdars 10893b8fa2 Don't hide the input so it's accessible to screen readers 2025-07-02 15:02:37 -05:00
Jason Zimdars 6504813b4a Point skip links to correct anchor, don't navigate with turbo 2025-07-02 14:53:47 -05:00
Jason Zimdars 46093caeb8 There aren't any li children so just use div 2025-07-02 14:52:10 -05:00
Jason Zimdars c19e5a6253 Use headings for screen reader navigation 2025-07-02 14:46:43 -05:00
Jason Zimdars 70d6a7190f Use h3 for individual cards in collection view 2025-07-02 14:42:53 -05:00
Jason Zimdars db99e5928c Make collection title h1 for screen reader navigation 2025-07-02 14:38:29 -05:00
Jason Zimdars 985337a91c Esc should not propagate when closing dialogs 2025-07-02 14:29:15 -05:00
Jason Zimdars 91aa8be4fc Screen reader: Use heading for comments navigation 2025-07-02 14:22:16 -05:00
Jason Zimdars 08043a7c5e Correct label for field 2025-07-02 14:01:10 -05:00
Jason Zimdars 5262e2812f Style 2025-07-02 13:58:50 -05:00
Jason Zimdars 79eada3e8d Screen reader: De-duplicate links for each person in account settings 2025-07-02 13:56:50 -05:00
Mike Dalessio 08db57644a Merge pull request #665 from basecamp/flavorjones/path-based-tenanting
Account slug tenanting
2025-07-02 10:52:18 -04:00
Mike Dalessio 84ed83a2c6 Script to create Users for existing 37id accounts
intended for staging
2025-07-01 17:41:54 -04:00
Mike Dalessio 7089fbe0d4 Configure Mission Control to skip tenanted authentication
In 29644ba1 we configured HTTP basic auth to secure it for now.
2025-07-01 15:56:14 -04:00
Mike Dalessio 8e666a5247 Script to update URLs and attachments in cards and comments 2025-07-01 15:56:14 -04:00
Mike Dalessio 9c59a85abd Make sure seeds are creating sluggable tenants 2025-07-01 15:56:14 -04:00
Mike Dalessio 444b7aa69f Script to rename tenants after the QB account id 2025-07-01 15:56:14 -04:00
Mike Dalessio f8cbf51f71 Update the signups tests to work with untenanted paths 2025-07-01 15:56:14 -04:00
Mike Dalessio b8368de002 Update the Command classes to handle paths with account slugs 2025-07-01 15:56:14 -04:00
Mike Dalessio 3d39bdc9f3 Update bin/dev to point at the new tenant URLs 2025-07-01 15:56:14 -04:00
Mike Dalessio 3844dc9ff3 Patch Active Storage controllers to generate slugged URLs
This really only impacts the Disk service in development.

I proposed this upstream in https://github.com/rails/rails/pull/55248,
but it's not clear if the presence of script_name should _always_
prefix generated URLs, so for now it's local to Fizzy.
2025-07-01 15:56:14 -04:00
Mike Dalessio 98e6bd8cd7 Point Action Cable at the slugged cable endpoint
I proposed this upstream in https://github.com/rails/rails/pull/55250,
but it's not clear if the presence of script_name should _always_
prefix generated URLs, so for now it's local to Fizzy.
2025-07-01 15:56:14 -04:00
Mike Dalessio e378c5a45e Extract pieces from the tenanting initializer
into:

- tenanting/account_slug
- tenanting/logging
- tenanting/turbo
2025-07-01 15:56:14 -04:00
Mike Dalessio e68e2eb971 Patch Turbo to use the request script name
so that the URLs generated during view rendering are correct
2025-07-01 15:56:14 -04:00
Mike Dalessio 33d5eccb70 Use the new AR::Tenanted convention for action cable connections 2025-07-01 15:56:14 -04:00
Mike Dalessio f43a5ff22c Use a tenant resolver that recognizes the account slug
and sets the script name accordingly
2025-07-01 15:56:14 -04:00
Mike Dalessio 6905198b66 dep: Use the patched AR::Tenanted branch 2025-07-01 15:56:14 -04:00
Mike Dalessio 5f31e6612b Merge pull request #685 from basecamp/flavorjones/fix-sqlite-backups
SQLiteBackupsJob explicitly uses db_config.database_path
2025-07-01 15:39:45 -04:00
Mike Dalessio fe8b71c2c9 SQLiteBackupsJob explicitly uses db_config.database_path
because using db_config.database will give us the sqlite file URL with
query params, and that's not what we mean.

This should restore nightly backups.
2025-07-01 15:32:13 -04:00
Jorge Manrubia 43ec523eaa Update action text lexical! 2025-07-01 09:58:33 +02:00
Jorge Manrubia c2e1b36d7e Merge pull request #675 from basecamp/command-errors
Show command errors
2025-07-01 09:56:42 +02:00
Jorge Manrubia 50b4f34f34 Copy tweaks 2025-07-01 09:51:11 +02:00
Jorge Manrubia 888923d32b Copy tweaks 2025-07-01 09:50:10 +02:00
Jorge Manrubia 01bda1b529 Merge pull request #672 from basecamp/filter-ignore-diacritics
Convert diacritics to approximations before filtering
2025-07-01 09:46:14 +02:00
Jorge Manrubia a5f5a4ec26 Remove helper not used anymore because lexical handles it
https://github.com/basecamp/actiontext-lexical/pull/18
2025-07-01 09:44:24 +02:00
Jorge Manrubia 2ab322adfe Tidy up code to normalize text, extract text helpers 2025-07-01 09:42:22 +02:00
Mike Dalessio 96408e6088 Merge pull request #683 from basecamp/flavorjones/fix-closed-notifications
Fix notification rendering on card closure events
2025-06-30 23:49:20 -04: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 fb1ec2ab3a Copy edits 2025-06-30 18:14:48 -05:00
Jason Zimdars ab5d6931de Color the output red, too 2025-06-30 18:14:43 -05:00
Jason Zimdars ffb422ac61 This attribute is no longer needed 2025-06-30 17:31:07 -05:00
Jason Zimdars dec57f1a9a Perform conversion on the client side 2025-06-30 17:30:34 -05:00
Jason Zimdars 3af949edca Merge branch 'main' into filter-ignore-diacritics
* main:
  Clear the comments cache
  Add context for search screens
  Needs changed for both states
  Use lighter icon and update asset
  Add btn--circle class to user edit form
  Organize button variants
  Untangle `avatar btn` crossover styles
  Remove redundant classes and styles for avatars
  Adjust footer line height
  Tweak padding
2025-06-30 17:01:43 -05:00
Andy Smith ec287b2a50 Merge pull request #676 from basecamp/clear-cache
Clear the comments cache
2025-06-30 16:48:12 -05:00
Andy Smith c7eeb56cfa Clear the comments cache 2025-06-30 16:47:08 -05:00
Jorge Manrubia 179ae45bf3 Show command errors
I went with placing htis logic at the command level since it plays well with the composite structure, where you don't know whether you are handling one command or many commands, and you want to aggregate all the errors. I didn't leverage the existing support with rails' model errors because that customizing those message is cumbersome (either i18n or using custom validation logic for everything).
2025-06-30 23:10:39 +02:00
Jorge Manrubia eb3fc208a9 Merge pull request #674 from basecamp/search-context
Make search results screen a "cards context for Fizzy do
2025-06-30 22:15:30 +02:00
Jorge Manrubia 9db96bc4a4 Add context for search screens 2025-06-30 22:13:42 +02:00
Andy Smith 95310da203 Merge pull request #650 from basecamp/misc-polish
Tweak padding
2025-06-30 15:07:41 -05:00