UNPKG

@swaggerexpert/cookie

Version:

RFC 6265 compliant cookie parser, validator and serializer.

21 lines 617 B
import { Parser } from 'apg-lite'; import Grammar from "../../grammar.mjs"; import { isQuoted } from "../../utils.mjs"; const parser = new Parser(); const grammar = new Grammar(); const testCookieValue = (cookieValue, { strict = true, quoted = null } = {}) => { try { const startRule = strict ? 'cookie-value' : 'lenient-cookie-value'; const result = parser.parse(grammar, startRule, cookieValue); if (typeof quoted === 'boolean') { return result.success && quoted === isQuoted(cookieValue); } return result.success; } catch { return false; } }; export default testCookieValue;