BetaPublic beta — Read the release notes
Documentation

Virtual List

Viewport-windowed list for large datasets.

Package
@solidiom/virtual-list
Version
0.0.1-next.0
Status
stable

Generated from the package's public source.

API

createVirtualizerfunction

@solidiom/virtual-list — Headless viewport-windowed list primitive. Parts: Root (scroll container), Item (positioned child). Also exports createVirtualizer() for standalone usage.

                        createVirtualizer(options: CreateVirtualizerOptions): VirtualizerState
                      

View source

CreateVirtualizerOptionsinterface

@solidiom/virtual-list — Headless viewport-windowed list primitive. Parts: Root (scroll container), Item (positioned child). Also exports createVirtualizer() for standalone usage.

Props

containerSize?
Accessor<number> — Container height in pixels.
itemSize
number | (index: number) => number — Fixed item height (px), or function for variable heights.
onScrollOffsetChange?
(offset: number) => void — Callback when scroll offset changes (for controlled mode).
overscan?
number — Number of extra items rendered above/below viewport. Default: 3.
port?
VirtualizationPort — Custom virtualization port. Uses fixed-height fallback if omitted.
scrollOffset?
Accessor<number> — Controlled scroll offset.
totalCount
Accessor<number> — Total number of items in the list.

View source

Itemcomponent

@solidiom/virtual-list — Headless viewport-windowed list primitive. Parts: Root (scroll container), Item (positioned child). Also exports createVirtualizer() for standalone usage.

                        Item(props: VirtualListItemProps): Element
                      

Props

class?
string
item
VirtualItem — The virtual item descriptor.
style?
string | CSSProperties

children: Element

View source

Rootcomponent

@solidiom/virtual-list — Headless viewport-windowed list primitive. Parts: Root (scroll container), Item (positioned child). Also exports createVirtualizer() for standalone usage.

                        Root(props: VirtualListRootProps): Element
                      

Props

class?
string — Custom class on the scroll container.
height
string — Height of the scroll container (CSS value).
itemSize
number | (index: number) => number — Fixed item height (px), or function for variable heights.
onScrollOffsetChange?
(offset: number) => void — Callback when scroll offset changes.
overscan?
number — Extra items rendered beyond viewport. Default: 3.
port?
VirtualizationPort — Custom virtualization port.
ref?
(el: HTMLDivElement) => void
scrollOffset?
Accessor<number> — Controlled scroll offset.
style?
string | CSSProperties — Custom styles on the scroll container.
totalCount
number — Total number of items.

children: (items: Accessor<VirtualItem[]>) => Element

View source

VirtualConfiginterface

Configuration passed to the virtualization port for computing visible items.

Props

containerSize
number
itemSize
number | (index: number) => number
overscan?
number
scrollOffset
number
totalCount
number

View source

VirtualIteminterface

A single virtual item with layout coordinates.

Props

end
number
index
number
size
number
start
number

View source

VirtualizationPortinterface

Adapter port for virtualization engines (e.g. TanStack Virtual). Consumers inject a custom implementation; a built-in fallback handles fixed-height lists when no port is provided.

View source

VirtualizerStateinterface

@solidiom/virtual-list — Headless viewport-windowed list primitive. Parts: Root (scroll container), Item (positioned child). Also exports createVirtualizer() for standalone usage.

Props

containerSize
Accessor<number>
scrollOffset
Accessor<number>
scrollToIndex
(index: number) => void
setScrollOffset
(offset: number) => void
totalSize
Accessor<number>
virtualItems
Accessor<VirtualItem[]>

View source

VirtualListContextValueinterface

Props

containerSize
Accessor<number>
scrollOffset
Accessor<number>
scrollToIndex
(index: number) => void
setScrollOffset
(offset: number) => void
totalSize
Accessor<number>
virtualItems
Accessor<VirtualItem[]>

View source

VirtualListItemPropsinterface

@solidiom/virtual-list — Headless viewport-windowed list primitive. Parts: Root (scroll container), Item (positioned child). Also exports createVirtualizer() for standalone usage.

Props

class?
string
item
VirtualItem — The virtual item descriptor.
style?
string | CSSProperties

children: Element

View source

VirtualListRootPropsinterface

@solidiom/virtual-list — Headless viewport-windowed list primitive. Parts: Root (scroll container), Item (positioned child). Also exports createVirtualizer() for standalone usage.

Props

class?
string — Custom class on the scroll container.
height
string — Height of the scroll container (CSS value).
itemSize
number | (index: number) => number — Fixed item height (px), or function for variable heights.
onScrollOffsetChange?
(offset: number) => void — Callback when scroll offset changes.
overscan?
number — Extra items rendered beyond viewport. Default: 3.
port?
VirtualizationPort — Custom virtualization port.
ref?
(el: HTMLDivElement) => void
scrollOffset?
Accessor<number> — Controlled scroll offset.
style?
string | CSSProperties — Custom styles on the scroll container.
totalCount
number — Total number of items.

children: (items: Accessor<VirtualItem[]>) => Element

View source