Pagination

Pagination splits an ordered collection of resources into separate pages

Item Count

Healthy
Show details
Healthy
Published: February 21, 2024
Updated: February 21, 2024

Pages

Known issues
Show details
Known issues
Published: February 21, 2024
Updated: February 21, 2024

Overview

The Pagination component is a crucial element for navigation through lists or collections of items, such as Campaigns, Templates, Journeys, and Snippets within Iterable. It enhances the user experience by displaying a limited number of items per page, enabling marketers to easily navigate through large datasets without overwhelming load times or clutter.

🟡 Pagination

Design

The pagination is a collection of Secondary and Tertiary (ghost) buttons and the states and styles should be inherited from those components.

 

Structure

  • Previous and Next buttons: Used for navigating between pages. When on the first page, the left arrow is not visible.
  • Page numbers (extended only): Displayed in the middle, allowing direct navigation to a specific page.
  • Ellipses (extended only): Used to indicate a break in the sequence for long lists, showing only the first, last, and neighboring pages (before and after) If there are are multiple to the current page.

Variants

  • Simple Pagination: Includes only 'Previous' and 'Next' buttons for shorter lists.
  • Extended Pagination: Incorporates page numbers alongside 'Previous' and 'Next' buttons for navigating through larger datasets.
Simple pagination

Simple pagination

Extended pagination

Extended pagination

 

Results per page

Results per page is another part of the pagination component that impacts the number of pages. Based on the marketer’s selection, it determines how many of a particular resource are shown in a table at one time.

A smaller result count may lead to a larger page count and vice versa.These are generally reserved for index footers only.

🟢 Pagination results per page

🟢 Pagination results per page

Results per page interaction

Results per page interaction

This uses a Button Group component. Interactions are inherited from that component.

 

 

Guidelines

Use cases

  • Index Pages: Use on any page that lists items (e.g., Campaigns, Templates) to manage the analysis and visibility of extensive data.
Pagination example index

Pagination example index

 

No arrows on page bookends

When on the first page or last page, no back arrow should be visible. Visible page count should show the first, last, and neighboring pages (before and after) of the current page. The arrows take the marketer to the previous or next pages.

Extended pagination example - first page

Extended pagination example - first page

The first page doesn't include the previous arrow. It also includes the second and third pages, as well as the last page. The arrow takes the user the user to the next page, or in this case—page 2.

Extended pagination exmaple

Extended pagination exmaple

Last page

Last page

An inverse of the first page configuration. No arrow to the right, shows the previous 2 pages and the first page. The arrow takes the user to the previous page, in this case—page 9.

 

 

  • Keep the UI simple and intuitive.
  • Ensure the current page number is clearly highlighted.
  • Use ellipses to indicate skipped sections in large lists.
  • Overwhelm users with too many visible page numbers.
  • Disable pagination if the list can be displayed on a single page.

Accessibility

  • Ensure that the pagination component is keyboard navigable, allowing marketers to use arrow keys for navigation.
  • Use aria-current="page" to indicate the current page and aria-label attributes on buttons to provide context (e.g., aria-label="Go to next page").

Health

Item Count

Component checklist

Is documented

The component is fully documented

Accessibile

Tested against WCAG 2.1 AAA accessibility guidelines

Tokens

This component uses tokens in both Figma and code

Figma component

Includes a link to a Figma component that has been imported to Supernova

Storybook

Includes a link to an external code repository

-

Status

The component has a health status indicated

Healthy

Pages

Component checklist

Is documented

The component is fully documented

Accessibile

Tested against WCAG 2.1 AAA accessibility guidelines

Tokens

This component uses tokens in both Figma and code

Figma component

Includes a link to a Figma component that has been imported to Supernova

Storybook

Includes a link to an external code repository

-

Status

The component has a health status indicated

Known issues