Generic selectors

Exact matches only

Search in title

Search in content

Post Type Selectors

Sortable List

A sortable list is a feature that enables users to move items within a section by dragging and dropping them, facilitating the reordering of items, creation of hierarchies, and updating of lists.

  • Overview
  • Specs
  • Guidelines

Pattern

A Sortable List allows users to rearrange items within a list by dragging and dropping. This interactive feature enhances user experience by enabling intuitive and efficient organization of list elements.

Sortable List Anatomy
  • A: Switch Variation: In this version, the user will only have the option to activate or deactivate the item in the list;
  • B: Buttons Variation: In this version, the user will only have options associated with the item in the list;
  • 1: Icon: A visual indicator that means the item is movable and can be rearranged, providing additional context and support;
  • 2: Label: Guides users on how to interact with the control;
  • 3: Support Label: A text input field that allows users to manually enter the date;
  • 4: Actions: Multiple actions that can be customized.

Sortable List in a from builder context

Used for:

Form builders:

Makes it easier to arrange form elements according to specific needs.

Task management applications:

Users can efficiently prioritize and organize tasks by reordering them.

Content management systems:

Helps users manage content hierarchy and order in a visual and intuitive way.

Don’t use for:

Small, simple lists:

Sorting functionality may add unnecessary complexity without providing significant benefits.

Static lists:

In the case of static lists, reordering items is not needed and could lead to confusion.

Complex hierarchical data:

Simple sortable lists may not adequately represent or handle complex data hierarchies, requiring more sophisticated solutions.

Sortable List in a static list context

Demo

Access the Figma file and inspect the element using Dev Mode.

Sortable List at Figma

Related

Label

A Label serves as a crucial element for enhancing the clarity and usability of a digital interface …

Data Grid

Data Grids are used to efficiently organize information and make it easier for users to consult it …

Variations

The sortable list is available in two versions: one featuring a support label and incorporating three possible actions, along with a toggle switch; and another one featuring only a toggle switch. For further details, please refer to their respective documentation pages.

sortable_list_variations
Sortable list variations in light and dark mode

Typography

Headings in structured lists should be capitalized in title case, whereas all other text should be in sentence case.

ElementSizeFont-weightType token
Heading14RegularLabel/Label Regular
Alternative Text12RegularLabel/Label Small

Spacings

Spacings for the Sortable item

States

Enabled
Sortable List item enabled state
.enabled {
border-radius: var(--Border-Radius-x-small-radius, 4px);
border: 1px solid var(--Greys-Grey-5);
background: var(--Greys-Grey-1);
}
Hover
Sortable List item hover state
.hover{
border-radius: var(--Border-Radius-x-small-radius, 4px);
border: 1px solid var(--Greys-Grey-5);
background: var(--Greys-Grey-2);
}
Pressed
Sortable List item pressed state
.pressed{
border-radius: var(--Border-Radius-x-small-radius, 4px);
border: 1px solid var(--Greys-Grey-5);
background: var(--Theme-Theme-10);
}
Drag
Sortable List item drag state
.drag{
border-radius: var(--Border-Radius-x-small-radius, 4px);
border: 1px solid var(--Greys-Grey-5);
background: var(--Greys-Grey-1);

/* Shadows/LightMode/Fixed Sections/Top */
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.10);
}
Drag w/area
Sortable List item drag w/area state
.drag{
border-radius: var(--Border-Radius-x-small-radius, 4px);
border: 1px solid var(--Greys-Grey-5);
background: var(--Greys-Grey-1);

/* Shadows/LightMode/Fixed Sections/Top */
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.10);

/* Drop area */
border-radius: var(--Border-Radius-x-small-radius, 4px);
border: 1px solid var(--Theme-Theme-40);
background: var(--Theme-Theme-10);
}
Focus
Sortable List item focus state
.focus{
border-radius: var(--Border-Radius-x-small-radius, 4px);
border: 1px solid var(--Greys-Grey-8);
background: var(--Greys-Grey-1);
}
Disabled
Sortable List item disabled state
.disable{
border-radius: var(--Border-Radius-x-small-radius, 4px);
border: 1px solid var(--Greys-Grey-5);
background: var(--Greys-Grey-1);
}

Useful links

guidelines figma accent icon

Consult our Figma file to access our assets and inspect them in dev mode.

polygon-framework

This component is or will be provided by the Polygon framework. See its documentation to learn more.

This element is in line with the guidelines of the CDS (Cegid Design System). Find out more.

Usage

A sortable list is employed to allow users to reorganize items within a list through drag-and-drop interactions.

By providing a flexible and intuitive way to manage and organize items, a sortable list enhances user experience and increases productivity in various applications.

Use complex iconography for the actions;

Add different actions other then the ones provided;

Use both action and switch variations at the same time.


Behavior

Cursor Changes:

  • In mouse-driven interfaces, changing the cursor shape can signify drag-and-drop capability. When users hover over a draggable object, the cursor shifts to indicate that clicking will start the dragging process;

Feedback that an Object Has Been Grabbed:

  • Once the user grabs the draggable object, two forms of feedback are necessary: confirmation that the object has been successfully grabbed and a preview of the outcome before the user drops the object;

Dragging above existing content:

  • If a component is dragged above the canvas, existing content should be pushed down to create a drop zone;

Magnetism and Snapping in Place:

  • According to Fitts’s Law, accurately moving the cursor to a specific on-screen location can be difficult, making drag-and-drop inefficient for precise adjustments. To address this, implementing a magnetic snapping effect can help by automatically aligning objects into place, even if the user hasn’t precisely targeted them.
Sortable Item about to snap in place

Case Studies

Building a new Seamless User Experience

Using a design system is like having a set of building blocks for creating digital products. It ensures everything looks …

Discover the exciting features

Compose Design brings a host of thrilling and transformative new features designed to enhance your experience. Dive into our latest …

Benefits of a Design System

A design system is a collection of reusable components and guidelines that ensure consistency and efficiency in building digital products …

Useful links

guidelines figma accent icon

Consult our Figma file to access our assets and inspect them in dev mode.

polygon-framework

This component is or will be provided by the Polygon framework. See its documentation to learn more.

This element is in line with the guidelines of the CDS (Cegid Design System). Find out more.

Outline