Skip to content

Releases: seniv/react-native-notifier

Release 3.0.0-rc.5

21 Jan 21:24
Compare
Choose a tag to compare
Release 3.0.0-rc.5 Pre-release
Pre-release

3.0.0-rc.5 (2025-01-21)

Bug Fixes

  • fix bottom positions when useRNScreensOverlay is true (eb83858)
  • prevent animation glitch when hide notification immediately after showing (5841d65)

Release 3.0.0-rc.4

20 Jan 20:58
Compare
Choose a tag to compare
Release 3.0.0-rc.4 Pre-release
Pre-release

3.0.0-rc.4 (2025-01-20)

Features

  • New methods: isNotificationVisible, hideById, isVisibleById, shakeById, updateById (279413c)

Release 3.0.0-rc.3

20 Jan 19:44
Compare
Choose a tag to compare
Release 3.0.0-rc.3 Pre-release
Pre-release

3.0.0-rc.3 (2025-01-20)

Bug Fixes

  • fix showing animation when "onLayout" event is delayed (old arch) (d09907e)
  • notification not hiding when hideNotification is called immediately after showNotification (aed3e1b)
  • fix component max width when use one of the edge positions (07d9f22)
  • fix provided style priority in toast & notification components (831d844)

Features

Release 3.0.0-rc.2

17 Jan 16:19
Compare
Choose a tag to compare
Release 3.0.0-rc.2 Pre-release
Pre-release

3.0.0-rc.2 (2025-01-17)

Features

  • new "ignoreKeyboardHeight" parameter for more precise bottom offset configuration (457143b)

Release 3.0.0-rc.1

16 Jan 21:09
Compare
Choose a tag to compare
Release 3.0.0-rc.1 Pre-release
Pre-release

3.0.0-rc.1 (2025-01-16)

Bug Fixes

  • use correct bottom offsets when keyboard is open (b14baca)

Release 3.0.0-rc.0

16 Jan 20:37
Compare
Choose a tag to compare
Release 3.0.0-rc.0 Pre-release
Pre-release

3.0.0-rc.0 (2025-01-16)

Breaking Changes

  • The library now internally uses react-native-safe-area-context. Make sure you have react-native-safe-area-context installed, and that NotifierRoot/Wrapper is wrapped by SafeAreaProvider.
  • Component is unmounted while the notification is not visible.
  • containerStyle now only accepts a simple style object and cannot be used to change animation. Use animationFunction instead.
  • The "Hide Timer" (duration param) now starts after the “appearing” animation finishes, rather than when it starts. If you use a long “appearing” animation, you may want to reduce the duration (3 seconds by default).
  • The swipeEnabled parameter has been removed. To disable swipes, set swipeDirection: 'none'.
  • The parameters animationDuration, showAnimationDuration, hideAnimationDuration, swipeAnimationDuration, easing, showEasing, hideEasing, swipeEasing have been removed. Use showAnimationConfig, hideAnimationConfig, swipeOutAnimationConfig, resetSwipeAnimationConfig instead.
  • The default showAnimationConfig is now set to a spring animation when Component != NotifierComponents.Alert.

Features

  • Support for different positions. A notification can be placed at top, bottom, or any edge of the screen using the position parameter.
  • Introduced new params: enterFrom, exitTo, and swipeDirection. These control the direction of entering/exiting animations and allow swiping not only to the top but also left, right, and down.
  • New animationFunction parameter for creating custom animations.
  • Each notification now has its own ID. The default ID depends on the idStrategy parameter, and you can also assign one manually. If a notification with the same ID is already shown, the result of showNotification depends on duplicateBehavior.
  • New duplicateBehavior parameter describing how the Notifier should behave if a notification with the same ID is already shown.
  • New idStrategy parameter, which defines how a default ID is generated if none is provided.
  • New updateNotification method that updates a currently visible notification.
  • New shakeNotification method that shakes a currently visible notification to attract the user's attention and optionally resets the duration timer.
  • Calling showNotification returns update, hide, shake, and isVisible functions for manipulating the notification.
  • You can mount multiple instances of NotifierWrapper/NotifierRoot and still control them using global Notifier.* methods. The most recently mounted instance is controlled first; if it unmounts, control reverts to the previously mounted instance.
  • It's possible to broadcast commands to all mounted instances of Notifier via Notifier.broadcast.*. This can be used, for example, to hide all notifications or clear the queue and hide them using Notifier.broadcast.hideNotification().
  • Custom handling for safe area insets (based on react-native-safe-area-context's useSafeAreaInsets hook) in all built-in components, plus a simple API for using the same insets in custom components. It also handles keyboard offset when a notification is displayed at a bottom position. All components receive an offsets object and a ViewWithOffsets component as props. Related parameters: ignoreSafeAreaInsets, ignoreKeyboard, additionalKeyboardOffset, additionalOffsets.
  • Using new *AnimationConfig parameters, it is now possible to run Spring animations with fully customizable configurations.
  • Additional TypeScript types have been exported, such as NotifierComponentProps (for base props in custom components), AnimationFunction, AnimationFunctionParams, Position, Offsets, ViewWithOffsetsComponent, Direction, DuplicateBehavior, and SwipeDirection.
  • New built-in component: SimpleToast.
  • All components receive a hide function and an animationFunctionParams object as props.

Bug Fixes

  • When you mount NotifierWrapper/NotifierRoot with omitGlobalMethodsHookup={true} and then switch it to false, global methods now hook up correctly.
  • Fixed a jump in the appearing animation when very large notifications appear.

Known Issues

  • When useRNScreensOverlay is true, the bottom position will not work. If you need a bottom position with useRNScreensOverlay, you can adjust the container style using the rnScreensOverlayViewStyle parameter, for example:
rnScreensOverlayViewStyle={{
  width: '100%',
  position: 'absolute',
  bottom: 0,
}}

Release 2.0.0

21 Jul 15:05
Compare
Choose a tag to compare

2.0.0 (2024-07-21)

Bug Fixes

  • fix the first display of notification when using useRNScreensOverlay.

Code Refactoring

  • remove SafeContainer component (dbaf80f)

Features

  • add omitGlobalMethodsHookup prop to NotifierWrapper/NotifierRoot to skip global Notifier methods hookup. Details. (c8e3c2b)
  • export NotifierProps type (a827354)

BREAKING CHANGES

  • Built-in components will not work correctly on iOS 10. Since React Native v0.65 and above only support iOS 11 and later, this should not be a problem. If you need iOS 10 support, use SafeAreaView from react-native-safe-area-context as the component container.
  • useRNScreensOverlay and rnScreensOverlayViewStyle do not work as showNotification params. Pass them as props to NotifierRoot or NotifierWrapper
  • Touchable* and Pressable components imported from react-native will not work in custom components. They need to be replaced with equivalent components from react-native-gesture-handler.

Release 1.10.0

21 Jul 09:46
Compare
Choose a tag to compare

1.10.0 (2024-07-21)

Features

  • use FullWindowOverlay from react-native-screens to display notifier above native modals (e72e1e8)
  • allow to pass ref into NotifierWrapper component (4bff0bb)
  • export QueueMode and ShowNotificationParams types (6c598c1)

BREAKING CHANGES

  • Touchable* and Pressable components imported from react-native will not work in custom components. They need to be replaced with equivalent components from react-native-gesture-handler.

Release 1.9.0

12 Jul 10:04
Compare
Choose a tag to compare

1.9.0 (2022-07-12)

Features

  • add onShown callback parameter (a3aefcd)

Release 1.8.0

30 Apr 17:39
Compare
Choose a tag to compare

1.8.0 (2022-04-30)

Features