rakutentech/r10/1.0.1

NOTE: the latest version is 7.0.0

R10.Header

This create a generic header.

view : Model -> ViewArgs msg route -> Element msg
type alias Model =
{ sideMenuOpen : Bool
, userMenuOpen : Bool
, maxWidth : Int
, padding : Int
, supportedLanguageList : List Language
, urlLogin : String
, urlLogout : String
, session : Session
, debuggingMode : Bool
, theme : Theme
, backgroundColor : Maybe Color
, negative : Bool
, logo : Logo
}
type LanguageSystem route
= LanguageInRoute
{ routeToPath : Language -> route -> String
, route : route
, routeToLanguage : route -> Language
}
| LanguageInModel
type Msg
= ToggleSideMenu
| ToggleUserMenu
| Logout
| Login
| CloseUserMenu
| KeyDown KeyPressed
| Click (List String)
| GotSession (Result Error SessionData)
type Session
= SessionNotRequired
| SessionNotRequested
| SessionFetching
| SessionSuccess SessionData
| SessionError Error
type alias SessionData =
{ email : String
, firstName : String
, lastName : String
}
type alias ViewArgs msg route =
{ extraContent : List (Element msg)
, extraContentRightSide : List (Element msg)
, from : String
, msgMapper : Msg -> msg
, isTop : Bool
, isMobile : Bool
, onClick : String -> msg
, urlTop : String
, languageSystem : LanguageSystem route
}
closeMenu : Model -> Model
decodeSession : Decoder SessionData
extraCss : String
getSession : Float -> Cmd Msg
init : Model
languageMenu : Model -> ViewArgs msg route -> List (Element msg)
subscriptions : Model -> (Msg -> msg) -> List (Sub msg)
update : Msg -> Model -> Model
{ email : String
, firstName : String
, lastName : String
}