The searchbar has always been a bit painful in our app because we drove it with the backend- each key press registered as an HTTP request to the app server, and the updated search results were returned.
In this setup, we send ALL options to the frontend and let the React MultiSelect component handle search for us.
This should minimize the weird search behavior of orgs being duplicated and repos not being entered correctly.
I also took this opportunity to think through how we could reorganize our interfaces to Augur, unpacking the AugurManager object and creating a new MSOptionsHandler object ("MultiSelect Options Handler") that replaces the searchbar features that used to be in the AugurManager.
moves searchbar pre-querying into _multiselect.py file
manages sqlalchemy engine in models.py file
reflects table metadata from 'repo' and 'repo_groups' tables in Augur
switches searchbar to search through available options locally.
next step is to handle user groups in this same way, likely with a second, optional multiselect bar that is enabled when the user is logged in.
I'd also like to consider having Repos and Orgs in separate search bars, and discouraging querying for entire orgs by putting orgs behind a dropdown (MOST of the time looking at the entire org isn't necessary).
The searchbar has always been a bit painful in our app because we drove it with the backend- each key press registered as an HTTP request to the app server, and the updated search results were returned.
In this setup, we send ALL options to the frontend and let the React MultiSelect component handle search for us.
This should minimize the weird search behavior of orgs being duplicated and repos not being entered correctly.
I also took this opportunity to think through how we could reorganize our interfaces to Augur, unpacking the AugurManager object and creating a new MSOptionsHandler object ("MultiSelect Options Handler") that replaces the searchbar features that used to be in the AugurManager.
next step is to handle user groups in this same way, likely with a second, optional multiselect bar that is enabled when the user is logged in.
I'd also like to consider having Repos and Orgs in separate search bars, and discouraging querying for entire orgs by putting orgs behind a dropdown (MOST of the time looking at the entire org isn't necessary).