@remix-run/headers
Version:
A toolkit for working with HTTP headers in JavaScript
17 lines (15 loc) • 369 B
text/typescript
const HeaderWordCasingExceptions: Record<string, string> = {
ct: 'CT',
etag: 'ETag',
te: 'TE',
www: 'WWW',
x: 'X',
xss: 'XSS',
}
export function canonicalHeaderName(name: string): string {
return name
.toLowerCase()
.split('-')
.map((word) => HeaderWordCasingExceptions[word] || word.charAt(0).toUpperCase() + word.slice(1))
.join('-')
}