Elit mollit eu irure elit exercitation aliqua mollit sit ut sint culpa sit. Aliqua consequat anim pariatur qui minim duis dolore sit amet. Elit amet exercitation incididunt in ut nisi et nisi pariatur. Commodo laboris officia id dolore sit aute laborum ut. Mollit veniam esse esse adipisicing labore velit aliqua voluptate. Eiusmod incididunt excepteur labore mollit sint occaecat non commodo enim.
Consequat do id laborum tempor laborum incididunt. Sunt magna dolor incididunt velit labore sit consequat laborum tempor pariatur aliquip aliquip mollit. Quis amet id adipisicing adipisicing laboris Lorem commodo. Exercitation cupidatat et esse adipisicing non. Ut commodo labore ipsum occaecat esse ex id laboris voluptate consectetur eu eu. Consectetur in veniam commodo dolore consectetur veniam ut commodo tempor eu minim laborum tempor quis. Eiusmod esse minim excepteur est esse cillum reprehenderit.
Lorem laboris dolor veniam amet officia irure qui labore. Nostrud nulla aliquip ad ut ipsum id officia laboris consectetur. Enim consequat mollit proident nulla non consectetur excepteur. Eu labore enim cillum consequat reprehenderit magna. Eiusmod occaecat eiusmod dolore reprehenderit amet sit in quis nisi reprehenderit nulla fugiat laborum.
Ut Lorem irure aliquip fugiat non excepteur proident minim commodo in officia tempor nulla culpa. Exercitation id magna elit occaecat proident qui et nulla proident ex est et ea. Ipsum consectetur ea non deserunt quis esse elit occaecat excepteur cillum id reprehenderit. Ea mollit officia officia cillum et ad incididunt officia cillum ad excepteur adipisicing elit aute. Consequat enim laborum magna veniam est sunt exercitation ea dolore tempor laboris sit laborum.
Cupidatat elit do non ad nulla magna eu occaecat labore proident adipisicing. Consequat esse dolore occaecat ad aute pariatur amet est irure. Dolor nisi amet incididunt enim adipisicing consequat esse occaecat aute voluptate laboris tempor commodo cillum. Consectetur commodo incididunt sit ad sunt Lorem laborum elit tempor irure excepteur sint. Officia dolor officia voluptate sunt laboris laborum anim cillum enim excepteur dolore dolore elit. Ipsum aute fugiat irure magna irure magna in occaecat culpa pariatur consectetur. Qui aute eu magna consequat culpa fugiat consequat.
Cupidatat ea Lorem minim labore voluptate adipisicing dolore. Excepteur labore aliqua consectetur exercitation eiusmod ea. Minim aute incididunt cupidatat irure veniam dolor minim cupidatat ullamco velit est. Fugiat labore ut labore exercitation nostrud id irure est occaecat. Ex aliquip magna culpa tempor eu qui. Sint duis enim exercitation enim non voluptate incididunt quis sit. Voluptate ut occaecat amet excepteur.
Ex officia excepteur esse cupidatat cillum dolor aliquip quis sit eiusmod. Sit veniam est irure eu reprehenderit irure sint. Voluptate pariatur velit ad amet labore non excepteur minim culpa laborum ex laborum ad. Dolore aliqua occaecat nulla do pariatur cupidatat nisi Lorem. Aliqua nulla deserunt ullamco officia proident consequat eiusmod enim consectetur laborum fugiat.
Incididunt eu aliquip consequat ex dolor in do do qui nisi. Esse eiusmod exercitation officia sit. Exercitation dolore ipsum quis non deserunt eiusmod fugiat. Sit anim consequat esse culpa sit eiusmod dolore ea est. Aliquip aute ut dolor consectetur ea proident quis veniam occaecat proident. Elit quis ipsum excepteur sint sunt amet ut reprehenderit elit dolor eu.
Nostrud ad nostrud voluptate adipisicing eiusmod nulla non exercitation exercitation ut pariatur excepteur. Mollit velit laborum id minim cillum qui culpa labore officia dolor mollit. Aliquip aliquip labore ea est officia ea non sunt nisi veniam cillum laborum do aliqua.
Pariatur ex cillum irure exercitation ad voluptate tempor nulla mollit do. Amet laborum elit nisi ut dolore eu quis. Enim dolore commodo commodo consequat aliqua enim commodo laboris. Proident cillum voluptate occaecat enim sint duis tempor aute eu cillum occaecat.
Installation
npx @park-ui/cli add scroll-areaAdd Component
Copy the code snippet below into you components folder.
'use client'
import { ScrollArea } from '@ark-ui/react/scroll-area'
import type { ComponentProps } from 'react'
import { createStyleContext } from 'styled-system/jsx'
import { scrollArea } from 'styled-system/recipes'
const { withProvider, withContext } = createStyleContext(scrollArea)
export type RootProps = ComponentProps<typeof Root>
export type ContentProps = ComponentProps<typeof Content>
export const Root = withProvider(ScrollArea.Root, 'root')
export const RootProvider = withProvider(ScrollArea.Root, 'root')
export const Content = withContext(ScrollArea.Content, 'content')
export const Corner = withContext(ScrollArea.Corner, 'corner')
export const Thumb = withContext(ScrollArea.Thumb, 'thumb')
export const Scrollbar = withContext(ScrollArea.Scrollbar, 'scrollbar', {
defaultProps: { children: <Thumb /> },
})
export const Viewport = withContext(ScrollArea.Viewport, 'viewport')
export { ScrollAreaContext as Context } from '@ark-ui/react/scroll-area'
Integrate Recipe
Integrate this recipe in to your Panda config.
import { defineSlotRecipe } from '@pandacss/dev'
export const scrollArea = defineSlotRecipe({
className: 'scroll-area',
slots: ['root', 'viewport', 'content', 'scrollbar', 'thumb', 'corner'],
base: {
root: {
display: 'flex',
flexDirection: 'column',
width: '100%',
height: '100%',
position: 'relative',
overflow: 'hidden',
'--scrollbar-margin': '0px',
'--scrollbar-size': 'calc(var(--thumb-size) + calc(var(--scrollbar-margin) * 2))',
},
viewport: {
display: 'flex',
flexDirection: 'column',
height: '100%',
width: '100%',
WebkitOverflowScrolling: 'touch',
scrollbarWidth: 'none',
'&::-webkit-scrollbar': {
display: 'none',
},
'&[data-overflow-x] [data-pinned]': {
_after: {
content: '""',
position: 'absolute',
pointerEvents: 'none',
top: '0',
bottom: '-1px',
width: '32px',
},
},
'&[data-overflow-x]:not([data-at-left]) [data-pinned="left"]': {
_after: {
insetInlineEnd: '0',
translate: '100% 0',
boxShadow: 'inset',
},
},
},
scrollbar: {
alignItems: 'center',
display: 'flex',
position: 'relative',
touchAction: 'none',
userSelect: 'none',
zIndex: 'overlay',
_vertical: {
flexDirection: 'column',
width: 'var(--scrollbar-size)',
py: 'var(--scrollbar-margin)',
'&:not([data-overflow-y])': {
display: 'none',
},
},
_horizontal: {
flexDirection: 'row',
height: 'var(--scrollbar-size)',
px: 'var(--scrollbar-margin)',
'&:not([data-overflow-x])': {
display: 'none',
},
},
},
thumb: {
borderRadius: 'full',
bg: 'var(--thumb-bg)',
transitionDuration: 'normal',
transitionProperty: 'background, color, box-shadow',
transitionTimingFunction: 'default',
_vertical: { width: 'var(--thumb-size)' },
_horizontal: { height: 'var(--thumb-size)' },
},
corner: {},
},
defaultVariants: {
size: 'md',
scrollbar: 'auto',
},
variants: {
scrollbar: {
auto: {
scrollbar: {
'&[data-scrolling], &[data-hover]': {
'--thumb-bg': '{colors.gray.subtle.bg.active}',
},
},
},
visible: {
content: {
'&[data-overflow-y]': {
pe: 'var(--scrollbar-size)',
},
'&[data-overflow-x]': {
pb: 'var(--scrollbar-size)',
},
},
scrollbar: {
bg: 'gray.subtle.bg',
borderRadius: 'full',
},
thumb: {
'--thumb-bg': '{colors.gray.subtle.bg.active}',
},
},
},
size: {
xs: { root: { '--thumb-size': 'sizes.1' } },
sm: { root: { '--thumb-size': 'sizes.1.5' } },
md: { root: { '--thumb-size': 'sizes.2' } },
lg: { root: { '--thumb-size': 'sizes.2.5' } },
},
},
})
Usage
import { ScrollArea } from '@/components/ui'
<ScrollArea.Root>
<ScrollArea.Viewport>
<ScrollArea.Content />
</ScrollArea.Viewport>
<ScrollArea.Scrollbar>
<ScrollArea.Thumb />
</ScrollArea.Scrollbar>
<ScrollArea.Corner />
</ScrollArea.Root>
Examples
Visibility
Use the scrollbar prop to change the scrollbar visibility behavior.
Scrollbar: auto
Reprehenderit tempor magna commodo in elit sit quis sit aute. Non sunt duis amet magna sunt. Anim laborum commodo officia incididunt adipisicing consequat fugiat consequat consectetur laboris adipisicing.
Ad commodo sunt ad eu pariatur fugiat ex nulla. Anim occaecat ullamco enim cupidatat elit cillum culpa commodo tempor quis exercitation officia. Sunt esse nisi incididunt mollit amet in.
Culpa ullamco culpa cillum laborum in deserunt esse. Fugiat aliqua pariatur cupidatat est cupidatat. Do duis nulla aliqua duis laborum sit duis voluptate elit voluptate consequat laboris anim.
Sint eiusmod ad nostrud incididunt anim enim dolor. Nisi adipisicing commodo Lorem ad elit ex ex nisi fugiat consequat in Lorem. Est irure aliqua consectetur occaecat velit commodo mollit nisi et irure ea ea duis non. Culpa aliquip in non et proident proident eiusmod pariatur elit laboris Lorem. Non officia officia pariatur esse esse amet nulla aute mollit do cupidatat id quis. Do officia incididunt aliquip laboris est do id dolore sint cillum dolore velit.
Commodo ex do velit exercitation ad ut et nulla ex incididunt deserunt ad. Dolore aliquip tempor nisi veniam esse velit. Ullamco enim tempor Lorem tempor duis quis adipisicing proident. Incididunt ex qui cillum ad sint eu cupidatat. Ad velit dolore proident laborum tempor magna proident culpa. Deserunt excepteur est do nostrud velit consequat aute proident do. Mollit nulla aliqua magna voluptate ut incididunt.
Aute sunt non esse tempor magna proident. Culpa excepteur culpa eu nostrud fugiat commodo est. Aute esse elit mollit sit id. Elit adipisicing quis culpa dolore id consequat laboris aute irure.
Ipsum officia officia deserunt cillum adipisicing deserunt ut. Magna est est aliqua dolore cillum cillum. Est cupidatat sit qui eiusmod mollit cillum esse officia ad. Proident dolor ullamco anim do commodo sit deserunt amet enim irure. Pariatur reprehenderit reprehenderit duis esse consectetur velit pariatur. Et aliqua officia adipisicing occaecat dolore esse dolor aliqua culpa veniam non do consectetur do. Ad culpa aliquip consectetur sunt fugiat et laboris in.
Pariatur voluptate minim eiusmod do qui officia deserunt eu nisi ut. Duis culpa nulla reprehenderit anim fugiat sit magna culpa in veniam. Eu do qui ad est occaecat aliquip duis aliquip ex. Dolor quis aliquip occaecat non ex qui proident occaecat excepteur fugiat sit. Aliquip consectetur laboris cillum mollit incididunt sint.
Nisi sit nulla duis voluptate ea. Dolor amet tempor adipisicing anim ex pariatur. Ad nostrud elit Lorem labore et officia. Laborum ullamco non commodo ex pariatur duis cupidatat ut consectetur qui dolor aliquip laborum. Consequat incididunt id cillum nulla aute nostrud ut. Veniam dolor magna amet irure sunt.
Aute consectetur sit quis sit minim mollit sit adipisicing aliqua dolore. Nulla amet nulla minim id sit ipsum fugiat eiusmod ipsum reprehenderit mollit velit ullamco minim. Tempor ullamco nisi adipisicing adipisicing cupidatat officia fugiat. Exercitation magna dolor ullamco duis et veniam sint eu anim aliqua sunt aliqua. Culpa enim sit eiusmod excepteur consequat consectetur et reprehenderit ad anim dolore.
Scrollbar: visible
Sint cillum deserunt culpa eiusmod amet occaecat do sunt aliquip commodo enim ipsum. Eiusmod laborum adipisicing elit dolor tempor incididunt fugiat qui magna nostrud esse do laboris. Enim non veniam dolore ipsum consequat consequat est nisi veniam ex velit Lorem est dolore. Enim minim enim eiusmod mollit nulla cupidatat esse.
Est laboris pariatur reprehenderit ex. Anim laborum laboris ad non laboris nostrud magna Lorem aliquip officia incididunt dolore dolor. Exercitation aute laboris labore ut labore labore proident duis est do officia dolor anim. Ex dolor fugiat laborum ullamco culpa est duis Lorem magna non. Ex sunt laboris anim non ullamco. Occaecat cillum excepteur officia excepteur.
Dolor velit nulla sunt qui. Ut commodo sunt ut ea magna magna et commodo consequat exercitation. Magna officia adipisicing quis eiusmod eu excepteur do duis exercitation.
Ad ipsum voluptate sint nulla do dolor ut. Sunt ad adipisicing magna laborum nulla. Adipisicing proident ullamco cillum tempor in Lorem tempor ad.
Fugiat deserunt magna mollit amet sunt. Voluptate labore tempor culpa adipisicing laboris eu proident ut adipisicing Lorem. Sunt qui enim tempor est et pariatur exercitation magna proident eiusmod aute adipisicing.
Esse eiusmod anim non excepteur. Exercitation sit mollit eu fugiat ad qui amet mollit laborum nisi pariatur minim. Consectetur ipsum dolor consequat ut ut ad eu commodo qui in non voluptate eu quis.
Mollit do duis fugiat ullamco laborum do ex. Culpa tempor pariatur laborum dolor adipisicing laborum consequat in aute do. Ea laboris dolore sint nulla mollit fugiat et dolore mollit dolor pariatur sunt nulla aute. Culpa cupidatat incididunt do enim occaecat.
Duis exercitation incididunt reprehenderit mollit duis sit amet qui eiusmod est in et. Culpa do proident ad laboris aliquip in excepteur officia non elit commodo enim occaecat. Excepteur officia et ex deserunt veniam eiusmod exercitation voluptate cupidatat deserunt adipisicing. Aliqua tempor irure nostrud non.
Do occaecat ex commodo ut. Excepteur amet dolor reprehenderit dolor amet velit ex mollit dolor excepteur ea enim adipisicing adipisicing. Tempor in esse nisi labore. Eu nulla nisi aliquip duis sit do in proident. Anim ullamco fugiat excepteur sunt. Dolore Lorem cupidatat adipisicing voluptate labore laborum nisi tempor consectetur et.
Officia esse magna incididunt esse et aute laboris cupidatat tempor quis. Dolor elit pariatur cupidatat magna excepteur reprehenderit laboris. Est ex culpa sint exercitation in non aute velit ipsum aliqua quis ullamco veniam aliquip.
Sizes
Use the size prop to change the size of the scroll area. This affects the scrollbar thickness and content padding.
Size: xs
Ex ex aliqua eu veniam deserunt Lorem id cupidatat. Non aliquip ut excepteur enim qui aute duis deserunt. Occaecat laboris nostrud sint laboris tempor tempor fugiat ullamco velit pariatur tempor.
Magna ea Lorem incididunt occaecat commodo irure excepteur reprehenderit do nulla eiusmod aliqua. Culpa commodo ad ad Lorem sint sit sunt veniam non adipisicing eu sunt nulla. Reprehenderit in laborum ut et. Deserunt et dolore dolor dolor occaecat amet id enim.
Ipsum nulla proident do sint cillum reprehenderit tempor ex ut cillum. Veniam eiusmod reprehenderit excepteur elit eiusmod dolore anim proident ut adipisicing quis sint officia adipisicing. Enim minim in adipisicing et amet. Ad non voluptate ullamco id magna excepteur cupidatat dolor culpa amet. Deserunt est ullamco duis proident esse sunt officia quis dolor deserunt aliqua dolore Lorem enim.
Tempor sint enim voluptate ex nostrud nostrud ipsum laboris sint. Nulla est proident occaecat ex amet adipisicing eiusmod laboris ut dolore elit. Magna labore ex culpa ea consectetur sint. Excepteur labore nulla consequat enim adipisicing pariatur magna id id deserunt anim dolore. Nostrud ut adipisicing elit do enim exercitation non sunt mollit veniam amet.
Fugiat adipisicing id dolor consectetur laborum veniam laborum sit elit labore mollit in. Sint irure irure ullamco irure irure anim exercitation sit ad. Nisi et occaecat amet enim culpa excepteur magna magna excepteur tempor. Consequat tempor incididunt est consectetur cillum nostrud et duis sunt do adipisicing tempor. Aliquip ad esse ea adipisicing mollit veniam aliquip veniam labore reprehenderit reprehenderit. Cupidatat Lorem aute consectetur laboris sit commodo non eiusmod sunt aliquip esse. Lorem pariatur nulla non voluptate magna occaecat eu.
Adipisicing voluptate esse tempor non anim nulla ipsum laborum aute culpa aliqua consequat laboris. Cupidatat Lorem incididunt amet excepteur consectetur consectetur elit ea ut magna. Ut anim deserunt sunt voluptate nostrud ipsum pariatur veniam. Ea anim magna consequat proident sunt consectetur elit. Sunt elit dolore magna eiusmod non deserunt pariatur consectetur. Duis anim ullamco laboris nulla amet aute eiusmod qui enim nostrud non quis amet quis. Eiusmod do anim et consectetur culpa ut exercitation pariatur.
Proident nostrud proident dolore fugiat dolore et id aute est. Dolore aute nisi consequat nulla aliquip. Sunt qui do nisi ex. Reprehenderit occaecat ut exercitation ex et incididunt. Officia quis sint consectetur officia pariatur cillum in pariatur nulla est eu. Tempor commodo minim Lorem reprehenderit velit officia qui velit cupidatat enim irure. Consectetur exercitation in aute veniam aute eu do ut velit eiusmod esse incididunt eu reprehenderit.
Aliquip nisi quis consectetur adipisicing. Exercitation excepteur duis eu non proident non. Aliqua ut Lorem reprehenderit id occaecat deserunt. Id voluptate deserunt exercitation amet consequat consectetur excepteur eiusmod. Non veniam labore officia et id non laborum duis deserunt laboris.
Proident sit officia nulla pariatur enim sunt laborum eiusmod. Commodo tempor deserunt ut sit occaecat do ad tempor veniam exercitation consectetur excepteur excepteur. Ullamco pariatur eiusmod non ex ullamco anim adipisicing ipsum. Nulla do ipsum cillum anim ullamco amet quis officia dolore et cupidatat enim eu dolor. Cupidatat non duis quis eu quis reprehenderit consequat consequat voluptate ea adipisicing Lorem sunt. Ullamco qui sunt mollit anim eu et duis cillum laboris culpa proident voluptate et proident. Esse deserunt commodo in nulla eiusmod laborum ut proident magna anim sunt ipsum.
Eiusmod excepteur id adipisicing elit adipisicing culpa. Aute officia commodo fugiat fugiat magna velit proident dolore ea. Sunt amet exercitation consectetur consectetur. Lorem ut in eiusmod sint do. Ad deserunt voluptate labore elit. Sit id amet velit tempor.
Size: sm
Nostrud velit esse cupidatat magna exercitation adipisicing cupidatat exercitation dolor. Eu non amet nulla exercitation reprehenderit fugiat minim velit exercitation quis incididunt commodo. Consequat magna adipisicing ea ut aute proident incididunt voluptate esse dolore. Reprehenderit fugiat mollit ullamco est exercitation et id dolore. Laborum nisi eiusmod excepteur est adipisicing pariatur ut minim eiusmod. Mollit sit laborum irure voluptate ipsum exercitation occaecat enim do consequat Lorem in ex duis.
Exercitation adipisicing nisi voluptate qui consequat proident consectetur nostrud culpa irure exercitation. Laboris mollit voluptate commodo sunt culpa nulla est adipisicing in. Consequat id nostrud est consectetur do. Nostrud enim nostrud id qui ex sunt. Cillum anim sunt minim exercitation mollit cupidatat eu veniam sint ut aliquip dolor irure.
Culpa est magna excepteur eiusmod nisi. Exercitation commodo pariatur id consectetur esse. Laboris laboris occaecat irure fugiat. Sunt fugiat excepteur cillum fugiat in qui quis dolor mollit voluptate eu. Et magna dolor velit anim labore cillum ipsum cupidatat irure enim reprehenderit et quis sit.
Anim culpa aliquip ad velit irure minim do. Adipisicing ipsum pariatur in ullamco sit consequat sunt ex voluptate occaecat aliqua. Sint sint culpa est nisi ut eiusmod ea irure velit culpa. Ex voluptate minim sit et nulla amet labore ut. Ut voluptate officia cillum magna veniam occaecat nulla velit ipsum esse.
Pariatur culpa veniam ex eu excepteur sint sit pariatur eiusmod irure. Labore laborum laboris non commodo incididunt laboris sint aute non aute velit consequat. Nulla sunt dolore id excepteur ut ad eiusmod. Esse irure amet velit ut est cupidatat tempor elit eiusmod Lorem reprehenderit est in. In cupidatat labore fugiat sunt Lorem sunt eiusmod aute laborum. Et minim duis ea amet fugiat. Incididunt ullamco in quis voluptate pariatur pariatur tempor officia mollit nostrud consequat sit.
Tempor nulla aliquip non qui qui labore commodo Lorem cupidatat enim aliqua occaecat fugiat enim. Aliqua do velit enim fugiat. Cupidatat id voluptate et laborum do ut officia proident fugiat.
Dolore nisi consequat laborum quis dolor amet id adipisicing proident id pariatur exercitation non veniam. Irure nisi do minim laborum pariatur irure ea. Lorem occaecat elit nisi ea labore velit. Incididunt minim velit officia et labore fugiat aliquip duis cupidatat. Anim do aliqua adipisicing tempor.
Aute voluptate ullamco eiusmod adipisicing. Deserunt laborum velit cillum aute pariatur consequat. Eiusmod ut nostrud sunt est eiusmod nulla veniam enim irure et culpa deserunt. Sint eiusmod incididunt id anim magna exercitation officia magna aliqua veniam veniam.
Deserunt labore reprehenderit in in ullamco officia adipisicing cillum fugiat. Consectetur ullamco sit veniam duis fugiat excepteur culpa consequat. Consequat culpa eiusmod eu culpa elit proident culpa sint dolore aliqua pariatur amet in aliquip.
Esse incididunt ex do officia mollit. Nulla cillum commodo deserunt esse sit minim. Consequat qui laborum Lorem consectetur sunt ex fugiat amet excepteur aliquip culpa pariatur. Fugiat id labore laboris dolor. Cillum incididunt in fugiat quis ipsum officia proident mollit cillum. Tempor fugiat minim culpa officia id consectetur incididunt proident tempor officia sit in et fugiat.
Size: md
Tempor elit incididunt Lorem veniam in consequat ea culpa dolore non ea ut cupidatat. Reprehenderit ex sit elit id esse culpa aliqua reprehenderit sunt esse cupidatat laborum officia. Cillum elit do fugiat tempor eu dolor deserunt duis aliquip fugiat duis fugiat. Velit ad occaecat est tempor ea quis id in officia tempor.
Eu mollit eu ad laboris. Reprehenderit mollit deserunt magna mollit velit duis laborum consequat in dolor quis occaecat veniam. Reprehenderit ex duis mollit ipsum eu Lorem eu do cupidatat. Mollit est tempor laborum et id officia ad in. Aliqua cupidatat veniam Lorem et consequat aute adipisicing Lorem velit proident duis reprehenderit Lorem. Dolore ullamco officia aute magna nulla enim.
In anim cillum dolor eiusmod cillum nostrud. In do excepteur commodo ex pariatur qui cupidatat culpa. Do sint in ea et est fugiat officia incididunt. Adipisicing elit qui officia amet id laboris velit dolore velit culpa tempor.
Aliquip excepteur ipsum ullamco irure Lorem elit minim cillum voluptate. Ullamco consequat est aliquip pariatur. Sunt occaecat ut mollit pariatur proident do id. Excepteur eiusmod reprehenderit irure labore.
Anim nulla adipisicing labore enim. Proident in laboris ex irure voluptate minim voluptate. Id aliqua aute laboris tempor do commodo. Lorem ea eu eiusmod amet aliquip consequat exercitation magna qui officia magna nulla.
In aute non dolore reprehenderit deserunt velit ea laboris esse labore. Laborum aute amet nostrud irure id culpa sit tempor id consectetur aliqua nisi amet consequat. Non sit cupidatat minim occaecat sint ullamco laboris labore est est. Qui officia fugiat ad amet excepteur non labore. Incididunt veniam ex ex quis. Excepteur incididunt ut dolor pariatur amet nostrud qui fugiat.
Excepteur anim eu quis exercitation non id excepteur aliqua nostrud cillum culpa adipisicing. Nulla fugiat enim minim officia cupidatat occaecat adipisicing id ad eiusmod eiusmod ipsum amet elit. Laboris duis exercitation labore labore deserunt irure. Aute ad amet pariatur est nostrud minim. Nisi aute reprehenderit fugiat qui voluptate exercitation deserunt deserunt. Est velit elit reprehenderit est consectetur eu ipsum ipsum deserunt adipisicing eu. Dolor est et proident occaecat consequat fugiat occaecat sit ut.
Incididunt anim exercitation qui ullamco adipisicing commodo est anim pariatur cillum dolor. Ut mollit elit adipisicing duis proident velit et laboris ut ullamco do proident. Dolore id fugiat nisi do amet incididunt in eiusmod labore cupidatat. Ex incididunt nisi et proident fugiat ipsum deserunt in nisi aliqua esse aliqua Lorem. Officia cupidatat irure pariatur in reprehenderit. Amet sint amet pariatur pariatur consectetur ea nostrud veniam ea. Ad id aliquip eiusmod velit nostrud dolore aliquip ipsum irure.
Magna pariatur do consequat consequat nulla ex aliqua consequat pariatur ipsum duis. Nulla qui qui labore aliquip est quis enim non mollit velit magna. Sunt reprehenderit et reprehenderit deserunt aliqua cupidatat. Voluptate ex officia nisi adipisicing. In irure excepteur enim id culpa.
Elit id ad veniam adipisicing cillum consectetur mollit dolore eu ex sit ad aliqua magna. Aliquip duis labore reprehenderit occaecat culpa qui ad ex aliquip. Culpa anim non pariatur laboris sit sunt fugiat dolore cupidatat sint amet officia aliquip qui. Culpa qui quis ea veniam nulla pariatur laborum eu proident Lorem pariatur qui excepteur. Sint nisi aliqua nostrud laboris.
Size: lg
Quis sit laborum occaecat consectetur non nostrud culpa excepteur labore mollit velit. Sunt sit dolor sunt consectetur mollit culpa. Sunt veniam labore reprehenderit id qui sunt cillum ipsum nisi reprehenderit non proident. Velit proident ex est dolor quis velit eu veniam dolore labore consectetur. Ut ea esse id sit sint ex consectetur aliqua laboris sit. Aliquip consectetur cupidatat est ea in dolor. Voluptate aliquip minim ut nostrud duis.
Cupidatat ad elit ea adipisicing sint pariatur do elit laborum. Eiusmod irure eu pariatur minim tempor ipsum ipsum eiusmod elit. Mollit proident ipsum consectetur sint. Nostrud ea deserunt fugiat minim commodo occaecat ullamco fugiat aute aliqua. Quis est tempor occaecat non ea occaecat sit minim labore ipsum voluptate.
Laboris pariatur labore nisi laborum et minim aute ea sit. Sint laboris laboris ad ipsum laboris non veniam adipisicing nulla nostrud officia qui pariatur velit. Elit ipsum qui non ad. Elit commodo ea reprehenderit veniam nisi. Aute cillum occaecat minim culpa.
Do velit nostrud qui in mollit velit. Eu ullamco nulla occaecat eiusmod id pariatur ipsum irure. Mollit commodo dolor et commodo quis Lorem adipisicing. Labore occaecat magna dolor anim aute nostrud eiusmod tempor labore eiusmod eiusmod excepteur fugiat excepteur. Incididunt elit occaecat ex ipsum dolore in adipisicing ullamco eu nostrud. Reprehenderit aliqua qui Lorem elit ipsum officia consectetur aliqua culpa est labore. Eu deserunt aliqua velit et amet deserunt consequat.
Deserunt duis cillum consequat eu sint minim labore ipsum duis. Sint sint voluptate quis dolore excepteur anim in dolor elit pariatur voluptate et. Officia officia tempor exercitation culpa. Esse enim ad aute sit dolor id Lorem. Aliqua cillum est anim non.
Nisi deserunt nulla adipisicing officia pariatur mollit. Cupidatat duis officia do minim eu pariatur ad nulla. Incididunt esse aute eiusmod pariatur eiusmod deserunt nisi ea commodo aute consectetur. Exercitation consectetur duis esse ad. Culpa ullamco est sunt minim ex ex mollit exercitation deserunt. Cupidatat minim consectetur in consequat aliqua ex cupidatat culpa id mollit incididunt non ullamco ex. Fugiat cillum consequat deserunt culpa pariatur dolore est.
Lorem ex exercitation do magna. Minim minim sunt ad tempor laborum nisi. Nulla esse eu qui officia amet dolore proident cillum aliquip officia occaecat. Nisi duis eiusmod esse adipisicing cillum dolore incididunt laboris laborum nulla elit nulla. Aliquip commodo elit quis est.
Sit irure anim ullamco laborum labore consequat sit ex id culpa anim do id. Velit mollit laborum ad nisi quis. Commodo et quis consequat quis sunt dolor anim tempor ut veniam magna non tempor.
Veniam ea anim dolore cupidatat enim dolore. Cupidatat id proident voluptate do sit. Consequat dolor pariatur aliqua tempor est eiusmod nostrud aliquip ipsum qui anim elit. Irure reprehenderit aliqua ad cillum eu sint proident qui nostrud nisi. Commodo consequat est ad cupidatat culpa aliquip quis velit nostrud sunt laboris dolor ipsum consequat.
Duis proident sint non reprehenderit amet esse aliqua. Consequat reprehenderit adipisicing magna velit nulla irure non deserunt ut consectetur. Adipisicing dolor pariatur aliqua est fugiat non quis quis non dolore enim aute. Nulla cupidatat aute et eiusmod voluptate elit laborum sit. Tempor voluptate consequat anim enim cupidatat duis.
Horizontal
The scroll area automatically supports horizontal scrolling when content overflows horizontally.
Virtualization
Use @tanstack/react-virtual to handle large datasets efficiently by rendering only visible items.
Infinite Scroll
Here is an example of implementing infinite scroll with the scroll area component.
Props
Root
| Prop | Default | Type |
|---|---|---|
scrollbar | 'auto' | 'auto' | 'visible' |
size | 'md' | 'xs' | 'sm' | 'md' | 'lg' |
asChild | booleanUse the provided child element as the default rendered element, combining their props and behavior. | |
ids | Partial<{ root: string; viewport: string; content: string; scrollbar: string; thumb: string }>The ids of the scroll area elements |
Scrollbar
| Prop | Default | Type |
|---|---|---|
asChild | booleanUse the provided child element as the default rendered element, combining their props and behavior. | |
orientation | Orientation |