name:                zgo-backend
version:             1.2.2
git:                 "https://git.vergara.tech/Vergara_Tech/zgo-backend"
license:             BOSL
author:              "Rene Vergara"
maintainer:          "rene@vergara.network"
copyright:           "Copyright (c) 2022 Vergara Technologies LLC"

extra-source-files:
- README.md
- CHANGELOG.md
- zgo.cfg

# Metadata used when publishing your package
synopsis:            Haskell Back-end for the ZGo point-of-sale application
category:            Web

# To avoid duplicated efforts in documentation and dealing with the
# complications of embedding Haddock markup inside cabal files, it is
# common to point users to the README.md file.
description:         Please see the README at <https://git.vergara.tech/Vergara_Tech//zgo-backend#readme>

dependencies:
- base >= 4.7 && < 5

library:
  source-dirs: src
  dependencies:
  - mongoDB
  - time
  - text
  - unordered-containers
  - bson
  - aeson
  - QuickCheck
  - quickcheck-instances
  - scotty
  - http-conduit
  - wai-extra
  - http-types
  - time
  - securemem
  - bytestring
  - regex-base
  - regex-compat
  - array
  - random
  - vector
  - wai-cors
  - warp-tls
  - hexstring
  - configurator
  - scientific
  - jwt
  - containers
  - base64-bytestring
  - wai
  - blake3
  - memory
  - ghc-prim
  - network

executables:
  zgo-backend-exe:
    main:                Server.hs
    source-dirs:         app
    ghc-options:
            - -main-is Server
            - -threaded
            - -rtsopts
            - -with-rtsopts=-N
            - -Wall
    dependencies:
            - zgo-backend
            - base
            - scotty
            - wai-extra
            - securemem
            - text
            - aeson
            - mongoDB
            - http-types
            - http-conduit
            - time
            - bytestring
            - configurator
            - warp-tls
            - warp
  zgo-token-refresh:
    main:                TokenRefresh.hs
    source-dirs:         app
    ghc-options:
            - -main-is TokenRefresh
            - -threaded
            - -rtsopts
            - -with-rtsopts=-N
            - -Wall
    dependencies:
            - base
            - zgo-backend
            - base
            - scotty
            - wai-extra
            - securemem
            - text
            - aeson
            - mongoDB
            - http-types
            - http-conduit
            - time
            - bytestring
            - configurator
            - warp-tls
            - warp

tests:
  zgo-backend-test:
    main:                Spec.hs
    source-dirs:         test
    ghc-options:
    - -threaded
    - -rtsopts
    - -with-rtsopts=-N
    - -main-is Spec
    dependencies:
    - zgo-backend
    - hspec
    - QuickCheck
    - text
    - aeson
    - http-conduit
    - http-types
    - hspec-expectations-json
    - bytestring
    - mongoDB
    - hspec-wai
    - securemem
    - time
    - configurator
    - scotty