2016-04-06 18:16:54 +00:00
|
|
|
module Demo.Page
|
|
|
|
( demo, package, mds, mdl
|
|
|
|
, fromMDL, fromMDS
|
|
|
|
, body
|
|
|
|
)
|
|
|
|
where
|
|
|
|
|
|
|
|
import Html exposing (..)
|
|
|
|
import Html.Attributes exposing (href, class)
|
|
|
|
import Markdown
|
|
|
|
|
|
|
|
import Material.Grid exposing (..)
|
|
|
|
import Material.Style as Style exposing (styled, cs, css, attribute)
|
|
|
|
import Material.Button as Button
|
|
|
|
import Material.Color as Color
|
|
|
|
import Material.Icon as Icon
|
2016-04-08 13:51:45 +00:00
|
|
|
import Material.Elevation as Elevation
|
2016-04-06 18:16:54 +00:00
|
|
|
|
|
|
|
|
|
|
|
-- REFERENCES
|
|
|
|
|
|
|
|
|
|
|
|
demo : String -> (String, String)
|
|
|
|
demo url =
|
|
|
|
( "Demo source", url )
|
|
|
|
|
|
|
|
|
|
|
|
package : String -> (String, String)
|
|
|
|
package url =
|
|
|
|
( "Package documentation", url )
|
|
|
|
|
|
|
|
|
|
|
|
mds : String -> (String, String)
|
|
|
|
mds url =
|
|
|
|
( "Material Design Specification", url )
|
|
|
|
|
|
|
|
|
|
|
|
mdl : String -> (String, String)
|
|
|
|
mdl url =
|
|
|
|
( "Material Design Lite documentation", url )
|
|
|
|
|
|
|
|
|
|
|
|
references : List (String, String) -> List Html
|
|
|
|
references links =
|
|
|
|
[ text "References"
|
|
|
|
, ul []
|
|
|
|
( links |> List.map (\(str, url) ->
|
|
|
|
li [] [ a [ href url ] [ text str ] ]
|
|
|
|
)
|
|
|
|
)
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
|
|
-- DOCUMENTATION QUOTES
|
|
|
|
|
|
|
|
|
|
|
|
from : String -> String -> String -> Html
|
|
|
|
from title url body =
|
|
|
|
div []
|
|
|
|
[ text "From the "
|
|
|
|
, a [ href url ] [ text title ]
|
|
|
|
, text ":"
|
|
|
|
, Markdown.toHtml body
|
|
|
|
]
|
|
|
|
|
|
|
|
|
|
|
|
fromMDL : String -> String -> Html
|
|
|
|
fromMDL =
|
|
|
|
from "Material Design Lite documentation"
|
|
|
|
|
|
|
|
|
|
|
|
fromMDS : String -> String -> Html
|
|
|
|
fromMDS =
|
|
|
|
from "Material Design Specification"
|
|
|
|
|
|
|
|
|
|
|
|
-- TITLES
|
|
|
|
|
|
|
|
|
|
|
|
title : String -> Html
|
|
|
|
title t =
|
2016-04-08 13:51:45 +00:00
|
|
|
Style.styled Html.h1
|
2016-04-06 18:16:54 +00:00
|
|
|
[ Color.text Color.primary
|
2016-04-08 13:51:45 +00:00
|
|
|
--, cs "mdl-typography--display-4"
|
2016-04-06 18:16:54 +00:00
|
|
|
-- TODO. Typography module
|
|
|
|
]
|
2016-04-08 13:51:45 +00:00
|
|
|
[]
|
2016-04-06 18:16:54 +00:00
|
|
|
[ text t ]
|
|
|
|
|
|
|
|
|
|
|
|
demoTitle : Html
|
|
|
|
demoTitle =
|
2016-04-08 13:51:45 +00:00
|
|
|
div [] []
|
|
|
|
{-
|
|
|
|
Style.div
|
2016-04-06 18:16:54 +00:00
|
|
|
[ Color.text Color.primary
|
2016-04-08 13:51:45 +00:00
|
|
|
, css "text-align" "right"
|
|
|
|
, css "padding" ".5em"
|
|
|
|
, cs "mdl-typography--display2"
|
2016-04-06 18:16:54 +00:00
|
|
|
-- TODO. Typography module
|
|
|
|
]
|
|
|
|
[ text "Demo" ]
|
2016-04-08 13:51:45 +00:00
|
|
|
-}
|
2016-04-06 18:16:54 +00:00
|
|
|
|
|
|
|
-- VIEW SOURCE BUTTON
|
|
|
|
|
|
|
|
|
|
|
|
addr : Signal.Address Button.Action
|
|
|
|
addr = (Signal.mailbox Button.Click).address
|
|
|
|
|
|
|
|
|
|
|
|
fab : String -> Html
|
|
|
|
fab url =
|
|
|
|
Button.fab addr (Button.model False)
|
|
|
|
[ css "position" "fixed"
|
|
|
|
, css "right" "72px"
|
|
|
|
, css "bottom" "72px"
|
2016-04-08 13:51:45 +00:00
|
|
|
, css "z-index" "9999"
|
2016-04-06 18:16:54 +00:00
|
|
|
, Button.colored
|
|
|
|
--, attribute (href srcUrl)
|
|
|
|
, attribute (Html.Attributes.attribute "onclick" ("alert('foo!');")) --("window.location.href = '" ++ srcUrl ++ "';") )
|
|
|
|
]
|
|
|
|
[ Icon.i "link" ]
|
|
|
|
|
|
|
|
|
|
|
|
-- BODY
|
|
|
|
|
|
|
|
|
|
|
|
body : String -> String -> Html -> List (String, String) -> List Html -> Html
|
|
|
|
body t srcUrl contents links demo =
|
|
|
|
div []
|
2016-04-08 13:51:45 +00:00
|
|
|
[ title t
|
|
|
|
, grid []
|
|
|
|
[ cell [ size All 6, size Phone 4 ] [ contents ]
|
|
|
|
, cell
|
|
|
|
[ size All 5, offset Desktop 1, size Phone 4, align Top ]
|
|
|
|
( references <| ("Demo source", srcUrl) :: links )
|
|
|
|
]
|
|
|
|
, fab srcUrl
|
|
|
|
, Style.div
|
|
|
|
[ Elevation.shadow 2 ]
|
|
|
|
( demoTitle
|
|
|
|
:: demo
|
|
|
|
)
|
|
|
|
]
|
2016-04-06 18:16:54 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|