{"_id":"@bpleco/cff-cookie-parser","_rev":"3-31ff1b1e905bdd65507b5212d6f63b0d","name":"@bpleco/cff-cookie-parser","dist-tags":{"latest":"1.0.0"},"versions":{"0.0.1":{"name":"@bpleco/cff-cookie-parser","version":"0.0.1","description":"Cookie parser middleware for cloudflare functions","main":"dist/index.js","scripts":{"build":"tsc","dev":"tsc -w","format":"prettier . --write","lint":"eslint src --ext .ts"},"keywords":["cookies","cloudflare","cloudflare functions"],"author":{"name":"Ben Pleco"},"license":"MIT","devDependencies":{"@cloudflare/workers-types":"^3.14.1","@types/cookie":"^0.5.1","@typescript-eslint/eslint-plugin":"^5.33.0","@typescript-eslint/parser":"^5.33.0","eslint":"^8.21.0","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.2.1","prettier":"^2.7.1","typescript":"^4.7.4"},"dependencies":{"cookie":"^0.5.0"},"types":"./dist/index.d.ts","gitHead":"fde7eeabce2f7e328ca50451c3a2ea533641aba7","_id":"@bpleco/cff-cookie-parser@0.0.1","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-/QD3gsa6WN2y6WEHsyoCUgUh6kxJrSix+ARCM2jIri95WTqCCft6ymdZfz58OV2vHtfofvwwQBlBhH2tP14n4g==","shasum":"a5a95abf1e58554fc08544ddc7bc1337cd70d03c","tarball":"https://registry.npmjs.org/@bpleco/cff-cookie-parser/-/cff-cookie-parser-0.0.1.tgz","fileCount":8,"unpackedSize":6478,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAxqfU9A0CGtm42aR5x5o3jLrd1MDiXdAbFTDBhy7CTFAiBky0JiiGkmPibHQ5UjcUPIMbdGS4oENDlhgpsTWWHtVA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi9K/yACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrIYA//ec2HzSee/L/IZfhVij2gHHi+LaBOB4pTI80TxEkX5v+1KpGd\r\nX/5YfzgPxygDM3migWXQCi7cMKtceHq2QsUWbTEaWMjdF7tNhIr2WvGCHE5q\r\nKWl31WqKiNc9jmOw8g/8NUX9svVMVlWRytwPQ7AW2jm0+l48JdMv37na1tvG\r\n7Mrv+TX5vwzNe/i5YYlAEXNtKkbYJScZnEscR7MmDnJ8G/njjWgjdgLCeMNr\r\nUZqpbT5qVPcydopQ9o4wq5YJNifZdBDiEArJOnJpxPCvovhe3hl5BasNGddK\r\nV6BV4Su6F8rU/AviWPSHOhZDwf15qpRUrgWPWj8QMJV53b2Qt1pDox1osnPT\r\n4MUUDPjr05n25JqkXNlF5EW3UM6aSW44gPPKr5FiOE8HUfIjB6Le/4rPubbW\r\n8LJEVWFvjYpabuIqEaQOXG5JOla4iElwhKexWod8Bif/px8NDVJhW9vxRWtE\r\noCI3o2G/ZfuiiYquysO6sM14MXg5CsWsv9s6/j8kccovMOrxI1Pl4e5P1aMd\r\nVAR0SdwOJvcaUT3SJTqe9K2qfK91/zCCl/fQLv654o/I+zW6NtR1cBCdXCX3\r\nGXyhB6p/oPbCNpbZ7UywuTM4cGmfWhJ9Hx61z4DKgQAacadZaTD+XScXx2eT\r\nQ8mpkZj8h/wDevxoNKnZuPkKfkt2oOWhSuA=\r\n=LAEs\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bpleco","email":"benpleco@protonmail.com"},"directories":{},"maintainers":[{"name":"bpleco","email":"benpleco@protonmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cff-cookie-parser_0.0.1_1660202993948_0.7320947997294385"},"_hasShrinkwrap":false},"0.0.2":{"name":"@bpleco/cff-cookie-parser","version":"0.0.2","description":"Cookie parser middleware for cloudflare functions","main":"dist/index.js","types":"dist/types.d.ts","scripts":{"build":"tsc","dev":"tsc -w","format":"prettier . --write","lint":"eslint src --ext .ts"},"keywords":["cookies","cloudflare","cloudflare functions"],"repository":{"url":"git+https://github.com/bpleco/cff-cookie-parser.git"},"author":{"name":"Ben Pleco"},"license":"MIT","devDependencies":{"@cloudflare/workers-types":"^3.14.1","@types/cookie":"^0.5.1","@typescript-eslint/eslint-plugin":"^5.33.0","@typescript-eslint/parser":"^5.33.0","eslint":"^8.21.0","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.2.1","prettier":"^2.7.1","typescript":"^4.7.4"},"dependencies":{"cookie":"^0.5.0"},"gitHead":"fc802ef73dab431bb4ce22d3ace3c9896fb021f9","bugs":{"url":"https://github.com/bpleco/cff-cookie-parser/issues"},"homepage":"https://github.com/bpleco/cff-cookie-parser#readme","_id":"@bpleco/cff-cookie-parser@0.0.2","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-2shb1UfLAOAo1LAPOZRZAlGfgy+fpbXvF2X1iw61eG+2sHyVPCCvtwHrVAOPVzYhXEgjK6gKMKdCS+bQTXFHqg==","shasum":"804d78055e0573f59060d386cc74856ab8a3bc7e","tarball":"https://registry.npmjs.org/@bpleco/cff-cookie-parser/-/cff-cookie-parser-0.0.2.tgz","fileCount":10,"unpackedSize":7098,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDQ5XfdbiQy1B8dGSUrsbjO1sioJlaiY7YxhZN4G/dNsQIgEKYWCIOdx8SZ6XOZsKzmElT1thZp01kAQOmqKTIYwrs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi9LYMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpKQA//TU4lr91dVM+KAsvhut6dfvDcYIbf4ki/7mDUxIbWQx0SdXwS\r\nsVe7B7uBkvtPioU/BxEvcBug1vHRErLCybsEQicUc3E25ALdO3a0DCiu3J8y\r\n6iUdau6IFbdjfTy8yt8WbDoJhK7h1YQtKEletOuBWxPPb7Ggg/bmZerfpBwB\r\npTpdAwoDh6NKdi4J9+efCjCwYyAkCfMh3jnl46rRoQJ17lcej9d0HZI6auVe\r\npsalbnkk/2h508xAa38C/DCxa856+5xkhfE6ekq8kiQGKzvyaCoyIYv79iT1\r\ncGqHNGffvMWM+1f7wsrMApqJp/TMUQfYxdMFbcYDl64L6UMJocUw8H2o2d9V\r\n2jbV6jDKxsLUoghI+lix0NJFaXK/CftSDTNZZDAUq8Hj9mfzG1OsBMHuEAEi\r\nC6kdOlY1wqBcgHdYsmfCe25UwdjKlFetYaJ8Odr+/DwVX/uojfjIjaKr5MAr\r\nCxq3BDRmfFvlLb92F1dkDDrTu8lA6ucxVrlTqyihgH+c0VVMjSVByLm2bAqk\r\nvaAHO/NDT6tJ4OctsDXQmZXT0ek2aDsQul0sZAM04lusMVbKxAhKjevd+QpD\r\nAKMTzzPPddbzwyQFPWPQPEbLOLS0O54HnHPIBCV2/pLSsKrBVMrkYT7JeikB\r\n9ZM1sQgJNptxcSkvAJGQrkEeUd/vy7yv5DY=\r\n=TJnr\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bpleco","email":"benpleco@protonmail.com"},"directories":{},"maintainers":[{"name":"bpleco","email":"benpleco@protonmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cff-cookie-parser_0.0.2_1660204556660_0.33034028548991334"},"_hasShrinkwrap":false},"0.0.3":{"name":"@bpleco/cff-cookie-parser","version":"0.0.3","description":"Cookie parser middleware for cloudflare functions","main":"dist/index.js","types":"dist/types.d.ts","scripts":{"build":"tsc","dev":"tsc -w","format":"prettier . --write","lint":"eslint src --ext .ts"},"keywords":["cookies","cookie parser","cloudflare","cloudflare functions"],"repository":{"url":"git+https://github.com/bpleco/cff-cookie-parser.git"},"author":{"name":"Ben Pleco"},"license":"MIT","devDependencies":{"@cloudflare/workers-types":"^3.14.1","@types/cookie":"^0.5.1","@typescript-eslint/eslint-plugin":"^5.33.0","@typescript-eslint/parser":"^5.33.0","eslint":"^8.21.0","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.2.1","prettier":"^2.7.1","typescript":"^4.7.4"},"dependencies":{"cookie":"^0.5.0"},"gitHead":"043239db53844f773b787ba48d17b07b6f939695","bugs":{"url":"https://github.com/bpleco/cff-cookie-parser/issues"},"homepage":"https://github.com/bpleco/cff-cookie-parser#readme","_id":"@bpleco/cff-cookie-parser@0.0.3","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-K7YqxS266pwug0J5LrJ64iBYL4/Z1LeVisTbPpSzG4oTa3VJtgTFhhFoqnx5I9V4ssWUoZCzOq6KcGc3FE6u0A==","shasum":"e5df0131744bca850110fdea35568ba4b4ae8abc","tarball":"https://registry.npmjs.org/@bpleco/cff-cookie-parser/-/cff-cookie-parser-0.0.3.tgz","fileCount":10,"unpackedSize":7148,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBxgmGy4YL4e9lVGX4/PSAcgJ08TK891gcQtDk4Zo7K2AiEA8PZXdloEyWFyIAIVkm6TP17v6iqZZfNgZUIYBpLHAyI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi9NRZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrPtg/+PsVFNhzsZA7waDWuNcKXjDWzI4aTQ4jwiXkuALfuuroj+w9v\r\nvXlSpHYxQ6F5uOvQ8yUcwMwmpju+pL3cfc5brxa/5r1op5ctyiLGOoEMH5/r\r\nt4CHECdzrsPDeSzymPpIyUJbxH8BN0uvFUB21r4A8hfKT7TaGfSpiS8aQi1O\r\ngFF+1J/lYUQ8ItCihw6BAmKpddaRjc76fUkLJYPR2KP2KrbctWh4XPwgUtVf\r\nGphTZ8/cYHhbRALX9gNKsCi2xnx1jj+K92ODY1zbDU/w5o33d5sbTfqzRXfI\r\nASsGYu395RSehD6V8SGdH5/bmY9oQnDr6i0Sf55ih38MFx5ojcvqVZgb/xz4\r\nD6kl58ucyGxyvrnd2iRm322yadAeZcBJ21eonPly9mBGcVt6zXssT3RZBCbv\r\ntfqIMsRIcBwgpLTMj4qLRepET+0xImzxDsNjZ4mGIw6VP3lM9JYWnQNKdCtn\r\nC6gNbKXyWOb0MQnBC2BcUUrC4dMWxru9Z1CnRnADbLWgBgxaZGM9C+lqcxzW\r\nP46W2ijEDvk1Skj7B539LeXHNaT+kfQFFLprjJPsjq+Y2/gJTNFfsF3VYMYw\r\nPigp9YFue+on1LMF9Hjxrh/aaJv/vbBHeyK1hurlR9iRuSVfxjAzCrMMEIYG\r\ntOaI7Xn4x/ape37GFipqbf0L5OWSTw55E0g=\r\n=xVGx\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bpleco","email":"benpleco@protonmail.com"},"directories":{},"maintainers":[{"name":"bpleco","email":"benpleco@protonmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cff-cookie-parser_0.0.3_1660212313549_0.11307999391712387"},"_hasShrinkwrap":false},"1.0.0":{"name":"@bpleco/cff-cookie-parser","version":"1.0.0","description":"Cookie parser middleware for cloudflare functions","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","dev":"tsc -w","format":"prettier . --write","lint":"eslint src --ext .ts"},"keywords":["cookies","cookie parser","cloudflare","cloudflare functions"],"repository":{"url":"git+https://github.com/bpleco/cff-cookie-parser.git"},"author":{"name":"Ben Pleco"},"license":"MIT","devDependencies":{"@cloudflare/workers-types":"^3.14.1","@types/cookie":"^0.5.1","@typescript-eslint/eslint-plugin":"^5.33.0","@typescript-eslint/parser":"^5.33.0","eslint":"^8.21.0","eslint-config-prettier":"^8.5.0","eslint-plugin-prettier":"^4.2.1","prettier":"^2.7.1","typescript":"^4.7.4"},"dependencies":{"cookie":"^0.5.0"},"gitHead":"7c98ec74acbd5230ac4a3e7a561e6c9c21bcbcf6","bugs":{"url":"https://github.com/bpleco/cff-cookie-parser/issues"},"homepage":"https://github.com/bpleco/cff-cookie-parser#readme","_id":"@bpleco/cff-cookie-parser@1.0.0","_nodeVersion":"16.13.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-cIX+0NH4DjtCZt0D0dehETTtrVMYXRChuoJPvHxFion44qj9V53O0ZuVszeCiL1wdbQ1AVtN53UJ39tXk02LNw==","shasum":"63965b50e130bfee2d3c70c88be7659907a3cf61","tarball":"https://registry.npmjs.org/@bpleco/cff-cookie-parser/-/cff-cookie-parser-1.0.0.tgz","fileCount":10,"unpackedSize":7268,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDH7p7gyca0xZmBAVTOmyvNwSIeZ5DM/Au35JNhRlNY4AiARG1tKBlgdGZrrKyM59r6j+QbQQMzzLRLjrp0wjrbhsQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjXdzFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpPzA//Q1DsaCzibzmD0FozU5AE+KMYpX7BSegEFh5jFj2zYFoc5VyM\r\nGePWNKcD0Tuv4XSWCA49RzVWkNrDSf2UE/7827lCqbSo5Ixbq/E4P1mQcK90\r\nAzxQZZvoBwxme3JtdBmlRvoXqbtsYHtDwvCHFriVaq/CvPt8TzjmvCUM2LQL\r\nYeEByLaLU9diriXZ6ns4K9SYMKmMKJKYjXK5L2hCXByXD+NIo9fVFvIJxna/\r\nHztl4IurDQBPMSHX70Q5N9uWeCqOrwfXA46HmgSjZagof00lTwee4m+DGegY\r\nHbJYQ7FRvK6XFgww0QNHLU8AXJFn8Sr2jH968PUbBR8dqP9g0eiUZN8QMyAD\r\n5Mi+UGQtEkwhuU1ILXokTzKF54mzC6My9MXXOIxg0nciYaUNekj2oKUf13gP\r\nHkmhmBI3K6Bqv2cRSenZ4osN/oZWlhi9CUKDU28jBE2kY5u/HO5tAmM8IpWy\r\nRBINVTBNl6kkgjGayqIzRHaJa2zRVZjPC7jey1jIdasRzOldmLgBvt5HW763\r\nbPwZYWuBnMbYjuRTN6GVGdHjnrAu7LKHIwE+UdFlClYC9fMZK/oVeqrDYR5Z\r\nkcXzr7MRr+xwMA4HE9bdvipVNvlu5nN9lZ7yMYXO/Phgkw5/VZN+LC7lFB+6\r\n1reL3kuuiDXn9gvS1w3j23NUS9hoSvlLyqs=\r\n=Y/TV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bpleco","email":"benpleco@protonmail.com"},"directories":{},"maintainers":[{"name":"bpleco","email":"benpleco@protonmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/cff-cookie-parser_1.0.0_1667095749100_0.3868242242858999"},"_hasShrinkwrap":false}},"time":{"created":"2022-08-11T07:29:53.878Z","0.0.1":"2022-08-11T07:29:54.198Z","modified":"2022-10-30T02:09:09.334Z","0.0.2":"2022-08-11T07:55:56.805Z","0.0.3":"2022-08-11T10:05:13.699Z","1.0.0":"2022-10-30T02:09:09.257Z"},"maintainers":[{"name":"bpleco","email":"benpleco@protonmail.com"}],"description":"Cookie parser middleware for cloudflare functions","keywords":["cookies","cookie parser","cloudflare","cloudflare functions"],"author":{"name":"Ben Pleco"},"license":"MIT","readme":"# Cloudflare Functions Cookie Parser\n\nThis module provides a middleware for use with Cloudflare Functions that attaches cookies to `ctx.data.cookies`\n\nIt also attaches a helper function to `ctx.data.setCookies` to attach cookies to a response.\n\n## Examples\n\nThis example will attach the cookie parser middleware to every incoming request\n\n```ts\n// ./functions/_middleware.ts\n\nimport { cookieMiddlewareHandler } from '@bpleco/cff-cookie-parser';\n\nexport const onRequest = [cookieMiddlewareHandler];\n```\n\nThen in your function route you can interact with the existing cookie data and set new cookies\n\n```ts\n// ./functions/api/testing\n\nexport async function onRequest(context) {\n  // this will log the preexisting cookies\n  console.log(context.data.cookies);\n\n  const response = new Response('Hello, world!');\n\n  // this will set a new cookie that expires in a weeks time\n  context.data.setCookies(response, {\n    wantACookie: {\n      value: 'yesPlease',\n      options: {\n        expires: new Date(Date.now() + 86400000 * 7),\n      },\n    },\n  });\n\n  return response;\n}\n```\n\nYou can also set multiple cookies with the cookie object\n\n```ts\n// ./functions/api/testing\n\nexport async function onRequest(context) {\n  // this will log the preexisting cookies\n  console.log(context.data.cookies);\n\n  const response = new Response('Hello, world!');\n\n  // this will set two new cookies that expires in a week and two days respectively\n  context.data.setCookies(response, {\n    wantACookie: {\n      value: 'yesPlease',\n      // this is a shorthand property for expires in days\n      expiresIn: 7,\n    },\n    wantAnotherCookie: {\n      value: 'forSure',\n      options: {\n        expires: new Date(Date.now() + 86400000 * 2),\n        httpOnly: true,\n      },\n    },\n  });\n\n  return response;\n}\n```\n\n## Options\n\n```ts\ninterface CreateCookiesObject {\n  /** This can be any string and is used to name the cookie */\n  [key: string]: {\n    /** The value of the cookie */\n    value: string;\n    /** Shorthand for days expires in, this takes precedence over any expires defined in options  */\n    expiresIn?: number;\n    /** These options are passed straight to `cookie` module see https://www.npmjs.com/package/cookie\n     */\n    options?: CookieSerializeOptions;\n  };\n}\n```\n\n## Typescript\n\nTyping the context argument of your request handler with the exported `ctx` type will give you intellisense\n\n```ts\n// index.d.ts\nimport type { setCookies } from '@bpleco/cff-cookie-parser';\n\ninterface CloudflareContextData {\n  cookies: {\n    [key: string]: string;\n  };\n  setCookies: setCookies;\n}\n\ninterface CookieObject {\n  [key: string]: Cookie;\n}\n\nexport type CloudflareEventContext = EventContext<null, '', CloudflareContextData>;\n```\n\n## References\n\n- [cloudflare functions docs](https://developers.cloudflare.com/pages/platform/functions/)\n- [cookie npm module](https://www.npmjs.com/package/cookie)\n","readmeFilename":"README.md","homepage":"https://github.com/bpleco/cff-cookie-parser#readme","repository":{"url":"git+https://github.com/bpleco/cff-cookie-parser.git"},"bugs":{"url":"https://github.com/bpleco/cff-cookie-parser/issues"}}