Add a package.json, load generator info from it instead of from settings.yml

This commit is contained in:
Danielle McLean 2017-10-05 16:19:15 +11:00
parent 353f1aa994
commit 4692e78503
Signed by: 00dani
GPG key ID: 5A5D2D1AFF12EEC5
8 changed files with 75 additions and 15 deletions

27
src/Package/Types.hs Normal file
View file

@ -0,0 +1,27 @@
{-# LANGUAGE DeriveLift #-}
{-# LANGUAGE StandaloneDeriving #-}
{-# LANGUAGE TemplateHaskell #-}
module Package.Types where
import Data.Aeson
import Data.Aeson.Types ( fieldLabelModifier )
import Data.Aeson.TH ( deriveJSON )
import Data.Char ( toLower )
import Language.Haskell.TH.Syntax ( Lift )
import Util ( mapFirst )
data Package = Package
{ packageName :: !String
, packageVersion :: !String
, packageRepository :: !Repository
} deriving (Show, Lift)
data Repository = Repository
{ repositoryType :: !String
, repositoryUrl :: !String
} deriving (Show, Lift)
$(deriveJSON defaultOptions { fieldLabelModifier = mapFirst toLower . drop 7 } ''Package)
$(deriveJSON defaultOptions { fieldLabelModifier = mapFirst toLower . drop 10 } ''Repository)