@@ -47,7 +47,7 @@ import Text.Pandoc.Class (readDataFile, runIO,
4747import Text.Pandoc.Options (ReaderOptions(readerExtensions))
4848import Text.Pandoc.Lua.StackInstances ()
4949import Text.Pandoc.Readers (Reader (..), getReader)
50−import Text.Pandoc.MIME (MimeType, extensionFromMimeType)
50+import Text.Pandoc.MIME (MimeType)
5151import Data.Digest.Pure.SHA (sha1, showDigest)
5252
5353import qualified Foreign.Lua as Lua
@@ -93,7 +93,7 @@ pushMediaBagModule commonState mediaBagRef = do
9393 addFunction "lookup" (lookupMediaFn mediaBagRef)
9494 addFunction "list" (mediaDirectoryFn mediaBagRef)
9595 addFunction "fetch" (fetch commonState mediaBagRef)
96− addFunction "hashname" hashnameFn
96+ addFunction "sha1" sha1HashFn
9797 return ()
9898 where
9999 addFunction name fn = do
@@ -101,20 +101,12 @@ pushMediaBagModule commonState mediaBagRef = do
101101 Lua.pushHaskellFunction fn
102102 Lua.rawset (-3)
103103
104−hashnameFn :: OrNil MimeType
105− -> BL.ByteString
104+sha1HashFn :: BL.ByteString
106105 -> Lua NumResults
107−hashnameFn nilOrMime contents = do
108− Lua.push (getHashname (toMaybe nilOrMime) contents)
106+sha1HashFn contents = do
107+ Lua.push $ showDigest (sha1 contents)
109108 return 1
110109
111−getHashname :: Maybe MimeType -> BL.ByteString -> String
112−getHashname mbMime bs =
113− let ext = fromMaybe ""
114− (('.':) <$> (mbMime >>= extensionFromMimeType))
115− basename = showDigest $ sha1 bs
116− in basename ++ ext
117−
118110insertMediaFn :: IORef MB.MediaBag
119111 -> FilePath
120112 -> OrNil MimeType