42 lines
1.3 KiB
JavaScript
42 lines
1.3 KiB
JavaScript
"use strict";
|
|
// @ts-check
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.default = serializeCookies;
|
|
/**
|
|
* # Serialize Cookies
|
|
* @description Convert cookie object to string array
|
|
*/
|
|
function serializeCookies({ cookies, }) {
|
|
let cookiesStringsArray = [];
|
|
for (let i = 0; i < cookies.length; i++) {
|
|
const cookieObject = cookies[i];
|
|
let cookieString = `${cookieObject.name}=${cookieObject.value}`;
|
|
if (cookieObject.maxAge) {
|
|
cookieString += `;Max-Age=${cookieObject.maxAge}`;
|
|
}
|
|
if (cookieObject.path) {
|
|
cookieString += `;Path=${cookieObject.path}`;
|
|
}
|
|
if (cookieObject.domain) {
|
|
cookieString += `;Domain=${cookieObject.domain}`;
|
|
}
|
|
if (cookieObject.secure) {
|
|
cookieString += ";Secure";
|
|
}
|
|
if (cookieObject.httpOnly) {
|
|
cookieString += ";HttpOnly";
|
|
}
|
|
if (cookieObject.sameSite) {
|
|
cookieString += `;SameSite=${cookieObject.sameSite}`;
|
|
}
|
|
if (cookieObject.expires) {
|
|
cookieString += `;expires=${cookieObject.expires}`;
|
|
}
|
|
if (cookieObject.priority) {
|
|
cookieString += `;priority=${cookieObject.priority}`;
|
|
}
|
|
cookiesStringsArray.push(cookieString);
|
|
}
|
|
return cookiesStringsArray;
|
|
}
|