@tantainnovative/ndpr-toolkit 4.1.0 → 5.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +75 -0
- package/README.md +76 -12
- package/dist/chunk-4FXRJH37.js +1 -0
- package/dist/{chunk-UJGNW6CH.js → chunk-ASEUTU45.js} +1 -1
- package/dist/chunk-BRJKIF7E.mjs +1 -0
- package/dist/chunk-CSE36REY.js +6 -0
- package/dist/chunk-DKLJ5DYN.js +1 -0
- package/dist/chunk-FRMVSG4N.mjs +1 -0
- package/dist/chunk-MAD7QYRK.js +1 -0
- package/dist/chunk-NBOJ2KGN.mjs +1 -0
- package/dist/chunk-PQ5IPUJN.mjs +1 -0
- package/dist/chunk-QKXGVT2Q.js +1 -0
- package/dist/chunk-R2ZZMATR.js +1 -0
- package/dist/chunk-R3ZKV2J7.mjs +1 -0
- package/dist/chunk-RRVML7CU.mjs +1 -0
- package/dist/{chunk-6H6IXTHA.mjs → chunk-SBSYHCPK.mjs} +1 -1
- package/dist/chunk-TLIHFGIJ.js +1 -0
- package/dist/{chunk-O4ATGGVK.js → chunk-TVA6D6S4.js} +1 -1
- package/dist/chunk-WPH6CJDL.mjs +6 -0
- package/dist/{chunk-6OPGI27L.mjs → chunk-ZSRO4L3C.mjs} +1 -1
- package/dist/consent.d.mts +59 -21
- package/dist/consent.d.ts +59 -21
- package/dist/consent.js +1 -1
- package/dist/consent.mjs +1 -1
- package/dist/core.d.mts +116 -74
- package/dist/core.d.ts +116 -74
- package/dist/core.js +1 -1
- package/dist/core.mjs +1 -1
- package/dist/cross-border.d.mts +4 -27
- package/dist/cross-border.d.ts +4 -27
- package/dist/cross-border.js +1 -1
- package/dist/cross-border.mjs +1 -1
- package/dist/dsr.d.mts +86 -57
- package/dist/dsr.d.ts +86 -57
- package/dist/dsr.js +1 -1
- package/dist/dsr.mjs +1 -1
- package/dist/headless.d.mts +20 -27
- package/dist/headless.d.ts +20 -27
- package/dist/headless.js +1 -1
- package/dist/headless.mjs +1 -1
- package/dist/hooks.d.mts +20 -27
- package/dist/hooks.d.ts +20 -27
- package/dist/hooks.js +1 -1
- package/dist/hooks.mjs +1 -1
- package/dist/index.d.mts +37 -202
- package/dist/index.d.ts +37 -202
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/lawful-basis.d.mts +3 -24
- package/dist/lawful-basis.d.ts +3 -24
- package/dist/lawful-basis.js +1 -1
- package/dist/lawful-basis.mjs +1 -1
- package/dist/presets.d.mts +1 -9
- package/dist/presets.d.ts +1 -9
- package/dist/presets.js +1 -1
- package/dist/presets.mjs +1 -1
- package/dist/ropa-lite.d.mts +2 -11
- package/dist/ropa-lite.d.ts +2 -11
- package/dist/ropa-lite.js +1 -1
- package/dist/ropa-lite.mjs +1 -1
- package/dist/ropa.d.mts +10 -52
- package/dist/ropa.d.ts +10 -52
- package/dist/ropa.js +1 -1
- package/dist/ropa.mjs +1 -1
- package/dist/server.d.mts +20 -100
- package/dist/server.d.ts +20 -100
- package/dist/server.js +1 -1
- package/dist/server.mjs +1 -1
- package/package.json +1 -1
- package/dist/chunk-3APT25XO.mjs +0 -1
- package/dist/chunk-45D7AMB3.js +0 -1
- package/dist/chunk-65J4P5ID.js +0 -1
- package/dist/chunk-7Z7NURIA.mjs +0 -1
- package/dist/chunk-D3HHDWBR.js +0 -1
- package/dist/chunk-DSIIEUAD.mjs +0 -1
- package/dist/chunk-H2FDWK4F.js +0 -6
- package/dist/chunk-HLFS3NXG.js +0 -1
- package/dist/chunk-JGY65SHX.mjs +0 -1
- package/dist/chunk-NI54X543.mjs +0 -1
- package/dist/chunk-P5MPUC5F.js +0 -1
- package/dist/chunk-ROOUYQD4.js +0 -1
- package/dist/chunk-UTXDZDYF.mjs +0 -6
- package/dist/chunk-W6VVLHRQ.mjs +0 -1
package/dist/dsr.d.ts
CHANGED
|
@@ -331,7 +331,7 @@ export declare type DSRStatus = 'pending' | 'awaitingVerification' | 'inProgress
|
|
|
331
331
|
/**
|
|
332
332
|
* Validated DSR submission shape — matches what `<DSRRequestForm onSubmit>`
|
|
333
333
|
* emits client-side. Use this as the typed parameter for your server-side
|
|
334
|
-
* handler after `
|
|
334
|
+
* handler after `validateDsrSubmissionStructured` returns `valid: true`.
|
|
335
335
|
*/
|
|
336
336
|
export declare interface DsrSubmissionPayload {
|
|
337
337
|
requestType: string;
|
|
@@ -346,16 +346,6 @@ export declare interface DsrSubmissionPayload {
|
|
|
346
346
|
submittedAt: number;
|
|
347
347
|
}
|
|
348
348
|
|
|
349
|
-
/** Result of validating a raw DSR submission payload. */
|
|
350
|
-
export declare interface DsrSubmissionValidationResult {
|
|
351
|
-
/** True when the payload conforms to the DSR submission contract. */
|
|
352
|
-
valid: boolean;
|
|
353
|
-
/** Field-keyed error messages. Empty when `valid` is true. */
|
|
354
|
-
errors: Record<string, string>;
|
|
355
|
-
/** The narrowed, typed payload — only populated when `valid` is true. */
|
|
356
|
-
data?: DsrSubmissionPayload;
|
|
357
|
-
}
|
|
358
|
-
|
|
359
349
|
/**
|
|
360
350
|
* DSR tracking and analytics component. Supports compliance with NDPA Part IV,
|
|
361
351
|
* providing summary statistics, deadline tracking, and compliance metrics for data subject requests.
|
|
@@ -459,16 +449,29 @@ declare interface DSRTrackerProps {
|
|
|
459
449
|
export declare type DSRType = 'information' | 'access' | 'rectification' | 'erasure' | 'restriction' | 'portability' | 'objection' | 'automated_decision_making' | 'withdraw_consent';
|
|
460
450
|
|
|
461
451
|
/**
|
|
462
|
-
*
|
|
463
|
-
*
|
|
464
|
-
*
|
|
465
|
-
*
|
|
452
|
+
* Format a DSR request for display or submission. Returns the formatted
|
|
453
|
+
* payload plus a typed `errors` array of `{ field, code, message }` for any
|
|
454
|
+
* required fields missing from the source request.
|
|
455
|
+
*
|
|
456
|
+
* Codes emitted:
|
|
457
|
+
* - `request_id_required`
|
|
458
|
+
* - `request_type_required`
|
|
459
|
+
* - `request_status_required`
|
|
460
|
+
* - `created_at_required`
|
|
461
|
+
* - `subject_name_required`
|
|
462
|
+
* - `subject_email_required`
|
|
466
463
|
*/
|
|
467
|
-
export declare function
|
|
464
|
+
export declare function formatDSRRequestStructured(request: DSRRequest): FormatDSRRequestStructuredResult;
|
|
465
|
+
|
|
466
|
+
/** Result of {@link formatDSRRequestStructured}. */
|
|
467
|
+
export declare interface FormatDSRRequestStructuredResult {
|
|
468
|
+
valid: boolean;
|
|
469
|
+
errors: StructuredValidationError[];
|
|
470
|
+
/** Formatted request payload — always populated regardless of `valid`. */
|
|
468
471
|
formattedRequest: Record<string, unknown>;
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
}
|
|
472
|
+
/** Narrowed input — populated only on `valid: true`. */
|
|
473
|
+
data?: DSRRequest;
|
|
474
|
+
}
|
|
472
475
|
|
|
473
476
|
/**
|
|
474
477
|
* Legacy status of a data subject request
|
|
@@ -519,6 +522,30 @@ export declare interface StorageAdapter<T = unknown> {
|
|
|
519
522
|
remove(): void | Promise<void>;
|
|
520
523
|
}
|
|
521
524
|
|
|
525
|
+
/**
|
|
526
|
+
* Single structured validation error with a stable, locale-independent
|
|
527
|
+
* `code` consumers can switch on programmatically.
|
|
528
|
+
*/
|
|
529
|
+
declare interface StructuredValidationError {
|
|
530
|
+
/** Dot-path of the offending field (e.g. `'timestamp'`, `'dataSubject.email'`, `'options[0].purpose'`). */
|
|
531
|
+
field: string;
|
|
532
|
+
/** Stable, snake_case error code — safe to switch on across locales. */
|
|
533
|
+
code: string;
|
|
534
|
+
/** Human-readable English message — informational only; do not regex-match. */
|
|
535
|
+
message: string;
|
|
536
|
+
}
|
|
537
|
+
|
|
538
|
+
/**
|
|
539
|
+
* Result of a structured validator. `errors` is an array (one entry per
|
|
540
|
+
* failed rule). `data` is the narrowed, typed payload, only populated on
|
|
541
|
+
* `valid: true`.
|
|
542
|
+
*/
|
|
543
|
+
declare interface StructuredValidationResult<T> {
|
|
544
|
+
valid: boolean;
|
|
545
|
+
errors: StructuredValidationError[];
|
|
546
|
+
data?: T;
|
|
547
|
+
}
|
|
548
|
+
|
|
522
549
|
/**
|
|
523
550
|
* Hook for managing Data Subject Requests in compliance with the NDPA.
|
|
524
551
|
*
|
|
@@ -639,6 +666,23 @@ declare interface UseDSRReturn {
|
|
|
639
666
|
isLoading: boolean;
|
|
640
667
|
}
|
|
641
668
|
|
|
669
|
+
/** Options for {@link validateDsrSubmissionStructured}. */
|
|
670
|
+
export declare interface ValidateDsrSubmissionOptions {
|
|
671
|
+
/**
|
|
672
|
+
* Whether the data subject is required to provide an identifier
|
|
673
|
+
* (NDPC's recommended verification step). Mirror whatever you set on
|
|
674
|
+
* the client-side `<DSRRequestForm requireIdentityVerification>`.
|
|
675
|
+
* @default true
|
|
676
|
+
*/
|
|
677
|
+
requireIdentityVerification?: boolean;
|
|
678
|
+
/**
|
|
679
|
+
* Allowed request types. When provided, the payload's `requestType`
|
|
680
|
+
* must be one of these — useful for locking the server to a specific
|
|
681
|
+
* set of supported NDPA Part VI §34-38 (plus §35, §36, §37) data-subject rights.
|
|
682
|
+
*/
|
|
683
|
+
allowedRequestTypes?: string[];
|
|
684
|
+
}
|
|
685
|
+
|
|
642
686
|
/**
|
|
643
687
|
* Validate a raw DSR submission payload against the same rules
|
|
644
688
|
* `<DSRRequestForm />` enforces client-side. Designed to be called from a
|
|
@@ -647,53 +691,38 @@ declare interface UseDSRReturn {
|
|
|
647
691
|
* the consumer hand-rolling zod / class-validator schemas.
|
|
648
692
|
*
|
|
649
693
|
* Defensive — accepts `unknown` and narrows. Safe to call directly on
|
|
650
|
-
* `await request.json()`.
|
|
694
|
+
* `await request.json()`. Returns `{ field, code, message }[]` errors so
|
|
695
|
+
* callers can switch on `code` programmatically across locales.
|
|
696
|
+
*
|
|
697
|
+
* Codes emitted:
|
|
698
|
+
* - `payload_not_object`
|
|
699
|
+
* - `request_type_required`
|
|
700
|
+
* - `request_type_not_allowed`
|
|
701
|
+
* - `data_subject_required`
|
|
702
|
+
* - `full_name_required`
|
|
703
|
+
* - `email_required`
|
|
704
|
+
* - `email_invalid_format`
|
|
705
|
+
* - `phone_invalid_type`
|
|
706
|
+
* - `identifier_type_required`
|
|
707
|
+
* - `identifier_value_required`
|
|
708
|
+
* - `submitted_at_invalid`
|
|
709
|
+
* - `additional_info_invalid_type`
|
|
710
|
+
* - `payload_final_narrowing_failed`
|
|
651
711
|
*
|
|
652
712
|
* @example **Next.js Route Handler**
|
|
653
713
|
* ```ts
|
|
654
|
-
*
|
|
655
|
-
* import { validateDsrSubmission } from '@tantainnovative/ndpr-toolkit/server';
|
|
714
|
+
* import { validateDsrSubmissionStructured } from '@tantainnovative/ndpr-toolkit/server';
|
|
656
715
|
*
|
|
657
716
|
* export async function POST(req: Request) {
|
|
658
|
-
* const { valid, errors, data } =
|
|
659
|
-
* if (!valid)
|
|
660
|
-
*
|
|
717
|
+
* const { valid, errors, data } = validateDsrSubmissionStructured(await req.json());
|
|
718
|
+
* if (!valid) {
|
|
719
|
+
* return Response.json({ errors }, { status: 422 });
|
|
720
|
+
* }
|
|
661
721
|
* await dsrStore.create(data);
|
|
662
722
|
* return Response.json({ ok: true }, { status: 201 });
|
|
663
723
|
* }
|
|
664
724
|
* ```
|
|
665
|
-
*
|
|
666
|
-
* @example **Lock to specific request types**
|
|
667
|
-
* ```ts
|
|
668
|
-
* validateDsrSubmission(payload, {
|
|
669
|
-
* allowedRequestTypes: ['access', 'erasure', 'rectification'],
|
|
670
|
-
* });
|
|
671
|
-
* ```
|
|
672
|
-
*
|
|
673
|
-
* @example **Skip identity verification (e.g. authenticated session)**
|
|
674
|
-
* ```ts
|
|
675
|
-
* validateDsrSubmission(payload, { requireIdentityVerification: false });
|
|
676
|
-
* ```
|
|
677
|
-
*
|
|
678
|
-
* @deprecated Use `validateDsrSubmissionStructured()` for typed `{ field, code, message }[]` errors. The legacy string-returning shape will be removed in 5.0.
|
|
679
725
|
*/
|
|
680
|
-
export declare function
|
|
681
|
-
|
|
682
|
-
/** Options for {@link validateDsrSubmission}. */
|
|
683
|
-
export declare interface ValidateDsrSubmissionOptions {
|
|
684
|
-
/**
|
|
685
|
-
* Whether the data subject is required to provide an identifier
|
|
686
|
-
* (NDPC's recommended verification step). Mirror whatever you set on
|
|
687
|
-
* the client-side `<DSRRequestForm requireIdentityVerification>`.
|
|
688
|
-
* @default true
|
|
689
|
-
*/
|
|
690
|
-
requireIdentityVerification?: boolean;
|
|
691
|
-
/**
|
|
692
|
-
* Allowed request types. When provided, the payload's `requestType`
|
|
693
|
-
* must be one of these — useful for locking the server to a specific
|
|
694
|
-
* set of supported NDPA Part VI §34-38 (plus §35, §36, §37) data-subject rights.
|
|
695
|
-
*/
|
|
696
|
-
allowedRequestTypes?: string[];
|
|
697
|
-
}
|
|
726
|
+
export declare function validateDsrSubmissionStructured(payload: unknown, options?: ValidateDsrSubmissionOptions): StructuredValidationResult<DsrSubmissionPayload>;
|
|
698
727
|
|
|
699
728
|
export { }
|
package/dist/dsr.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
'use strict';var
|
|
2
|
+
'use strict';var chunkASEUTU45_js=require('./chunk-ASEUTU45.js'),chunkUZNWXJ2W_js=require('./chunk-UZNWXJ2W.js');require('./chunk-UXUMYP4L.js');var chunkTVA6D6S4_js=require('./chunk-TVA6D6S4.js'),chunkR2ZZMATR_js=require('./chunk-R2ZZMATR.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 R=({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:u,onSubmit:d,onUpdate:n,children:i})=>{let f=chunkTVA6D6S4_js.a({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:u,onSubmit:d,onUpdate:n}),x=chunkRFPLZDIO_js.b(chunkRFPLZDIO_js.a({},f),{requestTypes:e});return jsxRuntime.jsx(p.Provider,{value:x,children:i})};var C={Provider:R,Form:chunkUZNWXJ2W_js.a,Dashboard:chunkASEUTU45_js.a,Tracker:chunkASEUTU45_js.b};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,"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}});exports.DSR=C;exports.DSRProvider=R;exports.useDSRCompound=P;
|
package/dist/dsr.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {b,a}from'./chunk-
|
|
2
|
+
import {b,a}from'./chunk-SBSYHCPK.mjs';export{a as DSRDashboard,b as DSRTracker}from'./chunk-SBSYHCPK.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-ZSRO4L3C.mjs';export{a as useDSR}from'./chunk-ZSRO4L3C.mjs';export{b as formatDSRRequestStructured,a as validateDsrSubmissionStructured}from'./chunk-RRVML7CU.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 R=({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:u,onSubmit:d,onUpdate:n,children:i})=>{let f=a$2({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:u,onSubmit:d,onUpdate:n}),x=b$1(a$3({},f),{requestTypes:e});return jsx(p.Provider,{value:x,children:i})};var C={Provider:R,Form:a$1,Dashboard:a,Tracker:b};export{C as DSR,R as DSRProvider,P as useDSRCompound};
|
package/dist/headless.d.mts
CHANGED
|
@@ -1457,6 +1457,19 @@ declare interface StorageAdapter<T = unknown> {
|
|
|
1457
1457
|
remove(): void | Promise<void>;
|
|
1458
1458
|
}
|
|
1459
1459
|
|
|
1460
|
+
/**
|
|
1461
|
+
* Single structured validation error with a stable, locale-independent
|
|
1462
|
+
* `code` consumers can switch on programmatically.
|
|
1463
|
+
*/
|
|
1464
|
+
declare interface StructuredValidationError {
|
|
1465
|
+
/** Dot-path of the offending field (e.g. `'timestamp'`, `'dataSubject.email'`, `'options[0].purpose'`). */
|
|
1466
|
+
field: string;
|
|
1467
|
+
/** Stable, snake_case error code — safe to switch on across locales. */
|
|
1468
|
+
code: string;
|
|
1469
|
+
/** Human-readable English message — informational only; do not regex-match. */
|
|
1470
|
+
message: string;
|
|
1471
|
+
}
|
|
1472
|
+
|
|
1460
1473
|
/** Full context used to generate an adaptive privacy policy. */
|
|
1461
1474
|
declare interface TemplateContext {
|
|
1462
1475
|
/** Organisation details, extended with industry and size. */
|
|
@@ -1832,9 +1845,10 @@ export declare interface UseConsentReturn {
|
|
|
1832
1845
|
*/
|
|
1833
1846
|
isValid: boolean;
|
|
1834
1847
|
/**
|
|
1835
|
-
* Validation errors (if any)
|
|
1848
|
+
* Validation errors (if any). Each entry is a structured `{ field, code,
|
|
1849
|
+
* message }` so consumers can switch on `code` across locales.
|
|
1836
1850
|
*/
|
|
1837
|
-
validationErrors:
|
|
1851
|
+
validationErrors: StructuredValidationError[];
|
|
1838
1852
|
/**
|
|
1839
1853
|
* Reset consent settings (clear from storage)
|
|
1840
1854
|
*/
|
|
@@ -2503,7 +2517,7 @@ export declare interface UsePrivacyPolicyReturn {
|
|
|
2503
2517
|
* }
|
|
2504
2518
|
* ```
|
|
2505
2519
|
*/
|
|
2506
|
-
export declare function useROPA({ initialData, adapter,
|
|
2520
|
+
export declare function useROPA({ initialData, adapter, onAdd, onUpdate, onArchive, }: UseROPAOptions): UseROPAReturn;
|
|
2507
2521
|
|
|
2508
2522
|
export declare interface UseROPAOptions {
|
|
2509
2523
|
/**
|
|
@@ -2517,36 +2531,15 @@ export declare interface UseROPAOptions {
|
|
|
2517
2531
|
*/
|
|
2518
2532
|
adapter?: StorageAdapter<RecordOfProcessingActivities>;
|
|
2519
2533
|
/**
|
|
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.
|
|
2523
|
-
*/
|
|
2524
|
-
onRecordAdd?: (record: ProcessingRecord) => void;
|
|
2525
|
-
/**
|
|
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.
|
|
2529
|
-
*/
|
|
2530
|
-
onRecordUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
|
|
2531
|
-
/**
|
|
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.
|
|
2535
|
-
*/
|
|
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.
|
|
2534
|
+
* Callback when a record is added.
|
|
2540
2535
|
*/
|
|
2541
2536
|
onAdd?: (record: ProcessingRecord) => void;
|
|
2542
2537
|
/**
|
|
2543
|
-
* Callback when a record is updated
|
|
2544
|
-
* Takes precedence over `onRecordUpdate` when both are provided.
|
|
2538
|
+
* Callback when a record is updated.
|
|
2545
2539
|
*/
|
|
2546
2540
|
onUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
|
|
2547
2541
|
/**
|
|
2548
|
-
* Callback when a record is archived
|
|
2549
|
-
* Takes precedence over `onRecordArchive` when both are provided.
|
|
2542
|
+
* Callback when a record is archived.
|
|
2550
2543
|
*/
|
|
2551
2544
|
onArchive?: (id: string) => void;
|
|
2552
2545
|
}
|
package/dist/headless.d.ts
CHANGED
|
@@ -1457,6 +1457,19 @@ declare interface StorageAdapter<T = unknown> {
|
|
|
1457
1457
|
remove(): void | Promise<void>;
|
|
1458
1458
|
}
|
|
1459
1459
|
|
|
1460
|
+
/**
|
|
1461
|
+
* Single structured validation error with a stable, locale-independent
|
|
1462
|
+
* `code` consumers can switch on programmatically.
|
|
1463
|
+
*/
|
|
1464
|
+
declare interface StructuredValidationError {
|
|
1465
|
+
/** Dot-path of the offending field (e.g. `'timestamp'`, `'dataSubject.email'`, `'options[0].purpose'`). */
|
|
1466
|
+
field: string;
|
|
1467
|
+
/** Stable, snake_case error code — safe to switch on across locales. */
|
|
1468
|
+
code: string;
|
|
1469
|
+
/** Human-readable English message — informational only; do not regex-match. */
|
|
1470
|
+
message: string;
|
|
1471
|
+
}
|
|
1472
|
+
|
|
1460
1473
|
/** Full context used to generate an adaptive privacy policy. */
|
|
1461
1474
|
declare interface TemplateContext {
|
|
1462
1475
|
/** Organisation details, extended with industry and size. */
|
|
@@ -1832,9 +1845,10 @@ export declare interface UseConsentReturn {
|
|
|
1832
1845
|
*/
|
|
1833
1846
|
isValid: boolean;
|
|
1834
1847
|
/**
|
|
1835
|
-
* Validation errors (if any)
|
|
1848
|
+
* Validation errors (if any). Each entry is a structured `{ field, code,
|
|
1849
|
+
* message }` so consumers can switch on `code` across locales.
|
|
1836
1850
|
*/
|
|
1837
|
-
validationErrors:
|
|
1851
|
+
validationErrors: StructuredValidationError[];
|
|
1838
1852
|
/**
|
|
1839
1853
|
* Reset consent settings (clear from storage)
|
|
1840
1854
|
*/
|
|
@@ -2503,7 +2517,7 @@ export declare interface UsePrivacyPolicyReturn {
|
|
|
2503
2517
|
* }
|
|
2504
2518
|
* ```
|
|
2505
2519
|
*/
|
|
2506
|
-
export declare function useROPA({ initialData, adapter,
|
|
2520
|
+
export declare function useROPA({ initialData, adapter, onAdd, onUpdate, onArchive, }: UseROPAOptions): UseROPAReturn;
|
|
2507
2521
|
|
|
2508
2522
|
export declare interface UseROPAOptions {
|
|
2509
2523
|
/**
|
|
@@ -2517,36 +2531,15 @@ export declare interface UseROPAOptions {
|
|
|
2517
2531
|
*/
|
|
2518
2532
|
adapter?: StorageAdapter<RecordOfProcessingActivities>;
|
|
2519
2533
|
/**
|
|
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.
|
|
2523
|
-
*/
|
|
2524
|
-
onRecordAdd?: (record: ProcessingRecord) => void;
|
|
2525
|
-
/**
|
|
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.
|
|
2529
|
-
*/
|
|
2530
|
-
onRecordUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
|
|
2531
|
-
/**
|
|
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.
|
|
2535
|
-
*/
|
|
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.
|
|
2534
|
+
* Callback when a record is added.
|
|
2540
2535
|
*/
|
|
2541
2536
|
onAdd?: (record: ProcessingRecord) => void;
|
|
2542
2537
|
/**
|
|
2543
|
-
* Callback when a record is updated
|
|
2544
|
-
* Takes precedence over `onRecordUpdate` when both are provided.
|
|
2538
|
+
* Callback when a record is updated.
|
|
2545
2539
|
*/
|
|
2546
2540
|
onUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
|
|
2547
2541
|
/**
|
|
2548
|
-
* Callback when a record is archived
|
|
2549
|
-
* Takes precedence over `onRecordArchive` when both are provided.
|
|
2542
|
+
* Callback when a record is archived.
|
|
2550
2543
|
*/
|
|
2551
2544
|
onArchive?: (id: string) => void;
|
|
2552
2545
|
}
|
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'),
|
|
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'),chunkTLIHFGIJ_js=require('./chunk-TLIHFGIJ.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 chunkQKXGVT2Q_js=require('./chunk-QKXGVT2Q.js'),chunkL2VO3MEJ_js=require('./chunk-L2VO3MEJ.js');require('./chunk-C2KEXHRX.js'),require('./chunk-DKLJ5DYN.js');var chunkTVA6D6S4_js=require('./chunk-TVA6D6S4.js');require('./chunk-R2ZZMATR.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 chunkTLIHFGIJ_js.a}});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,"useDSR",{enumerable:true,get:function(){return chunkTVA6D6S4_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-
|
|
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-FRMVSG4N.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-PQ5IPUJN.mjs';export{a as useFocusTrap}from'./chunk-YTU4FNM2.mjs';import'./chunk-XC3DLYEG.mjs';import'./chunk-R3ZKV2J7.mjs';export{a as useDSR}from'./chunk-ZSRO4L3C.mjs';import'./chunk-RRVML7CU.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
|
@@ -1343,6 +1343,19 @@ declare interface StorageAdapter<T = unknown> {
|
|
|
1343
1343
|
remove(): void | Promise<void>;
|
|
1344
1344
|
}
|
|
1345
1345
|
|
|
1346
|
+
/**
|
|
1347
|
+
* Single structured validation error with a stable, locale-independent
|
|
1348
|
+
* `code` consumers can switch on programmatically.
|
|
1349
|
+
*/
|
|
1350
|
+
declare interface StructuredValidationError {
|
|
1351
|
+
/** Dot-path of the offending field (e.g. `'timestamp'`, `'dataSubject.email'`, `'options[0].purpose'`). */
|
|
1352
|
+
field: string;
|
|
1353
|
+
/** Stable, snake_case error code — safe to switch on across locales. */
|
|
1354
|
+
code: string;
|
|
1355
|
+
/** Human-readable English message — informational only; do not regex-match. */
|
|
1356
|
+
message: string;
|
|
1357
|
+
}
|
|
1358
|
+
|
|
1346
1359
|
/** Full context used to generate an adaptive privacy policy. */
|
|
1347
1360
|
declare interface TemplateContext {
|
|
1348
1361
|
/** Organisation details, extended with industry and size. */
|
|
@@ -1718,9 +1731,10 @@ export declare interface UseConsentReturn {
|
|
|
1718
1731
|
*/
|
|
1719
1732
|
isValid: boolean;
|
|
1720
1733
|
/**
|
|
1721
|
-
* Validation errors (if any)
|
|
1734
|
+
* Validation errors (if any). Each entry is a structured `{ field, code,
|
|
1735
|
+
* message }` so consumers can switch on `code` across locales.
|
|
1722
1736
|
*/
|
|
1723
|
-
validationErrors:
|
|
1737
|
+
validationErrors: StructuredValidationError[];
|
|
1724
1738
|
/**
|
|
1725
1739
|
* Reset consent settings (clear from storage)
|
|
1726
1740
|
*/
|
|
@@ -2389,7 +2403,7 @@ export declare interface UsePrivacyPolicyReturn {
|
|
|
2389
2403
|
* }
|
|
2390
2404
|
* ```
|
|
2391
2405
|
*/
|
|
2392
|
-
export declare function useROPA({ initialData, adapter,
|
|
2406
|
+
export declare function useROPA({ initialData, adapter, onAdd, onUpdate, onArchive, }: UseROPAOptions): UseROPAReturn;
|
|
2393
2407
|
|
|
2394
2408
|
export declare interface UseROPAOptions {
|
|
2395
2409
|
/**
|
|
@@ -2403,36 +2417,15 @@ export declare interface UseROPAOptions {
|
|
|
2403
2417
|
*/
|
|
2404
2418
|
adapter?: StorageAdapter<RecordOfProcessingActivities>;
|
|
2405
2419
|
/**
|
|
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.
|
|
2409
|
-
*/
|
|
2410
|
-
onRecordAdd?: (record: ProcessingRecord) => void;
|
|
2411
|
-
/**
|
|
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.
|
|
2415
|
-
*/
|
|
2416
|
-
onRecordUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
|
|
2417
|
-
/**
|
|
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.
|
|
2421
|
-
*/
|
|
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.
|
|
2420
|
+
* Callback when a record is added.
|
|
2426
2421
|
*/
|
|
2427
2422
|
onAdd?: (record: ProcessingRecord) => void;
|
|
2428
2423
|
/**
|
|
2429
|
-
* Callback when a record is updated
|
|
2430
|
-
* Takes precedence over `onRecordUpdate` when both are provided.
|
|
2424
|
+
* Callback when a record is updated.
|
|
2431
2425
|
*/
|
|
2432
2426
|
onUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
|
|
2433
2427
|
/**
|
|
2434
|
-
* Callback when a record is archived
|
|
2435
|
-
* Takes precedence over `onRecordArchive` when both are provided.
|
|
2428
|
+
* Callback when a record is archived.
|
|
2436
2429
|
*/
|
|
2437
2430
|
onArchive?: (id: string) => void;
|
|
2438
2431
|
}
|
package/dist/hooks.d.ts
CHANGED
|
@@ -1343,6 +1343,19 @@ declare interface StorageAdapter<T = unknown> {
|
|
|
1343
1343
|
remove(): void | Promise<void>;
|
|
1344
1344
|
}
|
|
1345
1345
|
|
|
1346
|
+
/**
|
|
1347
|
+
* Single structured validation error with a stable, locale-independent
|
|
1348
|
+
* `code` consumers can switch on programmatically.
|
|
1349
|
+
*/
|
|
1350
|
+
declare interface StructuredValidationError {
|
|
1351
|
+
/** Dot-path of the offending field (e.g. `'timestamp'`, `'dataSubject.email'`, `'options[0].purpose'`). */
|
|
1352
|
+
field: string;
|
|
1353
|
+
/** Stable, snake_case error code — safe to switch on across locales. */
|
|
1354
|
+
code: string;
|
|
1355
|
+
/** Human-readable English message — informational only; do not regex-match. */
|
|
1356
|
+
message: string;
|
|
1357
|
+
}
|
|
1358
|
+
|
|
1346
1359
|
/** Full context used to generate an adaptive privacy policy. */
|
|
1347
1360
|
declare interface TemplateContext {
|
|
1348
1361
|
/** Organisation details, extended with industry and size. */
|
|
@@ -1718,9 +1731,10 @@ export declare interface UseConsentReturn {
|
|
|
1718
1731
|
*/
|
|
1719
1732
|
isValid: boolean;
|
|
1720
1733
|
/**
|
|
1721
|
-
* Validation errors (if any)
|
|
1734
|
+
* Validation errors (if any). Each entry is a structured `{ field, code,
|
|
1735
|
+
* message }` so consumers can switch on `code` across locales.
|
|
1722
1736
|
*/
|
|
1723
|
-
validationErrors:
|
|
1737
|
+
validationErrors: StructuredValidationError[];
|
|
1724
1738
|
/**
|
|
1725
1739
|
* Reset consent settings (clear from storage)
|
|
1726
1740
|
*/
|
|
@@ -2389,7 +2403,7 @@ export declare interface UsePrivacyPolicyReturn {
|
|
|
2389
2403
|
* }
|
|
2390
2404
|
* ```
|
|
2391
2405
|
*/
|
|
2392
|
-
export declare function useROPA({ initialData, adapter,
|
|
2406
|
+
export declare function useROPA({ initialData, adapter, onAdd, onUpdate, onArchive, }: UseROPAOptions): UseROPAReturn;
|
|
2393
2407
|
|
|
2394
2408
|
export declare interface UseROPAOptions {
|
|
2395
2409
|
/**
|
|
@@ -2403,36 +2417,15 @@ export declare interface UseROPAOptions {
|
|
|
2403
2417
|
*/
|
|
2404
2418
|
adapter?: StorageAdapter<RecordOfProcessingActivities>;
|
|
2405
2419
|
/**
|
|
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.
|
|
2409
|
-
*/
|
|
2410
|
-
onRecordAdd?: (record: ProcessingRecord) => void;
|
|
2411
|
-
/**
|
|
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.
|
|
2415
|
-
*/
|
|
2416
|
-
onRecordUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
|
|
2417
|
-
/**
|
|
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.
|
|
2421
|
-
*/
|
|
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.
|
|
2420
|
+
* Callback when a record is added.
|
|
2426
2421
|
*/
|
|
2427
2422
|
onAdd?: (record: ProcessingRecord) => void;
|
|
2428
2423
|
/**
|
|
2429
|
-
* Callback when a record is updated
|
|
2430
|
-
* Takes precedence over `onRecordUpdate` when both are provided.
|
|
2424
|
+
* Callback when a record is updated.
|
|
2431
2425
|
*/
|
|
2432
2426
|
onUpdate?: (id: string, updates: Partial<ProcessingRecord>) => void;
|
|
2433
2427
|
/**
|
|
2434
|
-
* Callback when a record is archived
|
|
2435
|
-
* Takes precedence over `onRecordArchive` when both are provided.
|
|
2428
|
+
* Callback when a record is archived.
|
|
2436
2429
|
*/
|
|
2437
2430
|
onArchive?: (id: string) => void;
|
|
2438
2431
|
}
|
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'),
|
|
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'),chunkTLIHFGIJ_js=require('./chunk-TLIHFGIJ.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 chunkQKXGVT2Q_js=require('./chunk-QKXGVT2Q.js'),chunkL2VO3MEJ_js=require('./chunk-L2VO3MEJ.js');require('./chunk-C2KEXHRX.js'),require('./chunk-DKLJ5DYN.js');var chunkTVA6D6S4_js=require('./chunk-TVA6D6S4.js');require('./chunk-R2ZZMATR.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 chunkTLIHFGIJ_js.a}});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,"useDSR",{enumerable:true,get:function(){return chunkTVA6D6S4_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-
|
|
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-FRMVSG4N.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-PQ5IPUJN.mjs';export{a as useFocusTrap}from'./chunk-YTU4FNM2.mjs';import'./chunk-XC3DLYEG.mjs';import'./chunk-R3ZKV2J7.mjs';export{a as useDSR}from'./chunk-ZSRO4L3C.mjs';import'./chunk-RRVML7CU.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';
|