Bottom Sheet

Design System - Bottom Sheet component

The Bottom Sheet is a flexible, slide-up container designed to provide supplementary content or actions without disrupting the main screen. It supports modular interactions like previews, confirmations, or micro-tasks, enhancing task efficiency and reducing navigational depth.

// Sample code

  <CheckBox
    label="Label"
    onChange={(e)=>{console.log(e.target.checked}}
  />

Anatomy

Variants


Default

A simple bottom sheet layout with a header, short description, and optional content. Best used for lightweight contextual information.

With Actions Includes one or more action buttons at the bottom of the sheet, useful for tasks like confirming selections, saving changes, or proceeding to next steps.

Custom

Fully customizable content area with additional elements like images, forms, or dynamic content blocks. Ideal for detailed workflows or input-heavy interactions.

Properties

Drag Enabled A draggable indicator allows users to pull the bottom sheet up or down, enabling smooth expand/collapse interactions on touch or mobile interfaces.

Additional Widgets Supports the inclusion of elements like icons, images, forms, toggles, or dropdowns, depending on context and user need.

Custom Height

Allows for variable height adjustments based on content needs, either fixed height or auto-adjusting to fit dynamic content gracefully.

Property Configuration Table

Each design component offers a range of configurable options. These options are intentionally platform-agnostic, allowing implementations to adapt and tailor them to align with the specific requirements of the chosen framework.

Property
Value
Default

children

text

-

initialState

text

-

enableActions

yes/no

no

actions

yes/no

no

equalWidthButtons

number

-

className

yes/no

no

style

yes/no

no

Usage Guide


Use for Mobile-Friendly Overlays

Use the Bottom Sheet for short interactions like selecting options, viewing summaries, or executing simple actions.

Don’t use it for full-length forms or detailed multi-step tasks—use a full modal or side panel instead.

Change log


Date
Number
Notes

Dec 15, 2024

v-0.0.2

This component is added to the website. This component is now individually versioned.

Design Checklist


All interactive states - Includes all interactive states that are applicable (hover, down, focus, keyboard focus, disabled).

Accessible use of colours - Colour is not used as the only visual means of conveying information (WCAG 2.1 1.4.1)

Accessible contrast for text - Text has a contrast ratio of at least 4.5:1 for small text and at least 3:1 for large text (WCAG 2.0 1.4.3).

Accessible contrast for UI components - Visual information required to identify components and states (except inactive components) has a contrast ratio of at least 3:1 (WCAG 2.1 1.4.11).

Keyboard interactions - Includes all interactive states that are applicable (hover, down, focus, keyboard focus, disabled).

Screen reader accessible - All content, including headings, labels, and descriptions, is meaningful, concise, contextual and accessible by screen readers.

Responsive for all breakpoints - Responsiveness for 3 breakpoints - Mobile, Tablet and Desktop

Usage guidelines - Includes a list of dos and don'ts that highlight best practices and common mistakes.

Content guidelines - Content standards and usage guidelines for writing and formatting in-product content for the component.

Defined variants and properties - Includes relevant variants and properties (style, size, orientation, optional iconography, decorative elements, selection states, error states, etc.)

Defined behaviours - Guidelines for keyboard navigation and focus, layout management (including wrapping, truncation, and overflow), animations, and user interactions.

Design Kit - Access to the design file for the component in Figma, multiple options, states, colour themes, and platform scales.

Last updated

Was this helpful?