* main:
Fix setting the workflow on a collection
Extract icon_tag helper to reduce repetition
Proper spacing
If there are no tags, show no tag column for the filter
Protect against an account without workflows
The previous implementation would delete all accesses if the bucket
was not all_access.
I think it's simpler to move the bucket workflow into a separate
Buckets::WorkflowsController, rather than deal with different sets of
params from different forms in the existing BucketsController.
Probably should make it such that a new account sets up the default
workflows, but right now it doesnt, so protect against them by not
showing the workflow filter.
because the turbo responses have been moved from EventsController to
Events::PagesController, we can now redirect to the Events index page
within a turbo session.
ref: https://37s.fizzy.37signals.com/buckets/693169850/bubbles/999008733
This moves the "fetch-on-visible" link to right after the
"div#activity" to which it will append, so that it immediately
triggers if the first day's grid is short.
The link previously was at the end of the page, meaning that a long
list of Collections would push it out of the viewport, requiring a
scroll before loading the next day.
They're part of the card now, let's name them that way.
Also, rename the "tag" partial to "tagging", following the naming
convention established by the controller.
- Rearrange the _tags and _tag partial, so they are properly nested concerns
- Add turbo frames for _tags and _tag
- Load _tag in a separate request, so it's not cached with the card
- Cache _tag using the bubble and the account
- New model behavior: touch Account when tags are added or removed
- New controller action: "new" for taggings toggles, which renders the _tag partial
- Updating taggings responds with a turbo stream response that updates the _tags frame
This is very much a parallel change to what was done with assignments
in #317.
pulling the avatars down from the "people" partial, and pulling the
add button up from the "assignment" partial.
The result is:
- the "bubbles/sidebar/assignment" partial is just the dialog box
- the "bubbles/assignees" partial contains everything about assignees
- the "bubbles/people" partial makes one render call
and I've introduced some turbo frames in the expectation of the next
commit which will load the dialog in the background.