{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE UndecidableInstances #-}
{-# LANGUAGE NoFieldSelectors #-}

module WikiMusic.SSR.Model.Env where

import Data.Text
import Data.Time
import Network.Wai.Logger (ApacheLogger)
import Optics
import Servant.Client
import WikiMusic.SSR.Model.Config

data Env = Env
  { Env -> ApacheLogger
logger :: ApacheLogger,
    Env -> AppConfig
cfg :: AppConfig,
    Env -> ZonedTime
processStartedAt :: ZonedTime,
    Env -> Text
reportedVersion :: Text,
    Env -> ClientEnv
clientEnv :: ClientEnv
  }

makeFieldLabelsNoPrefix ''Env