Files
elm-0.19-workshop/intro-to-elm/part8/src/Data/AuthToken.elm
Richard Feldman 7793c69762 Move stuff
2018-08-05 04:13:33 -04:00

32 lines
742 B
Elm

module Data.AuthToken exposing (AuthToken, decoder, encode, withAuthorization)
import HttpBuilder exposing (RequestBuilder, withHeader)
import Json.Decode as Decode exposing (Decoder)
import Json.Encode as Encode exposing (Value)
type AuthToken
= AuthToken String
encode : AuthToken -> Value
encode (AuthToken token) =
Encode.string token
decoder : Decoder AuthToken
decoder =
Decode.string
|> Decode.map AuthToken
withAuthorization : Maybe AuthToken -> RequestBuilder a -> RequestBuilder a
withAuthorization maybeToken builder =
case maybeToken of
Just (AuthToken token) ->
builder
|> withHeader "authorization" ("Token " ++ token)
Nothing ->
builder