@tantainnovative/ndpr-toolkit 2.4.1 → 3.2.0
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 +226 -246
- package/dist/BreachReportForm-DpRrBoxU.d.ts +158 -0
- package/dist/BreachReportForm-yJ2Zl6gz.d.mts +158 -0
- package/dist/ConsentBanner-CDRT0o2k.d.mts +146 -0
- package/dist/ConsentBanner-Vxyt8SCX.d.ts +146 -0
- package/dist/{cross-border-entry-BrWVPly6.d.ts → CrossBorderTransferManager-D5Lc0e46.d.ts} +4 -5
- package/dist/{cross-border-entry-cCTvpwnT.d.mts → CrossBorderTransferManager-DkZhv9vD.d.mts} +4 -5
- package/dist/DPIAQuestionnaire-BkejviPj.d.mts +123 -0
- package/dist/DPIAQuestionnaire-DdSqXG3x.d.ts +123 -0
- package/dist/DSRRequestForm-BY8PogCU.d.mts +146 -0
- package/dist/DSRRequestForm-CHUg9cZh.d.ts +146 -0
- package/dist/DSRTracker-C6u_jAaK.d.mts +163 -0
- package/dist/DSRTracker-Dr_aT0pg.d.ts +163 -0
- package/dist/{lawful-basis-entry-CxZrofwG.d.mts → LawfulBasisTracker-CBqOxX1D.d.mts} +3 -5
- package/dist/{lawful-basis-entry-15qjKcNO.d.ts → LawfulBasisTracker-Cg30NbDA.d.ts} +3 -5
- package/dist/NDPRDashboard-CLJpEg0X.d.mts +44 -0
- package/dist/NDPRDashboard-DDWNd2Ah.d.ts +44 -0
- package/dist/{policy-E0fXZkda.d.mts → PolicyExporter-Bgi6nz82.d.mts} +5 -7
- package/dist/{policy-D2_jh5-T.d.ts → PolicyExporter-BnvuFncj.d.ts} +5 -7
- package/dist/{ropa-entry-B0D7X1GV.d.ts → ROPAManager-BS4eB8Hw.d.mts} +4 -5
- package/dist/{ropa-entry-DiOThOc2.d.mts → ROPAManager-qxTrXLkD.d.ts} +4 -5
- package/dist/RegulatoryReportGenerator-BUYgzTTT.d.ts +282 -0
- package/dist/RegulatoryReportGenerator-DwcHcEFp.d.mts +282 -0
- package/dist/StepIndicator-D-nwRTyo.d.mts +171 -0
- package/dist/StepIndicator-D9ZATz_O.d.ts +171 -0
- package/dist/adapters.d.mts +25 -0
- package/dist/adapters.d.ts +25 -0
- package/dist/adapters.js +2 -0
- package/dist/adapters.mjs +2 -0
- package/dist/breach.d.mts +36 -431
- package/dist/breach.d.ts +36 -431
- package/dist/breach.js +1 -1
- package/dist/breach.mjs +1 -1
- package/dist/chunk-27NYSWUG.mjs +2 -0
- package/dist/chunk-2ORDHJRD.js +2 -0
- package/dist/chunk-2W7ARAW2.js +2 -0
- package/dist/chunk-3F34NACG.js +2 -0
- package/dist/chunk-3UWT64FI.mjs +2 -0
- package/dist/chunk-3V23O4ZJ.js +2 -0
- package/dist/chunk-3XAUN5IM.mjs +3 -0
- package/dist/chunk-44W4H2EY.js +2 -0
- package/dist/chunk-5VMHKNJY.js +2 -0
- package/dist/chunk-6D3ZUGBB.mjs +2 -0
- package/dist/chunk-6E54NSAO.mjs +2 -0
- package/dist/chunk-7F5F5YWI.mjs +2 -0
- package/dist/chunk-DQLDX5X6.js +316 -0
- package/dist/chunk-FR7ZYZXB.js +2 -0
- package/dist/chunk-FY5G6DGZ.js +7 -0
- package/dist/chunk-G26I6MP5.mjs +2 -0
- package/dist/chunk-GCQRHMTQ.mjs +144 -0
- package/dist/chunk-GPJVTGHR.mjs +2 -0
- package/dist/chunk-GVANK6PL.js +3 -0
- package/dist/chunk-HNZK7LY3.mjs +2 -0
- package/dist/chunk-IKEPXHCZ.js +2 -0
- package/dist/chunk-IQQW52EF.js +2 -0
- package/dist/chunk-ISSGO2YT.mjs +72 -0
- package/dist/chunk-JZKH5RMC.js +3 -0
- package/dist/chunk-KHRBU5K7.js +2 -0
- package/dist/chunk-LFNA6WYQ.mjs +2 -0
- package/dist/chunk-LU4PFST7.js +144 -0
- package/dist/chunk-NPI5T6NH.mjs +7 -0
- package/dist/chunk-NPLXE43Q.mjs +2 -0
- package/dist/chunk-P7BSBCB3.js +2 -0
- package/dist/chunk-PEH5GIMN.js +2 -0
- package/dist/chunk-RSUDIFZV.mjs +2 -0
- package/dist/chunk-SBNAMPAP.mjs +2 -0
- package/dist/chunk-SVCRYM4I.mjs +2 -0
- package/dist/chunk-TKBZRULW.mjs +316 -0
- package/dist/chunk-TVW6KBVV.mjs +2 -0
- package/dist/chunk-U6VWHC46.js +72 -0
- package/dist/chunk-UK656RCG.js +2 -0
- package/dist/chunk-UNKXYVXY.js +2 -0
- package/dist/chunk-UOSEH6DC.js +2 -0
- package/dist/chunk-V37BM2LF.js +2 -0
- package/dist/chunk-V3MXWGXU.mjs +2 -0
- package/dist/chunk-VDZKGCAF.js +2 -0
- package/dist/chunk-WLSW4Z4W.mjs +2 -0
- package/dist/chunk-XSK4BSZJ.mjs +2 -0
- package/dist/chunk-YJCGEOLO.mjs +2 -0
- package/dist/chunk-ZCZ5RRZO.js +2 -0
- package/dist/chunk-ZQSX5ZHB.mjs +3 -0
- package/dist/compliance-score-racQe_E_.d.mts +115 -0
- package/dist/compliance-score-racQe_E_.d.ts +115 -0
- package/dist/consent.d.mts +67 -295
- package/dist/consent.d.ts +67 -295
- package/dist/consent.js +1 -1
- package/dist/consent.mjs +1 -1
- package/dist/core.d.mts +14 -48
- package/dist/core.d.ts +14 -48
- package/dist/core.js +1 -1
- package/dist/core.mjs +1 -1
- package/dist/cross-border-BBi9rZyO.d.mts +54 -0
- package/dist/cross-border-Dy-U9Hu6.d.ts +54 -0
- package/dist/{cross-border-BMcqLvjC.d.mts → cross-border-UyT00llA.d.mts} +1 -52
- package/dist/{cross-border-BMcqLvjC.d.ts → cross-border-UyT00llA.d.ts} +1 -52
- package/dist/cross-border.d.mts +32 -4
- package/dist/cross-border.d.ts +32 -4
- package/dist/cross-border.js +1 -1
- package/dist/cross-border.mjs +1 -1
- package/dist/dpia.d.mts +28 -284
- package/dist/dpia.d.ts +28 -284
- package/dist/dpia.js +1 -1
- package/dist/dpia.mjs +1 -1
- package/dist/dsr.d.mts +29 -300
- package/dist/dsr.d.ts +29 -300
- package/dist/dsr.js +1 -1
- package/dist/dsr.mjs +1 -1
- package/dist/hooks.d.mts +23 -10
- package/dist/hooks.d.ts +23 -10
- package/dist/hooks.js +1 -1
- package/dist/hooks.mjs +1 -1
- package/dist/index.d.mts +28 -19
- package/dist/index.d.ts +28 -19
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/lawful-basis.d.mts +31 -4
- package/dist/lawful-basis.d.ts +31 -4
- package/dist/lawful-basis.js +1 -1
- package/dist/lawful-basis.mjs +1 -1
- package/dist/policy-engine-C-tShzZH.d.mts +154 -0
- package/dist/policy-engine-DSQpT55_.d.ts +154 -0
- package/dist/policy-sections-CfNVBLCh.d.mts +54 -0
- package/dist/policy-sections-DqH0iZRf.d.ts +54 -0
- package/dist/policy.d.mts +117 -4
- package/dist/policy.d.ts +117 -4
- package/dist/policy.js +1 -1
- package/dist/policy.mjs +1 -1
- package/dist/presets.d.mts +114 -0
- package/dist/presets.d.ts +114 -0
- package/dist/presets.js +2 -0
- package/dist/presets.mjs +2 -0
- package/dist/{ropa-Li6UlL5H.d.ts → ropa-BDTM06tr.d.ts} +1 -49
- package/dist/{ropa-DP7pPPql.d.mts → ropa-CFHuT7jE.d.mts} +1 -49
- package/dist/ropa-CyynscU6.d.ts +51 -0
- package/dist/ropa-NIgxd8uP.d.mts +51 -0
- package/dist/ropa.d.mts +30 -4
- package/dist/ropa.d.ts +30 -4
- package/dist/ropa.js +1 -1
- package/dist/ropa.mjs +1 -1
- package/dist/sanitize-9mOO_cJW.d.mts +147 -0
- package/dist/sanitize-9mOO_cJW.d.ts +147 -0
- package/dist/styling-B7CBzYG7.d.ts +165 -0
- package/dist/styling-uJLsBbER.d.mts +165 -0
- package/dist/types-DK2CoKOC.d.mts +10 -0
- package/dist/types-DK2CoKOC.d.ts +10 -0
- package/dist/unstyled.d.mts +4 -4
- package/dist/unstyled.d.ts +4 -4
- package/dist/useAdaptivePolicyWizard-B9Op2gYM.d.ts +52 -0
- package/dist/useAdaptivePolicyWizard-N4eUM4Tj.d.mts +52 -0
- package/dist/{useBreach-BBSoIcZO.d.mts → useBreach-CPr86Yan.d.mts} +18 -2
- package/dist/{useBreach-lFLbSyAN.d.ts → useBreach-DkVXvtJK.d.ts} +18 -2
- package/dist/{useConsent-D0pAfTlb.d.ts → useConsent-DCNkIJHR.d.mts} +12 -2
- package/dist/{useConsent-DOt2Njst.d.mts → useConsent-dOcELSfX.d.ts} +12 -2
- package/dist/{useCrossBorderTransfer-DmtACeqW.d.ts → useCrossBorderTransfer-BGNZt2lk.d.mts} +15 -3
- package/dist/{useCrossBorderTransfer-BZVFCXfr.d.mts → useCrossBorderTransfer-COqjgjsu.d.ts} +15 -3
- package/dist/{useDPIA-DBsg2yZx.d.ts → useDPIA-Dl16Te3r.d.ts} +13 -2
- package/dist/{useDPIA-Da7-Q_yW.d.mts → useDPIA-DzWye8JB.d.mts} +13 -2
- package/dist/{useDSR-YYZ6FYFs.d.mts → useDSR-C1LksCfP.d.mts} +13 -2
- package/dist/{useDSR-CYI7WCXr.d.ts → useDSR-DZel52O1.d.ts} +13 -2
- package/dist/{useDefaultPrivacyPolicy-CUluF_ic.d.mts → useDefaultPrivacyPolicy-BsYttRey.d.mts} +13 -2
- package/dist/{useDefaultPrivacyPolicy-B7kTHbZh.d.ts → useDefaultPrivacyPolicy-C-mG-A5S.d.ts} +13 -2
- package/dist/{useLawfulBasis-CpWuHtyh.d.mts → useLawfulBasis-CKJ-kw84.d.mts} +13 -2
- package/dist/{useLawfulBasis-CCWF9waR.d.ts → useLawfulBasis-DFTmu1ca.d.ts} +13 -2
- package/dist/{useROPA-BhJ3kvHp.d.ts → useROPA-BSSU1rfx.d.ts} +14 -2
- package/dist/{useROPA-DLFdjkxP.d.mts → useROPA-C2hjaBTz.d.mts} +14 -2
- package/package.json +24 -3
- package/dist/chunk-2XFAV267.mjs +0 -2
- package/dist/chunk-32UIWTGD.js +0 -72
- package/dist/chunk-3YCV2BA6.js +0 -2
- package/dist/chunk-4A354HL3.js +0 -2
- package/dist/chunk-5ZBO2UPH.js +0 -2
- package/dist/chunk-6GGGTRDZ.mjs +0 -2
- package/dist/chunk-BZTTQS4A.mjs +0 -7
- package/dist/chunk-EKVTLHBQ.js +0 -2
- package/dist/chunk-GMLNWS2N.mjs +0 -2
- package/dist/chunk-IBEKLDBY.mjs +0 -2
- package/dist/chunk-ILCNDOBU.js +0 -2
- package/dist/chunk-K3GMTMQ6.js +0 -2
- package/dist/chunk-L52PDW6O.mjs +0 -2
- package/dist/chunk-LI6WJ3LZ.js +0 -2
- package/dist/chunk-LXRXDTPI.js +0 -2
- package/dist/chunk-NW4A3JW6.mjs +0 -2
- package/dist/chunk-OITITR6K.mjs +0 -2
- package/dist/chunk-PDJGTQMY.mjs +0 -2
- package/dist/chunk-T44JQT2O.mjs +0 -2
- package/dist/chunk-TCJCE6WN.js +0 -2
- package/dist/chunk-VMJBW3EF.mjs +0 -2
- package/dist/chunk-WSHSHIIM.mjs +0 -2
- package/dist/chunk-WW3X3ELF.js +0 -2
- package/dist/chunk-XMYUYQH7.mjs +0 -72
- package/dist/chunk-ZNTMZ6NM.js +0 -7
- package/dist/chunk-ZU73VG3X.js +0 -2
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { c as DPIASection } from './dpia-5OQVA1R_.mjs';
|
|
3
|
+
|
|
4
|
+
interface DPIAQuestionnaireClassNames {
|
|
5
|
+
/** Outermost wrapper */
|
|
6
|
+
root?: string;
|
|
7
|
+
/** Header area containing progress indicator */
|
|
8
|
+
header?: string;
|
|
9
|
+
/** Section title */
|
|
10
|
+
title?: string;
|
|
11
|
+
/** Section container */
|
|
12
|
+
section?: string;
|
|
13
|
+
/** Section title heading */
|
|
14
|
+
sectionTitle?: string;
|
|
15
|
+
/** Individual question wrapper */
|
|
16
|
+
question?: string;
|
|
17
|
+
/** Question label text */
|
|
18
|
+
questionText?: string;
|
|
19
|
+
/** Guidance / help text below a question */
|
|
20
|
+
guidance?: string;
|
|
21
|
+
/** Text / textarea / select inputs */
|
|
22
|
+
input?: string;
|
|
23
|
+
/** Radio option group container */
|
|
24
|
+
radioGroup?: string;
|
|
25
|
+
/** Individual radio option row */
|
|
26
|
+
radioOption?: string;
|
|
27
|
+
/** Navigation button container */
|
|
28
|
+
navigation?: string;
|
|
29
|
+
/** Next / submit button */
|
|
30
|
+
nextButton?: string;
|
|
31
|
+
/** Previous button */
|
|
32
|
+
prevButton?: string;
|
|
33
|
+
/** Alias for nextButton */
|
|
34
|
+
primaryButton?: string;
|
|
35
|
+
/** Alias for prevButton */
|
|
36
|
+
secondaryButton?: string;
|
|
37
|
+
/** Progress bar wrapper */
|
|
38
|
+
progressBar?: string;
|
|
39
|
+
}
|
|
40
|
+
interface DPIAQuestionnaireProps {
|
|
41
|
+
/**
|
|
42
|
+
* Sections of the DPIA questionnaire
|
|
43
|
+
*/
|
|
44
|
+
sections: DPIASection[];
|
|
45
|
+
/**
|
|
46
|
+
* Current answers to the questionnaire
|
|
47
|
+
*/
|
|
48
|
+
answers: Record<string, any>;
|
|
49
|
+
/**
|
|
50
|
+
* Callback function called when an answer is updated
|
|
51
|
+
*/
|
|
52
|
+
onAnswerChange: (questionId: string, value: any) => void;
|
|
53
|
+
/**
|
|
54
|
+
* Current section index
|
|
55
|
+
*/
|
|
56
|
+
currentSectionIndex: number;
|
|
57
|
+
/**
|
|
58
|
+
* Callback function called when user navigates to the next section
|
|
59
|
+
*/
|
|
60
|
+
onNextSection?: () => void;
|
|
61
|
+
/**
|
|
62
|
+
* Callback function called when user navigates to the previous section
|
|
63
|
+
*/
|
|
64
|
+
onPrevSection?: () => void;
|
|
65
|
+
/**
|
|
66
|
+
* Validation errors for the current section
|
|
67
|
+
*/
|
|
68
|
+
validationErrors?: Record<string, string>;
|
|
69
|
+
/**
|
|
70
|
+
* Whether the questionnaire is in read-only mode
|
|
71
|
+
* @default false
|
|
72
|
+
*/
|
|
73
|
+
readOnly?: boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Custom CSS class for the questionnaire
|
|
76
|
+
*/
|
|
77
|
+
className?: string;
|
|
78
|
+
/**
|
|
79
|
+
* Custom CSS class for the buttons
|
|
80
|
+
*/
|
|
81
|
+
buttonClassName?: string;
|
|
82
|
+
/**
|
|
83
|
+
* Text for the next button
|
|
84
|
+
* @default "Next"
|
|
85
|
+
*/
|
|
86
|
+
nextButtonText?: string;
|
|
87
|
+
/**
|
|
88
|
+
* Text for the previous button
|
|
89
|
+
* @default "Previous"
|
|
90
|
+
*/
|
|
91
|
+
prevButtonText?: string;
|
|
92
|
+
/**
|
|
93
|
+
* Text for the submit button (shown on the last section)
|
|
94
|
+
* @default "Submit"
|
|
95
|
+
*/
|
|
96
|
+
submitButtonText?: string;
|
|
97
|
+
/**
|
|
98
|
+
* Whether to show a progress indicator
|
|
99
|
+
* @default true
|
|
100
|
+
*/
|
|
101
|
+
showProgress?: boolean;
|
|
102
|
+
/**
|
|
103
|
+
* Current progress percentage (0-100)
|
|
104
|
+
*/
|
|
105
|
+
progress?: number;
|
|
106
|
+
/**
|
|
107
|
+
* Per-section class name overrides
|
|
108
|
+
*/
|
|
109
|
+
classNames?: DPIAQuestionnaireClassNames;
|
|
110
|
+
/**
|
|
111
|
+
* When true, all default classes are stripped.
|
|
112
|
+
* Only explicit overrides from `classNames` are applied.
|
|
113
|
+
* @default false
|
|
114
|
+
*/
|
|
115
|
+
unstyled?: boolean;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* DPIA questionnaire component. Implements NDPA Section 38 requirements
|
|
119
|
+
* for conducting Data Protection Impact Assessments on high-risk processing activities.
|
|
120
|
+
*/
|
|
121
|
+
declare const DPIAQuestionnaire: React__default.FC<DPIAQuestionnaireProps>;
|
|
122
|
+
|
|
123
|
+
export { DPIAQuestionnaire as D, type DPIAQuestionnaireClassNames as a, type DPIAQuestionnaireProps as b };
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { c as DPIASection } from './dpia-5OQVA1R_.js';
|
|
3
|
+
|
|
4
|
+
interface DPIAQuestionnaireClassNames {
|
|
5
|
+
/** Outermost wrapper */
|
|
6
|
+
root?: string;
|
|
7
|
+
/** Header area containing progress indicator */
|
|
8
|
+
header?: string;
|
|
9
|
+
/** Section title */
|
|
10
|
+
title?: string;
|
|
11
|
+
/** Section container */
|
|
12
|
+
section?: string;
|
|
13
|
+
/** Section title heading */
|
|
14
|
+
sectionTitle?: string;
|
|
15
|
+
/** Individual question wrapper */
|
|
16
|
+
question?: string;
|
|
17
|
+
/** Question label text */
|
|
18
|
+
questionText?: string;
|
|
19
|
+
/** Guidance / help text below a question */
|
|
20
|
+
guidance?: string;
|
|
21
|
+
/** Text / textarea / select inputs */
|
|
22
|
+
input?: string;
|
|
23
|
+
/** Radio option group container */
|
|
24
|
+
radioGroup?: string;
|
|
25
|
+
/** Individual radio option row */
|
|
26
|
+
radioOption?: string;
|
|
27
|
+
/** Navigation button container */
|
|
28
|
+
navigation?: string;
|
|
29
|
+
/** Next / submit button */
|
|
30
|
+
nextButton?: string;
|
|
31
|
+
/** Previous button */
|
|
32
|
+
prevButton?: string;
|
|
33
|
+
/** Alias for nextButton */
|
|
34
|
+
primaryButton?: string;
|
|
35
|
+
/** Alias for prevButton */
|
|
36
|
+
secondaryButton?: string;
|
|
37
|
+
/** Progress bar wrapper */
|
|
38
|
+
progressBar?: string;
|
|
39
|
+
}
|
|
40
|
+
interface DPIAQuestionnaireProps {
|
|
41
|
+
/**
|
|
42
|
+
* Sections of the DPIA questionnaire
|
|
43
|
+
*/
|
|
44
|
+
sections: DPIASection[];
|
|
45
|
+
/**
|
|
46
|
+
* Current answers to the questionnaire
|
|
47
|
+
*/
|
|
48
|
+
answers: Record<string, any>;
|
|
49
|
+
/**
|
|
50
|
+
* Callback function called when an answer is updated
|
|
51
|
+
*/
|
|
52
|
+
onAnswerChange: (questionId: string, value: any) => void;
|
|
53
|
+
/**
|
|
54
|
+
* Current section index
|
|
55
|
+
*/
|
|
56
|
+
currentSectionIndex: number;
|
|
57
|
+
/**
|
|
58
|
+
* Callback function called when user navigates to the next section
|
|
59
|
+
*/
|
|
60
|
+
onNextSection?: () => void;
|
|
61
|
+
/**
|
|
62
|
+
* Callback function called when user navigates to the previous section
|
|
63
|
+
*/
|
|
64
|
+
onPrevSection?: () => void;
|
|
65
|
+
/**
|
|
66
|
+
* Validation errors for the current section
|
|
67
|
+
*/
|
|
68
|
+
validationErrors?: Record<string, string>;
|
|
69
|
+
/**
|
|
70
|
+
* Whether the questionnaire is in read-only mode
|
|
71
|
+
* @default false
|
|
72
|
+
*/
|
|
73
|
+
readOnly?: boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Custom CSS class for the questionnaire
|
|
76
|
+
*/
|
|
77
|
+
className?: string;
|
|
78
|
+
/**
|
|
79
|
+
* Custom CSS class for the buttons
|
|
80
|
+
*/
|
|
81
|
+
buttonClassName?: string;
|
|
82
|
+
/**
|
|
83
|
+
* Text for the next button
|
|
84
|
+
* @default "Next"
|
|
85
|
+
*/
|
|
86
|
+
nextButtonText?: string;
|
|
87
|
+
/**
|
|
88
|
+
* Text for the previous button
|
|
89
|
+
* @default "Previous"
|
|
90
|
+
*/
|
|
91
|
+
prevButtonText?: string;
|
|
92
|
+
/**
|
|
93
|
+
* Text for the submit button (shown on the last section)
|
|
94
|
+
* @default "Submit"
|
|
95
|
+
*/
|
|
96
|
+
submitButtonText?: string;
|
|
97
|
+
/**
|
|
98
|
+
* Whether to show a progress indicator
|
|
99
|
+
* @default true
|
|
100
|
+
*/
|
|
101
|
+
showProgress?: boolean;
|
|
102
|
+
/**
|
|
103
|
+
* Current progress percentage (0-100)
|
|
104
|
+
*/
|
|
105
|
+
progress?: number;
|
|
106
|
+
/**
|
|
107
|
+
* Per-section class name overrides
|
|
108
|
+
*/
|
|
109
|
+
classNames?: DPIAQuestionnaireClassNames;
|
|
110
|
+
/**
|
|
111
|
+
* When true, all default classes are stripped.
|
|
112
|
+
* Only explicit overrides from `classNames` are applied.
|
|
113
|
+
* @default false
|
|
114
|
+
*/
|
|
115
|
+
unstyled?: boolean;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* DPIA questionnaire component. Implements NDPA Section 38 requirements
|
|
119
|
+
* for conducting Data Protection Impact Assessments on high-risk processing activities.
|
|
120
|
+
*/
|
|
121
|
+
declare const DPIAQuestionnaire: React__default.FC<DPIAQuestionnaireProps>;
|
|
122
|
+
|
|
123
|
+
export { DPIAQuestionnaire as D, type DPIAQuestionnaireClassNames as a, type DPIAQuestionnaireProps as b };
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { c as RequestType } from './dsr-Cm9lzWG7.mjs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Represents the data submitted by the DSR request form.
|
|
6
|
+
*/
|
|
7
|
+
interface DSRFormSubmission {
|
|
8
|
+
/** The selected request type identifier */
|
|
9
|
+
requestType: string;
|
|
10
|
+
/** Data subject personal information */
|
|
11
|
+
dataSubject: {
|
|
12
|
+
fullName: string;
|
|
13
|
+
email: string;
|
|
14
|
+
phone?: string;
|
|
15
|
+
identifierType: string;
|
|
16
|
+
identifierValue: string;
|
|
17
|
+
};
|
|
18
|
+
/** Additional information provided for the selected request type */
|
|
19
|
+
additionalInfo?: Record<string, any>;
|
|
20
|
+
/** Timestamp (ms) when the form was submitted */
|
|
21
|
+
submittedAt: number;
|
|
22
|
+
}
|
|
23
|
+
interface DSRRequestFormClassNames {
|
|
24
|
+
root?: string;
|
|
25
|
+
title?: string;
|
|
26
|
+
description?: string;
|
|
27
|
+
form?: string;
|
|
28
|
+
fieldGroup?: string;
|
|
29
|
+
label?: string;
|
|
30
|
+
input?: string;
|
|
31
|
+
select?: string;
|
|
32
|
+
textarea?: string;
|
|
33
|
+
submitButton?: string;
|
|
34
|
+
/** Alias for submitButton */
|
|
35
|
+
primaryButton?: string;
|
|
36
|
+
successMessage?: string;
|
|
37
|
+
/** Custom class applied when isSubmitting is true (e.g. a loading overlay) */
|
|
38
|
+
loadingOverlay?: string;
|
|
39
|
+
}
|
|
40
|
+
interface DSRRequestFormProps {
|
|
41
|
+
/**
|
|
42
|
+
* Array of request types that can be submitted
|
|
43
|
+
*/
|
|
44
|
+
requestTypes: RequestType[];
|
|
45
|
+
/**
|
|
46
|
+
* Callback function called when form is submitted
|
|
47
|
+
*/
|
|
48
|
+
onSubmit: (data: DSRFormSubmission) => void;
|
|
49
|
+
/**
|
|
50
|
+
* Callback function called when form validation fails
|
|
51
|
+
*/
|
|
52
|
+
onValidationError?: (errors: Record<string, string>) => void;
|
|
53
|
+
/**
|
|
54
|
+
* Title displayed on the form
|
|
55
|
+
* @default "Submit a Data Subject Request"
|
|
56
|
+
*/
|
|
57
|
+
title?: string;
|
|
58
|
+
/**
|
|
59
|
+
* Description text displayed on the form
|
|
60
|
+
* @default "Use this form to exercise your rights under the Nigeria Data Protection Act (NDPA), Part IV, Sections 29-36."
|
|
61
|
+
*/
|
|
62
|
+
description?: string;
|
|
63
|
+
/**
|
|
64
|
+
* Text for the submit button
|
|
65
|
+
* @default "Submit Request"
|
|
66
|
+
*/
|
|
67
|
+
submitButtonText?: string;
|
|
68
|
+
/**
|
|
69
|
+
* Custom CSS class for the form
|
|
70
|
+
*/
|
|
71
|
+
className?: string;
|
|
72
|
+
/**
|
|
73
|
+
* Custom CSS class for the submit button
|
|
74
|
+
*/
|
|
75
|
+
buttonClassName?: string;
|
|
76
|
+
/**
|
|
77
|
+
* Whether to show a confirmation message after submission
|
|
78
|
+
* @default true
|
|
79
|
+
*/
|
|
80
|
+
showConfirmation?: boolean;
|
|
81
|
+
/**
|
|
82
|
+
* Confirmation message to display after submission
|
|
83
|
+
* @default "Your request has been submitted successfully. You will receive a confirmation email shortly."
|
|
84
|
+
*/
|
|
85
|
+
confirmationMessage?: string;
|
|
86
|
+
/**
|
|
87
|
+
* Whether to require identity verification
|
|
88
|
+
* @default true
|
|
89
|
+
*/
|
|
90
|
+
requireIdentityVerification?: boolean;
|
|
91
|
+
/**
|
|
92
|
+
* Types of identifiers accepted for verification
|
|
93
|
+
* @default ["email", "account", "customer_id"]
|
|
94
|
+
*/
|
|
95
|
+
identifierTypes?: Array<{
|
|
96
|
+
id: string;
|
|
97
|
+
label: string;
|
|
98
|
+
}>;
|
|
99
|
+
/**
|
|
100
|
+
* Whether to collect additional contact information
|
|
101
|
+
* @default true
|
|
102
|
+
*/
|
|
103
|
+
collectAdditionalContact?: boolean;
|
|
104
|
+
/**
|
|
105
|
+
* Custom labels for form fields
|
|
106
|
+
*/
|
|
107
|
+
labels?: {
|
|
108
|
+
name?: string;
|
|
109
|
+
email?: string;
|
|
110
|
+
requestType?: string;
|
|
111
|
+
description?: string;
|
|
112
|
+
submit?: string;
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* Object of CSS class overrides keyed by semantic section name.
|
|
116
|
+
*/
|
|
117
|
+
classNames?: DSRRequestFormClassNames;
|
|
118
|
+
/**
|
|
119
|
+
* When true, all default Tailwind classes are removed so consumers
|
|
120
|
+
* can style from scratch using classNames.
|
|
121
|
+
*/
|
|
122
|
+
unstyled?: boolean;
|
|
123
|
+
/**
|
|
124
|
+
* Whether the form is currently submitting.
|
|
125
|
+
* When true, the submit button is disabled and shows "Submitting..." text.
|
|
126
|
+
*/
|
|
127
|
+
isSubmitting?: boolean;
|
|
128
|
+
/**
|
|
129
|
+
* Default values to pre-fill form fields.
|
|
130
|
+
* Useful for editing existing requests or pre-populating known data.
|
|
131
|
+
*/
|
|
132
|
+
defaultValues?: Partial<DSRFormSubmission>;
|
|
133
|
+
/**
|
|
134
|
+
* Callback fired when the form is reset via the Reset button.
|
|
135
|
+
* To fully remount the component (clearing all internal state),
|
|
136
|
+
* change the `key` prop from the parent.
|
|
137
|
+
*/
|
|
138
|
+
onReset?: () => void;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Data Subject Request form component. Implements NDPA Part IV, Sections 29-36
|
|
142
|
+
* covering data subject rights including access, rectification, erasure, and portability.
|
|
143
|
+
*/
|
|
144
|
+
declare const DSRRequestForm: React__default.FC<DSRRequestFormProps>;
|
|
145
|
+
|
|
146
|
+
export { type DSRFormSubmission as D, DSRRequestForm as a, type DSRRequestFormClassNames as b, type DSRRequestFormProps as c };
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { c as RequestType } from './dsr-Cm9lzWG7.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Represents the data submitted by the DSR request form.
|
|
6
|
+
*/
|
|
7
|
+
interface DSRFormSubmission {
|
|
8
|
+
/** The selected request type identifier */
|
|
9
|
+
requestType: string;
|
|
10
|
+
/** Data subject personal information */
|
|
11
|
+
dataSubject: {
|
|
12
|
+
fullName: string;
|
|
13
|
+
email: string;
|
|
14
|
+
phone?: string;
|
|
15
|
+
identifierType: string;
|
|
16
|
+
identifierValue: string;
|
|
17
|
+
};
|
|
18
|
+
/** Additional information provided for the selected request type */
|
|
19
|
+
additionalInfo?: Record<string, any>;
|
|
20
|
+
/** Timestamp (ms) when the form was submitted */
|
|
21
|
+
submittedAt: number;
|
|
22
|
+
}
|
|
23
|
+
interface DSRRequestFormClassNames {
|
|
24
|
+
root?: string;
|
|
25
|
+
title?: string;
|
|
26
|
+
description?: string;
|
|
27
|
+
form?: string;
|
|
28
|
+
fieldGroup?: string;
|
|
29
|
+
label?: string;
|
|
30
|
+
input?: string;
|
|
31
|
+
select?: string;
|
|
32
|
+
textarea?: string;
|
|
33
|
+
submitButton?: string;
|
|
34
|
+
/** Alias for submitButton */
|
|
35
|
+
primaryButton?: string;
|
|
36
|
+
successMessage?: string;
|
|
37
|
+
/** Custom class applied when isSubmitting is true (e.g. a loading overlay) */
|
|
38
|
+
loadingOverlay?: string;
|
|
39
|
+
}
|
|
40
|
+
interface DSRRequestFormProps {
|
|
41
|
+
/**
|
|
42
|
+
* Array of request types that can be submitted
|
|
43
|
+
*/
|
|
44
|
+
requestTypes: RequestType[];
|
|
45
|
+
/**
|
|
46
|
+
* Callback function called when form is submitted
|
|
47
|
+
*/
|
|
48
|
+
onSubmit: (data: DSRFormSubmission) => void;
|
|
49
|
+
/**
|
|
50
|
+
* Callback function called when form validation fails
|
|
51
|
+
*/
|
|
52
|
+
onValidationError?: (errors: Record<string, string>) => void;
|
|
53
|
+
/**
|
|
54
|
+
* Title displayed on the form
|
|
55
|
+
* @default "Submit a Data Subject Request"
|
|
56
|
+
*/
|
|
57
|
+
title?: string;
|
|
58
|
+
/**
|
|
59
|
+
* Description text displayed on the form
|
|
60
|
+
* @default "Use this form to exercise your rights under the Nigeria Data Protection Act (NDPA), Part IV, Sections 29-36."
|
|
61
|
+
*/
|
|
62
|
+
description?: string;
|
|
63
|
+
/**
|
|
64
|
+
* Text for the submit button
|
|
65
|
+
* @default "Submit Request"
|
|
66
|
+
*/
|
|
67
|
+
submitButtonText?: string;
|
|
68
|
+
/**
|
|
69
|
+
* Custom CSS class for the form
|
|
70
|
+
*/
|
|
71
|
+
className?: string;
|
|
72
|
+
/**
|
|
73
|
+
* Custom CSS class for the submit button
|
|
74
|
+
*/
|
|
75
|
+
buttonClassName?: string;
|
|
76
|
+
/**
|
|
77
|
+
* Whether to show a confirmation message after submission
|
|
78
|
+
* @default true
|
|
79
|
+
*/
|
|
80
|
+
showConfirmation?: boolean;
|
|
81
|
+
/**
|
|
82
|
+
* Confirmation message to display after submission
|
|
83
|
+
* @default "Your request has been submitted successfully. You will receive a confirmation email shortly."
|
|
84
|
+
*/
|
|
85
|
+
confirmationMessage?: string;
|
|
86
|
+
/**
|
|
87
|
+
* Whether to require identity verification
|
|
88
|
+
* @default true
|
|
89
|
+
*/
|
|
90
|
+
requireIdentityVerification?: boolean;
|
|
91
|
+
/**
|
|
92
|
+
* Types of identifiers accepted for verification
|
|
93
|
+
* @default ["email", "account", "customer_id"]
|
|
94
|
+
*/
|
|
95
|
+
identifierTypes?: Array<{
|
|
96
|
+
id: string;
|
|
97
|
+
label: string;
|
|
98
|
+
}>;
|
|
99
|
+
/**
|
|
100
|
+
* Whether to collect additional contact information
|
|
101
|
+
* @default true
|
|
102
|
+
*/
|
|
103
|
+
collectAdditionalContact?: boolean;
|
|
104
|
+
/**
|
|
105
|
+
* Custom labels for form fields
|
|
106
|
+
*/
|
|
107
|
+
labels?: {
|
|
108
|
+
name?: string;
|
|
109
|
+
email?: string;
|
|
110
|
+
requestType?: string;
|
|
111
|
+
description?: string;
|
|
112
|
+
submit?: string;
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* Object of CSS class overrides keyed by semantic section name.
|
|
116
|
+
*/
|
|
117
|
+
classNames?: DSRRequestFormClassNames;
|
|
118
|
+
/**
|
|
119
|
+
* When true, all default Tailwind classes are removed so consumers
|
|
120
|
+
* can style from scratch using classNames.
|
|
121
|
+
*/
|
|
122
|
+
unstyled?: boolean;
|
|
123
|
+
/**
|
|
124
|
+
* Whether the form is currently submitting.
|
|
125
|
+
* When true, the submit button is disabled and shows "Submitting..." text.
|
|
126
|
+
*/
|
|
127
|
+
isSubmitting?: boolean;
|
|
128
|
+
/**
|
|
129
|
+
* Default values to pre-fill form fields.
|
|
130
|
+
* Useful for editing existing requests or pre-populating known data.
|
|
131
|
+
*/
|
|
132
|
+
defaultValues?: Partial<DSRFormSubmission>;
|
|
133
|
+
/**
|
|
134
|
+
* Callback fired when the form is reset via the Reset button.
|
|
135
|
+
* To fully remount the component (clearing all internal state),
|
|
136
|
+
* change the `key` prop from the parent.
|
|
137
|
+
*/
|
|
138
|
+
onReset?: () => void;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Data Subject Request form component. Implements NDPA Part IV, Sections 29-36
|
|
142
|
+
* covering data subject rights including access, rectification, erasure, and portability.
|
|
143
|
+
*/
|
|
144
|
+
declare const DSRRequestForm: React__default.FC<DSRRequestFormProps>;
|
|
145
|
+
|
|
146
|
+
export { type DSRFormSubmission as D, DSRRequestForm as a, type DSRRequestFormClassNames as b, type DSRRequestFormProps as c };
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import React__default from 'react';
|
|
2
|
+
import { D as DSRRequest, a as DSRStatus } from './dsr-Cm9lzWG7.mjs';
|
|
3
|
+
|
|
4
|
+
interface DSRDashboardClassNames {
|
|
5
|
+
root?: string;
|
|
6
|
+
header?: string;
|
|
7
|
+
title?: string;
|
|
8
|
+
filters?: string;
|
|
9
|
+
requestList?: string;
|
|
10
|
+
requestItem?: string;
|
|
11
|
+
statusBadge?: string;
|
|
12
|
+
detailPanel?: string;
|
|
13
|
+
}
|
|
14
|
+
interface DSRDashboardProps {
|
|
15
|
+
/**
|
|
16
|
+
* List of DSR requests to display
|
|
17
|
+
*/
|
|
18
|
+
requests: DSRRequest[];
|
|
19
|
+
/**
|
|
20
|
+
* Callback function called when a request is selected
|
|
21
|
+
*/
|
|
22
|
+
onSelectRequest?: (requestId: string) => void;
|
|
23
|
+
/**
|
|
24
|
+
* Callback function called when a request status is updated
|
|
25
|
+
*/
|
|
26
|
+
onUpdateStatus?: (requestId: string, status: DSRStatus) => void;
|
|
27
|
+
/**
|
|
28
|
+
* Callback function called when a request is assigned
|
|
29
|
+
*/
|
|
30
|
+
onAssignRequest?: (requestId: string, assignee: string) => void;
|
|
31
|
+
/**
|
|
32
|
+
* Title displayed on the dashboard
|
|
33
|
+
* @default "Data Subject Request Dashboard"
|
|
34
|
+
*/
|
|
35
|
+
title?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Description text displayed on the dashboard
|
|
38
|
+
* @default "Track and manage data subject requests in compliance with NDPA Part IV requirements."
|
|
39
|
+
*/
|
|
40
|
+
description?: string;
|
|
41
|
+
/**
|
|
42
|
+
* Custom CSS class for the dashboard
|
|
43
|
+
*/
|
|
44
|
+
className?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Custom CSS class for the buttons
|
|
47
|
+
*/
|
|
48
|
+
buttonClassName?: string;
|
|
49
|
+
/**
|
|
50
|
+
* Whether to show the request details
|
|
51
|
+
* @default true
|
|
52
|
+
*/
|
|
53
|
+
showRequestDetails?: boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Whether to show the request timeline
|
|
56
|
+
* @default true
|
|
57
|
+
*/
|
|
58
|
+
showRequestTimeline?: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Whether to show the deadline alerts
|
|
61
|
+
* @default true
|
|
62
|
+
*/
|
|
63
|
+
showDeadlineAlerts?: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* List of possible assignees
|
|
66
|
+
*/
|
|
67
|
+
assignees?: string[];
|
|
68
|
+
/**
|
|
69
|
+
* Object of CSS class overrides keyed by semantic section name.
|
|
70
|
+
*/
|
|
71
|
+
classNames?: DSRDashboardClassNames;
|
|
72
|
+
/**
|
|
73
|
+
* When true, all default Tailwind classes are removed so consumers
|
|
74
|
+
* can style from scratch using classNames.
|
|
75
|
+
*/
|
|
76
|
+
unstyled?: boolean;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Data Subject Request dashboard component. Supports compliance with NDPA Part IV,
|
|
80
|
+
* providing tools to track, manage, and respond to data subject requests within required timeframes.
|
|
81
|
+
*/
|
|
82
|
+
declare const DSRDashboard: React__default.FC<DSRDashboardProps>;
|
|
83
|
+
|
|
84
|
+
interface DSRTrackerClassNames {
|
|
85
|
+
root?: string;
|
|
86
|
+
header?: string;
|
|
87
|
+
title?: string;
|
|
88
|
+
stats?: string;
|
|
89
|
+
statCard?: string;
|
|
90
|
+
table?: string;
|
|
91
|
+
tableHeader?: string;
|
|
92
|
+
tableRow?: string;
|
|
93
|
+
statusBadge?: string;
|
|
94
|
+
}
|
|
95
|
+
interface DSRTrackerProps {
|
|
96
|
+
/**
|
|
97
|
+
* List of DSR requests to track
|
|
98
|
+
*/
|
|
99
|
+
requests: DSRRequest[];
|
|
100
|
+
/**
|
|
101
|
+
* Callback function called when a request is selected
|
|
102
|
+
*/
|
|
103
|
+
onSelectRequest?: (requestId: string) => void;
|
|
104
|
+
/**
|
|
105
|
+
* Title displayed on the tracker
|
|
106
|
+
* @default "DSR Request Tracker"
|
|
107
|
+
*/
|
|
108
|
+
title?: string;
|
|
109
|
+
/**
|
|
110
|
+
* Description text displayed on the tracker
|
|
111
|
+
* @default "Track the status and progress of data subject requests as required by NDPA Part IV."
|
|
112
|
+
*/
|
|
113
|
+
description?: string;
|
|
114
|
+
/**
|
|
115
|
+
* Custom CSS class for the tracker
|
|
116
|
+
*/
|
|
117
|
+
className?: string;
|
|
118
|
+
/**
|
|
119
|
+
* Custom CSS class for the buttons
|
|
120
|
+
*/
|
|
121
|
+
buttonClassName?: string;
|
|
122
|
+
/**
|
|
123
|
+
* Whether to show the summary statistics
|
|
124
|
+
* @default true
|
|
125
|
+
*/
|
|
126
|
+
showSummaryStats?: boolean;
|
|
127
|
+
/**
|
|
128
|
+
* Whether to show the request type breakdown
|
|
129
|
+
* @default true
|
|
130
|
+
*/
|
|
131
|
+
showTypeBreakdown?: boolean;
|
|
132
|
+
/**
|
|
133
|
+
* Whether to show the status breakdown
|
|
134
|
+
* @default true
|
|
135
|
+
*/
|
|
136
|
+
showStatusBreakdown?: boolean;
|
|
137
|
+
/**
|
|
138
|
+
* Whether to show the timeline chart
|
|
139
|
+
* @default true
|
|
140
|
+
*/
|
|
141
|
+
showTimelineChart?: boolean;
|
|
142
|
+
/**
|
|
143
|
+
* Whether to show the overdue requests
|
|
144
|
+
* @default true
|
|
145
|
+
*/
|
|
146
|
+
showOverdueRequests?: boolean;
|
|
147
|
+
/**
|
|
148
|
+
* Object of CSS class overrides keyed by semantic section name.
|
|
149
|
+
*/
|
|
150
|
+
classNames?: DSRTrackerClassNames;
|
|
151
|
+
/**
|
|
152
|
+
* When true, all default Tailwind classes are removed so consumers
|
|
153
|
+
* can style from scratch using classNames.
|
|
154
|
+
*/
|
|
155
|
+
unstyled?: boolean;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* DSR tracking and analytics component. Supports compliance with NDPA Part IV,
|
|
159
|
+
* providing summary statistics, deadline tracking, and compliance metrics for data subject requests.
|
|
160
|
+
*/
|
|
161
|
+
declare const DSRTracker: React__default.FC<DSRTrackerProps>;
|
|
162
|
+
|
|
163
|
+
export { DSRDashboard as D, type DSRDashboardClassNames as a, DSRTracker as b, type DSRTrackerClassNames as c, type DSRDashboardProps as d, type DSRTrackerProps as e };
|