Skip to main content

Timeline

The Timeline component displays events, steps, or activities in chronological order with visual indicators.

Installation

yarn add @twilio-paste/timeline

Usage

Basic Timeline

import { Timeline, TimelineItem } from '@twilio-paste/timeline';

<Timeline>
  <TimelineItem title="Order Placed" timestamp="2 hours ago">
    Your order has been placed successfully.
  </TimelineItem>
  <TimelineItem title="Processing" timestamp="1 hour ago">
    We are preparing your order.
  </TimelineItem>
  <TimelineItem title="Shipped" timestamp="30 minutes ago">
    Your order is on its way.
  </TimelineItem>
</Timeline>

Timeline with Icons

import { SuccessIcon } from '@twilio-paste/icons/esm/SuccessIcon';
import { ProcessingIcon } from '@twilio-paste/icons/esm/ProcessingIcon';

<Timeline>
  <TimelineItem title="Completed" icon={SuccessIcon} timestamp="2 hours ago">
    Task completed successfully.
  </TimelineItem>
  <TimelineItem title="In Progress" icon={ProcessingIcon} timestamp="Now">
    Currently processing.
  </TimelineItem>
</Timeline>

Collapsible Timeline Items

<Timeline>
  <TimelineItem 
    title="Step 1" 
    timestamp="Yesterday"
    collapsible
    collapsibleHeading="View Details"
  >
    Detailed information about step 1.
  </TimelineItem>
  <TimelineItem 
    title="Step 2" 
    timestamp="Today"
    collapsible
  >
    Detailed information about step 2.
  </TimelineItem>
</Timeline>

Interactive Timeline Items

<Timeline>
  <TimelineItem 
    title="Clickable Item" 
    timestamp="Now"
    onClick={() => console.log('clicked')}
  >
    Click this item to trigger an action.
  </TimelineItem>
  <TimelineItem 
    title="Disabled Item" 
    timestamp="Future"
    disabled
  >
    This item is disabled.
  </TimelineItem>
</Timeline>

Props

Timeline

element
string
default:"TIMELINE"
Overrides the default element name to apply unique styles with the Customization Provider.

TimelineItem

title
string
required
Title to display in the timeline item.
timestamp
string
Timestamp to display in the timeline item.
icon
React.FC<GenericIconProps>
Pass a Paste Icon to display in place of dot.
collapsible
boolean
default:"false"
If true, the timeline item will be collapsible.
collapsibleHeading
string
In case of collapsible timeline item and no timestamp, this will be used as the heading.
element
string
default:"TIMELINE_ITEM"
Overrides the default element name to apply unique styles with the Customization Provider.
onClick
React.MouseEventHandler<HTMLButtonElement>
Add an action to the timeline item.
disabled
boolean
default:"false"
If true, the timeline item will be disabled.

TimelineItemGroup

Groups multiple timeline items together.
element
string
default:"TIMELINE_ITEM_GROUP"
Overrides the default element name to apply unique styles with the Customization Provider.

Features

  • Vertical connector line between items
  • Support for custom icons
  • Collapsible content sections
  • Interactive items with onClick handlers
  • Timestamps for each event
  • Disabled state support
  • Grouping support for related items

Build docs developers (and LLMs) love