packages feed

relay-pagination-0.1.1.0: relay-pagination.cabal

cabal-version:   3.0
name:            relay-pagination
version:         0.1.1.0
synopsis:
  Relay-style cursor pagination wire types and opaque cursor codec

description:
  Core wire types for Relay Cursor Connections-style pagination over REST:
  the Connection/Edge/PageInfo response envelope with Relay-conventional JSON,
  first/after/last/before request validation, and a versioned, fingerprinted,
  base64url-encoded opaque cursor with an exact, golden-tested wire format.

license:         BSD-3-Clause
license-file:    LICENSE
author:          Nadeem Bitar
maintainer:      Nadeem Bitar
category:        Web, Database
build-type:      Simple
extra-doc-files: CHANGELOG.md

source-repository head
  type:     git
  location: https://github.com/shinzui/relay-pagination

common warnings
  ghc-options:
    -Wall -Wcompat -Widentities -Wincomplete-record-updates
    -Wincomplete-uni-patterns -Wredundant-constraints -Wunused-packages

common lang
  import:             warnings
  default-language:   GHC2024
  default-extensions:
    DeriveAnyClass
    DuplicateRecordFields
    OverloadedLabels
    OverloadedStrings

library
  import:          lang
  hs-source-dirs:  src
  exposed-modules:
    Relay.Pagination
    Relay.Pagination.Connection
    Relay.Pagination.Cursor
    Relay.Pagination.Request

  build-depends:
    , aeson              >=2.2  && <2.3
    , base               >=4.21 && <5
    , base64-bytestring  >=1.2  && <1.3
    , bytestring         >=0.11 && <0.13
    , http-api-data      >=0.6  && <0.7
    , text               >=2.0  && <2.2
    , uuid-types         >=1.0  && <1.1

test-suite relay-pagination-test
  import:         lang
  type:           exitcode-stdio-1.0
  hs-source-dirs: test
  main-is:        Main.hs
  build-depends:
    , aeson
    , base
    , http-api-data
    , quickcheck-instances  >=0.3  && <0.4
    , relay-pagination
    , tasty                 >=1.4  && <1.6
    , tasty-hunit           >=0.10 && <0.11
    , tasty-quickcheck      >=0.10 && <0.12
    , uuid-types