module Handler.Utils.Templates where import Data.Either (isLeft) import Import.NoFoundation lipsum :: WidgetT site IO () lipsum = $(widgetFile "widgets/lipsum") modal :: WidgetT site IO () -> Either (SomeRoute site) (WidgetT site IO ()) -> WidgetT site IO () modal modalTrigger modalContent = do let modalDynamic = isLeft modalContent modalId <- newIdent triggerId <- newIdent $(widgetFile "widgets/modal") case modalContent of Left route -> do route' <- toTextUrl route [whamlet|^{modalTrigger}|] Right _ -> [whamlet|
^{modalTrigger}|]