Pure, protocol-independent lifecycle owner for one Git toast.
Informational and successful toasts are timed. Warning and error toasts are sticky. Identity matching makes replacement safe against stale dismissal.
Summary
Functions
Returns whether this toast level should be auto-dismissed.
Dismisses the current toast manually.
Dismisses only when the expected identity is still current.
Returns whether a toast is currently present.
Publishes a latest-wins toast and advances its identity.
Records a timer handle only for the current timed toast identity.
Times out only a matching timed toast; sticky levels ignore timeout delivery.
Types
@type action() :: :pull_and_retry | nil
@type id() :: non_neg_integer()
@type level() :: :info | :success | :warning | :error
Functions
Returns whether this toast level should be auto-dismissed.
Dismisses the current toast manually.
Dismisses only when the expected identity is still current.
Returns whether a toast is currently present.
Publishes a latest-wins toast and advances its identity.
Records a timer handle only for the current timed toast identity.
Times out only a matching timed toast; sticky levels ignore timeout delivery.