{-# LANGUAGE TemplateHaskell #-} {- | Module : Text.Pandoc.Data.BakedIn Copyright : Copyright (C) 2013-2024 John MacFarlane License : GNU GPL, version 2 or above Maintainer : John MacFarlane Stability : alpha Portability : portable Provide contents data files as Haskell values. -} module Text.Pandoc.Data.BakedIn (dataFiles) where import qualified Data.ByteString as B import Data.FileEmbed import System.FilePath (splitDirectories) import qualified System.FilePath.Posix as Posix -- We ensure that the data files are stored using Posix -- path separators (/), even on Windows. dataFiles :: [(FilePath, B.ByteString)] dataFiles = map (\(fp, contents) -> (Posix.joinPath (splitDirectories fp), contents)) dataFiles' dataFiles' :: [(FilePath, B.ByteString)] dataFiles' = ("MANUAL.txt", $(embedFile "MANUAL.txt")) : -- handle the hidden file separately, since embedDir doesn't -- include it: ("docx/_rels/.rels", $(embedFile "data/docx/_rels/.rels")) : ("pptx/_rels/.rels", $(embedFile "data/pptx/_rels/.rels")) : $(embedDir "data")