@@ -46,8 +46,6 @@ import qualified Reflex.Patch.MapWithMove as MapWithMove
4646newtype QueryT t q m a = QueryT { unQueryT :: StateT [Behavior t q] (EventWriterT t q (ReaderT (Dynamic t (QueryResult q)) m)) a }
4747 deriving (Functor, Applicative, Monad, MonadException, MonadFix, MonadIO, MonadHold t, MonadSample t, MonadAtomicRef)
4848
49−-- deriving instance DomRenderHook t m => DomRenderHook t (QueryT t q m)
50−
5149runQueryT :: (MonadFix m, Additive q, Group q, Reflex t) => QueryT t q m a -> Dynamic t (QueryResult q) -> m (a, Incremental t (AdditivePatch q))
5250runQueryT (QueryT a) qr = do
5351 ((r, bs), es) <- runReaderT (runEventWriterT (runStateT a mempty)) qr
@@ -191,45 +189,12 @@ instance PerformEvent t m => PerformEvent t (QueryT t q m) where
191189 performEvent_ = lift . performEvent_
192190 performEvent = lift . performEvent
193191
194−-- instance HasJS x m => HasJS x (QueryT t q m) where
195−-- type JSX (QueryT t q m) = JSX m
196−-- liftJS = lift . liftJS
197−
198−-- instance (DomBuilder t m, MonadFix m, MonadHold t m, Group q, Query q, Additive q) => DomBuilder t (QueryT t q m) where
199−-- type DomBuilderSpace (QueryT t q m) = DomBuilderSpace m
200−-- textNode = liftTextNode
201−-- element elementTag cfg (QueryT child) = QueryT $ do
202−-- s <- get
203−-- let cfg' = cfg
204−-- { _elementConfig_eventSpec = _elementConfig_eventSpec cfg }
205−-- (e, (a, newS)) <- lift $ element elementTag cfg' $ runStateT child s
206−-- put newS
207−-- return (e, a)
208−
209−-- inputElement cfg = lift $ inputElement $ cfg & inputElementConfig_elementConfig %~ liftElementConfig
210−-- textAreaElement cfg = lift $ textAreaElement $ cfg & textAreaElementConfig_elementConfig %~ liftElementConfig
211−-- selectElement cfg (QueryT child) = QueryT $ do
212−-- s <- get
213−-- let cfg' = cfg & selectElementConfig_elementConfig %~ \c ->
214−-- c { _elementConfig_eventSpec = _elementConfig_eventSpec c }
215−-- (e, (a, newS)) <- lift $ selectElement cfg' $ runStateT child s
216−-- put newS
217−-- return (e, a)
218−-- placeRawElement = lift . placeRawElement
219−-- wrapRawElement e cfg = lift $ wrapRawElement e $ cfg
220−-- { _rawElementConfig_eventSpec = _rawElementConfig_eventSpec cfg
221−-- }
222−
223192instance MonadRef m => MonadRef (QueryT t q m) where
224193 type Ref (QueryT t q m) = Ref m
225194 newRef = QueryT . newRef
226195 readRef = QueryT . readRef
227196 writeRef r = QueryT . writeRef r
228197
229−-- instance HasJSContext m => HasJSContext (QueryT t q m) where
230−-- type JSContextPhantom (QueryT t q m) = JSContextPhantom m
231−-- askJSContext = QueryT askJSContext
232−
233198instance MonadReflexCreateTrigger t m => MonadReflexCreateTrigger t (QueryT t q m) where
234199 newEventWithTrigger = QueryT . newEventWithTrigger
235200 newFanEventWithTrigger a = QueryT . lift $ newFanEventWithTrigger a