packages feed

minion-0.1.0.0: minion.cabal

cabal-version:      3.0
name:               minion
version:            0.1.0.0
license:            MIT
license-file:       LICENSE
category:           Web
synopsis:           A Haskell introspectable web router
maintainer:         goosedb@yandex.ru
build-type:         Simple
extra-source-files: README.md

common common
  ghc-options:        -Wall
  default-extensions:
    AllowAmbiguousTypes
    BlockArguments
    ConstraintKinds
    DataKinds
    DefaultSignatures
    DeriveAnyClass
    DeriveGeneric
    DerivingStrategies
    DerivingStrategies
    DuplicateRecordFields
    DuplicateRecordFields
    FlexibleContexts
    FlexibleInstances
    FunctionalDependencies
    GADTs
    GeneralizedNewtypeDeriving
    ImportQualifiedPost
    LambdaCase
    MultiParamTypeClasses
    NamedFieldPuns
    OverloadedLists
    OverloadedRecordDot
    OverloadedRecordDot
    OverloadedStrings
    PolyKinds
    RankNTypes
    RecordWildCards
    RoleAnnotations
    ScopedTypeVariables
    TypeApplications
    TypeFamilies
    TypeOperators
    UndecidableInstances
    ViewPatterns

library
  import:           common
  exposed-modules:
    Web.Minion
    Web.Minion.Args
    Web.Minion.Args.Internal
    Web.Minion.Auth
    Web.Minion.Auth.Basic
    Web.Minion.Error
    Web.Minion.Examples.BasicAuth
    Web.Minion.Examples.ComplexResponse
    Web.Minion.Examples.HelloWorld
    Web.Minion.Examples.Introspection
    Web.Minion.Examples.Json
    Web.Minion.Examples.Static
    Web.Minion.Introspect
    Web.Minion.Json
    Web.Minion.Media
    Web.Minion.Media.FormUrlEncoded
    Web.Minion.Media.Json
    Web.Minion.Media.PlainText
    Web.Minion.Raw
    Web.Minion.Request
    Web.Minion.Request.Body
    Web.Minion.Request.Body.FormUrlEncoded
    Web.Minion.Request.Body.Json
    Web.Minion.Request.Body.PlainText
    Web.Minion.Request.Body.Raw
    Web.Minion.Request.Header
    Web.Minion.Request.Header.Internal
    Web.Minion.Request.Method
    Web.Minion.Request.Query
    Web.Minion.Request.Query.Internal
    Web.Minion.Request.Url
    Web.Minion.Response
    Web.Minion.Response.Body
    Web.Minion.Response.Body.Json
    Web.Minion.Response.Body.PlainText
    Web.Minion.Response.Header
    Web.Minion.Response.Status
    Web.Minion.Response.Union
    Web.Minion.Router
    Web.Minion.Router.Internal
    Web.Minion.Static

  build-depends:
    , aeson
    , base >= 4.16 && < 5
    , base64-bytestring
    , binary
    , bytestring
    , case-insensitive
    , containers
    , exceptions
    , filepath
    , http-api-data
    , http-media
    , http-types
    , string-conversions
    , text
    , transformers
    , wai

  hs-source-dirs:   src
  default-language: Haskell2010

executable minion-introspection-example
  import:           common
  main-is:          Introspection.hs
  build-depends:
    , base
    , minion
    , warp

  hs-source-dirs:   app
  default-language: Haskell2010
  ghc-options:      -threaded

executable minion-static-example
  import:           common
  main-is:          Static.hs
  build-depends:
    , base
    , minion
    , warp

  hs-source-dirs:   app
  default-language: Haskell2010
  ghc-options:      -threaded

executable minion-basic-auth-example
  import:           common
  main-is:          BasicAuth.hs
  build-depends:
    , base
    , minion
    , warp

  hs-source-dirs:   app
  default-language: Haskell2010
  ghc-options:      -threaded

executable minion-complex-response-example
  import:           common
  main-is:          ComplexResponse.hs
  build-depends:
    , base
    , minion
    , warp

  hs-source-dirs:   app
  default-language: Haskell2010
  ghc-options:      -threaded

executable minion-json-example
  import:           common
  main-is:          Json.hs
  build-depends:
    , base
    , minion
    , warp

  hs-source-dirs:   app
  default-language: Haskell2010
  ghc-options:      -threaded

executable minion-hello-world-example
  import:           common
  main-is:          HelloWorld.hs
  build-depends:
    , base
    , minion
    , warp

  hs-source-dirs:   app
  default-language: Haskell2010
  ghc-options:      -threaded