{-# OPTIONS_HADDOCK hide #-} {-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE UndecidableInstances #-} {-# OPTIONS_GHC -fno-warn-orphans #-} module Foreign.JavaScript.Orphans where #ifndef ghcjs_HOST_OS import Control.Monad.Trans.Class (lift) import GHCJS.DOM.Types (MonadJSM (..)) import Reflex.DynamicWriter.Base (DynamicWriterT) import Reflex.EventWriter.Base (EventWriterT) import Reflex.Host.Class (HostFrame, ReflexHost) import Reflex.PerformEvent.Base (PerformEventT (..)) import Reflex.PostBuild.Base (PostBuildT) import Reflex.Requester.Base (RequesterT) import Reflex.TriggerEvent.Base import Reflex.Query.Base (QueryT) instance MonadJSM m => MonadJSM (PostBuildT t m) where liftJSM' = lift . liftJSM' instance (MonadJSM (HostFrame t), ReflexHost t) => MonadJSM (PerformEventT t m) where liftJSM' = PerformEventT . lift . liftJSM' instance MonadJSM m => MonadJSM (DynamicWriterT t w m) where liftJSM' = lift . liftJSM' instance MonadJSM m => MonadJSM (EventWriterT t w m) where liftJSM' = lift . liftJSM' instance MonadJSM m => MonadJSM (RequesterT t request response m) where liftJSM' = lift . liftJSM' instance MonadJSM m => MonadJSM (TriggerEventT t m) where liftJSM' = lift . liftJSM' instance MonadJSM m => MonadJSM (QueryT t q m) where liftJSM' = lift . liftJSM' #endif