@tantainnovative/ndpr-toolkit 3.13.0 → 4.1.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 (102) hide show
  1. package/CHANGELOG.md +131 -0
  2. package/README.md +1 -1
  3. package/dist/breach.d.mts +2 -7
  4. package/dist/breach.d.ts +2 -7
  5. package/dist/breach.js +1 -1
  6. package/dist/breach.mjs +1 -1
  7. package/dist/chunk-3APT25XO.mjs +1 -0
  8. package/dist/chunk-45D7AMB3.js +1 -0
  9. package/dist/chunk-63WM5PHZ.js +1 -0
  10. package/dist/chunk-65J4P5ID.js +1 -0
  11. package/dist/chunk-6A6VI7ZP.mjs +1 -0
  12. package/dist/{chunk-NB6SKG76.mjs → chunk-6H6IXTHA.mjs} +1 -1
  13. package/dist/chunk-6OPGI27L.mjs +1 -0
  14. package/dist/{chunk-3XU6FL2I.js → chunk-6YFPDGNB.js} +1 -1
  15. package/dist/{chunk-IHNAFXDM.mjs → chunk-7Z7NURIA.mjs} +1 -1
  16. package/dist/chunk-D2UWB5OI.js +2 -0
  17. package/dist/chunk-D3HHDWBR.js +1 -0
  18. package/dist/chunk-DK7P5JEG.mjs +2 -0
  19. package/dist/chunk-DSIIEUAD.mjs +1 -0
  20. package/dist/chunk-H2FDWK4F.js +6 -0
  21. package/dist/chunk-HLFS3NXG.js +1 -0
  22. package/dist/chunk-JGY65SHX.mjs +1 -0
  23. package/dist/chunk-NI54X543.mjs +1 -0
  24. package/dist/chunk-O4ATGGVK.js +1 -0
  25. package/dist/chunk-P5MPUC5F.js +1 -0
  26. package/dist/{chunk-BGV2AKT7.mjs → chunk-PSPYIRIF.mjs} +1 -1
  27. package/dist/{chunk-HOAC5VUF.js → chunk-ROOUYQD4.js} +1 -1
  28. package/dist/{chunk-WMISQDSV.js → chunk-UJGNW6CH.js} +1 -1
  29. package/dist/chunk-UTXDZDYF.mjs +6 -0
  30. package/dist/chunk-W6VVLHRQ.mjs +1 -0
  31. package/dist/consent.d.mts +2 -0
  32. package/dist/consent.d.ts +2 -0
  33. package/dist/consent.js +1 -1
  34. package/dist/consent.mjs +1 -1
  35. package/dist/core.d.mts +13 -0
  36. package/dist/core.d.ts +13 -0
  37. package/dist/core.js +1 -1
  38. package/dist/core.mjs +1 -1
  39. package/dist/cross-border.d.mts +24 -0
  40. package/dist/cross-border.d.ts +24 -0
  41. package/dist/cross-border.js +1 -1
  42. package/dist/cross-border.mjs +1 -1
  43. package/dist/dsr.d.mts +15 -3
  44. package/dist/dsr.d.ts +15 -3
  45. package/dist/dsr.js +1 -1
  46. package/dist/dsr.mjs +1 -1
  47. package/dist/headless.d.mts +34 -4
  48. package/dist/headless.d.ts +34 -4
  49. package/dist/headless.js +1 -1
  50. package/dist/headless.mjs +1 -1
  51. package/dist/hooks.d.mts +34 -4
  52. package/dist/hooks.d.ts +34 -4
  53. package/dist/hooks.js +1 -1
  54. package/dist/hooks.mjs +1 -1
  55. package/dist/index.d.mts +229 -11
  56. package/dist/index.d.ts +229 -11
  57. package/dist/index.js +1 -1
  58. package/dist/index.mjs +1 -1
  59. package/dist/lawful-basis.d.mts +21 -0
  60. package/dist/lawful-basis.d.ts +21 -0
  61. package/dist/lawful-basis.js +1 -1
  62. package/dist/lawful-basis.mjs +1 -1
  63. package/dist/presets-consent.d.mts +5 -1
  64. package/dist/presets-consent.d.ts +5 -1
  65. package/dist/presets-consent.js +1 -1
  66. package/dist/presets-consent.mjs +1 -1
  67. package/dist/presets.d.mts +103 -22
  68. package/dist/presets.d.ts +103 -22
  69. package/dist/presets.js +1 -1
  70. package/dist/presets.mjs +1 -1
  71. package/dist/ropa-lite.d.mts +13 -1
  72. package/dist/ropa-lite.d.ts +13 -1
  73. package/dist/ropa-lite.js +1 -1
  74. package/dist/ropa-lite.mjs +1 -1
  75. package/dist/ropa.d.mts +43 -1
  76. package/dist/ropa.d.ts +43 -1
  77. package/dist/ropa.js +1 -1
  78. package/dist/ropa.mjs +1 -1
  79. package/dist/server.d.mts +135 -0
  80. package/dist/server.d.ts +135 -0
  81. package/dist/server.js +1 -1
  82. package/dist/server.mjs +1 -1
  83. package/dist/styles.css +18 -16
  84. package/package.json +3 -3
  85. package/dist/chunk-42JPSNVV.mjs +0 -6
  86. package/dist/chunk-737EMUUC.mjs +0 -1
  87. package/dist/chunk-7FXNGGMO.js +0 -1
  88. package/dist/chunk-B46SJB5V.js +0 -1
  89. package/dist/chunk-BL5W472Q.js +0 -1
  90. package/dist/chunk-NUIRMJKQ.mjs +0 -2
  91. package/dist/chunk-O2WEABB3.js +0 -1
  92. package/dist/chunk-OZHUINWS.js +0 -1
  93. package/dist/chunk-PJNKQPQP.mjs +0 -1
  94. package/dist/chunk-PXDSPF5B.js +0 -2
  95. package/dist/chunk-QGUOFGVJ.js +0 -2
  96. package/dist/chunk-RBKFNCGO.mjs +0 -1
  97. package/dist/chunk-VPNK7OID.mjs +0 -1
  98. package/dist/chunk-WHQ4PEYS.mjs +0 -2
  99. package/dist/chunk-WKUC65HL.mjs +0 -1
  100. package/dist/chunk-XYGGUGTO.js +0 -6
  101. package/dist/chunk-Z2M5VJX2.mjs +0 -1
  102. package/dist/chunk-ZM5DLFCZ.js +0 -1
package/dist/dsr.d.ts CHANGED
@@ -462,6 +462,7 @@ export declare type DSRType = 'information' | 'access' | 'rectification' | 'eras
462
462
  * Formats a DSR request for display or submission
463
463
  * @param request The DSR request to format
464
464
  * @returns Formatted request data
465
+ * @deprecated Use `formatDSRRequestStructured()` for typed `{ field, code, message }[]` errors. The legacy string-returning shape will be removed in 5.0.
465
466
  */
466
467
  export declare function formatDSRRequest(request: DSRRequest): {
467
468
  formattedRequest: Record<string, unknown>;
@@ -565,9 +566,18 @@ declare interface UseDSROptions {
565
566
  */
566
567
  storageKey?: string;
567
568
  /**
568
- * Whether to use local storage to persist requests
569
- * @default true
570
- * @deprecated Use adapter instead
569
+ * Whether to use local storage to persist requests.
570
+ *
571
+ * **Changed in 4.0:** the default is now `false`. `useDSR` is the admin
572
+ * tracker hook and its state contains data subjects' PII; the previous
573
+ * default (true) stored that PII in the admin's browser localStorage,
574
+ * which is rarely appropriate. Opt in by passing `useLocalStorage: true`
575
+ * if you specifically want the old behaviour.
576
+ *
577
+ * For production deployments, pass an explicit `adapter` instead.
578
+ *
579
+ * @default false (as of 4.0; was `true` in 3.x)
580
+ * @deprecated Pass an explicit `adapter` instead of toggling this flag.
571
581
  */
572
582
  useLocalStorage?: boolean;
573
583
  /**
@@ -664,6 +674,8 @@ declare interface UseDSRReturn {
664
674
  * ```ts
665
675
  * validateDsrSubmission(payload, { requireIdentityVerification: false });
666
676
  * ```
677
+ *
678
+ * @deprecated Use `validateDsrSubmissionStructured()` for typed `{ field, code, message }[]` errors. The legacy string-returning shape will be removed in 5.0.
667
679
  */
668
680
  export declare function validateDsrSubmission(payload: unknown, options?: ValidateDsrSubmissionOptions): DsrSubmissionValidationResult;
669
681
 
package/dist/dsr.js CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- 'use strict';var chunkWMISQDSV_js=require('./chunk-WMISQDSV.js'),chunkUZNWXJ2W_js=require('./chunk-UZNWXJ2W.js');require('./chunk-UXUMYP4L.js');var chunkPXDSPF5B_js=require('./chunk-PXDSPF5B.js'),chunkOZHUINWS_js=require('./chunk-OZHUINWS.js');require('./chunk-AME4HJR4.js'),require('./chunk-YDKWD6MQ.js'),require('./chunk-TTMGFC6C.js'),require('./chunk-VWED6UTN.js');var chunkRFPLZDIO_js=require('./chunk-RFPLZDIO.js'),react=require('react'),jsxRuntime=require('react/jsx-runtime');var p=react.createContext(null);function P(){let e=react.useContext(p);if(!e)throw new Error("DSR compound components must be wrapped in <DSR.Provider>. Example: <DSR.Provider requestTypes={...}><DSR.Form /></DSR.Provider>");return e}var m=({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:d,onSubmit:u,onUpdate:i,children:n})=>{let f=chunkPXDSPF5B_js.a({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:d,onSubmit:u,onUpdate:i}),x=chunkRFPLZDIO_js.b(chunkRFPLZDIO_js.a({},f),{requestTypes:e});return jsxRuntime.jsx(p.Provider,{value:x,children:n})};var C={Provider:m,Form:chunkUZNWXJ2W_js.a,Dashboard:chunkWMISQDSV_js.a,Tracker:chunkWMISQDSV_js.b};Object.defineProperty(exports,"DSRDashboard",{enumerable:true,get:function(){return chunkWMISQDSV_js.a}});Object.defineProperty(exports,"DSRTracker",{enumerable:true,get:function(){return chunkWMISQDSV_js.b}});Object.defineProperty(exports,"DSRRequestForm",{enumerable:true,get:function(){return chunkUZNWXJ2W_js.a}});Object.defineProperty(exports,"useDSR",{enumerable:true,get:function(){return chunkPXDSPF5B_js.a}});Object.defineProperty(exports,"formatDSRRequest",{enumerable:true,get:function(){return chunkOZHUINWS_js.b}});Object.defineProperty(exports,"validateDsrSubmission",{enumerable:true,get:function(){return chunkOZHUINWS_js.a}});exports.DSR=C;exports.DSRProvider=m;exports.useDSRCompound=P;
2
+ 'use strict';var chunkUJGNW6CH_js=require('./chunk-UJGNW6CH.js'),chunkUZNWXJ2W_js=require('./chunk-UZNWXJ2W.js');require('./chunk-UXUMYP4L.js');var chunkO4ATGGVK_js=require('./chunk-O4ATGGVK.js'),chunk45D7AMB3_js=require('./chunk-45D7AMB3.js');require('./chunk-AME4HJR4.js'),require('./chunk-YDKWD6MQ.js'),require('./chunk-TTMGFC6C.js'),require('./chunk-VWED6UTN.js');var chunkRFPLZDIO_js=require('./chunk-RFPLZDIO.js'),react=require('react'),jsxRuntime=require('react/jsx-runtime');var p=react.createContext(null);function P(){let e=react.useContext(p);if(!e)throw new Error("DSR compound components must be wrapped in <DSR.Provider>. Example: <DSR.Provider requestTypes={...}><DSR.Form /></DSR.Provider>");return e}var m=({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:d,onSubmit:u,onUpdate:i,children:n})=>{let f=chunkO4ATGGVK_js.a({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:d,onSubmit:u,onUpdate:i}),x=chunkRFPLZDIO_js.b(chunkRFPLZDIO_js.a({},f),{requestTypes:e});return jsxRuntime.jsx(p.Provider,{value:x,children:n})};var C={Provider:m,Form:chunkUZNWXJ2W_js.a,Dashboard:chunkUJGNW6CH_js.a,Tracker:chunkUJGNW6CH_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,"useDSR",{enumerable:true,get:function(){return chunkO4ATGGVK_js.a}});Object.defineProperty(exports,"formatDSRRequest",{enumerable:true,get:function(){return chunk45D7AMB3_js.b}});Object.defineProperty(exports,"validateDsrSubmission",{enumerable:true,get:function(){return chunk45D7AMB3_js.a}});exports.DSR=C;exports.DSRProvider=m;exports.useDSRCompound=P;
package/dist/dsr.mjs CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- import {b,a}from'./chunk-NB6SKG76.mjs';export{a as DSRDashboard,b as DSRTracker}from'./chunk-NB6SKG76.mjs';import {a as a$1}from'./chunk-L3FR4PQE.mjs';export{a as DSRRequestForm}from'./chunk-L3FR4PQE.mjs';import'./chunk-EWVK45Z3.mjs';import {a as a$2}from'./chunk-WHQ4PEYS.mjs';export{a as useDSR}from'./chunk-WHQ4PEYS.mjs';export{b as formatDSRRequest,a as validateDsrSubmission}from'./chunk-VPNK7OID.mjs';import'./chunk-SFGW37LE.mjs';import'./chunk-FRQFU44F.mjs';import'./chunk-V5TZJJWU.mjs';import'./chunk-DBZSN4WP.mjs';import {b as b$1,a as a$3}from'./chunk-ZJYULEER.mjs';import {createContext,useContext}from'react';import {jsx}from'react/jsx-runtime';var p=createContext(null);function P(){let e=useContext(p);if(!e)throw new Error("DSR compound components must be wrapped in <DSR.Provider>. Example: <DSR.Provider requestTypes={...}><DSR.Form /></DSR.Provider>");return e}var m=({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:d,onSubmit:u,onUpdate:i,children:n})=>{let f=a$2({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:d,onSubmit:u,onUpdate:i}),x=b$1(a$3({},f),{requestTypes:e});return jsx(p.Provider,{value:x,children:n})};var C={Provider:m,Form:a$1,Dashboard:a,Tracker:b};export{C as DSR,m as DSRProvider,P as useDSRCompound};
2
+ import {b,a}from'./chunk-6H6IXTHA.mjs';export{a as DSRDashboard,b as DSRTracker}from'./chunk-6H6IXTHA.mjs';import {a as a$1}from'./chunk-L3FR4PQE.mjs';export{a as DSRRequestForm}from'./chunk-L3FR4PQE.mjs';import'./chunk-EWVK45Z3.mjs';import {a as a$2}from'./chunk-6OPGI27L.mjs';export{a as useDSR}from'./chunk-6OPGI27L.mjs';export{b as formatDSRRequest,a as validateDsrSubmission}from'./chunk-3APT25XO.mjs';import'./chunk-SFGW37LE.mjs';import'./chunk-FRQFU44F.mjs';import'./chunk-V5TZJJWU.mjs';import'./chunk-DBZSN4WP.mjs';import {b as b$1,a as a$3}from'./chunk-ZJYULEER.mjs';import {createContext,useContext}from'react';import {jsx}from'react/jsx-runtime';var p=createContext(null);function P(){let e=useContext(p);if(!e)throw new Error("DSR compound components must be wrapped in <DSR.Provider>. Example: <DSR.Provider requestTypes={...}><DSR.Form /></DSR.Provider>");return e}var m=({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:d,onSubmit:u,onUpdate:i,children:n})=>{let f=a$2({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:d,onSubmit:u,onUpdate:i}),x=b$1(a$3({},f),{requestTypes:e});return jsx(p.Provider,{value:x,children:n})};var C={Provider:m,Form:a$1,Dashboard:a,Tracker:b};export{C as DSR,m as DSRProvider,P as useDSRCompound};
@@ -2165,9 +2165,18 @@ export declare interface UseDSROptions {
2165
2165
  */
2166
2166
  storageKey?: string;
2167
2167
  /**
2168
- * Whether to use local storage to persist requests
2169
- * @default true
2170
- * @deprecated Use adapter instead
2168
+ * Whether to use local storage to persist requests.
2169
+ *
2170
+ * **Changed in 4.0:** the default is now `false`. `useDSR` is the admin
2171
+ * tracker hook and its state contains data subjects' PII; the previous
2172
+ * default (true) stored that PII in the admin's browser localStorage,
2173
+ * which is rarely appropriate. Opt in by passing `useLocalStorage: true`
2174
+ * if you specifically want the old behaviour.
2175
+ *
2176
+ * For production deployments, pass an explicit `adapter` instead.
2177
+ *
2178
+ * @default false (as of 4.0; was `true` in 3.x)
2179
+ * @deprecated Pass an explicit `adapter` instead of toggling this flag.
2171
2180
  */
2172
2181
  useLocalStorage?: boolean;
2173
2182
  /**
@@ -2494,7 +2503,7 @@ export declare interface UsePrivacyPolicyReturn {
2494
2503
  * }
2495
2504
  * ```
2496
2505
  */
2497
- export declare function useROPA({ initialData, adapter, onRecordAdd, onRecordUpdate, onRecordArchive, }: UseROPAOptions): UseROPAReturn;
2506
+ export declare function useROPA({ initialData, adapter, onRecordAdd, onRecordUpdate, onRecordArchive, onAdd, onUpdate, onArchive, }: UseROPAOptions): UseROPAReturn;
2498
2507
 
2499
2508
  export declare interface UseROPAOptions {
2500
2509
  /**
@@ -2509,16 +2518,37 @@ export declare interface UseROPAOptions {
2509
2518
  adapter?: StorageAdapter<RecordOfProcessingActivities>;
2510
2519
  /**
2511
2520
  * Callback when a record is added
2521
+ * @deprecated Renamed to `onAdd` in 4.1. The legacy name still fires
2522
+ * for backward compatibility and will be removed in 5.0.
2512
2523
  */
2513
2524
  onRecordAdd?: (record: ProcessingRecord) => void;
2514
2525
  /**
2515
2526
  * Callback when a record is updated
2527
+ * @deprecated Renamed to `onUpdate` in 4.1. The legacy name still fires
2528
+ * for backward compatibility and will be removed in 5.0.
2516
2529
  */
2517
2530
  onRecordUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
2518
2531
  /**
2519
2532
  * Callback when a record is archived
2533
+ * @deprecated Renamed to `onArchive` in 4.1. The legacy name still fires
2534
+ * for backward compatibility and will be removed in 5.0.
2520
2535
  */
2521
2536
  onRecordArchive?: (id: string) => void;
2537
+ /**
2538
+ * Callback when a record is added (uniform 4.1+ name).
2539
+ * Takes precedence over `onRecordAdd` when both are provided.
2540
+ */
2541
+ onAdd?: (record: ProcessingRecord) => void;
2542
+ /**
2543
+ * Callback when a record is updated (uniform 4.1+ name).
2544
+ * Takes precedence over `onRecordUpdate` when both are provided.
2545
+ */
2546
+ onUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
2547
+ /**
2548
+ * Callback when a record is archived (uniform 4.1+ name).
2549
+ * Takes precedence over `onRecordArchive` when both are provided.
2550
+ */
2551
+ onArchive?: (id: string) => void;
2522
2552
  }
2523
2553
 
2524
2554
  export declare interface UseROPAReturn {
@@ -2165,9 +2165,18 @@ export declare interface UseDSROptions {
2165
2165
  */
2166
2166
  storageKey?: string;
2167
2167
  /**
2168
- * Whether to use local storage to persist requests
2169
- * @default true
2170
- * @deprecated Use adapter instead
2168
+ * Whether to use local storage to persist requests.
2169
+ *
2170
+ * **Changed in 4.0:** the default is now `false`. `useDSR` is the admin
2171
+ * tracker hook and its state contains data subjects' PII; the previous
2172
+ * default (true) stored that PII in the admin's browser localStorage,
2173
+ * which is rarely appropriate. Opt in by passing `useLocalStorage: true`
2174
+ * if you specifically want the old behaviour.
2175
+ *
2176
+ * For production deployments, pass an explicit `adapter` instead.
2177
+ *
2178
+ * @default false (as of 4.0; was `true` in 3.x)
2179
+ * @deprecated Pass an explicit `adapter` instead of toggling this flag.
2171
2180
  */
2172
2181
  useLocalStorage?: boolean;
2173
2182
  /**
@@ -2494,7 +2503,7 @@ export declare interface UsePrivacyPolicyReturn {
2494
2503
  * }
2495
2504
  * ```
2496
2505
  */
2497
- export declare function useROPA({ initialData, adapter, onRecordAdd, onRecordUpdate, onRecordArchive, }: UseROPAOptions): UseROPAReturn;
2506
+ export declare function useROPA({ initialData, adapter, onRecordAdd, onRecordUpdate, onRecordArchive, onAdd, onUpdate, onArchive, }: UseROPAOptions): UseROPAReturn;
2498
2507
 
2499
2508
  export declare interface UseROPAOptions {
2500
2509
  /**
@@ -2509,16 +2518,37 @@ export declare interface UseROPAOptions {
2509
2518
  adapter?: StorageAdapter<RecordOfProcessingActivities>;
2510
2519
  /**
2511
2520
  * Callback when a record is added
2521
+ * @deprecated Renamed to `onAdd` in 4.1. The legacy name still fires
2522
+ * for backward compatibility and will be removed in 5.0.
2512
2523
  */
2513
2524
  onRecordAdd?: (record: ProcessingRecord) => void;
2514
2525
  /**
2515
2526
  * Callback when a record is updated
2527
+ * @deprecated Renamed to `onUpdate` in 4.1. The legacy name still fires
2528
+ * for backward compatibility and will be removed in 5.0.
2516
2529
  */
2517
2530
  onRecordUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
2518
2531
  /**
2519
2532
  * Callback when a record is archived
2533
+ * @deprecated Renamed to `onArchive` in 4.1. The legacy name still fires
2534
+ * for backward compatibility and will be removed in 5.0.
2520
2535
  */
2521
2536
  onRecordArchive?: (id: string) => void;
2537
+ /**
2538
+ * Callback when a record is added (uniform 4.1+ name).
2539
+ * Takes precedence over `onRecordAdd` when both are provided.
2540
+ */
2541
+ onAdd?: (record: ProcessingRecord) => void;
2542
+ /**
2543
+ * Callback when a record is updated (uniform 4.1+ name).
2544
+ * Takes precedence over `onRecordUpdate` when both are provided.
2545
+ */
2546
+ onUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
2547
+ /**
2548
+ * Callback when a record is archived (uniform 4.1+ name).
2549
+ * Takes precedence over `onRecordArchive` when both are provided.
2550
+ */
2551
+ onArchive?: (id: string) => void;
2522
2552
  }
2523
2553
 
2524
2554
  export declare interface UseROPAReturn {
package/dist/headless.js CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- 'use strict';require('./chunk-OZCNFB5C.js');var 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'),chunkO2WEABB3_js=require('./chunk-O2WEABB3.js');require('./chunk-JS7SYL5P.js'),require('./chunk-RDALAH3Y.js'),require('./chunk-3YTAOT5O.js'),require('./chunk-D2ZKDQVL.js'),require('./chunk-6LJHLE6G.js'),require('./chunk-YFBDJ4FH.js'),require('./chunk-WZYCBW2R.js'),require('./chunk-4CVBQC66.js');var chunkHOAC5VUF_js=require('./chunk-HOAC5VUF.js'),chunkL2VO3MEJ_js=require('./chunk-L2VO3MEJ.js');require('./chunk-C2KEXHRX.js'),require('./chunk-B46SJB5V.js');var chunkPXDSPF5B_js=require('./chunk-PXDSPF5B.js');require('./chunk-OZHUINWS.js');var chunkJLQT3W3E_js=require('./chunk-JLQT3W3E.js');require('./chunk-TQZWJGJ2.js'),require('./chunk-ZVOIR4QH.js'),require('./chunk-VWED6UTN.js'),require('./chunk-RFPLZDIO.js');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 chunkO2WEABB3_js.a}});Object.defineProperty(exports,"useConsent",{enumerable:true,get:function(){return chunkHOAC5VUF_js.a}});Object.defineProperty(exports,"useFocusTrap",{enumerable:true,get:function(){return chunkL2VO3MEJ_js.a}});Object.defineProperty(exports,"useDSR",{enumerable:true,get:function(){return chunkPXDSPF5B_js.a}});Object.defineProperty(exports,"useDPIA",{enumerable:true,get:function(){return chunkJLQT3W3E_js.a}});
2
+ 'use strict';require('./chunk-OZCNFB5C.js');var 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'),require('./chunk-RDALAH3Y.js'),require('./chunk-3YTAOT5O.js'),require('./chunk-D2ZKDQVL.js'),require('./chunk-6LJHLE6G.js'),require('./chunk-YFBDJ4FH.js'),require('./chunk-WZYCBW2R.js'),require('./chunk-4CVBQC66.js');var chunkROOUYQD4_js=require('./chunk-ROOUYQD4.js'),chunkL2VO3MEJ_js=require('./chunk-L2VO3MEJ.js');require('./chunk-C2KEXHRX.js'),require('./chunk-D3HHDWBR.js');var chunkO4ATGGVK_js=require('./chunk-O4ATGGVK.js');require('./chunk-45D7AMB3.js');var chunkJLQT3W3E_js=require('./chunk-JLQT3W3E.js');require('./chunk-TQZWJGJ2.js'),require('./chunk-ZVOIR4QH.js'),require('./chunk-VWED6UTN.js'),require('./chunk-RFPLZDIO.js');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,"useConsent",{enumerable:true,get:function(){return chunkROOUYQD4_js.a}});Object.defineProperty(exports,"useFocusTrap",{enumerable:true,get:function(){return chunkL2VO3MEJ_js.a}});Object.defineProperty(exports,"useDSR",{enumerable:true,get:function(){return chunkO4ATGGVK_js.a}});Object.defineProperty(exports,"useDPIA",{enumerable:true,get:function(){return chunkJLQT3W3E_js.a}});
package/dist/headless.mjs CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- import'./chunk-GQYBS3A7.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-WKUC65HL.mjs';import'./chunk-IVSNHT24.mjs';import'./chunk-7RBO42IW.mjs';import'./chunk-WTGKZX7J.mjs';import'./chunk-NBQQ2GN3.mjs';import'./chunk-BIJSMSUU.mjs';import'./chunk-7BJXI2HI.mjs';import'./chunk-LWIKDDSU.mjs';import'./chunk-XP5PL6K7.mjs';export{a as useConsent}from'./chunk-IHNAFXDM.mjs';export{a as useFocusTrap}from'./chunk-YTU4FNM2.mjs';import'./chunk-XC3DLYEG.mjs';import'./chunk-PJNKQPQP.mjs';export{a as useDSR}from'./chunk-WHQ4PEYS.mjs';import'./chunk-VPNK7OID.mjs';export{a as useDPIA}from'./chunk-I3V3ITN7.mjs';import'./chunk-LRRENTT5.mjs';import'./chunk-ITCY2Z66.mjs';import'./chunk-DBZSN4WP.mjs';import'./chunk-ZJYULEER.mjs';
2
+ import'./chunk-GQYBS3A7.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';import'./chunk-7RBO42IW.mjs';import'./chunk-WTGKZX7J.mjs';import'./chunk-NBQQ2GN3.mjs';import'./chunk-BIJSMSUU.mjs';import'./chunk-7BJXI2HI.mjs';import'./chunk-LWIKDDSU.mjs';import'./chunk-XP5PL6K7.mjs';export{a as useConsent}from'./chunk-7Z7NURIA.mjs';export{a as useFocusTrap}from'./chunk-YTU4FNM2.mjs';import'./chunk-XC3DLYEG.mjs';import'./chunk-NI54X543.mjs';export{a as useDSR}from'./chunk-6OPGI27L.mjs';import'./chunk-3APT25XO.mjs';export{a as useDPIA}from'./chunk-I3V3ITN7.mjs';import'./chunk-LRRENTT5.mjs';import'./chunk-ITCY2Z66.mjs';import'./chunk-DBZSN4WP.mjs';import'./chunk-ZJYULEER.mjs';
package/dist/hooks.d.mts CHANGED
@@ -2051,9 +2051,18 @@ export declare interface UseDSROptions {
2051
2051
  */
2052
2052
  storageKey?: string;
2053
2053
  /**
2054
- * Whether to use local storage to persist requests
2055
- * @default true
2056
- * @deprecated Use adapter instead
2054
+ * Whether to use local storage to persist requests.
2055
+ *
2056
+ * **Changed in 4.0:** the default is now `false`. `useDSR` is the admin
2057
+ * tracker hook and its state contains data subjects' PII; the previous
2058
+ * default (true) stored that PII in the admin's browser localStorage,
2059
+ * which is rarely appropriate. Opt in by passing `useLocalStorage: true`
2060
+ * if you specifically want the old behaviour.
2061
+ *
2062
+ * For production deployments, pass an explicit `adapter` instead.
2063
+ *
2064
+ * @default false (as of 4.0; was `true` in 3.x)
2065
+ * @deprecated Pass an explicit `adapter` instead of toggling this flag.
2057
2066
  */
2058
2067
  useLocalStorage?: boolean;
2059
2068
  /**
@@ -2380,7 +2389,7 @@ export declare interface UsePrivacyPolicyReturn {
2380
2389
  * }
2381
2390
  * ```
2382
2391
  */
2383
- export declare function useROPA({ initialData, adapter, onRecordAdd, onRecordUpdate, onRecordArchive, }: UseROPAOptions): UseROPAReturn;
2392
+ export declare function useROPA({ initialData, adapter, onRecordAdd, onRecordUpdate, onRecordArchive, onAdd, onUpdate, onArchive, }: UseROPAOptions): UseROPAReturn;
2384
2393
 
2385
2394
  export declare interface UseROPAOptions {
2386
2395
  /**
@@ -2395,16 +2404,37 @@ export declare interface UseROPAOptions {
2395
2404
  adapter?: StorageAdapter<RecordOfProcessingActivities>;
2396
2405
  /**
2397
2406
  * Callback when a record is added
2407
+ * @deprecated Renamed to `onAdd` in 4.1. The legacy name still fires
2408
+ * for backward compatibility and will be removed in 5.0.
2398
2409
  */
2399
2410
  onRecordAdd?: (record: ProcessingRecord) => void;
2400
2411
  /**
2401
2412
  * Callback when a record is updated
2413
+ * @deprecated Renamed to `onUpdate` in 4.1. The legacy name still fires
2414
+ * for backward compatibility and will be removed in 5.0.
2402
2415
  */
2403
2416
  onRecordUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
2404
2417
  /**
2405
2418
  * Callback when a record is archived
2419
+ * @deprecated Renamed to `onArchive` in 4.1. The legacy name still fires
2420
+ * for backward compatibility and will be removed in 5.0.
2406
2421
  */
2407
2422
  onRecordArchive?: (id: string) => void;
2423
+ /**
2424
+ * Callback when a record is added (uniform 4.1+ name).
2425
+ * Takes precedence over `onRecordAdd` when both are provided.
2426
+ */
2427
+ onAdd?: (record: ProcessingRecord) => void;
2428
+ /**
2429
+ * Callback when a record is updated (uniform 4.1+ name).
2430
+ * Takes precedence over `onRecordUpdate` when both are provided.
2431
+ */
2432
+ onUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
2433
+ /**
2434
+ * Callback when a record is archived (uniform 4.1+ name).
2435
+ * Takes precedence over `onRecordArchive` when both are provided.
2436
+ */
2437
+ onArchive?: (id: string) => void;
2408
2438
  }
2409
2439
 
2410
2440
  export declare interface UseROPAReturn {
package/dist/hooks.d.ts CHANGED
@@ -2051,9 +2051,18 @@ export declare interface UseDSROptions {
2051
2051
  */
2052
2052
  storageKey?: string;
2053
2053
  /**
2054
- * Whether to use local storage to persist requests
2055
- * @default true
2056
- * @deprecated Use adapter instead
2054
+ * Whether to use local storage to persist requests.
2055
+ *
2056
+ * **Changed in 4.0:** the default is now `false`. `useDSR` is the admin
2057
+ * tracker hook and its state contains data subjects' PII; the previous
2058
+ * default (true) stored that PII in the admin's browser localStorage,
2059
+ * which is rarely appropriate. Opt in by passing `useLocalStorage: true`
2060
+ * if you specifically want the old behaviour.
2061
+ *
2062
+ * For production deployments, pass an explicit `adapter` instead.
2063
+ *
2064
+ * @default false (as of 4.0; was `true` in 3.x)
2065
+ * @deprecated Pass an explicit `adapter` instead of toggling this flag.
2057
2066
  */
2058
2067
  useLocalStorage?: boolean;
2059
2068
  /**
@@ -2380,7 +2389,7 @@ export declare interface UsePrivacyPolicyReturn {
2380
2389
  * }
2381
2390
  * ```
2382
2391
  */
2383
- export declare function useROPA({ initialData, adapter, onRecordAdd, onRecordUpdate, onRecordArchive, }: UseROPAOptions): UseROPAReturn;
2392
+ export declare function useROPA({ initialData, adapter, onRecordAdd, onRecordUpdate, onRecordArchive, onAdd, onUpdate, onArchive, }: UseROPAOptions): UseROPAReturn;
2384
2393
 
2385
2394
  export declare interface UseROPAOptions {
2386
2395
  /**
@@ -2395,16 +2404,37 @@ export declare interface UseROPAOptions {
2395
2404
  adapter?: StorageAdapter<RecordOfProcessingActivities>;
2396
2405
  /**
2397
2406
  * Callback when a record is added
2407
+ * @deprecated Renamed to `onAdd` in 4.1. The legacy name still fires
2408
+ * for backward compatibility and will be removed in 5.0.
2398
2409
  */
2399
2410
  onRecordAdd?: (record: ProcessingRecord) => void;
2400
2411
  /**
2401
2412
  * Callback when a record is updated
2413
+ * @deprecated Renamed to `onUpdate` in 4.1. The legacy name still fires
2414
+ * for backward compatibility and will be removed in 5.0.
2402
2415
  */
2403
2416
  onRecordUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
2404
2417
  /**
2405
2418
  * Callback when a record is archived
2419
+ * @deprecated Renamed to `onArchive` in 4.1. The legacy name still fires
2420
+ * for backward compatibility and will be removed in 5.0.
2406
2421
  */
2407
2422
  onRecordArchive?: (id: string) => void;
2423
+ /**
2424
+ * Callback when a record is added (uniform 4.1+ name).
2425
+ * Takes precedence over `onRecordAdd` when both are provided.
2426
+ */
2427
+ onAdd?: (record: ProcessingRecord) => void;
2428
+ /**
2429
+ * Callback when a record is updated (uniform 4.1+ name).
2430
+ * Takes precedence over `onRecordUpdate` when both are provided.
2431
+ */
2432
+ onUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
2433
+ /**
2434
+ * Callback when a record is archived (uniform 4.1+ name).
2435
+ * Takes precedence over `onRecordArchive` when both are provided.
2436
+ */
2437
+ onArchive?: (id: string) => void;
2408
2438
  }
2409
2439
 
2410
2440
  export declare interface UseROPAReturn {
package/dist/hooks.js CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- 'use strict';require('./chunk-OZCNFB5C.js');var 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'),chunkO2WEABB3_js=require('./chunk-O2WEABB3.js');require('./chunk-JS7SYL5P.js'),require('./chunk-RDALAH3Y.js'),require('./chunk-3YTAOT5O.js'),require('./chunk-D2ZKDQVL.js'),require('./chunk-6LJHLE6G.js'),require('./chunk-YFBDJ4FH.js'),require('./chunk-WZYCBW2R.js'),require('./chunk-4CVBQC66.js');var chunkHOAC5VUF_js=require('./chunk-HOAC5VUF.js'),chunkL2VO3MEJ_js=require('./chunk-L2VO3MEJ.js');require('./chunk-C2KEXHRX.js'),require('./chunk-B46SJB5V.js');var chunkPXDSPF5B_js=require('./chunk-PXDSPF5B.js');require('./chunk-OZHUINWS.js');var chunkJLQT3W3E_js=require('./chunk-JLQT3W3E.js');require('./chunk-TQZWJGJ2.js'),require('./chunk-ZVOIR4QH.js'),require('./chunk-VWED6UTN.js'),require('./chunk-RFPLZDIO.js');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 chunkO2WEABB3_js.a}});Object.defineProperty(exports,"useConsent",{enumerable:true,get:function(){return chunkHOAC5VUF_js.a}});Object.defineProperty(exports,"useFocusTrap",{enumerable:true,get:function(){return chunkL2VO3MEJ_js.a}});Object.defineProperty(exports,"useDSR",{enumerable:true,get:function(){return chunkPXDSPF5B_js.a}});Object.defineProperty(exports,"useDPIA",{enumerable:true,get:function(){return chunkJLQT3W3E_js.a}});
2
+ 'use strict';require('./chunk-OZCNFB5C.js');var 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'),require('./chunk-RDALAH3Y.js'),require('./chunk-3YTAOT5O.js'),require('./chunk-D2ZKDQVL.js'),require('./chunk-6LJHLE6G.js'),require('./chunk-YFBDJ4FH.js'),require('./chunk-WZYCBW2R.js'),require('./chunk-4CVBQC66.js');var chunkROOUYQD4_js=require('./chunk-ROOUYQD4.js'),chunkL2VO3MEJ_js=require('./chunk-L2VO3MEJ.js');require('./chunk-C2KEXHRX.js'),require('./chunk-D3HHDWBR.js');var chunkO4ATGGVK_js=require('./chunk-O4ATGGVK.js');require('./chunk-45D7AMB3.js');var chunkJLQT3W3E_js=require('./chunk-JLQT3W3E.js');require('./chunk-TQZWJGJ2.js'),require('./chunk-ZVOIR4QH.js'),require('./chunk-VWED6UTN.js'),require('./chunk-RFPLZDIO.js');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,"useConsent",{enumerable:true,get:function(){return chunkROOUYQD4_js.a}});Object.defineProperty(exports,"useFocusTrap",{enumerable:true,get:function(){return chunkL2VO3MEJ_js.a}});Object.defineProperty(exports,"useDSR",{enumerable:true,get:function(){return chunkO4ATGGVK_js.a}});Object.defineProperty(exports,"useDPIA",{enumerable:true,get:function(){return chunkJLQT3W3E_js.a}});
package/dist/hooks.mjs CHANGED
@@ -1,2 +1,2 @@
1
1
  "use client";
2
- import'./chunk-GQYBS3A7.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-WKUC65HL.mjs';import'./chunk-IVSNHT24.mjs';import'./chunk-7RBO42IW.mjs';import'./chunk-WTGKZX7J.mjs';import'./chunk-NBQQ2GN3.mjs';import'./chunk-BIJSMSUU.mjs';import'./chunk-7BJXI2HI.mjs';import'./chunk-LWIKDDSU.mjs';import'./chunk-XP5PL6K7.mjs';export{a as useConsent}from'./chunk-IHNAFXDM.mjs';export{a as useFocusTrap}from'./chunk-YTU4FNM2.mjs';import'./chunk-XC3DLYEG.mjs';import'./chunk-PJNKQPQP.mjs';export{a as useDSR}from'./chunk-WHQ4PEYS.mjs';import'./chunk-VPNK7OID.mjs';export{a as useDPIA}from'./chunk-I3V3ITN7.mjs';import'./chunk-LRRENTT5.mjs';import'./chunk-ITCY2Z66.mjs';import'./chunk-DBZSN4WP.mjs';import'./chunk-ZJYULEER.mjs';
2
+ import'./chunk-GQYBS3A7.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';import'./chunk-7RBO42IW.mjs';import'./chunk-WTGKZX7J.mjs';import'./chunk-NBQQ2GN3.mjs';import'./chunk-BIJSMSUU.mjs';import'./chunk-7BJXI2HI.mjs';import'./chunk-LWIKDDSU.mjs';import'./chunk-XP5PL6K7.mjs';export{a as useConsent}from'./chunk-7Z7NURIA.mjs';export{a as useFocusTrap}from'./chunk-YTU4FNM2.mjs';import'./chunk-XC3DLYEG.mjs';import'./chunk-NI54X543.mjs';export{a as useDSR}from'./chunk-6OPGI27L.mjs';import'./chunk-3APT25XO.mjs';export{a as useDPIA}from'./chunk-I3V3ITN7.mjs';import'./chunk-LRRENTT5.mjs';import'./chunk-ITCY2Z66.mjs';import'./chunk-DBZSN4WP.mjs';import'./chunk-ZJYULEER.mjs';