Commit Graph

165 Commits

Author SHA1 Message Date
Jorge Manrubia 08d8b2e5ff Revert "Replace House with Lexical" 2025-05-29 14:22:27 +02:00
Jorge Manrubia f00fffe801 Remove trace 2025-05-29 13:34:16 +02:00
Jorge Manrubia 62bef018ea Merge branch 'main' into lexical
* main:
  Don't choke when rendering commands where the card was deleted
  Update tests
  Rework system events
  test: add missing assertions
  dep: bump active_record-tenanted to fix URI support
  Remove hyphen from "Un-do"
  Prevent default when handling keyboard shortcuts
  dep: update AR::Tenanted to support database URIs
  Detect platform and label the correct hotkey shortcut
  Things got too tight
  Don't require TLS for Beamer at the moment
  dep: update dependencies

# Conflicts:
#	Gemfile
#	Gemfile.lock
#	app/assets/stylesheets/comments.css
2025-05-29 12:44:14 +02:00
Jorge Manrubia 594161b982 Make autosave work with lexical 2025-05-28 23:20:24 +02:00
Kevin McConnell 880e3d98b2 Prevent default when handling keyboard shortcuts
Without this, any default action would still happen. With Chrome on
Linux, that causes browser features to be triggered with our CTRL+J and
CTRL+K actions.
2025-05-28 08:18:49 +01:00
Jorge Manrubia 1c41b956a9 Highlight at rendering time too 2025-05-23 13:25:07 +02:00
Jorge Manrubia 10b2aad647 Replace House with lexical-powered actiontext 2025-05-23 11:41:08 +02:00
Jason Zimdars b64bde96eb Remove debug 2025-05-22 21:10:43 -05:00
Andy Smith a22c69bbc3 Relative positioning for trays 2025-05-22 12:30:15 -05:00
Jason Zimdars 84b6a1291f Fizzy do with AI polish 2025-05-19 17:08:00 -05:00
Jorge Manrubia f5ecb41446 Merge pull request #483 from basecamp/fizzy-llm-experiment
Fizz Do with AI
2025-05-16 17:39:01 +02:00
Mike Dalessio dddb33b483 Use a view helper to remove branching from the bubbles controller 2025-05-16 10:32:28 -04:00
Mike Dalessio 388fe2de73 Introduce a stimulus controller for bubbles
The "closing soon" bubbles were introduced in #406, and the "falling
back" bubbles in #500. However, these bubbles are part of the cached
card and so as time passes, the relative time doesn't change unless
the card is touched.

This PR introduces a stimulus controller for bubbles, which takes care
of:

- making the bubble visible during the reminder period
- calculating the relative number of days until entropy kicks in
- rendering appropriate text around the day count

ref: https://37s.fizzy.37signals.com/collections/693169850/cards/999009091
2025-05-16 10:27:00 -04:00
Jorge Manrubia 14eb7658d6 Reorder methods 2025-05-16 13:29:18 +02:00
Jorge Manrubia 28cd03668a Show multi-line confirmations 2025-05-16 13:29:18 +02:00
Jorge Manrubia aa7a92c448 Move terminal output outside of the frame so that it doesn't gets erased when reloading the frame 2025-05-16 13:29:18 +02:00
Jorge Manrubia 87b4643946 Fix: navigation not working after adding new commands 2025-05-16 13:29:18 +02:00
Jorge Manrubia 09f5efc100 Reflect new commands in the history 2025-05-16 13:29:18 +02:00
Jorge Manrubia 2510c1e0ac Major rework of the command/ai abstractions
- Big simplification of the overall workflow.
- Composite commands store their commands properly, these are undoable now.
- Child commands are excluded from history
2025-05-16 13:29:18 +02:00
Jorge Manrubia b060f96c5a Support multi-line prompts 2025-05-16 13:29:18 +02:00
Jorge Manrubia 81dcb715bd Add a busy class to the terminal 2025-05-16 13:29:18 +02:00
Jorge Manrubia 378f5e5891 Handle terminal output as a proper target 2025-05-16 13:29:18 +02:00
Jorge Manrubia f2c80726a3 Handle redirecting in commands that require no confirmation 2025-05-16 13:29:18 +02:00
Jorge Manrubia 9b8ebf09ef Showing insights with a better foundation 2025-05-16 13:29:18 +02:00
Jorge Manrubia cd53ef59eb Better foundation for chat responses 2025-05-16 13:29:18 +02:00
Jorge Manrubia 1f2f47c7e3 More refinements 2025-05-16 13:29:18 +02:00
Jorge Manrubia 007492add0 Primitive insight queries 2025-05-16 13:29:18 +02:00
Jorge Manrubia a33a274983 Refine queries 2025-05-16 13:29:18 +02:00
Jorge Manrubia 413dfce5aa PoC running commands 2025-05-16 13:29:18 +02:00
Jorge Manrubia 515396263e Refresh local time target when morphed
Alternative to https://github.com/basecamp/fizzy/pull/486
2025-05-13 05:44:19 +02:00
Andy Smith 9a38c28858 Merge pull request #463 from basecamp/reaction-emojis
Reaction emojis
2025-05-08 11:00:26 -05:00
Jorge Manrubia 5cd71a7699 Don't dismiss on any key, only with N or ESC
Also, this reworks the system to rely on stimulus event handling. This cover cases like unbinding events automatically when the controller get disconnected and such.

See:
https://3.basecamp.com/2914079/buckets/37331921/todos/8617430347
2025-05-08 11:21:39 +02:00
Jorge Manrubia 05e55adbaa Prefer array 2025-05-08 10:51:33 +02:00
Jorge Manrubia c25ec9ef7b Rename 2025-05-08 10:49:15 +02:00
Jorge Manrubia cb27a13781 Simplify 2025-05-08 10:48:21 +02:00
Jorge Manrubia 86db634f7f Fix: selected item not showing up in Safari
It also handles auto selecting when an element is focus. E.g: if you tabulate to the next control in the navigable list, you want selection to update accordingly.
2025-05-08 10:41:51 +02:00
Jorge Manrubia 59303a4628 Merge branch 'main' into fizzy-do-3
* main: (29 commits)
  Ensure that a "reconsidered" card gets an updated timestamp
  Try a fresh activity design
  Log the authenticated user
  Remove leading space when avatar is hidden on pinned cards
  Display card number in notifications and events
  Ensure that cards with an empty title aren't mysterious in notifs
  bin/dev ensures puma runs solid queue
  Adjust selection color to feel more terminal-y
  Eliminate double-tab behavior
  Clear error state when you start editing
  Color terminal text on error
  Don't indicate spelling errors
  The command is lowercase
  Remind 7 days before, not 30
  Make the icon square
  Subtler bubble styles
  Variable bubble shapes
  Bubble CSS
  Rename 'badge' to 'bubble'
  Address PR feedback
  ...

# Conflicts:
#	app/javascript/controllers/terminal_controller.js
#	app/views/commands/_form.html.erb
2025-05-08 10:29:54 +02:00
Jason Zimdars 28659c1295 Clear error state when you start editing
- It feels wrong to persist the error state while you're fixing the command
2025-05-07 11:52:20 -05:00
Jason Zimdars 8dd5b723a8 The command is lowercase 2025-05-07 11:39:28 -05:00
Jorge Manrubia 8e4912a2b6 Rename method 2025-05-07 17:40:03 +02:00
Jorge Manrubia fe176aec7c Only clear if you haven't touched the prompt 2025-05-07 17:39:00 +02:00
Jorge Manrubia 2503524b7a Implement help menu command to show a help menu with the commands 2025-05-07 17:32:43 +02:00
Jorge Manrubia bfc89124cf Reorder 2025-05-07 13:55:28 +02:00
Jorge Manrubia b9875033bc Remove unused 2025-05-07 13:54:47 +02:00
Jorge Manrubia 87484dbca0 Add basic keyboard navigation support for the Fizzy do menu 2025-05-07 13:46:19 +02:00
Jorge Manrubia 0dcc6959da Extract constant to clarify regexp 2025-05-07 13:31:52 +02:00
Jorge Manrubia 181e35b5b2 Restore command when clicking on it 2025-05-07 12:03:02 +02:00
Jorge Manrubia dc28f4c9c5 Add command to close cards
https://3.basecamp.com/2914079/buckets/37331921/todos/8620236700
2025-05-07 11:00:22 +02:00
Jorge Manrubia 8697cabbe2 Show confirmation when submitting certain commands
https://3.basecamp.com/2914079/buckets/37331921/todos/8617430347
2025-05-07 10:20:32 +02:00
Jorge Manrubia 6f382b68e0 Rename command controller => terminal controller and name the error class after terminal 2025-05-07 08:53:25 +02:00