UNPKG

@knowmax/http-utils

Version:

HTTP utilities for headers, content types, and common HTTP operations

37 lines (36 loc) 1.04 kB
import { CONTENTTYPE_JSON } from "./contenttypes"; import { HEADER_ACCEPT_LANGUAGE, HEADER_AUTHORIZATION, HEADER_CONTENT_TYPE } from "./headertypes"; export const headers = (initial) => { return new Headers(initial); }; class Headers { constructor(initial) { this.headers = Object.assign({}, (initial !== null && initial !== void 0 ? initial : {})); } withBearer(token) { this.headers[HEADER_AUTHORIZATION] = "Bearer " + token; return this; } withLanguage(language) { if (language) { this.headers[HEADER_ACCEPT_LANGUAGE] = language; } return this; } withContentTypeJson() { return this.withContentType(CONTENTTYPE_JSON); } withContentType(contentType) { this.headers[HEADER_CONTENT_TYPE] = contentType; return this; } withHeader(key, value) { if (value) { this.headers[key] = value; } return this; } export() { return Object.assign({}, this.headers); } }