Using elm-format for all files

This commit is contained in:
Eike Kettner
2019-12-29 21:55:12 +01:00
parent 546f1a6ee3
commit 2001cca88b
84 changed files with 7668 additions and 5079 deletions

View File

@ -1,25 +1,26 @@
module Page exposing ( Page(..)
, href
, goto
, pageToString
, pageFromString
, pageName
, loginPage
, loginPageReferrer
, uploadId
, fromUrl
, isSecured
, isOpen
)
module Page exposing
( Page(..)
, fromUrl
, goto
, href
, isOpen
, isSecured
, loginPage
, loginPageReferrer
, pageFromString
, pageName
, pageToString
, uploadId
)
import Url exposing (Url)
import Url.Parser as Parser exposing ((</>), (<?>), Parser, oneOf, s, string)
import Url.Parser.Query as Query
import Browser.Navigation as Nav
import Html exposing (Attribute)
import Html.Attributes as Attr
import Browser.Navigation as Nav
import Url exposing (Url)
import Url.Parser as Parser exposing ((</>), Parser, oneOf, s, string)
import Util.Maybe
type Page
= HomePage
| LoginPage (Maybe String)
@ -32,108 +33,178 @@ type Page
| NewInvitePage
isSecured: Page -> Bool
isSecured : Page -> Bool
isSecured page =
case page of
HomePage -> True
LoginPage _ -> False
ManageDataPage -> True
CollectiveSettingPage -> True
UserSettingPage -> True
QueuePage -> True
RegisterPage -> False
NewInvitePage -> False
HomePage ->
True
LoginPage _ ->
False
ManageDataPage ->
True
CollectiveSettingPage ->
True
UserSettingPage ->
True
QueuePage ->
True
RegisterPage ->
False
NewInvitePage ->
False
UploadPage arg ->
Util.Maybe.isEmpty arg
isOpen: Page -> Bool
isOpen : Page -> Bool
isOpen page =
not (isSecured page)
loginPage: Page -> Page
loginPage : Page -> Page
loginPage p =
case p of
LoginPage _ -> LoginPage Nothing
_ -> LoginPage (Just (pageToString p |> String.dropLeft 2))
LoginPage _ ->
LoginPage Nothing
_ ->
LoginPage (Just (pageToString p |> String.dropLeft 2))
pageName: Page -> String
pageName : Page -> String
pageName page =
case page of
HomePage -> "Home"
LoginPage _ -> "Login"
ManageDataPage -> "Manage Data"
CollectiveSettingPage -> "Collective Settings"
UserSettingPage -> "User Settings"
QueuePage -> "Processing"
RegisterPage -> "Register"
NewInvitePage -> "New Invite"
HomePage ->
"Home"
LoginPage _ ->
"Login"
ManageDataPage ->
"Manage Data"
CollectiveSettingPage ->
"Collective Settings"
UserSettingPage ->
"User Settings"
QueuePage ->
"Processing"
RegisterPage ->
"Register"
NewInvitePage ->
"New Invite"
UploadPage arg ->
case arg of
Just _ -> "Anonymous Upload"
Nothing -> "Upload"
Just _ ->
"Anonymous Upload"
loginPageReferrer: Page -> Maybe Page
Nothing ->
"Upload"
loginPageReferrer : Page -> Maybe Page
loginPageReferrer page =
case page of
LoginPage r -> Maybe.andThen pageFromString r
_ -> Nothing
LoginPage r ->
Maybe.andThen pageFromString r
uploadId: Page -> Maybe String
_ ->
Nothing
uploadId : Page -> Maybe String
uploadId page =
case page of
UploadPage id -> id
_ -> Nothing
UploadPage id ->
id
pageToString: Page -> String
_ ->
Nothing
pageToString : Page -> String
pageToString page =
case page of
HomePage -> "#/home"
HomePage ->
"#/home"
LoginPage referer ->
Maybe.map (\p -> "/" ++ p) referer
|> Maybe.withDefault ""
|> (++) "#/login"
ManageDataPage -> "#/manageData"
CollectiveSettingPage -> "#/collectiveSettings"
UserSettingPage -> "#/userSettings"
QueuePage -> "#/queue"
RegisterPage -> "#/register"
ManageDataPage ->
"#/manageData"
CollectiveSettingPage ->
"#/collectiveSettings"
UserSettingPage ->
"#/userSettings"
QueuePage ->
"#/queue"
RegisterPage ->
"#/register"
UploadPage sourceId ->
Maybe.map (\id -> "/" ++ id) sourceId
|> Maybe.withDefault ""
|> (++) "#/upload"
NewInvitePage -> "#/newinvite"
pageFromString: String -> Maybe Page
NewInvitePage ->
"#/newinvite"
pageFromString : String -> Maybe Page
pageFromString str =
let
url = Url.Url Url.Http "" Nothing str Nothing Nothing
url =
Url.Url Url.Http "" Nothing str Nothing Nothing
in
Parser.parse parser url
Parser.parse parser url
href: Page -> Attribute msg
href : Page -> Attribute msg
href page =
Attr.href (pageToString page)
goto: Page -> Cmd msg
goto : Page -> Cmd msg
goto page =
Nav.load (pageToString page)
parser: Parser (Page -> a) a
parser : Parser (Page -> a) a
parser =
oneOf
[ Parser.map HomePage (oneOf [s"", s "home"])
, Parser.map (\s -> LoginPage (Just s)) (s "login" </> string)
, Parser.map (LoginPage Nothing) (s "login")
, Parser.map ManageDataPage (s "manageData")
, Parser.map CollectiveSettingPage (s "collectiveSettings")
, Parser.map UserSettingPage (s "userSettings")
, Parser.map QueuePage (s "queue")
, Parser.map RegisterPage (s "register")
, Parser.map (\s -> UploadPage (Just s)) (s "upload" </> string)
, Parser.map (UploadPage Nothing) (s "upload")
, Parser.map NewInvitePage (s "newinvite")
]
[ Parser.map HomePage (oneOf [ s "", s "home" ])
, Parser.map (\s -> LoginPage (Just s)) (s "login" </> string)
, Parser.map (LoginPage Nothing) (s "login")
, Parser.map ManageDataPage (s "manageData")
, Parser.map CollectiveSettingPage (s "collectiveSettings")
, Parser.map UserSettingPage (s "userSettings")
, Parser.map QueuePage (s "queue")
, Parser.map RegisterPage (s "register")
, Parser.map (\s -> UploadPage (Just s)) (s "upload" </> string)
, Parser.map (UploadPage Nothing) (s "upload")
, Parser.map NewInvitePage (s "newinvite")
]
fromUrl : Url -> Maybe Page
fromUrl url =