{-# LANGUAGE CPP #-} -- | Contains commons utilities when defining your own widget module Glazier.React.ReactDOM ( renderDOM ) where import qualified Glazier.React.Element as Z import qualified JavaScript.Extras as JE -- | Using a React Element (first arg) give React rendering control over a DOM element (second arg). -- This should only be called for the topmost component. renderDOM :: Z.ReactElement -> JE.JSRep -> IO () renderDOM = js_render #ifdef __GHCJS__ foreign import javascript unsafe "hgr$ReactDOM().render($1, $2);" js_render :: Z.ReactElement-> JE.JSRep -> IO () #else js_render :: Z.ReactElement -> JE.JSRep -> IO () js_render _ _ = pure () #endif