* Implement advanced search
Up to 5 individual tokens (separated by spaces) can be given as search string.
Each token is individually searched for in all selected fields.
Examples (assuming the relevant fields are selected for search):
- a part named `foo` with a tag `bar` will be found with the search string "foo bar".
- a part named `bar baz` will be found with the search string "baz bar".
- a part with the ID 123 and in storage location `a_qux_b` will be found with the search string "qux 123".
* Add tests
These were created with the help of GPT-5.2.
Disclaimer: I don't have the experience to judge the quality or validity of the results.
* Restructure query buildup
* Update tests
* Move options from Settings to localStorage
* Consider mutual exclusivity of search options
If regex search is enabled, the other two options are disabled (only visually). This should give the user a fair idea of what's happening while keeping things as simple as possible.
* Added translations for the checkboxes
* Fix stimulus controller to allow handling multiple instances of the dropdown menu
* Added tooltips for the different search mode options
---------
Co-authored-by: Jan Böhmer <mail@jan-boehmer.de>
This fixes issue #701. For the search field this was caused by algolia/autocomplete lib, which do not support multiple autocomplete fields on a single page. If initailly loaded on the homepage, which features a second autocomplete, this one "steals" the input listening, and the one in the navbar do not close anymore when clicking outside.
Custom code which triggers the closing of the autocomplete manually when clicking outside, was added as a workaround.