module Web.HTML.Common where import Prelude import Data.Newtype (class Newtype) -- | A wrapper for property names. -- | -- | The phantom type `value` describes the type of value which this property -- | requires. newtype PropName :: Type -> Type newtype PropName value = PropName String derive instance newtypePropName :: Newtype (PropName value) _ derive newtype instance eqPropName :: Eq (PropName value) derive newtype instance ordPropName :: Ord (PropName value) -- | A wrapper for attribute names. newtype AttrName = AttrName String derive instance newtypeAttrName :: Newtype AttrName _ derive newtype instance eqAttrName :: Eq AttrName derive newtype instance ordAttrName :: Ord AttrName -- | A wrapper for strings which are used as CSS classes. newtype ClassName = ClassName String derive instance newtypeClassName :: Newtype ClassName _ derive newtype instance eqClassName :: Eq ClassName derive newtype instance ordClassName :: Ord ClassName