diff --git a/.changeset/sharp-berries-hide.md b/.changeset/sharp-berries-hide.md new file mode 100644 index 000000000..1ab5981ca --- /dev/null +++ b/.changeset/sharp-berries-hide.md @@ -0,0 +1,5 @@ +--- +"bits-ui": patch +--- + +expose `currentPage` to the `Pagination.Root` snippets diff --git a/packages/bits-ui/src/lib/bits/pagination/pagination.svelte.ts b/packages/bits-ui/src/lib/bits/pagination/pagination.svelte.ts index 1773426a9..dcceba900 100644 --- a/packages/bits-ui/src/lib/bits/pagination/pagination.svelte.ts +++ b/packages/bits-ui/src/lib/bits/pagination/pagination.svelte.ts @@ -93,6 +93,7 @@ class PaginationRootState { snippetProps = $derived.by(() => ({ pages: this.pages, range: this.range, + currentPage: this.page.current, })); props = $derived.by( diff --git a/sites/docs/src/lib/content/api-reference/extended-types/pagination/pagination-child-snippet-props.md b/sites/docs/src/lib/content/api-reference/extended-types/pagination/pagination-child-snippet-props.md index 02b9e2474..19e1ceba2 100644 --- a/sites/docs/src/lib/content/api-reference/extended-types/pagination/pagination-child-snippet-props.md +++ b/sites/docs/src/lib/content/api-reference/extended-types/pagination/pagination-child-snippet-props.md @@ -18,6 +18,8 @@ type ChildSnippetProps = { pages: PageItem[]; /** The range of pages to render */ range: { start: number; end: number }; + /** The currently active page */ + currentPage: number; props: Record; }; ``` diff --git a/sites/docs/src/lib/content/api-reference/extended-types/pagination/pagination-children-snippet-props.md b/sites/docs/src/lib/content/api-reference/extended-types/pagination/pagination-children-snippet-props.md index 2c1a1995d..6bf6fa2d8 100644 --- a/sites/docs/src/lib/content/api-reference/extended-types/pagination/pagination-children-snippet-props.md +++ b/sites/docs/src/lib/content/api-reference/extended-types/pagination/pagination-children-snippet-props.md @@ -18,5 +18,7 @@ type ChildrenSnippetProps = { pages: PageItem[]; /** The range of pages to render */ range: { start: number; end: number }; + /** The currently active page */ + currentPage: number; }; ```