iachat/app/javascript/dashboard
Sivin Varghese 172ff87b5b
feat: Replace vue-virtual-scroller with virtua for chat list virtualization (#13642)
# Pull Request Template

## Description

This PR replaces `vue-virtual-scroller` with
[`virtua`](https://github.com/inokawa/virtua/#benchmark) for the
conversation list virtualization.

### Changes
- Replace `vue-virtual-scroller`
(`DynamicScroller`/`DynamicScrollerItem`) with `virtua`'s `Virtualizer`
component
- Remove `IntersectionObserver`-based infinite scroll in favor of
`Virtualizer`'s `@scroll` event with offset-based bottom detection
- Remove `useEventListener` scroll binding and
`intersectionObserverOptions` computed
- Simplify item rendering — no more `DynamicScrollerItem` wrapper or
`size-dependencies` tracking; `virtua` measures items automatically


## Type of change

- [x] New feature (non-breaking change which adds functionality)


## Checklist:

- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my code
- [ ] I have commented on my code, particularly in hard-to-understand
areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [x] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged and published in downstream
modules
2026-02-25 12:59:02 +04:00
..
api feat(csat): Add WhatsApp utility template analyzer with rewrite guidance (#13575) 2026-02-24 15:11:04 +04:00
assets chore: Remove vue-multiselect package and styles from codebase (#13585) 2026-02-19 15:42:34 +05:30
components feat: Replace vue-virtual-scroller with virtua for chat list virtualization (#13642) 2026-02-25 12:59:02 +04:00
components-next fix(contacts): Show telegram id in contact details form (#13611) 2026-02-23 19:26:45 +04:00
composables chore: Remove vue-multiselect and migrate to next components (#13506) 2026-02-17 16:40:12 +05:30
constants chore: Improve signup flow, reduce the number of inputs (#13350) 2026-01-22 18:47:42 -08:00
helper feat(V5): Update settings pages UI (#13396) 2026-02-19 15:04:40 +05:30
i18n feat(csat): Add WhatsApp utility template analyzer with rewrite guidance (#13575) 2026-02-24 15:11:04 +04:00
mixins feat: allow configuring attachment upload limit (#12835) 2025-11-17 14:03:08 -08:00
modules fix: search header overlap with new conversation form (#13548) 2026-02-20 11:24:37 +05:30
routes feat(csat): Add WhatsApp utility template analyzer with rewrite guidance (#13575) 2026-02-24 15:11:04 +04:00
store feat(csat): Add WhatsApp utility template analyzer with rewrite guidance (#13575) 2026-02-24 15:11:04 +04:00
stores feat: Voice Channel (#11602) 2025-12-19 12:41:33 -08:00
App.vue chore: Remove vue-multiselect package and styles from codebase (#13585) 2026-02-19 15:42:34 +05:30
featureFlags.js fix: V2 Assignment service enhancements (#13036) 2026-02-11 12:24:45 +05:30