Skip to main content
Elastic UI
Elastic UI
ComponentsPatternsContentData visualization
EUI ChangelogGitHubFigma
  • Guidelines
    • Getting started
    • Accessibility
    • Writing
    • Testing
  • Theming
    • Theme provider
    • Color mode
    • High contrast mode
    • Borders
    • Breakpoints
    • Colors
    • Sizing
    • Typography
  • Templates
    • Page template
    • Sitewide search
  • Layout
    • Accordion
    • Bottom bar
    • Flex
    • Flyout
    • Header
    • Horizontal rule
    • Modal
    • Page components
    • Page header
    • Panel
    • Popover
    • Resizable container
    • Spacer
  • Navigation
    • Breadcrumbs
    • Buttons
    • Collapsible nav
    • Context menu
    • Facet
    • Key pad menu
    • Link
    • Pagination
    • Side nav
    • Steps
      • Horizontal steps
    • Tabs
    • Tree view
  • Display
    • Aspect ratio
    • Avatar
    • Badge
    • Callout
    • Card
    • Comment list
    • Description list
    • Drag and drop
    • Empty prompt
    • Health
    • Icons
    • Image
    • List group
    • Loading
    • Progress
    • Skeleton
    • Stat
    • Text
    • Timeline
    • Title
    • Toast
    • Tooltip
    • Tour
  • Forms
    • Form controls
    • Form layouts
    • Form validation
    • Text controls
    • Numeric controls
    • Selection controls
    • Search and filter controls
    • Date and time controls
    • Other controls
  • Tabular content
    • Tables
    • Data grid
  • Editors & Syntax
    • Code
    • Markdown
  • Utilities
    • Accessibility
    • Auto sizer
    • Beacon
    • Color palettes
    • Copy
    • CSS utility classes
    • Delay
    • Error boundary
    • Focus trap
    • Highlight and mark
    • HTML ID generator
    • I18n
    • Inner text
    • Mutation observer
    • Outside click detector
    • Overlay mask
    • Portal
    • Pretty duration
    • Provider
    • Resize observer
    • Scroll
    • Text diff
    • Text truncation
    • Window events
  • EUI
  • Navigation
  • Steps

Steps

EuiSteps presents procedural content in a numbered outline format. It is best used when presenting instructional content that must be conducted in a particular order. It requires a

title and children to be present and will automatically increment the step number based on the initial firstStepNumber.

Loading...

Complex steps

If you need to call out a set of substeps that are not lines of code, most likely a <ol/>, wrap the block in a <EuiSubSteps/>.

Loading...

Heading elements

To aid with accessibility and hierarchical headings, you can and should pass in a heading element to use for each step title. The example below shows that the logical heading element should be an h2and therefore adds headingElement="h2" to the EuiSteps component.

The style of the title will not be affected.

Loading...

Steps status

Steps can optionally include status prop that will alter the look of the number prefix. The options are incomplete, complete, warning, danger, disabled and loading. This is used mostly as a final step when you need to make some sort of final check.

Loading...

Custom title sizes

You can set a different title size using titleSize. If titleSize is set in both EuiSteps and EuiStep, the latter value will override the former. Additionally, the title size xs will automatically generate smaller steps circles.

The title size xxs affects only the size of the accompanying unnumbered step indicator, but not the title itself.

Loading...

Props

EuiSteps

Extends HTMLAttributes
𐘂𐘂
✄𐘗✄𐘗
Prop
↦
Description and type
↦
Default value
↵
Prop
steps#
↦
Description and type

An array of EuiStep objects excluding the step prop

Type: EuiContainedStepProps[]
↦
Default value
Required
↵
Prop
firstStepNumber#
↦
Description and type

The number the steps should begin from

Type: number
↦
Default value
1
↵
Prop
headingElement#
↦
Description and type

The HTML tag used for the title

Type: string
↦
Default value
p
↵
Prop
titleSize#
↦
Description and type

Title sizing equivalent to EuiTitle, but only m, s, xs font sizes.
The xxs size reduces the size of the accompanying step indicator, but not the title itself.

Type: "xs" | "s" | "m" | "xxs"
↦
Default value
s
↵
Prop
className#
↦
Description and type
Type: string
↦
Default value
↵
Prop
aria-label#
↦
Description and type
Type: string
↦
Default value
↵
Prop
data-test-subj#
↦
Description and type
Type: string
↦
Default value
↵
Prop
css#
↦
Description and type
Type: Interpolation<Theme>
↦
Default value
↵
𐘂𐘂

EuiStep

Extends HTMLAttributes
𐘂𐘂
✄𐘗✄𐘗
Prop
↦
Description and type
↦
Default value
↵
Prop
title#
↦
Description and type
Type: string
↦
Default value
Required
↵
Prop
className#
↦
Description and type
Type: string
↦
Default value
↵
Prop
aria-label#
↦
Description and type

Defines a string value that labels the current element.
@see aria-labelledby.

Type: string
↦
Default value
↵
Prop
data-test-subj#
↦
Description and type
Type: string
↦
Default value
↵
Prop
css#
↦
Description and type
Type: Interpolation<Theme>
↦
Default value
↵
Prop
children#
↦
Description and type

ReactNode to render as this component's content

Type: ReactNode
↦
Default value
↵
Prop
headingElement#
↦
Description and type

The HTML tag used for the title

Type: string
↦
Default value
p
↵
Prop
step#
↦
Description and type

The number of the step in the list of steps

Type: number
↦
Default value
1
↵
Prop
status#
↦
Description and type

May replace the number provided in props.step with alternate styling.

Type: "warning" | "danger" | "disabled" | "current" | "loading" | "incomplete" | "complete"
↦
Default value
↵
Prop
titleSize#
↦
Description and type

Title sizing equivalent to EuiTitle, but only m, s, xs font sizes.
The xxs size reduces the size of the accompanying step indicator, but not the title itself.

Type: "xs" | "s" | "m" | "xxs"
↦
Default value
s
↵
𐘂𐘂

EuiStepNumber

Extends HTMLAttributes
𐘂𐘂
✄𐘗✄𐘗
Prop
↦
Description and type
↦
Default value
↵
Prop
status#
↦
Description and type

May replace the number provided in props.number with alternate styling

Type: "warning" | "danger" | "disabled" | "current" | "loading" | "incomplete" | "complete"
↦
Default value
↵
Prop
number#
↦
Description and type
Type: number
↦
Default value
↵
Prop
titleSize#
↦
Description and type

Title sizing equivalent to EuiTitle, but only m, s, xs.
none indicates no step number should be rendered.

Type: "xs" | "s" | "m" | "none"
↦
Default value
s
↵
Prop
className#
↦
Description and type
Type: string
↦
Default value
↵
Prop
aria-label#
↦
Description and type
Type: string
↦
Default value
↵
Prop
data-test-subj#
↦
Description and type
Type: string
↦
Default value
↵
Prop
css#
↦
Description and type
Type: Interpolation<Theme>
↦
Default value
↵
𐘂𐘂

EuiSubSteps

Extends HTMLAttributes
𐘂𐘂
✄𐘗✄𐘗
Prop
↦
Description and type
↦
Default value
↵
Prop
className#
↦
Description and type
Type: string
↦
Default value
↵
Prop
aria-label#
↦
Description and type

Defines a string value that labels the current element.
@see aria-labelledby.

Type: string
↦
Default value
↵
Prop
data-test-subj#
↦
Description and type
Type: string
↦
Default value
↵
Prop
css#
↦
Description and type
Type: Interpolation<Theme>
↦
Default value
↵
𐘂𐘂
Edit this page

Previous
Side nav
Next
Horizontal steps
  • Complex steps
  • Heading elements
  • Steps status
  • Custom title sizes
  • Props
EUI is dual-licensed under Elastic License 2.0 and Server Side Public License, v 1 | Crafted with ❤ by Elastic