{-# LANGUAGE RecordWildCards #-} module Ondim.Targets.HTML.Load (loadHtml) where import Ondim.Loading (LoadConfig (..), loadFnSimple) import Ondim.Targets.HTML.Expansions (defaultState) import Ondim.Targets.HTML.Instances import Ondim.Targets.HTML.Parser (parseLBS) loadHtml :: LoadConfig s loadHtml :: forall s. LoadConfig s loadHtml = LoadConfig {[FilePattern] OndimState s LoadFn s forall {s}. OndimState s forall {n}. LoadFn n initialState :: forall {s}. OndimState s patterns :: [FilePattern] loadFn :: forall {n}. LoadFn n initialState :: OndimState s loadFn :: LoadFn s patterns :: [FilePattern] ..} where initialState :: OndimState s initialState = OndimState s forall {s}. OndimState s defaultState patterns :: [FilePattern] patterns = [FilePattern "**/*.html"] loadFn :: LoadFn n loadFn = (FilePattern -> LByteString -> Either FilePattern HtmlDocument) -> LoadFn n forall a n. OndimNode a => (FilePattern -> LByteString -> Either FilePattern a) -> LoadFn n loadFnSimple \FilePattern _ LByteString bs -> Document -> Either FilePattern HtmlDocument toHtmlDocument (LByteString -> Document parseLBS LByteString bs)