@tantainnovative/ndpr-toolkit 1.0.0 → 1.0.2

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 CHANGED
@@ -1,45 +1,100 @@
1
1
  # NDPR Toolkit
2
2
 
3
- A comprehensive toolkit for implementing NDPR-compliant features in web applications, aligned with the Nigerian Data Protection Regulation (NDPR) and Data Protection Act (DPA).
3
+ <div align="center">
4
4
 
5
- ## Overview
5
+ ![NDPR Toolkit Logo](https://via.placeholder.com/200x200?text=NDPR+Toolkit)
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).
6
8
 
7
- The NDPR Toolkit provides a set of React components, hooks, and utilities to help Nigerian businesses implement NDPR-compliant features in their web applications with minimal development effort. This toolkit is designed to be flexible, customizable, and easy to integrate into existing applications.
9
+ [![npm version](https://img.shields.io/npm/v/@tantainnovative/ndpr-toolkit.svg)](https://www.npmjs.com/package/@tantainnovative/ndpr-toolkit)
10
+ [![license](https://img.shields.io/npm/l/@tantainnovative/ndpr-toolkit.svg)](https://github.com/tantainnovative/ndpr-toolkit/blob/main/LICENSE)
11
+ [![TypeScript](https://img.shields.io/badge/TypeScript-4.9%2B-blue)](https://www.typescriptlang.org/)
12
+ [![React](https://img.shields.io/badge/React-18.0%2B-blue)](https://reactjs.org/)
8
13
 
9
- [![npm version](https://img.shields.io/npm/v/ndpr-toolkit.svg)](https://www.npmjs.com/package/ndpr-toolkit)
10
- [![license](https://img.shields.io/npm/l/ndpr-toolkit.svg)](https://github.com/tantainnovative/ndpr-toolkit/blob/main/LICENSE)
14
+ </div>
15
+
16
+ ## Overview
17
+
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
31
+
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
35
+
36
+ ### Data Subject Rights (DSR)
37
+
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
15
47
 
16
- - **Consent Management**: Components for collecting, storing, and managing user consent in compliance with NDPR requirements
17
- - **Data Subject Rights Portal**: Complete system for handling data subject access requests and other rights
18
- - **DPIA Questionnaire**: Interactive questionnaire for conducting Data Protection Impact Assessments
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
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
21
54
 
22
- ### 🆕 Latest Features
55
+ ### Enterprise Features
23
56
 
24
- - **Variable Support in Privacy Policies**: Create dynamic privacy policies with variable placeholders that can be easily updated when your organization information changes
25
- - **Enhanced DSR Types**: Improved type definitions for Data Subject Requests with standardized enums for request types and statuses
26
- - **ConsentStorage Component**: A flexible component for handling the storage and retrieval of consent settings with support for multiple storage mechanisms
27
- - **Comprehensive Documentation**: Detailed API references for all components and utilities
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
- npm install ndpr-toolkit
33
- # or
34
- yarn add ndpr-toolkit
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
74
+ ```
75
+
76
+ ### React 19 Compatibility
77
+
78
+ If you&apos;re using React 19 and encounter peer dependency warnings with other packages in your project, you can use the `--legacy-peer-deps` flag:
79
+
80
+ ```bash
81
+ npm install @tantainnovative/ndpr-toolkit --legacy-peer-deps
35
82
  ```
36
83
 
84
+ Alternatively, you can create a `.npmrc` file in your project root with the following content:
85
+
86
+ ```
87
+ legacy-peer-deps=true
88
+ ```
89
+
90
+ This will make npm ignore peer dependency conflicts during installation.
91
+
37
92
  ## Quick Start
38
93
 
39
94
  ### Consent Management
40
95
 
41
96
  ```jsx
42
- import { ConsentBanner, ConsentManager, ConsentStorage, useConsent } from 'ndpr-toolkit';
97
+ import { ConsentBanner, ConsentManager, ConsentStorage, useConsent } from '@tantainnovative/ndpr-toolkit';
43
98
 
44
99
  function MyApp() {
45
100
  return (
@@ -93,7 +148,7 @@ function AppContent() {
93
148
  ### Privacy Policy Generator
94
149
 
95
150
  ```jsx
96
- import { PolicyGenerator, PolicyPreview, PolicyExporter, usePrivacyPolicy } from 'ndpr-toolkit';
151
+ import { PolicyGenerator, PolicyPreview, PolicyExporter, usePrivacyPolicy } from '@tantainnovative/ndpr-toolkit';
97
152
 
98
153
  function PrivacyPolicyPage() {
99
154
  const { policy, updateVariableValue, generatePolicy } = usePrivacyPolicy();
@@ -258,7 +313,7 @@ function AnalyticsComponent() {
258
313
  ### Implementing a Data Subject Rights Portal
259
314
 
260
315
  ```jsx
261
- import { DSRRequestForm, useDSR } from 'ndpr-toolkit';
316
+ import { DSRRequestForm, DSRTracker, DSRDashboard, useDSR } from '@tantainnovative/ndpr-toolkit';
262
317
 
263
318
  // 1. Create a form for data subjects to submit requests
264
319
  function DSRPortal() {
@@ -295,7 +350,7 @@ function DSRPortal() {
295
350
  }
296
351
 
297
352
  // 2. Create an admin dashboard for managing requests
298
- import { DSRDashboard } from 'ndpr-toolkit';
353
+ import { DSRDashboard } from '@tantainnovative/ndpr-toolkit';
299
354
 
300
355
  function AdminDashboard() {
301
356
  const { requests, updateRequest, deleteRequest } = useDSR();
@@ -313,7 +368,7 @@ function AdminDashboard() {
313
368
  ### Setting Up a Breach Notification System
314
369
 
315
370
  ```jsx
316
- import { BreachReportForm, BreachRiskAssessment, useBreach } from 'ndpr-toolkit';
371
+ import { BreachReportForm, BreachRiskAssessment, RegulatoryReportGenerator, useBreach } from '@tantainnovative/ndpr-toolkit';
317
372
 
318
373
  // 1. Create a form for reporting breaches
319
374
  function BreachReporting() {
package/dist/index.d.ts CHANGED
@@ -14,7 +14,7 @@ export { BreachReportForm } from './components/breach/BreachReportForm';
14
14
  export { BreachRiskAssessment } from './components/breach/BreachRiskAssessment';
15
15
  export { BreachNotificationManager } from './components/breach/BreachNotificationManager';
16
16
  export { RegulatoryReportGenerator } from './components/breach/RegulatoryReportGenerator';
17
- export type { BreachReport, RiskAssessment, NotificationRequirement } from './types/breach';
17
+ export type { BreachReport, RiskAssessment, NotificationRequirement, RegulatoryNotification } from './types/breach';
18
18
  export { PolicyGenerator } from './components/policy/PolicyGenerator';
19
19
  export { PolicyPreview } from './components/policy/PolicyPreview';
20
20
  export { PolicyExporter } from './components/policy/PolicyExporter';