Part-DB-server/assets/controllers
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
..
common Moved alerts and dialogs from unsupported bootbox to Sweetalert2 library 2026-06-21 14:21:01 +02:00
elements Implement extensive search (#1406) 2026-07-27 18:42:32 +02:00
filters Added copyright/license info to files 2022-11-29 21:21:26 +01:00
helpers Allow to scan labels anywhere on the page 2026-03-01 16:48:29 +01:00
pages Moved alerts and dialogs from unsupported bootbox to Sweetalert2 library 2026-06-21 14:21:01 +02:00
backup_restore_controller.js Add backup restore feature 2026-01-30 23:24:48 +01:00
bulk_import_controller.js Add Quick Apply and batch update to bulk info provider import (#1316) 2026-05-04 21:56:18 +02:00
bulk_job_manage_controller.js Refactor bulk import functionality to make controller smaller (use services) add DTOs and use stimulus controllers on frontend 2025-09-09 20:30:27 +02:00
csrf_protection_controller.js Updated stimulus recipe 2025-11-30 15:07:59 +01:00
docker_update_progress_controller.js Add Docker update support via Watchtower integration (#1330) 2026-05-03 23:00:31 +02:00
field_mapping_controller.js Add Quick Apply and batch update to bulk info provider import (#1316) 2026-05-04 21:56:18 +02:00
toggle_password_controller.js Removed the deprecated symfony/ux-toggle-password package by replacing it by our own local versions 2025-08-30 21:57:57 +02:00
update_confirm_controller.js Fix update confirmation dialog not blocking form submission 2026-01-30 23:24:48 +01:00