@@ -64,12 +64,12 @@ mainHydrationWidgetWithHead' :: HydrationWidget () () -> HydrationWidget () () -
6464mainHydrationWidgetWithHead' = mainHydrationWidgetWithSwitchoverAction' (pure ())
6565
6666{-# INLINE mainHydrationWidgetWithSwitchoverAction #-}
67−mainHydrationWidgetWithSwitchoverAction :: IO () -> (forall x. HydrationWidget x ()) -> (forall x. HydrationWidget x ()) -> JSM ()
67+mainHydrationWidgetWithSwitchoverAction :: JSM () -> (forall x. HydrationWidget x ()) -> (forall x. HydrationWidget x ()) -> JSM ()
6868mainHydrationWidgetWithSwitchoverAction = mainHydrationWidgetWithSwitchoverAction'
6969
7070{-# INLINABLE mainHydrationWidgetWithSwitchoverAction' #-}
7171-- | Warning: `mainHydrationWidgetWithSwitchoverAction'` is provided only as performance tweak. It is expected to disappear in future releases.
72−mainHydrationWidgetWithSwitchoverAction' :: IO () -> HydrationWidget () () -> HydrationWidget () () -> JSM ()
72+mainHydrationWidgetWithSwitchoverAction' :: JSM () -> HydrationWidget () () -> HydrationWidget () () -> JSM ()
7373mainHydrationWidgetWithSwitchoverAction' switchoverAction head' body = do
7474 runHydrationWidgetWithHeadAndBody switchoverAction $ \appendHead appendBody -> do
7575 appendHead head'
@@ -77,7 +77,7 @@ mainHydrationWidgetWithSwitchoverAction' switchoverAction head' body = do
7777
7878{-# INLINABLE attachHydrationWidget #-}
7979attachHydrationWidget
80− :: IO ()
80+ :: JSM ()
8181 -> JSContextSingleton ()
8282 -> ( Event DomTimeline ()
8383 -> IORef HydrationMode
@@ -105,7 +105,7 @@ attachHydrationWidget switchoverAction jsSing w = do
105105 let hydrate = runHydrationRunnerT runner Nothing rootNode events
106106 void $ runWithJSContextSingleton (runPostBuildT hydrate never) jsSing
107107 liftIO $ writeIORef hydrationMode HydrationMode_Immediate
108− liftIO $ switchoverAction
108+ runWithJSContextSingleton (DOM.liftJSM switchoverAction) jsSing
109109 pure (result, fc)
110110
111111type HydrationWidget x a = HydrationDomBuilderT HydrationDomSpace DomTimeline (DomCoreWidget x) a
@@ -117,7 +117,7 @@ type DomCoreWidget x = PostBuildT DomTimeline (WithJSContextSingleton x (Perform
117117
118118{-# INLINABLE runHydrationWidgetWithHeadAndBody #-}
119119runHydrationWidgetWithHeadAndBody
120− :: IO ()
120+ :: JSM ()
121121 -> ( (forall c. HydrationWidget () c -> FloatingWidget () c) -- "Append to head"
122122 -> (forall c. HydrationWidget () c -> FloatingWidget () c) -- "Append to body"
123123 -> FloatingWidget () ()