@js-thing/http-status-codes
Version:
Contains properly documented HTTP status code enums, reason phrases and helpers as defined in RFC
30 lines • 1.2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var HttpStatusCodes_1 = require("../HttpStatusCodes");
var HttpReasonPhrases_1 = require("../HttpReasonPhrases");
/**
* Get the status code for a given reason phrase.
* Optionally pass a second parameter to ignore case.
*
* @param reasonPhrase - e.g. OK
* @param ignoreCase - ignore case while comparing, default: false
* @returns - The corresponding status code as `number` for the given input `undefined` otherwise
*/
exports.default = (function (reasonPhrase, ignoreCase) {
if (ignoreCase === void 0) { ignoreCase = false; }
if (!reasonPhrase) {
return undefined;
}
var foundReasonKeyVal = Object.entries(HttpReasonPhrases_1.HttpReasonPhrases).find(function (reasonKeyVal) {
if (ignoreCase) {
return reasonKeyVal[1].toLowerCase() === reasonPhrase.toLowerCase();
}
return reasonKeyVal[1] === reasonPhrase;
});
if (!foundReasonKeyVal) {
return undefined;
}
// eslint-disable-next-line @typescript-eslint/no-explicit-any
return HttpStatusCodes_1.HttpStatusCodes[foundReasonKeyVal[0]];
});
//# sourceMappingURL=getStatusCode.js.map