@transferwise/cookie-consent
TypeScript icon, indicating that this package has built-in type declarations

2.24.0 • Public • Published

Cookie consent

npm

This repo contains helper functions to make your application compliant with ICO regulations. How to make your application compliant with ICO regulations

Install

yarn add @transferwise/cookie-consent

Use

hasValidConsent()

import { hasValidConsent } from "@transferwise/cookie-consent";

if (hasValidConsent()) {
  mixpanel.opt_in_tracking();
}

hasValidConsent() checks the cookie consent from document.cookie. If consent cookie is not there or document is undefined then it will return false.

cookie.write(string, object(optional))

import { cookie } from "@transferwise/cookie-consent";

cookie.write(
  "username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 UTC; path=/"
);

cookie.write(string, object) takes 2 arguments:

  1. cookie name, value and params you want to write to document.cookie
  2. Optional: object that contains value if the cookie is essential - if it's true then we will add it to document.cookie even when we don't have consent How to know if my cookie is essential?

Adding essential cookie:

import { cookie } from "@transferwise/cookie-consent";

cookie.write(
  "username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 UTC; path=/",
  { essential: true }
);

Test

yarn test

Constants & cookie policy

The package also includes the constants used when creating the consent cookie, and a JSON representation of the cookie policy.

These are typically utilised by the consent mechansim, audit tooling (e.g., cookie monster).

Releasing a new version

  1. Make your changes and write tests for it
  2. Bump the version (We follow semver) and update CHANGELOG.md
  3. Create a PR and ask for a code review in #marketing-platform-dev
  4. Merge to master after it's approved
  5. Enjoy your new version in NPM

Readme

Keywords

none

Package Sidebar

Install

npm i @transferwise/cookie-consent

Weekly Downloads

1

Version

2.24.0

License

UNLICENSED

Unpacked Size

118 kB

Total Files

26

Last publish

Collaborators

  • itservices
  • tw-circleci