Skip to content

v1.2.0

Latest

Choose a tag to compare

@vcode-sh vcode-sh released this 28 Feb 17:09
· 6 commits to main since this release

The "Sonner issues tab as a roadmap" release. Eight features, every one of them pulled from a real GitHub issue where someone asked Sonner for it and got silence. 39 new tests.

Added

  • Animation duration customization. --popser-transition-duration and --popser-anchored-transition-duration CSS custom properties. Pure CSS, zero JS. (Sonner #690)
  • Popover API support. Toast viewport uses popover="manual" + showPopover(). Toasts render in the top layer, above dialogs and modals. Progressive enhancement — falls back gracefully in older browsers. (Sonner #655, #667)
  • Expanded limit. expandedLimit prop on <Toaster>. Collapsed stack shows limit toasts, hover expands to expandedLimit. (Sonner #637)
  • Close button position. closeButtonPosition prop: "header" or "corner". Per-toast override supported. (Sonner #747)
  • AbortSignal for promise toasts. signal, aborted, and onAbort options on toast.promise(). Cancel in-flight requests and show a cancellation toast. (Sonner #681)
  • Entry direction. enterFrom option: "top" | "bottom" | "left" | "right". Override the default slide direction per toast. (Sonner #671)
  • RTL support. dir prop on <Toaster>: "ltr" | "rtl" | "auto". Flips positions, swipe directions, and animations.
  • Toast history. toast.getHistory() and toast.clearHistory(). Opt-in ring buffer via historyLength prop. Records creation and closure with timestamps.

Changed

  • 7 CSS files updated for new features (transitions, viewport, toast, controls).
  • types.ts expanded with new option interfaces for all 8 features.
  • index.ts barrel export updated with new type exports (ToastHistoryEntry).

Full Changelog: https://github.com/vcode-sh/popser/blob/main/CHANGELOG.md

Full Changelog: v1.1.1...v1.2.0