* 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
- Restyle system events so they don't look like comments and aren't attributed to the system user
- Ensure the event creator is included in the description so it's clear who did it.
- Walk back system comment replacement. Yes, it potentially avoids embarassing people when they change their mind, it's also losing data. If two intentional assigments happen in proximity, we've been only showing the latest one,.
Yes, Platform Agent is overkill for just this but there isn't a one-size JS solution for updating both input placeholders and other HTML text and we're likely to need it later for other things like displaying platform-specific PWA prompts.
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
- Big simplification of the overall workflow.
- Composite commands store their commands properly, these are undoable now.
- Child commands are excluded from history