Prevent UI freezes when filtering large module lists
Improved performance of the module filtering logic by:
- Replacing jQuery-based DOM manipulation with direct style.display updates.
- Avoiding repeated DOM queries and RegExp compilation inside loops.
- Using data-hidden attributes to track row visibility efficiently.
- Preserving accessibility announcements and restoring state.
- Adding escapeRegExp() to safely handle user input in RegExp.
These changes prevent UI freezes when filtering large module lists and improve responsiveness.
Closes #3537565