summaryrefslogtreecommitdiff
path: root/Hero/Look
diff options
context:
space:
mode:
Diffstat (limited to 'Hero/Look')
-rw-r--r--Hero/Look/Typography.hs48
1 files changed, 26 insertions, 22 deletions
diff --git a/Hero/Look/Typography.hs b/Hero/Look/Typography.hs
index 4d4f976..6358ef3 100644
--- a/Hero/Look/Typography.hs
+++ b/Hero/Look/Typography.hs
@@ -1,13 +1,14 @@
+{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
+
module Hero.Look.Typography where
-import Alpha
-import Clay
-import Clay.Stylesheet ( key )
-import qualified Hero.Assets as Assets
-import Data.Semigroup ( (<>) )
+import Alpha
+import Clay
+import Clay.Stylesheet (key)
+import Data.Semigroup ((<>))
+import qualified Hero.Assets as Assets
main :: Css
main = fonts
@@ -15,25 +16,28 @@ main = fonts
-- font modifiers
euro, slim, wide, thicc, thinn, norm, lean, smol, lower, upper :: Css
-
euro = fontFamily ["Eurostile"] [sansSerif]
-- | stretch
slim = fontStretch condensed
+
wide = fontStretch expanded
-- | weight
thicc = fontWeight bold
+
thinn = fontWeight normal
-- | style
norm = fontStyle normal
+
lean = fontStyle italic
-- | "smallcaps" is already taken by Clay
smol = fontVariant smallCaps
lower = textTransform lowercase
+
upper = textTransform uppercase
-- | font sizing
@@ -48,21 +52,21 @@ fontRoot = Assets.cdnEdge <> "/old-assets/fonts/eurostile/Eurostile"
-- | font faces
fonts :: Css
fonts =
- mconcat
- $ mkEuro
- </ [ ("-Reg.otf" , OpenType, fontWeight normal <> fontStyle normal)
- , ("LTStd-Bold.otf" , OpenType, thicc <> norm)
- , ("LTStd-Cn.otf" , OpenType, slim <> norm)
- , ("LTStd-Ex2.otf" , OpenType, wide <> norm)
- , ("LTStd-BoldCn.otf" , OpenType, slim <> thicc)
- , ("LTStd-BoldEx2.otf", OpenType, wide <> thicc)
- ]
- where
- mkEuro :: (Text, FontFaceFormat, Css) -> Css
- mkEuro (sufx, fmt, extra) = fontFace $ do
- fontFamily ["Eurostile"] []
- fontFaceSrc [FontFaceSrcUrl (fontRoot <> sufx) $ Just fmt]
- extra
+ mconcat $
+ mkEuro
+ </ [ ("-Reg.otf", OpenType, fontWeight normal <> fontStyle normal),
+ ("LTStd-Bold.otf", OpenType, thicc <> norm),
+ ("LTStd-Cn.otf", OpenType, slim <> norm),
+ ("LTStd-Ex2.otf", OpenType, wide <> norm),
+ ("LTStd-BoldCn.otf", OpenType, slim <> thicc),
+ ("LTStd-BoldEx2.otf", OpenType, wide <> thicc)
+ ]
+ where
+ mkEuro :: (Text, FontFaceFormat, Css) -> Css
+ mkEuro (sufx, fmt, extra) = fontFace $ do
+ fontFamily ["Eurostile"] []
+ fontFaceSrc [FontFaceSrcUrl (fontRoot <> sufx) $ Just fmt]
+ extra
-- TODO: add the below to Clay.Font upstream