Commit Graph

466 Commits

Author SHA1 Message Date
Stanko K.R. 24ac7cd00d Add custom labels for Webhooks 2025-09-23 18:00:13 +02:00
Andy Smith 7fec5a98c1 Use class_names helper 2025-09-22 11:22:40 -05:00
Andy Smith 2ecbe2cb7e Add option for icon-only involvement buttons 2025-09-19 16:19:37 -05:00
Jorge Manrubia 64b46d37e4 Toggle filters in the hey menu too
This also fixes a problem where the label in the menu for the filters was wrong
2025-09-19 16:52:13 +02:00
Andy Smith ccf4442562 Merge pull request #1119 from basecamp/nav-filter-handle-collapsed-sections
Nav filter handle collapsed sections
2025-09-18 13:32:01 -05:00
Jorge Manrubia 690734d8ab Fix several caching issues when viewing card permas 2025-09-18 10:58:09 +02:00
Andy Smith c7737f6e35 Merge branch 'main' into nav-filter-handle-collapsed-sections
* main: (55 commits)
  Use polymorphic_url instead of path
  Rename redundant name
  Exclude inactive users
  Send HTML to campfire instead of JSON
  Fix crash due to missing default value
  Bundle rails from main
  Sort alphabetically
  Now that we have space on the left, move it there
  Add missing actions
  Remove URL field from edit form
  Improve active state
  Don't need to navigate this list
  Style show view
  Style web hooks forms and list WIP
  Rename methods for clarity
  Use HTML5 validation for the URL
  Change the icon if there are webhooks on a collection
  Simplify delinquency tracking
  Scope Webhooks to Collections
  Limit access to webhooks to admins
  ...
2025-09-17 11:12:31 -05:00
Andy Smith ec0433d721 Remember localStorage state after filtering 2025-09-16 14:46:21 -05:00
Andy Smith 3cad86411f WIP 2025-09-16 14:14:38 -05:00
Jorge Manrubia 6fe28c53e7 Extract common method 2025-09-16 13:06:01 +02:00
Jason Zimdars c56eb9ecd1 Cards in On Deck adopt some entropy behavior as ones in Doing 2025-09-16 13:06:01 +02:00
Stanko Krtalić 0e2c7f7d4d Escape HTML everywhere where html_safe is used (#1114)
* Escape HTML everywhere where html_safe is used
* Mark search results as HTML safe at the attribute
2025-09-16 11:52:15 +02:00
Andy Smith 27a99b4e1d Remember nav section collapsed state 2025-09-15 16:29:32 -05:00
Andy Smith 60e515e462 Merge pull request #1098 from basecamp/collapsible-nav-sections
Collapsible nav sections
2025-09-15 12:54:21 -05:00
Mike Dalessio 2630e4bd74 Extract 37id and QB controllers, models, and tests 2025-09-13 16:03:02 -04:00
Mike Dalessio 8f39c015ea Tests now pass with local authentication
This is the first step of a multi-step SaaS engine extraction.

Looking ahead to an open source release, we need to make sure that
local authentication is treated as an "official" option, and not just
a hack I added for Kevin to do load testing outside our DC. So this PR
gets to green, and adds a CI step in "local authentication" mode.

This all probably feels a little hacky to you, Reader, but the goal of
this change is to ease the next step, which will be extracting the
37id and Queenbee integrations into a proprietary "SaaS mode" engine.

In service of that goal, this commit simply wraps all of the dependent
code and tests with a conditional check on
`config.x.local_authentication`.
2025-09-13 15:21:00 -04:00
Jason Zimdars 154c1a8a15 This was a debug value 2025-09-12 18:09:52 -05:00
Jason Zimdars 36c3571848 Fix spacing, simplify layout 2025-09-12 16:08:24 -05:00
Jason Zimdars f0a2d50195 Move to constant, whitespace 2025-09-12 15:33:09 -05:00
Jason Zimdars 24d4bd2551 Limit to one row 2025-09-12 14:32:42 -05:00
Andy Smith cab6992555 Merge branch 'main' into collapsible-nav-sections
* main: (32 commits)
  Fix VCR fixtures
  Format
  Touch user on modification to invalidate cache
  Fix add card not working in the cards screen
  Submit and refresh results as you type terms
  Fix: When expanding filters, submitting filters should keep the filters expanded
  Invalidate cache when filter changes
  Switch to gpt-5-chat
  Reorded method and remove unnecessary param
  Add migration to convert accesses
  Handle filter toggles with JS
  Prevent glitch where you see the filter bar expanded when you clear it
  Remove unused templates
  Fix: all collections link not working after moving to turbo frame
  Restore cache I deleted by mistake
  Speed up filter expansion with turbo stream
  Fix: filtering collections not working after moving menu to turbo frame
  Respect params when loading the menu or they won't be reflected!
  Add HTTP cache for the menu
  Load main menu lazily with a turbo frame
  ...
2025-09-12 12:53:44 -05:00
Andy Smith 373b139b9a Add collapsible nav sections 2025-09-12 12:32:32 -05:00
Andy Smith e1a428b46b Straighten out icon and radio sizes 2025-09-12 11:59:16 -05:00
Jorge Manrubia ba3b782d21 Merge branch 'main' into watchers
* main:
  Fix add card not working in the cards screen
  Submit and refresh results as you type terms
  Fix: When expanding filters, submitting filters should keep the filters expanded
  Invalidate cache when filter changes
  Switch to gpt-5-chat
  Handle filter toggles with JS
  Prevent glitch where you see the filter bar expanded when you clear it
  Remove unused templates
  Fix: all collections link not working after moving to turbo frame
  Restore cache I deleted by mistake
  Speed up filter expansion with turbo stream
  Fix: filtering collections not working after moving menu to turbo frame
  Respect params when loading the menu or they won't be reflected!
  Add HTTP cache for the menu
  Load main menu lazily with a turbo frame
  Inline :has(&) as it's REALLY slow in Safari
  Extract helper method
  Remove transition that is making Safari choke when navigating to Fizzy menus
  Reduce page size to reduce load for processing local times on initial page load
  Avoid having to parse strings

# Conflicts:
#	app/views/cards/index/_add_card_button.html.erb
#	test/vcr_cassettes/period_highlight_test-test_don_t_generate_highlights_for_existing_periods.yml
#	test/vcr_cassettes/period_highlight_test-test_generate_period_highlights.yml
#	test/vcr_cassettes/user/highlights_test-test_don_t_generate_highlights_for_existing_periods.yml
#	test/vcr_cassettes/user/highlights_test-test_generate_weekly_highlights.yml
2025-09-12 18:52:17 +02:00
Andy Smith a2fd470c63 Refactor popup item class names 2025-09-12 11:27:47 -05:00
Jorge Manrubia bf6f4cf2ba Reorded method and remove unnecessary param 2025-09-12 14:46:05 +02:00
Jason Zimdars 34e5b14b58 Move the watchers list into the turbo frame
Passes around a param to opt-out of rendering the watchers on the
notification settings screen
2025-09-11 18:05:34 -05:00
Jason Zimdars f9aed44fd2 Move involvement toggle and display all the watchers 2025-09-11 16:22:57 -05:00
Jason Zimdars e68b344cc2 Remove _Everything_ inolvement 2025-09-11 12:34:31 -05:00
Jorge Manrubia 05d3375a7d Avoid having to parse strings 2025-09-11 16:29:07 +02:00
Jorge Manrubia 4e72566856 Flatten card resource
We only need the parent collection for creating cards. Carrying it in the
rest of actions is a hassle.
2025-09-10 11:24:23 +02:00
Jorge Manrubia d533f05c7b Use vanilla resources for handling notifications 2025-09-10 09:17:57 +02:00
Jorge Manrubia 03815f810e Make sure time tags take vertical space until they are loaded
https://fizzy.37signals.com/5986089/collections/2/cards/1592
2025-09-09 13:57:54 +02:00
Jason Zimdars d7844a4105 Merge pull request #1031 from basecamp/improve-workflows
Improve workflows
2025-09-08 10:32:50 -05:00
Jorge Manrubia cb67352275 Don't render HTML stripping the tags for comment bodies, use to_plain_text instead
This will prevent error when generating notification bundles such as:

Type	ActionView::Template::Error
Message	undefined method 'rails_blob_path' for an instance of #<Class:0x00007fbb7e0c2a88>

We could just use the _url variant but this feels better nevertheless
2025-09-08 08:41:18 +02:00
Jorge Manrubia a86e1294fc Update to ruby_llm latest and add more models to try in the sandbox 2025-09-05 18:01:59 +02:00
Jason Zimdars 3a28bc3300 Add confirmations to warn about destructive consequences 2025-09-05 10:49:14 -05:00
Jason Zimdars 3e92b44e05 Warn about collections using a workflow before deleting 2025-09-04 16:25:33 -05:00
Jorge Manrubia 6f2670d6dd Merge main into bundle-emails branch and resolve conflicts 2025-09-01 11:49:20 +02:00
Andy Smith f89413f3f5 Merge branch 'main' into fizzy-menu-everywhere
* main:
  Add a focus effect when hovering columns
  Fix up hotkeys
  test: backfill hotkeys helper tests
  refactor: remove unused routes associated with "resource :account"
  test: backfill account route tests to prepare for refactor
  Alphabetically order concerns (#992)
  Copy
  Don't show the filter if there aren't any tags
  Add clearer labels for sorting options
  Prevent deleting the last collection
  Don't show "All collections" when there's only the default collection
  Rename engagement columns
2025-08-28 12:24:14 -05:00
Mike Dalessio 5f4ee049c6 Fix up hotkeys
ref: https://fizzy.37signals.com/5986089/collections/2/cards/1452
2025-08-28 11:47:45 -04:00
Mike Dalessio 28c4cc7cee test: backfill hotkeys helper tests
and remove support for the unused use case of comma-delimited-strings
2025-08-28 11:44:51 -04:00
Jorge Manrubia 4e2717a61f Merge main into bundle-emails branch 2025-08-28 12:42:43 +02:00
Jorge Manrubia 2adb4571e1 Copy 2025-08-28 12:03:49 +02:00
Jorge Manrubia 53144a379c Add option to change the bundled email notification frequency 2025-08-28 11:56:40 +02:00
Jason Zimdars f54ee090b8 Add clearer labels for sorting options 2025-08-27 18:49:51 -05:00
Andy Smith c86be111f3 Remove unused navigation helper 2025-08-27 14:07:46 -05:00
Jorge Manrubia 93c9855a05 Use URL so that the helper works from emails 2025-08-27 16:52:05 +02:00
Andy Smith 4fb6e365db Merge branch 'main' into combobox-a11y
* main: (26 commits)
  Center figure attachments and use normal size for Save Changes button
  Re-record message response VCR cassette
  Improve link rendering
  Give Fizzy Ask context about who it's talking to
  Show only published cards to Fizzy Ask
  Remove unique index
  Update to latest lexxy (merged renamed branch)
  Fix lexxy events prefix
  Rename Action Text Lexical => Lexxy
  Ensure empty/new transcript isn't narrow
  Source order
  We need this for the events index
  Safari apparently doesn't apply `position` in its internal stylesheet
  Don't allow the pattern to show through buttons
  Button is now in the column, merge fix
  Style tweaks to bar placeholder
  Any press of `esc` should close the dialog
  Copy
  Fix type mismatch
  Make the quota error message friendlier
  ...
2025-08-26 16:11:33 -05:00
Jorge Manrubia 5b5c698af7 Rename Action Text Lexical => Lexxy
 Conflicts:
	app/assets/stylesheets/terminals.css
2025-08-26 08:25:19 +02:00