impress/app
Emi Matchu 684dcb53ba Add Turbo to speed up the app, and set up for missing UJS features
Oh right, we don't have Rails UJS going on anymore, which is what
handled the confirmation prompts for deleting lists. Turbo is the more
standard modern solution to that, and should speed up certain
pageloads, so let's do it!

Here I install the `turbo-rails` gem, then run `rails turbo:install` to
install the `@hotwired/turbo-rails` npm package. Then I move
`application.js` that's run all on pages but the outfit editor into our
section of JS that gets run through the bundler, and add Turbo to it.

I had to fix a couple tricky things:

1. The outfit editor page doesn't play nice with being swapped into the
   document, so I make it require a full page reload instead.
2. Prefetching the Sign In link can cause the wrong `return_to` address
   to be written to the `session`. (It's a GET request that does, ever
   so slightly, take its own actions, oops!) As a simple hacky answer,
   we disallow prefetching on that link.

Haven't fixed up the UJS stuff for confirm prompts to use Turbo yet,
that's next!
2024-03-13 13:43:48 -07:00
..
assets Add Turbo to speed up the app, and set up for missing UJS features 2024-03-13 13:43:48 -07:00
controllers Merge branch 'about-neopass' 2024-03-13 12:22:32 -07:00
helpers Bold the Terms of Use link when it's been changed recently 2024-02-29 11:22:12 -08:00
javascript Add Turbo to speed up the app, and set up for missing UJS features 2024-03-13 13:43:48 -07:00
mailers/fundraising Move most fundraising files into a Fundraising module 2024-02-18 20:12:14 -08:00
models Oops, choose the *first* PNG from the manifest, to avoid reference art 2024-03-07 14:16:05 -08:00
services Save manifest load info when preloading them, too 2024-02-25 16:02:36 -08:00
views Add Turbo to speed up the app, and set up for missing UJS features 2024-03-13 13:43:48 -07:00