Shared LiveComponent for all Cinder data layouts (Table, List, etc.).
This component handles all data management logic:
- State management (filters, sorting, pagination)
- Event handling (filter_change, toggle_sort, goto_page, etc.)
- Async data loading
- URL state synchronization
The actual HTML rendering is delegated to a renderer module passed via
the renderer assign. Each renderer implements a render/1 function
that receives the assigns and returns HEEx.