packages feed

effectful-zoo-0.0.3.0: components/core/Effectful/Zoo/Errors/EnvironmentVariableMissing.hs

module Effectful.Zoo.Errors.EnvironmentVariableMissing
  ( EnvironmentVariableMissing (..),
  ) where

import Data.Aeson (ToJSON (..), (.=))
import Data.Aeson qualified as J
import GHC.Generics
import HaskellWorks.Prelude

newtype EnvironmentVariableMissing = EnvironmentVariableMissing
    { variable :: Text
    }
    deriving stock (Eq, Show, Generic)

instance ToJSON EnvironmentVariableMissing where
    toJSON e =
        J.object
            [ "error" .= id @Text "EnvironmentVariableMissing"
            , "variable" .= e.variable
            ]