remix-utils
Version:
This package contains simple utility functions to use with [React Router](https://reactrouter.com/).
22 lines • 746 B
JavaScript
import { getHeaders } from "./get-headers.js";
import { parseAcceptHeader } from "./parse-accept-header.js";
export function respondTo(requestOrHeaders, handlers) {
let headers = getHeaders(requestOrHeaders);
let accept = headers.get("accept");
if (!accept)
return handlers.default();
let types = parseAcceptHeader(accept);
for (let { type, subtype } of types) {
let handler = handlers[`${type}/${subtype}`];
if (handler)
return handler();
handler = handlers[subtype];
if (handler)
return handler();
handler = handlers[type];
if (handler)
return handler();
}
return handlers.default();
}
//# sourceMappingURL=respond-to.js.map