Message Scroller
uiable/message-scrollerFreeComponent
Message Scroller component.
Live preview
live · rendered by the registry
Rendered by uiable on their own page — this is the component running, not a screenshot of it.Install it
npx shadcn@latest add https://uiable.com/r/message-scroller.jsonSource
1"use client"23import { ComponentProps } from "react"45import {6 MessageScroller as MessageScrollerPrimitive,7 useMessageScroller,8 useMessageScrollerScrollable,9 useMessageScrollerVisibility,10} from "@shadcn/react/message-scroller"11import { ArrowDownIcon } from "lucide-react"1213import { cn } from "@/lib/utils"14import { Button } from "@/components/ui/button"1516function MessageScrollerProvider(17 props: ComponentProps<typeof MessageScrollerPrimitive.Provider>18) {19 return <MessageScrollerPrimitive.Provider {...props} />20}2122function MessageScroller({23 className,24 ...props25}: ComponentProps<typeof MessageScrollerPrimitive.Root>) {26 return (27 <MessageScrollerPrimitive.Root28 data-slot="message-scroller"29 className={cn(30 "group/message-scroller relative flex size-full min-h-0 flex-col overflow-hidden",31 className32 )}33 {...props}34 />35 )36}3738function MessageScrollerViewport({39 className,40 ...props41}: ComponentProps<typeof MessageScrollerPrimitive.Viewport>) {42 return (43 <MessageScrollerPrimitive.Viewport44 data-slot="message-scroller-viewport"45 className={cn(46 "scroll-fade-b size-full min-h-0 min-w-0 scrollbar-thin scrollbar-gutter-stable overflow-y-auto overscroll-contain contain-content data-autoscrolling:scrollbar-thumb-transparent data-autoscrolling:scrollbar-track-transparent",47 className48 )}49 {...props}50 />51 )52}5354function MessageScrollerContent({55 className,56 ...props57}: ComponentProps<typeof MessageScrollerPrimitive.Content>) {58 return (59 <MessageScrollerPrimitive.Content60 data-slot="message-scroller-content"61 className={cn("flex h-max min-h-full flex-col gap-6", className)}62 {...props}63 />64 )65}6667function MessageScrollerItem({68 className,69 scrollAnchor = false,70 ...props71}: ComponentProps<typeof MessageScrollerPrimitive.Item>) {72 return (73 <MessageScrollerPrimitive.Item74 data-slot="message-scroller-item"75 scrollAnchor={scrollAnchor}76 className={cn(77 "min-w-0 shrink-0 [contain-intrinsic-size:auto_10rem] [content-visibility:auto]",78 className79 )}80 {...props}81 />82 )83}8485function MessageScrollerButton({86 direction = "end",87 className,88 children,89 render,90 variant = "secondary",91 size = "icon-sm",92 ...props93}: ComponentProps<typeof MessageScrollerPrimitive.Button> &94// … truncated
What it pulls in
npm packages
Other registry items
Files it writes
More from uiable
All 712 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| Accordionaccordion | uiable | Components | Free | 2 deps | |
| Alertalert | uiable | Components | Free | 1 dep | |
| Alert Dialogalert-dialog | uiable | Components | Free | 1 dep | |
| Aspect Ratioaspect-ratio | uiable | Components | Free | no deps | |
| Attachmentattachment | uiable | Components | Free | 2 deps | |
| Avataravatar | uiable | Components | Free | 1 dep | |
| Badgebadge | uiable | Components | Free | 2 deps | |
| Breadcrumbbreadcrumb | uiable | Components | Free | 2 deps |
