Module
Jelly.Hooks
- Package
- purescript-jelly-hooks
- Repository
- yukikurage/purescript-jelly-hooks
#MonadHooks Source
class MonadHooks :: (Type -> Type) -> Constraint
class (MonadEffect m) <= MonadHooks m where
Members
useCleaner :: Effect Unit -> m Unit
useHooks :: forall a. Signal (m a) -> m (Signal a)
Unwrap a Signal
Instances
(MonadHooks m) => MonadHooks (ReaderT r m)
(MonadHooks m, Monoid w) => MonadHooks (WriterT (Signal w) m)
MonadHooks Hooks
#useHooks_ Source
useHooks_ :: forall m a. MonadHooks m => Signal (m a) -> m Unit
Void version of useHooks
#useIf Source
useIf :: forall m a. MonadHooks m => Signal Boolean -> m a -> m a -> m (Signal a)
Conditionally switch Signal values.
#useIf_ Source
useIf_ :: forall m a. MonadHooks m => Signal Boolean -> m a -> m a -> m Unit
Void version of useIf
#useWhen_ Source
useWhen_ :: forall m a. MonadHooks m => Signal Boolean -> m a -> m Unit
Void version of useWhen
#useEffect Source
useEffect :: forall m a. MonadHooks m => Signal (Effect a) -> m (Signal a)
Unwrap effective Signal
#useEffect_ Source
useEffect_ :: forall m a. MonadHooks m => Signal (Effect a) -> m Unit
Void version of useEffect
#useAff_ Source
useAff_ :: forall m a. MonadHooks m => Signal (Aff a) -> m Unit
Void version of useAff
#useSubscriber Source
useSubscriber :: forall m e. MonadHooks m => ((e -> Effect Unit) -> Effect (Effect Unit)) -> (e -> m Unit) -> m Unit
Subscribe to some Events
#useEvent Source
useEvent :: forall m. MonadHooks m => EventTarget -> EventType -> (Event -> m Unit) -> m Unit
Subscribe to an event on an event target.
#useInterval Source
useInterval :: forall m. MonadHooks m => Int -> m Unit -> m Unit
Subscribe to interval events.
#useTimeout Source
useTimeout :: forall m. MonadHooks m => Int -> m Unit -> m Unit
Subscribe to timeout events.
#useUpdate Source
useUpdate :: forall m. MonadHooks m => Signal (m Unit) -> m Unit
A hook that runs the given effect when the signal changes. (without initialize)
#nubEq Source
nubEq :: forall m a. MonadHooks m => Eq a => Signal a -> m (Signal a)
Nub a Eq value of Signal.
#newStateEq Source
newStateEq :: forall m a. MonadHooks m => Eq a => a -> m (Tuple (Signal a) (Channel a))
#liftHooks Source
liftHooks :: forall m a. MonadHooks m => Hooks a -> m a
Lift Hooks
to m
which has MonadHooks
instance.
- Modules
- Jelly.
Hooks
Add a cleaner