Add style palette module for later use
This commit is contained in:
parent
a5f6bf280b
commit
ab98930caa
2 changed files with 72 additions and 0 deletions
71
src/Style.hs
Normal file
71
src/Style.hs
Normal file
|
@ -0,0 +1,71 @@
|
|||
{- This file is part of Vervis.
|
||||
-
|
||||
- Written in 2016 by fr33domlover <fr33domlover@riseup.net>.
|
||||
-
|
||||
- ♡ Copying is an act of love. Please copy, reuse and share.
|
||||
-
|
||||
- The author(s) have dedicated all copyright and related and neighboring
|
||||
- rights to this software to the public domain worldwide. This software is
|
||||
- distributed without any warranty.
|
||||
-
|
||||
- You should have received a copy of the CC0 Public Domain Dedication along
|
||||
- with this software. If not, see
|
||||
- <http://creativecommons.org/publicdomain/zero/1.0/>.
|
||||
-}
|
||||
|
||||
-- | Style component palette for use in page templates, in particular Cassius
|
||||
-- files.
|
||||
module Style
|
||||
( -- * Types
|
||||
Color ()
|
||||
, Hue ()
|
||||
-- * Plain Colors
|
||||
, black
|
||||
, white
|
||||
-- * Color Hues
|
||||
, red
|
||||
, green
|
||||
, yellow
|
||||
, blue
|
||||
, magenta
|
||||
, cyan
|
||||
, gray
|
||||
-- * Hue to Color
|
||||
, dark
|
||||
, light
|
||||
)
|
||||
where
|
||||
|
||||
data Lightness = Light | Dark
|
||||
|
||||
data Color
|
||||
= Black
|
||||
| Red Lightness
|
||||
| Green Lightness
|
||||
| Yellow Lightness
|
||||
| Blue Lightness
|
||||
| Magenta Lightness
|
||||
| Cyan Lightness
|
||||
| Gray Lightness
|
||||
| White
|
||||
|
||||
newtype Hue = Hue (Lightness -> Color)
|
||||
|
||||
black, white :: Color
|
||||
black = Black
|
||||
white = White
|
||||
|
||||
red, green, yellow, blue, magenta, cyan, gray :: Hue
|
||||
red = Hue Red
|
||||
green = Hue Green
|
||||
yellow = Hue Yellow
|
||||
blue = Hue Blue
|
||||
magenta = Hue Magenta
|
||||
cyan = Hue Cyan
|
||||
gray = Hue Gray
|
||||
|
||||
dark :: Hue -> Color
|
||||
dark (Hue h) = h Dark
|
||||
|
||||
light :: Hue -> Color
|
||||
light (Hue h) = h Light
|
|
@ -46,6 +46,7 @@ library
|
|||
Handler.Home
|
||||
Handler.Person
|
||||
Handler.Project
|
||||
Style
|
||||
-- other-modules:
|
||||
default-extensions: TemplateHaskell
|
||||
QuasiQuotes
|
||||
|
|
Loading…
Reference in a new issue