-----------------------------------------------------------------------------
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE ExistentialQuantification  #-}
{-# LANGUAGE DerivingStrategies         #-}
{-# LANGUAGE RecordWildCards            #-}
{-# LANGUAGE OverloadedStrings          #-}
{-# LANGUAGE LambdaCase                 #-}
-----------------------------------------------------------------------------
module Miso.UI.Card
  ( -- ** Component
    card_
  ) where
-----------------------------------------------------------------------------
import           Miso
import           Miso.Html
import qualified Miso.Html.Element as H
import qualified Miso.Html.Property as P
-----------------------------------------------------------------------------
card_ :: Component parent model action
card_ :: forall parent model action. Component parent model action
card_ = model
-> (action -> Effect parent model action)
-> (model -> View model action)
-> Component parent model action
forall model action parent.
model
-> (action -> Effect parent model action)
-> (model -> View model action)
-> Component parent model action
component model
forall a. HasCallStack => a
undefined action -> Effect parent model action
forall action parent model. action -> Effect parent model action
noop (View model action -> model -> View model action
forall a b. a -> b -> a
const View model action
forall model action. View model action
view_)
-----------------------------------------------------------------------------
view_ :: View model action
view_ :: forall model action. View model action
view_ =
  [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.div_
  [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.class_ MisoString
"card w-full" ]
  [ [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.header_ []
    [ [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.h2_ [][ View model action
"Login to your account" ]
    , [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.p_ [][ View model action
"Enter your details below to login to your account" ]
    ]
  , [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.section_ []
    [ [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.form_
      [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.class_ MisoString
"form grid gap-6"
      ]
      [ [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.div_
        [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.class_ MisoString
"grid gap-2" ]
        [ [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.label_ [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.for_ MisoString
"demo-card-form-email" ][ View model action
"Email" ]
        , [Attribute action] -> View model action
forall action model. [Attribute action] -> View model action
input_
          [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.type_ MisoString
"email"
          , MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.id_ MisoString
"demo-card-form-email"
          ]
        ]
      , [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.div_ [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.class_ MisoString
"grid gap-2" ]
        [ [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.div_ [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.class_ MisoString
"flex items-center gap-2" ]
          [ [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.label_ [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.for_ MisoString
"demo-card-form-password" ][ View model action
"Password" ]
          , [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.a_
            [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.href_ MisoString
"#"
            , MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.class_ MisoString
"ml-auto inline-block text-sm underline-offset-4 hover:underline"
            ] [ View model action
"Forgot your password?" ]
          ]
        , [Attribute action] -> View model action
forall action model. [Attribute action] -> View model action
H.input_
          [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.type_ MisoString
"password"
          , MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.id_ MisoString
"demo-card-form-password"
          ]
        ]
      ]
    ]
  , [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.footer_ [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.class_ MisoString
"flex flex-col items-center gap-2" ]
    [ [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.button_
      [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.type_ MisoString
"button"
      , MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.class_ MisoString
"btn w-full"
      ] [ View model action
"Login" ]
    , [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.button_
      [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.type_ MisoString
"button"
      , MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.class_ MisoString
"btn-outline w-full"
      ] [ View model action
"Login with Google" ]
    , [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.p_ [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.class_ MisoString
"mt-4 text-center text-sm" ]
      [ View model action
"Don't have an account? "
      , [Attribute action] -> [View model action] -> View model action
forall action model.
[Attribute action] -> [View model action] -> View model action
H.a_
        [ MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.href_ MisoString
"#"
        , MisoString -> Attribute action
forall action. MisoString -> Attribute action
P.class_ MisoString
"underline-offset-4 hover:underline"
        ] [ View model action
"Sign up" ]
      ]
    ]
  ]