@worker-tools/response-creators
Version:
A collection of factory functions for Fetch API Response types with pre-filled status and status-text headers for well-known HTTP status codes.
95 lines • 6.41 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.serviceUnavailable = exports.badGateway = exports.notImplemented = exports.internalServerError = exports.unavailableForLegalReasons = exports.requestHeaderFieldsTooLarge = exports.tooManyRequests = exports.preconditionRequired = exports.upgradeRequired = exports.tooEarly = exports.failedDependency = exports.locked = exports.unprocessableEntity = exports.misdirectedRequest = exports.imATeapot = exports.expectationFailed = exports.rangeNotSatisfiable = exports.unsupportedMediaType = exports.uriTooLong = exports.payloadTooLarge = exports.preconditionFailed = exports.lengthRequired = exports.gone = exports.conflict = exports.requestTimeout = exports.proxyAuthenticationRequired = exports.notAcceptable = exports.methodNotAllowed = exports.notFound = exports.forbidden = exports.paymentRequired = exports.unauthorized = exports.badRequest = exports.permanentRedirect = exports.temporaryRedirect = exports.notModified = exports.seeOther = exports.found = exports.movedPermanently = exports.multipleChoices = exports.imUsed = exports.alreadyReported = exports.multiStatus = exports.partialContent = exports.resetContent = exports.noContent = exports.nonAuthoritativeInformation = exports.accepted = exports.created = exports.ok = void 0;
exports.networkAuthenticationRequired = exports.notExtended = exports.loopDetected = exports.insufficientStorage = exports.variantAlsoNegotiates = exports.httpVersionNotSupported = exports.gatewayTimeout = void 0;
const mkResponse = (status, statusText) => (body = null, init = {}) => new Response(body, {
...init,
status,
statusText,
});
const mkRedirect = (status, statusText) => (location, init = {}) => new Response(null, {
...init,
status,
statusText,
headers: [
...(init === null || init === void 0 ? void 0 : init.headers) ? Array.isArray(init.headers) ? init.headers : new Headers(init.headers) : [],
['Location', location.toString()],
],
});
const mkUnauthorized = (status, statusText) => (realm = '', init = {}) => new Response(null, {
...init,
status,
statusText,
headers: [
...(init === null || init === void 0 ? void 0 : init.headers) ? Array.isArray(init.headers) ? init.headers : new Headers(init.headers) : [],
['WWW-Authenticate', `Basic realm="${realm}", charset="UTF-8"`],
],
});
const mkNotModified = (status, statusText) => (ifNoneMatch, ifModifiedSince, init = {}) => new Response(null, {
...init,
status,
statusText,
headers: [
...(init === null || init === void 0 ? void 0 : init.headers) ? Array.isArray(init.headers) ? init.headers : new Headers(init.headers) : [],
['If-None-Match', ifNoneMatch],
['If-Modified-Since', ifModifiedSince.toUTCString()],
],
});
exports.ok = mkResponse(200, 'OK');
exports.created = mkResponse(201, 'Created');
exports.accepted = mkResponse(202, 'Accepted');
exports.nonAuthoritativeInformation = mkResponse(203, 'Non-Authoritative Information');
exports.noContent = mkResponse(204, 'No Content');
exports.resetContent = mkResponse(205, 'Reset Content');
exports.partialContent = mkResponse(206, 'Partial Content');
exports.multiStatus = mkResponse(207, 'Multi-Status');
exports.alreadyReported = mkResponse(208, 'Already Reported');
exports.imUsed = mkResponse(226, 'IM Used');
exports.multipleChoices = mkRedirect(300, 'Multiple Choices');
exports.movedPermanently = mkRedirect(301, 'Moved Permanently');
exports.found = mkRedirect(302, 'Found');
exports.seeOther = mkRedirect(303, 'See Other');
exports.notModified = mkNotModified(304, 'Not Modified');
exports.temporaryRedirect = mkRedirect(307, 'Temporary Redirect');
exports.permanentRedirect = mkRedirect(308, 'Permanent Redirect');
exports.badRequest = mkResponse(400, 'Bad Request');
exports.unauthorized = mkUnauthorized(401, 'Unauthorized');
exports.paymentRequired = mkResponse(402, 'Payment Required');
exports.forbidden = mkResponse(403, 'Forbidden');
exports.notFound = mkResponse(404, 'Not Found');
exports.methodNotAllowed = mkResponse(405, 'Method Not Allowed');
exports.notAcceptable = mkResponse(406, 'Not Acceptable');
exports.proxyAuthenticationRequired = mkResponse(407, 'Proxy Authentication Required');
exports.requestTimeout = mkResponse(408, 'Request Timeout');
exports.conflict = mkResponse(409, 'Conflict');
exports.gone = mkResponse(410, 'Gone');
exports.lengthRequired = mkResponse(411, 'Length Required');
exports.preconditionFailed = mkResponse(412, 'Precondition Failed');
exports.payloadTooLarge = mkResponse(413, 'Payload Too Large');
exports.uriTooLong = mkResponse(414, 'URI Too Long');
exports.unsupportedMediaType = mkResponse(415, 'Unsupported Media Type');
exports.rangeNotSatisfiable = mkResponse(416, 'Range Not Satisfiable');
exports.expectationFailed = mkResponse(417, 'Expectation Failed');
exports.imATeapot = mkResponse(418, 'I\'m a teapot');
exports.misdirectedRequest = mkResponse(421, 'Misdirected Request');
exports.unprocessableEntity = mkResponse(422, 'Unprocessable Entity');
exports.locked = mkResponse(423, 'Locked');
exports.failedDependency = mkResponse(424, 'Failed Dependency');
exports.tooEarly = mkResponse(425, 'Too Early');
exports.upgradeRequired = mkResponse(426, 'Upgrade Required');
exports.preconditionRequired = mkResponse(428, 'Precondition Required');
exports.tooManyRequests = mkResponse(429, 'Too Many Requests');
exports.requestHeaderFieldsTooLarge = mkResponse(431, 'Request Header Fields Too Large');
exports.unavailableForLegalReasons = mkResponse(451, 'Unavailable For Legal Reasons');
exports.internalServerError = mkResponse(500, 'Internal Server Error');
exports.notImplemented = mkResponse(501, 'Not Implemented');
exports.badGateway = mkResponse(502, 'Bad Gateway');
exports.serviceUnavailable = mkResponse(503, 'Service Unavailable');
exports.gatewayTimeout = mkResponse(504, 'Gateway Timeout');
exports.httpVersionNotSupported = mkResponse(505, 'HTTP Version Not Supported');
exports.variantAlsoNegotiates = mkResponse(506, 'Variant Also Negotiates');
exports.insufficientStorage = mkResponse(507, 'Insufficient Storage');
exports.loopDetected = mkResponse(508, 'Loop Detected');
exports.notExtended = mkResponse(510, 'Not Extended');
exports.networkAuthenticationRequired = mkResponse(511, 'Network Authentication Required');
//# sourceMappingURL=index.js.map