name:                servant-js
version:             0.5
synopsis:            Automatically derive javascript functions to query servant webservices.
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/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/blob/master/servant-js/CHANGELOG.md CHANGELOG>
license:             BSD3
license-file:        LICENSE
author:              Servant Contributors
maintainer:          haskell-servant-maintainers@googlegroups.com
copyright:           2015-2016 Servant Contributors
category:            Web
build-type:          Simple
cabal-version:       >=1.10
homepage:            http://haskell-servant.github.io/
Bug-reports:         http://github.com/haskell-servant/servant/issues
extra-source-files:
  include/*.h
  CHANGELOG.md
  README.md
source-repository head
  type: git
  location: http://github.com/haskell-servant/servant.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.5 && <5
                     , base-compat     >= 0.9
                     , charset         >= 0.3
                     , lens            >= 4
                     , servant-foreign == 0.5.*
                     , text            >= 1.2  && < 1.3

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

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

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

  build-depends:    base             >= 4.7 && < 5
                  , aeson            >= 0.7  && < 0.12
                  , filepath         >= 1
                  , lens             >= 4
                  , servant          == 0.5.*
                  , servant-server   == 0.5.*
                  , 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-depends:     base
                   , base-compat
                   , hspec >= 2.1.8
                   , hspec-expectations
                   , language-ecmascript >= 0.16
                   , lens
                   , servant
                   , servant-js
                   , text
  default-language:  Haskell2010