@tantainnovative/ndpr-toolkit 1.0.5 → 1.0.7
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 +88 -14
- package/dist/components/breach-notification/BreachNotificationForm.d.ts +18 -0
- package/dist/components/breach-notification/BreachNotificationForm.d.ts.map +1 -0
- package/dist/components/consent/ConsentBanner.d.ts +30 -0
- package/dist/components/consent/ConsentBanner.d.ts.map +1 -0
- package/dist/components/consent/ConsentManager.d.ts +51 -0
- package/dist/components/consent/ConsentManager.d.ts.map +1 -0
- package/dist/components/consent/ConsentSettings.d.ts +15 -0
- package/dist/components/consent/ConsentSettings.d.ts.map +1 -0
- package/dist/components/consent/unstyled/UnstyledConsentBanner.d.ts +7 -0
- package/dist/components/consent/unstyled/UnstyledConsentBanner.d.ts.map +1 -0
- package/dist/components/consent/unstyled/UnstyledConsentSettings.d.ts +7 -0
- package/dist/components/consent/unstyled/UnstyledConsentSettings.d.ts.map +1 -0
- package/dist/components/consent/unstyled/UnstyledConsentToggle.d.ts +8 -0
- package/dist/components/consent/unstyled/UnstyledConsentToggle.d.ts.map +1 -0
- package/dist/components/consent/unstyled/index.d.ts +4 -0
- package/dist/components/consent/unstyled/index.d.ts.map +1 -0
- package/dist/components/data-subject-rights/DataSubjectRequestForm.d.ts +14 -0
- package/dist/components/data-subject-rights/DataSubjectRequestForm.d.ts.map +1 -0
- package/dist/components/docs/DocLayout.d.ts +9 -0
- package/dist/components/docs/DocLayout.d.ts.map +1 -0
- package/dist/components/docs/index.d.ts +2 -0
- package/dist/components/docs/index.d.ts.map +1 -0
- package/dist/components/dpia/DPIAQuestionnaire.d.ts +9 -0
- package/dist/components/dpia/DPIAQuestionnaire.d.ts.map +1 -0
- package/dist/components/privacy-policy/PolicyGenerator.d.ts +12 -0
- package/dist/components/privacy-policy/PolicyGenerator.d.ts.map +1 -0
- package/dist/components/privacy-policy/data.d.ts +8 -0
- package/dist/components/privacy-policy/data.d.ts.map +1 -0
- package/dist/components/privacy-policy/shared/CheckboxField.d.ts +13 -0
- package/dist/components/privacy-policy/shared/CheckboxField.d.ts.map +1 -0
- package/dist/components/privacy-policy/shared/CheckboxGroup.d.ts +13 -0
- package/dist/components/privacy-policy/shared/CheckboxGroup.d.ts.map +1 -0
- package/dist/components/privacy-policy/shared/FormField.d.ts +13 -0
- package/dist/components/privacy-policy/shared/FormField.d.ts.map +1 -0
- package/dist/components/privacy-policy/shared/StepIndicator.d.ts +8 -0
- package/dist/components/privacy-policy/shared/StepIndicator.d.ts.map +1 -0
- package/dist/components/privacy-policy/steps/CustomSectionsStep.d.ts +15 -0
- package/dist/components/privacy-policy/steps/CustomSectionsStep.d.ts.map +1 -0
- package/dist/components/privacy-policy/steps/DataCollectionStep.d.ts +20 -0
- package/dist/components/privacy-policy/steps/DataCollectionStep.d.ts.map +1 -0
- package/dist/components/privacy-policy/steps/DataSharingStep.d.ts +34 -0
- package/dist/components/privacy-policy/steps/DataSharingStep.d.ts.map +1 -0
- package/dist/components/privacy-policy/steps/OrganizationInfoStep.d.ts +17 -0
- package/dist/components/privacy-policy/steps/OrganizationInfoStep.d.ts.map +1 -0
- package/dist/components/privacy-policy/steps/PolicyPreviewStep.d.ts +30 -0
- package/dist/components/privacy-policy/steps/PolicyPreviewStep.d.ts.map +1 -0
- package/dist/components/ui/Badge.d.ts +10 -0
- package/dist/components/ui/Badge.d.ts.map +1 -0
- package/dist/components/ui/Button.d.ts +11 -0
- package/dist/components/ui/Button.d.ts.map +1 -0
- package/dist/components/ui/Card.d.ts +10 -0
- package/dist/components/ui/Card.d.ts.map +1 -0
- package/dist/components/ui/Checkbox.d.ts +8 -0
- package/dist/components/ui/Checkbox.d.ts.map +1 -0
- package/dist/components/ui/FormField.d.ts +11 -0
- package/dist/components/ui/FormField.d.ts.map +1 -0
- package/dist/components/ui/Input.d.ts +6 -0
- package/dist/components/ui/Input.d.ts.map +1 -0
- package/dist/components/ui/Select.d.ts +6 -0
- package/dist/components/ui/Select.d.ts.map +1 -0
- package/dist/components/ui/TextArea.d.ts +6 -0
- package/dist/components/ui/TextArea.d.ts.map +1 -0
- package/dist/components/ui/dialog.d.ts +18 -0
- package/dist/components/ui/dialog.d.ts.map +1 -0
- package/dist/components/ui/label.d.ts +5 -0
- package/dist/components/ui/label.d.ts.map +1 -0
- package/dist/components/ui/switch.d.ts +5 -0
- package/dist/components/ui/switch.d.ts.map +1 -0
- package/dist/components/ui/tabs.d.ts +8 -0
- package/dist/components/ui/tabs.d.ts.map +1 -0
- package/dist/contexts/ConsentContext.d.ts +35 -0
- package/dist/contexts/ConsentContext.d.ts.map +1 -0
- package/dist/contexts/GenericConsentContext.d.ts +11 -0
- package/dist/contexts/GenericConsentContext.d.ts.map +1 -0
- package/dist/hooks/useConsent.d.ts +12 -0
- package/dist/hooks/useConsent.d.ts.map +1 -0
- package/dist/hooks/useConsentActions.d.ts +12 -0
- package/dist/hooks/useConsentActions.d.ts.map +1 -0
- package/dist/hooks/useConsentManager.d.ts +14 -0
- package/dist/hooks/useConsentManager.d.ts.map +1 -0
- package/dist/hooks/useConsentState.d.ts +10 -0
- package/dist/hooks/useConsentState.d.ts.map +1 -0
- package/dist/index.d.mts +256 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +2 -0
- package/dist/index.mjs.map +1 -0
- package/dist/lib/consentService.d.ts +11 -0
- package/dist/lib/consentService.d.ts.map +1 -0
- package/dist/lib/dpiaQuestions.d.ts +3 -0
- package/dist/lib/dpiaQuestions.d.ts.map +1 -0
- package/dist/lib/requestService.d.ts +10 -0
- package/dist/lib/requestService.d.ts.map +1 -0
- package/dist/lib/utils.d.ts +3 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/styles.css +38 -0
- package/dist/types/consent.d.ts +57 -0
- package/dist/types/consent.d.ts.map +1 -0
- package/dist/types/index.d.ts +91 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/unstyled.d.mts +22 -0
- package/dist/unstyled.d.ts +2 -0
- package/dist/unstyled.d.ts.map +1 -0
- package/dist/unstyled.js +2 -0
- package/dist/unstyled.js.map +1 -0
- package/dist/unstyled.mjs +2 -0
- package/dist/unstyled.mjs.map +1 -0
- package/package.json +33 -5
- package/CHANGELOG.md +0 -16
- package/CNAME +0 -1
- package/CONTRIBUTING.md +0 -87
- package/RELEASE-NOTES-v1.0.0.md +0 -140
- package/RELEASE-NOTES-v1.0.1.md +0 -69
- package/SECURITY.md +0 -21
- package/components.json +0 -21
- package/eslint.config.mjs +0 -16
- package/next-env.d.ts +0 -5
- package/next.config.js +0 -15
- package/next.config.ts +0 -62
- package/packages/ndpr-toolkit/README.md +0 -467
- package/packages/ndpr-toolkit/dist/components/breach/BreachNotificationManager.d.ts +0 -62
- package/packages/ndpr-toolkit/dist/components/breach/BreachReportForm.d.ts +0 -66
- package/packages/ndpr-toolkit/dist/components/breach/BreachRiskAssessment.d.ts +0 -50
- package/packages/ndpr-toolkit/dist/components/breach/RegulatoryReportGenerator.d.ts +0 -94
- package/packages/ndpr-toolkit/dist/components/consent/ConsentBanner.d.ts +0 -79
- package/packages/ndpr-toolkit/dist/components/consent/ConsentManager.d.ts +0 -73
- package/packages/ndpr-toolkit/dist/components/consent/ConsentStorage.d.ts +0 -41
- package/packages/ndpr-toolkit/dist/components/dpia/DPIAQuestionnaire.d.ts +0 -70
- package/packages/ndpr-toolkit/dist/components/dpia/DPIAReport.d.ts +0 -40
- package/packages/ndpr-toolkit/dist/components/dpia/StepIndicator.d.ts +0 -64
- package/packages/ndpr-toolkit/dist/components/dsr/DSRDashboard.d.ts +0 -58
- package/packages/ndpr-toolkit/dist/components/dsr/DSRRequestForm.d.ts +0 -74
- package/packages/ndpr-toolkit/dist/components/dsr/DSRTracker.d.ts +0 -56
- package/packages/ndpr-toolkit/dist/components/policy/PolicyExporter.d.ts +0 -65
- package/packages/ndpr-toolkit/dist/components/policy/PolicyGenerator.d.ts +0 -54
- package/packages/ndpr-toolkit/dist/components/policy/PolicyPreview.d.ts +0 -71
- package/packages/ndpr-toolkit/dist/hooks/useBreach.d.ts +0 -97
- package/packages/ndpr-toolkit/dist/hooks/useConsent.d.ts +0 -63
- package/packages/ndpr-toolkit/dist/hooks/useDPIA.d.ts +0 -92
- package/packages/ndpr-toolkit/dist/hooks/useDSR.d.ts +0 -72
- package/packages/ndpr-toolkit/dist/hooks/usePrivacyPolicy.d.ts +0 -87
- package/packages/ndpr-toolkit/dist/index.d.ts +0 -31
- package/packages/ndpr-toolkit/dist/index.esm.js +0 -2
- package/packages/ndpr-toolkit/dist/index.esm.js.map +0 -1
- package/packages/ndpr-toolkit/dist/index.js +0 -2
- package/packages/ndpr-toolkit/dist/index.js.map +0 -1
- package/packages/ndpr-toolkit/dist/setupTests.d.ts +0 -2
- package/packages/ndpr-toolkit/dist/types/breach.d.ts +0 -239
- package/packages/ndpr-toolkit/dist/types/consent.d.ts +0 -95
- package/packages/ndpr-toolkit/dist/types/dpia.d.ts +0 -196
- package/packages/ndpr-toolkit/dist/types/dsr.d.ts +0 -162
- package/packages/ndpr-toolkit/dist/types/privacy.d.ts +0 -204
- package/packages/ndpr-toolkit/dist/utils/breach.d.ts +0 -14
- package/packages/ndpr-toolkit/dist/utils/consent.d.ts +0 -10
- package/packages/ndpr-toolkit/dist/utils/dpia.d.ts +0 -12
- package/packages/ndpr-toolkit/dist/utils/dsr.d.ts +0 -11
- package/packages/ndpr-toolkit/dist/utils/privacy.d.ts +0 -12
- package/packages/ndpr-toolkit/package-lock.json +0 -8197
- package/packages/ndpr-toolkit/package.json +0 -71
- package/packages/ndpr-toolkit/rollup.config.js +0 -34
- package/packages/ndpr-toolkit/src/components/breach/BreachNotificationManager.tsx +0 -701
- package/packages/ndpr-toolkit/src/components/breach/BreachReportForm.tsx +0 -631
- package/packages/ndpr-toolkit/src/components/breach/BreachRiskAssessment.tsx +0 -569
- package/packages/ndpr-toolkit/src/components/breach/RegulatoryReportGenerator.tsx +0 -496
- package/packages/ndpr-toolkit/src/components/consent/ConsentBanner.tsx +0 -270
- package/packages/ndpr-toolkit/src/components/consent/ConsentManager.tsx +0 -217
- package/packages/ndpr-toolkit/src/components/consent/ConsentStorage.tsx +0 -206
- package/packages/ndpr-toolkit/src/components/dpia/DPIAQuestionnaire.tsx +0 -342
- package/packages/ndpr-toolkit/src/components/dpia/DPIAReport.tsx +0 -373
- package/packages/ndpr-toolkit/src/components/dpia/StepIndicator.tsx +0 -174
- package/packages/ndpr-toolkit/src/components/dsr/DSRDashboard.tsx +0 -717
- package/packages/ndpr-toolkit/src/components/dsr/DSRRequestForm.tsx +0 -476
- package/packages/ndpr-toolkit/src/components/dsr/DSRTracker.tsx +0 -620
- package/packages/ndpr-toolkit/src/components/policy/PolicyExporter.tsx +0 -541
- package/packages/ndpr-toolkit/src/components/policy/PolicyGenerator.tsx +0 -454
- package/packages/ndpr-toolkit/src/components/policy/PolicyPreview.tsx +0 -333
- package/packages/ndpr-toolkit/src/hooks/useBreach.ts +0 -409
- package/packages/ndpr-toolkit/src/hooks/useConsent.ts +0 -263
- package/packages/ndpr-toolkit/src/hooks/useDPIA.ts +0 -457
- package/packages/ndpr-toolkit/src/hooks/useDSR.ts +0 -236
- package/packages/ndpr-toolkit/src/hooks/usePrivacyPolicy.ts +0 -428
- package/packages/ndpr-toolkit/src/index.ts +0 -44
- package/packages/ndpr-toolkit/src/setupTests.ts +0 -5
- package/packages/ndpr-toolkit/src/types/breach.ts +0 -283
- package/packages/ndpr-toolkit/src/types/consent.ts +0 -111
- package/packages/ndpr-toolkit/src/types/dpia.ts +0 -236
- package/packages/ndpr-toolkit/src/types/dsr.ts +0 -192
- package/packages/ndpr-toolkit/src/types/index.ts +0 -42
- package/packages/ndpr-toolkit/src/types/privacy.ts +0 -246
- package/packages/ndpr-toolkit/src/utils/breach.ts +0 -122
- package/packages/ndpr-toolkit/src/utils/consent.ts +0 -51
- package/packages/ndpr-toolkit/src/utils/dpia.ts +0 -104
- package/packages/ndpr-toolkit/src/utils/dsr.ts +0 -77
- package/packages/ndpr-toolkit/src/utils/privacy.ts +0 -100
- package/packages/ndpr-toolkit/tsconfig.json +0 -23
- package/postcss.config.mjs +0 -5
- package/public/NDPR TOOLKIT.svg +0 -1
- package/public/favicon/android-chrome-192x192.png +0 -0
- package/public/favicon/android-chrome-512x512.png +0 -0
- package/public/favicon/apple-touch-icon.png +0 -0
- package/public/favicon/favicon-16x16.png +0 -0
- package/public/favicon/favicon-32x32.png +0 -0
- package/public/favicon/site.webmanifest +0 -1
- package/public/file.svg +0 -1
- package/public/globe.svg +0 -1
- package/public/ndpr-toolkit-logo.svg +0 -108
- package/public/next.svg +0 -1
- package/public/vercel.svg +0 -1
- package/public/window.svg +0 -1
- package/src/app/accessibility.css +0 -70
- package/src/app/favicon.ico +0 -0
- package/src/app/globals.css +0 -123
- package/src/app/layout.tsx +0 -37
- package/src/app/ndpr-demos/breach/page.tsx +0 -354
- package/src/app/ndpr-demos/consent/page.tsx +0 -366
- package/src/app/ndpr-demos/dpia/page.tsx +0 -495
- package/src/app/ndpr-demos/dsr/page.tsx +0 -280
- package/src/app/ndpr-demos/page.tsx +0 -73
- package/src/app/ndpr-demos/policy/page.tsx +0 -771
- package/src/app/page.tsx +0 -452
- package/src/components/ErrorBoundary.tsx +0 -90
- package/src/components/breach-notification/BreachNotificationForm.tsx +0 -479
- package/src/components/consent/ConsentBanner.tsx +0 -193
- package/src/components/data-subject-rights/DataSubjectRequestForm.tsx +0 -530
- package/src/components/dpia/DPIAQuestionnaire.tsx +0 -523
- package/src/components/privacy-policy/PolicyGenerator.tsx +0 -1062
- package/src/components/privacy-policy/data.ts +0 -98
- package/src/components/privacy-policy/shared/CheckboxField.tsx +0 -38
- package/src/components/privacy-policy/shared/CheckboxGroup.tsx +0 -85
- package/src/components/privacy-policy/shared/FormField.tsx +0 -79
- package/src/components/privacy-policy/shared/StepIndicator.tsx +0 -86
- package/src/components/privacy-policy/steps/CustomSectionsStep.tsx +0 -361
- package/src/components/privacy-policy/steps/DataCollectionStep.tsx +0 -231
- package/src/components/privacy-policy/steps/DataSharingStep.tsx +0 -418
- package/src/components/privacy-policy/steps/OrganizationInfoStep.tsx +0 -202
- package/src/components/privacy-policy/steps/PolicyPreviewStep.tsx +0 -226
- package/src/components/ui/Badge.tsx +0 -46
- package/src/components/ui/Button.tsx +0 -59
- package/src/components/ui/Card.tsx +0 -92
- package/src/components/ui/Checkbox.tsx +0 -57
- package/src/components/ui/FormField.tsx +0 -50
- package/src/components/ui/Input.tsx +0 -38
- package/src/components/ui/Loading.tsx +0 -201
- package/src/components/ui/Select.tsx +0 -42
- package/src/components/ui/TextArea.tsx +0 -38
- package/src/components/ui/label.tsx +0 -24
- package/src/components/ui/switch.tsx +0 -31
- package/src/components/ui/tabs.tsx +0 -66
- package/src/hooks/useConsent.ts +0 -70
- package/src/hooks/useLoadingState.ts +0 -85
- package/src/lib/consentService.ts +0 -144
- package/src/lib/dpiaQuestions.ts +0 -188
- package/src/lib/requestService.ts +0 -79
- package/src/lib/sanitize.ts +0 -108
- package/src/lib/storage.ts +0 -222
- package/src/lib/utils.ts +0 -6
- package/src/types/html-to-docx.d.ts +0 -30
- package/src/types/index.ts +0 -77
- package/tailwind.config.ts +0 -65
- package/tsconfig.json +0 -41
package/README.md
CHANGED
|
@@ -1,7 +1,20 @@
|
|
|
1
1
|
# Nigerian Data Protection Compliance Toolkit (NDPR-Toolkit)
|
|
2
2
|
|
|
3
|
+
[](https://www.npmjs.com/package/@tantainnovative/ndpr-toolkit)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
|
|
3
6
|
An open-source toolkit that helps Nigerian developers implement Nigeria Data Protection Regulation (NDPR) and Data Protection Act (DPA) compliant features in their web applications.
|
|
4
7
|
|
|
8
|
+
## Installation
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
npm install @tantainnovative/ndpr-toolkit
|
|
12
|
+
# or
|
|
13
|
+
yarn add @tantainnovative/ndpr-toolkit
|
|
14
|
+
# or
|
|
15
|
+
pnpm add @tantainnovative/ndpr-toolkit
|
|
16
|
+
```
|
|
17
|
+
|
|
5
18
|
## Project Vision
|
|
6
19
|
|
|
7
20
|
This toolkit simplifies regulatory compliance for startups and businesses operating in Nigeria by providing ready-to-use components and tools for implementing data protection requirements.
|
|
@@ -9,11 +22,43 @@ This toolkit simplifies regulatory compliance for startups and businesses operat
|
|
|
9
22
|
## Key Components
|
|
10
23
|
|
|
11
24
|
### 1. Consent Management System
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
-
|
|
25
|
+
|
|
26
|
+
**New in v1.0.7:** Complete flexibility with headless mode, custom UI support, and event-driven architecture.
|
|
27
|
+
|
|
28
|
+
#### Features:
|
|
29
|
+
- **Flexible Implementation**: Use pre-built UI, headless mode, or hybrid approach
|
|
30
|
+
- **Full Customization**: Override any component or behavior
|
|
31
|
+
- **Event-Driven**: Subscribe to consent changes with event listeners
|
|
32
|
+
- **TypeScript Support**: Fully typed with generic support for custom categories
|
|
33
|
+
- **Granular Consent**: Analytics, marketing, functional, and custom categories
|
|
34
|
+
- **Audit Trail**: Time-stamped consent history tracking
|
|
35
|
+
|
|
36
|
+
#### Quick Start:
|
|
37
|
+
|
|
38
|
+
```tsx
|
|
39
|
+
import { ConsentManager } from '@tantainnovative/ndpr-toolkit';
|
|
40
|
+
|
|
41
|
+
// Basic usage with pre-built UI
|
|
42
|
+
function App() {
|
|
43
|
+
return (
|
|
44
|
+
<ConsentManager>
|
|
45
|
+
{/* Your app content */}
|
|
46
|
+
</ConsentManager>
|
|
47
|
+
);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
// Headless mode with custom UI
|
|
51
|
+
function HeadlessApp() {
|
|
52
|
+
return (
|
|
53
|
+
<ConsentManager headless>
|
|
54
|
+
<YourCustomBanner />
|
|
55
|
+
<YourCustomSettings />
|
|
56
|
+
</ConsentManager>
|
|
57
|
+
);
|
|
58
|
+
}
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
[See full consent management documentation](./docs/CONSENT_MANAGEMENT.md)
|
|
17
62
|
|
|
18
63
|
### 2. Data Subject Rights Portal
|
|
19
64
|
- Pre-built UI components for handling:
|
|
@@ -46,21 +91,50 @@ This toolkit simplifies regulatory compliance for startups and businesses operat
|
|
|
46
91
|
- Lightweight requestService storing requests in browser localStorage for demos
|
|
47
92
|
- Helper methods to update request status and retrieve history
|
|
48
93
|
|
|
49
|
-
##
|
|
94
|
+
## Quick Start
|
|
95
|
+
|
|
96
|
+
### Using the Toolkit in Your Project
|
|
97
|
+
|
|
98
|
+
```tsx
|
|
99
|
+
import { ConsentManager, useConsent } from '@tantainnovative/ndpr-toolkit';
|
|
100
|
+
|
|
101
|
+
function App() {
|
|
102
|
+
return (
|
|
103
|
+
<ConsentManager onConsentChange={(consent) => console.log('Consent updated:', consent)}>
|
|
104
|
+
<YourApp />
|
|
105
|
+
</ConsentManager>
|
|
106
|
+
);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
function YourApp() {
|
|
110
|
+
const { consentState, openSettings } = useConsent();
|
|
111
|
+
|
|
112
|
+
return (
|
|
113
|
+
<div>
|
|
114
|
+
{consentState.analytics && <AnalyticsScript />}
|
|
115
|
+
<button onClick={openSettings}>Manage Cookies</button>
|
|
116
|
+
</div>
|
|
117
|
+
);
|
|
118
|
+
}
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### Development
|
|
50
122
|
|
|
51
|
-
|
|
123
|
+
To contribute or run the demo locally:
|
|
52
124
|
|
|
53
125
|
```bash
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
126
|
+
# Clone the repository
|
|
127
|
+
git clone https://github.com/tantainnovative/ndpr-toolkit.git
|
|
128
|
+
cd ndpr-toolkit
|
|
129
|
+
|
|
130
|
+
# Install dependencies
|
|
131
|
+
pnpm install
|
|
132
|
+
|
|
133
|
+
# Run development server
|
|
58
134
|
pnpm dev
|
|
59
|
-
# or
|
|
60
|
-
bun dev
|
|
61
135
|
```
|
|
62
136
|
|
|
63
|
-
Open [http://localhost:3000](http://localhost:3000)
|
|
137
|
+
Open [http://localhost:3000](http://localhost:3000) to see the demo.
|
|
64
138
|
|
|
65
139
|
## Deployment
|
|
66
140
|
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { BreachSeverity } from '@/types';
|
|
2
|
+
interface BreachNotificationFormProps {
|
|
3
|
+
onSubmit: (data: {
|
|
4
|
+
title: string;
|
|
5
|
+
description: string;
|
|
6
|
+
discoveryDate: string;
|
|
7
|
+
affectedDataSubjects: number;
|
|
8
|
+
dataCategories: string[];
|
|
9
|
+
severity: BreachSeverity;
|
|
10
|
+
mitigationSteps: string[];
|
|
11
|
+
reportedToAuthorities: boolean;
|
|
12
|
+
reportedToDataSubjects: boolean;
|
|
13
|
+
}) => void;
|
|
14
|
+
className?: string;
|
|
15
|
+
}
|
|
16
|
+
export default function BreachNotificationForm({ onSubmit, className, }: BreachNotificationFormProps): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=BreachNotificationForm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BreachNotificationForm.d.ts","sourceRoot":"","sources":["../../../src/components/breach-notification/BreachNotificationForm.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAOzC,UAAU,2BAA2B;IACnC,QAAQ,EAAE,CAAC,IAAI,EAAE;QACf,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;QACtB,oBAAoB,EAAE,MAAM,CAAC;QAC7B,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,QAAQ,EAAE,cAAc,CAAC;QACzB,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1B,qBAAqB,EAAE,OAAO,CAAC;QAC/B,sBAAsB,EAAE,OAAO,CAAC;KACjC,KAAK,IAAI,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,EAC7C,QAAQ,EACR,SAAc,GACf,EAAE,2BAA2B,2CAkc7B"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
import { BannerProps } from './ConsentManager';
|
|
3
|
+
export interface ConsentBannerProps {
|
|
4
|
+
renderBanner?: (props: BannerProps) => ReactNode;
|
|
5
|
+
theme?: {
|
|
6
|
+
primaryColor?: string;
|
|
7
|
+
textColor?: string;
|
|
8
|
+
backgroundColor?: string;
|
|
9
|
+
};
|
|
10
|
+
position?: 'top' | 'bottom' | 'center';
|
|
11
|
+
animation?: 'slide' | 'fade' | 'none';
|
|
12
|
+
fullWidth?: boolean;
|
|
13
|
+
maxWidth?: string;
|
|
14
|
+
unstyled?: boolean;
|
|
15
|
+
className?: string;
|
|
16
|
+
children?: ReactNode;
|
|
17
|
+
}
|
|
18
|
+
interface ConsentBannerComponent extends React.FC<ConsentBannerProps> {
|
|
19
|
+
Message: React.FC<{
|
|
20
|
+
children: ReactNode;
|
|
21
|
+
className?: string;
|
|
22
|
+
}>;
|
|
23
|
+
Actions: React.FC<{
|
|
24
|
+
children: ReactNode;
|
|
25
|
+
className?: string;
|
|
26
|
+
}>;
|
|
27
|
+
}
|
|
28
|
+
declare const ConsentBanner: ConsentBannerComponent;
|
|
29
|
+
export { ConsentBanner };
|
|
30
|
+
//# sourceMappingURL=ConsentBanner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConsentBanner.d.ts","sourceRoot":"","sources":["../../../src/components/consent/ConsentBanner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,WAAW,kBAAkB;IACjC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,SAAS,CAAC;IACjD,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACvC,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,UAAU,sBAAuB,SAAQ,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC;IACnE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;QAAE,QAAQ,EAAE,SAAS,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/D,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;QAAE,QAAQ,EAAE,SAAS,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAChE;AAED,QAAA,MAAM,aAAa,EAAE,sBAmGpB,CAAC;AAWF,OAAO,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
import { ConsentProviderProps, ConsentCategories, ConsentActions } from '@/contexts/ConsentContext';
|
|
3
|
+
import { ConsentBanner } from './ConsentBanner';
|
|
4
|
+
import { ConsentSettings } from './ConsentSettings';
|
|
5
|
+
export interface BannerProps {
|
|
6
|
+
onAcceptAll: () => void;
|
|
7
|
+
onRejectAll: () => void;
|
|
8
|
+
onOpenSettings: () => void;
|
|
9
|
+
}
|
|
10
|
+
export interface SettingsProps {
|
|
11
|
+
consentState: ConsentCategories;
|
|
12
|
+
onUpdateConsent: (category: keyof ConsentCategories, value: boolean) => void;
|
|
13
|
+
onSave: () => void;
|
|
14
|
+
onClose: () => void;
|
|
15
|
+
}
|
|
16
|
+
export interface RenderProps {
|
|
17
|
+
consents: ConsentCategories;
|
|
18
|
+
actions: ConsentActions;
|
|
19
|
+
ui: {
|
|
20
|
+
showBanner: boolean;
|
|
21
|
+
showSettings: boolean;
|
|
22
|
+
openSettings: () => void;
|
|
23
|
+
closeSettings: () => void;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
export interface ConsentManagerProps extends Omit<ConsentProviderProps, 'children'> {
|
|
27
|
+
children?: ReactNode | ((props: RenderProps) => ReactNode);
|
|
28
|
+
headless?: boolean;
|
|
29
|
+
renderBanner?: (props: BannerProps) => ReactNode;
|
|
30
|
+
renderSettings?: (props: SettingsProps) => ReactNode;
|
|
31
|
+
components?: {
|
|
32
|
+
Banner?: React.ComponentType<any>;
|
|
33
|
+
Settings?: React.ComponentType<any>;
|
|
34
|
+
};
|
|
35
|
+
theme?: {
|
|
36
|
+
primaryColor?: string;
|
|
37
|
+
textColor?: string;
|
|
38
|
+
backgroundColor?: string;
|
|
39
|
+
};
|
|
40
|
+
position?: 'top' | 'bottom' | 'center';
|
|
41
|
+
animation?: 'slide' | 'fade' | 'none';
|
|
42
|
+
fullWidth?: boolean;
|
|
43
|
+
maxWidth?: string;
|
|
44
|
+
}
|
|
45
|
+
interface ConsentManagerComponent extends React.FC<ConsentManagerProps> {
|
|
46
|
+
Banner: typeof ConsentBanner;
|
|
47
|
+
Settings: typeof ConsentSettings;
|
|
48
|
+
}
|
|
49
|
+
declare const ConsentManager: ConsentManagerComponent;
|
|
50
|
+
export { ConsentManager };
|
|
51
|
+
//# sourceMappingURL=ConsentManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConsentManager.d.ts","sourceRoot":"","sources":["../../../src/components/consent/ConsentManager.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAmB,oBAAoB,EAAE,iBAAiB,EAAE,cAAc,EAAc,MAAM,2BAA2B,CAAC;AACjI,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,cAAc,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,iBAAiB,CAAC;IAChC,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,iBAAiB,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7E,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,OAAO,EAAE,cAAc,CAAC;IACxB,EAAE,EAAE;QACF,UAAU,EAAE,OAAO,CAAC;QACpB,YAAY,EAAE,OAAO,CAAC;QACtB,YAAY,EAAE,MAAM,IAAI,CAAC;QACzB,aAAa,EAAE,MAAM,IAAI,CAAC;KAC3B,CAAC;CACH;AAED,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,oBAAoB,EAAE,UAAU,CAAC;IACjF,QAAQ,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,KAAK,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,SAAS,CAAC;IACjD,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,SAAS,CAAC;IACrD,UAAU,CAAC,EAAE;QACX,MAAM,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;KACrC,CAAC;IACF,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACvC,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,uBAAwB,SAAQ,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAAC;IACrE,MAAM,EAAE,OAAO,aAAa,CAAC;IAC7B,QAAQ,EAAE,OAAO,eAAe,CAAC;CAClC;AAsED,QAAA,MAAM,cAAc,EAAE,uBAkBrB,CAAC;AAMF,OAAO,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
import { SettingsProps } from './ConsentManager';
|
|
3
|
+
export interface ConsentSettingsProps {
|
|
4
|
+
renderSettings?: (props: SettingsProps) => ReactNode;
|
|
5
|
+
theme?: {
|
|
6
|
+
primaryColor?: string;
|
|
7
|
+
textColor?: string;
|
|
8
|
+
backgroundColor?: string;
|
|
9
|
+
};
|
|
10
|
+
unstyled?: boolean;
|
|
11
|
+
className?: string;
|
|
12
|
+
children?: ReactNode;
|
|
13
|
+
}
|
|
14
|
+
export declare const ConsentSettings: React.FC<ConsentSettingsProps>;
|
|
15
|
+
//# sourceMappingURL=ConsentSettings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConsentSettings.d.ts","sourceRoot":"","sources":["../../../src/components/consent/ConsentSettings.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKzC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,WAAW,oBAAoB;IACnC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,SAAS,CAAC;IACrD,KAAK,CAAC,EAAE;QACN,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AA6BD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAiF1D,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
export interface UnstyledConsentBannerProps {
|
|
3
|
+
className?: string;
|
|
4
|
+
children?: ReactNode;
|
|
5
|
+
}
|
|
6
|
+
export declare const UnstyledConsentBanner: React.FC<UnstyledConsentBannerProps>;
|
|
7
|
+
//# sourceMappingURL=UnstyledConsentBanner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UnstyledConsentBanner.d.ts","sourceRoot":"","sources":["../../../../src/components/consent/unstyled/UnstyledConsentBanner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGzC,MAAM,WAAW,0BAA0B;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CA+BtE,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
export interface UnstyledConsentSettingsProps {
|
|
3
|
+
className?: string;
|
|
4
|
+
children?: ReactNode;
|
|
5
|
+
}
|
|
6
|
+
export declare const UnstyledConsentSettings: React.FC<UnstyledConsentSettingsProps>;
|
|
7
|
+
//# sourceMappingURL=UnstyledConsentSettings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UnstyledConsentSettings.d.ts","sourceRoot":"","sources":["../../../../src/components/consent/unstyled/UnstyledConsentSettings.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGzC,MAAM,WAAW,4BAA4B;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AA6BD,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,4BAA4B,CAmD1E,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface UnstyledConsentToggleProps {
|
|
3
|
+
category: 'analytics' | 'marketing' | 'functional';
|
|
4
|
+
className?: string;
|
|
5
|
+
label?: string;
|
|
6
|
+
}
|
|
7
|
+
export declare const UnstyledConsentToggle: React.FC<UnstyledConsentToggleProps>;
|
|
8
|
+
//# sourceMappingURL=UnstyledConsentToggle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UnstyledConsentToggle.d.ts","sourceRoot":"","sources":["../../../../src/components/consent/unstyled/UnstyledConsentToggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,WAAW,GAAG,WAAW,GAAG,YAAY,CAAC;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CAkBtE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/consent/unstyled/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { RequestType } from '@/types';
|
|
2
|
+
interface DataSubjectRequestFormProps {
|
|
3
|
+
onSubmit: (data: {
|
|
4
|
+
requestType: RequestType;
|
|
5
|
+
name: string;
|
|
6
|
+
email: string;
|
|
7
|
+
details: string;
|
|
8
|
+
consent: boolean;
|
|
9
|
+
}) => void;
|
|
10
|
+
className?: string;
|
|
11
|
+
}
|
|
12
|
+
export default function DataSubjectRequestForm({ onSubmit, className, }: DataSubjectRequestFormProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=DataSubjectRequestForm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataSubjectRequestForm.d.ts","sourceRoot":"","sources":["../../../src/components/data-subject-rights/DataSubjectRequestForm.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AA0DtC,UAAU,2BAA2B;IACnC,QAAQ,EAAE,CAAC,IAAI,EAAE;QACf,WAAW,EAAE,WAAW,CAAC;QACzB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,OAAO,CAAC;KAClB,KAAK,IAAI,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,EAC7C,QAAQ,EACR,SAAc,GACf,EAAE,2BAA2B,2CA+V7B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
type DocLayoutProps = {
|
|
3
|
+
children: React.ReactNode;
|
|
4
|
+
title: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
};
|
|
7
|
+
export declare function DocLayout({ children, title, description }: DocLayoutProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=DocLayout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocLayout.d.ts","sourceRoot":"","sources":["../../../src/components/docs/DocLayout.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAYxC,KAAK,cAAc,GAAG;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAuDF,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,cAAc,2CAuNzE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/docs/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { RiskAssessmentQuestion } from '@/types';
|
|
2
|
+
interface DPIAQuestionnaireProps {
|
|
3
|
+
questions: RiskAssessmentQuestion[];
|
|
4
|
+
onSubmit: (answers: Record<string, number>, projectName: string) => void;
|
|
5
|
+
className?: string;
|
|
6
|
+
}
|
|
7
|
+
export default function DPIAQuestionnaire({ questions, onSubmit, className, }: DPIAQuestionnaireProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=DPIAQuestionnaire.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DPIAQuestionnaire.d.ts","sourceRoot":"","sources":["../../../src/components/dpia/DPIAQuestionnaire.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAQjD,UAAU,sBAAsB;IAC9B,SAAS,EAAE,sBAAsB,EAAE,CAAC;IACpC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,SAAS,EACT,QAAQ,EACR,SAAc,GACf,EAAE,sBAAsB,2CAyWxB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { PolicySection } from '@/types';
|
|
2
|
+
interface PolicyGeneratorProps {
|
|
3
|
+
onGenerate: (policy: {
|
|
4
|
+
organizationName: string;
|
|
5
|
+
organizationContact: string;
|
|
6
|
+
sections: PolicySection[];
|
|
7
|
+
}) => void;
|
|
8
|
+
className?: string;
|
|
9
|
+
}
|
|
10
|
+
export default function PolicyGenerator({ onGenerate, className, }: PolicyGeneratorProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=PolicyGenerator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PolicyGenerator.d.ts","sourceRoot":"","sources":["../../../src/components/privacy-policy/PolicyGenerator.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAgBxC,UAAU,oBAAoB;IAC5B,UAAU,EAAE,CAAC,MAAM,EAAE;QACnB,gBAAgB,EAAE,MAAM,CAAC;QACzB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,QAAQ,EAAE,aAAa,EAAE,CAAC;KAC3B,KAAK,IAAI,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,UAAU,EACV,SAAc,GACf,EAAE,oBAAoB,2CA0vBtB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const defaultDataPurposes: string[];
|
|
2
|
+
export declare const defaultSecurityMeasures: string[];
|
|
3
|
+
export declare const dataSubjectCategories: string[];
|
|
4
|
+
export declare const trackingTechnologies: string[];
|
|
5
|
+
export declare const transferSafeguards: string[];
|
|
6
|
+
export declare const defaultCookieTypes: string[];
|
|
7
|
+
export declare const commonTransferCountries: string[];
|
|
8
|
+
//# sourceMappingURL=data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../src/components/privacy-policy/data.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,UAW/B,CAAC;AAEF,eAAO,MAAM,uBAAuB,UAmBnC,CAAC;AAEF,eAAO,MAAM,qBAAqB,UAejC,CAAC;AAEF,eAAO,MAAM,oBAAoB,UAchC,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAW9B,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAM9B,CAAC;AAEF,eAAO,MAAM,uBAAuB,UASnC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface CheckboxFieldProps {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
label: string;
|
|
6
|
+
checked: boolean;
|
|
7
|
+
onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
|
|
8
|
+
className?: string;
|
|
9
|
+
description?: string;
|
|
10
|
+
}
|
|
11
|
+
export default function CheckboxField({ id, name, label, checked, onChange, className, description, }: CheckboxFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=CheckboxField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckboxField.d.ts","sourceRoot":"","sources":["../../../../src/components/privacy-policy/shared/CheckboxField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,kBAAkB;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,EAAE,EACF,IAAI,EACJ,KAAK,EACL,OAAO,EACP,QAAQ,EACR,SAAc,EACd,WAAW,GACZ,EAAE,kBAAkB,2CAapB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
interface CheckboxGroupProps {
|
|
2
|
+
title: string;
|
|
3
|
+
items: string[];
|
|
4
|
+
selectedItems: string[];
|
|
5
|
+
onToggleItem: (item: string) => void;
|
|
6
|
+
required?: boolean;
|
|
7
|
+
error?: string;
|
|
8
|
+
columns?: 1 | 2 | 3;
|
|
9
|
+
className?: string;
|
|
10
|
+
}
|
|
11
|
+
export default function CheckboxGroup({ title, items, selectedItems, onToggleItem, required, error, columns, className, }: CheckboxGroupProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=CheckboxGroup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckboxGroup.d.ts","sourceRoot":"","sources":["../../../../src/components/privacy-policy/shared/CheckboxGroup.tsx"],"names":[],"mappings":"AAKA,UAAU,kBAAkB;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,KAAK,EACL,KAAK,EACL,aAAa,EACb,YAAY,EACZ,QAAgB,EAChB,KAAK,EACL,OAAW,EACX,SAAc,GACf,EAAE,kBAAkB,2CA2DpB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface FormFieldProps {
|
|
3
|
+
id: string;
|
|
4
|
+
label: string;
|
|
5
|
+
required?: boolean;
|
|
6
|
+
error?: string;
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
className?: string;
|
|
9
|
+
description?: string;
|
|
10
|
+
}
|
|
11
|
+
export default function FormField({ id, label, required, error, children, className, description, }: FormFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=FormField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormField.d.ts","sourceRoot":"","sources":["../../../../src/components/privacy-policy/shared/FormField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,cAAc;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,EAAE,EACF,KAAK,EACL,QAAgB,EAChB,KAAK,EACL,QAAQ,EACR,SAAc,EACd,WAAW,GACZ,EAAE,cAAc,2CAuDhB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
interface StepIndicatorProps {
|
|
2
|
+
currentStep: number;
|
|
3
|
+
totalSteps: number;
|
|
4
|
+
stepLabels: string[];
|
|
5
|
+
}
|
|
6
|
+
export default function StepIndicator({ currentStep, totalSteps, stepLabels }: StepIndicatorProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=StepIndicator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StepIndicator.d.ts","sourceRoot":"","sources":["../../../../src/components/privacy-policy/shared/StepIndicator.tsx"],"names":[],"mappings":"AAIA,UAAU,kBAAkB;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,WAAW,EACX,UAAU,EACV,UAAU,EACX,EAAE,kBAAkB,2CAuEpB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
interface CustomSectionsStepProps {
|
|
2
|
+
formData: {
|
|
3
|
+
customSections: {
|
|
4
|
+
title: string;
|
|
5
|
+
content: string;
|
|
6
|
+
}[];
|
|
7
|
+
industryCategory: string;
|
|
8
|
+
includeNDPRCompliance: boolean;
|
|
9
|
+
};
|
|
10
|
+
onAddCustomSection: (title: string, content: string) => void;
|
|
11
|
+
onRemoveCustomSection: (index: number) => void;
|
|
12
|
+
}
|
|
13
|
+
export default function CustomSectionsStep({ formData, onAddCustomSection, onRemoveCustomSection, }: CustomSectionsStepProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=CustomSectionsStep.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CustomSectionsStep.d.ts","sourceRoot":"","sources":["../../../../src/components/privacy-policy/steps/CustomSectionsStep.tsx"],"names":[],"mappings":"AAUA,UAAU,uBAAuB;IAC/B,QAAQ,EAAE;QACR,cAAc,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QACrD,gBAAgB,EAAE,MAAM,CAAC;QACzB,qBAAqB,EAAE,OAAO,CAAC;KAChC,CAAC;IACF,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD;AAUD,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACzC,QAAQ,EACR,kBAAkB,EAClB,qBAAqB,GACtB,EAAE,uBAAuB,2CA8SzB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface DataCollectionStepProps {
|
|
3
|
+
formData: {
|
|
4
|
+
dataCollectionPurposes: string[];
|
|
5
|
+
dataRetentionPeriod: string;
|
|
6
|
+
securityMeasures: string[];
|
|
7
|
+
dataSubjects: string[];
|
|
8
|
+
dataCategories: string[];
|
|
9
|
+
legalBasisForProcessing: string[];
|
|
10
|
+
};
|
|
11
|
+
errors: Record<string, string>;
|
|
12
|
+
onChange: (e: React.ChangeEvent<HTMLSelectElement>) => void;
|
|
13
|
+
onToggleItem: (category: 'dataCollectionPurposes' | 'securityMeasures' | 'dataSubjects' | 'dataCategories' | 'legalBasisForProcessing', item: string) => void;
|
|
14
|
+
defaultDataPurposes: string[];
|
|
15
|
+
defaultSecurityMeasures: string[];
|
|
16
|
+
dataSubjectCategories: string[];
|
|
17
|
+
}
|
|
18
|
+
export default function DataCollectionStep({ formData, errors, onChange, onToggleItem, defaultDataPurposes, defaultSecurityMeasures, dataSubjectCategories, }: DataCollectionStepProps): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
export {};
|
|
20
|
+
//# sourceMappingURL=DataCollectionStep.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataCollectionStep.d.ts","sourceRoot":"","sources":["../../../../src/components/privacy-policy/steps/DataCollectionStep.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,UAAU,uBAAuB;IAC/B,QAAQ,EAAE;QACR,sBAAsB,EAAE,MAAM,EAAE,CAAC;QACjC,mBAAmB,EAAE,MAAM,CAAC;QAC5B,gBAAgB,EAAE,MAAM,EAAE,CAAC;QAC3B,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,uBAAuB,EAAE,MAAM,EAAE,CAAC;KACnC,CAAC;IACF,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC5D,YAAY,EAAE,CACZ,QAAQ,EACN,wBAAwB,GACxB,kBAAkB,GAClB,cAAc,GACd,gBAAgB,GAChB,yBAAyB,EAC3B,IAAI,EAAE,MAAM,KACT,IAAI,CAAC;IACV,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,uBAAuB,EAAE,MAAM,EAAE,CAAC;IAClC,qBAAqB,EAAE,MAAM,EAAE,CAAC;CACjC;AAED,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACzC,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,GACtB,EAAE,uBAAuB,2CA2LzB"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface DataSharingStepProps {
|
|
3
|
+
formData: {
|
|
4
|
+
thirdPartySharing: boolean;
|
|
5
|
+
thirdParties: string[];
|
|
6
|
+
thirdPartyCategories: string[];
|
|
7
|
+
thirdPartyPurposes: string[];
|
|
8
|
+
cookiesUsed: boolean;
|
|
9
|
+
cookieTypes: string[];
|
|
10
|
+
cookieLifespan: string;
|
|
11
|
+
trackingTechnologies: string[];
|
|
12
|
+
internationalTransfers: boolean;
|
|
13
|
+
transferCountries: string[];
|
|
14
|
+
transferSafeguards: string[];
|
|
15
|
+
processesChildrenData: boolean;
|
|
16
|
+
childrenDataDetails: string;
|
|
17
|
+
processesSpecialCategories: boolean;
|
|
18
|
+
specialCategoriesDetails: string;
|
|
19
|
+
dataBreachProcedures: string;
|
|
20
|
+
regulatoryCompliance: string[];
|
|
21
|
+
};
|
|
22
|
+
errors: Record<string, string>;
|
|
23
|
+
onChange: (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement | HTMLSelectElement>) => void;
|
|
24
|
+
onToggleItem: (category: 'cookieTypes' | 'transferCountries' | 'trackingTechnologies' | 'transferSafeguards' | 'thirdPartyCategories' | 'thirdPartyPurposes' | 'regulatoryCompliance', item: string) => void;
|
|
25
|
+
onAddThirdParty: () => void;
|
|
26
|
+
onRemoveThirdParty: (index: number) => void;
|
|
27
|
+
defaultCookieTypes: string[];
|
|
28
|
+
commonTransferCountries: string[];
|
|
29
|
+
trackingTechnologies: string[];
|
|
30
|
+
transferSafeguards: string[];
|
|
31
|
+
}
|
|
32
|
+
export default function DataSharingStep({ formData, errors, onChange, onToggleItem, onAddThirdParty, onRemoveThirdParty, defaultCookieTypes, commonTransferCountries, trackingTechnologies, transferSafeguards, }: DataSharingStepProps): import("react/jsx-runtime").JSX.Element;
|
|
33
|
+
export {};
|
|
34
|
+
//# sourceMappingURL=DataSharingStep.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataSharingStep.d.ts","sourceRoot":"","sources":["../../../../src/components/privacy-policy/steps/DataSharingStep.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAiB,MAAM,OAAO,CAAC;AAStC,UAAU,oBAAoB;IAC5B,QAAQ,EAAE;QACR,iBAAiB,EAAE,OAAO,CAAC;QAC3B,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,oBAAoB,EAAE,MAAM,EAAE,CAAC;QAC/B,kBAAkB,EAAE,MAAM,EAAE,CAAC;QAC7B,WAAW,EAAE,OAAO,CAAC;QACrB,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,oBAAoB,EAAE,MAAM,EAAE,CAAC;QAC/B,sBAAsB,EAAE,OAAO,CAAC;QAChC,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,kBAAkB,EAAE,MAAM,EAAE,CAAC;QAC7B,qBAAqB,EAAE,OAAO,CAAC;QAC/B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,0BAA0B,EAAE,OAAO,CAAC;QACpC,wBAAwB,EAAE,MAAM,CAAC;QACjC,oBAAoB,EAAE,MAAM,CAAC;QAC7B,oBAAoB,EAAE,MAAM,EAAE,CAAC;KAChC,CAAC;IACF,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,gBAAgB,GAAG,mBAAmB,GAAG,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACrG,YAAY,EAAE,CACZ,QAAQ,EACN,aAAa,GACb,mBAAmB,GACnB,sBAAsB,GACtB,oBAAoB,GACpB,sBAAsB,GACtB,oBAAoB,GACpB,sBAAsB,EACxB,IAAI,EAAE,MAAM,KACT,IAAI,CAAC;IACV,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,uBAAuB,EAAE,MAAM,EAAE,CAAC;IAClC,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,kBAAkB,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,GACnB,EAAE,oBAAoB,2CAkWtB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface OrganizationInfoStepProps {
|
|
3
|
+
formData: {
|
|
4
|
+
organizationName: string;
|
|
5
|
+
organizationContact: string;
|
|
6
|
+
organizationWebsite: string;
|
|
7
|
+
organizationAddress: string;
|
|
8
|
+
hasDPO: boolean;
|
|
9
|
+
dpoContact: string;
|
|
10
|
+
includeNDPRCompliance: boolean;
|
|
11
|
+
};
|
|
12
|
+
errors: Record<string, string>;
|
|
13
|
+
onChange: (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => void;
|
|
14
|
+
}
|
|
15
|
+
export default function OrganizationInfoStep({ formData, errors, onChange, }: OrganizationInfoStepProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=OrganizationInfoStep.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OrganizationInfoStep.d.ts","sourceRoot":"","sources":["../../../../src/components/privacy-policy/steps/OrganizationInfoStep.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,UAAU,yBAAyB;IACjC,QAAQ,EAAE;QACR,gBAAgB,EAAE,MAAM,CAAC;QACzB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,MAAM,EAAE,OAAO,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,qBAAqB,EAAE,OAAO,CAAC;KAChC,CAAC;IACF,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,gBAAgB,GAAG,mBAAmB,CAAC,KAAK,IAAI,CAAC;CAClF;AAED,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAC3C,QAAQ,EACR,MAAM,EACN,QAAQ,GACT,EAAE,yBAAyB,2CA4K3B"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface PolicyPreviewStepProps {
|
|
3
|
+
formData: {
|
|
4
|
+
organizationName: string;
|
|
5
|
+
organizationContact: string;
|
|
6
|
+
organizationWebsite: string;
|
|
7
|
+
organizationAddress: string;
|
|
8
|
+
dataCollectionPurposes: string[];
|
|
9
|
+
dataRetentionPeriod: string;
|
|
10
|
+
thirdPartySharing: boolean;
|
|
11
|
+
thirdParties: string[];
|
|
12
|
+
securityMeasures: string[];
|
|
13
|
+
cookiesUsed: boolean;
|
|
14
|
+
cookieTypes: string[];
|
|
15
|
+
internationalTransfers: boolean;
|
|
16
|
+
transferCountries: string[];
|
|
17
|
+
customSections: {
|
|
18
|
+
title: string;
|
|
19
|
+
content: string;
|
|
20
|
+
}[];
|
|
21
|
+
hasDPO: boolean;
|
|
22
|
+
dpoContact: string;
|
|
23
|
+
includeNDPRCompliance: boolean;
|
|
24
|
+
policyEffectiveDate: string;
|
|
25
|
+
};
|
|
26
|
+
previewRef: React.RefObject<HTMLDivElement | null>;
|
|
27
|
+
}
|
|
28
|
+
export default function PolicyPreviewStep({ formData, previewRef, }: PolicyPreviewStepProps): import("react/jsx-runtime").JSX.Element;
|
|
29
|
+
export {};
|
|
30
|
+
//# sourceMappingURL=PolicyPreviewStep.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PolicyPreviewStep.d.ts","sourceRoot":"","sources":["../../../../src/components/privacy-policy/steps/PolicyPreviewStep.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,sBAAsB;IAC9B,QAAQ,EAAE;QACR,gBAAgB,EAAE,MAAM,CAAC;QACzB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,sBAAsB,EAAE,MAAM,EAAE,CAAC;QACjC,mBAAmB,EAAE,MAAM,CAAC;QAC5B,iBAAiB,EAAE,OAAO,CAAC;QAC3B,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,gBAAgB,EAAE,MAAM,EAAE,CAAC;QAC3B,WAAW,EAAE,OAAO,CAAC;QACrB,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,sBAAsB,EAAE,OAAO,CAAC;QAChC,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,cAAc,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QACrD,MAAM,EAAE,OAAO,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,qBAAqB,EAAE,OAAO,CAAC;QAC/B,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;CACpD;AAED,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,QAAQ,EACR,UAAU,GACX,EAAE,sBAAsB,2CA2IxB"}
|