diff --git a/src/components/Pagination/Pagination.svelte b/src/components/Pagination/Pagination.svelte index 103a5517..56a149b0 100644 --- a/src/components/Pagination/Pagination.svelte +++ b/src/components/Pagination/Pagination.svelte @@ -17,24 +17,18 @@ export let pageText = page => `page ${page}`; export let style = undefined; export let totalItems = 0; - + import CaretLeft24 from 'carbon-icons-svelte/lib/CaretLeft24'; import CaretRight24 from 'carbon-icons-svelte/lib/CaretRight24'; import { cx, fillArray } from '../../lib'; import Select, { SelectItem } from '../Select'; - import { createEventDispatcher } from 'svelte'; + import { afterUpdate, createEventDispatcher } from 'svelte'; const dispatch = createEventDispatcher(); - const handlePaginationChange = (type, value) => { - if (type === 'pageSize') { - page = 1; - pageSize = value; - } else { - page = value; - } - dispatch('update', {pageSize, page}); - }; + afterUpdate(() => { + dispatch('update', {pageSize, page}); + }); $: totalPages = Math.max(Math.ceil(totalItems / pageSize), 1); $: selectItems = fillArray(totalPages); @@ -57,9 +51,6 @@ hideLabel noLabel inline - on:blur={() => { - handlePaginationChange('pageSize', pageSize); - }} bind:selected={pageSize}> {#each pageSizes as size, i (size)} @@ -80,10 +71,7 @@ class={cx('--select__page-number')} labelText={`Page number, of ${totalPages} pages`} inline - hideLabel - on:blur={() => { - handlePaginationChange('page', page); - }} + hideLabel bind:selected={page}> {#each selectItems as size, i (size)} @@ -96,9 +84,8 @@