juice_notifications 0.2.0
juice_notifications: ^0.2.0 copied to clipboard
Local notification delivery and tap routing as a Juice bloc, behind a swappable service seam.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.2.0 - 2026-08-12 #
Changed #
- Require
juice ^1.6.0and declare an explicit concurrency policy for every event. - Serialize initialization, show, schedule, cancel, and cancel-all through one cross-event FIFO so platform side effects and tracked state retain send order.
- Process tap and permission updates sequentially.
0.1.1 - 2026-05-28 #
Fixed #
NotificationsState.copyWithcan now clearlastTap(added the_unsetsentinel) — previously passingnullsilently preserved the old tap.
0.1.0 - 2026-05-28 #
Added #
- Initial release (local-first).
NotificationsBloc— local notification delivery, scheduling, and tap routing.NotificationService— vendor seam; the bloc depends on this, not on a plugin, so it is testable without a device.LocalNotificationService— default backed byflutter_local_notifications(+timezonefor scheduling).setPermissionStatus— neutral permission entry point; wire fromjuice_permissionswith aPermissionBinding(nojuice_permissionsdep here).- Rebuild groups —
notifications:scheduled,notifications:tap,notifications:permission.
Out of scope #
- Push notifications (FCM/APNs) — a separate
PushNotificationSourceseam is planned.