{-# LANGUAGE LambdaCase, Rank2Types #-} module Text.Taggy.Lens ( Node(..), Element(..), name, attrs, children, htmlWith, html, HasElement(..), content, attr, attributed, named, HasElements(..), HasContent(..), allNamed, allAttributed ) where import Control.Lens (Lens', Prism', Traversal', Fold, prism', (<&>), preview, ix, at, has, filtered, traverse, Plated(..), to, universe) import Data.HashMap.Strict (HashMap) import Data.Text (Text) import Text.Taggy (Element(..), Node(..), Renderable(..), domify, taggyWith) import qualified Data.Text.Lazy as Lazy (Text) -- $setup -- >>> :set -XOverloadedStrings -- >>> import Control.Lens hiding (element, elements, children) -- >>> import qualified Data.Text.Lazy as Lazy (Text) -- >>> import Data.Monoid -- >>> import Data.Text as T -- >>> import Control.Monad (join) -- >>> import Data.Maybe -- | HTML document parsing and rendering. -- -- >>> let markup = "