Commit Graph

126 Commits

Author SHA1 Message Date
Andy Smith 776c67a501 Use notch class so Save button is positioned correctly 2026-01-06 15:57:36 -06: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
Andy Smith d751ae5522 Move closure message to its own grid area 2025-12-18 11:17:10 -06:00
Andy Smith 6e568aa8b2 Fix new card buttons on mobile 2025-12-17 11:31:33 -06:00
Jorge Manrubia ee80b87c8c Add billing system with Stripe
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Jason Zimdars <jz@37signals.com>
2025-12-16 16:44:20 +01:00
Brian Bailey aad3d51e15 Update tip text for turning a card into a Golden Ticket
Clarified with JF after noticing language like "turning it into a Golden card" in the help content. We're okay with using "ticket" in this case.
2025-12-10 15:48:14 -05:00
Jason Zimdars 759b92649a Add a few more 2025-12-01 14:29:56 -06:00
Jason Zimdars 8ff5eb0feb No need to indicate these, they're common
But show a tooltip all the same
2025-12-01 14:14:27 -06:00
Jason Zimdars d4e540d633 Need to replace the entire block, not just the buttons in most cases
Fixes that closure notice was missing from views
2025-11-28 08:36:41 -06:00
Jason Zimdars 86932803e4 Clarify not now move actions copy 2025-11-24 12:03:34 +01:00
Jason Zimdars a66b40ba51 Display this full size on mobile
Just the icon isn't clear enough
2025-11-22 17:59:33 -06:00
Mike Dalessio b05ecb7809 Update card buttons dynamically
User flows when editing a card look like:
- Click "Edit" → the closure buttons are replaced by "Save changes"
- Submit card form → Saves and restores closure buttons
- Press ESC while editing → Cancels and restores closure buttons

Also, renamed for clarity:
- _title.html.erb → _content.html.erb

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-22 12:14:39 -05:00
Mike Dalessio 4e6a053ff2 Make sure the card edit button targets the turbo frame
Related to 5aaaeab5
2025-11-22 10:15:11 -05:00
Jason Zimdars a9bbd9d539 Special handling on mobile 2025-11-21 16:07:36 -06:00
Jason Zimdars 5aaaeab5ea Try the edit button on the bottom line 2025-11-21 14:17:41 -06:00
Stanko K.R. 2c1a0301c2 Fix crash on very long card titles 2025-11-21 18:17:49 +01:00
Stanko K.R. 2b23d85653 Add dir=auto to title inputs
See: https://github.com/basecamp/once-campfire/pull/97
2025-11-21 11:13:44 +01:00
Jorge Manrubia 649888dbd4 Making the frame permanent with an id would reconnect the editor causing the dup
This is something we need to fix in Lexxy for good, but for now this patch will do it.

https://github.com/basecamp/lexxy/issues/263
2025-11-21 08:52:10 +01:00
Andy Smith 7fe2ea203d Add hide-scrollbar utility and use on card titles 2025-11-20 11:03:10 -06:00
Jason Zimdars 25e2d98c35 Don't label these, they're expected and obvious (I think) 2025-11-19 16:26:55 -06:00
Andy Smith 249c06e4f6 Straighten out focus ring for the background image button 2025-11-18 11:29:40 +00:00
Jason Zimdars eeeb3a6e7e Remove extra mark-up 2025-11-17 17:38:25 -06:00
Jason Zimdars 51a9edf419 Contain hotkeys inside the button 2025-11-17 17:35:14 -06:00
Jason Zimdars e3e56e8289 Hide hotkeys on mobile 2025-11-17 17:07:28 -06:00
Jorge Manrubia d6b602b7d7 Restore refreshes: make sure they play well with cards in editing mode 2025-11-14 15:37:43 +01:00
Jason Zimdars a3f2bc276a Add hotkey indicators 2025-11-12 17:07:24 -06:00
Jason Zimdars 66708e7f4c Hotkeys and loading state 2025-11-11 16:02:06 -06:00
Jason Zimdars df858fcdd0 Rework to ensure button adopts card color
Removes unecessary field class, visually downplays edit button
2025-11-11 15:55:23 -06:00
Jorge Manrubia 0f664a8ce1 Add create cards with keyboard
CTRL+ENTER to create
CTRL+SHIFT+ENTER to create and add another
2025-11-11 12:38:23 +01:00
Jason Zimdars 16d8661a12 This wasn't quite right 2025-11-10 18:55:38 -06:00
Jason Zimdars fe06b41ade Add a distinct edit button 2025-11-10 18:25:11 -06:00
Jason Zimdars 1df7ad9d4e Hit D to mark-as-done 2025-11-10 18:15:12 -06:00
Jason Zimdars 6a119dbe7a Adjust these so we get proper spinner styles when submitting 2025-11-10 17:13:45 -06:00
Jorge Manrubia 03a345609e Baseline replacing collection with board across code 2025-11-05 13:31:54 +01:00
Jason Zimdars b826eb47fe Remove draft restoration notice
We don't need to announce that there is autosaved content
2025-11-04 21:54:14 -06:00
David Heinemeier Hansson 912f7d179a We already have a button to create the card 2025-11-04 12:45:09 +01:00
Jason Zimdars 886e38547e This shouldn't be visible when the card is already postponed
Fixes: https://app.box-car.com/5986089/cards/128
2025-11-03 11:50:36 -06:00
Jorge Manrubia 42a8b52fa1 Don´t show draft banner if the card is not filled 2025-11-03 14:47:29 +01:00
Jorge Manrubia 111d4900ef Only show draft banner if the card had some data 2025-11-03 14:41:27 +01:00
Jorge Manrubia 5f7feed6c4 Refresh activity-related bits in the card perma dynamically:
- Remove entropy bubble
- Refresh the auto close notice https://app.box-car.com/5986089/cards/2683
2025-11-03 12:48:57 +01:00
Jorge Manrubia 1df8d42811 Create cards with CTRL/CMD enter 2025-11-03 09:32:29 +01:00
Jorge Manrubia 9d4dd3b00e Remove "save as draft"
Removes the creating status completely as well as the abandoned cards system. It will
always resume drafts if they exist, for a given collection and user.

https://app.box-car.com/5986089/cards/2489
2025-11-03 09:32:29 +01:00
David Heinemeier Hansson 99247cb29c Spacing 2025-10-30 16:46:24 +01:00
David Heinemeier Hansson 10d7fd3268 Rely on the passed in card object, not ivar 2025-10-30 16:43:24 +01:00
David Heinemeier Hansson 333634a5cc Rely on model to route 2025-10-30 16:41:37 +01:00
David Heinemeier Hansson acb7216b8b Spacing 2025-10-30 16:41:15 +01:00
David Heinemeier Hansson cc0252e39c No longer used 2025-10-30 16:40:04 +01:00
David Heinemeier Hansson b57317ef60 Spacing 2025-10-30 16:38:11 +01:00
David Heinemeier Hansson 6cf6076041 Rely on model to route whenever possible 2025-10-30 16:38:03 +01:00
Jason Zimdars b4e80987ee Add a placeholder to reduce flashing on load/update 2025-10-28 17:06:17 -05:00