name:                servant-js
version:             0.9.4.1

synopsis:            Automatically derive javascript functions to query servant webservices.
category:            Web, Servant
description:
  Automatically derive javascript functions to query servant webservices.
  .
  Supports deriving functions using vanilla javascript AJAX requests, Angulari, Axios or JQuery.
  .
  You can find an example <https://github.com/haskell-servant/servant-js/blob/master/servant-js/examples/counter.hs here>
  which serves the generated javascript to a webpage that allows you to trigger
  webservice calls.
  .
  <https://github.com/haskell-servant/servant-js/blob/master/CHANGELOG.md CHANGELOG>

license:             BSD3
license-file:        LICENSE
author:              Servant Contributors
maintainer:          haskell-servant-maintainers@googlegroups.com
copyright:           2015-2016 Servant Contributors
build-type:          Simple
cabal-version:       >=1.10
homepage:            http://haskell-servant.readthedocs.org/
bug-reports:         http://github.com/haskell-servant/servant-js/issues
tested-with:
  GHC ==8.0.2
   || ==8.2.2
   || ==8.4.4
   || ==8.6.5
   || ==8.8.1

extra-source-files:
  include/*.h
  CHANGELOG.md
  README.md
source-repository head
  type: git
  location: http://github.com/haskell-servant/servant-js.git

flag example
  description: Build the example too
  manual: True
  default: False

library
  exposed-modules:     Servant.JS
                       Servant.JS.Angular
                       Servant.JS.Axios
                       Servant.JS.Internal
                       Servant.JS.JQuery
                       Servant.JS.Vanilla
  build-depends:       base            >= 4.9     && <4.14
                     , base-compat     >= 0.10.5  && <0.12
                     , charset         >= 0.3.7.1 && <0.4
                     , lens            >= 4.17    && <4.19
                     , servant-foreign >= 0.15    && <0.16
                     , servant         >= 0.15    && <0.18
                     , text            >= 1.2.3.0 && < 1.3

  hs-source-dirs:      src
  default-language:    Haskell2010
  ghc-options:         -Wall
  include-dirs: include

executable counter
  main-is: counter.hs
  ghc-options: -Wall
  hs-source-dirs: examples

  if flag(example)
    buildable: True
  else
    buildable: False

  build-depends:    base
                  , aeson            >= 1.4.1.0  && < 1.5
                  , filepath         >= 1
                  , lens             >= 4
                  , servant
                  , servant-server
                  , servant-js
                  , stm
                  , transformers
                  , warp
  default-language: Haskell2010

test-suite spec
  type:              exitcode-stdio-1.0
  hs-source-dirs:    test
  ghc-options:       -Wall
  main-is:           Spec.hs
  other-modules:
      Servant.JSSpec
      Servant.JSSpec.CustomHeaders
  build-tool-depends: hspec-discover:hspec-discover >=2.6.0 && <2.8
  build-depends:     base
                   , base-compat
                   , hspec >= 2.6.0 && <2.8
                   , hspec-expectations
                   , language-ecmascript >= 0.16
                   , lens
                   , servant
                   , servant-js
                   , text
                   , QuickCheck
  default-language:  Haskell2010