@datafund/consent-viewer

0.1.8 • Public • Published

Consent Viewer

React plugin for displaying human-readable Consent Receipt (CR) JSON.

Quick Use

Download package using npm:

$ npm install --save @datafund/consent-viewer


Import package to your React app:

import { ConsentViewer } from 'consent-viewer';


Prepare Consent Receipt data:

let sampleData = {
  "header": {
    "alg": "RS256",
    "typ": "JWT"
  },
  "payload": {
    "version": "Kantara_v1.1",
    "consentTimestamp": 1559734117,
    "collectionMethod": "Web form",
    "consentReceiptID": "d03bdfed-708a-4792-b6d2-eb336000359f",
    "publicKey": "-----BEGIN RSA PRIVATE KEY-----\nMIIEogIBAAKCAQEAnzyis1ZjfNB0bBgKFMSvvkTtwlvBsaJq7S5wA+kzeVOVpVWw\nkWdVha4s38XM/pa/yr47av7+z3VTmvDRyAHcaT92whREFpLv9cj5lTeJSibyr/Mr\nm/YtjCZVWgaOYIhwrXwKLqPr/11inWsAkfIytvHWTxZYEcXLgAXFuUuaS3uF9gEi\nNQwzGTU1v0FqkqTBr4B8nW3HCN47XUu0t8Y0e+lf4s4OxQawWD79J9/5d3Ry0vbV\n3Am1FtGJiJvOwRsIfVChDpYStTcHTCMqtvWbV6L11BWkpzGXSW4Hv43qa+GSYOD2\nQU68Mb59oSk2OB+BtOLpJofmbGEGgvmwyCI9MwIDAQABAoIBACiARq2wkltjtcjs\nkFvZ7w1JAORHbEufEO1Eu27zOIlqbgyAcAl7q+/1bip4Z/x1IVES84/yTaM8p0go\namMhvgry/mS8vNi1BN2SAZEnb/7xSxbflb70bX9RHLJqKnp5GZe2jexw+wyXlwaM\n+bclUCrh9e1ltH7IvUrRrQnFJfh+is1fRon9Co9Li0GwoN0x0byrrngU8Ak3Y6D9\nD8GjQA4Elm94ST3izJv8iCOLSDBmzsPsXfcCUZfmTfZ5DbUDMbMxRnSo3nQeoKGC\n0Lj9FkWcfmLcpGlSXTO+Ww1L7EGq+PT3NtRae1FZPwjddQ1/4V905kyQFLamAA5Y\nlSpE2wkCgYEAy1OPLQcZt4NQnQzPz2SBJqQN2P5u3vXl+zNVKP8w4eBv0vWuJJF+\nhkGNnSxXQrTkvDOIUddSKOzHHgSg4nY6K02ecyT0PPm/UZvtRpWrnBjcEVtHEJNp\nbU9pLD5iZ0J9sbzPU/LxPmuAP2Bs8JmTn6aFRspFrP7W0s1Nmk2jsm0CgYEAyH0X\n+jpoqxj4efZfkUrg5GbSEhf+dZglf0tTOA5bVg8IYwtmNk/pniLG/zI7c+GlTc9B\nBwfMr59EzBq/eFMI7+LgXaVUsM/sS4Ry+yeK6SJx/otIMWtDfqxsLD8CPMCRvecC\n2Pip4uSgrl0MOebl9XKp57GoaUWRWRHqwV4Y6h8CgYAZhI4mh4qZtnhKjY4TKDjx\nQYufXSdLAi9v3FxmvchDwOgn4L+PRVdMwDNms2bsL0m5uPn104EzM6w1vzz1zwKz\n5pTpPI0OjgWN13Tq8+PKvm/4Ga2MjgOgPWQkslulO/oMcXbPwWC3hcRdr9tcQtn9\nImf9n2spL/6EDFId+Hp/7QKBgAqlWdiXsWckdE1Fn91/NGHsc8syKvjjk1onDcw0\nNvVi5vcba9oGdElJX3e9mxqUKMrw7msJJv1MX8LWyMQC5L6YNYHDfbPF1q5L4i8j\n8mRex97UVokJQRRA452V2vCO6S5ETgpnad36de3MUxHgCOX3qL382Qx9/THVmbma\n3YfRAoGAUxL/Eu5yvMK8SAt/dJK6FedngcM3JEFNplmtLYVLWhkIlNRGDwkg3I5K\ny18Ae9n7dHVueyslrb6weq7dTkYDi3iOYRW8HRkIQh06wEdbxt0shTzAJvvCQfrB\njg/3747WSsf/zBTcHihTRBdAv6OmdhV4/dD5YBfLAkLrd+mX7iE=\n-----END RSA PRIVATE KEY-----",
    "language": "English",
    "piiPrincipalId": "individual@example.com",
    "piiControllers": [
      {
        "address": {},
        "piiController": "Datafund",
        "contact": "Jani Podatek",
        "email": "info@datafund.io",
        "phone": "+386 0000000",
        "piiControllerUrl": "http://datafund.io"
      }
    ],
    "policyUrl": "https://datafund.io/legal/privacy_policy.html",
    "services": [
      {
        "service": "Service example 1",
        "purposes": [
          {
            "purpose": "Core Function",
            "consentType": "explicit",
            "purposeCategory": [
              "Billing"
            ],
            "piiCategory": [
              "Email",
              "Phone number"
            ],
            "primaryPurpose": true,
            "termination": "1 year",
            "thirdPartyDisclosure": false
          }
        ]
      },
      {
        "service": "Service example 2",
        "purposes": [
          {
            "purpose": "Marketing",
            "consentType": "explicit",
            "purposeCategory": [
              "Direct marketing",
              "Delivery"
            ],
            "piiCategory": [
              "Home address",
              "Email address",
              "Phone number"
            ],
            "termination": "1 year",
            "thirdPartyDisclosure": true,
            "thirdPartyName": "AnalyticsRus"
          }
        ]
      }
    ],
    "sensitive": true,
    "spiCat": [
      "Health status",
      "Genetic data"
    ],
    "jurisdiction": "SI",
    "iat": 1561555440,
    "exp": 1561598640,
    "aud": "https://datafund.io",
    "iss": "Datafund",
    "sub": "Consent Receipt"
  },
  "signature": "C9ILWfpc3_sZXip8pBxOtJ8D7XYTGyKqdXqRCe2XPBSzqrBQoLNvL1wC2gLFGsYofaNC62BxIm0ktsGXTZosoa6-EGjYquCGb-qndo8f1j1w1oHmkclZde8OEsb1gCVC9ZlFNDh6_ZI5Xlysz-QontJuJpD6w0dTQd2kc2zc-o7ThJ9AUFdCaKNimEe5WdIbegtEVmY3NOYTiACCI9xQDk-BomumiONOZGVhiqNbcly_bEWJ8Rph43aSGpjU8vxyeK_a6vtxycx7PD6ozywbjCFkyHQeaOV3VnUaABrjBxJu3Yz6Rgk7vg7ZDb8rlZ4cgtJ_IJ8QG2JKBn0BdjL-oQ"
}


Include component with data parameter in render() method of your app:

<ConsentViewer data={{sampleData}} />

Params

  • data (Consent Receipt JSON)

Readme

Keywords

none

Package Sidebar

Install

npm i @datafund/consent-viewer

Weekly Downloads

1

Version

0.1.8

License

ISC

Unpacked Size

14.6 kB

Total Files

6

Last publish

Collaborators

  • tfius
  • markuszw
  • crtahlin