iachat/app/javascript/dashboard/components-next/Contacts
Pranav 7cddba2b08
feat: Add infinite scroll to contacts search page (#13376)
## Summary
- Add `has_more` to contacts search API response to enable infinite
scroll without expensive count queries
- Set `count` to the number of items in the current page instead of
total count
- Implement "Load more" button for contacts search results
- Keep existing contacts visible while loading additional pages

## Changes

### Backend
- Add `fetch_contacts_with_has_more` method that fetches N+1 records to
determine if more pages exist
- Return `has_more` in search endpoint meta response
- Set `count` to current page size instead of total count

### Frontend
- Add `APPEND_CONTACTS` mutation for appending contacts without clearing
existing ones
- Update search action to support `append` parameter
- Add `ContactsLoadMore` component with loading state
- Update `ContactsListLayout` to support infinite scroll mode
- Update `ContactsIndex` to use infinite scroll for search view
2026-01-27 18:55:19 -08:00
..
ContactLabels feat: Agent capacity policy Create/Edit pages (#12424) 2025-09-12 18:42:55 +05:30
ContactsCard feat: Bulk delete for contacts (#12778) 2025-11-04 17:47:53 -08:00
ContactsForm fix: Add Contact form buttons cut off on mobile web (fixes #13081) (#13099) 2025-12-18 05:34:35 +05:30
ContactsHeader feat: Ability to filter contact based on labels (#12343) 2025-09-02 12:35:18 +05:30
ContactsSidebar chore: Remove older UI (#11720) 2025-07-01 09:43:44 +05:30
EmptyState chore: Update contact empty state data (#12207) 2025-08-18 12:06:03 +05:30
Pages feat: Bulk delete for contacts (#12778) 2025-11-04 17:47:53 -08:00
ContactsDetailsLayout.vue feat: outbound voice call essentials (#12782) 2025-11-24 17:47:00 -08:00
ContactsListLayout.vue feat: Add infinite scroll to contacts search page (#13376) 2026-01-27 18:55:19 -08:00
ContactsLoadMore.vue feat: Add infinite scroll to contacts search page (#13376) 2026-01-27 18:55:19 -08:00
VoiceCallButton.vue feat: Voice Channel (#11602) 2025-12-19 12:41:33 -08:00