Skip to content

Conversation

@oliver-sanders
Copy link
Member

This adds task modifier filtering to the Tree & Table views as well as a bunch of related things:

  • centralise and improve task search and filter controls:
    • Add functionality to the ViewToolbar component:
      • Add action=menu for dropdowns.
      • Add action=input for text input.
      • Allow icon=Object to configure state-dependent icons.
      • Reduce icon spacing and improve group divider.
    • Move the task search & filter controls into the ViewToolbar component.
    • Improve the task state filter control:
      • Add support for task modifiers - closes filtering: task modifier filtering #1666
      • Collapse the control into a single button/menu (take up less space).
      • Reduce the width of the task search input, automatically increase
        this width when focused or when text is present in it.
  • tree: make the toolbar sticky
  • view toolbar: support globs in task ID search
  • vite: ignore nfs files
    • These can cause vite to crash.
  • update caniuse-lite

Check List

  • I have read CONTRIBUTING.md and added my name as a Code Contributor.
  • Contains logically grouped changes (else tidy your branch by rebase).
  • Does not contain off-topic changes (use other PRs for other changes).
  • Applied any dependency changes to both setup.cfg (and conda-environment.yml if present).
  • Tests are included (or explain why tests are not needed).
  • Changelog entry included if this is a change that can affect users
  • Cylc-Doc pull request opened if required at cylc/cylc-doc/pull/XXXX.
  • If this is a bug fix, PR should be raised against the relevant ?.?.x branch.

* Add functionality to the ViewToolbar component:
  * Add `action=menu` for dropdowns.
  * Add `action=input` for text input.
  * Allow `icon=Object` to configure state-dependent icons.
  * Reduce icon spacing and improve group divider.
* Move the task search & filter controls into the ViewToolbar component.
  * Switch the Tree and Table views over to the ViewToolbar.
  * Addresses cylc#471
* Improve the task state filter control:
  * Add support for task modifiers - closes cylc#1666
  * Collapse the control into a single button/menu (take up less space).
  * Reduce the width of the task search input, automatically increase
    this width when focused or when text is present in it.
* Ensure the ViewToolbar doesn't scroll out of view.
* Closes cylc#991
* These can cause vite to crash.
@oliver-sanders oliver-sanders added this to the 2.12.0 milestone Nov 26, 2025
@oliver-sanders oliver-sanders self-assigned this Nov 26, 2025
Comment on lines +268 to +280
// it('Provides a select all functionality', () => {
// cy.visit('/#/tree/one')
// cy.get('[data-cy="control-taskStateFilter"]')
// .get('.v-list-item--active')
// .should('have.length', 0)
// cy.get('[data-cy="control-taskStateFilter"]')
// .click()
// .get('[data-cy=task-filter-select-all]')
// .click()
// cy.get('[data-cy="control-taskStateFilter"]')
// .get('.v-list-item--active')
// .should('have.length', 8)
// })
Copy link
Member Author

@oliver-sanders oliver-sanders Nov 26, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Regression 😨, there's no select-all button any more.

This was kinda useful, though not as straight forward any more, as we would only want to select task states (not modifiers).

Closely related to #2209

Can attempt now if deemed critical enough, but maybe appropriate for followup in #2209?

.toolbar {
position: sticky;
top: 0;
background: white;
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Any better ideas than white?

@oliver-sanders oliver-sanders marked this pull request as draft November 26, 2025 15:33
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.

filtering: task modifier filtering views: filter tasks by pattern Make filter controls "sticky"

1 participant