Part-DB-server/assets/js
d-buchmann 1686df968f
Implement extensive search (#1406)
* 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>
2026-07-27 18:42:32 +02:00
..
lib Use upstream version of dataTables.select as the fix was merged 2026-06-21 14:41:56 +02:00
app.js Upgraded jquery to 4.0.0 2026-06-21 15:51:22 +02:00
error_handler.js Remove jquery command from error_handler.js 2026-06-21 14:46:15 +02:00
register_events.js Implement extensive search (#1406) 2026-07-27 18:42:32 +02:00
tab_remember.js Reveal the invalid field in a collapse if a validation error occurs 2023-11-17 23:15:18 +01:00
tristate_checkboxes.js Added a "unsaved changed" warning dialog for part, entity edits and system settings 2026-05-25 21:29:10 +02:00
webauthn_tfa.js Use requestSubmit() in form cleanup controller to avoid CSFR issues 2026-01-18 22:24:17 +01:00