module IHP.IDE.CodeGen.View.NewMail where import IHP.ViewPrelude import IHP.IDE.ToolServer.Types import IHP.IDE.CodeGen.Types import IHP.IDE.CodeGen.View.Generators (renderPlan) data NewMailView = NewMailView { plan :: Either Text [GeneratorAction] , mailName :: Text , controllerName :: Text , applicationName :: Text , controllers :: [Text] , applications :: [Text] } instance View NewMailView where html NewMailView { .. } = [hsx|
{renderFlashMessages}
{if isEmpty then renderEmpty else renderPreview} {unless isEmpty (renderPlan plan)}
|] where renderEmpty = [hsx|
{when (length applications /= 1) renderApplicationSelector}
|] renderControllerOptions = forM_ controllers (\x -> [hsx||]) renderApplicationOptions = forM_ applications (\x -> [hsx||]) renderApplicationSelector = [hsx| |] renderPreview = [hsx|
{controllerName}.Mail.{mailName}
|] isEmpty = null mailName