UNPKG

alagarr

Version:

Alagarr is a request-response helper library that removes the boilerplate from your Node.js serverless functions and helps make your code portable.

20 lines (19 loc) 957 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function parseCookiePair(pair) { const indexOfEqualCharacter = pair.indexOf('='); const looksLikeKeyValue = indexOfEqualCharacter >= 0; const key = looksLikeKeyValue && pair.substr(0, indexOfEqualCharacter).trim(); const value = looksLikeKeyValue && pair.substr(indexOfEqualCharacter + 1, pair.length).trim(); const cleanValue = value && '"' === value[0] ? value.slice(1, -1) : value; return key ? { [key]: cleanValue ? decodeURIComponent(cleanValue) : '' } : {}; } function parseCookieHeader(cookieHeader) { const pairs = cookieHeader.split(/; */); return pairs.reduce((parsedCookies, pair) => (Object.assign({}, parsedCookies, parseCookiePair(pair))), {}); } function cookies(request) { return Object.assign({}, request, { cookies: parseCookieHeader((request.headers && request.headers.cookie) || '') }); } exports.default = cookies;