@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.
Files changed (192) hide show
  1. package/README.md +226 -246
  2. package/dist/BreachReportForm-DpRrBoxU.d.ts +158 -0
  3. package/dist/BreachReportForm-yJ2Zl6gz.d.mts +158 -0
  4. package/dist/ConsentBanner-CDRT0o2k.d.mts +146 -0
  5. package/dist/ConsentBanner-Vxyt8SCX.d.ts +146 -0
  6. package/dist/{cross-border-entry-BrWVPly6.d.ts → CrossBorderTransferManager-D5Lc0e46.d.ts} +4 -5
  7. package/dist/{cross-border-entry-cCTvpwnT.d.mts → CrossBorderTransferManager-DkZhv9vD.d.mts} +4 -5
  8. package/dist/DPIAQuestionnaire-BkejviPj.d.mts +123 -0
  9. package/dist/DPIAQuestionnaire-DdSqXG3x.d.ts +123 -0
  10. package/dist/DSRRequestForm-BY8PogCU.d.mts +146 -0
  11. package/dist/DSRRequestForm-CHUg9cZh.d.ts +146 -0
  12. package/dist/DSRTracker-C6u_jAaK.d.mts +163 -0
  13. package/dist/DSRTracker-Dr_aT0pg.d.ts +163 -0
  14. package/dist/{lawful-basis-entry-CxZrofwG.d.mts → LawfulBasisTracker-CBqOxX1D.d.mts} +3 -5
  15. package/dist/{lawful-basis-entry-15qjKcNO.d.ts → LawfulBasisTracker-Cg30NbDA.d.ts} +3 -5
  16. package/dist/NDPRDashboard-CLJpEg0X.d.mts +44 -0
  17. package/dist/NDPRDashboard-DDWNd2Ah.d.ts +44 -0
  18. package/dist/{policy-E0fXZkda.d.mts → PolicyExporter-Bgi6nz82.d.mts} +5 -7
  19. package/dist/{policy-D2_jh5-T.d.ts → PolicyExporter-BnvuFncj.d.ts} +5 -7
  20. package/dist/{ropa-entry-B0D7X1GV.d.ts → ROPAManager-BS4eB8Hw.d.mts} +4 -5
  21. package/dist/{ropa-entry-DiOThOc2.d.mts → ROPAManager-qxTrXLkD.d.ts} +4 -5
  22. package/dist/RegulatoryReportGenerator-BUYgzTTT.d.ts +282 -0
  23. package/dist/RegulatoryReportGenerator-DwcHcEFp.d.mts +282 -0
  24. package/dist/StepIndicator-D-nwRTyo.d.mts +171 -0
  25. package/dist/StepIndicator-D9ZATz_O.d.ts +171 -0
  26. package/dist/adapters.d.mts +25 -0
  27. package/dist/adapters.d.ts +25 -0
  28. package/dist/adapters.js +2 -0
  29. package/dist/adapters.mjs +2 -0
  30. package/dist/breach.d.mts +36 -431
  31. package/dist/breach.d.ts +36 -431
  32. package/dist/breach.js +1 -1
  33. package/dist/breach.mjs +1 -1
  34. package/dist/chunk-27NYSWUG.mjs +2 -0
  35. package/dist/chunk-2ORDHJRD.js +2 -0
  36. package/dist/chunk-2W7ARAW2.js +2 -0
  37. package/dist/chunk-3F34NACG.js +2 -0
  38. package/dist/chunk-3UWT64FI.mjs +2 -0
  39. package/dist/chunk-3V23O4ZJ.js +2 -0
  40. package/dist/chunk-3XAUN5IM.mjs +3 -0
  41. package/dist/chunk-44W4H2EY.js +2 -0
  42. package/dist/chunk-5VMHKNJY.js +2 -0
  43. package/dist/chunk-6D3ZUGBB.mjs +2 -0
  44. package/dist/chunk-6E54NSAO.mjs +2 -0
  45. package/dist/chunk-7F5F5YWI.mjs +2 -0
  46. package/dist/chunk-DQLDX5X6.js +316 -0
  47. package/dist/chunk-FR7ZYZXB.js +2 -0
  48. package/dist/chunk-FY5G6DGZ.js +7 -0
  49. package/dist/chunk-G26I6MP5.mjs +2 -0
  50. package/dist/chunk-GCQRHMTQ.mjs +144 -0
  51. package/dist/chunk-GPJVTGHR.mjs +2 -0
  52. package/dist/chunk-GVANK6PL.js +3 -0
  53. package/dist/chunk-HNZK7LY3.mjs +2 -0
  54. package/dist/chunk-IKEPXHCZ.js +2 -0
  55. package/dist/chunk-IQQW52EF.js +2 -0
  56. package/dist/chunk-ISSGO2YT.mjs +72 -0
  57. package/dist/chunk-JZKH5RMC.js +3 -0
  58. package/dist/chunk-KHRBU5K7.js +2 -0
  59. package/dist/chunk-LFNA6WYQ.mjs +2 -0
  60. package/dist/chunk-LU4PFST7.js +144 -0
  61. package/dist/chunk-NPI5T6NH.mjs +7 -0
  62. package/dist/chunk-NPLXE43Q.mjs +2 -0
  63. package/dist/chunk-P7BSBCB3.js +2 -0
  64. package/dist/chunk-PEH5GIMN.js +2 -0
  65. package/dist/chunk-RSUDIFZV.mjs +2 -0
  66. package/dist/chunk-SBNAMPAP.mjs +2 -0
  67. package/dist/chunk-SVCRYM4I.mjs +2 -0
  68. package/dist/chunk-TKBZRULW.mjs +316 -0
  69. package/dist/chunk-TVW6KBVV.mjs +2 -0
  70. package/dist/chunk-U6VWHC46.js +72 -0
  71. package/dist/chunk-UK656RCG.js +2 -0
  72. package/dist/chunk-UNKXYVXY.js +2 -0
  73. package/dist/chunk-UOSEH6DC.js +2 -0
  74. package/dist/chunk-V37BM2LF.js +2 -0
  75. package/dist/chunk-V3MXWGXU.mjs +2 -0
  76. package/dist/chunk-VDZKGCAF.js +2 -0
  77. package/dist/chunk-WLSW4Z4W.mjs +2 -0
  78. package/dist/chunk-XSK4BSZJ.mjs +2 -0
  79. package/dist/chunk-YJCGEOLO.mjs +2 -0
  80. package/dist/chunk-ZCZ5RRZO.js +2 -0
  81. package/dist/chunk-ZQSX5ZHB.mjs +3 -0
  82. package/dist/compliance-score-racQe_E_.d.mts +115 -0
  83. package/dist/compliance-score-racQe_E_.d.ts +115 -0
  84. package/dist/consent.d.mts +67 -295
  85. package/dist/consent.d.ts +67 -295
  86. package/dist/consent.js +1 -1
  87. package/dist/consent.mjs +1 -1
  88. package/dist/core.d.mts +14 -48
  89. package/dist/core.d.ts +14 -48
  90. package/dist/core.js +1 -1
  91. package/dist/core.mjs +1 -1
  92. package/dist/cross-border-BBi9rZyO.d.mts +54 -0
  93. package/dist/cross-border-Dy-U9Hu6.d.ts +54 -0
  94. package/dist/{cross-border-BMcqLvjC.d.mts → cross-border-UyT00llA.d.mts} +1 -52
  95. package/dist/{cross-border-BMcqLvjC.d.ts → cross-border-UyT00llA.d.ts} +1 -52
  96. package/dist/cross-border.d.mts +32 -4
  97. package/dist/cross-border.d.ts +32 -4
  98. package/dist/cross-border.js +1 -1
  99. package/dist/cross-border.mjs +1 -1
  100. package/dist/dpia.d.mts +28 -284
  101. package/dist/dpia.d.ts +28 -284
  102. package/dist/dpia.js +1 -1
  103. package/dist/dpia.mjs +1 -1
  104. package/dist/dsr.d.mts +29 -300
  105. package/dist/dsr.d.ts +29 -300
  106. package/dist/dsr.js +1 -1
  107. package/dist/dsr.mjs +1 -1
  108. package/dist/hooks.d.mts +23 -10
  109. package/dist/hooks.d.ts +23 -10
  110. package/dist/hooks.js +1 -1
  111. package/dist/hooks.mjs +1 -1
  112. package/dist/index.d.mts +28 -19
  113. package/dist/index.d.ts +28 -19
  114. package/dist/index.js +1 -1
  115. package/dist/index.mjs +1 -1
  116. package/dist/lawful-basis.d.mts +31 -4
  117. package/dist/lawful-basis.d.ts +31 -4
  118. package/dist/lawful-basis.js +1 -1
  119. package/dist/lawful-basis.mjs +1 -1
  120. package/dist/policy-engine-C-tShzZH.d.mts +154 -0
  121. package/dist/policy-engine-DSQpT55_.d.ts +154 -0
  122. package/dist/policy-sections-CfNVBLCh.d.mts +54 -0
  123. package/dist/policy-sections-DqH0iZRf.d.ts +54 -0
  124. package/dist/policy.d.mts +117 -4
  125. package/dist/policy.d.ts +117 -4
  126. package/dist/policy.js +1 -1
  127. package/dist/policy.mjs +1 -1
  128. package/dist/presets.d.mts +114 -0
  129. package/dist/presets.d.ts +114 -0
  130. package/dist/presets.js +2 -0
  131. package/dist/presets.mjs +2 -0
  132. package/dist/{ropa-Li6UlL5H.d.ts → ropa-BDTM06tr.d.ts} +1 -49
  133. package/dist/{ropa-DP7pPPql.d.mts → ropa-CFHuT7jE.d.mts} +1 -49
  134. package/dist/ropa-CyynscU6.d.ts +51 -0
  135. package/dist/ropa-NIgxd8uP.d.mts +51 -0
  136. package/dist/ropa.d.mts +30 -4
  137. package/dist/ropa.d.ts +30 -4
  138. package/dist/ropa.js +1 -1
  139. package/dist/ropa.mjs +1 -1
  140. package/dist/sanitize-9mOO_cJW.d.mts +147 -0
  141. package/dist/sanitize-9mOO_cJW.d.ts +147 -0
  142. package/dist/styling-B7CBzYG7.d.ts +165 -0
  143. package/dist/styling-uJLsBbER.d.mts +165 -0
  144. package/dist/types-DK2CoKOC.d.mts +10 -0
  145. package/dist/types-DK2CoKOC.d.ts +10 -0
  146. package/dist/unstyled.d.mts +4 -4
  147. package/dist/unstyled.d.ts +4 -4
  148. package/dist/useAdaptivePolicyWizard-B9Op2gYM.d.ts +52 -0
  149. package/dist/useAdaptivePolicyWizard-N4eUM4Tj.d.mts +52 -0
  150. package/dist/{useBreach-BBSoIcZO.d.mts → useBreach-CPr86Yan.d.mts} +18 -2
  151. package/dist/{useBreach-lFLbSyAN.d.ts → useBreach-DkVXvtJK.d.ts} +18 -2
  152. package/dist/{useConsent-D0pAfTlb.d.ts → useConsent-DCNkIJHR.d.mts} +12 -2
  153. package/dist/{useConsent-DOt2Njst.d.mts → useConsent-dOcELSfX.d.ts} +12 -2
  154. package/dist/{useCrossBorderTransfer-DmtACeqW.d.ts → useCrossBorderTransfer-BGNZt2lk.d.mts} +15 -3
  155. package/dist/{useCrossBorderTransfer-BZVFCXfr.d.mts → useCrossBorderTransfer-COqjgjsu.d.ts} +15 -3
  156. package/dist/{useDPIA-DBsg2yZx.d.ts → useDPIA-Dl16Te3r.d.ts} +13 -2
  157. package/dist/{useDPIA-Da7-Q_yW.d.mts → useDPIA-DzWye8JB.d.mts} +13 -2
  158. package/dist/{useDSR-YYZ6FYFs.d.mts → useDSR-C1LksCfP.d.mts} +13 -2
  159. package/dist/{useDSR-CYI7WCXr.d.ts → useDSR-DZel52O1.d.ts} +13 -2
  160. package/dist/{useDefaultPrivacyPolicy-CUluF_ic.d.mts → useDefaultPrivacyPolicy-BsYttRey.d.mts} +13 -2
  161. package/dist/{useDefaultPrivacyPolicy-B7kTHbZh.d.ts → useDefaultPrivacyPolicy-C-mG-A5S.d.ts} +13 -2
  162. package/dist/{useLawfulBasis-CpWuHtyh.d.mts → useLawfulBasis-CKJ-kw84.d.mts} +13 -2
  163. package/dist/{useLawfulBasis-CCWF9waR.d.ts → useLawfulBasis-DFTmu1ca.d.ts} +13 -2
  164. package/dist/{useROPA-BhJ3kvHp.d.ts → useROPA-BSSU1rfx.d.ts} +14 -2
  165. package/dist/{useROPA-DLFdjkxP.d.mts → useROPA-C2hjaBTz.d.mts} +14 -2
  166. package/package.json +24 -3
  167. package/dist/chunk-2XFAV267.mjs +0 -2
  168. package/dist/chunk-32UIWTGD.js +0 -72
  169. package/dist/chunk-3YCV2BA6.js +0 -2
  170. package/dist/chunk-4A354HL3.js +0 -2
  171. package/dist/chunk-5ZBO2UPH.js +0 -2
  172. package/dist/chunk-6GGGTRDZ.mjs +0 -2
  173. package/dist/chunk-BZTTQS4A.mjs +0 -7
  174. package/dist/chunk-EKVTLHBQ.js +0 -2
  175. package/dist/chunk-GMLNWS2N.mjs +0 -2
  176. package/dist/chunk-IBEKLDBY.mjs +0 -2
  177. package/dist/chunk-ILCNDOBU.js +0 -2
  178. package/dist/chunk-K3GMTMQ6.js +0 -2
  179. package/dist/chunk-L52PDW6O.mjs +0 -2
  180. package/dist/chunk-LI6WJ3LZ.js +0 -2
  181. package/dist/chunk-LXRXDTPI.js +0 -2
  182. package/dist/chunk-NW4A3JW6.mjs +0 -2
  183. package/dist/chunk-OITITR6K.mjs +0 -2
  184. package/dist/chunk-PDJGTQMY.mjs +0 -2
  185. package/dist/chunk-T44JQT2O.mjs +0 -2
  186. package/dist/chunk-TCJCE6WN.js +0 -2
  187. package/dist/chunk-VMJBW3EF.mjs +0 -2
  188. package/dist/chunk-WSHSHIIM.mjs +0 -2
  189. package/dist/chunk-WW3X3ELF.js +0 -2
  190. package/dist/chunk-XMYUYQH7.mjs +0 -72
  191. package/dist/chunk-ZNTMZ6NM.js +0 -7
  192. package/dist/chunk-ZU73VG3X.js +0 -2
@@ -0,0 +1,282 @@
1
+ import React__default from 'react';
2
+ import { a as BreachReport, b as RiskAssessment, R as RegulatoryNotification } from './breach-Eu9byel8.mjs';
3
+
4
+ interface BreachRiskAssessmentClassNames {
5
+ root?: string;
6
+ header?: string;
7
+ title?: string;
8
+ slider?: string;
9
+ riskBadge?: string;
10
+ riskScore?: string;
11
+ notificationStatus?: string;
12
+ submitButton?: string;
13
+ /** Alias for submitButton */
14
+ primaryButton?: string;
15
+ }
16
+ interface BreachRiskAssessmentProps {
17
+ /**
18
+ * The breach data to assess
19
+ */
20
+ breachData: BreachReport;
21
+ /**
22
+ * Initial assessment data (if editing an existing assessment)
23
+ */
24
+ initialAssessment?: Partial<RiskAssessment>;
25
+ /**
26
+ * Callback function called when assessment is completed
27
+ */
28
+ onComplete: (assessment: RiskAssessment) => void;
29
+ /**
30
+ * Title displayed on the assessment form
31
+ * @default "Breach Risk Assessment"
32
+ */
33
+ title?: string;
34
+ /**
35
+ * Description text displayed on the assessment form
36
+ * @default "Assess the risk level of this data breach to determine notification requirements under NDPA Section 40."
37
+ */
38
+ description?: string;
39
+ /**
40
+ * Text for the submit button
41
+ * @default "Complete Assessment"
42
+ */
43
+ submitButtonText?: string;
44
+ /**
45
+ * Custom CSS class for the form
46
+ */
47
+ className?: string;
48
+ /**
49
+ * Custom CSS class for the submit button
50
+ */
51
+ buttonClassName?: string;
52
+ /**
53
+ * Override class names for individual elements
54
+ */
55
+ classNames?: BreachRiskAssessmentClassNames;
56
+ /**
57
+ * Remove all default styles, only applying classNames overrides
58
+ */
59
+ unstyled?: boolean;
60
+ /**
61
+ * Whether to show the breach summary
62
+ * @default true
63
+ */
64
+ showBreachSummary?: boolean;
65
+ /**
66
+ * Whether to show notification requirements after assessment
67
+ * @default true
68
+ */
69
+ showNotificationRequirements?: boolean;
70
+ }
71
+ /**
72
+ * Breach risk assessment component. Implements NDPA Section 40 requirements for assessing
73
+ * breach severity and determining whether NDPC notification is required within 72 hours.
74
+ */
75
+ declare const BreachRiskAssessment: React__default.FC<BreachRiskAssessmentProps>;
76
+
77
+ interface BreachNotificationManagerClassNames {
78
+ root?: string;
79
+ header?: string;
80
+ title?: string;
81
+ breachList?: string;
82
+ breachItem?: string;
83
+ statusBadge?: string;
84
+ timeline?: string;
85
+ timelineStep?: string;
86
+ detailPanel?: string;
87
+ }
88
+ interface BreachNotificationManagerProps {
89
+ /**
90
+ * List of breach reports to manage
91
+ */
92
+ breachReports: BreachReport[];
93
+ /**
94
+ * List of risk assessments
95
+ */
96
+ riskAssessments: RiskAssessment[];
97
+ /**
98
+ * List of regulatory notifications
99
+ */
100
+ regulatoryNotifications: RegulatoryNotification[];
101
+ /**
102
+ * Callback function called when a breach is selected
103
+ */
104
+ onSelectBreach?: (breachId: string) => void;
105
+ /**
106
+ * Callback function called when a risk assessment is requested
107
+ */
108
+ onRequestAssessment?: (breachId: string) => void;
109
+ /**
110
+ * Callback function called when a notification is requested
111
+ */
112
+ onRequestNotification?: (breachId: string) => void;
113
+ /**
114
+ * Title displayed on the manager
115
+ * @default "Breach Notification Manager"
116
+ */
117
+ title?: string;
118
+ /**
119
+ * Description text displayed on the manager
120
+ * @default "Manage data breach notifications and track compliance with NDPA Section 40 requirements."
121
+ */
122
+ description?: string;
123
+ /**
124
+ * Custom CSS class for the manager
125
+ */
126
+ className?: string;
127
+ /**
128
+ * Custom CSS class for the buttons
129
+ */
130
+ buttonClassName?: string;
131
+ /**
132
+ * Override class names for individual elements
133
+ */
134
+ classNames?: BreachNotificationManagerClassNames;
135
+ /**
136
+ * Remove all default styles, only applying classNames overrides
137
+ */
138
+ unstyled?: boolean;
139
+ /**
140
+ * Whether to show the breach details
141
+ * @default true
142
+ */
143
+ showBreachDetails?: boolean;
144
+ /**
145
+ * Whether to show the notification timeline
146
+ * @default true
147
+ */
148
+ showNotificationTimeline?: boolean;
149
+ /**
150
+ * Whether to show the deadline alerts
151
+ * @default true
152
+ */
153
+ showDeadlineAlerts?: boolean;
154
+ }
155
+ /**
156
+ * Breach notification management component. Implements NDPA Section 40 requirements for
157
+ * managing breach notifications, tracking 72-hour NDPC reporting deadlines, and coordinating
158
+ * data subject notifications.
159
+ */
160
+ declare const BreachNotificationManager: React__default.FC<BreachNotificationManagerProps>;
161
+
162
+ interface RegulatoryReportGeneratorClassNames {
163
+ root?: string;
164
+ header?: string;
165
+ title?: string;
166
+ reportPreview?: string;
167
+ field?: string;
168
+ fieldLabel?: string;
169
+ fieldValue?: string;
170
+ generateButton?: string;
171
+ /** Alias for generateButton */
172
+ primaryButton?: string;
173
+ downloadButton?: string;
174
+ /** Alias for downloadButton */
175
+ secondaryButton?: string;
176
+ }
177
+ interface OrganizationInfo {
178
+ /**
179
+ * Name of the organization
180
+ */
181
+ name: string;
182
+ /**
183
+ * Registration number or business ID
184
+ */
185
+ registrationNumber?: string;
186
+ /**
187
+ * Physical address of the organization
188
+ */
189
+ address: string;
190
+ /**
191
+ * Website URL
192
+ */
193
+ website?: string;
194
+ /**
195
+ * Name of the Data Protection Officer
196
+ */
197
+ dpoName: string;
198
+ /**
199
+ * Email of the Data Protection Officer
200
+ */
201
+ dpoEmail: string;
202
+ /**
203
+ * Phone number of the Data Protection Officer
204
+ */
205
+ dpoPhone?: string;
206
+ }
207
+ interface RegulatoryReportGeneratorProps {
208
+ /**
209
+ * The breach data to include in the report
210
+ */
211
+ breachData: BreachReport;
212
+ /**
213
+ * The risk assessment data
214
+ */
215
+ assessmentData?: RiskAssessment;
216
+ /**
217
+ * Organization information to include in the report
218
+ */
219
+ organizationInfo: OrganizationInfo;
220
+ /**
221
+ * Callback function called when the report is generated
222
+ */
223
+ onGenerate: (report: RegulatoryNotification) => void;
224
+ /**
225
+ * Title displayed on the generator form
226
+ * @default "Generate NDPC Notification Report"
227
+ */
228
+ title?: string;
229
+ /**
230
+ * Description text displayed on the generator form
231
+ * @default "Generate a report for submission to the NDPC in compliance with NDPA Section 40 breach notification requirements."
232
+ */
233
+ description?: string;
234
+ /**
235
+ * Text for the generate button
236
+ * @default "Generate Report"
237
+ */
238
+ generateButtonText?: string;
239
+ /**
240
+ * Custom CSS class for the form
241
+ */
242
+ className?: string;
243
+ /**
244
+ * Custom CSS class for the buttons
245
+ */
246
+ buttonClassName?: string;
247
+ /**
248
+ * Override class names for individual elements
249
+ */
250
+ classNames?: RegulatoryReportGeneratorClassNames;
251
+ /**
252
+ * Remove all default styles, only applying classNames overrides
253
+ */
254
+ unstyled?: boolean;
255
+ /**
256
+ * Whether to show a preview of the generated report
257
+ * @default true
258
+ */
259
+ showPreview?: boolean;
260
+ /**
261
+ * Whether to allow editing the report content
262
+ * @default true
263
+ */
264
+ allowEditing?: boolean;
265
+ /**
266
+ * Whether to allow downloading the report
267
+ * @default true
268
+ */
269
+ allowDownload?: boolean;
270
+ /**
271
+ * Format for downloading the report
272
+ * @default "pdf"
273
+ */
274
+ downloadFormat?: 'pdf' | 'docx' | 'html';
275
+ }
276
+ /**
277
+ * Regulatory report generator component. Implements NDPA Section 40 requirements for
278
+ * generating formal breach notification reports for submission to the NDPC.
279
+ */
280
+ declare const RegulatoryReportGenerator: React__default.FC<RegulatoryReportGeneratorProps>;
281
+
282
+ export { BreachNotificationManager as B, RegulatoryReportGenerator as R, type BreachNotificationManagerClassNames as a, BreachRiskAssessment as b, type BreachRiskAssessmentClassNames as c, type RegulatoryReportGeneratorClassNames as d, type BreachRiskAssessmentProps as e, type BreachNotificationManagerProps as f, type RegulatoryReportGeneratorProps as g };
@@ -0,0 +1,171 @@
1
+ import React__default from 'react';
2
+ import { a as DPIAResult, c as DPIASection } from './dpia-5OQVA1R_.mjs';
3
+
4
+ interface DPIAReportClassNames {
5
+ /** Outermost wrapper */
6
+ root?: string;
7
+ /** Report header area */
8
+ header?: string;
9
+ /** Main report title */
10
+ title?: string;
11
+ /** Executive summary section */
12
+ summary?: string;
13
+ /** Risk level badge */
14
+ riskBadge?: string;
15
+ /** Risks table element */
16
+ riskTable?: string;
17
+ /** Individual risk row */
18
+ riskRow?: string;
19
+ /** Recommendation list item */
20
+ recommendation?: string;
21
+ /** Conclusion text */
22
+ conclusion?: string;
23
+ /** Print button */
24
+ printButton?: string;
25
+ /** Alias for printButton */
26
+ primaryButton?: string;
27
+ }
28
+ interface DPIAReportProps {
29
+ /**
30
+ * The DPIA result to display
31
+ */
32
+ result: DPIAResult;
33
+ /**
34
+ * The sections of the DPIA questionnaire
35
+ */
36
+ sections: DPIASection[];
37
+ /**
38
+ * Whether to show the full report or just a summary
39
+ * @default true
40
+ */
41
+ showFullReport?: boolean;
42
+ /**
43
+ * Whether to allow printing the report
44
+ * @default true
45
+ */
46
+ allowPrint?: boolean;
47
+ /**
48
+ * Whether to allow exporting the report as PDF
49
+ * @default true
50
+ */
51
+ allowExport?: boolean;
52
+ /**
53
+ * Callback function called when the report is exported
54
+ */
55
+ onExport?: (format: 'pdf' | 'docx' | 'html') => void;
56
+ /**
57
+ * Custom CSS class for the report container
58
+ */
59
+ className?: string;
60
+ /**
61
+ * Custom CSS class for the buttons
62
+ */
63
+ buttonClassName?: string;
64
+ /**
65
+ * Per-section class name overrides
66
+ */
67
+ classNames?: DPIAReportClassNames;
68
+ /**
69
+ * When true, all default classes are stripped.
70
+ * Only explicit overrides from `classNames` are applied.
71
+ * @default false
72
+ */
73
+ unstyled?: boolean;
74
+ }
75
+ /**
76
+ * DPIA report component. Implements NDPA Sections 38-39 requirements for documenting
77
+ * and presenting Data Protection Impact Assessment findings, risks, and recommendations.
78
+ */
79
+ declare const DPIAReport: React__default.FC<DPIAReportProps>;
80
+
81
+ interface Step {
82
+ /**
83
+ * Unique identifier for the step
84
+ */
85
+ id: string;
86
+ /**
87
+ * Display label for the step
88
+ */
89
+ label: string;
90
+ /**
91
+ * Optional description for the step
92
+ */
93
+ description?: string;
94
+ /**
95
+ * Whether the step is completed
96
+ */
97
+ completed: boolean;
98
+ /**
99
+ * Whether the step is the current active step
100
+ */
101
+ active: boolean;
102
+ /**
103
+ * Optional icon for the step
104
+ */
105
+ icon?: React__default.ReactNode;
106
+ }
107
+ interface StepIndicatorClassNames {
108
+ /** Outermost wrapper */
109
+ root?: string;
110
+ /** Individual step wrapper */
111
+ step?: string;
112
+ /** Active step circle / indicator */
113
+ stepActive?: string;
114
+ /** Completed step circle / indicator */
115
+ stepCompleted?: string;
116
+ /** Pending (incomplete, inactive) step circle / indicator */
117
+ stepPending?: string;
118
+ /** Connector line between steps */
119
+ connector?: string;
120
+ /** Step label text */
121
+ label?: string;
122
+ }
123
+ interface StepIndicatorProps {
124
+ /**
125
+ * Array of steps to display
126
+ */
127
+ steps: Step[];
128
+ /**
129
+ * Callback function called when a step is clicked
130
+ */
131
+ onStepClick?: (stepId: string) => void;
132
+ /**
133
+ * Whether the steps are clickable
134
+ * @default true
135
+ */
136
+ clickable?: boolean;
137
+ /**
138
+ * Orientation of the step indicator
139
+ * @default "horizontal"
140
+ */
141
+ orientation?: 'horizontal' | 'vertical';
142
+ /**
143
+ * Custom CSS class for the container
144
+ */
145
+ className?: string;
146
+ /**
147
+ * Custom CSS class for the active step
148
+ */
149
+ activeStepClassName?: string;
150
+ /**
151
+ * Custom CSS class for completed steps
152
+ */
153
+ completedStepClassName?: string;
154
+ /**
155
+ * Custom CSS class for incomplete steps
156
+ */
157
+ incompleteStepClassName?: string;
158
+ /**
159
+ * Per-section class name overrides
160
+ */
161
+ classNames?: StepIndicatorClassNames;
162
+ /**
163
+ * When true, all default classes are stripped.
164
+ * Only explicit overrides from `classNames` are applied.
165
+ * @default false
166
+ */
167
+ unstyled?: boolean;
168
+ }
169
+ declare const StepIndicator: React__default.FC<StepIndicatorProps>;
170
+
171
+ export { DPIAReport as D, StepIndicator as S, type DPIAReportClassNames as a, type StepIndicatorClassNames as b, type DPIAReportProps as c, type StepIndicatorProps as d };
@@ -0,0 +1,171 @@
1
+ import React__default from 'react';
2
+ import { a as DPIAResult, c as DPIASection } from './dpia-5OQVA1R_.js';
3
+
4
+ interface DPIAReportClassNames {
5
+ /** Outermost wrapper */
6
+ root?: string;
7
+ /** Report header area */
8
+ header?: string;
9
+ /** Main report title */
10
+ title?: string;
11
+ /** Executive summary section */
12
+ summary?: string;
13
+ /** Risk level badge */
14
+ riskBadge?: string;
15
+ /** Risks table element */
16
+ riskTable?: string;
17
+ /** Individual risk row */
18
+ riskRow?: string;
19
+ /** Recommendation list item */
20
+ recommendation?: string;
21
+ /** Conclusion text */
22
+ conclusion?: string;
23
+ /** Print button */
24
+ printButton?: string;
25
+ /** Alias for printButton */
26
+ primaryButton?: string;
27
+ }
28
+ interface DPIAReportProps {
29
+ /**
30
+ * The DPIA result to display
31
+ */
32
+ result: DPIAResult;
33
+ /**
34
+ * The sections of the DPIA questionnaire
35
+ */
36
+ sections: DPIASection[];
37
+ /**
38
+ * Whether to show the full report or just a summary
39
+ * @default true
40
+ */
41
+ showFullReport?: boolean;
42
+ /**
43
+ * Whether to allow printing the report
44
+ * @default true
45
+ */
46
+ allowPrint?: boolean;
47
+ /**
48
+ * Whether to allow exporting the report as PDF
49
+ * @default true
50
+ */
51
+ allowExport?: boolean;
52
+ /**
53
+ * Callback function called when the report is exported
54
+ */
55
+ onExport?: (format: 'pdf' | 'docx' | 'html') => void;
56
+ /**
57
+ * Custom CSS class for the report container
58
+ */
59
+ className?: string;
60
+ /**
61
+ * Custom CSS class for the buttons
62
+ */
63
+ buttonClassName?: string;
64
+ /**
65
+ * Per-section class name overrides
66
+ */
67
+ classNames?: DPIAReportClassNames;
68
+ /**
69
+ * When true, all default classes are stripped.
70
+ * Only explicit overrides from `classNames` are applied.
71
+ * @default false
72
+ */
73
+ unstyled?: boolean;
74
+ }
75
+ /**
76
+ * DPIA report component. Implements NDPA Sections 38-39 requirements for documenting
77
+ * and presenting Data Protection Impact Assessment findings, risks, and recommendations.
78
+ */
79
+ declare const DPIAReport: React__default.FC<DPIAReportProps>;
80
+
81
+ interface Step {
82
+ /**
83
+ * Unique identifier for the step
84
+ */
85
+ id: string;
86
+ /**
87
+ * Display label for the step
88
+ */
89
+ label: string;
90
+ /**
91
+ * Optional description for the step
92
+ */
93
+ description?: string;
94
+ /**
95
+ * Whether the step is completed
96
+ */
97
+ completed: boolean;
98
+ /**
99
+ * Whether the step is the current active step
100
+ */
101
+ active: boolean;
102
+ /**
103
+ * Optional icon for the step
104
+ */
105
+ icon?: React__default.ReactNode;
106
+ }
107
+ interface StepIndicatorClassNames {
108
+ /** Outermost wrapper */
109
+ root?: string;
110
+ /** Individual step wrapper */
111
+ step?: string;
112
+ /** Active step circle / indicator */
113
+ stepActive?: string;
114
+ /** Completed step circle / indicator */
115
+ stepCompleted?: string;
116
+ /** Pending (incomplete, inactive) step circle / indicator */
117
+ stepPending?: string;
118
+ /** Connector line between steps */
119
+ connector?: string;
120
+ /** Step label text */
121
+ label?: string;
122
+ }
123
+ interface StepIndicatorProps {
124
+ /**
125
+ * Array of steps to display
126
+ */
127
+ steps: Step[];
128
+ /**
129
+ * Callback function called when a step is clicked
130
+ */
131
+ onStepClick?: (stepId: string) => void;
132
+ /**
133
+ * Whether the steps are clickable
134
+ * @default true
135
+ */
136
+ clickable?: boolean;
137
+ /**
138
+ * Orientation of the step indicator
139
+ * @default "horizontal"
140
+ */
141
+ orientation?: 'horizontal' | 'vertical';
142
+ /**
143
+ * Custom CSS class for the container
144
+ */
145
+ className?: string;
146
+ /**
147
+ * Custom CSS class for the active step
148
+ */
149
+ activeStepClassName?: string;
150
+ /**
151
+ * Custom CSS class for completed steps
152
+ */
153
+ completedStepClassName?: string;
154
+ /**
155
+ * Custom CSS class for incomplete steps
156
+ */
157
+ incompleteStepClassName?: string;
158
+ /**
159
+ * Per-section class name overrides
160
+ */
161
+ classNames?: StepIndicatorClassNames;
162
+ /**
163
+ * When true, all default classes are stripped.
164
+ * Only explicit overrides from `classNames` are applied.
165
+ * @default false
166
+ */
167
+ unstyled?: boolean;
168
+ }
169
+ declare const StepIndicator: React__default.FC<StepIndicatorProps>;
170
+
171
+ export { DPIAReport as D, StepIndicator as S, type DPIAReportClassNames as a, type StepIndicatorClassNames as b, type DPIAReportProps as c, type StepIndicatorProps as d };
@@ -0,0 +1,25 @@
1
+ import { S as StorageAdapter } from './types-DK2CoKOC.mjs';
2
+
3
+ declare function localStorageAdapter<T = unknown>(key: string): StorageAdapter<T>;
4
+
5
+ declare function sessionStorageAdapter<T = unknown>(key: string): StorageAdapter<T>;
6
+
7
+ interface CookieAdapterOptions {
8
+ domain?: string;
9
+ path?: string;
10
+ expires?: number;
11
+ secure?: boolean;
12
+ sameSite?: 'Strict' | 'Lax' | 'None';
13
+ }
14
+ declare function cookieAdapter<T = unknown>(key: string, options?: CookieAdapterOptions): StorageAdapter<T>;
15
+
16
+ interface ApiAdapterOptions {
17
+ headers?: Record<string, string>;
18
+ }
19
+ declare function apiAdapter<T = unknown>(endpoint: string, options?: ApiAdapterOptions): StorageAdapter<T>;
20
+
21
+ declare function memoryAdapter<T = unknown>(initialData?: T): StorageAdapter<T>;
22
+
23
+ declare function composeAdapters<T = unknown>(primary: StorageAdapter<T>, ...secondaries: StorageAdapter<T>[]): StorageAdapter<T>;
24
+
25
+ export { type ApiAdapterOptions, type CookieAdapterOptions, StorageAdapter, apiAdapter, composeAdapters, cookieAdapter, localStorageAdapter, memoryAdapter, sessionStorageAdapter };
@@ -0,0 +1,25 @@
1
+ import { S as StorageAdapter } from './types-DK2CoKOC.js';
2
+
3
+ declare function localStorageAdapter<T = unknown>(key: string): StorageAdapter<T>;
4
+
5
+ declare function sessionStorageAdapter<T = unknown>(key: string): StorageAdapter<T>;
6
+
7
+ interface CookieAdapterOptions {
8
+ domain?: string;
9
+ path?: string;
10
+ expires?: number;
11
+ secure?: boolean;
12
+ sameSite?: 'Strict' | 'Lax' | 'None';
13
+ }
14
+ declare function cookieAdapter<T = unknown>(key: string, options?: CookieAdapterOptions): StorageAdapter<T>;
15
+
16
+ interface ApiAdapterOptions {
17
+ headers?: Record<string, string>;
18
+ }
19
+ declare function apiAdapter<T = unknown>(endpoint: string, options?: ApiAdapterOptions): StorageAdapter<T>;
20
+
21
+ declare function memoryAdapter<T = unknown>(initialData?: T): StorageAdapter<T>;
22
+
23
+ declare function composeAdapters<T = unknown>(primary: StorageAdapter<T>, ...secondaries: StorageAdapter<T>[]): StorageAdapter<T>;
24
+
25
+ export { type ApiAdapterOptions, type CookieAdapterOptions, StorageAdapter, apiAdapter, composeAdapters, cookieAdapter, localStorageAdapter, memoryAdapter, sessionStorageAdapter };
@@ -0,0 +1,2 @@
1
+ 'use strict';var chunk3F34NACG_js=require('./chunk-3F34NACG.js'),chunkUK656RCG_js=require('./chunk-UK656RCG.js'),chunkMQFZHA2D_js=require('./chunk-MQFZHA2D.js');function l(e,t={}){var a;let r=(a=t.headers)!=null?a:{};return {load(){return chunkMQFZHA2D_js.d(this,null,function*(){try{let o=yield fetch(e,{method:"GET",headers:chunkMQFZHA2D_js.a({},r)});return o.ok?yield o.json():null}catch(o){return null}})},save(o){return chunkMQFZHA2D_js.d(this,null,function*(){try{yield fetch(e,{method:"POST",headers:chunkMQFZHA2D_js.a({"Content-Type":"application/json"},r),body:JSON.stringify(o)});}catch(d){console.warn(`[ndpr-toolkit] Failed to save to ${e}`);}})},remove(){return chunkMQFZHA2D_js.d(this,null,function*(){try{yield fetch(e,{method:"DELETE",headers:chunkMQFZHA2D_js.a({},r)});}catch(o){console.warn(`[ndpr-toolkit] Failed to delete from ${e}`);}})}}}function f(e){let t=e!=null?e:null;return {load(){return t},save(r){t=r;},remove(){t=null;}}}function u(e,...t){return {load(){return e.load()},save(r){let a=e.save(r),p=()=>chunkMQFZHA2D_js.d(null,null,function*(){for(let o of t)try{yield o.save(r);}catch(d){console.warn("[ndpr-toolkit] Secondary adapter save failed:",d);}});return a instanceof Promise?a.then(()=>p()):p()},remove(){let r=e.remove(),a=()=>chunkMQFZHA2D_js.d(null,null,function*(){for(let p of t)try{yield p.remove();}catch(o){console.warn("[ndpr-toolkit] Secondary adapter remove failed:",o);}});return r instanceof Promise?r.then(()=>a()):a()}}}Object.defineProperty(exports,"cookieAdapter",{enumerable:true,get:function(){return chunk3F34NACG_js.b}});Object.defineProperty(exports,"sessionStorageAdapter",{enumerable:true,get:function(){return chunk3F34NACG_js.a}});Object.defineProperty(exports,"localStorageAdapter",{enumerable:true,get:function(){return chunkUK656RCG_js.a}});exports.apiAdapter=l;exports.composeAdapters=u;exports.memoryAdapter=f;//# sourceMappingURL=adapters.js.map
2
+ //# sourceMappingURL=adapters.js.map
@@ -0,0 +1,2 @@
1
+ export{b as cookieAdapter,a as sessionStorageAdapter}from'./chunk-YJCGEOLO.mjs';export{a as localStorageAdapter}from'./chunk-SBNAMPAP.mjs';import {d,a}from'./chunk-WWT2ZSNU.mjs';function l(e,t={}){var a$1;let r=(a$1=t.headers)!=null?a$1:{};return {load(){return d(this,null,function*(){try{let o=yield fetch(e,{method:"GET",headers:a({},r)});return o.ok?yield o.json():null}catch(o){return null}})},save(o){return d(this,null,function*(){try{yield fetch(e,{method:"POST",headers:a({"Content-Type":"application/json"},r),body:JSON.stringify(o)});}catch(d){console.warn(`[ndpr-toolkit] Failed to save to ${e}`);}})},remove(){return d(this,null,function*(){try{yield fetch(e,{method:"DELETE",headers:a({},r)});}catch(o){console.warn(`[ndpr-toolkit] Failed to delete from ${e}`);}})}}}function f(e){let t=e!=null?e:null;return {load(){return t},save(r){t=r;},remove(){t=null;}}}function u(e,...t){return {load(){return e.load()},save(r){let a=e.save(r),p=()=>d(null,null,function*(){for(let o of t)try{yield o.save(r);}catch(d){console.warn("[ndpr-toolkit] Secondary adapter save failed:",d);}});return a instanceof Promise?a.then(()=>p()):p()},remove(){let r=e.remove(),a=()=>d(null,null,function*(){for(let p of t)try{yield p.remove();}catch(o){console.warn("[ndpr-toolkit] Secondary adapter remove failed:",o);}});return r instanceof Promise?r.then(()=>a()):a()}}}export{l as apiAdapter,u as composeAdapters,f as memoryAdapter};//# sourceMappingURL=adapters.mjs.map
2
+ //# sourceMappingURL=adapters.mjs.map