0👍
I realise it’s tempting to have a paginator deal with fetching data, but I think the best approach is to have the paginator be completely decoupled from the data it is paginating.
So, the parent should pass through the maximum number of pages and the paginator component should emit the page number back to the parent which should then deal with obtaining the data based on that page number. This means that you can develop different pagination components that utilise the paginator without having to create one complex component.
I did actually write something a few months back that takes this approach which you are welcome to look at on my GitHub Page, although this particular component isn’t stable, but it should give you an idea of what I mean.