Name:                patat
Version:             0.8.9.0
Synopsis:            Terminal-based presentations using Pandoc
Description:         Terminal-based presentations using Pandoc.
License:             GPL-2
License-file:        LICENSE
Author:              Jasper Van der Jeugt <m@jaspervdj.be>
Maintainer:          Jasper Van der Jeugt <m@jaspervdj.be>
Homepage:            http://github.com/jaspervdj/patat
Copyright:           2016 Jasper Van der Jeugt
Category:            Text
Build-type:          Simple
Cabal-version:       >=1.10

Extra-source-files:
  CHANGELOG.md
  README.md

Source-repository head
  Type:     git
  Location: git://github.com/jaspervdj/patat.git

Flag patat-make-man
  Description: Build the executable to generate the man page
  Default:     False
  Manual:      True

Library
  Ghc-options:       -Wall
  Hs-source-dirs:    lib
  Default-language:  Haskell2010

  Build-depends:
    aeson                >= 2.0  && < 2.2,
    ansi-terminal        >= 0.6  && < 0.12,
    ansi-wl-pprint       >= 0.6  && < 0.7,
    async                >= 2.2  && < 2.3,
    base                 >= 4.9  && < 5,
    base64-bytestring    >= 1.0  && < 1.3,
    bytestring           >= 0.10 && < 0.12,
    colour               >= 2.3  && < 2.4,
    containers           >= 0.5  && < 0.7,
    directory            >= 1.2  && < 1.4,
    filepath             >= 1.4  && < 1.5,
    mtl                  >= 2.2  && < 2.3,
    optparse-applicative >= 0.16 && < 0.19,
    pandoc               >= 3.1  && < 3.2,
    pandoc-types         >= 1.23 && < 1.24,
    process              >= 1.6  && < 1.7,
    skylighting          >= 0.10 && < 0.14,
    terminal-size        >= 0.3  && < 0.4,
    text                 >= 1.2  && < 2.1,
    time                 >= 1.4  && < 1.13,
    unordered-containers >= 0.2  && < 0.3,
    yaml                 >= 0.8  && < 0.12,
    wcwidth              >= 0.0  && < 0.1,
    -- We don't even depend on these packages but they can break cabal install
    -- because of the conflicting 'Network.URI' module.
    network-uri >= 2.6,
    network     >= 2.6

  If impl(ghc < 8.0)
    Build-depends:
      semigroups >= 0.16 && < 0.19

  Exposed-modules:
    Patat.AutoAdvance
    Patat.Cleanup
    Patat.Eval
    Patat.Images
    Patat.Images.Internal
    Patat.Images.ITerm2
    Patat.Images.Kitty
    Patat.Images.W3m
    Patat.Main
    Patat.Presentation
    Patat.Presentation.Display
    Patat.Presentation.Display.CodeBlock
    Patat.Presentation.Display.Table
    Patat.Presentation.Fragment
    Patat.Presentation.Instruction
    Patat.Presentation.Interactive
    Patat.Presentation.Internal
    Patat.Presentation.Read
    Patat.PrettyPrint
    Patat.Theme

  Other-modules:
    Data.Aeson.Extended
    Data.Aeson.TH.Extended
    Data.Char.WCWidth.Extended
    Data.Data.Extended
    Paths_patat
    Text.Pandoc.Extended

Executable patat
  Main-is:          Main.hs
  Ghc-options:      -Wall -threaded -rtsopts "-with-rtsopts=-N"
  Hs-source-dirs:   src
  Default-language: Haskell2010
  Build-depends:    base, patat

Executable patat-make-man
  Main-is:          make-man.hs
  Ghc-options:      -Wall
  Hs-source-dirs:   extra
  Default-language: Haskell2010

  If flag(patat-make-man)
    Buildable: True
  Else
    Buildable: False

  Build-depends:
    base         >= 4.9 && < 5,
    containers   >= 0.6 && < 0.7,
    doctemplates >= 0.8 && < 0.12,
    mtl          >= 2.2 && < 2.3,
    pandoc       >= 3.1 && < 3.2,
    text         >= 1.2 && < 2.1,
    time         >= 1.6 && < 1.13

Test-suite patat-tests
  Main-is:          Main.hs
  Ghc-options:      -Wall
  Hs-source-dirs:   tests/haskell
  Type:             exitcode-stdio-1.0
  Default-language: Haskell2010

  Other-modules:
    Patat.Presentation.Interactive.Tests
    Patat.Presentation.Read.Tests

  Build-depends:
    patat,
    base             >= 4.8  && < 5,
    directory        >= 1.2  && < 1.4,
    tasty            >= 1.2  && < 1.5,
    tasty-hunit      >= 0.10 && < 0.11,
    tasty-quickcheck >= 0.10 && < 0.11,
    text             >= 1.2  && < 2.1,
    QuickCheck       >= 2.8  && < 2.15