useScrollOverflow @astryx-svelte/core v0.3.0 · hooks

Usage

Tracks scroll overflow state for a horizontally scrollable container. Returns a ref callback and state booleans that update as the user scrolls or the container resizes. Uses scroll event listeners and ResizeObserver for reactive updates. Tolerance of 1px is applied to avoid sub-pixel false positives.
ts
import { hooks } from '@astryx-svelte/core/hooks';

Best practices

GuidancePractices
DoUse to show/hide scroll navigation buttons or fade edges on carousels and horizontal lists.
DoApply the scrollRef to a container with overflow-x: auto or overflow-x: scroll.
Don'tUse for vertical scroll tracking; this hook only measures horizontal overflow.

Returns

FieldTypeDefaultDescription
scrollRef (node: HTMLElement | null) => voidRef callback to attach to the horizontally scrollable container element.

Element references are attachments here. The port returns an Attachment<HTMLElement> named attach…; spread it onto the element instead of assigning a ref.Upstream declares React.RefCallback<HTMLElement>.

overflowStart booleanWhether content overflows the start edge (left in LTR, right in RTL).
overflowEnd booleanWhether content overflows the end edge (right in LTR, left in RTL).
hasOverflow booleanWhether the container has any scroll overflow at all (scrollWidth > clientWidth).