Skip to content

Conversation

matheuscteo
Copy link
Member

Welcome! This PR introduces a new feature that gives users better control over column visibility in the data table. Users can now easily show/hide variables through a dedicated settings panel with filtering and organization options. Do you have a boring variable occupying space? Worry no more, you can just hide it now.

Important

Before trying this out, be sure to have your testing backend on the feat/tags-backend-support branch.

Features

  • Visibility Settings Component: A dedicated component for managing which variables are visible in the table
  • Two View Modes:
    • View all variables in a single list
    • View variables organized by tags for better categorization
  • Search Functionality: Easily find variables by typing in the search box
  • User Settings Navigation: New settings drawer with intuitive navigation between different settings views

Desired behaviour

DAMNIT-Web_Column_Visibility.mov

Technical Implementation

  • Added Redux-based state management for persisting visibility preferences
  • Created reusable SpoilerList component for rendering grouped variables with toggle functionality. Dispatching changes in the visibilitySettings state is done in this level.
  • Created VisibilitySettings component that renders several SpoilerLists or a single one for the 'all-variables' variant. Searching input, and opened accordions are handled in this component.
  • Implemented a pattern for navigation within the settings drawer via the UserSettings component, letting this reusable enough for possible new settings.

Testing

Please test the following scenarios:

  • Searching for variables works correctly
  • Toggling individual variables updates the table view
  • Toggling groups of variables (by tag) works properly
  • Navigation between settings views is intuitive and bug-free

Also, as always, ask yourself if everything is intuitive and takes minimum effort to be accomplished :)

To-Do (in next PR)

  • Add visible indication that columns are hidden
  • Add Tag information in the table header
  • Add one more entry-point for the visibility operations (namely from the column headers)

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