2 var codes = require('./codes.json');
4 module.exports = status;
7 status.codes = Object.keys(codes).map(function (code) {
11 status[msg] = status[msg.toLowerCase()] = code;
15 // status codes for redirects
26 // status codes for empty bodies
33 // status codes for when you should retry the request
40 function status(code) {
41 if (typeof code === 'number') {
42 if (!status[code]) throw new Error('invalid status code: ' + code);
46 if (typeof code !== 'string') {
47 throw new TypeError('code must be a number or string');
51 var n = parseInt(code, 10)
53 if (!status[n]) throw new Error('invalid status code: ' + n);
57 n = status[code.toLowerCase()];
58 if (!n) throw new Error('invalid status message: "' + code + '"');