diff options
Diffstat (limited to 'cli/bench/testdata/npm/hono/dist/utils/cookie.js')
-rw-r--r-- | cli/bench/testdata/npm/hono/dist/utils/cookie.js | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/cli/bench/testdata/npm/hono/dist/utils/cookie.js b/cli/bench/testdata/npm/hono/dist/utils/cookie.js new file mode 100644 index 000000000..13a18602f --- /dev/null +++ b/cli/bench/testdata/npm/hono/dist/utils/cookie.js @@ -0,0 +1,40 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.serialize = exports.parse = void 0; +const parse = (cookie) => { + const pairs = cookie.split(/;\s*/g); + const parsedCookie = {}; + for (let i = 0, len = pairs.length; i < len; i++) { + const pair = pairs[i].split(/\s*=\s*([^\s]+)/); + parsedCookie[pair[0]] = decodeURIComponent(pair[1]); + } + return parsedCookie; +}; +exports.parse = parse; +const serialize = (name, value, opt = {}) => { + value = encodeURIComponent(value); + let cookie = `${name}=${value}`; + if (opt.maxAge) { + cookie += `; Max-Age=${Math.floor(opt.maxAge)}`; + } + if (opt.domain) { + cookie += '; Domain=' + opt.domain; + } + if (opt.path) { + cookie += '; Path=' + opt.path; + } + if (opt.expires) { + cookie += '; Expires=' + opt.expires.toUTCString(); + } + if (opt.httpOnly) { + cookie += '; HttpOnly'; + } + if (opt.secure) { + cookie += '; Secure'; + } + if (opt.sameSite) { + cookie += `; SameSite=${opt.sameSite}`; + } + return cookie; +}; +exports.serialize = serialize; |