@tantainnovative/ndpr-toolkit 5.1.4 → 5.3.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/CHANGELOG.md +30 -0
- package/README.md +85 -0
- package/dist/{chunk-YX7DEHPA.mjs → chunk-6A7M4CGJ.mjs} +1 -1
- package/dist/{chunk-JVMHWM3I.js → chunk-7TTXS7JX.js} +1 -1
- package/dist/chunk-GYLUTVKB.js +1 -0
- package/dist/chunk-KOHFQIV4.mjs +1 -0
- package/dist/chunk-NKFTLFPD.mjs +1 -0
- package/dist/chunk-OXFULQTE.js +1 -0
- package/dist/core.d.mts +250 -0
- package/dist/core.d.ts +250 -0
- package/dist/core.js +1 -1
- package/dist/core.mjs +1 -1
- package/dist/headless.d.mts +658 -5
- package/dist/headless.d.ts +658 -5
- package/dist/headless.js +1 -1
- package/dist/headless.mjs +1 -1
- package/dist/hooks.d.mts +249 -0
- package/dist/hooks.d.ts +249 -0
- package/dist/hooks.js +1 -1
- package/dist/hooks.mjs +1 -1
- package/dist/index.d.mts +272 -0
- package/dist/index.d.ts +272 -0
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/presets.js +1 -1
- package/dist/presets.mjs +1 -1
- package/dist/server.js +1 -1
- package/dist/server.mjs +1 -1
- package/package.json +6 -3
- package/dist/chunk-BHUJWWCO.js +0 -1
- package/dist/chunk-XAB5C2JG.mjs +0 -1
- /package/dist/{chunk-OZCNFB5C.js → chunk-OVW5ASY3.js} +0 -0
- /package/dist/{chunk-GQYBS3A7.mjs → chunk-YQTZWPOS.mjs} +0 -0
package/dist/core.d.ts
CHANGED
|
@@ -62,6 +62,12 @@ export declare const arabicLocale: Required<{
|
|
|
62
62
|
*/
|
|
63
63
|
export declare function assemblePolicy(context: TemplateContext): PolicySection[];
|
|
64
64
|
|
|
65
|
+
/**
|
|
66
|
+
* Assess a breach report against the NDPA S. 40 / GAID 2025 Article 33
|
|
67
|
+
* notification requirements.
|
|
68
|
+
*/
|
|
69
|
+
export declare function assessBreachNotification(report: BreachReport, options?: BreachNotificationOptions): BreachNotificationAssessment;
|
|
70
|
+
|
|
65
71
|
/**
|
|
66
72
|
* Analyzes all processing activities and returns compliance gaps including
|
|
67
73
|
* missing DPO approval, overdue reviews, undocumented justifications,
|
|
@@ -112,6 +118,93 @@ export declare interface BreachCategory {
|
|
|
112
118
|
defaultSeverity: 'low' | 'medium' | 'high' | 'critical';
|
|
113
119
|
}
|
|
114
120
|
|
|
121
|
+
export declare interface BreachNotificationAssessment {
|
|
122
|
+
/** Whether all applicable mandated content items are satisfied. */
|
|
123
|
+
complete: boolean;
|
|
124
|
+
/** Completeness of applicable content items, 0–100. */
|
|
125
|
+
completeness: number;
|
|
126
|
+
/** GAID 2025 Article 33(5) / NDPA S. 40(2) content of the notification to the Commission. */
|
|
127
|
+
notificationToCommission: BreachNotificationItem[];
|
|
128
|
+
/** NDPA S. 40(3) communication to data subjects — populated only when high-risk. */
|
|
129
|
+
dataSubjectCommunication: BreachNotificationItem[];
|
|
130
|
+
/** Whether a data-subject communication is owed (high risk). */
|
|
131
|
+
dataSubjectCommunicationRequired: boolean;
|
|
132
|
+
timing: BreachNotificationTiming;
|
|
133
|
+
/** Labels of unsatisfied applicable items. */
|
|
134
|
+
missing: string[];
|
|
135
|
+
/** Actionable next steps, including timing warnings. */
|
|
136
|
+
recommendations: string[];
|
|
137
|
+
asOf: number;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
export declare interface BreachNotificationItem {
|
|
141
|
+
/** Stable identifier for the requirement. */
|
|
142
|
+
id: string;
|
|
143
|
+
/** Human-readable requirement. */
|
|
144
|
+
label: string;
|
|
145
|
+
/** Authoritative citation, e.g. `GAID 2025 Art. 33(5)(a)`. */
|
|
146
|
+
section: string;
|
|
147
|
+
/** Whether the report satisfies it. */
|
|
148
|
+
satisfied: boolean;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
/**
|
|
152
|
+
* Personal-data-breach notification completeness checker for NDPA 2023
|
|
153
|
+
* Section 40, as detailed by NDPC General Application and Implementation
|
|
154
|
+
* Directive (GAID) 2025 Article 33.
|
|
155
|
+
*
|
|
156
|
+
* Section 40(2) requires a data controller to notify the Commission within 72
|
|
157
|
+
* hours of becoming aware of a breach likely to result in a risk to data
|
|
158
|
+
* subjects' rights and freedoms. GAID 2025 Article 33(5)(a)–(h) enumerates the
|
|
159
|
+
* content that a notification to the Commission "shall include". Where the
|
|
160
|
+
* breach is likely to result in a *high* risk, Section 40(3) additionally
|
|
161
|
+
* requires the controller to communicate the breach to affected data subjects
|
|
162
|
+
* in plain and clear language.
|
|
163
|
+
*
|
|
164
|
+
* This assesses a `BreachReport` against those requirements: which mandated
|
|
165
|
+
* content items are present, whether the 72-hour window is met, and whether a
|
|
166
|
+
* data-subject communication is owed. It is a documentation-completeness aid,
|
|
167
|
+
* not legal advice — verify against current NDPC guidance.
|
|
168
|
+
*
|
|
169
|
+
* @see NDPA 2023 Section 40 (Personal data breaches)
|
|
170
|
+
* @see NDPC GAID 2025 Article 33 (Data Breach Notification)
|
|
171
|
+
*/
|
|
172
|
+
|
|
173
|
+
export declare interface BreachNotificationOptions {
|
|
174
|
+
/** Risk assessment for the breach; drives whether data-subject communication is required. */
|
|
175
|
+
assessment?: RiskAssessment;
|
|
176
|
+
/** The regulatory notification actually sent, if any — used to judge timeliness. */
|
|
177
|
+
notification?: RegulatoryNotification;
|
|
178
|
+
/** Reference "now" in epoch ms. Defaults to `Date.now()`. */
|
|
179
|
+
asOf?: number;
|
|
180
|
+
/** Notification window in hours. Defaults to 72 (NDPA S. 40(2)). */
|
|
181
|
+
deadlineHours?: number;
|
|
182
|
+
/**
|
|
183
|
+
* Explicit high-risk flag (NDPA S. 40(3)). When omitted, derived from
|
|
184
|
+
* `assessment.highRisksToRightsAndFreedoms`.
|
|
185
|
+
*/
|
|
186
|
+
highRisk?: boolean;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
export declare interface BreachNotificationTiming {
|
|
190
|
+
/** `discoveredAt` + the notification window. */
|
|
191
|
+
deadline: number;
|
|
192
|
+
/** Whole hours between discovery and `asOf`. */
|
|
193
|
+
hoursSinceDiscovery: number;
|
|
194
|
+
/** Whether a regulatory notification has been recorded. */
|
|
195
|
+
notified: boolean;
|
|
196
|
+
/** When the regulatory notification was sent, if any. */
|
|
197
|
+
notifiedAt?: number;
|
|
198
|
+
/** Whether the notification (or, if none, `asOf`) falls within the deadline. */
|
|
199
|
+
withinDeadline: boolean;
|
|
200
|
+
/** Whole hours from `asOf` to the deadline (negative once past). */
|
|
201
|
+
hoursRemaining: number;
|
|
202
|
+
/** Whether the deadline has been missed. */
|
|
203
|
+
overdue: boolean;
|
|
204
|
+
/** Late filings must state the reasons for the delay (NDPA S. 40(2)). */
|
|
205
|
+
requiresDelayJustification: boolean;
|
|
206
|
+
}
|
|
207
|
+
|
|
115
208
|
/**
|
|
116
209
|
* Represents a data breach report
|
|
117
210
|
*/
|
|
@@ -214,6 +307,74 @@ export declare function calculateBreachSeverity(report: BreachReport, assessment
|
|
|
214
307
|
justification: string;
|
|
215
308
|
};
|
|
216
309
|
|
|
310
|
+
/**
|
|
311
|
+
* Compliance Audit Returns (CAR) scheduling under the NDPC General Application
|
|
312
|
+
* and Implementation Directive (GAID) 2025.
|
|
313
|
+
*
|
|
314
|
+
* A Data Controller/Processor of Major Importance (DCPMI) must conduct an
|
|
315
|
+
* initial compliance audit within 15 months of commencing data processing, and
|
|
316
|
+
* thereafter file a Compliance Audit Return with the NDPC annually (default
|
|
317
|
+
* deadline 31 March, filed through the NDPC Information Management Portal/NIMP).
|
|
318
|
+
*
|
|
319
|
+
* This computes the schedule (initial-audit due date, the next annual filing
|
|
320
|
+
* deadline relative to a reference date) and a light status. NDPC deadlines
|
|
321
|
+
* shift (the 2026 filing was extended to 30 May), so the annual deadline is
|
|
322
|
+
* configurable and per-year overrides are supported. The audit *content* itself
|
|
323
|
+
* is the organisation's compliance posture — pair this with `getComplianceScore`.
|
|
324
|
+
*
|
|
325
|
+
* @see NDPC General Application and Implementation Directive (GAID) 2025
|
|
326
|
+
*/
|
|
327
|
+
|
|
328
|
+
export declare interface CARInput {
|
|
329
|
+
/** ISO date (YYYY-MM-DD) the organisation commenced data processing. */
|
|
330
|
+
commencementDate: string;
|
|
331
|
+
/** Reference date to evaluate against (YYYY-MM-DD). Defaults to today. */
|
|
332
|
+
asOf?: string;
|
|
333
|
+
/** DCPMI tier; CAR applies to DCPMIs only. Omit to assume applicable. */
|
|
334
|
+
tier?: DCPMITier;
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
export declare interface CAROptions {
|
|
338
|
+
/** Default annual filing deadline (month is 1-12). Defaults to 31 March. */
|
|
339
|
+
annualDeadline?: {
|
|
340
|
+
month: number;
|
|
341
|
+
day: number;
|
|
342
|
+
};
|
|
343
|
+
/** Per-year overrides for the annual deadline, e.g. `{ 2026: '2026-05-30' }`. */
|
|
344
|
+
deadlineOverrides?: Record<number, string>;
|
|
345
|
+
/** Months after commencement the initial audit is due. Defaults to 15. */
|
|
346
|
+
initialAuditWithinMonths?: number;
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
/**
|
|
350
|
+
* Classify an organisation's DCPMI status, registration tier, annual fee, and
|
|
351
|
+
* Compliance Audit Returns obligations under NDPC GAID 2025.
|
|
352
|
+
*/
|
|
353
|
+
export declare function classifyDCPMI(input: DCPMIInput, options?: DCPMIClassificationOptions): DCPMIClassification;
|
|
354
|
+
|
|
355
|
+
export declare interface ComplianceAuditReturn {
|
|
356
|
+
/** Whether CAR applies (false for non-DCPMI organisations). */
|
|
357
|
+
applicable: boolean;
|
|
358
|
+
schedule: {
|
|
359
|
+
commencementDate: string;
|
|
360
|
+
initialAuditWithinMonths: number;
|
|
361
|
+
/** Commencement date + the initial-audit window. */
|
|
362
|
+
initialAuditDueDate: string;
|
|
363
|
+
/** The next annual filing deadline on or after `asOf`. */
|
|
364
|
+
nextFilingDeadline: string;
|
|
365
|
+
/** The year the next filing deadline falls in. */
|
|
366
|
+
filingYear: number;
|
|
367
|
+
};
|
|
368
|
+
status: {
|
|
369
|
+
/** Whether the initial-audit obligation has arisen (asOf ≥ due date). */
|
|
370
|
+
initialAuditDue: boolean;
|
|
371
|
+
/** Whole days from `asOf` to the next filing deadline. */
|
|
372
|
+
daysUntilNextDeadline: number;
|
|
373
|
+
};
|
|
374
|
+
notes: string[];
|
|
375
|
+
asOf: string;
|
|
376
|
+
}
|
|
377
|
+
|
|
217
378
|
/** A single gap found during NDPA compliance evaluation. */
|
|
218
379
|
export declare interface ComplianceGap {
|
|
219
380
|
/** Machine-readable requirement identifier. */
|
|
@@ -580,6 +741,90 @@ export declare interface DataCategory {
|
|
|
580
741
|
selected: boolean;
|
|
581
742
|
}
|
|
582
743
|
|
|
744
|
+
export declare interface DCPMIClassification {
|
|
745
|
+
/** Registration tier (or `'none'` when not a DCPMI). */
|
|
746
|
+
tier: DCPMITier;
|
|
747
|
+
/** Whether the organisation is a Data Controller/Processor of Major Importance. */
|
|
748
|
+
isDCPMI: boolean;
|
|
749
|
+
/** Annual registration fee in Nigerian Naira (0 when not a volume-tiered DCPMI). */
|
|
750
|
+
annualFeeNGN: number;
|
|
751
|
+
registration: {
|
|
752
|
+
/** Whether NDPC registration is required. */
|
|
753
|
+
required: boolean;
|
|
754
|
+
/** OHL renews registration annually; UHL/EHL register once and file CAR annually. */
|
|
755
|
+
renewsAnnually: boolean;
|
|
756
|
+
};
|
|
757
|
+
compliance: {
|
|
758
|
+
/** Whether the organisation must file annual Compliance Audit Returns (CAR). */
|
|
759
|
+
auditReturnsAnnual: boolean;
|
|
760
|
+
/** Initial compliance audit is due within this many months of commencing processing. */
|
|
761
|
+
initialAuditWithinMonths: number;
|
|
762
|
+
};
|
|
763
|
+
/** Human-readable caveats and next steps. */
|
|
764
|
+
notes: string[];
|
|
765
|
+
/** The count actually used for classification, after defensive normalisation. */
|
|
766
|
+
dataSubjectsConsidered: number;
|
|
767
|
+
}
|
|
768
|
+
|
|
769
|
+
export declare interface DCPMIClassificationOptions {
|
|
770
|
+
thresholds?: Partial<DCPMIThresholds>;
|
|
771
|
+
fees?: Partial<DCPMIFees>;
|
|
772
|
+
}
|
|
773
|
+
|
|
774
|
+
export declare interface DCPMIFees {
|
|
775
|
+
UHL: number;
|
|
776
|
+
EHL: number;
|
|
777
|
+
OHL: number;
|
|
778
|
+
}
|
|
779
|
+
|
|
780
|
+
export declare interface DCPMIInput {
|
|
781
|
+
/** Distinct data subjects whose data was processed in the relevant six-month window. */
|
|
782
|
+
dataSubjectsInSixMonths?: number;
|
|
783
|
+
/** True if the Commission has separately designated/listed the organisation as a DCPMI. */
|
|
784
|
+
isDesignated?: boolean;
|
|
785
|
+
}
|
|
786
|
+
|
|
787
|
+
export declare interface DCPMIThresholds {
|
|
788
|
+
/** Lower bound (inclusive) for OHL. */
|
|
789
|
+
ohl: number;
|
|
790
|
+
/** Lower bound (inclusive) for EHL. */
|
|
791
|
+
ehl: number;
|
|
792
|
+
/** A count strictly greater than this is UHL. */
|
|
793
|
+
uhl: number;
|
|
794
|
+
}
|
|
795
|
+
|
|
796
|
+
/**
|
|
797
|
+
* Data Controller/Processor of Major Importance (DCPMI) classification under the
|
|
798
|
+
* NDPC General Application and Implementation Directive (GAID) 2025.
|
|
799
|
+
*
|
|
800
|
+
* Volume-based tiers — data subjects processed within a six-month window:
|
|
801
|
+
* - UHL (Ultra High Level): more than 5,000 → ₦250,000 / year
|
|
802
|
+
* - EHL (Extra High Level): 1,000 – 5,000 → ₦100,000 / year
|
|
803
|
+
* - OHL (Ordinary High Level): 200 – 999 → ₦10,000 / year
|
|
804
|
+
* - below 200: not a DCPMI by volume
|
|
805
|
+
*
|
|
806
|
+
* Boundaries: the 1,000 mark resolves to EHL (so OHL is 200–999); UHL is
|
|
807
|
+
* strictly greater than 5,000 (so 5,000 itself is EHL). The NDPC has revised
|
|
808
|
+
* classification metrics before and shifts filing deadlines, so thresholds and
|
|
809
|
+
* fees are configurable — treat the defaults as the September 2025 GAID
|
|
810
|
+
* baseline, not a constant.
|
|
811
|
+
*
|
|
812
|
+
* `isDesignated` marks an organisation the Commission has otherwise listed as a
|
|
813
|
+
* DCPMI; it is then a DCPMI regardless of volume. Below the volume tiers such an
|
|
814
|
+
* organisation is reported as `'listed'` with the fee left at 0 and a note to
|
|
815
|
+
* confirm the applicable tier/fee with the NDPC.
|
|
816
|
+
*
|
|
817
|
+
* @see NDPC General Application and Implementation Directive (GAID) 2025
|
|
818
|
+
* @see NDPC Guidance Notice on the Registration of Data Controllers and Processors of Major Importance
|
|
819
|
+
*/
|
|
820
|
+
export declare type DCPMITier = 'UHL' | 'EHL' | 'OHL' | 'listed' | 'none';
|
|
821
|
+
|
|
822
|
+
/** September 2025 GAID baseline annual fees (NGN). */
|
|
823
|
+
export declare const DEFAULT_DCPMI_FEES_NGN: DCPMIFees;
|
|
824
|
+
|
|
825
|
+
/** September 2025 GAID baseline — override via {@link DCPMIClassificationOptions} as the rules evolve. */
|
|
826
|
+
export declare const DEFAULT_DCPMI_THRESHOLDS: DCPMIThresholds;
|
|
827
|
+
|
|
583
828
|
/**
|
|
584
829
|
* Default NDPA-compliant privacy policy sections.
|
|
585
830
|
* Each section uses {{variable}} placeholders that are resolved at generation time.
|
|
@@ -954,6 +1199,11 @@ export declare const frenchLocale: Required<{
|
|
|
954
1199
|
[K in keyof NDPRLocale]: Required<NonNullable<NDPRLocale[K]>>;
|
|
955
1200
|
}>;
|
|
956
1201
|
|
|
1202
|
+
/**
|
|
1203
|
+
* Derive the CAR schedule and status for a DCPMI under NDPC GAID 2025.
|
|
1204
|
+
*/
|
|
1205
|
+
export declare function generateComplianceAuditReturn(input: CARInput, options?: CAROptions): ComplianceAuditReturn;
|
|
1206
|
+
|
|
957
1207
|
/**
|
|
958
1208
|
* Generates a summary of all lawful basis documentation across processing activities.
|
|
959
1209
|
*
|
package/dist/core.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var chunkLP5KXMBY_js=require('./chunk-LP5KXMBY.js'),chunkNUOHT3LO_js=require('./chunk-NUOHT3LO.js'),
|
|
1
|
+
'use strict';var chunkLP5KXMBY_js=require('./chunk-LP5KXMBY.js'),chunkNUOHT3LO_js=require('./chunk-NUOHT3LO.js'),chunkOXFULQTE_js=require('./chunk-OXFULQTE.js'),chunk7TTXS7JX_js=require('./chunk-7TTXS7JX.js'),chunk3YTAOT5O_js=require('./chunk-3YTAOT5O.js'),chunkD2ZKDQVL_js=require('./chunk-D2ZKDQVL.js'),chunk6LJHLE6G_js=require('./chunk-6LJHLE6G.js'),chunkYFBDJ4FH_js=require('./chunk-YFBDJ4FH.js'),chunkWZYCBW2R_js=require('./chunk-WZYCBW2R.js'),chunk4CVBQC66_js=require('./chunk-4CVBQC66.js'),chunk3IA3KDII_js=require('./chunk-3IA3KDII.js'),chunkDKLJ5DYN_js=require('./chunk-DKLJ5DYN.js'),chunkUXUMYP4L_js=require('./chunk-UXUMYP4L.js'),chunkR2ZZMATR_js=require('./chunk-R2ZZMATR.js'),chunkTQZWJGJ2_js=require('./chunk-TQZWJGJ2.js'),chunkZVOIR4QH_js=require('./chunk-ZVOIR4QH.js'),chunkI5ZDNSX5_js=require('./chunk-I5ZDNSX5.js'),chunk7563FVMY_js=require('./chunk-7563FVMY.js');require('./chunk-RFPLZDIO.js');Object.defineProperty(exports,"arabicLocale",{enumerable:true,get:function(){return chunkLP5KXMBY_js.e}});Object.defineProperty(exports,"frenchLocale",{enumerable:true,get:function(){return chunkLP5KXMBY_js.f}});Object.defineProperty(exports,"hausaLocale",{enumerable:true,get:function(){return chunkLP5KXMBY_js.c}});Object.defineProperty(exports,"igboLocale",{enumerable:true,get:function(){return chunkLP5KXMBY_js.b}});Object.defineProperty(exports,"pidginLocale",{enumerable:true,get:function(){return chunkLP5KXMBY_js.d}});Object.defineProperty(exports,"yorubaLocale",{enumerable:true,get:function(){return chunkLP5KXMBY_js.a}});Object.defineProperty(exports,"ORG_POLICY_TEMPLATE_REGISTRY",{enumerable:true,get:function(){return chunkNUOHT3LO_js.a}});Object.defineProperty(exports,"createOrgTemplate",{enumerable:true,get:function(){return chunkNUOHT3LO_js.b}});Object.defineProperty(exports,"templateContextFor",{enumerable:true,get:function(){return chunkNUOHT3LO_js.b}});Object.defineProperty(exports,"DEFAULT_DCPMI_FEES_NGN",{enumerable:true,get:function(){return chunkOXFULQTE_js.c}});Object.defineProperty(exports,"DEFAULT_DCPMI_THRESHOLDS",{enumerable:true,get:function(){return chunkOXFULQTE_js.b}});Object.defineProperty(exports,"assessBreachNotification",{enumerable:true,get:function(){return chunkOXFULQTE_js.a}});Object.defineProperty(exports,"classifyDCPMI",{enumerable:true,get:function(){return chunkOXFULQTE_js.d}});Object.defineProperty(exports,"generateComplianceAuditReturn",{enumerable:true,get:function(){return chunkOXFULQTE_js.e}});Object.defineProperty(exports,"getComplianceScore",{enumerable:true,get:function(){return chunk7TTXS7JX_js.a}});Object.defineProperty(exports,"calculateBreachSeverity",{enumerable:true,get:function(){return chunk3YTAOT5O_js.a}});Object.defineProperty(exports,"DEFAULT_POLICY_SECTIONS",{enumerable:true,get:function(){return chunkD2ZKDQVL_js.c}});Object.defineProperty(exports,"DEFAULT_POLICY_VARIABLES",{enumerable:true,get:function(){return chunkD2ZKDQVL_js.d}});Object.defineProperty(exports,"createBusinessPolicyTemplate",{enumerable:true,get:function(){return chunkD2ZKDQVL_js.e}});Object.defineProperty(exports,"findUnfilledTokens",{enumerable:true,get:function(){return chunkD2ZKDQVL_js.a}});Object.defineProperty(exports,"generatePolicyText",{enumerable:true,get:function(){return chunkD2ZKDQVL_js.b}});Object.defineProperty(exports,"assemblePolicy",{enumerable:true,get:function(){return chunk6LJHLE6G_js.c}});Object.defineProperty(exports,"createDefaultContext",{enumerable:true,get:function(){return chunk6LJHLE6G_js.e}});Object.defineProperty(exports,"evaluatePolicyCompliance",{enumerable:true,get:function(){return chunk6LJHLE6G_js.f}});Object.defineProperty(exports,"assessTransferRisk",{enumerable:true,get:function(){return chunkYFBDJ4FH_js.h}});Object.defineProperty(exports,"getTransferMechanismDescription",{enumerable:true,get:function(){return chunkYFBDJ4FH_js.f}});Object.defineProperty(exports,"isNDPCApprovalRequired",{enumerable:true,get:function(){return chunkYFBDJ4FH_js.e}});Object.defineProperty(exports,"validateTransfer",{enumerable:true,get:function(){return chunkYFBDJ4FH_js.g}});Object.defineProperty(exports,"assessComplianceGaps",{enumerable:true,get:function(){return chunkWZYCBW2R_js.c}});Object.defineProperty(exports,"generateLawfulBasisSummary",{enumerable:true,get:function(){return chunkWZYCBW2R_js.d}});Object.defineProperty(exports,"getLawfulBasisDescription",{enumerable:true,get:function(){return chunkWZYCBW2R_js.b}});Object.defineProperty(exports,"validateProcessingActivity",{enumerable:true,get:function(){return chunkWZYCBW2R_js.a}});Object.defineProperty(exports,"exportROPAToCSV",{enumerable:true,get:function(){return chunk4CVBQC66_js.c}});Object.defineProperty(exports,"generateROPASummary",{enumerable:true,get:function(){return chunk4CVBQC66_js.b}});Object.defineProperty(exports,"identifyComplianceGaps",{enumerable:true,get:function(){return chunk4CVBQC66_js.d}});Object.defineProperty(exports,"validateProcessingRecord",{enumerable:true,get:function(){return chunk4CVBQC66_js.a}});Object.defineProperty(exports,"appendAuditEntry",{enumerable:true,get:function(){return chunk3IA3KDII_js.c}});Object.defineProperty(exports,"createAuditEntry",{enumerable:true,get:function(){return chunk3IA3KDII_js.a}});Object.defineProperty(exports,"getAuditLog",{enumerable:true,get:function(){return chunk3IA3KDII_js.b}});Object.defineProperty(exports,"validateConsentOptionsStructured",{enumerable:true,get:function(){return chunkDKLJ5DYN_js.b}});Object.defineProperty(exports,"validateConsentStructured",{enumerable:true,get:function(){return chunkDKLJ5DYN_js.a}});Object.defineProperty(exports,"sanitizeInput",{enumerable:true,get:function(){return chunkUXUMYP4L_js.a}});Object.defineProperty(exports,"formatDSRRequestStructured",{enumerable:true,get:function(){return chunkR2ZZMATR_js.b}});Object.defineProperty(exports,"validateDsrSubmissionStructured",{enumerable:true,get:function(){return chunkR2ZZMATR_js.a}});Object.defineProperty(exports,"assessDPIARisk",{enumerable:true,get:function(){return chunkTQZWJGJ2_js.a}});Object.defineProperty(exports,"LEGAL_DISCLAIMER_LONG",{enumerable:true,get:function(){return chunkZVOIR4QH_js.b}});Object.defineProperty(exports,"LEGAL_DISCLAIMER_SHORT",{enumerable:true,get:function(){return chunkZVOIR4QH_js.a}});Object.defineProperty(exports,"legalDisclaimerBlock",{enumerable:true,get:function(){return chunkZVOIR4QH_js.c}});Object.defineProperty(exports,"NDPRProvider",{enumerable:true,get:function(){return chunkI5ZDNSX5_js.a}});Object.defineProperty(exports,"useNDPRConfig",{enumerable:true,get:function(){return chunkI5ZDNSX5_js.b}});Object.defineProperty(exports,"useNDPRLocale",{enumerable:true,get:function(){return chunkI5ZDNSX5_js.c}});Object.defineProperty(exports,"defaultLocale",{enumerable:true,get:function(){return chunk7563FVMY_js.a}});Object.defineProperty(exports,"mergeLocale",{enumerable:true,get:function(){return chunk7563FVMY_js.b}});
|
package/dist/core.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{e as arabicLocale,f as frenchLocale,c as hausaLocale,b as igboLocale,d as pidginLocale,a as yorubaLocale}from'./chunk-KUI5W44P.mjs';export{a as ORG_POLICY_TEMPLATE_REGISTRY,b as createOrgTemplate,b as templateContextFor}from'./chunk-CWY2FMIC.mjs';export{a as getComplianceScore}from'./chunk-
|
|
1
|
+
export{e as arabicLocale,f as frenchLocale,c as hausaLocale,b as igboLocale,d as pidginLocale,a as yorubaLocale}from'./chunk-KUI5W44P.mjs';export{a as ORG_POLICY_TEMPLATE_REGISTRY,b as createOrgTemplate,b as templateContextFor}from'./chunk-CWY2FMIC.mjs';export{c as DEFAULT_DCPMI_FEES_NGN,b as DEFAULT_DCPMI_THRESHOLDS,a as assessBreachNotification,d as classifyDCPMI,e as generateComplianceAuditReturn}from'./chunk-KOHFQIV4.mjs';export{a as getComplianceScore}from'./chunk-6A7M4CGJ.mjs';export{a as calculateBreachSeverity}from'./chunk-WTGKZX7J.mjs';export{c as DEFAULT_POLICY_SECTIONS,d as DEFAULT_POLICY_VARIABLES,e as createBusinessPolicyTemplate,a as findUnfilledTokens,b as generatePolicyText}from'./chunk-NBQQ2GN3.mjs';export{c as assemblePolicy,e as createDefaultContext,f as evaluatePolicyCompliance}from'./chunk-BIJSMSUU.mjs';export{h as assessTransferRisk,f as getTransferMechanismDescription,e as isNDPCApprovalRequired,g as validateTransfer}from'./chunk-7BJXI2HI.mjs';export{c as assessComplianceGaps,d as generateLawfulBasisSummary,b as getLawfulBasisDescription,a as validateProcessingActivity}from'./chunk-LWIKDDSU.mjs';export{c as exportROPAToCSV,b as generateROPASummary,d as identifyComplianceGaps,a as validateProcessingRecord}from'./chunk-XP5PL6K7.mjs';export{c as appendAuditEntry,a as createAuditEntry,b as getAuditLog}from'./chunk-V7UFP6QU.mjs';export{b as validateConsentOptionsStructured,a as validateConsentStructured}from'./chunk-R3ZKV2J7.mjs';export{a as sanitizeInput}from'./chunk-EWVK45Z3.mjs';export{b as formatDSRRequestStructured,a as validateDsrSubmissionStructured}from'./chunk-RRVML7CU.mjs';export{a as assessDPIARisk}from'./chunk-LRRENTT5.mjs';export{b as LEGAL_DISCLAIMER_LONG,a as LEGAL_DISCLAIMER_SHORT,c as legalDisclaimerBlock}from'./chunk-ITCY2Z66.mjs';export{a as NDPRProvider,b as useNDPRConfig,c as useNDPRLocale}from'./chunk-PHA3YMFO.mjs';export{a as defaultLocale,b as mergeLocale}from'./chunk-5LJ652AH.mjs';import'./chunk-ZJYULEER.mjs';
|