packages feed

reflex-dom-core 0.6.3.0 → 0.7.0.0

raw patch · 15 files changed

+79/−573 lines, 15 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

- Foreign.JavaScript.TH: JSArray :: [a] -> JSArray a
- Foreign.JavaScript.TH: JSFFI :: String -> JSFFI
- Foreign.JavaScript.TH: JSFun :: JSRef x -> Function -> JSFun x
- Foreign.JavaScript.TH: JSUint8Array :: JSRef x -> JSUint8Array x
- Foreign.JavaScript.TH: WithJSContext :: ReaderT JSContextRef m a -> WithJSContext x m a
- Foreign.JavaScript.TH: [unJSArray] :: JSArray a -> [a]
- Foreign.JavaScript.TH: [unJSFun] :: JSFun x -> JSRef x
- Foreign.JavaScript.TH: [unJSFunction] :: JSFun x -> Function
- Foreign.JavaScript.TH: [unJSUint8Array] :: JSUint8Array x -> JSRef x
- Foreign.JavaScript.TH: [unWithJSContext] :: WithJSContext x m a -> ReaderT JSContextRef m a
- Foreign.JavaScript.TH: askJSContext :: HasJSContext m => m (JSContextSingleton (JSContextPhantom m))
- Foreign.JavaScript.TH: class FromJS x a
- Foreign.JavaScript.TH: class (Monad m, MonadJSM (JSX m), MonadFix (JSX m), MonadJS x (JSX m)) => HasJS x m | m -> x where {
- Foreign.JavaScript.TH: class Monad m => HasJSContext m where {
- Foreign.JavaScript.TH: class IsJSContext x where {
- Foreign.JavaScript.TH: class Monad m => MonadJS x m | m -> x
- Foreign.JavaScript.TH: class ToJS x a
- Foreign.JavaScript.TH: data JSCtx_JavaScriptCore x
- Foreign.JavaScript.TH: data JSFun x
- Foreign.JavaScript.TH: data family JSRef x;
- Foreign.JavaScript.TH: forkJS :: MonadJS x m => m () -> m ThreadId
- Foreign.JavaScript.TH: freeJSFun :: MonadJS x m => JSFun x -> m ()
- Foreign.JavaScript.TH: fromJS :: (FromJS x a, MonadJS x m) => JSRef x -> m a
- Foreign.JavaScript.TH: fromJSArray :: MonadJS x m => JSRef x -> m [JSRef x]
- Foreign.JavaScript.TH: fromJSBool :: MonadJS x m => JSRef x -> m Bool
- Foreign.JavaScript.TH: fromJSNumber :: MonadJS x m => JSRef x -> m Double
- Foreign.JavaScript.TH: fromJSString :: MonadJS x m => JSRef x -> m String
- Foreign.JavaScript.TH: fromJSUint8Array :: MonadJS x m => JSRef x -> m ByteString
- Foreign.JavaScript.TH: getJSProp :: MonadJS x m => String -> JSRef x -> m (JSRef x)
- Foreign.JavaScript.TH: importJS :: Safety -> String -> String -> Q Type -> Q [Dec]
- Foreign.JavaScript.TH: instance (Foreign.JavaScript.TH.HasJS x (Reflex.Host.Class.HostFrame t), Reflex.Host.Class.ReflexHost t) => Foreign.JavaScript.TH.HasJS x (Reflex.PerformEvent.Base.PerformEventT t m)
- Foreign.JavaScript.TH: instance (Reflex.Host.Class.ReflexHost t, Foreign.JavaScript.TH.HasJSContext (Reflex.Host.Class.HostFrame t)) => Foreign.JavaScript.TH.HasJSContext (Reflex.PerformEvent.Base.PerformEventT t m)
- Foreign.JavaScript.TH: instance Control.Monad.Exception.MonadAsyncException m => Control.Monad.Exception.MonadAsyncException (Foreign.JavaScript.TH.WithJSContext x m)
- Foreign.JavaScript.TH: instance Control.Monad.Exception.MonadException m => Control.Monad.Exception.MonadException (Foreign.JavaScript.TH.WithJSContext x m)
- Foreign.JavaScript.TH: instance Control.Monad.Fix.MonadFix m => Control.Monad.Fix.MonadFix (Foreign.JavaScript.TH.WithJSContext x m)
- Foreign.JavaScript.TH: instance Control.Monad.IO.Class.MonadIO m => Control.Monad.IO.Class.MonadIO (Foreign.JavaScript.TH.WithJSContext x m)
- Foreign.JavaScript.TH: instance Control.Monad.IO.Class.MonadIO m => Foreign.JavaScript.TH.HasJS (Foreign.JavaScript.TH.JSCtx_JavaScriptCore x) (Foreign.JavaScript.TH.WithJSContextSingleton x m)
- Foreign.JavaScript.TH: instance Control.Monad.IO.Class.MonadIO m => Language.Javascript.JSaddle.Types.MonadJSM (Foreign.JavaScript.TH.WithJSContext x m)
- Foreign.JavaScript.TH: instance Control.Monad.Trans.Class.MonadTrans (Foreign.JavaScript.TH.WithJSContext x)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.FromJS x ()
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.FromJS x (Foreign.JavaScript.TH.JSRef x)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.FromJS x (Foreign.JavaScript.TH.JSUint8Array x)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.FromJS x Data.Text.Internal.Text
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.FromJS x GHC.Base.String
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.FromJS x GHC.Types.Bool
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.FromJS x GHC.Types.Double
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.FromJS x GHC.Types.Int
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.FromJS x a => Foreign.JavaScript.TH.FromJS x (Foreign.JavaScript.TH.JSArray a)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.FromJS x a => Foreign.JavaScript.TH.FromJS x (GHC.Maybe.Maybe a)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJS x m => Foreign.JavaScript.TH.HasJS x (Control.Monad.Trans.Reader.ReaderT r m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJS x m => Foreign.JavaScript.TH.HasJS x (Reflex.DynamicWriter.Base.DynamicWriterT t w m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJS x m => Foreign.JavaScript.TH.HasJS x (Reflex.EventWriter.Base.EventWriterT t w m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJS x m => Foreign.JavaScript.TH.HasJS x (Reflex.PostBuild.Base.PostBuildT t m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJS x m => Foreign.JavaScript.TH.HasJS x (Reflex.Query.Base.QueryT t q m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJS x m => Foreign.JavaScript.TH.HasJS x (Reflex.Requester.Base.RequesterT t request response m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJSContext m => Foreign.JavaScript.TH.HasJSContext (Control.Monad.Trans.Reader.ReaderT r m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJSContext m => Foreign.JavaScript.TH.HasJSContext (Control.Monad.Trans.State.Lazy.StateT r m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJSContext m => Foreign.JavaScript.TH.HasJSContext (Control.Monad.Trans.State.Strict.StateT r m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJSContext m => Foreign.JavaScript.TH.HasJSContext (Reflex.DynamicWriter.Base.DynamicWriterT t w m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJSContext m => Foreign.JavaScript.TH.HasJSContext (Reflex.EventWriter.Base.EventWriterT t w m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJSContext m => Foreign.JavaScript.TH.HasJSContext (Reflex.PostBuild.Base.PostBuildT t m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJSContext m => Foreign.JavaScript.TH.HasJSContext (Reflex.Query.Base.QueryT t q m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.HasJSContext m => Foreign.JavaScript.TH.HasJSContext (Reflex.Requester.Base.RequesterT t request response m)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.IsJSContext (Foreign.JavaScript.TH.JSCtx_JavaScriptCore x)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.MonadJS (Foreign.JavaScript.TH.JSCtx_JavaScriptCore x) (Foreign.JavaScript.TH.WithJSContext x GHC.Types.IO)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.MonadJS (Foreign.JavaScript.TH.JSCtx_JavaScriptCore x) (Foreign.JavaScript.TH.WithJSContextSingleton x GHC.Types.IO)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.ToJS x (Foreign.JavaScript.TH.JSFun x)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.ToJS x (Foreign.JavaScript.TH.JSRef x)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.ToJS x (Foreign.JavaScript.TH.JSUint8Array x)
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.ToJS x Data.Text.Internal.Text
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.ToJS x GHC.Base.String
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.ToJS x GHC.Types.Bool
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.ToJS x GHC.Types.Double
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.ToJS x GHC.Types.Int
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.ToJS x GHC.Word.Word8
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.ToJS x JSDOM.Types.Node
- Foreign.JavaScript.TH: instance Foreign.JavaScript.TH.ToJS x a => Foreign.JavaScript.TH.ToJS x (Foreign.JavaScript.TH.JSArray a)
- Foreign.JavaScript.TH: instance GHC.Base.Applicative m => GHC.Base.Applicative (Foreign.JavaScript.TH.WithJSContext x m)
- Foreign.JavaScript.TH: instance GHC.Base.Functor m => GHC.Base.Functor (Foreign.JavaScript.TH.WithJSContext x m)
- Foreign.JavaScript.TH: instance GHC.Base.Monad m => Foreign.JavaScript.TH.HasJSContext (Foreign.JavaScript.TH.WithJSContextSingleton x m)
- Foreign.JavaScript.TH: instance GHC.Base.Monad m => GHC.Base.Monad (Foreign.JavaScript.TH.WithJSContext x m)
- Foreign.JavaScript.TH: isJSNull :: MonadJS x m => JSRef x -> m Bool
- Foreign.JavaScript.TH: isJSUndefined :: MonadJS x m => JSRef x -> m Bool
- Foreign.JavaScript.TH: liftJS :: HasJS x m => JSX m a -> m a
- Foreign.JavaScript.TH: liftWithJSContextSingletonThroughWithJSContext :: (HasJSContext m, MonadJSM m, MonadTrans t, Monad m1) => ((t1 -> t m1 a) -> WithJSContext x IO b) -> (t1 -> WithJSContextSingleton (JSContextPhantom m) m1 a) -> m b
- Foreign.JavaScript.TH: lowerWithJSContext :: MonadJSM m => WithJSContext x IO a -> m a
- Foreign.JavaScript.TH: mkJSFFI :: Safety -> String -> Q ([Dec], Exp)
- Foreign.JavaScript.TH: mkJSFun :: MonadJS x m => ([JSRef x] -> m (JSRef x)) -> m (JSFun x)
- Foreign.JavaScript.TH: mkJSUndefined :: MonadJS x m => m (JSRef x)
- Foreign.JavaScript.TH: newtype JSArray a
- Foreign.JavaScript.TH: newtype JSFFI
- Foreign.JavaScript.TH: newtype JSUint8Array x
- Foreign.JavaScript.TH: newtype WithJSContext x m a
- Foreign.JavaScript.TH: parseType :: Type -> ([Type], Type)
- Foreign.JavaScript.TH: runJS :: MonadJS x m => JSFFI -> [JSRef x] -> m (JSRef x)
- Foreign.JavaScript.TH: runWithJSContext :: WithJSContext x m a -> JSContextRef -> m a
- Foreign.JavaScript.TH: setJSProp :: MonadJS x m => String -> JSRef x -> JSRef x -> m ()
- Foreign.JavaScript.TH: type HasWebView = HasJSContext
- Foreign.JavaScript.TH: type JS' = JSCtx_JavaScriptCore ()
- Foreign.JavaScript.TH: type family JSContextPhantom m :: *;
- Foreign.JavaScript.TH: withJS :: (ToJS x a, MonadJS x m) => a -> (JSRef x -> m r) -> m r
- Foreign.JavaScript.TH: withJSArray :: MonadJS x m => [JSRef x] -> (JSRef x -> m r) -> m r
- Foreign.JavaScript.TH: withJSArrayFromList :: (ToJS x a, MonadJS x m) => [a] -> (JSRef x -> m r) -> m r
- Foreign.JavaScript.TH: withJSBool :: MonadJS x m => Bool -> (JSRef x -> m r) -> m r
- Foreign.JavaScript.TH: withJSNode :: MonadJS x m => Node -> (JSRef x -> m r) -> m r
- Foreign.JavaScript.TH: withJSNumber :: MonadJS x m => Double -> (JSRef x -> m r) -> m r
- Foreign.JavaScript.TH: withJSString :: MonadJS x m => String -> (JSRef x -> m r) -> m r
- Foreign.JavaScript.TH: withJSUint8Array :: MonadJS x m => ByteString -> (JSUint8Array x -> m r) -> m r
- Foreign.JavaScript.TH: }
- Reflex.Dom.Builder.Hydratable: instance Foreign.JavaScript.TH.HasJS js m => Foreign.JavaScript.TH.HasJS js (Reflex.Dom.Builder.Hydratable.HydratableT m)
- Reflex.Dom.Builder.Hydratable: instance Foreign.JavaScript.TH.HasJSContext m => Foreign.JavaScript.TH.HasJSContext (Reflex.Dom.Builder.Hydratable.HydratableT m)
- Reflex.Dom.Builder.Immediate: instance forall k (m :: * -> *) (s :: k) t. Foreign.JavaScript.TH.HasJSContext m => Foreign.JavaScript.TH.HasJSContext (Reflex.Dom.Builder.Immediate.HydrationDomBuilderT s t m)
- Reflex.Dom.Builder.Immediate: instance forall k x (m :: * -> *) t (s :: k). (Foreign.JavaScript.TH.HasJS x m, Reflex.Host.Class.ReflexHost t) => Foreign.JavaScript.TH.HasJS x (Reflex.Dom.Builder.Immediate.HydrationDomBuilderT s t m)
- Reflex.Dom.Builder.InputDisabled: instance Foreign.JavaScript.TH.HasJS js m => Foreign.JavaScript.TH.HasJS js (Reflex.Dom.Builder.InputDisabled.InputDisabledT m)
- Reflex.Dom.Builder.InputDisabled: instance Foreign.JavaScript.TH.HasJSContext m => Foreign.JavaScript.TH.HasJSContext (Reflex.Dom.Builder.InputDisabled.InputDisabledT m)
- Reflex.Dom.Prerender: instance (GHC.Base.Monad m, Reflex.Class.MonadHold t m) => Reflex.Class.MonadHold t (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance (Reflex.Adjustable.Class.Adjustable t m, Reflex.Dom.Prerender.PrerenderBaseConstraints js t m, Reflex.Host.Class.ReflexHost t) => Reflex.Dom.Prerender.Prerender js t (Reflex.Dom.Builder.Immediate.HydrationDomBuilderT Reflex.Dom.Builder.Immediate.HydrationDomSpace t m)
- Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m) => Reflex.Adjustable.Class.Adjustable t (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m) => Reflex.Dom.Builder.Class.DomBuilder t (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m) => Reflex.Dom.Builder.Class.DomRenderHook t (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m) => Reflex.NotReady.Class.NotReady t (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m) => Reflex.PerformEvent.Class.PerformEvent t (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m) => Reflex.PostBuild.Class.PostBuild t (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m, Reflex.Class.MonadHold t m) => Reflex.Dom.Prerender.Prerender Foreign.JavaScript.TH.JS' t (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender js t m, Control.Monad.Fix.MonadFix m, Reflex.Class.Reflex t) => Reflex.Dom.Prerender.Prerender js t (Reflex.Requester.Base.RequesterT t request response m)
- Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender js t m, GHC.Base.Monad m) => Reflex.Dom.Prerender.Prerender js t (Control.Monad.Trans.Reader.ReaderT r m)
- Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender js t m, GHC.Base.Monad m) => Reflex.Dom.Prerender.Prerender js t (Reflex.Dom.Builder.Hydratable.HydratableT m)
- Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender js t m, GHC.Base.Monad m) => Reflex.Dom.Prerender.Prerender js t (Reflex.Dom.Builder.InputDisabled.InputDisabledT m)
- Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender js t m, GHC.Base.Monad m, Reflex.Class.Reflex t, Control.Monad.Fix.MonadFix m, Data.Patch.Group q, Data.Patch.Additive q, Reflex.Query.Class.Query q, GHC.Classes.Eq q) => Reflex.Dom.Prerender.Prerender js t (Reflex.Query.Base.QueryT t q m)
- Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender js t m, GHC.Base.Monad m, Reflex.Class.Reflex t, Control.Monad.Fix.MonadFix m, GHC.Base.Monoid w) => Reflex.Dom.Prerender.Prerender js t (Reflex.DynamicWriter.Base.DynamicWriterT t w m)
- Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender js t m, GHC.Base.Monad m, Reflex.Class.Reflex t, GHC.Base.Semigroup w) => Reflex.Dom.Prerender.Prerender js t (Reflex.EventWriter.Base.EventWriterT t w m)
- Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender js t m, GHC.Base.Monad m, Reflex.Host.Class.ReflexHost t) => Reflex.Dom.Prerender.Prerender js t (Reflex.PostBuild.Base.PostBuildT t m)
- Reflex.Dom.Prerender: instance (Reflex.Host.Class.ReflexHost t, Reflex.Adjustable.Class.Adjustable t m, Reflex.Dom.Prerender.PrerenderBaseConstraints js t m) => Reflex.Dom.Prerender.Prerender js t (Reflex.Dom.Builder.Immediate.HydrationDomBuilderT Reflex.Dom.Builder.Immediate.GhcjsDomSpace t m)
- Reflex.Dom.Prerender: instance Control.Monad.Trans.Class.MonadTrans (Reflex.Dom.Prerender.UnrunnableT js t)
- Reflex.Dom.Prerender: instance GHC.Base.Applicative m => GHC.Base.Applicative (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Functor m => GHC.Base.Functor (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => Control.Monad.Fix.MonadFix (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => Control.Monad.IO.Class.MonadIO (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => Control.Monad.Primitive.PrimMonad (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => Control.Monad.Ref.MonadAtomicRef (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => Control.Monad.Ref.MonadRef (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => Foreign.JavaScript.TH.HasJS Foreign.JavaScript.TH.JS' (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => Foreign.JavaScript.TH.HasJSContext (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => Foreign.JavaScript.TH.MonadJS Foreign.JavaScript.TH.JS' (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => GHC.Base.Monad (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => Language.Javascript.JSaddle.Types.MonadJSM (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => Reflex.Class.MonadSample t (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => Reflex.Dom.Builder.Class.HasDocument (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => Reflex.Host.Class.MonadReflexCreateTrigger t (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance GHC.Base.Monad m => Reflex.TriggerEvent.Class.TriggerEvent t (Reflex.Dom.Prerender.UnrunnableT js t m)
- Reflex.Dom.Prerender: instance Reflex.Dom.Builder.Static.SupportsStaticDomBuilder t m => Reflex.Dom.Prerender.Prerender Foreign.JavaScript.TH.JS' t (Reflex.Dom.Builder.Static.StaticDomBuilderT t m)
+ Reflex.Dom.Prerender: instance (GHC.Base.Monad m, Reflex.Class.MonadHold t m) => Reflex.Class.MonadHold t (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance (Reflex.Adjustable.Class.Adjustable t m, Reflex.Dom.Prerender.PrerenderBaseConstraints t m, Reflex.Host.Class.ReflexHost t) => Reflex.Dom.Prerender.Prerender t (Reflex.Dom.Builder.Immediate.HydrationDomBuilderT Reflex.Dom.Builder.Immediate.HydrationDomSpace t m)
+ Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m) => Reflex.Adjustable.Class.Adjustable t (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m) => Reflex.Dom.Builder.Class.DomBuilder t (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m) => Reflex.Dom.Builder.Class.DomRenderHook t (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m) => Reflex.NotReady.Class.NotReady t (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m) => Reflex.PerformEvent.Class.PerformEvent t (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m) => Reflex.PostBuild.Class.PostBuild t (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance (Reflex.Class.Reflex t, GHC.Base.Monad m, Reflex.Class.MonadHold t m) => Reflex.Dom.Prerender.Prerender t (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender t m, Control.Monad.Fix.MonadFix m, Reflex.Class.Reflex t) => Reflex.Dom.Prerender.Prerender t (Reflex.Requester.Base.RequesterT t request response m)
+ Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender t m, GHC.Base.Monad m) => Reflex.Dom.Prerender.Prerender t (Control.Monad.Trans.Reader.ReaderT r m)
+ Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender t m, GHC.Base.Monad m) => Reflex.Dom.Prerender.Prerender t (Reflex.Dom.Builder.Hydratable.HydratableT m)
+ Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender t m, GHC.Base.Monad m) => Reflex.Dom.Prerender.Prerender t (Reflex.Dom.Builder.InputDisabled.InputDisabledT m)
+ Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender t m, GHC.Base.Monad m, Reflex.Class.Reflex t, Control.Monad.Fix.MonadFix m, Data.Patch.Group q, Data.Patch.Additive q, Reflex.Query.Class.Query q, GHC.Classes.Eq q) => Reflex.Dom.Prerender.Prerender t (Reflex.Query.Base.QueryT t q m)
+ Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender t m, GHC.Base.Monad m, Reflex.Class.Reflex t, Control.Monad.Fix.MonadFix m, GHC.Base.Monoid w) => Reflex.Dom.Prerender.Prerender t (Reflex.DynamicWriter.Base.DynamicWriterT t w m)
+ Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender t m, GHC.Base.Monad m, Reflex.Class.Reflex t, GHC.Base.Semigroup w) => Reflex.Dom.Prerender.Prerender t (Reflex.EventWriter.Base.EventWriterT t w m)
+ Reflex.Dom.Prerender: instance (Reflex.Dom.Prerender.Prerender t m, GHC.Base.Monad m, Reflex.Host.Class.ReflexHost t) => Reflex.Dom.Prerender.Prerender t (Reflex.PostBuild.Base.PostBuildT t m)
+ Reflex.Dom.Prerender: instance (Reflex.Host.Class.ReflexHost t, Reflex.Adjustable.Class.Adjustable t m, Reflex.Dom.Prerender.PrerenderBaseConstraints t m) => Reflex.Dom.Prerender.Prerender t (Reflex.Dom.Builder.Immediate.HydrationDomBuilderT Reflex.Dom.Builder.Immediate.GhcjsDomSpace t m)
+ Reflex.Dom.Prerender: instance Control.Monad.Trans.Class.MonadTrans (Reflex.Dom.Prerender.UnrunnableT t)
+ Reflex.Dom.Prerender: instance GHC.Base.Applicative m => GHC.Base.Applicative (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance GHC.Base.Functor m => GHC.Base.Functor (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance GHC.Base.Monad m => Control.Monad.Fix.MonadFix (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance GHC.Base.Monad m => Control.Monad.IO.Class.MonadIO (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance GHC.Base.Monad m => Control.Monad.Primitive.PrimMonad (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance GHC.Base.Monad m => Control.Monad.Ref.MonadAtomicRef (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance GHC.Base.Monad m => Control.Monad.Ref.MonadRef (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance GHC.Base.Monad m => GHC.Base.Monad (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance GHC.Base.Monad m => Language.Javascript.JSaddle.Types.MonadJSM (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance GHC.Base.Monad m => Reflex.Class.MonadSample t (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance GHC.Base.Monad m => Reflex.Dom.Builder.Class.HasDocument (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance GHC.Base.Monad m => Reflex.Host.Class.MonadReflexCreateTrigger t (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance GHC.Base.Monad m => Reflex.TriggerEvent.Class.TriggerEvent t (Reflex.Dom.Prerender.UnrunnableT t m)
+ Reflex.Dom.Prerender: instance Reflex.Dom.Builder.Static.SupportsStaticDomBuilder t m => Reflex.Dom.Prerender.Prerender t (Reflex.Dom.Builder.Static.StaticDomBuilderT t m)
- Reflex.Dom.Builder.Class: commentNodeConfig_initialContents :: forall t_a1moV. Lens' (CommentNodeConfig t_a1moV) Text
+ Reflex.Dom.Builder.Class: commentNodeConfig_initialContents :: forall t_a1dKW. Lens' (CommentNodeConfig t_a1dKW) Text
- Reflex.Dom.Builder.Class: elementConfig_eventSpec :: forall er_a1moQ t_a1moR s_a1moS er_a1o5o s_a1o5p. Lens (ElementConfig er_a1moQ t_a1moR s_a1moS) (ElementConfig er_a1o5o t_a1moR s_a1o5p) (EventSpec s_a1moS er_a1moQ) (EventSpec s_a1o5p er_a1o5o)
+ Reflex.Dom.Builder.Class: elementConfig_eventSpec :: forall er_a1dKR t_a1dKS s_a1dKT er_a1fyG s_a1fyH. Lens (ElementConfig er_a1dKR t_a1dKS s_a1dKT) (ElementConfig er_a1fyG t_a1dKS s_a1fyH) (EventSpec s_a1dKT er_a1dKR) (EventSpec s_a1fyH er_a1fyG)
- Reflex.Dom.Builder.Class: elementConfig_initialAttributes :: forall er_a1moQ t_a1moR s_a1moS. Lens' (ElementConfig er_a1moQ t_a1moR s_a1moS) (Map AttributeName Text)
+ Reflex.Dom.Builder.Class: elementConfig_initialAttributes :: forall er_a1dKR t_a1dKS s_a1dKT. Lens' (ElementConfig er_a1dKR t_a1dKS s_a1dKT) (Map AttributeName Text)
- Reflex.Dom.Builder.Class: elementConfig_namespace :: forall er_a1moQ t_a1moR s_a1moS. Lens' (ElementConfig er_a1moQ t_a1moR s_a1moS) (Maybe Namespace)
+ Reflex.Dom.Builder.Class: elementConfig_namespace :: forall er_a1dKR t_a1dKS s_a1dKT. Lens' (ElementConfig er_a1dKR t_a1dKS s_a1dKT) (Maybe Namespace)
- Reflex.Dom.Builder.Class: inputElementConfig_elementConfig :: forall er_a1moK t_a1moL s_a1moM er_a1o4L s_a1o4M. Lens (InputElementConfig er_a1moK t_a1moL s_a1moM) (InputElementConfig er_a1o4L t_a1moL s_a1o4M) (ElementConfig er_a1moK t_a1moL s_a1moM) (ElementConfig er_a1o4L t_a1moL s_a1o4M)
+ Reflex.Dom.Builder.Class: inputElementConfig_elementConfig :: forall er_a1dKL t_a1dKM s_a1dKN er_a1fy3 s_a1fy4. Lens (InputElementConfig er_a1dKL t_a1dKM s_a1dKN) (InputElementConfig er_a1fy3 t_a1dKM s_a1fy4) (ElementConfig er_a1dKL t_a1dKM s_a1dKN) (ElementConfig er_a1fy3 t_a1dKM s_a1fy4)
- Reflex.Dom.Builder.Class: inputElementConfig_initialChecked :: forall er_a1moK t_a1moL s_a1moM. Lens' (InputElementConfig er_a1moK t_a1moL s_a1moM) Bool
+ Reflex.Dom.Builder.Class: inputElementConfig_initialChecked :: forall er_a1dKL t_a1dKM s_a1dKN. Lens' (InputElementConfig er_a1dKL t_a1dKM s_a1dKN) Bool
- Reflex.Dom.Builder.Class: inputElementConfig_initialValue :: forall er_a1moK t_a1moL s_a1moM. Lens' (InputElementConfig er_a1moK t_a1moL s_a1moM) Text
+ Reflex.Dom.Builder.Class: inputElementConfig_initialValue :: forall er_a1dKL t_a1dKM s_a1dKN. Lens' (InputElementConfig er_a1dKL t_a1dKM s_a1dKN) Text
- Reflex.Dom.Builder.Class: rawElementConfig_eventSpec :: forall er_a1moy t_a1moz s_a1moA er_a1o5d s_a1o5e. Lens (RawElementConfig er_a1moy t_a1moz s_a1moA) (RawElementConfig er_a1o5d t_a1moz s_a1o5e) (EventSpec s_a1moA er_a1moy) (EventSpec s_a1o5e er_a1o5d)
+ Reflex.Dom.Builder.Class: rawElementConfig_eventSpec :: forall er_a1dKz t_a1dKA s_a1dKB er_a1fyv s_a1fyw. Lens (RawElementConfig er_a1dKz t_a1dKA s_a1dKB) (RawElementConfig er_a1fyv t_a1dKA s_a1fyw) (EventSpec s_a1dKB er_a1dKz) (EventSpec s_a1fyw er_a1fyv)
- Reflex.Dom.Builder.Class: selectElementConfig_elementConfig :: forall er_a1mov t_a1mow m_a1mox er_a1o64 m_a1o65. Lens (SelectElementConfig er_a1mov t_a1mow m_a1mox) (SelectElementConfig er_a1o64 t_a1mow m_a1o65) (ElementConfig er_a1mov t_a1mow m_a1mox) (ElementConfig er_a1o64 t_a1mow m_a1o65)
+ Reflex.Dom.Builder.Class: selectElementConfig_elementConfig :: forall er_a1dKw t_a1dKx m_a1dKy er_a1fzm m_a1fzn. Lens (SelectElementConfig er_a1dKw t_a1dKx m_a1dKy) (SelectElementConfig er_a1fzm t_a1dKx m_a1fzn) (ElementConfig er_a1dKw t_a1dKx m_a1dKy) (ElementConfig er_a1fzm t_a1dKx m_a1fzn)
- Reflex.Dom.Builder.Class: selectElementConfig_initialValue :: forall er_a1mov t_a1mow m_a1mox. Lens' (SelectElementConfig er_a1mov t_a1mow m_a1mox) Text
+ Reflex.Dom.Builder.Class: selectElementConfig_initialValue :: forall er_a1dKw t_a1dKx m_a1dKy. Lens' (SelectElementConfig er_a1dKw t_a1dKx m_a1dKy) Text
- Reflex.Dom.Builder.Class: textAreaElementConfig_elementConfig :: forall er_a1moE t_a1moF m_a1moG er_a1o5N m_a1o5O. Lens (TextAreaElementConfig er_a1moE t_a1moF m_a1moG) (TextAreaElementConfig er_a1o5N t_a1moF m_a1o5O) (ElementConfig er_a1moE t_a1moF m_a1moG) (ElementConfig er_a1o5N t_a1moF m_a1o5O)
+ Reflex.Dom.Builder.Class: textAreaElementConfig_elementConfig :: forall er_a1dKF t_a1dKG m_a1dKH er_a1fz5 m_a1fz6. Lens (TextAreaElementConfig er_a1dKF t_a1dKG m_a1dKH) (TextAreaElementConfig er_a1fz5 t_a1dKG m_a1fz6) (ElementConfig er_a1dKF t_a1dKG m_a1dKH) (ElementConfig er_a1fz5 t_a1dKG m_a1fz6)
- Reflex.Dom.Builder.Class: textAreaElementConfig_initialValue :: forall er_a1moE t_a1moF m_a1moG. Lens' (TextAreaElementConfig er_a1moE t_a1moF m_a1moG) Text
+ Reflex.Dom.Builder.Class: textAreaElementConfig_initialValue :: forall er_a1dKF t_a1dKG m_a1dKH. Lens' (TextAreaElementConfig er_a1dKF t_a1dKG m_a1dKH) Text
- Reflex.Dom.Builder.Class: textNodeConfig_initialContents :: forall t_a1moY. Lens' (TextNodeConfig t_a1moY) Text
+ Reflex.Dom.Builder.Class: textNodeConfig_initialContents :: forall t_a1dKZ. Lens' (TextNodeConfig t_a1dKZ) Text
- Reflex.Dom.Builder.Immediate: ghcjsEventSpec_filters :: forall er_a1EGd. Lens' (GhcjsEventSpec er_a1EGd) (DMap EventName (GhcjsEventFilter er_a1EGd))
+ Reflex.Dom.Builder.Immediate: ghcjsEventSpec_filters :: forall er_a1wa8. Lens' (GhcjsEventSpec er_a1wa8) (DMap EventName (GhcjsEventFilter er_a1wa8))
- Reflex.Dom.Builder.Immediate: ghcjsEventSpec_handler :: forall er_a1EGd. Lens' (GhcjsEventSpec er_a1EGd) (GhcjsEventHandler er_a1EGd)
+ Reflex.Dom.Builder.Immediate: ghcjsEventSpec_handler :: forall er_a1wa8. Lens' (GhcjsEventSpec er_a1wa8) (GhcjsEventHandler er_a1wa8)
- Reflex.Dom.Old: elConfig_attributes :: forall attrs_a3uHK attrs_a3uIP. Lens (ElConfig attrs_a3uHK) (ElConfig attrs_a3uIP) attrs_a3uHK attrs_a3uIP
+ Reflex.Dom.Old: elConfig_attributes :: forall attrs_a3jHc attrs_a3jIh. Lens (ElConfig attrs_a3jHc) (ElConfig attrs_a3jIh) attrs_a3jHc attrs_a3jIh
- Reflex.Dom.Old: elConfig_namespace :: forall attrs_a3uHK. Lens' (ElConfig attrs_a3uHK) (Maybe Text)
+ Reflex.Dom.Old: elConfig_namespace :: forall attrs_a3jHc. Lens' (ElConfig attrs_a3jHc) (Maybe Text)
- Reflex.Dom.Prerender: class (PrerenderClientConstraint js t (Client m), Client (Client m) ~ Client m, Prerender js t (Client m)) => Prerender js t m | m -> t js where {
+ Reflex.Dom.Prerender: class (PrerenderClientConstraint t (Client m), Client (Client m) ~ Client m, Prerender t (Client m)) => Prerender t m | m -> t where {
- Reflex.Dom.Prerender: prerender :: Prerender js t m => m a -> Client m a -> m (Dynamic t a)
+ Reflex.Dom.Prerender: prerender :: Prerender t m => m a -> Client m a -> m (Dynamic t a)
- Reflex.Dom.Prerender: prerender_ :: (Functor m, Reflex t, Prerender js t m) => m () -> Client m () -> m ()
+ Reflex.Dom.Prerender: prerender_ :: (Functor m, Reflex t, Prerender t m) => m () -> Client m () -> m ()
- Reflex.Dom.Prerender: type PrerenderBaseConstraints js t m = (HasJSContext (Performable m), HasJSContext m, MonadFix m, MonadHold t m, MonadJSM (Performable m), MonadJSM m, MonadRef (Performable m), MonadRef m, MonadReflexCreateTrigger t m, MonadSample t (Performable m), PerformEvent t m, PostBuild t m, PrimMonad m, Ref (Performable m) ~ IORef, Ref m ~ IORef, HasJS js m, HasJS js (Performable m))
+ Reflex.Dom.Prerender: type PrerenderBaseConstraints t m = (MonadFix m, MonadHold t m, MonadJSM (Performable m), MonadJSM m, MonadRef (Performable m), MonadRef m, MonadReflexCreateTrigger t m, MonadSample t (Performable m), PerformEvent t m, PostBuild t m, PrimMonad m, Ref (Performable m) ~ IORef, Ref m ~ IORef)
- Reflex.Dom.Prerender: type PrerenderClientConstraint js t m = (DomBuilder t m, DomBuilderSpace m ~ GhcjsDomSpace, DomRenderHook t m, HasDocument m, TriggerEvent t m, PrerenderBaseConstraints js t m)
+ Reflex.Dom.Prerender: type PrerenderClientConstraint t m = (DomBuilder t m, DomBuilderSpace m ~ GhcjsDomSpace, DomRenderHook t m, HasDocument m, TriggerEvent t m, PrerenderBaseConstraints t m)
- Reflex.Dom.WebSocket: jsonWebSocket :: (ToJSON a, FromJSON b, MonadJSM m, MonadJSM (Performable m), HasJSContext m, PostBuild t m, TriggerEvent t m, PerformEvent t m, MonadHold t m, Reflex t) => Text -> WebSocketConfig t a -> m (RawWebSocket t (Maybe b))
+ Reflex.Dom.WebSocket: jsonWebSocket :: (ToJSON a, FromJSON b, MonadJSM m, MonadJSM (Performable m), PostBuild t m, TriggerEvent t m, PerformEvent t m, MonadHold t m, Reflex t) => Text -> WebSocketConfig t a -> m (RawWebSocket t (Maybe b))
- Reflex.Dom.WebSocket: textWebSocket :: (IsWebSocketMessage a, MonadJSM m, MonadJSM (Performable m), HasJSContext m, PostBuild t m, TriggerEvent t m, PerformEvent t m, MonadHold t m, Reflex t) => Text -> WebSocketConfig t a -> m (RawWebSocket t Text)
+ Reflex.Dom.WebSocket: textWebSocket :: (IsWebSocketMessage a, MonadJSM m, MonadJSM (Performable m), PostBuild t m, TriggerEvent t m, PerformEvent t m, MonadHold t m, Reflex t) => Text -> WebSocketConfig t a -> m (RawWebSocket t Text)
- Reflex.Dom.WebSocket: webSocket :: (MonadJSM m, MonadJSM (Performable m), HasJSContext m, PerformEvent t m, TriggerEvent t m, PostBuild t m, IsWebSocketMessage a) => Text -> WebSocketConfig t a -> m (WebSocket t)
+ Reflex.Dom.WebSocket: webSocket :: (MonadJSM m, MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, PostBuild t m, IsWebSocketMessage a) => Text -> WebSocketConfig t a -> m (WebSocket t)
- Reflex.Dom.WebSocket: webSocket' :: (MonadJSM m, MonadJSM (Performable m), HasJSContext m, PerformEvent t m, TriggerEvent t m, PostBuild t m, IsWebSocketMessage a) => Text -> WebSocketConfig t a -> (Either ByteString JSVal -> JSM b) -> m (RawWebSocket t b)
+ Reflex.Dom.WebSocket: webSocket' :: (MonadJSM m, MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, PostBuild t m, IsWebSocketMessage a) => Text -> WebSocketConfig t a -> (Either ByteString JSVal -> JSM b) -> m (RawWebSocket t b)
- Reflex.Dom.WebSocket: webSocketConfig_close :: forall t_a3jjy a_a3jjz. Lens' (WebSocketConfig t_a3jjy a_a3jjz) (Event t_a3jjy (Word, Text))
+ Reflex.Dom.WebSocket: webSocketConfig_close :: forall t_a38pS a_a38pT. Lens' (WebSocketConfig t_a38pS a_a38pT) (Event t_a38pS (Word, Text))
- Reflex.Dom.WebSocket: webSocketConfig_protocols :: forall t_a3jjy a_a3jjz. Lens' (WebSocketConfig t_a3jjy a_a3jjz) [Text]
+ Reflex.Dom.WebSocket: webSocketConfig_protocols :: forall t_a38pS a_a38pT. Lens' (WebSocketConfig t_a38pS a_a38pT) [Text]
- Reflex.Dom.WebSocket: webSocketConfig_reconnect :: forall t_a3jjy a_a3jjz. Lens' (WebSocketConfig t_a3jjy a_a3jjz) Bool
+ Reflex.Dom.WebSocket: webSocketConfig_reconnect :: forall t_a38pS a_a38pT. Lens' (WebSocketConfig t_a38pS a_a38pT) Bool
- Reflex.Dom.WebSocket: webSocketConfig_send :: forall t_a3jjy a_a3jjz. Lens' (WebSocketConfig t_a3jjy a_a3jjz) (Event t_a3jjy [a_a3jjz])
+ Reflex.Dom.WebSocket: webSocketConfig_send :: forall t_a38pS a_a38pT. Lens' (WebSocketConfig t_a38pS a_a38pT) (Event t_a38pS [a_a38pT])
- Reflex.Dom.WebSocket: webSocket_close :: forall t_a3jjv a_a3jjw. Lens' (RawWebSocket t_a3jjv a_a3jjw) (Event t_a3jjv (Bool, Word, Text))
+ Reflex.Dom.WebSocket: webSocket_close :: forall t_a38pP a_a38pQ. Lens' (RawWebSocket t_a38pP a_a38pQ) (Event t_a38pP (Bool, Word, Text))
- Reflex.Dom.WebSocket: webSocket_error :: forall t_a3jjv a_a3jjw. Lens' (RawWebSocket t_a3jjv a_a3jjw) (Event t_a3jjv ())
+ Reflex.Dom.WebSocket: webSocket_error :: forall t_a38pP a_a38pQ. Lens' (RawWebSocket t_a38pP a_a38pQ) (Event t_a38pP ())
- Reflex.Dom.WebSocket: webSocket_open :: forall t_a3jjv a_a3jjw. Lens' (RawWebSocket t_a3jjv a_a3jjw) (Event t_a3jjv ())
+ Reflex.Dom.WebSocket: webSocket_open :: forall t_a38pP a_a38pQ. Lens' (RawWebSocket t_a38pP a_a38pQ) (Event t_a38pP ())
- Reflex.Dom.WebSocket: webSocket_recv :: forall t_a3jjv a_a3jjw. Lens' (RawWebSocket t_a3jjv a_a3jjw) (Event t_a3jjv a_a3jjw)
+ Reflex.Dom.WebSocket: webSocket_recv :: forall t_a38pP a_a38pQ. Lens' (RawWebSocket t_a38pP a_a38pQ) (Event t_a38pP a_a38pQ)
- Reflex.Dom.WebSocket.Query: runWebSocketQuery :: (MonadJSM m, MonadJSM (Performable m), HasJSContext m, PostBuild t m, TriggerEvent t m, PerformEvent t m, MonadHold t m, Reflex t, ToJSON q, MonadFix m, Query q, FromJSON (QueryResult q), Additive q, Group q, Eq q) => QueryT t q m a -> Text -> m a
+ Reflex.Dom.WebSocket.Query: runWebSocketQuery :: (MonadJSM m, MonadJSM (Performable m), PostBuild t m, TriggerEvent t m, PerformEvent t m, MonadHold t m, Reflex t, ToJSON q, MonadFix m, Query q, FromJSON (QueryResult q), Additive q, Group q, Eq q) => QueryT t q m a -> Text -> m a
- Reflex.Dom.Widget.Input: checkboxConfig_attributes :: forall t_a3B2q. Lens' (CheckboxConfig t_a3B2q) (Dynamic t_a3B2q (Map Text Text))
+ Reflex.Dom.Widget.Input: checkboxConfig_attributes :: forall t_a3pUg. Lens' (CheckboxConfig t_a3pUg) (Dynamic t_a3pUg (Map Text Text))
- Reflex.Dom.Widget.Input: checkboxConfig_setValue :: forall t_a3B2q. Lens' (CheckboxConfig t_a3B2q) (Event t_a3B2q Bool)
+ Reflex.Dom.Widget.Input: checkboxConfig_setValue :: forall t_a3pUg. Lens' (CheckboxConfig t_a3pUg) (Event t_a3pUg Bool)
- Reflex.Dom.Widget.Input: checkbox_change :: forall t_a3B2p. Lens' (Checkbox t_a3B2p) (Event t_a3B2p Bool)
+ Reflex.Dom.Widget.Input: checkbox_change :: forall t_a3pUf. Lens' (Checkbox t_a3pUf) (Event t_a3pUf Bool)
- Reflex.Dom.Widget.Input: checkbox_value :: forall t_a3B2p. Lens' (Checkbox t_a3B2p) (Dynamic t_a3B2p Bool)
+ Reflex.Dom.Widget.Input: checkbox_value :: forall t_a3pUf. Lens' (Checkbox t_a3pUf) (Dynamic t_a3pUf Bool)
- Reflex.Dom.Widget.Input: dropdownConfig_attributes :: forall t_a3B2f k_a3B2g. Lens' (DropdownConfig t_a3B2f k_a3B2g) (Dynamic t_a3B2f (Map Text Text))
+ Reflex.Dom.Widget.Input: dropdownConfig_attributes :: forall t_a3pU5 k_a3pU6. Lens' (DropdownConfig t_a3pU5 k_a3pU6) (Dynamic t_a3pU5 (Map Text Text))
- Reflex.Dom.Widget.Input: dropdownConfig_setValue :: forall t_a3B2f k_a3B2g k_a3Cvv. Lens (DropdownConfig t_a3B2f k_a3B2g) (DropdownConfig t_a3B2f k_a3Cvv) (Event t_a3B2f k_a3B2g) (Event t_a3B2f k_a3Cvv)
+ Reflex.Dom.Widget.Input: dropdownConfig_setValue :: forall t_a3pU5 k_a3pU6 k_a3rnl. Lens (DropdownConfig t_a3pU5 k_a3pU6) (DropdownConfig t_a3pU5 k_a3rnl) (Event t_a3pU5 k_a3pU6) (Event t_a3pU5 k_a3rnl)
- Reflex.Dom.Widget.Input: dropdown_change :: forall t_a3B2h k_a3B2i. Lens' (Dropdown t_a3B2h k_a3B2i) (Event t_a3B2h k_a3B2i)
+ Reflex.Dom.Widget.Input: dropdown_change :: forall t_a3pU7 k_a3pU8. Lens' (Dropdown t_a3pU7 k_a3pU8) (Event t_a3pU7 k_a3pU8)
- Reflex.Dom.Widget.Input: dropdown_value :: forall t_a3B2h k_a3B2i. Lens' (Dropdown t_a3B2h k_a3B2i) (Dynamic t_a3B2h k_a3B2i)
+ Reflex.Dom.Widget.Input: dropdown_value :: forall t_a3pU7 k_a3pU8. Lens' (Dropdown t_a3pU7 k_a3pU8) (Dynamic t_a3pU7 k_a3pU8)
- Reflex.Dom.Widget.Input: fileInputConfig_attributes :: forall t_a3B2j t_a3Cvc. Iso (FileInputConfig t_a3B2j) (FileInputConfig t_a3Cvc) (Dynamic t_a3B2j (Map Text Text)) (Dynamic t_a3Cvc (Map Text Text))
+ Reflex.Dom.Widget.Input: fileInputConfig_attributes :: forall t_a3pU9 t_a3rn2. Iso (FileInputConfig t_a3pU9) (FileInputConfig t_a3rn2) (Dynamic t_a3pU9 (Map Text Text)) (Dynamic t_a3rn2 (Map Text Text))
- Reflex.Dom.Widget.Input: fileInput_element :: forall d_a3B2k t_a3B2l d_a3Cvi. Lens (FileInput d_a3B2k t_a3B2l) (FileInput d_a3Cvi t_a3B2l) (RawInputElement d_a3B2k) (RawInputElement d_a3Cvi)
+ Reflex.Dom.Widget.Input: fileInput_element :: forall d_a3pUa t_a3pUb d_a3rn8. Lens (FileInput d_a3pUa t_a3pUb) (FileInput d_a3rn8 t_a3pUb) (RawInputElement d_a3pUa) (RawInputElement d_a3rn8)
- Reflex.Dom.Widget.Input: fileInput_value :: forall d_a3B2k t_a3B2l t_a3Cvj. Lens (FileInput d_a3B2k t_a3B2l) (FileInput d_a3B2k t_a3Cvj) (Dynamic t_a3B2l [File]) (Dynamic t_a3Cvj [File])
+ Reflex.Dom.Widget.Input: fileInput_value :: forall d_a3pUa t_a3pUb t_a3rn9. Lens (FileInput d_a3pUa t_a3pUb) (FileInput d_a3pUa t_a3rn9) (Dynamic t_a3pUb [File]) (Dynamic t_a3rn9 [File])
- Reflex.Dom.Widget.Input: rangeInputConfig_attributes :: forall t_a3B2u. Lens' (RangeInputConfig t_a3B2u) (Dynamic t_a3B2u (Map Text Text))
+ Reflex.Dom.Widget.Input: rangeInputConfig_attributes :: forall t_a3pUk. Lens' (RangeInputConfig t_a3pUk) (Dynamic t_a3pUk (Map Text Text))
- Reflex.Dom.Widget.Input: rangeInputConfig_initialValue :: forall t_a3B2u. Lens' (RangeInputConfig t_a3B2u) Float
+ Reflex.Dom.Widget.Input: rangeInputConfig_initialValue :: forall t_a3pUk. Lens' (RangeInputConfig t_a3pUk) Float
- Reflex.Dom.Widget.Input: rangeInputConfig_setValue :: forall t_a3B2u. Lens' (RangeInputConfig t_a3B2u) (Event t_a3B2u Float)
+ Reflex.Dom.Widget.Input: rangeInputConfig_setValue :: forall t_a3pUk. Lens' (RangeInputConfig t_a3pUk) (Event t_a3pUk Float)
- Reflex.Dom.Widget.Input: rangeInput_element :: forall t_a3B2t. Lens' (RangeInput t_a3B2t) HTMLInputElement
+ Reflex.Dom.Widget.Input: rangeInput_element :: forall t_a3pUj. Lens' (RangeInput t_a3pUj) HTMLInputElement
- Reflex.Dom.Widget.Input: rangeInput_hasFocus :: forall t_a3B2t. Lens' (RangeInput t_a3B2t) (Dynamic t_a3B2t Bool)
+ Reflex.Dom.Widget.Input: rangeInput_hasFocus :: forall t_a3pUj. Lens' (RangeInput t_a3pUj) (Dynamic t_a3pUj Bool)
- Reflex.Dom.Widget.Input: rangeInput_input :: forall t_a3B2t. Lens' (RangeInput t_a3B2t) (Event t_a3B2t Float)
+ Reflex.Dom.Widget.Input: rangeInput_input :: forall t_a3pUj. Lens' (RangeInput t_a3pUj) (Event t_a3pUj Float)
- Reflex.Dom.Widget.Input: rangeInput_mouseup :: forall t_a3B2t. Lens' (RangeInput t_a3B2t) (Event t_a3B2t (Int, Int))
+ Reflex.Dom.Widget.Input: rangeInput_mouseup :: forall t_a3pUj. Lens' (RangeInput t_a3pUj) (Event t_a3pUj (Int, Int))
- Reflex.Dom.Widget.Input: rangeInput_value :: forall t_a3B2t. Lens' (RangeInput t_a3B2t) (Dynamic t_a3B2t Float)
+ Reflex.Dom.Widget.Input: rangeInput_value :: forall t_a3pUj. Lens' (RangeInput t_a3pUj) (Dynamic t_a3pUj Float)
- Reflex.Dom.Widget.Input: textAreaConfig_attributes :: forall t_a3B2s. Lens' (TextAreaConfig t_a3B2s) (Dynamic t_a3B2s (Map Text Text))
+ Reflex.Dom.Widget.Input: textAreaConfig_attributes :: forall t_a3pUi. Lens' (TextAreaConfig t_a3pUi) (Dynamic t_a3pUi (Map Text Text))
- Reflex.Dom.Widget.Input: textAreaConfig_initialValue :: forall t_a3B2s. Lens' (TextAreaConfig t_a3B2s) Text
+ Reflex.Dom.Widget.Input: textAreaConfig_initialValue :: forall t_a3pUi. Lens' (TextAreaConfig t_a3pUi) Text
- Reflex.Dom.Widget.Input: textAreaConfig_setValue :: forall t_a3B2s. Lens' (TextAreaConfig t_a3B2s) (Event t_a3B2s Text)
+ Reflex.Dom.Widget.Input: textAreaConfig_setValue :: forall t_a3pUi. Lens' (TextAreaConfig t_a3pUi) (Event t_a3pUi Text)
- Reflex.Dom.Widget.Input: textArea_element :: forall t_a3B2r. Lens' (TextArea t_a3B2r) HTMLTextAreaElement
+ Reflex.Dom.Widget.Input: textArea_element :: forall t_a3pUh. Lens' (TextArea t_a3pUh) HTMLTextAreaElement
- Reflex.Dom.Widget.Input: textArea_hasFocus :: forall t_a3B2r. Lens' (TextArea t_a3B2r) (Dynamic t_a3B2r Bool)
+ Reflex.Dom.Widget.Input: textArea_hasFocus :: forall t_a3pUh. Lens' (TextArea t_a3pUh) (Dynamic t_a3pUh Bool)
- Reflex.Dom.Widget.Input: textArea_input :: forall t_a3B2r. Lens' (TextArea t_a3B2r) (Event t_a3B2r Text)
+ Reflex.Dom.Widget.Input: textArea_input :: forall t_a3pUh. Lens' (TextArea t_a3pUh) (Event t_a3pUh Text)
- Reflex.Dom.Widget.Input: textArea_keypress :: forall t_a3B2r. Lens' (TextArea t_a3B2r) (Event t_a3B2r Word)
+ Reflex.Dom.Widget.Input: textArea_keypress :: forall t_a3pUh. Lens' (TextArea t_a3pUh) (Event t_a3pUh Word)
- Reflex.Dom.Widget.Input: textArea_value :: forall t_a3B2r. Lens' (TextArea t_a3B2r) (Dynamic t_a3B2r Text)
+ Reflex.Dom.Widget.Input: textArea_value :: forall t_a3pUh. Lens' (TextArea t_a3pUh) (Dynamic t_a3pUh Text)
- Reflex.Dom.Widget.Input: textInputConfig_attributes :: forall t_a3B2v. Lens' (TextInputConfig t_a3B2v) (Dynamic t_a3B2v (Map Text Text))
+ Reflex.Dom.Widget.Input: textInputConfig_attributes :: forall t_a3pUl. Lens' (TextInputConfig t_a3pUl) (Dynamic t_a3pUl (Map Text Text))
- Reflex.Dom.Widget.Input: textInputConfig_initialValue :: forall t_a3B2v. Lens' (TextInputConfig t_a3B2v) Text
+ Reflex.Dom.Widget.Input: textInputConfig_initialValue :: forall t_a3pUl. Lens' (TextInputConfig t_a3pUl) Text
- Reflex.Dom.Widget.Input: textInputConfig_inputType :: forall t_a3B2v. Lens' (TextInputConfig t_a3B2v) Text
+ Reflex.Dom.Widget.Input: textInputConfig_inputType :: forall t_a3pUl. Lens' (TextInputConfig t_a3pUl) Text
- Reflex.Dom.Widget.Input: textInputConfig_setValue :: forall t_a3B2v. Lens' (TextInputConfig t_a3B2v) (Event t_a3B2v Text)
+ Reflex.Dom.Widget.Input: textInputConfig_setValue :: forall t_a3pUl. Lens' (TextInputConfig t_a3pUl) (Event t_a3pUl Text)
- Reflex.Dom.Widget.Input: textInput_builderElement :: forall t_a3B2w. Lens' (TextInput t_a3B2w) (InputElement EventResult GhcjsDomSpace t_a3B2w)
+ Reflex.Dom.Widget.Input: textInput_builderElement :: forall t_a3pUm. Lens' (TextInput t_a3pUm) (InputElement EventResult GhcjsDomSpace t_a3pUm)
- Reflex.Dom.Widget.Input: textInput_hasFocus :: forall t_a3B2w. Lens' (TextInput t_a3B2w) (Dynamic t_a3B2w Bool)
+ Reflex.Dom.Widget.Input: textInput_hasFocus :: forall t_a3pUm. Lens' (TextInput t_a3pUm) (Dynamic t_a3pUm Bool)
- Reflex.Dom.Widget.Input: textInput_input :: forall t_a3B2w. Lens' (TextInput t_a3B2w) (Event t_a3B2w Text)
+ Reflex.Dom.Widget.Input: textInput_input :: forall t_a3pUm. Lens' (TextInput t_a3pUm) (Event t_a3pUm Text)
- Reflex.Dom.Widget.Input: textInput_keydown :: forall t_a3B2w. Lens' (TextInput t_a3B2w) (Event t_a3B2w Word)
+ Reflex.Dom.Widget.Input: textInput_keydown :: forall t_a3pUm. Lens' (TextInput t_a3pUm) (Event t_a3pUm Word)
- Reflex.Dom.Widget.Input: textInput_keypress :: forall t_a3B2w. Lens' (TextInput t_a3B2w) (Event t_a3B2w Word)
+ Reflex.Dom.Widget.Input: textInput_keypress :: forall t_a3pUm. Lens' (TextInput t_a3pUm) (Event t_a3pUm Word)
- Reflex.Dom.Widget.Input: textInput_keyup :: forall t_a3B2w. Lens' (TextInput t_a3B2w) (Event t_a3B2w Word)
+ Reflex.Dom.Widget.Input: textInput_keyup :: forall t_a3pUm. Lens' (TextInput t_a3pUm) (Event t_a3pUm Word)
- Reflex.Dom.Widget.Input: textInput_value :: forall t_a3B2w. Lens' (TextInput t_a3B2w) (Dynamic t_a3B2w Text)
+ Reflex.Dom.Widget.Input: textInput_value :: forall t_a3pUm. Lens' (TextInput t_a3pUm) (Dynamic t_a3pUm Text)
- Reflex.Dom.Xhr: getAndDecode :: (MonadIO m, MonadJSM (Performable m), PerformEvent t m, HasJSContext (Performable m), TriggerEvent t m, FromJSON a) => Event t Text -> m (Event t (Maybe a))
+ Reflex.Dom.Xhr: getAndDecode :: (MonadIO m, MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, FromJSON a) => Event t Text -> m (Event t (Maybe a))
- Reflex.Dom.Xhr: newXMLHttpRequest :: (HasJSContext m, MonadJSM m, IsXhrPayload a) => XhrRequest a -> (XhrResponse -> JSM ()) -> m XMLHttpRequest
+ Reflex.Dom.Xhr: newXMLHttpRequest :: (MonadJSM m, IsXhrPayload a) => XhrRequest a -> (XhrResponse -> JSM ()) -> m XMLHttpRequest
- Reflex.Dom.Xhr: newXMLHttpRequestWithError :: (HasJSContext m, MonadJSM m, IsXhrPayload a) => XhrRequest a -> (Either XhrException XhrResponse -> JSM ()) -> m XMLHttpRequest
+ Reflex.Dom.Xhr: newXMLHttpRequestWithError :: (MonadJSM m, IsXhrPayload a) => XhrRequest a -> (Either XhrException XhrResponse -> JSM ()) -> m XMLHttpRequest
- Reflex.Dom.Xhr: performMkRequestAsync :: (MonadJSM (Performable m), HasJSContext (Performable m), PerformEvent t m, TriggerEvent t m, IsXhrPayload a) => Event t (Performable m (XhrRequest a)) -> m (Event t XhrResponse)
+ Reflex.Dom.Xhr: performMkRequestAsync :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, IsXhrPayload a) => Event t (Performable m (XhrRequest a)) -> m (Event t XhrResponse)
- Reflex.Dom.Xhr: performMkRequestsAsync :: (MonadJSM (Performable m), HasJSContext (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f, IsXhrPayload a) => Event t (Performable m (f (XhrRequest a))) -> m (Event t (f XhrResponse))
+ Reflex.Dom.Xhr: performMkRequestsAsync :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f, IsXhrPayload a) => Event t (Performable m (f (XhrRequest a))) -> m (Event t (f XhrResponse))
- Reflex.Dom.Xhr: performRequestAsync :: (MonadJSM (Performable m), HasJSContext (Performable m), PerformEvent t m, TriggerEvent t m, IsXhrPayload a) => Event t (XhrRequest a) -> m (Event t XhrResponse)
+ Reflex.Dom.Xhr: performRequestAsync :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, IsXhrPayload a) => Event t (XhrRequest a) -> m (Event t XhrResponse)
- Reflex.Dom.Xhr: performRequestAsyncWithError :: (MonadJSM (Performable m), HasJSContext (Performable m), PerformEvent t m, TriggerEvent t m, IsXhrPayload a) => Event t (XhrRequest a) -> m (Event t (Either XhrException XhrResponse))
+ Reflex.Dom.Xhr: performRequestAsyncWithError :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, IsXhrPayload a) => Event t (XhrRequest a) -> m (Event t (Either XhrException XhrResponse))
- Reflex.Dom.Xhr: performRequestsAsync :: (MonadJSM (Performable m), HasJSContext (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f, IsXhrPayload a) => Event t (f (XhrRequest a)) -> m (Event t (f XhrResponse))
+ Reflex.Dom.Xhr: performRequestsAsync :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f, IsXhrPayload a) => Event t (f (XhrRequest a)) -> m (Event t (f XhrResponse))
- Reflex.Dom.Xhr: performRequestsAsyncWithError :: (MonadJSM (Performable m), HasJSContext (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f, IsXhrPayload a) => Event t (f (XhrRequest a)) -> m (Event t (f (Either XhrException XhrResponse)))
+ Reflex.Dom.Xhr: performRequestsAsyncWithError :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f, IsXhrPayload a) => Event t (f (XhrRequest a)) -> m (Event t (f (Either XhrException XhrResponse)))
- Reflex.Dom.Xhr: xhrRequestConfig_headers :: forall a_a3XKe. Lens' (XhrRequestConfig a_a3XKe) (Map Text Text)
+ Reflex.Dom.Xhr: xhrRequestConfig_headers :: forall a_a3MCg. Lens' (XhrRequestConfig a_a3MCg) (Map Text Text)
- Reflex.Dom.Xhr: xhrRequestConfig_password :: forall a_a3XKe. Lens' (XhrRequestConfig a_a3XKe) (Maybe Text)
+ Reflex.Dom.Xhr: xhrRequestConfig_password :: forall a_a3MCg. Lens' (XhrRequestConfig a_a3MCg) (Maybe Text)
- Reflex.Dom.Xhr: xhrRequestConfig_responseHeaders :: forall a_a3XKe. Lens' (XhrRequestConfig a_a3XKe) XhrResponseHeaders
+ Reflex.Dom.Xhr: xhrRequestConfig_responseHeaders :: forall a_a3MCg. Lens' (XhrRequestConfig a_a3MCg) XhrResponseHeaders
- Reflex.Dom.Xhr: xhrRequestConfig_responseType :: forall a_a3XKe. Lens' (XhrRequestConfig a_a3XKe) (Maybe XhrResponseType)
+ Reflex.Dom.Xhr: xhrRequestConfig_responseType :: forall a_a3MCg. Lens' (XhrRequestConfig a_a3MCg) (Maybe XhrResponseType)
- Reflex.Dom.Xhr: xhrRequestConfig_sendData :: forall a_a3XKe a_a3Z8D. Lens (XhrRequestConfig a_a3XKe) (XhrRequestConfig a_a3Z8D) a_a3XKe a_a3Z8D
+ Reflex.Dom.Xhr: xhrRequestConfig_sendData :: forall a_a3MCg a_a3NZd. Lens (XhrRequestConfig a_a3MCg) (XhrRequestConfig a_a3NZd) a_a3MCg a_a3NZd
- Reflex.Dom.Xhr: xhrRequestConfig_user :: forall a_a3XKe. Lens' (XhrRequestConfig a_a3XKe) (Maybe Text)
+ Reflex.Dom.Xhr: xhrRequestConfig_user :: forall a_a3MCg. Lens' (XhrRequestConfig a_a3MCg) (Maybe Text)
- Reflex.Dom.Xhr: xhrRequestConfig_withCredentials :: forall a_a3XKe. Lens' (XhrRequestConfig a_a3XKe) Bool
+ Reflex.Dom.Xhr: xhrRequestConfig_withCredentials :: forall a_a3MCg. Lens' (XhrRequestConfig a_a3MCg) Bool
- Reflex.Dom.Xhr: xhrRequest_config :: forall a_a3XKf a_a3Z8m. Lens (XhrRequest a_a3XKf) (XhrRequest a_a3Z8m) (XhrRequestConfig a_a3XKf) (XhrRequestConfig a_a3Z8m)
+ Reflex.Dom.Xhr: xhrRequest_config :: forall a_a3MCh a_a3NYW. Lens (XhrRequest a_a3MCh) (XhrRequest a_a3NYW) (XhrRequestConfig a_a3MCh) (XhrRequestConfig a_a3NYW)
- Reflex.Dom.Xhr: xhrRequest_method :: forall a_a3XKf. Lens' (XhrRequest a_a3XKf) Text
+ Reflex.Dom.Xhr: xhrRequest_method :: forall a_a3MCh. Lens' (XhrRequest a_a3MCh) Text
- Reflex.Dom.Xhr: xhrRequest_url :: forall a_a3XKf. Lens' (XhrRequest a_a3XKf) Text
+ Reflex.Dom.Xhr: xhrRequest_url :: forall a_a3MCh. Lens' (XhrRequest a_a3MCh) Text
- Reflex.Dom.Xhr.FormData: postForms :: (IsBlob blob, HasJSContext (Performable m), MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f) => Text -> Event t (f (Map Text (FormValue blob))) -> m (Event t (f XhrResponse))
+ Reflex.Dom.Xhr.FormData: postForms :: (IsBlob blob, MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f) => Text -> Event t (f (Map Text (FormValue blob))) -> m (Event t (f XhrResponse))

Files

ChangeLog.md view
@@ -1,5 +1,10 @@ # Revision history for reflex-dom-core +## 0.7.0.0++* Breaking change: Remove HasJSContext and MonadJS. This change also removes the `js` type parameter from `Prerender`. Change `Prerender js t m` to `Prerender t m`.+  * `Reflex.Dom.WebSocket.Foreign.newWebSocket` takes one fewer argument: the first argument used to be a js context+ ## 0.6.3.0  * Remove calls to `eval` in Reflex.Dom.Builder.Immediate when compiling with ghcjs
reflex-dom-core.cabal view
@@ -1,6 +1,6 @@ cabal-version: 1.24 Name: reflex-dom-core-Version: 0.6.3.0+Version: 0.7.0.0 Synopsis: Functional Reactive Web Apps with Reflex Description:   Web applications without callbacks or side-effects.
src/Foreign/JavaScript/TH.hs view
@@ -1,18 +1,13 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE ConstraintKinds #-}-{-# LANGUAGE EmptyDataDecls #-} {-# LANGUAGE ExistentialQuantification #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE FunctionalDependencies #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE RankNTypes #-}-{-# LANGUAGE StandaloneDeriving #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE UndecidableInstances #-}-#ifdef USE_TEMPLATE_HASKELL-{-# LANGUAGE TemplateHaskell #-}-#endif #ifdef ghcjs_HOST_OS {-# LANGUAGE ForeignFunctionInterface #-} {-# LANGUAGE JavaScriptFFI #-}@@ -27,20 +22,14 @@ import Prelude hiding ((!!)) import Reflex.Class import Reflex.Adjustable.Class-import Reflex.DynamicWriter.Base-import Reflex.EventWriter.Base import Reflex.Host.Class-import Reflex.PerformEvent.Base import Reflex.PerformEvent.Class-import Reflex.PostBuild.Base-import Reflex.Requester.Base-import Reflex.Query.Base (QueryT (..))  #ifdef USE_TEMPLATE_HASKELL import Language.Haskell.TH #endif -import GHCJS.DOM.Types (JSContextRef, Node (..), askJSM)+import GHCJS.DOM.Types (JSContextRef, askJSM) #ifdef ghcjs_HOST_OS import qualified GHCJS.Buffer as JS import GHCJS.DOM.Types (MonadJSM)@@ -60,75 +49,18 @@ import Foreign.Ptr import Text.Encoding.Z #else-import Control.Lens.Operators ((^.))-import Data.Word (Word8)-import GHCJS.DOM.Types (JSVal, MonadJSM (..), liftJSM, runJSM, toJSString, toJSVal)-import Language.Javascript.JSaddle (Function (..), array, eval, freeFunction, function, js, js1, jss, valBool,-                                    valIsNull, valIsUndefined, valMakeNumber, valMakeString, valToBool,-                                    valToNumber, valToText, valUndefined, (!!))+import GHCJS.DOM.Types (MonadJSM (..), runJSM) #endif -import Control.Concurrent-import Control.Monad import Control.Monad.Exception import Control.Monad.Fix import Control.Monad.IO.Class import Control.Monad.Primitive import Control.Monad.Reader import Control.Monad.Ref-import Control.Monad.State-import qualified Control.Monad.State.Strict as Strict import Control.Monad.Trans.Control-import Data.ByteString (ByteString)-import qualified Data.ByteString as BS import Data.Coerce (coerce)-import Data.Monoid-import Data.Text (Text)-import qualified Data.Text as T -class Monad m => HasJSContext m where-  type JSContextPhantom m :: *-  askJSContext :: m (JSContextSingleton (JSContextPhantom m))--type HasWebView = HasJSContext--- Not sure if we should deprecate this {-# DEPRECATED HasWebView "Use HasJSContext" #-}--instance HasJSContext m => HasJSContext (ReaderT r m) where-  type JSContextPhantom (ReaderT r m) = JSContextPhantom m-  askJSContext = lift askJSContext--instance HasJSContext m => HasJSContext (StateT r m) where-  type JSContextPhantom (StateT r m) = JSContextPhantom m-  askJSContext = lift askJSContext--instance HasJSContext m => HasJSContext (Strict.StateT r m) where-  type JSContextPhantom (Strict.StateT r m) = JSContextPhantom m-  askJSContext = lift askJSContext--instance HasJSContext m => HasJSContext (PostBuildT t m) where-  type JSContextPhantom (PostBuildT t m) = JSContextPhantom m-  askJSContext = lift askJSContext--instance (ReflexHost t, HasJSContext (HostFrame t)) => HasJSContext (PerformEventT t m) where-  type JSContextPhantom (PerformEventT t m) = JSContextPhantom (HostFrame t)-  askJSContext = PerformEventT $ lift askJSContext--instance HasJSContext m => HasJSContext (EventWriterT t w m) where-  type JSContextPhantom (EventWriterT t w m) = JSContextPhantom m-  askJSContext = lift askJSContext--instance HasJSContext m => HasJSContext (DynamicWriterT t w m) where-  type JSContextPhantom (DynamicWriterT t w m) = JSContextPhantom m-  askJSContext = lift askJSContext--instance HasJSContext m => HasJSContext (RequesterT t request response m) where-  type JSContextPhantom (RequesterT t request response m) = JSContextPhantom m-  askJSContext = lift askJSContext--instance HasJSContext m => HasJSContext (QueryT t q m) where-  type JSContextPhantom (QueryT t q m) = JSContextPhantom m-  askJSContext = QueryT askJSContext- newtype WithJSContextSingleton x m a = WithJSContextSingleton { unWithJSContextSingleton :: ReaderT (JSContextSingleton x) m a } deriving (Functor, Applicative, Monad, MonadIO, MonadFix, MonadTrans, MonadException, MonadAsyncException)  instance PrimMonad m => PrimMonad (WithJSContextSingleton x m) where@@ -191,10 +123,6 @@ runWithJSContextSingleton :: WithJSContextSingleton x m a -> JSContextSingleton x -> m a runWithJSContextSingleton = runReaderT . unWithJSContextSingleton -instance (Monad m) => HasJSContext (WithJSContextSingleton x m) where-  type JSContextPhantom (WithJSContextSingleton x m) = x-  askJSContext = WithJSContextSingleton ask- instance MonadRef m => MonadRef (WithJSContextSingleton x m) where   type Ref (WithJSContextSingleton x m) = Ref m   newRef = lift . newRef@@ -214,368 +142,9 @@ -- | A singleton type for a given JSContext; we use this to statically guarantee that different JSContexts don't get mixed up newtype JSContextSingleton x = JSContextSingleton { unJSContextSingleton :: JSContextRef } -#ifdef ghcjs_HOST_OS-type JSFFI_Internal = JS.MutableJSArray -> IO JS.JSVal-newtype JSFFI = JSFFI JSFFI_Internal-#else-newtype JSFFI = JSFFI String-#endif--data JSFun x = JSFun { unJSFun :: JSRef x #ifndef ghcjs_HOST_OS-    , unJSFunction :: Function-#endif-    }--instance ToJS x (JSFun x) where-  withJS r f = f (unJSFun r)--class IsJSContext x where-  data JSRef x--class (Monad m, MonadJSM (JSX m), MonadFix (JSX m), MonadJS x (JSX m)) => HasJS x m | m -> x where-  type JSX m :: * -> *-  liftJS :: JSX m a -> m a--instance HasJS x m => HasJS x (ReaderT r m) where-  type JSX (ReaderT r m) = JSX m-  liftJS = lift . liftJS--instance HasJS x m => HasJS x (PostBuildT t m) where-  type JSX (PostBuildT t m) = JSX m-  liftJS = lift . liftJS--instance (HasJS x (HostFrame t), ReflexHost t) => HasJS x (PerformEventT t m) where-  type JSX (PerformEventT t m) = JSX (HostFrame t)-  liftJS = PerformEventT . lift . liftJS--instance HasJS x m => HasJS x (DynamicWriterT t w m) where-  type JSX (DynamicWriterT t w m) = JSX m-  liftJS = lift . liftJS--instance HasJS x m => HasJS x (EventWriterT t w m) where-  type JSX (EventWriterT t w m) = JSX m-  liftJS = lift . liftJS--instance HasJS x m => HasJS x (RequesterT t request response m) where-  type JSX (RequesterT t request response m) = JSX m-  liftJS = lift . liftJS--instance HasJS x m => HasJS x (QueryT t q m) where-  type JSX (QueryT t q m) = JSX m-  liftJS = lift . liftJS---- | A Monad that is capable of executing JavaScript-class Monad m => MonadJS x m | m -> x where-  runJS :: JSFFI -> [JSRef x] -> m (JSRef x)-  forkJS :: m () -> m ThreadId-  mkJSUndefined :: m (JSRef x)-  isJSNull :: JSRef x -> m Bool-  isJSUndefined :: JSRef x -> m Bool-  fromJSBool :: JSRef x -> m Bool-  fromJSString :: JSRef x -> m String-  fromJSArray :: JSRef x -> m [JSRef x]-  fromJSUint8Array :: JSRef x -> m ByteString-  fromJSNumber :: JSRef x -> m Double-  withJSBool :: Bool -> (JSRef x -> m r) -> m r-  withJSString :: String -> (JSRef x -> m r) -> m r-  withJSNumber :: Double -> (JSRef x -> m r) -> m r-  withJSArray :: [JSRef x] -> (JSRef x -> m r) -> m r-  withJSUint8Array :: ByteString -> (JSUint8Array x -> m r) -> m r-  -- | Create a JSFun with zero arguments; should be equilvant to `syncCallback AlwaysRetain True` in GHCJS-  mkJSFun :: ([JSRef x] -> m (JSRef x)) -> m (JSFun x) --TODO: Support 'this', exceptions-  freeJSFun :: JSFun x -> m ()-  setJSProp :: String -> JSRef x -> JSRef x -> m ()-  getJSProp :: String -> JSRef x -> m (JSRef x)-  withJSNode :: Node -> (JSRef x -> m r) -> m r--#ifdef ghcjs_HOST_OS--data JSCtx_IO-type JS' = JSCtx_IO--instance MonadIO m => HasJS JSCtx_IO (WithJSContextSingleton x m) where-  type JSX (WithJSContextSingleton x m) = IO-  liftJS = liftIO--instance IsJSContext JSCtx_IO where-  newtype JSRef JSCtx_IO = JSRef_IO { unJSRef_IO :: JS.JSVal }--instance MonadJS JSCtx_IO IO where-  runJS (JSFFI f) l = fmap JSRef_IO . f =<< JS.fromListIO (coerce l)-  forkJS = forkIO-  mkJSUndefined = return $ JSRef_IO JS.jsUndefined-  isJSNull (JSRef_IO r) = return $ JS.isNull r-  isJSUndefined (JSRef_IO r) = return $ JS.isUndefined r-  fromJSBool (JSRef_IO r) = return $ JS.fromJSBool r-  fromJSString (JSRef_IO r) = return $ JS.fromJSString $ JS.pFromJSVal r-  fromJSArray (JSRef_IO r) = fmap coerce $ JS.toListIO $ coerce r-  fromJSUint8Array (JSRef_IO r) = fmap (JS.toByteString 0 Nothing . JS.createFromArrayBuffer) $ JSArrayBuffer.unsafeFreeze $ JS.pFromJSVal r --TODO: Assert that this is immutable-  fromJSNumber (JSRef_IO r) = JS.fromJSValUnchecked r-  withJSBool b f = f $ JSRef_IO $ JS.toJSBool b-  withJSString s f = f $ JSRef_IO $ JS.pToJSVal $ JS.toJSString s-  withJSNumber n f = do-    r <- JS.toJSVal n-    f $ JSRef_IO r-  withJSArray l f = do-    r <- JS.fromListIO $ coerce l-    f $ JSRef_IO $ coerce r-  withJSUint8Array payload f = BS.useAsCString payload $ \cStr -> do-    ba <- extractByteArray cStr $ BS.length payload-    f $ JSUint8Array $ JSRef_IO ba-  mkJSFun f = do-    cb <- JS.syncCallback1' $ \args -> do-      l <- JS.toListIO $ coerce args-      JSRef_IO result <- f $ coerce l-      return result-    fmap (JSFun . JSRef_IO) $ funWithArguments $ coerce cb-  freeJSFun (JSFun (JSRef_IO r)) = JS.releaseCallback $ coerce r-  setJSProp s (JSRef_IO v) (JSRef_IO o) = JS.setProp (JS.toJSString s) v $ coerce o-  getJSProp s (JSRef_IO o) = do-    r <- JS.getProp (JS.toJSString s) $ coerce o-    return $ JSRef_IO r-  withJSNode n f = f $ JSRef_IO $ unNode n--foreign import javascript unsafe "new Uint8Array($1_1.buf, $1_2, $2)" extractByteArray :: Ptr CChar -> Int -> IO JS.JSVal--foreign import javascript unsafe "function(){ return $1(arguments); }" funWithArguments :: JS.Callback (JS.MutableJSArray -> IO a) -> IO JS.JSVal--#else--data JSCtx_JavaScriptCore x-type JS' = JSCtx_JavaScriptCore ()--instance IsJSContext (JSCtx_JavaScriptCore x) where-  newtype JSRef (JSCtx_JavaScriptCore x) = JSRef_JavaScriptCore { unJSRef_JavaScriptCore :: JSVal }--instance MonadIO m => HasJS (JSCtx_JavaScriptCore x) (WithJSContextSingleton x m) where-  type JSX (WithJSContextSingleton x m) = WithJSContextSingleton x IO-  liftJS a = do-    wv <- askJSContext-    liftIO $ runWithJSContextSingleton a wv--newtype WithJSContext x m a = WithJSContext { unWithJSContext :: ReaderT JSContextRef m a } deriving (Functor, Applicative, Monad, MonadIO, MonadFix, MonadTrans, MonadException, MonadAsyncException)--runWithJSContext :: WithJSContext x m a -> JSContextRef -> m a-runWithJSContext = runReaderT . unWithJSContext- instance MonadIO m => MonadJSM (WithJSContextSingleton x m) where   liftJSM' f = do-    wv <- askJSContext+    wv <- WithJSContextSingleton ask     runJSM f $ unJSContextSingleton wv--instance MonadIO m => MonadJSM (WithJSContext x m) where-  liftJSM' f =-    runJSM f =<< WithJSContext ask--lowerWithJSContext :: MonadJSM m => WithJSContext x IO a -> m a-lowerWithJSContext a = do-  c <- askJSM-  liftIO $ runWithJSContext a c--liftWithJSContextSingletonThroughWithJSContext :: (HasJSContext m, MonadJSM m, MonadTrans t, Monad m1)-                                    => ((t1 -> t m1 a) -> WithJSContext x IO b)-                                    -> (t1 -> WithJSContextSingleton (JSContextPhantom m) m1 a)-                                    -> m b-liftWithJSContextSingletonThroughWithJSContext f a = do-  wv <- askJSContext-  lowerWithJSContext $ f $ \b' -> lift $ runWithJSContextSingleton (a b') wv--instance MonadJS (JSCtx_JavaScriptCore x) (WithJSContextSingleton x IO) where-  forkJS a = do-    wv <- askJSContext-    liftIO $ forkIO $ runWithJSContextSingleton a wv-  mkJSFun a = do-    wv <- askJSContext-    lowerWithJSContext $ mkJSFun $ \args -> lift $ runWithJSContextSingleton (a args) wv-  runJS expr args = lowerWithJSContext $ runJS expr args-  mkJSUndefined = lowerWithJSContext mkJSUndefined-  isJSNull = lowerWithJSContext . isJSNull-  isJSUndefined = lowerWithJSContext . isJSUndefined-  fromJSBool = lowerWithJSContext . fromJSBool-  fromJSString = lowerWithJSContext . fromJSString-  fromJSArray = lowerWithJSContext . fromJSArray-  fromJSUint8Array = lowerWithJSContext . fromJSUint8Array-  fromJSNumber = lowerWithJSContext . fromJSNumber-  freeJSFun = lowerWithJSContext . freeJSFun-  withJSBool = liftWithJSContextSingletonThroughWithJSContext . withJSBool-  withJSString = liftWithJSContextSingletonThroughWithJSContext . withJSString-  withJSNumber = liftWithJSContextSingletonThroughWithJSContext . withJSNumber-  withJSArray = liftWithJSContextSingletonThroughWithJSContext . withJSArray-  withJSUint8Array = liftWithJSContextSingletonThroughWithJSContext . withJSUint8Array-  withJSNode = liftWithJSContextSingletonThroughWithJSContext . withJSNode-  setJSProp propName valRef objRef = lowerWithJSContext $ setJSProp propName valRef objRef-  getJSProp propName objRef = lowerWithJSContext $ getJSProp propName objRef--instance MonadJS (JSCtx_JavaScriptCore x) (WithJSContext x IO) where-  runJS (JSFFI body) args =-    withJSArray args $ \(JSRef_JavaScriptCore this) -> do-      result <- liftJSM $ eval ("(function(){ return (" <> body <> "); })") ^. js1 "apply" this-      return $ JSRef_JavaScriptCore result-  forkJS a = do-    c <- askJSM-    liftIO . forkIO $ runWithJSContext a c-  mkJSUndefined = return $ JSRef_JavaScriptCore valUndefined-  isJSNull (JSRef_JavaScriptCore r) = liftJSM $ valIsNull r-  isJSUndefined (JSRef_JavaScriptCore r) = liftJSM $ valIsUndefined r-  fromJSBool (JSRef_JavaScriptCore r) = liftJSM $ valToBool r-  fromJSString (JSRef_JavaScriptCore r) = liftJSM (T.unpack <$> valToText r)-  withJSBool b a = a $ JSRef_JavaScriptCore (valBool b)-  withJSString str a = a . JSRef_JavaScriptCore =<< liftJSM (valMakeString $ toJSString str)-  withJSNumber n a = a . JSRef_JavaScriptCore =<< liftJSM (valMakeNumber n)-  withJSArray elems a = a . JSRef_JavaScriptCore =<< liftJSM-    (toJSVal =<< array (map (\(JSRef_JavaScriptCore r) -> r) elems))-  withJSUint8Array payload f = withJSArrayFromList (BS.unpack payload) $ \x -> do-    payloadRef <- runJS (JSFFI "new Uint8Array(this[0])") [x]-    f $ JSUint8Array payloadRef-  fromJSArray (JSRef_JavaScriptCore a) = liftJSM $ do-    len <- round <$> (valToNumber =<< (a ^. js "length"))-    forM [0..len-1] $ fmap JSRef_JavaScriptCore . (a !!)-  fromJSUint8Array a = do-    vals <- fromJSArray a-    doubles <- mapM fromJSNumber vals-    return $ BS.pack $ map round doubles-  fromJSNumber (JSRef_JavaScriptCore val) = liftJSM $ valToNumber val-  mkJSFun a = liftJSM $ do-    ctx <- askJSM-    f <- function $ \_ _ args -> liftIO $ void $ runWithJSContext (a $ map JSRef_JavaScriptCore args) ctx-    fRef <- toJSVal f-    return $ JSFun (JSRef_JavaScriptCore fRef) f-  freeJSFun (JSFun _ f) = liftJSM $ freeFunction f-  setJSProp propName (JSRef_JavaScriptCore valRef) (JSRef_JavaScriptCore objRef) =-    liftJSM $ objRef ^. jss propName valRef-  getJSProp propName (JSRef_JavaScriptCore objRef) =-    JSRef_JavaScriptCore <$> liftJSM (objRef ^. js propName)-  withJSNode n f = f . JSRef_JavaScriptCore =<< liftJSM (toJSVal n)--#endif--class FromJS x a where-  fromJS :: MonadJS x m => JSRef x -> m a--instance FromJS x () where-  fromJS _ = return () --TODO: Should this do some kind of checking for the js value?--instance FromJS x Bool where-  fromJS = fromJSBool--instance ToJS x Bool where-  withJS = withJSBool--instance FromJS x String where-  fromJS = fromJSString--instance FromJS x Text where-  fromJS s = T.pack <$> fromJSString s--instance FromJS x a => FromJS x (Maybe a) where-  fromJS x = do-    n <- isJSNull x-    if n then return Nothing else Just <$> fromJS x--class ToJS x a where-  withJS :: MonadJS x m => a -> (JSRef x -> m r) -> m r--instance ToJS x (JSRef x) where-  withJS r = ($ r)--instance FromJS x (JSRef x) where-  fromJS = return--instance ToJS x String where-  withJS = withJSString--instance ToJS x Text where-  withJS = withJSString . T.unpack--newtype JSArray a = JSArray { unJSArray :: [a] }--instance ToJS x a => ToJS x (JSArray a) where-  withJS = withJSArrayFromList . unJSArray--instance FromJS x a => FromJS x (JSArray a) where-  fromJS = fmap JSArray . mapM fromJS <=< fromJSArray--withJSArrayFromList :: (ToJS x a, MonadJS x m) => [a] -> (JSRef x -> m r) -> m r-withJSArrayFromList as f = go as []-  where go [] jsRefs = withJSArray (reverse jsRefs) f-        go (h:t) jsRefs = withJS h $ \hRef -> go t (hRef : jsRefs)--newtype JSUint8Array x = JSUint8Array { unJSUint8Array :: JSRef x }--instance ToJS x (JSUint8Array x) where-  withJS (JSUint8Array r) = ($ r)--instance FromJS x (JSUint8Array x) where-  fromJS = return . JSUint8Array--instance ToJS x Word8 where-  withJS n = withJSNumber $ fromIntegral n --TODO: Check things; throw exceptions--instance ToJS x Int where-  withJS n = withJSNumber $ fromIntegral n --TODO: Check things; throw exceptions--instance FromJS x Int where-  fromJS = fmap round . fromJSNumber --TODO: Check things; throw exceptions--instance ToJS x Double where-  withJS = withJSNumber--instance FromJS x Double where-  fromJS = fromJSNumber--instance ToJS x Node where-  withJS = withJSNode---#ifdef USE_TEMPLATE_HASKELL--importJS :: Safety -> String -> String -> Q Type -> Q [Dec]-importJS safety body name qt = do-  t <- qt-  let (argTypes, _) = parseType t-  argNames <- forM argTypes $ \_ -> do-    arg <- newName "arg"-    argRef <- newName "argRef"-    return (arg, argRef)-  (jsffiDecs, jsffiExp) <- mkJSFFI safety body-  let go [] = [| runJS $(return jsffiExp) $(listE $ map (varE . snd) argNames) >>= fromJS-               |]-      go ((arg, argRef) : args) = [| withJS $(varE arg) $ $(lamE [varP argRef] $ go args) |]-  e <- lamE (map (varP. fst) argNames) $ go argNames-  let n = mkName name-  return $ jsffiDecs ++-    [ SigD n t-    , ValD (VarP n) (NormalB e) []-    ]--mkJSFFI :: Safety -> String -> Q ([Dec], Exp)-#ifdef ghcjs_HOST_OS-mkJSFFI safety body = do-  -- n <- newName "jsffi" --TODO: Should use newName, but that doesn't seem to work with ghcjs-  l <- location-  n <- newName $ "jsffi_" <> zEncodeString (loc_package l <> ":" <> loc_module l) <> "_" <> show (abs (hash (show safety, body)))-  t <- [t| JSFFI_Internal |]-  let wrappedBody = "(function(){ return (" <> body <> "); }).apply($1)"-  let decs = [ForeignD $ ImportF JavaScript safety wrappedBody n t]-  e <- [| JSFFI $(varE n) |]-  return (decs, e)-#else-mkJSFFI _ body = do-  e <- [| JSFFI body |]-  return ([], e)-#endif--parseType :: Type -> ([Type], Type)-parseType (ForallT _ [AppT (AppT (ConT monadJs) (VarT _)) (VarT m)] funType)-  | monadJs == ''MonadJS = go funType-  where go t = case t of-          AppT (AppT ArrowT arg) t' ->-            let (args, result) = go t'-            in (arg : args, result)-          AppT (VarT m') result-            | m' == m -> ([], result)-          _ -> error $ "parseType: can't parse type " <> show t-parseType t = error $ "parseType: can't parse type " <> show t- #endif
src/Reflex/Dom/Builder/Hydratable.hs view
@@ -15,7 +15,6 @@ import Control.Monad.Trans.Control import Data.Coerce import qualified Data.Map as Map-import Foreign.JavaScript.TH #ifndef ghcjs_HOST_OS import GHCJS.DOM.Types (MonadJSM (..)) #endif@@ -101,14 +100,6 @@     lift $ selectElement cfg' $ runHydratableT child  instance HasDocument m => HasDocument (HydratableT m)--instance HasJSContext m => HasJSContext (HydratableT m) where-  type JSContextPhantom (HydratableT m) = JSContextPhantom m-  askJSContext = lift askJSContext--instance HasJS js m => HasJS js (HydratableT m) where-  type JSX (HydratableT m) = JSX m-  liftJS = lift . liftJS  instance DomRenderHook t m => DomRenderHook t (HydratableT m) where   withRenderHook f = HydratableT . withRenderHook f . runHydratableT
src/Reflex/Dom/Builder/Immediate.hs view
@@ -141,7 +141,6 @@ import Data.Maybe import Data.Monoid ((<>)) import Data.Some (Some(..))-import Data.GADT.Compare (GCompare) import Data.String (IsString) import Data.Text (Text) import Foreign.JavaScript.Internal.Utils@@ -2207,10 +2206,6 @@   {-# INLINABLE newEventWithLazyTriggerWithOnComplete #-}   newEventWithLazyTriggerWithOnComplete f = DomRenderHookT . lift $ newEventWithLazyTriggerWithOnComplete f -instance HasJSContext m => HasJSContext (HydrationDomBuilderT s t m) where-  type JSContextPhantom (HydrationDomBuilderT s t m) = JSContextPhantom m-  askJSContext = lift askJSContext- instance MonadRef m => MonadRef (HydrationDomBuilderT s t m) where   type Ref (HydrationDomBuilderT s t m) = Ref m   {-# INLINABLE newRef #-}@@ -2223,10 +2218,6 @@ instance MonadAtomicRef m => MonadAtomicRef (HydrationDomBuilderT s t m) where   {-# INLINABLE atomicModifyRef #-}   atomicModifyRef r = lift . atomicModifyRef r--instance (HasJS x m, ReflexHost t) => HasJS x (HydrationDomBuilderT s t m) where-  type JSX (HydrationDomBuilderT s t m) = JSX m-  liftJS = lift . liftJS  type family EventType en where   EventType 'AbortTag = UIEvent
src/Reflex/Dom/Builder/InputDisabled.hs view
@@ -15,7 +15,6 @@ import Control.Monad.Trans.Control import Data.Coerce import qualified Data.Map as Map-import Foreign.JavaScript.TH #ifndef ghcjs_HOST_OS import GHCJS.DOM.Types (MonadJSM (..)) #endif@@ -101,14 +100,6 @@     lift $ selectElement cfg' $ runInputDisabledT child  instance HasDocument m => HasDocument (InputDisabledT m)--instance HasJSContext m => HasJSContext (InputDisabledT m) where-  type JSContextPhantom (InputDisabledT m) = JSContextPhantom m-  askJSContext = lift askJSContext--instance HasJS js m => HasJS js (InputDisabledT m) where-  type JSX (InputDisabledT m) = JSX m-  liftJS = lift . liftJS  instance DomRenderHook t m => DomRenderHook t (InputDisabledT m) where   withRenderHook f = InputDisabledT . withRenderHook f . runInputDisabledT
src/Reflex/Dom/Old.hs view
@@ -63,7 +63,6 @@ import Data.Set (Set) import qualified Data.Set as Set import Data.Text (Text)-import Foreign.JavaScript.TH import qualified GHCJS.DOM.Element as Element import GHCJS.DOM.EventM (EventM) import GHCJS.DOM.NamedNodeMap as NNM@@ -118,8 +117,6 @@   , DOM.MonadJSM (Performable m) #endif   , TriggerEvent t m-  , HasJSContext m-  , HasJSContext (Performable m)   , HasDocument m   , MonadRef m   , Ref m ~ Ref IO
src/Reflex/Dom/Prerender.hs view
@@ -45,19 +45,17 @@ import qualified GHCJS.DOM.Node as Node import qualified GHCJS.DOM.Types as DOM -type PrerenderClientConstraint js t m =+type PrerenderClientConstraint t m =   ( DomBuilder t m   , DomBuilderSpace m ~ GhcjsDomSpace   , DomRenderHook t m   , HasDocument m   , TriggerEvent t m-  , PrerenderBaseConstraints js t m+  , PrerenderBaseConstraints t m   ) -type PrerenderBaseConstraints js t m =-  ( HasJSContext (Performable m)-  , HasJSContext m-  , MonadFix m+type PrerenderBaseConstraints t m =+  ( MonadFix m   , MonadHold t m   , MonadJSM (Performable m)   , MonadJSM m@@ -70,18 +68,16 @@   , PrimMonad m   , Ref (Performable m) ~ IORef   , Ref m ~ IORef-  , HasJS js m-  , HasJS js (Performable m)   )  -- | Render the first widget on the server, and the second on the client. The -- hydration builder will run *both* widgets. prerender_-  :: (Functor m, Reflex t, Prerender js t m)+  :: (Functor m, Reflex t, Prerender t m)   => m () ->  Client m () -> m () prerender_ server client = void $ prerender server client -class (PrerenderClientConstraint js t (Client m), Client (Client m) ~ Client m, Prerender js t (Client m)) => Prerender js t m | m -> t js where+class (PrerenderClientConstraint t (Client m), Client (Client m) ~ Client m, Prerender t (Client m)) => Prerender t m | m -> t where   -- | Monad in which the client widget is built   type Client m :: * -> *   -- | Render the first widget on the server, and the second on the client. The@@ -89,11 +85,11 @@   -- switchover time.   prerender :: m a -> Client m a -> m (Dynamic t a) -instance (ReflexHost t, Adjustable t m, PrerenderBaseConstraints js t m) => Prerender js t (HydrationDomBuilderT GhcjsDomSpace t m) where+instance (ReflexHost t, Adjustable t m, PrerenderBaseConstraints t m) => Prerender t (HydrationDomBuilderT GhcjsDomSpace t m) where   type Client (HydrationDomBuilderT GhcjsDomSpace t m) = HydrationDomBuilderT GhcjsDomSpace t m   prerender _ client = pure <$> client -instance (Adjustable t m, PrerenderBaseConstraints js t m, ReflexHost t) => Prerender js t (HydrationDomBuilderT HydrationDomSpace t m) where+instance (Adjustable t m, PrerenderBaseConstraints t m, ReflexHost t) => Prerender t (HydrationDomBuilderT HydrationDomSpace t m) where   -- | PostBuildT is needed here because we delay running the client builder   -- until after switchover, at which point the postBuild of @m@ has already fired   type Client (HydrationDomBuilderT HydrationDomSpace t m) = PostBuildT t (HydrationDomBuilderT GhcjsDomSpace t m)@@ -132,14 +128,14 @@         insertBefore df =<< deleteToPrerenderEnd doc     holdDyn a0 a' -newtype UnrunnableT js t m a = UnrunnableT (ReaderT Void m a)+newtype UnrunnableT t m a = UnrunnableT (ReaderT Void m a)   deriving (Functor, Applicative, Monad, MonadTrans) -unrunnable :: UnrunnableT js t m a+unrunnable :: UnrunnableT t m a unrunnable = UnrunnableT $ ReaderT $ \case {} -instance (Reflex t, Monad m) => DomBuilder t (UnrunnableT js t m) where-  type DomBuilderSpace (UnrunnableT js t m) = GhcjsDomSpace+instance (Reflex t, Monad m) => DomBuilder t (UnrunnableT t m) where+  type DomBuilderSpace (UnrunnableT t m) = GhcjsDomSpace   textNode _ = unrunnable   commentNode _ = unrunnable   element _ _ _ = unrunnable@@ -148,106 +144,79 @@   selectElement _ _ = unrunnable   placeRawElement _ = unrunnable   wrapRawElement _ _ = unrunnable-instance (Reflex t, Monad m) => NotReady t (UnrunnableT js t m) where+instance (Reflex t, Monad m) => NotReady t (UnrunnableT t m) where   notReadyUntil _ = unrunnable   notReady = unrunnable-instance (Reflex t, Monad m) => Adjustable t (UnrunnableT js t m) where+instance (Reflex t, Monad m) => Adjustable t (UnrunnableT t m) where   runWithReplace _ _ = unrunnable   traverseIntMapWithKeyWithAdjust _ _ _ = unrunnable   traverseDMapWithKeyWithAdjust _ _ _ = unrunnable   traverseDMapWithKeyWithAdjustWithMove _ _ _ = unrunnable-instance (Reflex t, Monad m) => PerformEvent t (UnrunnableT js t m) where-  type Performable (UnrunnableT js t m) = UnrunnableT js t m+instance (Reflex t, Monad m) => PerformEvent t (UnrunnableT t m) where+  type Performable (UnrunnableT t m) = UnrunnableT t m   performEvent _ = unrunnable   performEvent_ _ = unrunnable-instance Monad m => MonadRef (UnrunnableT js t m) where-  type Ref (UnrunnableT js t m) = Ref IO+instance Monad m => MonadRef (UnrunnableT t m) where+  type Ref (UnrunnableT t m) = Ref IO   newRef _ = unrunnable   readRef _ = unrunnable   writeRef _ _ = unrunnable-instance Monad m => MonadAtomicRef (UnrunnableT js t m) where+instance Monad m => MonadAtomicRef (UnrunnableT t m) where   atomicModifyRef _ _ = unrunnable-instance Monad m => HasDocument (UnrunnableT js t m) where+instance Monad m => HasDocument (UnrunnableT t m) where   askDocument = unrunnable-instance Monad m => HasJSContext (UnrunnableT js t m) where-  type JSContextPhantom (UnrunnableT js t m) = ()-  askJSContext = unrunnable-instance Monad m => HasJS JS' (UnrunnableT js t m) where-  type JSX (UnrunnableT js t m) = UnrunnableT js t m-  liftJS _ = unrunnable-instance Monad m => MonadJS JS' (UnrunnableT js t m) where-  runJS _ _ = unrunnable-  forkJS _ = unrunnable-  mkJSUndefined = unrunnable-  isJSNull _ = unrunnable-  isJSUndefined _ = unrunnable-  fromJSBool _ = unrunnable-  fromJSString _ = unrunnable-  fromJSArray _ = unrunnable-  fromJSUint8Array _ = unrunnable-  fromJSNumber _ = unrunnable-  withJSBool _ _ = unrunnable-  withJSString _ _ = unrunnable-  withJSNumber _ _ = unrunnable-  withJSArray _ _ = unrunnable-  withJSUint8Array _ _ = unrunnable-  mkJSFun _ = unrunnable-  freeJSFun _ = unrunnable-  setJSProp _ _ _ = unrunnable-  getJSProp _ _ = unrunnable-  withJSNode _ _ = unrunnable-instance Monad m => TriggerEvent t (UnrunnableT js t m) where+instance Monad m => TriggerEvent t (UnrunnableT t m) where   newTriggerEvent = unrunnable   newTriggerEventWithOnComplete = unrunnable   newEventWithLazyTriggerWithOnComplete _ = unrunnable-instance Monad m => MonadReflexCreateTrigger t (UnrunnableT js t m) where+instance Monad m => MonadReflexCreateTrigger t (UnrunnableT t m) where   newEventWithTrigger _ = unrunnable   newFanEventWithTrigger _ = unrunnable-instance Monad m => MonadFix (UnrunnableT js t m) where+instance Monad m => MonadFix (UnrunnableT t m) where   mfix _ = unrunnable-instance (Monad m, MonadHold t m) => MonadHold t (UnrunnableT js t m) where+instance (Monad m, MonadHold t m) => MonadHold t (UnrunnableT t m) where   hold _ _ = unrunnable   holdDyn _ _ = unrunnable   holdIncremental _ _ = unrunnable   buildDynamic _ _ = unrunnable   headE _ = unrunnable   now = unrunnable-instance Monad m => MonadSample t (UnrunnableT js t m) where+instance Monad m => MonadSample t (UnrunnableT t m) where   sample _ = unrunnable-instance Monad m => MonadIO (UnrunnableT js t m) where+instance Monad m => MonadIO (UnrunnableT t m) where   liftIO _ = unrunnable #ifndef ghcjs_HOST_OS-instance Monad m => MonadJSM (UnrunnableT js t m) where+instance Monad m => MonadJSM (UnrunnableT t m) where   liftJSM' _ = unrunnable #endif-instance (Reflex t, Monad m) => PostBuild t (UnrunnableT js t m) where+instance (Reflex t, Monad m) => PostBuild t (UnrunnableT t m) where   getPostBuild = unrunnable-instance Monad m => PrimMonad (UnrunnableT js t m) where-  type PrimState (UnrunnableT js t m) = PrimState IO+instance Monad m => PrimMonad (UnrunnableT t m) where+  type PrimState (UnrunnableT t m) = PrimState IO   primitive _ = unrunnable-instance (Reflex t, Monad m) => DomRenderHook t (UnrunnableT js t m) where+instance (Reflex t, Monad m) => DomRenderHook t (UnrunnableT t m) where   withRenderHook _ _ = unrunnable   requestDomAction _ = unrunnable   requestDomAction_ _ = unrunnable-instance (Reflex t, Monad m, MonadHold t m) => Prerender JS' t (UnrunnableT js t m) where-  type Client (UnrunnableT js t m) = UnrunnableT js t m+instance (Reflex t, Monad m, MonadHold t m) => Prerender t (UnrunnableT t m) where+  type Client (UnrunnableT t m) = UnrunnableT t m   prerender _ _ = unrunnable -instance (SupportsStaticDomBuilder t m) => Prerender JS' t (StaticDomBuilderT t m) where-  type Client (StaticDomBuilderT t m) = UnrunnableT JS' t m+instance (SupportsStaticDomBuilder t m) => Prerender t (StaticDomBuilderT t m) where+  type Client (StaticDomBuilderT t m) = UnrunnableT t m   prerender server _ = do     _ <- commentNode $ CommentNodeConfig startMarker Nothing     a <- server     _ <- commentNode $ CommentNodeConfig endMarker Nothing     pure $ pure a -instance (Prerender js t m, Monad m) => Prerender js t (ReaderT r m) where+instance (Prerender t m, Monad m) => Prerender t (ReaderT r m) where   type Client (ReaderT r m) = ReaderT r (Client m)   prerender server client = do     r <- ask     lift $ prerender (runReaderT server r) (runReaderT client r) -instance (Prerender js t m, Monad m, Reflex t, MonadFix m, Monoid w) => Prerender js t (DynamicWriterT t w m) where+instance (Prerender t m, Monad m, Reflex t, MonadFix m, Monoid w) => Prerender t (DynamicWriterT t w m) where   type Client (DynamicWriterT t w m) = DynamicWriterT t w (Client m)   prerender server client = do     x <- lift $ prerender (runDynamicWriterT server) (runDynamicWriterT client)@@ -256,7 +225,7 @@     tellDyn w     pure a -instance (Prerender js t m, Monad m, Reflex t, Semigroup w) => Prerender js t (EventWriterT t w m) where+instance (Prerender t m, Monad m, Reflex t, Semigroup w) => Prerender t (EventWriterT t w m) where   type Client (EventWriterT t w m) = EventWriterT t w (Client m)   prerender server client = do     x <- lift $ prerender (runEventWriterT server) (runEventWriterT client)@@ -265,7 +234,7 @@     tellEvent w     pure a -instance (Prerender js t m, MonadFix m, Reflex t) => Prerender js t (RequesterT t request response m) where+instance (Prerender t m, MonadFix m, Reflex t) => Prerender t (RequesterT t request response m) where   type Client (RequesterT t request response m) = RequesterT t request response (Client m)   prerender server client = mdo     let fannedResponses = fanInt responses@@ -277,7 +246,7 @@     responses <- fmap (fmapCheap unMultiEntry) $ requesting' $ fmapCheap multiEntry $ switchPromptlyDyn requestsDyn     return result -instance (Prerender js t m, Monad m, Reflex t, MonadFix m, Group q, Additive q, Query q, Eq q) => Prerender js t (QueryT t q m) where+instance (Prerender t m, Monad m, Reflex t, MonadFix m, Group q, Additive q, Query q, Eq q) => Prerender t (QueryT t q m) where   type Client (QueryT t q m) = QueryT t q (Client m)   prerender server client = mdo     result <- queryDyn query@@ -286,15 +255,15 @@         query = incrementalToDynamic =<< inc -- Can we avoid the incrementalToDynamic?     pure a -instance (Prerender js t m, Monad m) => Prerender js t (InputDisabledT m) where+instance (Prerender t m, Monad m) => Prerender t (InputDisabledT m) where   type Client (InputDisabledT m) = InputDisabledT (Client m)   prerender (InputDisabledT server) (InputDisabledT client) = InputDisabledT $ prerender server client -instance (Prerender js t m, Monad m) => Prerender js t (HydratableT m) where+instance (Prerender t m, Monad m) => Prerender t (HydratableT m) where   type Client (HydratableT m) = HydratableT (Client m)   prerender (HydratableT server) (HydratableT client) = HydratableT $ prerender server client -instance (Prerender js t m, Monad m, ReflexHost t) => Prerender js t (PostBuildT t m) where+instance (Prerender t m, Monad m, ReflexHost t) => Prerender t (PostBuildT t m) where   type Client (PostBuildT t m) = PostBuildT t (Client m)   prerender server client = PostBuildT $ do     pb <- ask
src/Reflex/Dom/WebSocket.hs view
@@ -31,7 +31,6 @@ import Prelude hiding (all, concat, concatMap, div, mapM, mapM_, sequence, span)  import Reflex.Class-import Reflex.Dom.Class import Reflex.Dom.WebSocket.Foreign import Reflex.PerformEvent.Class import Reflex.PostBuild.Class@@ -83,12 +82,11 @@                                                 )                   } -webSocket :: (MonadJSM m, MonadJSM (Performable m), HasJSContext m, PerformEvent t m, TriggerEvent t m, PostBuild t m, IsWebSocketMessage a) => Text -> WebSocketConfig t a -> m (WebSocket t)+webSocket :: (MonadJSM m, MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, PostBuild t m, IsWebSocketMessage a) => Text -> WebSocketConfig t a -> m (WebSocket t) webSocket url config = webSocket' url config onBSMessage -webSocket' :: (MonadJSM m, MonadJSM (Performable m), HasJSContext m, PerformEvent t m, TriggerEvent t m, PostBuild t m, IsWebSocketMessage a) => Text -> WebSocketConfig t a -> (Either ByteString JSVal -> JSM b) -> m (RawWebSocket t b)+webSocket' :: (MonadJSM m, MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, PostBuild t m, IsWebSocketMessage a) => Text -> WebSocketConfig t a -> (Either ByteString JSVal -> JSM b) -> m (RawWebSocket t b) webSocket' url config onRawMessage = do-  wv <- fmap unJSContextSingleton askJSContext   (eRecv, onMessage) <- newTriggerEvent   currentSocketRef <- liftIO $ newIORef Nothing   (eOpen, triggerEOpen) <- newTriggerEventWithOnComplete@@ -106,7 +104,7 @@           liftIO $ threadDelay 1000000           start       start = do-        ws <- newWebSocket wv url (_webSocketConfig_protocols config) (onRawMessage >=> liftIO . onMessage) (liftIO onOpen) (liftIO onError) onClose+        ws <- newWebSocket url (_webSocketConfig_protocols config) (onRawMessage >=> liftIO . onMessage) (liftIO onOpen) (liftIO onError) onClose         liftIO $ writeIORef currentSocketRef $ Just ws         return ()   performEvent_ . (liftJSM start <$) =<< getPostBuild@@ -136,10 +134,10 @@     unless success $ atomically $ unGetTQueue payloadQueue payload   return $ RawWebSocket eRecv eOpen eError eClose -textWebSocket :: (IsWebSocketMessage a, MonadJSM m, MonadJSM (Performable m), HasJSContext m, PostBuild t m, TriggerEvent t m, PerformEvent t m, MonadHold t m, Reflex t) => Text -> WebSocketConfig t a -> m (RawWebSocket t Text)+textWebSocket :: (IsWebSocketMessage a, MonadJSM m, MonadJSM (Performable m), PostBuild t m, TriggerEvent t m, PerformEvent t m, MonadHold t m, Reflex t) => Text -> WebSocketConfig t a -> m (RawWebSocket t Text) textWebSocket url cfg = webSocket' url cfg (either (return . decodeUtf8) fromJSValUnchecked) -jsonWebSocket :: (ToJSON a, FromJSON b, MonadJSM m, MonadJSM (Performable m), HasJSContext m, PostBuild t m, TriggerEvent t m, PerformEvent t m, MonadHold t m, Reflex t) => Text -> WebSocketConfig t a -> m (RawWebSocket t (Maybe b))+jsonWebSocket :: (ToJSON a, FromJSON b, MonadJSM m, MonadJSM (Performable m), PostBuild t m, TriggerEvent t m, PerformEvent t m, MonadHold t m, Reflex t) => Text -> WebSocketConfig t a -> m (RawWebSocket t (Maybe b)) jsonWebSocket url cfg = do   ws <- textWebSocket url $ cfg { _webSocketConfig_send = fmap (decodeUtf8 . toStrict . encode) <$> _webSocketConfig_send cfg }   return ws { _webSocket_recv = jsonDecode . textToJSString <$> _webSocket_recv ws }
src/Reflex/Dom/WebSocket/Foreign.hs view
@@ -53,15 +53,14 @@ closeWebSocket (JSWebSocket ws) code reason = DOM.close ws (Just code) (Just reason)  newWebSocket-  :: a-  -> Text -- url+  :: Text -- url   -> [Text] -- protocols   -> (Either ByteString JSVal -> JSM ()) -- onmessage   -> JSM () -- onopen   -> JSM () -- onerror   -> ((Bool, Word, Text) -> JSM ()) -- onclose   -> JSM JSWebSocket-newWebSocket _ url protocols onMessage onOpen onError onClose = do+newWebSocket url protocols onMessage onOpen onError onClose = do   let onOpenWrapped = fun $ \_ _ _ -> onOpen       onErrorWrapped = fun $ \_ _ _ -> onError       onCloseWrapped = fun $ \_ _ (e:_) -> do
src/Reflex/Dom/WebSocket/Query.hs view
@@ -8,11 +8,10 @@ import Data.Aeson import Reflex import Reflex.Dom.WebSocket-import Foreign.JavaScript.TH import Data.Maybe import Language.Javascript.JSaddle.Types (MonadJSM) -runWebSocketQuery :: (MonadJSM m, MonadJSM (Performable m), HasJSContext m, PostBuild t m, TriggerEvent t m, PerformEvent t m, MonadHold t m, Reflex t, ToJSON q, MonadFix m, Query q, FromJSON (QueryResult q), Additive q, Group q, Eq q)+runWebSocketQuery :: (MonadJSM m, MonadJSM (Performable m), PostBuild t m, TriggerEvent t m, PerformEvent t m, MonadHold t m, Reflex t, ToJSON q, MonadFix m, Query q, FromJSON (QueryResult q), Additive q, Group q, Eq q)                   => QueryT t q m a                   -> Text -- ^ WebSocket url                   -> m a
src/Reflex/Dom/Widget/Input.hs view
@@ -33,9 +33,6 @@ import Data.Semigroup import Data.Text (Text) import qualified Data.Text as T-import qualified GHCJS.DOM.GlobalEventHandlers as Events-import GHCJS.DOM.EventM (on)-import qualified GHCJS.DOM.FileList as FileList import GHCJS.DOM.HTMLInputElement (HTMLInputElement) import GHCJS.DOM.HTMLTextAreaElement (HTMLTextAreaElement) import GHCJS.DOM.Types (MonadJSM, File, uncheckedCastTo)
src/Reflex/Dom/Xhr.hs view
@@ -239,7 +239,7 @@ -- the XHR connection), and will pass an exception ('XhrException') to the -- continuation if the connection cannot be made (or is aborted). newXMLHttpRequestWithError-    :: (HasJSContext m, MonadJSM m, IsXhrPayload a)+    :: (MonadJSM m, IsXhrPayload a)     => XhrRequest a     -- ^ The request to make.     -> (Either XhrException XhrResponse -> JSM ())@@ -295,7 +295,7 @@   L.dropWhileEnd T.null $ T.splitOn (T.pack "\r\n") s   where stripBoth (txt1, txt2) = (CI.mk $ T.strip txt1, T.strip $ T.drop 1 txt2) -newXMLHttpRequest :: (HasJSContext m, MonadJSM m, IsXhrPayload a) => XhrRequest a -> (XhrResponse -> JSM ()) -> m XMLHttpRequest+newXMLHttpRequest :: (MonadJSM m, IsXhrPayload a) => XhrRequest a -> (XhrResponse -> JSM ()) -> m XMLHttpRequest newXMLHttpRequest req cb = newXMLHttpRequestWithError req $ mapM_ cb  -- | Given Event of requests, issue them when the Event fires.@@ -304,17 +304,17 @@ -- The request is processed asynchronously, therefore handling does -- not block or cause a delay while creating the connection. performRequestAsyncWithError-    :: (MonadJSM (Performable m), HasJSContext (Performable m), PerformEvent t m, TriggerEvent t m, IsXhrPayload a)+    :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, IsXhrPayload a)     => Event t (XhrRequest a)     -> m (Event t (Either XhrException XhrResponse)) performRequestAsyncWithError = performRequestAsync' newXMLHttpRequestWithError . fmap return  -- | Given Event of request, issue them when the Event fires.  Returns Event of corresponding response.-performRequestAsync :: (MonadJSM (Performable m), HasJSContext (Performable m), PerformEvent t m, TriggerEvent t m, IsXhrPayload a) => Event t (XhrRequest a) -> m (Event t XhrResponse)+performRequestAsync :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, IsXhrPayload a) => Event t (XhrRequest a) -> m (Event t XhrResponse) performRequestAsync = performRequestAsync' newXMLHttpRequest . fmap return  -- | Given Event with an action that creates a request, build and issue the request when the Event fires.  Returns Event of corresponding response.-performMkRequestAsync :: (MonadJSM (Performable m), HasJSContext (Performable m), PerformEvent t m, TriggerEvent t m, IsXhrPayload a) => Event t (Performable m (XhrRequest a)) -> m (Event t XhrResponse)+performMkRequestAsync :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, IsXhrPayload a) => Event t (Performable m (XhrRequest a)) -> m (Event t XhrResponse) performMkRequestAsync = performRequestAsync' newXMLHttpRequest  performRequestAsync' :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m) => (XhrRequest p -> (a -> JSM ()) -> Performable m XMLHttpRequest) -> Event t (Performable m (XhrRequest p)) -> m (Event t a)@@ -333,16 +333,16 @@ -- Order of request execution and completion is not guaranteed, but -- order of creation and the collection result is preserved. performRequestsAsyncWithError-    :: (MonadJSM (Performable m), HasJSContext (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f, IsXhrPayload a)+    :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f, IsXhrPayload a)     => Event t (f (XhrRequest a)) -> m (Event t (f (Either XhrException XhrResponse))) performRequestsAsyncWithError = performRequestsAsync' newXMLHttpRequestWithError . fmap return  -- | Issues a collection of requests when the supplied Event fires.  When ALL requests from a given firing complete, the results are collected and returned via the return Event.-performRequestsAsync :: (MonadJSM (Performable m), HasJSContext (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f, IsXhrPayload a) => Event t (f (XhrRequest a)) -> m (Event t (f XhrResponse))+performRequestsAsync :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f, IsXhrPayload a) => Event t (f (XhrRequest a)) -> m (Event t (f XhrResponse)) performRequestsAsync = performRequestsAsync' newXMLHttpRequest . fmap return  -- | Builds and issues a collection of requests when the supplied Event fires.  When ALL requests from a given firing complete, the results are collected and returned via the return Event.-performMkRequestsAsync :: (MonadJSM (Performable m), HasJSContext (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f, IsXhrPayload a) => Event t (Performable m (f (XhrRequest a))) -> m (Event t (f XhrResponse))+performMkRequestsAsync :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f, IsXhrPayload a) => Event t (Performable m (f (XhrRequest a))) -> m (Event t (f XhrResponse)) performMkRequestsAsync = performRequestsAsync' newXMLHttpRequest  performRequestsAsync' :: (MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, Traversable f) => (XhrRequest b -> (a -> JSM ()) -> Performable m XMLHttpRequest) -> Event t (Performable m (f (XhrRequest b))) -> m (Event t (f a))@@ -356,7 +356,7 @@   return ()  -- | Simplified interface to "GET" URLs and return decoded results.-getAndDecode :: (MonadIO m, MonadJSM (Performable m), PerformEvent t m, HasJSContext (Performable m), TriggerEvent t m, FromJSON a) => Event t Text -> m (Event t (Maybe a))+getAndDecode :: (MonadIO m, MonadJSM (Performable m), PerformEvent t m, TriggerEvent t m, FromJSON a) => Event t Text -> m (Event t (Maybe a)) getAndDecode url = do   r <- performRequestAsync $ fmap (\x -> XhrRequest "GET" x def) url   return $ fmap decodeXhrResponse r
src/Reflex/Dom/Xhr/FormData.hs view
@@ -26,7 +26,7 @@  -- | Performs a POST request with the provided FormData payload postForms-  :: ( IsBlob blob, HasJSContext (Performable m), MonadJSM (Performable m)+  :: ( IsBlob blob, MonadJSM (Performable m)      , PerformEvent t m, TriggerEvent t m      , Traversable f)   => Text -- ^ The target url
test/hydration.hs view
@@ -166,11 +166,11 @@         r <- m         putStrLnDebug "after"         return r-      testWidgetStatic :: WD b -> (forall m js. TestWidget js (SpiderTimeline Global) m => m ()) -> WD b+      testWidgetStatic :: WD b -> (forall m js. TestWidget (SpiderTimeline Global) m => m ()) -> WD b       testWidgetStatic = testWidgetStaticDebug withDebugging-      testWidget :: WD () -> WD b -> (forall m js. TestWidget js (SpiderTimeline Global) m => m ()) -> WD b+      testWidget :: WD () -> WD b -> (forall m js. TestWidget (SpiderTimeline Global) m => m ()) -> WD b       testWidget = testWidgetDebug True withDebugging-      testWidget' :: WD a -> (a -> WD b) -> (forall m js. TestWidget js (SpiderTimeline Global) m => m ()) -> WD b+      testWidget' :: WD a -> (a -> WD b) -> (forall m js. TestWidget (SpiderTimeline Global) m => m ()) -> WD b       testWidget' = testWidgetDebug' True withDebugging   session' "text" $ do     it "works" $ runWD $ do@@ -1653,7 +1653,7 @@     , _selenium_stopServer = stopServer     } -triggerEventWithChan :: (Reflex t, TriggerEvent t m, Prerender js t m) => Chan a -> m (Event t a)+triggerEventWithChan :: (Reflex t, TriggerEvent t m, Prerender t m) => Chan a -> m (Event t a) triggerEventWithChan chan = do   (e, trigger) <- newTriggerEvent   -- In prerender because we only want to do this on the client@@ -1716,13 +1716,13 @@ divId :: DomBuilder t m => Text -> m a -> m a divId i = elAttr "div" ("id" =: i) -type TestWidget js t m = (DomBuilder t m, MonadHold t m, PostBuild t m, Prerender js t m, PerformEvent t m, TriggerEvent t m, MonadFix m, MonadIO (Performable m), MonadIO m)+type TestWidget t m = (DomBuilder t m, MonadHold t m, PostBuild t m, Prerender t m, PerformEvent t m, TriggerEvent t m, MonadFix m, MonadIO (Performable m), MonadIO m)  testWidgetStaticDebug   :: Bool   -> WD b   -- ^ Webdriver commands to run before JS runs and after hydration switchover-  -> (forall m js. TestWidget js (SpiderTimeline Global) m => m ())+  -> (forall m js. TestWidget (SpiderTimeline Global) m => m ())   -- ^ Widget we are testing   -> WD b testWidgetStaticDebug withDebugging w = testWidgetDebug True withDebugging (void w) w@@ -1735,7 +1735,7 @@   -- ^ Webdriver commands to run before the JS runs (i.e. on the statically rendered page)   -> WD b   -- ^ Webdriver commands to run after hydration switchover-  -> (forall m js. TestWidget js (SpiderTimeline Global) m => m ())+  -> (forall m js. TestWidget (SpiderTimeline Global) m => m ())   -- ^ Widget we are testing   -> WD b testWidgetDebug hardFailure withDebugging beforeJS afterSwitchover =@@ -1752,7 +1752,7 @@   -- ^ Webdriver commands to run before the JS runs (i.e. on the statically rendered page)   -> (a -> WD b)   -- ^ Webdriver commands to run after hydration switchover-  -> (forall m js. TestWidget js (SpiderTimeline Global) m => m ())+  -> (forall m js. TestWidget (SpiderTimeline Global) m => m ())   -- ^ Widget we are testing (contents of body)   -> WD b testWidgetDebug' hardFailure withDebugging beforeJS afterSwitchover bodyWidget = do