module Emanote.View.LiveServerFiles (
isLiveServerFile,
tailwindFullCssPath,
tailwindCssFile,
) where
import Data.Text qualified as T
import Emanote.Model.StaticFile (StaticFile)
import Emanote.Model.Type qualified as M
import Relude
baseDir :: FilePath
baseDir :: FilePath
baseDir = FilePath
"_emanote-live-server"
tailwindFullCssPath :: FilePath
tailwindFullCssPath :: FilePath
tailwindFullCssPath = FilePath
baseDir forall a. Semigroup a => a -> a -> a
<> FilePath
"/tailwind/2.2.2/tailwind.min.css"
isLiveServerFile :: FilePath -> Bool
isLiveServerFile :: FilePath -> Bool
isLiveServerFile (forall a. ToText a => a -> Text
toText -> Text
fp) =
forall a. ToText a => a -> Text
toText FilePath
baseDir Text -> Text -> Bool
`T.isPrefixOf` Text
fp
tailwindCssFile :: M.Model -> StaticFile
tailwindCssFile :: Model -> StaticFile
tailwindCssFile Model
model =
forall a. a -> Maybe a -> a
fromMaybe (forall a t. (HasCallStack, IsText t) => t -> a
error Text
"model not ready?") forall a b. (a -> b) -> a -> b
$ forall (f :: Type -> Type).
FilePath -> ModelT f -> Maybe StaticFile
M.modelLookupStaticFile FilePath
tailwindFullCssPath Model
model