@@ -47,13 +47,14 @@ class DomSpace d where
4747 type DomHandler d :: * -> * -> *
4848 type DomHandler1 d :: (EventTag -> *) -> (EventTag -> *) -> * --TODO: Why can't this be k -> * ?
4949 type RawEvent d :: EventTag -> *
50+ type RawTextNode d :: *
5051 type RawElement d :: *
5152 defaultEventHandler :: proxy d -> DomHandler1 d (Pair1 EventName (RawEvent d)) (Maybe1 EventResult)
5253
5354-- | @'DomBuilder' t m@ indicates that @m@ is a 'Monad' capable of building dynamic DOM in the 'Reflex' timeline @t@
5455class (Monad m, Reflex t, Deletable t m, DomSpace (DomBuilderSpace m)) => DomBuilder t m | m -> t where
5556 type DomBuilderSpace m :: *
56− textNode :: TextNodeConfig t -> m (TextNode t)
57+ textNode :: TextNodeConfig t -> m (TextNode (DomBuilderSpace m) t)
5758 element :: Text -> ElementConfig er t m -> m a -> m (Element er (DomBuilderSpace m) t, a)
5859 -- | Create a placeholder in the DOM, with the ability to insert new DOM before it
5960 -- The provided DOM will be executed after the current frame, so it will not be affected by any occurrences that are concurrent with the occurrence that created it
@@ -75,7 +76,9 @@ instance (Reflex t) => Default (TextNodeConfig t) where
7576 , _textNodeConfig_setContents = never
7677 }
7778
78−data TextNode t = TextNode
79+data TextNode d t = TextNode
80+ { _textNode_raw :: RawTextNode d
81+ }
7982
8083type AttributeName = (Maybe Namespace, Text)
8184
@@ -329,7 +332,7 @@ type RunStateless t = forall n b. Monad n => t n b -> n b
329332liftWithStateless :: forall m t a. (Monad m, MonadTransControlStateless t) => (RunStateless t -> m a) -> t m a
330333liftWithStateless a = liftWith $ \run -> a $ \x -> fromStT (Proxy :: Proxy t) <$> run x
331334
332−liftTextNode :: (MonadTrans f, DomBuilder t m) => TextNodeConfig t -> f m (TextNode t)
335+liftTextNode :: (MonadTrans f, DomBuilder t m) => TextNodeConfig t -> f m (TextNode (DomBuilderSpace m) t)
333336liftTextNode = lift . textNode
334337
335338liftElement :: LiftDomBuilder t f m => Text -> ElementConfig er t (f m) -> f m a -> f m (Element er (DomBuilderSpace m) t, a)