Support a basic client-side login flow

I will need to remove some of the baggage like:

- Scrub any copy about restaurants
- delete Restaurant.elm
- Change Owner.elm -> Manager.elm
This commit is contained in:
William Carroll 2020-07-31 18:32:00 +01:00
parent 29a00dc571
commit 421c71c892
15 changed files with 1301 additions and 54 deletions

39
client/src/User.elm Normal file
View file

@ -0,0 +1,39 @@
module User exposing (render)
import Html exposing (..)
import Html.Attributes exposing (..)
import Html.Events exposing (..)
import Maybe.Extra
import RemoteData
import State
import Tailwind
import UI
import Utils
render : State.Model -> Html State.Msg
render model =
div
[ class
([ "container"
, "mx-auto"
, "text-center"
]
|> Tailwind.use
)
]
[ UI.header 2 ("Welcome, " ++ model.username ++ "!")
, UI.simpleButton
{ label = "Logout"
, handleClick = State.AttemptLogout
}
, case model.logoutError of
Nothing ->
text ""
Just e ->
UI.errorBanner
{ title = "Error logging out"
, body = Utils.explainHttpError e
}
]