elm/Examples/elm-yesod/elm_source/index.elm
ngunn 346ff6bb5d Update Examples/elm-yesod to better match online interactive examples
see http://elm-lang.org/edit/examples/

index.elm
    remove "box" fns (obsolete)
    disambiguate "link" fns (Text or Graphics)

tested against ghc-7.4.1, Elm-0.7.1.1, yesod-1.1.7.1, elm-yesod-0.1.3
2013-03-02 15:24:43 +00:00

35 lines
1.5 KiB
Elm

title w = size w 60 . text . header . toText $ "Elm-Yesod"
lightGrey = rgb 240 241 244
mediumGrey = rgb 216 221 225
heading outer inner =
color mediumGrey . size outer 61 .
color lightGrey . size outer 60 .
size inner 60 $ title inner
skeleton body outer =
let inner = if outer < 820 then outer - 20 else 800 in
flow down [ heading outer inner
, body outer inner
]
----------------------
section = text . bold . Text.height (5/4) . toText
info w = List.map (\f -> f ()) . List.intersperse (\x -> plainText "&nbsp;") . List.map ((\e x -> e) . width w) $
[ section "Written in Elm, served with Yesod"
, text $ toText "This page is written in " ++ Text.link "http://elm-lang.org/" (toText "Elm") ++
toText " and served using the " ++
Text.link "http://yesodweb.com/" (toText "Yesod Web Framework") ++
toText ". Since you are looking at this page it is safe to assume that you already have the example code. "
, text $ toText "Type-safe URLs are rendered using simple QuasiQuoter variable interpolation."
, section "More examples:"
, text $ toText "- " ++ Text.link "@{MouseR}" (toText "A simple mouse input example")
, text $ toText "- " ++ Text.link "@{ClockR}" (toText "An animated analog clock")
, text $ toText "- " ++ Text.link "@{ShapesR}" (toText "Some simple rendered shapes")
]
body outer inner = width outer . flow down . (:) (plainText "&nbsp;") $ info inner
main = lift (skeleton body) Window.width