Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mswjs/cookies
Manage request/response cookies in the environments where those are not supported.
https://github.com/mswjs/cookies
api cookies mocking mswjs
Last synced: 1 day ago
JSON representation
Manage request/response cookies in the environments where those are not supported.
- Host: GitHub
- URL: https://github.com/mswjs/cookies
- Owner: mswjs
- License: mit
- Created: 2020-11-19T08:17:50.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2024-06-21T10:57:12.000Z (7 months ago)
- Last Synced: 2025-01-09T12:19:30.466Z (9 days ago)
- Topics: api, cookies, mocking, mswjs
- Language: TypeScript
- Homepage:
- Size: 322 KB
- Stars: 19
- Watchers: 4
- Forks: 8
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
[![Latest version](https://img.shields.io/npm/v/@mswjs/cookies.svg)](https://www.npmjs.com/package/@mswjs/cookies)
# Cookies
Manage request/response cookies in the environments where those are not supported.
## Install
```bash
npm install @mswjs/cookies
```## API
### `set(request: Request, response: Response)`
Sets the response cookies in the store associated with the given request origin.
```js
store.set(
new Request('https://mswjs.io'),
new Response(null, {
headers: new Headers({
'set-cookie': 'id=abc-123',
}),
}),
)
```### `get(request: Request)`
Retrieves the cookies relevant to the given request's origin.
```js
store.get(new Request('https://mswjs.io'))
```> `.get()` respects the `req.credentials` policy.
Executing this command returns a `Map` instance with the request cookies:
```js
Map {
"id" => { name: "id", value: "abc-123" }
}
```### `getAll()`
Returns all the cookies in the store.
Executing `.getAll()` method returns a `Map` instance with request cookies grouped by request origin.
```js
Map {
"https://mswjs.io" => Map {
"id" => { name: "id", value: "abc-123" }
}
}
```### `deleteAll(request: Request)`
Removes all the cookies associated with the given request's origin.
### `persist()`
Persists the current store state in the `localStorage`.
### `hydrate()`
Hydrates the store values from the previously persisted state in `localStorage`.
### `clear()`
Removes all the cookies from the store, producing a nice and shiny empty store.
## Credits
Original idea by [Christoph Guttandin](https://github.com/chrisguttandin).