@tantainnovative/ndpr-toolkit 4.1.0 → 5.0.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 (82) hide show
  1. package/CHANGELOG.md +67 -0
  2. package/dist/chunk-4FXRJH37.js +1 -0
  3. package/dist/{chunk-UJGNW6CH.js → chunk-ASEUTU45.js} +1 -1
  4. package/dist/chunk-BRJKIF7E.mjs +1 -0
  5. package/dist/chunk-CSE36REY.js +6 -0
  6. package/dist/chunk-DKLJ5DYN.js +1 -0
  7. package/dist/chunk-FRMVSG4N.mjs +1 -0
  8. package/dist/chunk-MAD7QYRK.js +1 -0
  9. package/dist/chunk-NBOJ2KGN.mjs +1 -0
  10. package/dist/chunk-PQ5IPUJN.mjs +1 -0
  11. package/dist/chunk-QKXGVT2Q.js +1 -0
  12. package/dist/chunk-R2ZZMATR.js +1 -0
  13. package/dist/chunk-R3ZKV2J7.mjs +1 -0
  14. package/dist/chunk-RRVML7CU.mjs +1 -0
  15. package/dist/{chunk-6H6IXTHA.mjs → chunk-SBSYHCPK.mjs} +1 -1
  16. package/dist/chunk-TLIHFGIJ.js +1 -0
  17. package/dist/{chunk-O4ATGGVK.js → chunk-TVA6D6S4.js} +1 -1
  18. package/dist/chunk-WPH6CJDL.mjs +6 -0
  19. package/dist/{chunk-6OPGI27L.mjs → chunk-ZSRO4L3C.mjs} +1 -1
  20. package/dist/consent.d.mts +59 -21
  21. package/dist/consent.d.ts +59 -21
  22. package/dist/consent.js +1 -1
  23. package/dist/consent.mjs +1 -1
  24. package/dist/core.d.mts +116 -74
  25. package/dist/core.d.ts +116 -74
  26. package/dist/core.js +1 -1
  27. package/dist/core.mjs +1 -1
  28. package/dist/cross-border.d.mts +4 -27
  29. package/dist/cross-border.d.ts +4 -27
  30. package/dist/cross-border.js +1 -1
  31. package/dist/cross-border.mjs +1 -1
  32. package/dist/dsr.d.mts +86 -57
  33. package/dist/dsr.d.ts +86 -57
  34. package/dist/dsr.js +1 -1
  35. package/dist/dsr.mjs +1 -1
  36. package/dist/headless.d.mts +20 -27
  37. package/dist/headless.d.ts +20 -27
  38. package/dist/headless.js +1 -1
  39. package/dist/headless.mjs +1 -1
  40. package/dist/hooks.d.mts +20 -27
  41. package/dist/hooks.d.ts +20 -27
  42. package/dist/hooks.js +1 -1
  43. package/dist/hooks.mjs +1 -1
  44. package/dist/index.d.mts +37 -202
  45. package/dist/index.d.ts +37 -202
  46. package/dist/index.js +1 -1
  47. package/dist/index.mjs +1 -1
  48. package/dist/lawful-basis.d.mts +3 -24
  49. package/dist/lawful-basis.d.ts +3 -24
  50. package/dist/lawful-basis.js +1 -1
  51. package/dist/lawful-basis.mjs +1 -1
  52. package/dist/presets.d.mts +1 -9
  53. package/dist/presets.d.ts +1 -9
  54. package/dist/presets.js +1 -1
  55. package/dist/presets.mjs +1 -1
  56. package/dist/ropa-lite.d.mts +2 -11
  57. package/dist/ropa-lite.d.ts +2 -11
  58. package/dist/ropa-lite.js +1 -1
  59. package/dist/ropa-lite.mjs +1 -1
  60. package/dist/ropa.d.mts +10 -52
  61. package/dist/ropa.d.ts +10 -52
  62. package/dist/ropa.js +1 -1
  63. package/dist/ropa.mjs +1 -1
  64. package/dist/server.d.mts +20 -100
  65. package/dist/server.d.ts +20 -100
  66. package/dist/server.js +1 -1
  67. package/dist/server.mjs +1 -1
  68. package/package.json +1 -1
  69. package/dist/chunk-3APT25XO.mjs +0 -1
  70. package/dist/chunk-45D7AMB3.js +0 -1
  71. package/dist/chunk-65J4P5ID.js +0 -1
  72. package/dist/chunk-7Z7NURIA.mjs +0 -1
  73. package/dist/chunk-D3HHDWBR.js +0 -1
  74. package/dist/chunk-DSIIEUAD.mjs +0 -1
  75. package/dist/chunk-H2FDWK4F.js +0 -6
  76. package/dist/chunk-HLFS3NXG.js +0 -1
  77. package/dist/chunk-JGY65SHX.mjs +0 -1
  78. package/dist/chunk-NI54X543.mjs +0 -1
  79. package/dist/chunk-P5MPUC5F.js +0 -1
  80. package/dist/chunk-ROOUYQD4.js +0 -1
  81. package/dist/chunk-UTXDZDYF.mjs +0 -6
  82. package/dist/chunk-W6VVLHRQ.mjs +0 -1
package/dist/index.d.ts CHANGED
@@ -1329,39 +1329,16 @@ export declare interface CrossBorderTransferManagerProps {
1329
1329
  */
1330
1330
  transfers: CrossBorderTransfer[];
1331
1331
  /**
1332
- * Callback when a new transfer is added
1333
- * @deprecated Renamed to `onAdd` in 4.1. The legacy name still fires
1334
- * for backward compatibility and will be removed in 5.0.
1335
- */
1336
- onAddTransfer?: (transfer: Omit<CrossBorderTransfer, 'id' | 'createdAt' | 'updatedAt'>) => void;
1337
- /**
1338
- * Callback when a transfer is updated
1339
- * @deprecated Renamed to `onUpdate` in 4.1. The legacy name still fires
1340
- * for backward compatibility and will be removed in 5.0.
1341
- */
1342
- onUpdateTransfer?: (id: string, updates: Partial<CrossBorderTransfer>) => void;
1343
- /**
1344
- * Callback when a transfer is removed
1345
- * @deprecated Renamed to `onArchive` in 4.1 (NDPA prefers soft-delete
1346
- * over hard delete). The legacy name still fires for backward
1347
- * compatibility and will be removed in 5.0.
1348
- */
1349
- onRemoveTransfer?: (id: string) => void;
1350
- /**
1351
- * Callback when a new transfer is added (uniform 4.1+ name).
1352
- * Takes precedence over `onAddTransfer` when both are provided.
1332
+ * Callback when a new transfer is added.
1353
1333
  */
1354
1334
  onAdd?: (transfer: Omit<CrossBorderTransfer, 'id' | 'createdAt' | 'updatedAt'>) => void;
1355
1335
  /**
1356
- * Callback when a transfer is updated (uniform 4.1+ name).
1357
- * Takes precedence over `onUpdateTransfer` when both are provided.
1336
+ * Callback when a transfer is updated.
1358
1337
  */
1359
1338
  onUpdate?: (id: string, updates: Partial<CrossBorderTransfer>) => void;
1360
1339
  /**
1361
- * Callback when a transfer is archived (uniform 4.1+ name). NDPA
1362
- * preference is soft-delete over hard-delete; consumers should treat
1363
- * this as an archive signal. Takes precedence over `onRemoveTransfer`
1364
- * when both are provided.
1340
+ * Callback when a transfer is archived. NDPA preference is soft-delete
1341
+ * over hard-delete; consumers should treat this as an archive signal.
1365
1342
  */
1366
1343
  onArchive?: (id: string) => void;
1367
1344
  /**
@@ -2101,7 +2078,7 @@ export declare type DSRStatus = 'pending' | 'awaitingVerification' | 'inProgress
2101
2078
  /**
2102
2079
  * Validated DSR submission shape — matches what `<DSRRequestForm onSubmit>`
2103
2080
  * emits client-side. Use this as the typed parameter for your server-side
2104
- * handler after `validateDsrSubmission` returns `valid: true`.
2081
+ * handler after `validateDsrSubmissionStructured` returns `valid: true`.
2105
2082
  */
2106
2083
  export declare interface DsrSubmissionPayload {
2107
2084
  requestType: string;
@@ -2116,16 +2093,6 @@ export declare interface DsrSubmissionPayload {
2116
2093
  submittedAt: number;
2117
2094
  }
2118
2095
 
2119
- /** Result of validating a raw DSR submission payload. */
2120
- export declare interface DsrSubmissionValidationResult {
2121
- /** True when the payload conforms to the DSR submission contract. */
2122
- valid: boolean;
2123
- /** Field-keyed error messages. Empty when `valid` is true. */
2124
- errors: Record<string, string>;
2125
- /** The narrowed, typed payload — only populated when `valid` is true. */
2126
- data?: DsrSubmissionPayload;
2127
- }
2128
-
2129
2096
  /**
2130
2097
  * DSR tracking and analytics component. Supports compliance with NDPA Part IV,
2131
2098
  * providing summary statistics, deadline tracking, and compliance metrics for data subject requests.
@@ -2240,21 +2207,9 @@ export declare type EffortLevel = 'low' | 'medium' | 'high';
2240
2207
  export declare function exportROPAToCSV(ropa: RecordOfProcessingActivities): string;
2241
2208
 
2242
2209
  /**
2243
- * Formats a DSR request for display or submission
2244
- * @param request The DSR request to format
2245
- * @returns Formatted request data
2246
- * @deprecated Use `formatDSRRequestStructured()` for typed `{ field, code, message }[]` errors. The legacy string-returning shape will be removed in 5.0.
2247
- */
2248
- export declare function formatDSRRequest(request: DSRRequest): {
2249
- formattedRequest: Record<string, unknown>;
2250
- isValid: boolean;
2251
- validationErrors: string[];
2252
- };
2253
-
2254
- /**
2255
- * Structured-result variant of {@link formatDSRRequest}. Same formatting
2256
- * output, but `validationErrors` is replaced with a typed `errors` array
2257
- * of `{ field, code, message }`.
2210
+ * Format a DSR request for display or submission. Returns the formatted
2211
+ * payload plus a typed `errors` array of `{ field, code, message }` for any
2212
+ * required fields missing from the source request.
2258
2213
  *
2259
2214
  * Codes emitted:
2260
2215
  * - `request_id_required`
@@ -2467,36 +2422,15 @@ export declare interface LawfulBasisTrackerProps {
2467
2422
  */
2468
2423
  activities: ProcessingActivity[];
2469
2424
  /**
2470
- * Callback when a new activity is created
2471
- * @deprecated Renamed to `onAdd` in 4.1. The legacy name still fires
2472
- * for backward compatibility and will be removed in 5.0.
2473
- */
2474
- onAddActivity?: (activity: Omit<ProcessingActivity, 'id' | 'createdAt' | 'updatedAt'>) => void;
2475
- /**
2476
- * Callback when an activity is updated
2477
- * @deprecated Renamed to `onUpdate` in 4.1. The legacy name still fires
2478
- * for backward compatibility and will be removed in 5.0.
2479
- */
2480
- onUpdateActivity?: (id: string, updates: Partial<ProcessingActivity>) => void;
2481
- /**
2482
- * Callback when an activity is archived
2483
- * @deprecated Renamed to `onArchive` in 4.1. The legacy name still fires
2484
- * for backward compatibility and will be removed in 5.0.
2485
- */
2486
- onArchiveActivity?: (id: string) => void;
2487
- /**
2488
- * Callback when a new activity is created (uniform 4.1+ name).
2489
- * Takes precedence over `onAddActivity` when both are provided.
2425
+ * Callback when a new activity is created.
2490
2426
  */
2491
2427
  onAdd?: (activity: Omit<ProcessingActivity, 'id' | 'createdAt' | 'updatedAt'>) => void;
2492
2428
  /**
2493
- * Callback when an activity is updated (uniform 4.1+ name).
2494
- * Takes precedence over `onUpdateActivity` when both are provided.
2429
+ * Callback when an activity is updated.
2495
2430
  */
2496
2431
  onUpdate?: (id: string, updates: Partial<ProcessingActivity>) => void;
2497
2432
  /**
2498
- * Callback when an activity is archived (uniform 4.1+ name).
2499
- * Takes precedence over `onArchiveActivity` when both are provided.
2433
+ * Callback when an activity is archived.
2500
2434
  */
2501
2435
  onArchive?: (id: string) => void;
2502
2436
  /**
@@ -3995,36 +3929,15 @@ export declare interface ROPAManagerProps {
3995
3929
  */
3996
3930
  ropa: RecordOfProcessingActivities;
3997
3931
  /**
3998
- * Callback when a new record is added
3999
- * @deprecated Renamed to `onAdd` in 4.1. The legacy name still fires
4000
- * for backward compatibility and will be removed in 5.0.
4001
- */
4002
- onAddRecord?: (record: ProcessingRecord) => void;
4003
- /**
4004
- * Callback when a record is updated
4005
- * @deprecated Renamed to `onUpdate` in 4.1. The legacy name still fires
4006
- * for backward compatibility and will be removed in 5.0.
4007
- */
4008
- onUpdateRecord?: (id: string, updates: Partial<ProcessingRecord>) => void;
4009
- /**
4010
- * Callback when a record is archived
4011
- * @deprecated Renamed to `onArchive` in 4.1. The legacy name still fires
4012
- * for backward compatibility and will be removed in 5.0.
4013
- */
4014
- onArchiveRecord?: (id: string) => void;
4015
- /**
4016
- * Callback when a new record is added (uniform 4.1+ name).
4017
- * Takes precedence over `onAddRecord` when both are provided.
3932
+ * Callback when a new record is added.
4018
3933
  */
4019
3934
  onAdd?: (record: ProcessingRecord) => void;
4020
3935
  /**
4021
- * Callback when a record is updated (uniform 4.1+ name).
4022
- * Takes precedence over `onUpdateRecord` when both are provided.
3936
+ * Callback when a record is updated.
4023
3937
  */
4024
3938
  onUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
4025
3939
  /**
4026
- * Callback when a record is archived (uniform 4.1+ name).
4027
- * Takes precedence over `onArchiveRecord` when both are provided.
3940
+ * Callback when a record is archived.
4028
3941
  */
4029
3942
  onArchive?: (id: string) => void;
4030
3943
  /**
@@ -4660,9 +4573,10 @@ declare interface UseConsentReturn {
4660
4573
  */
4661
4574
  isValid: boolean;
4662
4575
  /**
4663
- * Validation errors (if any)
4576
+ * Validation errors (if any). Each entry is a structured `{ field, code,
4577
+ * message }` so consumers can switch on `code` across locales.
4664
4578
  */
4665
- validationErrors: string[];
4579
+ validationErrors: StructuredValidationError[];
4666
4580
  /**
4667
4581
  * Reset consent settings (clear from storage)
4668
4582
  */
@@ -5337,7 +5251,7 @@ declare interface UsePrivacyPolicyReturn {
5337
5251
  * }
5338
5252
  * ```
5339
5253
  */
5340
- export declare function useROPA({ initialData, adapter, onRecordAdd, onRecordUpdate, onRecordArchive, onAdd, onUpdate, onArchive, }: UseROPAOptions): UseROPAReturn;
5254
+ export declare function useROPA({ initialData, adapter, onAdd, onUpdate, onArchive, }: UseROPAOptions): UseROPAReturn;
5341
5255
 
5342
5256
  export declare interface UseROPAOptions {
5343
5257
  /**
@@ -5351,36 +5265,15 @@ export declare interface UseROPAOptions {
5351
5265
  */
5352
5266
  adapter?: StorageAdapter<RecordOfProcessingActivities>;
5353
5267
  /**
5354
- * Callback when a record is added
5355
- * @deprecated Renamed to `onAdd` in 4.1. The legacy name still fires
5356
- * for backward compatibility and will be removed in 5.0.
5357
- */
5358
- onRecordAdd?: (record: ProcessingRecord) => void;
5359
- /**
5360
- * Callback when a record is updated
5361
- * @deprecated Renamed to `onUpdate` in 4.1. The legacy name still fires
5362
- * for backward compatibility and will be removed in 5.0.
5363
- */
5364
- onRecordUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
5365
- /**
5366
- * Callback when a record is archived
5367
- * @deprecated Renamed to `onArchive` in 4.1. The legacy name still fires
5368
- * for backward compatibility and will be removed in 5.0.
5369
- */
5370
- onRecordArchive?: (id: string) => void;
5371
- /**
5372
- * Callback when a record is added (uniform 4.1+ name).
5373
- * Takes precedence over `onRecordAdd` when both are provided.
5268
+ * Callback when a record is added.
5374
5269
  */
5375
5270
  onAdd?: (record: ProcessingRecord) => void;
5376
5271
  /**
5377
- * Callback when a record is updated (uniform 4.1+ name).
5378
- * Takes precedence over `onRecordUpdate` when both are provided.
5272
+ * Callback when a record is updated.
5379
5273
  */
5380
5274
  onUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
5381
5275
  /**
5382
- * Callback when a record is archived (uniform 4.1+ name).
5383
- * Takes precedence over `onRecordArchive` when both are provided.
5276
+ * Callback when a record is archived.
5384
5277
  */
5385
5278
  onArchive?: (id: string) => void;
5386
5279
  }
@@ -5446,34 +5339,10 @@ export declare interface UseROPAReturn {
5446
5339
  }
5447
5340
 
5448
5341
  /**
5449
- * Validates consent settings to ensure they meet NDPA requirements
5450
- * @param settings The consent settings to validate
5451
- * @returns An object containing validation result and any error messages
5452
- * @deprecated Use `validateConsentStructured()` for typed `{ field, code, message }[]` errors. The legacy string-returning shape will be removed in 5.0.
5453
- */
5454
- export declare function validateConsent(settings: ConsentSettings): {
5455
- valid: boolean;
5456
- errors: string[];
5457
- };
5458
-
5459
- /**
5460
- * Validates that consent options meet NDPA Section 26 requirements.
5461
- * Each consent option must specify a purpose for which data will be processed,
5462
- * as consent must be specific and informed per the Nigeria Data Protection Act.
5463
- * @param options The consent options to validate
5464
- * @returns An object containing validation result and any error messages
5465
- * @deprecated Use `validateConsentOptionsStructured()` for typed `{ field, code, message }[]` errors. The legacy string-returning shape will be removed in 5.0.
5466
- */
5467
- export declare function validateConsentOptions(options: ConsentOption[]): {
5468
- valid: boolean;
5469
- errors: string[];
5470
- };
5471
-
5472
- /**
5473
- * Structured-result variant of {@link validateConsentOptions}. Each option
5474
- * is checked for a non-empty `purpose` (NDPA Section 26). Failing options
5475
- * are reported with `field: 'options[i].purpose'` so consumers can map
5476
- * errors back to the originating option index.
5342
+ * Validates consent options against NDPA Section 26 requirements. Each option
5343
+ * is checked for a non-empty `purpose`. Failing options are reported with
5344
+ * `field: 'options[i].purpose'` so consumers can map errors back to the
5345
+ * originating option index.
5477
5346
  *
5478
5347
  * Codes emitted:
5479
5348
  * - `options_required` — empty / missing options array
@@ -5482,8 +5351,8 @@ export declare function validateConsentOptions(options: ConsentOption[]): {
5482
5351
  export declare function validateConsentOptionsStructured(options: ConsentOption[]): StructuredValidationResult<ConsentOption[]>;
5483
5352
 
5484
5353
  /**
5485
- * Structured-result variant of {@link validateConsent}. Returns the same
5486
- * checks as `{ field, code, message }[]` so consumers can switch on `code`
5354
+ * Validates consent settings against NDPA requirements. Returns structured
5355
+ * `{ field, code, message }[]` errors so consumers can switch on `code`
5487
5356
  * across locales without regex-matching English strings.
5488
5357
  *
5489
5358
  * Codes emitted:
@@ -5506,47 +5375,7 @@ export declare function validateConsentOptionsStructured(options: ConsentOption[
5506
5375
  */
5507
5376
  export declare function validateConsentStructured(settings: ConsentSettings): StructuredValidationResult<ConsentSettings>;
5508
5377
 
5509
- /**
5510
- * Validate a raw DSR submission payload against the same rules
5511
- * `<DSRRequestForm />` enforces client-side. Designed to be called from a
5512
- * server-side handler (Next.js Route Handler, NestJS controller, Express
5513
- * middleware, Cloudflare Worker) so client and server stay in sync without
5514
- * the consumer hand-rolling zod / class-validator schemas.
5515
- *
5516
- * Defensive — accepts `unknown` and narrows. Safe to call directly on
5517
- * `await request.json()`.
5518
- *
5519
- * @example **Next.js Route Handler**
5520
- * ```ts
5521
- * // app/api/dsr/route.ts
5522
- * import { validateDsrSubmission } from '@tantainnovative/ndpr-toolkit/server';
5523
- *
5524
- * export async function POST(req: Request) {
5525
- * const { valid, errors, data } = validateDsrSubmission(await req.json());
5526
- * if (!valid) return Response.json({ errors }, { status: 422 });
5527
- * // `data` is the typed DsrSubmissionPayload
5528
- * await dsrStore.create(data);
5529
- * return Response.json({ ok: true }, { status: 201 });
5530
- * }
5531
- * ```
5532
- *
5533
- * @example **Lock to specific request types**
5534
- * ```ts
5535
- * validateDsrSubmission(payload, {
5536
- * allowedRequestTypes: ['access', 'erasure', 'rectification'],
5537
- * });
5538
- * ```
5539
- *
5540
- * @example **Skip identity verification (e.g. authenticated session)**
5541
- * ```ts
5542
- * validateDsrSubmission(payload, { requireIdentityVerification: false });
5543
- * ```
5544
- *
5545
- * @deprecated Use `validateDsrSubmissionStructured()` for typed `{ field, code, message }[]` errors. The legacy string-returning shape will be removed in 5.0.
5546
- */
5547
- export declare function validateDsrSubmission(payload: unknown, options?: ValidateDsrSubmissionOptions): DsrSubmissionValidationResult;
5548
-
5549
- /** Options for {@link validateDsrSubmission}. */
5378
+ /** Options for {@link validateDsrSubmissionStructured}. */
5550
5379
  export declare interface ValidateDsrSubmissionOptions {
5551
5380
  /**
5552
5381
  * Whether the data subject is required to provide an identifier
@@ -5564,9 +5393,15 @@ export declare interface ValidateDsrSubmissionOptions {
5564
5393
  }
5565
5394
 
5566
5395
  /**
5567
- * Structured-result variant of {@link validateDsrSubmission}. Same rules,
5568
- * but returns an array of `{ field, code, message }` so callers can switch
5569
- * on `code` programmatically across locales.
5396
+ * Validate a raw DSR submission payload against the same rules
5397
+ * `<DSRRequestForm />` enforces client-side. Designed to be called from a
5398
+ * server-side handler (Next.js Route Handler, NestJS controller, Express
5399
+ * middleware, Cloudflare Worker) so client and server stay in sync without
5400
+ * the consumer hand-rolling zod / class-validator schemas.
5401
+ *
5402
+ * Defensive — accepts `unknown` and narrows. Safe to call directly on
5403
+ * `await request.json()`. Returns `{ field, code, message }[]` errors so
5404
+ * callers can switch on `code` programmatically across locales.
5570
5405
  *
5571
5406
  * Codes emitted:
5572
5407
  * - `payload_not_object`
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- 'use strict';var chunkNUWVPRNI_js=require('./chunk-NUWVPRNI.js'),chunk3I6FYA5C_js=require('./chunk-3I6FYA5C.js'),chunkD2UWB5OI_js=require('./chunk-D2UWB5OI.js'),chunk3SIYRGJF_js=require('./chunk-3SIYRGJF.js'),chunk65J4P5ID_js=require('./chunk-65J4P5ID.js'),chunkH2FDWK4F_js=require('./chunk-H2FDWK4F.js'),chunkHLFS3NXG_js=require('./chunk-HLFS3NXG.js'),chunkFC3PTJFL_js=require('./chunk-FC3PTJFL.js'),chunkEHQVTFYO_js=require('./chunk-EHQVTFYO.js'),chunkRC3XFXTJ_js=require('./chunk-RC3XFXTJ.js'),chunkQHW4UKGJ_js=require('./chunk-QHW4UKGJ.js'),chunkIRRUYR6M_js=require('./chunk-IRRUYR6M.js'),chunkHHK5LHEG_js=require('./chunk-HHK5LHEG.js'),chunkP5MPUC5F_js=require('./chunk-P5MPUC5F.js');require('./chunk-JS7SYL5P.js');var chunkRDALAH3Y_js=require('./chunk-RDALAH3Y.js'),chunk3YTAOT5O_js=require('./chunk-3YTAOT5O.js'),chunkD2ZKDQVL_js=require('./chunk-D2ZKDQVL.js');require('./chunk-6LJHLE6G.js');var chunkYFBDJ4FH_js=require('./chunk-YFBDJ4FH.js'),chunkWZYCBW2R_js=require('./chunk-WZYCBW2R.js'),chunk4CVBQC66_js=require('./chunk-4CVBQC66.js'),chunkSJDDNB6M_js=require('./chunk-SJDDNB6M.js'),chunk42UJFTII_js=require('./chunk-42UJFTII.js'),chunkZD2W3YU2_js=require('./chunk-ZD2W3YU2.js'),chunk3IA3KDII_js=require('./chunk-3IA3KDII.js'),chunkROOUYQD4_js=require('./chunk-ROOUYQD4.js'),chunkL2VO3MEJ_js=require('./chunk-L2VO3MEJ.js');require('./chunk-C2KEXHRX.js');var chunkD3HHDWBR_js=require('./chunk-D3HHDWBR.js'),chunkUJGNW6CH_js=require('./chunk-UJGNW6CH.js'),chunkUZNWXJ2W_js=require('./chunk-UZNWXJ2W.js'),chunkUXUMYP4L_js=require('./chunk-UXUMYP4L.js'),chunkO4ATGGVK_js=require('./chunk-O4ATGGVK.js'),chunk45D7AMB3_js=require('./chunk-45D7AMB3.js'),chunk37VFK5SR_js=require('./chunk-37VFK5SR.js'),chunkWCTFED27_js=require('./chunk-WCTFED27.js'),chunkJLQT3W3E_js=require('./chunk-JLQT3W3E.js'),chunkTQZWJGJ2_js=require('./chunk-TQZWJGJ2.js'),chunkZVOIR4QH_js=require('./chunk-ZVOIR4QH.js'),chunkAME4HJR4_js=require('./chunk-AME4HJR4.js'),chunkYDKWD6MQ_js=require('./chunk-YDKWD6MQ.js');require('./chunk-TTMGFC6C.js'),require('./chunk-VWED6UTN.js'),require('./chunk-RFPLZDIO.js');var react=require('react'),jsxRuntime=require('react/jsx-runtime');var Ae=({theme:o,className:t,children:s})=>{let n=react.useMemo(()=>{if(!o)return;let r={};if(o.colors){let e=o.colors;e.primary!==void 0&&(r["--ndpr-primary"]=e.primary),e.primaryHover!==void 0&&(r["--ndpr-primary-hover"]=e.primaryHover),e.primaryForeground!==void 0&&(r["--ndpr-primary-foreground"]=e.primaryForeground),e.background!==void 0&&(r["--ndpr-background"]=e.background),e.surface!==void 0&&(r["--ndpr-surface"]=e.surface),e.foreground!==void 0&&(r["--ndpr-foreground"]=e.foreground),e.muted!==void 0&&(r["--ndpr-muted"]=e.muted),e.mutedForeground!==void 0&&(r["--ndpr-muted-foreground"]=e.mutedForeground),e.border!==void 0&&(r["--ndpr-border"]=e.border),e.input!==void 0&&(r["--ndpr-input"]=e.input),e.ring!==void 0&&(r["--ndpr-ring"]=e.ring),e.success!==void 0&&(r["--ndpr-success"]=e.success),e.destructive!==void 0&&(r["--ndpr-destructive"]=e.destructive),e.warning!==void 0&&(r["--ndpr-warning"]=e.warning);}if(o.radius){let e=o.radius;e.sm!==void 0&&(r["--ndpr-radius-sm"]=e.sm),e.base!==void 0&&(r["--ndpr-radius"]=e.base),e.lg!==void 0&&(r["--ndpr-radius-lg"]=e.lg),e.full!==void 0&&(r["--ndpr-radius-full"]=e.full);}if(o.spacing){let e=o.spacing;e[1]!==void 0&&(r["--ndpr-space-1"]=e[1]),e[2]!==void 0&&(r["--ndpr-space-2"]=e[2]),e[3]!==void 0&&(r["--ndpr-space-3"]=e[3]),e[4]!==void 0&&(r["--ndpr-space-4"]=e[4]),e[5]!==void 0&&(r["--ndpr-space-5"]=e[5]),e[6]!==void 0&&(r["--ndpr-space-6"]=e[6]),e[8]!==void 0&&(r["--ndpr-space-8"]=e[8]);}if(o.shadow){let e=o.shadow;e.sm!==void 0&&(r["--ndpr-shadow-sm"]=e.sm),e.base!==void 0&&(r["--ndpr-shadow"]=e.base),e.lg!==void 0&&(r["--ndpr-shadow-lg"]=e.lg);}if(o.font){let e=o.font;e.sans!==void 0&&(r["--ndpr-font-sans"]=e.sans),e.sizeXs!==void 0&&(r["--ndpr-font-size-xs"]=e.sizeXs),e.sizeSm!==void 0&&(r["--ndpr-font-size-sm"]=e.sizeSm),e.sizeBase!==void 0&&(r["--ndpr-font-size-base"]=e.sizeBase),e.sizeLg!==void 0&&(r["--ndpr-font-size-lg"]=e.sizeLg),e.sizeXl!==void 0&&(r["--ndpr-font-size-xl"]=e.sizeXl),e.lineHeight!==void 0&&(r["--ndpr-line-height"]=e.lineHeight),e.lineHeightTight!==void 0&&(r["--ndpr-line-height-tight"]=e.lineHeightTight);}if(o.transition){let e=o.transition;e.base!==void 0&&(r["--ndpr-transition"]=e.base),e.slow!==void 0&&(r["--ndpr-transition-slow"]=e.slow);}if(o.z){let e=o.z;e.banner!==void 0&&(r["--ndpr-z-banner"]=String(e.banner)),e.modal!==void 0&&(r["--ndpr-z-modal"]=String(e.modal));}return Object.keys(r).length>0?r:void 0},[o]),p=o==null?void 0:o.mode;return jsxRuntime.jsx("div",{"data-ndpr-theme":"","data-theme":p,className:t,style:n,children:s})};var be=({variant:o="short",className:t,hidden:s})=>{if(s)return null;let n=o==="long"?chunkZVOIR4QH_js.b:chunkZVOIR4QH_js.a;return jsxRuntime.jsx("p",{role:"note",className:t!=null?t:"ndpr-legal-notice","data-ndpr-legal-notice":o,children:n})};Object.defineProperty(exports,"NDPRDashboard",{enumerable:true,get:function(){return chunkNUWVPRNI_js.a}});Object.defineProperty(exports,"BreachNotificationManager",{enumerable:true,get:function(){return chunk3I6FYA5C_js.b}});Object.defineProperty(exports,"BreachRiskAssessment",{enumerable:true,get:function(){return chunk3I6FYA5C_js.a}});Object.defineProperty(exports,"RegulatoryReportGenerator",{enumerable:true,get:function(){return chunk3I6FYA5C_js.c}});Object.defineProperty(exports,"BreachReportForm",{enumerable:true,get:function(){return chunkD2UWB5OI_js.a}});Object.defineProperty(exports,"PolicyExporter",{enumerable:true,get:function(){return chunk3SIYRGJF_js.c}});Object.defineProperty(exports,"PolicyGenerator",{enumerable:true,get:function(){return chunk3SIYRGJF_js.a}});Object.defineProperty(exports,"PolicyPreview",{enumerable:true,get:function(){return chunk3SIYRGJF_js.b}});Object.defineProperty(exports,"LawfulBasisTracker",{enumerable:true,get:function(){return chunk65J4P5ID_js.a}});Object.defineProperty(exports,"CrossBorderTransferManager",{enumerable:true,get:function(){return chunkH2FDWK4F_js.a}});Object.defineProperty(exports,"ROPAManager",{enumerable:true,get:function(){return chunkHLFS3NXG_js.a}});Object.defineProperty(exports,"useComplianceScore",{enumerable:true,get:function(){return chunkFC3PTJFL_js.a}});Object.defineProperty(exports,"useBreach",{enumerable:true,get:function(){return chunkEHQVTFYO_js.a}});Object.defineProperty(exports,"useDefaultPrivacyPolicy",{enumerable:true,get:function(){return chunkRC3XFXTJ_js.b}});Object.defineProperty(exports,"usePrivacyPolicy",{enumerable:true,get:function(){return chunkRC3XFXTJ_js.a}});Object.defineProperty(exports,"useAdaptivePolicyWizard",{enumerable:true,get:function(){return chunkQHW4UKGJ_js.a}});Object.defineProperty(exports,"useLawfulBasis",{enumerable:true,get:function(){return chunkIRRUYR6M_js.a}});Object.defineProperty(exports,"useCrossBorderTransfer",{enumerable:true,get:function(){return chunkHHK5LHEG_js.a}});Object.defineProperty(exports,"useROPA",{enumerable:true,get:function(){return chunkP5MPUC5F_js.a}});Object.defineProperty(exports,"getComplianceScore",{enumerable:true,get:function(){return chunkRDALAH3Y_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,"generatePolicyText",{enumerable:true,get:function(){return chunkD2ZKDQVL_js.b}});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,"ConsentStorage",{enumerable:true,get:function(){return chunkSJDDNB6M_js.a}});Object.defineProperty(exports,"ConsentManager",{enumerable:true,get:function(){return chunk42UJFTII_js.a}});Object.defineProperty(exports,"ConsentBanner",{enumerable:true,get:function(){return chunkZD2W3YU2_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,"useConsent",{enumerable:true,get:function(){return chunkROOUYQD4_js.a}});Object.defineProperty(exports,"useFocusTrap",{enumerable:true,get:function(){return chunkL2VO3MEJ_js.a}});Object.defineProperty(exports,"validateConsent",{enumerable:true,get:function(){return chunkD3HHDWBR_js.a}});Object.defineProperty(exports,"validateConsentOptions",{enumerable:true,get:function(){return chunkD3HHDWBR_js.c}});Object.defineProperty(exports,"validateConsentOptionsStructured",{enumerable:true,get:function(){return chunkD3HHDWBR_js.d}});Object.defineProperty(exports,"validateConsentStructured",{enumerable:true,get:function(){return chunkD3HHDWBR_js.b}});Object.defineProperty(exports,"DSRDashboard",{enumerable:true,get:function(){return chunkUJGNW6CH_js.a}});Object.defineProperty(exports,"DSRTracker",{enumerable:true,get:function(){return chunkUJGNW6CH_js.b}});Object.defineProperty(exports,"DSRRequestForm",{enumerable:true,get:function(){return chunkUZNWXJ2W_js.a}});Object.defineProperty(exports,"sanitizeInput",{enumerable:true,get:function(){return chunkUXUMYP4L_js.a}});Object.defineProperty(exports,"useDSR",{enumerable:true,get:function(){return chunkO4ATGGVK_js.a}});Object.defineProperty(exports,"formatDSRRequest",{enumerable:true,get:function(){return chunk45D7AMB3_js.b}});Object.defineProperty(exports,"formatDSRRequestStructured",{enumerable:true,get:function(){return chunk45D7AMB3_js.d}});Object.defineProperty(exports,"validateDsrSubmission",{enumerable:true,get:function(){return chunk45D7AMB3_js.a}});Object.defineProperty(exports,"validateDsrSubmissionStructured",{enumerable:true,get:function(){return chunk45D7AMB3_js.c}});Object.defineProperty(exports,"DPIAReport",{enumerable:true,get:function(){return chunk37VFK5SR_js.a}});Object.defineProperty(exports,"StepIndicator",{enumerable:true,get:function(){return chunk37VFK5SR_js.b}});Object.defineProperty(exports,"DPIAQuestionnaire",{enumerable:true,get:function(){return chunkWCTFED27_js.a}});Object.defineProperty(exports,"useDPIA",{enumerable:true,get:function(){return chunkJLQT3W3E_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,"resolveClass",{enumerable:true,get:function(){return chunkAME4HJR4_js.a}});Object.defineProperty(exports,"NDPRProvider",{enumerable:true,get:function(){return chunkYDKWD6MQ_js.a}});Object.defineProperty(exports,"useNDPRConfig",{enumerable:true,get:function(){return chunkYDKWD6MQ_js.b}});exports.LegalNotice=be;exports.NDPRThemeProvider=Ae;
2
+ 'use strict';var chunkNUWVPRNI_js=require('./chunk-NUWVPRNI.js'),chunk3I6FYA5C_js=require('./chunk-3I6FYA5C.js'),chunkD2UWB5OI_js=require('./chunk-D2UWB5OI.js'),chunk3SIYRGJF_js=require('./chunk-3SIYRGJF.js'),chunk4FXRJH37_js=require('./chunk-4FXRJH37.js'),chunkCSE36REY_js=require('./chunk-CSE36REY.js'),chunkMAD7QYRK_js=require('./chunk-MAD7QYRK.js'),chunkFC3PTJFL_js=require('./chunk-FC3PTJFL.js'),chunkEHQVTFYO_js=require('./chunk-EHQVTFYO.js'),chunkRC3XFXTJ_js=require('./chunk-RC3XFXTJ.js'),chunkQHW4UKGJ_js=require('./chunk-QHW4UKGJ.js'),chunkIRRUYR6M_js=require('./chunk-IRRUYR6M.js'),chunkHHK5LHEG_js=require('./chunk-HHK5LHEG.js'),chunkTLIHFGIJ_js=require('./chunk-TLIHFGIJ.js');require('./chunk-JS7SYL5P.js');var chunkRDALAH3Y_js=require('./chunk-RDALAH3Y.js'),chunk3YTAOT5O_js=require('./chunk-3YTAOT5O.js'),chunkD2ZKDQVL_js=require('./chunk-D2ZKDQVL.js');require('./chunk-6LJHLE6G.js');var chunkYFBDJ4FH_js=require('./chunk-YFBDJ4FH.js'),chunkWZYCBW2R_js=require('./chunk-WZYCBW2R.js'),chunk4CVBQC66_js=require('./chunk-4CVBQC66.js'),chunkSJDDNB6M_js=require('./chunk-SJDDNB6M.js'),chunk42UJFTII_js=require('./chunk-42UJFTII.js'),chunkZD2W3YU2_js=require('./chunk-ZD2W3YU2.js'),chunk3IA3KDII_js=require('./chunk-3IA3KDII.js'),chunkQKXGVT2Q_js=require('./chunk-QKXGVT2Q.js'),chunkL2VO3MEJ_js=require('./chunk-L2VO3MEJ.js');require('./chunk-C2KEXHRX.js');var chunkDKLJ5DYN_js=require('./chunk-DKLJ5DYN.js'),chunkASEUTU45_js=require('./chunk-ASEUTU45.js'),chunkUZNWXJ2W_js=require('./chunk-UZNWXJ2W.js'),chunkUXUMYP4L_js=require('./chunk-UXUMYP4L.js'),chunkTVA6D6S4_js=require('./chunk-TVA6D6S4.js'),chunkR2ZZMATR_js=require('./chunk-R2ZZMATR.js'),chunk37VFK5SR_js=require('./chunk-37VFK5SR.js'),chunkWCTFED27_js=require('./chunk-WCTFED27.js'),chunkJLQT3W3E_js=require('./chunk-JLQT3W3E.js'),chunkTQZWJGJ2_js=require('./chunk-TQZWJGJ2.js'),chunkZVOIR4QH_js=require('./chunk-ZVOIR4QH.js'),chunkAME4HJR4_js=require('./chunk-AME4HJR4.js'),chunkYDKWD6MQ_js=require('./chunk-YDKWD6MQ.js');require('./chunk-TTMGFC6C.js'),require('./chunk-VWED6UTN.js'),require('./chunk-RFPLZDIO.js');var react=require('react'),jsxRuntime=require('react/jsx-runtime');var xe=({theme:o,className:t,children:s})=>{let n=react.useMemo(()=>{if(!o)return;let r={};if(o.colors){let e=o.colors;e.primary!==void 0&&(r["--ndpr-primary"]=e.primary),e.primaryHover!==void 0&&(r["--ndpr-primary-hover"]=e.primaryHover),e.primaryForeground!==void 0&&(r["--ndpr-primary-foreground"]=e.primaryForeground),e.background!==void 0&&(r["--ndpr-background"]=e.background),e.surface!==void 0&&(r["--ndpr-surface"]=e.surface),e.foreground!==void 0&&(r["--ndpr-foreground"]=e.foreground),e.muted!==void 0&&(r["--ndpr-muted"]=e.muted),e.mutedForeground!==void 0&&(r["--ndpr-muted-foreground"]=e.mutedForeground),e.border!==void 0&&(r["--ndpr-border"]=e.border),e.input!==void 0&&(r["--ndpr-input"]=e.input),e.ring!==void 0&&(r["--ndpr-ring"]=e.ring),e.success!==void 0&&(r["--ndpr-success"]=e.success),e.destructive!==void 0&&(r["--ndpr-destructive"]=e.destructive),e.warning!==void 0&&(r["--ndpr-warning"]=e.warning);}if(o.radius){let e=o.radius;e.sm!==void 0&&(r["--ndpr-radius-sm"]=e.sm),e.base!==void 0&&(r["--ndpr-radius"]=e.base),e.lg!==void 0&&(r["--ndpr-radius-lg"]=e.lg),e.full!==void 0&&(r["--ndpr-radius-full"]=e.full);}if(o.spacing){let e=o.spacing;e[1]!==void 0&&(r["--ndpr-space-1"]=e[1]),e[2]!==void 0&&(r["--ndpr-space-2"]=e[2]),e[3]!==void 0&&(r["--ndpr-space-3"]=e[3]),e[4]!==void 0&&(r["--ndpr-space-4"]=e[4]),e[5]!==void 0&&(r["--ndpr-space-5"]=e[5]),e[6]!==void 0&&(r["--ndpr-space-6"]=e[6]),e[8]!==void 0&&(r["--ndpr-space-8"]=e[8]);}if(o.shadow){let e=o.shadow;e.sm!==void 0&&(r["--ndpr-shadow-sm"]=e.sm),e.base!==void 0&&(r["--ndpr-shadow"]=e.base),e.lg!==void 0&&(r["--ndpr-shadow-lg"]=e.lg);}if(o.font){let e=o.font;e.sans!==void 0&&(r["--ndpr-font-sans"]=e.sans),e.sizeXs!==void 0&&(r["--ndpr-font-size-xs"]=e.sizeXs),e.sizeSm!==void 0&&(r["--ndpr-font-size-sm"]=e.sizeSm),e.sizeBase!==void 0&&(r["--ndpr-font-size-base"]=e.sizeBase),e.sizeLg!==void 0&&(r["--ndpr-font-size-lg"]=e.sizeLg),e.sizeXl!==void 0&&(r["--ndpr-font-size-xl"]=e.sizeXl),e.lineHeight!==void 0&&(r["--ndpr-line-height"]=e.lineHeight),e.lineHeightTight!==void 0&&(r["--ndpr-line-height-tight"]=e.lineHeightTight);}if(o.transition){let e=o.transition;e.base!==void 0&&(r["--ndpr-transition"]=e.base),e.slow!==void 0&&(r["--ndpr-transition-slow"]=e.slow);}if(o.z){let e=o.z;e.banner!==void 0&&(r["--ndpr-z-banner"]=String(e.banner)),e.modal!==void 0&&(r["--ndpr-z-modal"]=String(e.modal));}return Object.keys(r).length>0?r:void 0},[o]),p=o==null?void 0:o.mode;return jsxRuntime.jsx("div",{"data-ndpr-theme":"","data-theme":p,className:t,style:n,children:s})};var De=({variant:o="short",className:t,hidden:s})=>{if(s)return null;let n=o==="long"?chunkZVOIR4QH_js.b:chunkZVOIR4QH_js.a;return jsxRuntime.jsx("p",{role:"note",className:t!=null?t:"ndpr-legal-notice","data-ndpr-legal-notice":o,children:n})};Object.defineProperty(exports,"NDPRDashboard",{enumerable:true,get:function(){return chunkNUWVPRNI_js.a}});Object.defineProperty(exports,"BreachNotificationManager",{enumerable:true,get:function(){return chunk3I6FYA5C_js.b}});Object.defineProperty(exports,"BreachRiskAssessment",{enumerable:true,get:function(){return chunk3I6FYA5C_js.a}});Object.defineProperty(exports,"RegulatoryReportGenerator",{enumerable:true,get:function(){return chunk3I6FYA5C_js.c}});Object.defineProperty(exports,"BreachReportForm",{enumerable:true,get:function(){return chunkD2UWB5OI_js.a}});Object.defineProperty(exports,"PolicyExporter",{enumerable:true,get:function(){return chunk3SIYRGJF_js.c}});Object.defineProperty(exports,"PolicyGenerator",{enumerable:true,get:function(){return chunk3SIYRGJF_js.a}});Object.defineProperty(exports,"PolicyPreview",{enumerable:true,get:function(){return chunk3SIYRGJF_js.b}});Object.defineProperty(exports,"LawfulBasisTracker",{enumerable:true,get:function(){return chunk4FXRJH37_js.a}});Object.defineProperty(exports,"CrossBorderTransferManager",{enumerable:true,get:function(){return chunkCSE36REY_js.a}});Object.defineProperty(exports,"ROPAManager",{enumerable:true,get:function(){return chunkMAD7QYRK_js.a}});Object.defineProperty(exports,"useComplianceScore",{enumerable:true,get:function(){return chunkFC3PTJFL_js.a}});Object.defineProperty(exports,"useBreach",{enumerable:true,get:function(){return chunkEHQVTFYO_js.a}});Object.defineProperty(exports,"useDefaultPrivacyPolicy",{enumerable:true,get:function(){return chunkRC3XFXTJ_js.b}});Object.defineProperty(exports,"usePrivacyPolicy",{enumerable:true,get:function(){return chunkRC3XFXTJ_js.a}});Object.defineProperty(exports,"useAdaptivePolicyWizard",{enumerable:true,get:function(){return chunkQHW4UKGJ_js.a}});Object.defineProperty(exports,"useLawfulBasis",{enumerable:true,get:function(){return chunkIRRUYR6M_js.a}});Object.defineProperty(exports,"useCrossBorderTransfer",{enumerable:true,get:function(){return chunkHHK5LHEG_js.a}});Object.defineProperty(exports,"useROPA",{enumerable:true,get:function(){return chunkTLIHFGIJ_js.a}});Object.defineProperty(exports,"getComplianceScore",{enumerable:true,get:function(){return chunkRDALAH3Y_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,"generatePolicyText",{enumerable:true,get:function(){return chunkD2ZKDQVL_js.b}});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,"ConsentStorage",{enumerable:true,get:function(){return chunkSJDDNB6M_js.a}});Object.defineProperty(exports,"ConsentManager",{enumerable:true,get:function(){return chunk42UJFTII_js.a}});Object.defineProperty(exports,"ConsentBanner",{enumerable:true,get:function(){return chunkZD2W3YU2_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,"useConsent",{enumerable:true,get:function(){return chunkQKXGVT2Q_js.a}});Object.defineProperty(exports,"useFocusTrap",{enumerable:true,get:function(){return chunkL2VO3MEJ_js.a}});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,"DSRDashboard",{enumerable:true,get:function(){return chunkASEUTU45_js.a}});Object.defineProperty(exports,"DSRTracker",{enumerable:true,get:function(){return chunkASEUTU45_js.b}});Object.defineProperty(exports,"DSRRequestForm",{enumerable:true,get:function(){return chunkUZNWXJ2W_js.a}});Object.defineProperty(exports,"sanitizeInput",{enumerable:true,get:function(){return chunkUXUMYP4L_js.a}});Object.defineProperty(exports,"useDSR",{enumerable:true,get:function(){return chunkTVA6D6S4_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,"DPIAReport",{enumerable:true,get:function(){return chunk37VFK5SR_js.a}});Object.defineProperty(exports,"StepIndicator",{enumerable:true,get:function(){return chunk37VFK5SR_js.b}});Object.defineProperty(exports,"DPIAQuestionnaire",{enumerable:true,get:function(){return chunkWCTFED27_js.a}});Object.defineProperty(exports,"useDPIA",{enumerable:true,get:function(){return chunkJLQT3W3E_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,"resolveClass",{enumerable:true,get:function(){return chunkAME4HJR4_js.a}});Object.defineProperty(exports,"NDPRProvider",{enumerable:true,get:function(){return chunkYDKWD6MQ_js.a}});Object.defineProperty(exports,"useNDPRConfig",{enumerable:true,get:function(){return chunkYDKWD6MQ_js.b}});exports.LegalNotice=De;exports.NDPRThemeProvider=xe;
package/dist/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- export{a as NDPRDashboard}from'./chunk-ZIZL37BG.mjs';export{b as BreachNotificationManager,a as BreachRiskAssessment,c as RegulatoryReportGenerator}from'./chunk-J7BIJ45O.mjs';export{a as BreachReportForm}from'./chunk-DK7P5JEG.mjs';export{c as PolicyExporter,a as PolicyGenerator,b as PolicyPreview}from'./chunk-3H6FYU3Z.mjs';export{a as LawfulBasisTracker}from'./chunk-DSIIEUAD.mjs';export{a as CrossBorderTransferManager}from'./chunk-UTXDZDYF.mjs';export{a as ROPAManager}from'./chunk-W6VVLHRQ.mjs';export{a as useComplianceScore}from'./chunk-IQO3SIAG.mjs';export{a as useBreach}from'./chunk-RFXGD5NE.mjs';export{b as useDefaultPrivacyPolicy,a as usePrivacyPolicy}from'./chunk-UVXS7KRV.mjs';export{a as useAdaptivePolicyWizard}from'./chunk-KE2FZH2V.mjs';export{a as useLawfulBasis}from'./chunk-B6BRD5SL.mjs';export{a as useCrossBorderTransfer}from'./chunk-KDAZQO3N.mjs';export{a as useROPA}from'./chunk-JGY65SHX.mjs';import'./chunk-IVSNHT24.mjs';export{a as getComplianceScore}from'./chunk-7RBO42IW.mjs';export{a as calculateBreachSeverity}from'./chunk-WTGKZX7J.mjs';export{c as DEFAULT_POLICY_SECTIONS,d as DEFAULT_POLICY_VARIABLES,e as createBusinessPolicyTemplate,b as generatePolicyText}from'./chunk-NBQQ2GN3.mjs';import'./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{a as ConsentStorage}from'./chunk-XOH4WXOZ.mjs';export{a as ConsentManager}from'./chunk-BPMVJOHH.mjs';export{a as ConsentBanner}from'./chunk-I2ZBMR7F.mjs';export{c as appendAuditEntry,a as createAuditEntry,b as getAuditLog}from'./chunk-V7UFP6QU.mjs';export{a as useConsent}from'./chunk-7Z7NURIA.mjs';export{a as useFocusTrap}from'./chunk-YTU4FNM2.mjs';import'./chunk-XC3DLYEG.mjs';export{a as validateConsent,c as validateConsentOptions,d as validateConsentOptionsStructured,b as validateConsentStructured}from'./chunk-NI54X543.mjs';export{a as DSRDashboard,b as DSRTracker}from'./chunk-6H6IXTHA.mjs';export{a as DSRRequestForm}from'./chunk-L3FR4PQE.mjs';export{a as sanitizeInput}from'./chunk-EWVK45Z3.mjs';export{a as useDSR}from'./chunk-6OPGI27L.mjs';export{b as formatDSRRequest,d as formatDSRRequestStructured,a as validateDsrSubmission,c as validateDsrSubmissionStructured}from'./chunk-3APT25XO.mjs';export{a as DPIAReport,b as StepIndicator}from'./chunk-N72RNTGP.mjs';export{a as DPIAQuestionnaire}from'./chunk-ZQHGIOYP.mjs';export{a as useDPIA}from'./chunk-I3V3ITN7.mjs';export{a as assessDPIARisk}from'./chunk-LRRENTT5.mjs';import {b,a}from'./chunk-ITCY2Z66.mjs';export{b as LEGAL_DISCLAIMER_LONG,a as LEGAL_DISCLAIMER_SHORT,c as legalDisclaimerBlock}from'./chunk-ITCY2Z66.mjs';export{a as resolveClass}from'./chunk-SFGW37LE.mjs';export{a as NDPRProvider,b as useNDPRConfig}from'./chunk-FRQFU44F.mjs';import'./chunk-V5TZJJWU.mjs';import'./chunk-DBZSN4WP.mjs';import'./chunk-ZJYULEER.mjs';import {useMemo}from'react';import {jsx}from'react/jsx-runtime';var Ae=({theme:o,className:t,children:s})=>{let n=useMemo(()=>{if(!o)return;let r={};if(o.colors){let e=o.colors;e.primary!==void 0&&(r["--ndpr-primary"]=e.primary),e.primaryHover!==void 0&&(r["--ndpr-primary-hover"]=e.primaryHover),e.primaryForeground!==void 0&&(r["--ndpr-primary-foreground"]=e.primaryForeground),e.background!==void 0&&(r["--ndpr-background"]=e.background),e.surface!==void 0&&(r["--ndpr-surface"]=e.surface),e.foreground!==void 0&&(r["--ndpr-foreground"]=e.foreground),e.muted!==void 0&&(r["--ndpr-muted"]=e.muted),e.mutedForeground!==void 0&&(r["--ndpr-muted-foreground"]=e.mutedForeground),e.border!==void 0&&(r["--ndpr-border"]=e.border),e.input!==void 0&&(r["--ndpr-input"]=e.input),e.ring!==void 0&&(r["--ndpr-ring"]=e.ring),e.success!==void 0&&(r["--ndpr-success"]=e.success),e.destructive!==void 0&&(r["--ndpr-destructive"]=e.destructive),e.warning!==void 0&&(r["--ndpr-warning"]=e.warning);}if(o.radius){let e=o.radius;e.sm!==void 0&&(r["--ndpr-radius-sm"]=e.sm),e.base!==void 0&&(r["--ndpr-radius"]=e.base),e.lg!==void 0&&(r["--ndpr-radius-lg"]=e.lg),e.full!==void 0&&(r["--ndpr-radius-full"]=e.full);}if(o.spacing){let e=o.spacing;e[1]!==void 0&&(r["--ndpr-space-1"]=e[1]),e[2]!==void 0&&(r["--ndpr-space-2"]=e[2]),e[3]!==void 0&&(r["--ndpr-space-3"]=e[3]),e[4]!==void 0&&(r["--ndpr-space-4"]=e[4]),e[5]!==void 0&&(r["--ndpr-space-5"]=e[5]),e[6]!==void 0&&(r["--ndpr-space-6"]=e[6]),e[8]!==void 0&&(r["--ndpr-space-8"]=e[8]);}if(o.shadow){let e=o.shadow;e.sm!==void 0&&(r["--ndpr-shadow-sm"]=e.sm),e.base!==void 0&&(r["--ndpr-shadow"]=e.base),e.lg!==void 0&&(r["--ndpr-shadow-lg"]=e.lg);}if(o.font){let e=o.font;e.sans!==void 0&&(r["--ndpr-font-sans"]=e.sans),e.sizeXs!==void 0&&(r["--ndpr-font-size-xs"]=e.sizeXs),e.sizeSm!==void 0&&(r["--ndpr-font-size-sm"]=e.sizeSm),e.sizeBase!==void 0&&(r["--ndpr-font-size-base"]=e.sizeBase),e.sizeLg!==void 0&&(r["--ndpr-font-size-lg"]=e.sizeLg),e.sizeXl!==void 0&&(r["--ndpr-font-size-xl"]=e.sizeXl),e.lineHeight!==void 0&&(r["--ndpr-line-height"]=e.lineHeight),e.lineHeightTight!==void 0&&(r["--ndpr-line-height-tight"]=e.lineHeightTight);}if(o.transition){let e=o.transition;e.base!==void 0&&(r["--ndpr-transition"]=e.base),e.slow!==void 0&&(r["--ndpr-transition-slow"]=e.slow);}if(o.z){let e=o.z;e.banner!==void 0&&(r["--ndpr-z-banner"]=String(e.banner)),e.modal!==void 0&&(r["--ndpr-z-modal"]=String(e.modal));}return Object.keys(r).length>0?r:void 0},[o]),p=o==null?void 0:o.mode;return jsx("div",{"data-ndpr-theme":"","data-theme":p,className:t,style:n,children:s})};var be=({variant:o="short",className:t,hidden:s})=>{if(s)return null;let n=o==="long"?b:a;return jsx("p",{role:"note",className:t!=null?t:"ndpr-legal-notice","data-ndpr-legal-notice":o,children:n})};export{be as LegalNotice,Ae as NDPRThemeProvider};
2
+ export{a as NDPRDashboard}from'./chunk-ZIZL37BG.mjs';export{b as BreachNotificationManager,a as BreachRiskAssessment,c as RegulatoryReportGenerator}from'./chunk-J7BIJ45O.mjs';export{a as BreachReportForm}from'./chunk-DK7P5JEG.mjs';export{c as PolicyExporter,a as PolicyGenerator,b as PolicyPreview}from'./chunk-3H6FYU3Z.mjs';export{a as LawfulBasisTracker}from'./chunk-NBOJ2KGN.mjs';export{a as CrossBorderTransferManager}from'./chunk-WPH6CJDL.mjs';export{a as ROPAManager}from'./chunk-BRJKIF7E.mjs';export{a as useComplianceScore}from'./chunk-IQO3SIAG.mjs';export{a as useBreach}from'./chunk-RFXGD5NE.mjs';export{b as useDefaultPrivacyPolicy,a as usePrivacyPolicy}from'./chunk-UVXS7KRV.mjs';export{a as useAdaptivePolicyWizard}from'./chunk-KE2FZH2V.mjs';export{a as useLawfulBasis}from'./chunk-B6BRD5SL.mjs';export{a as useCrossBorderTransfer}from'./chunk-KDAZQO3N.mjs';export{a as useROPA}from'./chunk-FRMVSG4N.mjs';import'./chunk-IVSNHT24.mjs';export{a as getComplianceScore}from'./chunk-7RBO42IW.mjs';export{a as calculateBreachSeverity}from'./chunk-WTGKZX7J.mjs';export{c as DEFAULT_POLICY_SECTIONS,d as DEFAULT_POLICY_VARIABLES,e as createBusinessPolicyTemplate,b as generatePolicyText}from'./chunk-NBQQ2GN3.mjs';import'./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{a as ConsentStorage}from'./chunk-XOH4WXOZ.mjs';export{a as ConsentManager}from'./chunk-BPMVJOHH.mjs';export{a as ConsentBanner}from'./chunk-I2ZBMR7F.mjs';export{c as appendAuditEntry,a as createAuditEntry,b as getAuditLog}from'./chunk-V7UFP6QU.mjs';export{a as useConsent}from'./chunk-PQ5IPUJN.mjs';export{a as useFocusTrap}from'./chunk-YTU4FNM2.mjs';import'./chunk-XC3DLYEG.mjs';export{b as validateConsentOptionsStructured,a as validateConsentStructured}from'./chunk-R3ZKV2J7.mjs';export{a as DSRDashboard,b as DSRTracker}from'./chunk-SBSYHCPK.mjs';export{a as DSRRequestForm}from'./chunk-L3FR4PQE.mjs';export{a as sanitizeInput}from'./chunk-EWVK45Z3.mjs';export{a as useDSR}from'./chunk-ZSRO4L3C.mjs';export{b as formatDSRRequestStructured,a as validateDsrSubmissionStructured}from'./chunk-RRVML7CU.mjs';export{a as DPIAReport,b as StepIndicator}from'./chunk-N72RNTGP.mjs';export{a as DPIAQuestionnaire}from'./chunk-ZQHGIOYP.mjs';export{a as useDPIA}from'./chunk-I3V3ITN7.mjs';export{a as assessDPIARisk}from'./chunk-LRRENTT5.mjs';import {b,a}from'./chunk-ITCY2Z66.mjs';export{b as LEGAL_DISCLAIMER_LONG,a as LEGAL_DISCLAIMER_SHORT,c as legalDisclaimerBlock}from'./chunk-ITCY2Z66.mjs';export{a as resolveClass}from'./chunk-SFGW37LE.mjs';export{a as NDPRProvider,b as useNDPRConfig}from'./chunk-FRQFU44F.mjs';import'./chunk-V5TZJJWU.mjs';import'./chunk-DBZSN4WP.mjs';import'./chunk-ZJYULEER.mjs';import {useMemo}from'react';import {jsx}from'react/jsx-runtime';var xe=({theme:o,className:t,children:s})=>{let n=useMemo(()=>{if(!o)return;let r={};if(o.colors){let e=o.colors;e.primary!==void 0&&(r["--ndpr-primary"]=e.primary),e.primaryHover!==void 0&&(r["--ndpr-primary-hover"]=e.primaryHover),e.primaryForeground!==void 0&&(r["--ndpr-primary-foreground"]=e.primaryForeground),e.background!==void 0&&(r["--ndpr-background"]=e.background),e.surface!==void 0&&(r["--ndpr-surface"]=e.surface),e.foreground!==void 0&&(r["--ndpr-foreground"]=e.foreground),e.muted!==void 0&&(r["--ndpr-muted"]=e.muted),e.mutedForeground!==void 0&&(r["--ndpr-muted-foreground"]=e.mutedForeground),e.border!==void 0&&(r["--ndpr-border"]=e.border),e.input!==void 0&&(r["--ndpr-input"]=e.input),e.ring!==void 0&&(r["--ndpr-ring"]=e.ring),e.success!==void 0&&(r["--ndpr-success"]=e.success),e.destructive!==void 0&&(r["--ndpr-destructive"]=e.destructive),e.warning!==void 0&&(r["--ndpr-warning"]=e.warning);}if(o.radius){let e=o.radius;e.sm!==void 0&&(r["--ndpr-radius-sm"]=e.sm),e.base!==void 0&&(r["--ndpr-radius"]=e.base),e.lg!==void 0&&(r["--ndpr-radius-lg"]=e.lg),e.full!==void 0&&(r["--ndpr-radius-full"]=e.full);}if(o.spacing){let e=o.spacing;e[1]!==void 0&&(r["--ndpr-space-1"]=e[1]),e[2]!==void 0&&(r["--ndpr-space-2"]=e[2]),e[3]!==void 0&&(r["--ndpr-space-3"]=e[3]),e[4]!==void 0&&(r["--ndpr-space-4"]=e[4]),e[5]!==void 0&&(r["--ndpr-space-5"]=e[5]),e[6]!==void 0&&(r["--ndpr-space-6"]=e[6]),e[8]!==void 0&&(r["--ndpr-space-8"]=e[8]);}if(o.shadow){let e=o.shadow;e.sm!==void 0&&(r["--ndpr-shadow-sm"]=e.sm),e.base!==void 0&&(r["--ndpr-shadow"]=e.base),e.lg!==void 0&&(r["--ndpr-shadow-lg"]=e.lg);}if(o.font){let e=o.font;e.sans!==void 0&&(r["--ndpr-font-sans"]=e.sans),e.sizeXs!==void 0&&(r["--ndpr-font-size-xs"]=e.sizeXs),e.sizeSm!==void 0&&(r["--ndpr-font-size-sm"]=e.sizeSm),e.sizeBase!==void 0&&(r["--ndpr-font-size-base"]=e.sizeBase),e.sizeLg!==void 0&&(r["--ndpr-font-size-lg"]=e.sizeLg),e.sizeXl!==void 0&&(r["--ndpr-font-size-xl"]=e.sizeXl),e.lineHeight!==void 0&&(r["--ndpr-line-height"]=e.lineHeight),e.lineHeightTight!==void 0&&(r["--ndpr-line-height-tight"]=e.lineHeightTight);}if(o.transition){let e=o.transition;e.base!==void 0&&(r["--ndpr-transition"]=e.base),e.slow!==void 0&&(r["--ndpr-transition-slow"]=e.slow);}if(o.z){let e=o.z;e.banner!==void 0&&(r["--ndpr-z-banner"]=String(e.banner)),e.modal!==void 0&&(r["--ndpr-z-modal"]=String(e.modal));}return Object.keys(r).length>0?r:void 0},[o]),p=o==null?void 0:o.mode;return jsx("div",{"data-ndpr-theme":"","data-theme":p,className:t,style:n,children:s})};var De=({variant:o="short",className:t,hidden:s})=>{if(s)return null;let n=o==="long"?b:a;return jsx("p",{role:"note",className:t!=null?t:"ndpr-legal-notice","data-ndpr-legal-notice":o,children:n})};export{De as LegalNotice,xe as NDPRThemeProvider};
@@ -111,36 +111,15 @@ declare interface LawfulBasisTrackerProps {
111
111
  */
112
112
  activities: ProcessingActivity[];
113
113
  /**
114
- * Callback when a new activity is created
115
- * @deprecated Renamed to `onAdd` in 4.1. The legacy name still fires
116
- * for backward compatibility and will be removed in 5.0.
117
- */
118
- onAddActivity?: (activity: Omit<ProcessingActivity, 'id' | 'createdAt' | 'updatedAt'>) => void;
119
- /**
120
- * Callback when an activity is updated
121
- * @deprecated Renamed to `onUpdate` in 4.1. The legacy name still fires
122
- * for backward compatibility and will be removed in 5.0.
123
- */
124
- onUpdateActivity?: (id: string, updates: Partial<ProcessingActivity>) => void;
125
- /**
126
- * Callback when an activity is archived
127
- * @deprecated Renamed to `onArchive` in 4.1. The legacy name still fires
128
- * for backward compatibility and will be removed in 5.0.
129
- */
130
- onArchiveActivity?: (id: string) => void;
131
- /**
132
- * Callback when a new activity is created (uniform 4.1+ name).
133
- * Takes precedence over `onAddActivity` when both are provided.
114
+ * Callback when a new activity is created.
134
115
  */
135
116
  onAdd?: (activity: Omit<ProcessingActivity, 'id' | 'createdAt' | 'updatedAt'>) => void;
136
117
  /**
137
- * Callback when an activity is updated (uniform 4.1+ name).
138
- * Takes precedence over `onUpdateActivity` when both are provided.
118
+ * Callback when an activity is updated.
139
119
  */
140
120
  onUpdate?: (id: string, updates: Partial<ProcessingActivity>) => void;
141
121
  /**
142
- * Callback when an activity is archived (uniform 4.1+ name).
143
- * Takes precedence over `onArchiveActivity` when both are provided.
122
+ * Callback when an activity is archived.
144
123
  */
145
124
  onArchive?: (id: string) => void;
146
125
  /**
@@ -111,36 +111,15 @@ declare interface LawfulBasisTrackerProps {
111
111
  */
112
112
  activities: ProcessingActivity[];
113
113
  /**
114
- * Callback when a new activity is created
115
- * @deprecated Renamed to `onAdd` in 4.1. The legacy name still fires
116
- * for backward compatibility and will be removed in 5.0.
117
- */
118
- onAddActivity?: (activity: Omit<ProcessingActivity, 'id' | 'createdAt' | 'updatedAt'>) => void;
119
- /**
120
- * Callback when an activity is updated
121
- * @deprecated Renamed to `onUpdate` in 4.1. The legacy name still fires
122
- * for backward compatibility and will be removed in 5.0.
123
- */
124
- onUpdateActivity?: (id: string, updates: Partial<ProcessingActivity>) => void;
125
- /**
126
- * Callback when an activity is archived
127
- * @deprecated Renamed to `onArchive` in 4.1. The legacy name still fires
128
- * for backward compatibility and will be removed in 5.0.
129
- */
130
- onArchiveActivity?: (id: string) => void;
131
- /**
132
- * Callback when a new activity is created (uniform 4.1+ name).
133
- * Takes precedence over `onAddActivity` when both are provided.
114
+ * Callback when a new activity is created.
134
115
  */
135
116
  onAdd?: (activity: Omit<ProcessingActivity, 'id' | 'createdAt' | 'updatedAt'>) => void;
136
117
  /**
137
- * Callback when an activity is updated (uniform 4.1+ name).
138
- * Takes precedence over `onUpdateActivity` when both are provided.
118
+ * Callback when an activity is updated.
139
119
  */
140
120
  onUpdate?: (id: string, updates: Partial<ProcessingActivity>) => void;
141
121
  /**
142
- * Callback when an activity is archived (uniform 4.1+ name).
143
- * Takes precedence over `onArchiveActivity` when both are provided.
122
+ * Callback when an activity is archived.
144
123
  */
145
124
  onArchive?: (id: string) => void;
146
125
  /**
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- 'use strict';var chunk65J4P5ID_js=require('./chunk-65J4P5ID.js'),chunkIRRUYR6M_js=require('./chunk-IRRUYR6M.js'),chunkWZYCBW2R_js=require('./chunk-WZYCBW2R.js');require('./chunk-AME4HJR4.js'),require('./chunk-YDKWD6MQ.js'),require('./chunk-TTMGFC6C.js'),require('./chunk-VWED6UTN.js'),require('./chunk-RFPLZDIO.js');var react=require('react'),jsxRuntime=require('react/jsx-runtime');var o=react.createContext(null);function x(){let s=react.useContext(o);if(!s)throw new Error("LawfulBasis compound components must be wrapped in <LawfulBasis.Provider>. Example: <LawfulBasis.Provider><LawfulBasis.Tracker /></LawfulBasis.Provider>");return s}var r=({adapter:s,storageKey:t,useLocalStorage:i,initialActivities:u,onAdd:f,onUpdate:p,onRemove:l,children:n})=>{let m=chunkIRRUYR6M_js.a({adapter:s,storageKey:t,useLocalStorage:i,initialActivities:u,onAdd:f,onUpdate:p,onRemove:l});return jsxRuntime.jsx(o.Provider,{value:m,children:n})};var y={Provider:r,Tracker:chunk65J4P5ID_js.a};Object.defineProperty(exports,"LawfulBasisTracker",{enumerable:true,get:function(){return chunk65J4P5ID_js.a}});Object.defineProperty(exports,"useLawfulBasis",{enumerable:true,get:function(){return chunkIRRUYR6M_js.a}});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}});exports.LawfulBasis=y;exports.LawfulBasisProvider=r;exports.useLawfulBasisCompound=x;
2
+ 'use strict';var chunk4FXRJH37_js=require('./chunk-4FXRJH37.js'),chunkIRRUYR6M_js=require('./chunk-IRRUYR6M.js'),chunkWZYCBW2R_js=require('./chunk-WZYCBW2R.js');require('./chunk-AME4HJR4.js'),require('./chunk-YDKWD6MQ.js'),require('./chunk-TTMGFC6C.js'),require('./chunk-VWED6UTN.js'),require('./chunk-RFPLZDIO.js');var react=require('react'),jsxRuntime=require('react/jsx-runtime');var o=react.createContext(null);function x(){let s=react.useContext(o);if(!s)throw new Error("LawfulBasis compound components must be wrapped in <LawfulBasis.Provider>. Example: <LawfulBasis.Provider><LawfulBasis.Tracker /></LawfulBasis.Provider>");return s}var r=({adapter:s,storageKey:t,useLocalStorage:i,initialActivities:u,onAdd:f,onUpdate:p,onRemove:l,children:n})=>{let m=chunkIRRUYR6M_js.a({adapter:s,storageKey:t,useLocalStorage:i,initialActivities:u,onAdd:f,onUpdate:p,onRemove:l});return jsxRuntime.jsx(o.Provider,{value:m,children:n})};var y={Provider:r,Tracker:chunk4FXRJH37_js.a};Object.defineProperty(exports,"LawfulBasisTracker",{enumerable:true,get:function(){return chunk4FXRJH37_js.a}});Object.defineProperty(exports,"useLawfulBasis",{enumerable:true,get:function(){return chunkIRRUYR6M_js.a}});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}});exports.LawfulBasis=y;exports.LawfulBasisProvider=r;exports.useLawfulBasisCompound=x;
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- import {a}from'./chunk-DSIIEUAD.mjs';export{a as LawfulBasisTracker}from'./chunk-DSIIEUAD.mjs';import {a as a$1}from'./chunk-B6BRD5SL.mjs';export{a as useLawfulBasis}from'./chunk-B6BRD5SL.mjs';export{c as assessComplianceGaps,d as generateLawfulBasisSummary,b as getLawfulBasisDescription,a as validateProcessingActivity}from'./chunk-LWIKDDSU.mjs';import'./chunk-SFGW37LE.mjs';import'./chunk-FRQFU44F.mjs';import'./chunk-V5TZJJWU.mjs';import'./chunk-DBZSN4WP.mjs';import'./chunk-ZJYULEER.mjs';import {createContext,useContext}from'react';import {jsx}from'react/jsx-runtime';var o=createContext(null);function x(){let s=useContext(o);if(!s)throw new Error("LawfulBasis compound components must be wrapped in <LawfulBasis.Provider>. Example: <LawfulBasis.Provider><LawfulBasis.Tracker /></LawfulBasis.Provider>");return s}var r=({adapter:s,storageKey:t,useLocalStorage:i,initialActivities:u,onAdd:f,onUpdate:p,onRemove:l,children:n})=>{let m=a$1({adapter:s,storageKey:t,useLocalStorage:i,initialActivities:u,onAdd:f,onUpdate:p,onRemove:l});return jsx(o.Provider,{value:m,children:n})};var y={Provider:r,Tracker:a};export{y as LawfulBasis,r as LawfulBasisProvider,x as useLawfulBasisCompound};
2
+ import {a}from'./chunk-NBOJ2KGN.mjs';export{a as LawfulBasisTracker}from'./chunk-NBOJ2KGN.mjs';import {a as a$1}from'./chunk-B6BRD5SL.mjs';export{a as useLawfulBasis}from'./chunk-B6BRD5SL.mjs';export{c as assessComplianceGaps,d as generateLawfulBasisSummary,b as getLawfulBasisDescription,a as validateProcessingActivity}from'./chunk-LWIKDDSU.mjs';import'./chunk-SFGW37LE.mjs';import'./chunk-FRQFU44F.mjs';import'./chunk-V5TZJJWU.mjs';import'./chunk-DBZSN4WP.mjs';import'./chunk-ZJYULEER.mjs';import {createContext,useContext}from'react';import {jsx}from'react/jsx-runtime';var o=createContext(null);function x(){let s=useContext(o);if(!s)throw new Error("LawfulBasis compound components must be wrapped in <LawfulBasis.Provider>. Example: <LawfulBasis.Provider><LawfulBasis.Tracker /></LawfulBasis.Provider>");return s}var r=({adapter:s,storageKey:t,useLocalStorage:i,initialActivities:u,onAdd:f,onUpdate:p,onRemove:l,children:n})=>{let m=a$1({adapter:s,storageKey:t,useLocalStorage:i,initialActivities:u,onAdd:f,onUpdate:p,onRemove:l});return jsx(o.Provider,{value:m,children:n})};var y={Provider:r,Tracker:a};export{y as LawfulBasis,r as LawfulBasisProvider,x as useLawfulBasisCompound};
@@ -846,17 +846,9 @@ export declare interface NDPRDPIAProps {
846
846
  adapter?: StorageAdapter<DPIAAnswerMap>;
847
847
  classNames?: DPIAQuestionnaireClassNames;
848
848
  unstyled?: boolean;
849
- /**
850
- * Fired when the questionnaire is submitted, with the raw answer map.
851
- * @deprecated Use `onResult` (4.1+) to receive a full `DPIAResult`
852
- * containing the computed risk score. `onComplete` will be removed in
853
- * 5.0.
854
- */
855
- onComplete?: (answers: DPIAAnswerMap) => void;
856
849
  /**
857
850
  * Fired when the questionnaire is submitted, with the full `DPIAResult`
858
851
  * including risks, overall risk level, conclusion, and recommendations.
859
- * Replaces `onComplete` from 4.1+.
860
852
  */
861
853
  onResult?: (result: DPIAResult) => void;
862
854
  /**
@@ -871,7 +863,7 @@ export declare interface NDPRDPIAProps {
871
863
  * - the questionnaire does NOT require an `adapter`
872
864
  * - on completion, the toolkit POSTs the JSON-serialised `DPIAAnswerMap`
873
865
  * to this URL (with `Content-Type: application/json`)
874
- * - your `onComplete` callback still fires (after the POST resolves)
866
+ * - your `onResult` callback still fires (after the POST resolves)
875
867
  * - submit failures are surfaced via `onSubmitError`
876
868
  *
877
869
  * @example
package/dist/presets.d.ts CHANGED
@@ -846,17 +846,9 @@ export declare interface NDPRDPIAProps {
846
846
  adapter?: StorageAdapter<DPIAAnswerMap>;
847
847
  classNames?: DPIAQuestionnaireClassNames;
848
848
  unstyled?: boolean;
849
- /**
850
- * Fired when the questionnaire is submitted, with the raw answer map.
851
- * @deprecated Use `onResult` (4.1+) to receive a full `DPIAResult`
852
- * containing the computed risk score. `onComplete` will be removed in
853
- * 5.0.
854
- */
855
- onComplete?: (answers: DPIAAnswerMap) => void;
856
849
  /**
857
850
  * Fired when the questionnaire is submitted, with the full `DPIAResult`
858
851
  * including risks, overall risk level, conclusion, and recommendations.
859
- * Replaces `onComplete` from 4.1+.
860
852
  */
861
853
  onResult?: (result: DPIAResult) => void;
862
854
  /**
@@ -871,7 +863,7 @@ export declare interface NDPRDPIAProps {
871
863
  * - the questionnaire does NOT require an `adapter`
872
864
  * - on completion, the toolkit POSTs the JSON-serialised `DPIAAnswerMap`
873
865
  * to this URL (with `Content-Type: application/json`)
874
- * - your `onComplete` callback still fires (after the POST resolves)
866
+ * - your `onResult` callback still fires (after the POST resolves)
875
867
  * - submit failures are surfaced via `onSubmitError`
876
868
  *
877
869
  * @example