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-durationand--popser-anchored-transition-durationCSS 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.
expandedLimitprop on<Toaster>. Collapsed stack showslimittoasts, hover expands toexpandedLimit. (Sonner #637) - Close button position.
closeButtonPositionprop:"header"or"corner". Per-toast override supported. (Sonner #747) - AbortSignal for promise toasts.
signal,aborted, andonAbortoptions ontoast.promise(). Cancel in-flight requests and show a cancellation toast. (Sonner #681) - Entry direction.
enterFromoption:"top"|"bottom"|"left"|"right". Override the default slide direction per toast. (Sonner #671) - RTL support.
dirprop on<Toaster>:"ltr"|"rtl"|"auto". Flips positions, swipe directions, and animations. - Toast history.
toast.getHistory()andtoast.clearHistory(). Opt-in ring buffer viahistoryLengthprop. Records creation and closure with timestamps.
Changed
- 7 CSS files updated for new features (transitions, viewport, toast, controls).
types.tsexpanded with new option interfaces for all 8 features.index.tsbarrel 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