This elm package checks a given password against the API of haveibeenpwned.com.
requestPassword: String -> Cmd Msg
requestPassword pass =
pass
|> hashAndCut
|> Debug.log "This will be sent to HaveIBeenPawned.com"
|> requestPossibleMatches
|> Http.send PasswordResponse
update msg model =
case msg of
SetPassword pass ->
( { model | password = pass }, Cmd.none )
CheckPassword ->
( model, requestPassword model.password )
PasswordResponse (Ok resp) ->
( { model
| isPasswordKnown =
Just (isPasswordKnown model.password resp)
}
, Cmd.none
)