homepage: https://github.com/meeshkan/openapi-haskell#readme
changelog-type: markdown
hash: ac28fedab4182009ecd195c55ce37ef630eb8b51c0d5cdcb3a97b0e19d779cf1
test-bench-deps:
  optics-core: '>=0.3'
  base: '>=4.7 && <5'
  unordered-containers: '>=0.2.10 && <0.3'
  hspec: '>=2.7.1'
  text: '>=1.2.4 && <1.3'
  optics-extra: '>=0.3'
  openapi-typed: -any
  aeson: '>=1.4.7 && <1.5'
  yaml: '>=0.11.3.0'
maintainer: mike@meeshkan.com
synopsis: Types for OpenAPI
changelog: |
  # Changelog for openapi-typed

  ## Unreleased changes
basic-deps:
  base: '>=4.7 && <5'
  unordered-containers: '>=0.2.10 && <0.3'
  text: '>=1.2.4 && <1.3'
  aeson: '>=1.4.7 && <1.5'
  vector: '>=0.12.1 && <0.13'
all-versions:
- 0.0.0.0
author: Mike Solomon
latest: 0.0.0.0
description-type: markdown
description: |-
  # openapi-typed

  Haskell types for OpenAPI 3.0.0. The types follow the following opinonated conventions and deviations from the standards:

  - For each OpenAPI object represented as `data`, provides the following:
    - a docstring showing how the constructor works
    - a constructor with fields named using the convention `_<data>_field`
    - a derivation of `Eq` for each data class
    - a derivation of `Show` for each data class
    - a derivation of `ToJSON` for each data class
    - a derivation of `FromJSON` for each data class
    - a getter for each field using the convention `get<data><field>`, where the field is capitalized, ie `getPathItemSummary`
    - a setter for each field using the convention `set<data><field>`, where the field is capitalized, ie `setPathItemSummary`
    - an `either` function for all datatypes with multiple construtors that take a single argument using the convention `either<data><constructor>`, ie `eitherReferenceOrRef`
  - Adds the possibility to use `x-` extensions on almost all objects, as this happens a lot in the wild.
  - Changes the `items` type in shema to accept a tuple in addition to a schema and a reference.

  The Hackage package is in `openapi-typed`. The tests show how to use this library to parse the [Slack](https://slack.com) and [Stripe](https://stripe.com) OpenAPI specs.
license-name: BSD-3-Clause

Update from Hackage at 2020-04-24T10:47:42Z
Update from Hackage at 2020-04-24T10:47:42Z
