Release

2.1.0-beta.3

Missing exports and hooks docs

Exports Upload, DraggableResizableModal, Indicator, and all package hooks, and makes useHover a single root-level hook.

October 10, 2026

Breaking changes included

Highlights#

  • Components and hooks that were in the package but could not be imported are now exported.
  • useHover now has a single implementation, exported from the package root only.
  • New docs pages for the newly exported blocks, and a new Hooks section.

New block exports#

From @reactberry/system/blocks and @reactberry/system:

  • Upload — a file picker button (type="button") or drop area (type="dropzone") built on react-dropzone. Types: UploadProps, UploadComponent, DropzoneProps.
  • DraggableResizableModal, with ModalDragHandle, useDraggableModalDrag, GOLDEN_RATIO, SPLIT_DOCK_FRACTION, and the DraggableResizableModalProps type.
  • Indicator.

New hook exports#

From @reactberry/system:

useAutosizeTextArea, useKeyboardShortcuts, and useLocalStorage are now marked "use client".

Breaking changes#

  • useHover is no longer exported from @reactberry/system/blocks. The duplicate in Steps was removed; Steps now uses the root hook.
  • The root useHover is generic. Its ref type defaults to HTMLDivElement (the removed Steps version used HTMLElement).

Upgrade notes#

Change any useHover import from @reactberry/system/blocks to the package root:

typescript
import { useHover } from "@reactberry/system";

To attach the ref to an element that is not a div, pass the element type: useHover<HTMLButtonElement>().