Skip to content

Keep the asset list after switching production from the schedule - #2308

Merged
NicoPennec merged 4 commits into
cgwire:mainfrom
NicoPennec:main
Oct 28, 2026
Merged

NicoPennec merged 4 commits into
cgwire:mainfrom
NicoPennec:main

Conversation

@NicoPennec

Copy link
Copy Markdown
Member

Problem

  • Switching production while a schedule row loads can empty the Assets page or hide its tasks.
  • Going back to the Assets page after expanding a schedule row reloads the whole list.
  • After an Expand all, the schedule needs two clicks to expand another production or episode.
  • The unit test setup loads Vue Test Utils in specs that never mount a component.

Solution

  • Stop loading the schedule rows of a production or episode the user left.
  • Reuse the loaded asset list when the schedule expands a row.
  • Reset the schedule Expand all button when the production or episode changes.
  • Load Vue Test Utils only in the unit specs that run in jsdom.

The setup file loaded Vue Test Utils, with the full Vue build, its
template compiler, and its server renderer, in every spec file, the
node specs included, which never mount. It also loaded moment to set
the locale moment already starts with.

On 3 workers, the setup files now take 9 s of the summed spec time
instead of 16 to 17 s, about 5% of the run.
Expand all, the export, a row being expanded, and the assignment panel
kept loading after a switch to another production or episode, or after
the page was left. Each step read the current production again, so the
rows left loaded the assets, shots, and tasks of the new one. On the
Assets page, the list was replaced by assets without tasks, once per
asset row left to expand.

These loads now stop at their next answer once the production or the
episode changes or the page is left. An Expand all stopped that way no
longer flips its button.
The schedule loads the assets without their tasks. That load replaced the
list the Assets page had loaded with its tasks for the same production
and episode, and the page then fetched it again.

A load without tasks now takes that list, loaded or on its way. The
schedule reads the episode of an asset from episode_id, as that list
names it, as well as from source_id, and leaves out the assets other
productions share with this one, which only that list holds.
The rows of another production or episode load collapsed, but after an
Expand all the button stayed on collapse: its first click did nothing.

The button now starts over with the rows of the new production or
episode.
@NicoPennec
NicoPennec merged commit a3706f0 into cgwire:main Oct 28, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant