influentialpublishers/kuss

View on GitHub
lib/couchdb/status.js

Summary

Maintainability
A
0 mins
Test Coverage

const R = require('ramda')


// http://docs.couchdb.org/en/2.0.0/api/basics.html#http-status-codes
const STATUS_OK                              = 200
const STATUS_CREATED                         = 201
const STATUS_ACCEPTED                        = 202
const STATUS_NOT_MODIFIED                    = 304
const STATUS_BAD_REQUEST                     = 400
const STATUS_UNAUTHORIZED                    = 401
const STATUS_FORBIDDEN                       = 403
const STATUS_NOT_FOUND                       = 404
const STATUS_RESOURCE_NOT_ALLOWED            = 405
const STATUS_NOT_ACCEPTABLE                  = 406
const STATUS_CONFLICT                        = 409
const STATUS_PRECONDITION_FAILED             = 412
const STATUS_BAD_CONTENT_TYPE                = 415
const STATUS_REQUESTED_RANGE_NOT_SATISFIABLE = 416
const STATUS_EXPECTATION_FAILED              = 417
const STATUS_INTERNAL_SERVER_ERROR           = 500

const Status = {
  OK: STATUS_OK
, CREATED: STATUS_CREATED
, ACCEPTED: STATUS_ACCEPTED
, NOT_MODIFIED: STATUS_NOT_MODIFIED
, BAD_REQUEST: STATUS_BAD_REQUEST
, UNAUTHORIZED: STATUS_UNAUTHORIZED
, FORBIDDEN: STATUS_FORBIDDEN
, NOT_FOUND: STATUS_NOT_FOUND
, RESOURCE_NOT_ALLOWED: STATUS_RESOURCE_NOT_ALLOWED
, NOT_ACCEPTABLE: STATUS_NOT_ACCEPTABLE
, CONFLICT: STATUS_CONFLICT
, PRECONDITION_FAILED: STATUS_PRECONDITION_FAILED
, BAD_CONTENT_TYPE: STATUS_BAD_CONTENT_TYPE
, REQUESTED_RANGE_NOT_SATISFIABLE:
    STATUS_REQUESTED_RANGE_NOT_SATISFIABLE
, EXPECTATION_FAILED: STATUS_EXPECTATION_FAILED
, INTERNAL_SERVER_ERROR: STATUS_INTERNAL_SERVER_ERROR
}


const STATUS_SUCCESS = [
  STATUS_OK
, STATUS_CREATED
, STATUS_ACCEPTED
, STATUS_NOT_MODIFIED
]


Status.isSuccess = R.contains(R.__, STATUS_SUCCESS)


module.exports = Status