# 
## Banner
Use banners to communicate important messages to customers in a prominent way.
[View Banner](/docs/api/checkout-ui-extensions/2023-04/components/banner)
## BlockLayout
BlockLayout is used to lay out content over multiple rows.

By default, all rows fill the available block space, sharing it equally.
[View BlockLayout](/docs/api/checkout-ui-extensions/2023-04/components/blocklayout)
## BlockSpacer
BlockSpacer is used to create empty block space, typically when variable spacing is needed between multiple elements.

Note that you should favor BlockStack when spacing between all elements is the same.
[View BlockSpacer](/docs/api/checkout-ui-extensions/2023-04/components/blockspacer)
## BlockStack
BlockStack is used to vertically stack elements.
[View BlockStack](/docs/api/checkout-ui-extensions/2023-04/components/blockstack)
## Button
Buttons are used for actions, such as “Add”, “Continue”, “Pay now”, or “Save”.
[View Button](/docs/api/checkout-ui-extensions/2023-04/components/button)
## Checkbox
Use checkboxes to give customers a single binary option, such as signing up for marketing, or agreeing to terms and conditions.
[View Checkbox](/docs/api/checkout-ui-extensions/2023-04/components/checkbox)
## Choice
Options inside a `ChoiceList`.

The wrapping `ChoiceList` component will dictate if the choice renders as radio buttons or checkboxes.
[View Choice](/docs/api/checkout-ui-extensions/2023-04/components/choice)
## ChoiceList
Use choice lists to present a list of choices where buyers can make a single selection or multiple selections.
[View ChoiceList](/docs/api/checkout-ui-extensions/2023-04/components/choicelist)
## DateField
Use a date field to get a date input from a customer.
[View DateField](/docs/api/checkout-ui-extensions/2023-04/components/datefield)
## DatePicker
The DatePicker component is a calendar picker UI that allows users to select a single date or a date range
[View DatePicker](/docs/api/checkout-ui-extensions/2023-04/components/datepicker)
## Disclosure
Disclosure is an optionally controlled component used to put long sections of information under content blocks that users can expand or collapse by pressing an activator. The activator can be specified as children using an action component (`Button`, `Link` or `Pressable`) or `Checkbox` component. The content blocks can be specified as children inside a structure component (`View`, `InlineLayout`, `BlockStack`, `Grid`, etc.).

The library takes care of applying the WAI-ARIA Accordion pattern automatically for the activator and the toggled content.
[View Disclosure](/docs/api/checkout-ui-extensions/2023-04/components/disclosure)
## Divider
A divider separates content and represents a thematic break between elements.
[View Divider](/docs/api/checkout-ui-extensions/2023-04/components/divider)
## Form
The form component should be used to wrap one or more form controls. This component provides an "implicit submit" behavior, where customers can submit the form from any input by pressing "Enter" on their keyboards. This behavior is widely expected, and should be respected as often as possible.

Unlike an HTML `form` element, this component does not support configuring the descendant fields to be submitted via HTTP automatically. Instead, you must provide an `onSubmit` callback that will perform the necessary HTTP requests in JavaScript.
[View Form](/docs/api/checkout-ui-extensions/2023-04/components/form)
## Grid
Grid is used to lay out content in a matrix of rows and columns.
[View Grid](/docs/api/checkout-ui-extensions/2023-04/components/grid)
## GridItem
GridItem can be used as children of Grid.

It offers a way to span the element across a number of columns and rows.
[View GridItem](/docs/api/checkout-ui-extensions/2023-04/components/griditem)
## Heading
Headings control the visual style of headings. Use headings to introduce major sections, like Contact information, Shipping address, or Shipping method.

Unlike HTML headings, you don’t explicitly specify the position of the heading in the document outline. Nest headings within the heading group component to control the document outline structure used by assistive technologies.
[View Heading](/docs/api/checkout-ui-extensions/2023-04/components/heading)
## HeadingGroup
Heading group controls the heading level of headings nested within it, like H1, H2, H3.

Use a heading group whenever you use a heading to ensure the experience is the same for screen reader users. When using a heading, any children related to that heading should be nested within the same heading group.
[View HeadingGroup](/docs/api/checkout-ui-extensions/2023-04/components/headinggroup)
## Icon
Icons are pictograms or graphic symbols. They can act as wayfinding tools or as a means of communicating functionality.
[View Icon](/docs/api/checkout-ui-extensions/2023-04/components/icon)
## Image
Image is used for large format, responsive images.
[View Image](/docs/api/checkout-ui-extensions/2023-04/components/image)
## InlineLayout
InlineLayout is used to lay out content over multiple columns.

By default, all columns are of equal size and fill the available inline space. Content does not wrap on new rows when not enough columns have been explicitly set, instead they are added as new column and fill the remaining inline space.
[View InlineLayout](/docs/api/checkout-ui-extensions/2023-04/components/inlinelayout)
## InlineSpacer
InlineSpacer is used to create empty inline space, typically when variable spacing is needed between multiple elements.

Note that you should favor InlineStack when spacing between all elements is the same.
[View InlineSpacer](/docs/api/checkout-ui-extensions/2023-04/components/inlinespacer)
## InlineStack
InlineStack is used to lay out a horizontal row of elements. Elements always wrap.
[View InlineStack](/docs/api/checkout-ui-extensions/2023-04/components/inlinestack)
## Link
Link makes text interactive so customers can perform an action, such as navigating to another location.
[View Link](/docs/api/checkout-ui-extensions/2023-04/components/link)
## List
Lists display a set of related content. Each list item usually begins with a bullet or a number.
[View List](/docs/api/checkout-ui-extensions/2023-04/components/list)
## ListItem
List items are used as children of the `List` component.

They usually begins with a bullet or a number.
[View ListItem](/docs/api/checkout-ui-extensions/2023-04/components/listitem)
## Modal
Modals are a special type of overlay that shift focus towards a specific action/set of information before the main flow can proceed. They must be specified inside the `overlay` prop of an activator component (`Button`, `Link` or `Pressable`).

The library takes care of applying the WAI-ARIA Dialog pattern automatically for the activator and the modal content.
[View Modal](/docs/api/checkout-ui-extensions/2023-04/components/modal)
## PhoneField
A PhoneField is an input field that merchants can type into optimized for phone numbers with a country code base auto-formatting. The country code is required for the initial render of the field but it can be overriden later by the user either by selecting a country in the country selection dropdown or by manually editing the country phone code directly in the text field.
[View PhoneField](/docs/api/checkout-ui-extensions/2023-04/components/phonefield)
## Popover
Popovers are similar to tooltips. They are small overlays that open on demand after a user interaction. The difference is that the popover can contain more content, without cluttering the page. They must be specified inside the `overlay` prop of an activator component (`Button`, `Link` or `Pressable`).

The library takes care of applying the WAI-ARIA Popover Widget pattern automatically for the activator and the popover content.
[View Popover](/docs/api/checkout-ui-extensions/2023-04/components/popover)
## Pressable
Pressable is a generic interactive component. It shares the same styling properties as View but also adds pressable behavior, meaning that you can execute some logic in response to user interaction. Use this component for creating interactive elements without the default styling that comes with `Button` and `Link`.
[View Pressable](/docs/api/checkout-ui-extensions/2023-04/components/pressable)
## ScrollView
ScrollView is a container for long form content, such as order summary line items, that allows for scrolling so customers can expose more content as they view.
[View ScrollView](/docs/api/checkout-ui-extensions/2023-04/components/scrollview)
## Select
Selects let buyers choose one option from an options menu. Consider select when you have 4 or more options, to avoid cluttering the interface.
[View Select](/docs/api/checkout-ui-extensions/2023-04/components/select)
## SkeletonImage
SkeletonImage is used to provide a low fidelity representation of an image before it appears on the page.
[View SkeletonImage](/docs/api/checkout-ui-extensions/2023-04/components/skeletonimage)
## SkeletonText
SkeletonText is used to provide a low fidelity representation of text content before it appears on the page. 

Optionally you can use any text content inside `SkeletonText` to be used as a base for the rendered skeleton
[View SkeletonText](/docs/api/checkout-ui-extensions/2023-04/components/skeletontext)
## SkeletonTextBlock
SkeletonTextBlock is used to provide a low fidelity representation of a block of text before it appears on the page. 

Optionally you can use any text content inside `SkeletonTextBlock` to be used as a base for the rendered skeleton
[View SkeletonTextBlock](/docs/api/checkout-ui-extensions/2023-04/components/skeletontextblock)
## Spinner
Spinner is used to notify buyers that their action is being processed. The Spinner is usually used when sending or receiving data from a server.
[View Spinner](/docs/api/checkout-ui-extensions/2023-04/components/spinner)
## Stepper
Use a stepper to increase or decrease a value, like changing the quantity from 1 to 2.
[View Stepper](/docs/api/checkout-ui-extensions/2023-04/components/stepper)
## Tag
A Tag is used to help label, organize or categorize objects. It is commonly used in Checkout to display the discounts applied to a cart.
[View Tag](/docs/api/checkout-ui-extensions/2023-04/components/tag)
## Text
Text is used to visually style and provide semantic value for a small piece of text content.
[View Text](/docs/api/checkout-ui-extensions/2023-04/components/text)
## TextBlock
Text block is used to render a block of text that occupies the full width available, like a paragraph.
[View TextBlock](/docs/api/checkout-ui-extensions/2023-04/components/textblock)
## TextField
Use a text field to get text input from a customer.
[View TextField](/docs/api/checkout-ui-extensions/2023-04/components/textfield)
## Tooltip
Tooltips are floating labels that briefly explain the function of a user interface element. They must be specified inside the `overlay` prop of an activator component. Currently, activator components are `Button`, `Link`, and `Pressable`.

The library takes care of applying the WAI-ARIA Tooltip Widget pattern automatically for the activator and the tooltip content. Expect screen readers to read the tooltip content when the user focuses the activator.
[View Tooltip](/docs/api/checkout-ui-extensions/2023-04/components/tooltip)
## View
View is a generic container component. Its contents will always be their “natural” size, so this component can be useful in layout components (like `Grid`, `BlockStack`, `InlineStack`) that would otherwise stretch their children to fit.
[View View](/docs/api/checkout-ui-extensions/2023-04/components/view)
## StyleHelper
This is a helper for authoring conditional values for property styles.

Write complex conditional styles based on one or more conditions, such as viewport sizes and interactive states, in a concise and expressive way.
[View StyleHelper](/docs/api/checkout-ui-extensions/2023-04/components/stylehelper)