@tantainnovative/ndpr-toolkit 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +63 -24
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -1,37 +1,76 @@
|
|
|
1
1
|
# NDPR Toolkit
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
<div align="center">
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+

|
|
6
|
+
|
|
7
|
+
A comprehensive enterprise solution for implementing NDPR-compliant features in web applications, aligned with the Nigerian Data Protection Regulation (NDPR) and Data Protection Act (DPA).
|
|
8
|
+
|
|
9
|
+
[](https://www.npmjs.com/package/@tantainnovative/ndpr-toolkit)
|
|
10
|
+
[](https://github.com/tantainnovative/ndpr-toolkit/blob/main/LICENSE)
|
|
11
|
+
[](https://www.typescriptlang.org/)
|
|
12
|
+
[](https://reactjs.org/)
|
|
13
|
+
|
|
14
|
+
</div>
|
|
6
15
|
|
|
7
|
-
|
|
16
|
+
## Overview
|
|
8
17
|
|
|
9
|
-
|
|
10
|
-
[](https://github.com/tantainnovative/ndpr-toolkit/blob/main/LICENSE)
|
|
18
|
+
The NDPR Toolkit is an enterprise-grade solution that provides a comprehensive set of React components, hooks, and utilities to help organizations implement NDPR-compliant features in their web applications with minimal development effort. Designed by compliance experts and developers, this toolkit offers a complete solution for privacy policy management, consent handling, data subject rights, breach notification, and data protection impact assessments.
|
|
11
19
|
|
|
12
20
|
> **NDPR Toolkit is actively maintained and regularly updated to ensure compliance with the latest Nigerian data protection regulations.**
|
|
13
21
|
|
|
14
|
-
## Features
|
|
22
|
+
## Key Features
|
|
23
|
+
|
|
24
|
+
### 🔒 Privacy Policy Management
|
|
25
|
+
|
|
26
|
+
- **PolicyGenerator**: Create customizable, NDPR-compliant privacy policies with an intuitive form interface
|
|
27
|
+
- **PolicyPreview**: Display generated policies with professional formatting and section navigation
|
|
28
|
+
- **PolicyExporter**: Export policies in multiple formats (PDF, HTML, Markdown) with compliance notices
|
|
29
|
+
|
|
30
|
+
### 🍪 Consent Management
|
|
15
31
|
|
|
16
|
-
- **
|
|
17
|
-
- **
|
|
18
|
-
- **
|
|
19
|
-
- **Breach Notification System**: Comprehensive tools for managing, assessing, and reporting data breaches within required timeframes
|
|
20
|
-
- **Privacy Policy Generator**: Customizable tool for creating NDPR-compliant privacy policies with variable support
|
|
32
|
+
- **ConsentBanner**: Implement cookie consent banners with customizable appearance and behavior
|
|
33
|
+
- **ConsentManager**: Track and manage user consent preferences across your application
|
|
34
|
+
- **ConsentStorage**: Securely store and retrieve consent records with built-in persistence
|
|
21
35
|
|
|
22
|
-
###
|
|
36
|
+
### 👤 Data Subject Rights (DSR)
|
|
23
37
|
|
|
24
|
-
- **
|
|
25
|
-
- **
|
|
26
|
-
- **
|
|
27
|
-
|
|
38
|
+
- **DSRRequestForm**: Collect and validate data subject requests with comprehensive form validation
|
|
39
|
+
- **DSRTracker**: Monitor the status and progress of data subject requests
|
|
40
|
+
- **DSRDashboard**: Visualize and manage all data subject requests in one place
|
|
41
|
+
|
|
42
|
+
### 📊 Data Protection Impact Assessment (DPIA)
|
|
43
|
+
|
|
44
|
+
- **DPIAQuestionnaire**: Guide users through the DPIA process with step-by-step questionnaires
|
|
45
|
+
- **DPIAReport**: Generate comprehensive DPIA reports based on questionnaire responses
|
|
46
|
+
- **StepIndicator**: Track progress through multi-step DPIA processes
|
|
47
|
+
|
|
48
|
+
### ⚠️ Breach Notification
|
|
49
|
+
|
|
50
|
+
- **BreachReportForm**: Collect essential information about data breaches
|
|
51
|
+
- **BreachRiskAssessment**: Evaluate the risk level of reported breaches
|
|
52
|
+
- **RegulatoryReportGenerator**: Create NDPR-compliant breach notification reports
|
|
53
|
+
- **BreachNotificationManager**: Manage the entire breach notification workflow
|
|
54
|
+
|
|
55
|
+
### 🆕 Enterprise Features
|
|
56
|
+
|
|
57
|
+
- **Advanced Conditional Logic**: Support for complex conditional blocks in policy templates
|
|
58
|
+
- **Professional Formatting**: Enterprise-ready formatting for all exported documents
|
|
59
|
+
- **Comprehensive Type System**: Full TypeScript support with detailed interfaces and type definitions
|
|
60
|
+
- **Modular Architecture**: Use only the components you need with tree-shakable imports
|
|
61
|
+
- **Accessibility**: WCAG 2.1 AA compliant components for inclusive user experiences
|
|
28
62
|
|
|
29
63
|
## Installation
|
|
30
64
|
|
|
31
65
|
```bash
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
66
|
+
# Using npm
|
|
67
|
+
npm install @tantainnovative/ndpr-toolkit
|
|
68
|
+
|
|
69
|
+
# Using yarn
|
|
70
|
+
yarn add @tantainnovative/ndpr-toolkit
|
|
71
|
+
|
|
72
|
+
# Using pnpm
|
|
73
|
+
pnpm add @tantainnovative/ndpr-toolkit
|
|
35
74
|
```
|
|
36
75
|
|
|
37
76
|
## Quick Start
|
|
@@ -39,7 +78,7 @@ yarn add ndpr-toolkit
|
|
|
39
78
|
### Consent Management
|
|
40
79
|
|
|
41
80
|
```jsx
|
|
42
|
-
import { ConsentBanner, ConsentManager, ConsentStorage, useConsent } from 'ndpr-toolkit';
|
|
81
|
+
import { ConsentBanner, ConsentManager, ConsentStorage, useConsent } from '@tantainnovative/ndpr-toolkit';
|
|
43
82
|
|
|
44
83
|
function MyApp() {
|
|
45
84
|
return (
|
|
@@ -93,7 +132,7 @@ function AppContent() {
|
|
|
93
132
|
### Privacy Policy Generator
|
|
94
133
|
|
|
95
134
|
```jsx
|
|
96
|
-
import { PolicyGenerator, PolicyPreview, PolicyExporter, usePrivacyPolicy } from 'ndpr-toolkit';
|
|
135
|
+
import { PolicyGenerator, PolicyPreview, PolicyExporter, usePrivacyPolicy } from '@tantainnovative/ndpr-toolkit';
|
|
97
136
|
|
|
98
137
|
function PrivacyPolicyPage() {
|
|
99
138
|
const { policy, updateVariableValue, generatePolicy } = usePrivacyPolicy();
|
|
@@ -258,7 +297,7 @@ function AnalyticsComponent() {
|
|
|
258
297
|
### Implementing a Data Subject Rights Portal
|
|
259
298
|
|
|
260
299
|
```jsx
|
|
261
|
-
import { DSRRequestForm, useDSR } from 'ndpr-toolkit';
|
|
300
|
+
import { DSRRequestForm, DSRTracker, DSRDashboard, useDSR } from '@tantainnovative/ndpr-toolkit';
|
|
262
301
|
|
|
263
302
|
// 1. Create a form for data subjects to submit requests
|
|
264
303
|
function DSRPortal() {
|
|
@@ -295,7 +334,7 @@ function DSRPortal() {
|
|
|
295
334
|
}
|
|
296
335
|
|
|
297
336
|
// 2. Create an admin dashboard for managing requests
|
|
298
|
-
import { DSRDashboard } from 'ndpr-toolkit';
|
|
337
|
+
import { DSRDashboard } from '@tantainnovative/ndpr-toolkit';
|
|
299
338
|
|
|
300
339
|
function AdminDashboard() {
|
|
301
340
|
const { requests, updateRequest, deleteRequest } = useDSR();
|
|
@@ -313,7 +352,7 @@ function AdminDashboard() {
|
|
|
313
352
|
### Setting Up a Breach Notification System
|
|
314
353
|
|
|
315
354
|
```jsx
|
|
316
|
-
import { BreachReportForm, BreachRiskAssessment, useBreach } from 'ndpr-toolkit';
|
|
355
|
+
import { BreachReportForm, BreachRiskAssessment, RegulatoryReportGenerator, useBreach } from '@tantainnovative/ndpr-toolkit';
|
|
317
356
|
|
|
318
357
|
// 1. Create a form for reporting breaches
|
|
319
358
|
function BreachReporting() {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tantainnovative/ndpr-toolkit",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "A comprehensive toolkit for implementing NDPR-compliant features in web applications",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.esm.js",
|
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
"access": "public"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
|
-
"react": "^18.0.0",
|
|
40
|
-
"react-dom": "^18.0.0"
|
|
39
|
+
"react": "^18.0.0 || ^19.0.0",
|
|
40
|
+
"react-dom": "^18.0.0 || ^19.0.0"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@rollup/plugin-commonjs": "^22.0.0",
|