@tantainnovative/ndpr-toolkit 3.4.0 → 3.4.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.
Files changed (59) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +80 -38
  3. package/dist/breach.js +1 -0
  4. package/dist/breach.mjs +1 -0
  5. package/dist/{chunk-NCOZB2WU.mjs → chunk-2L7BSG7G.mjs} +2 -2
  6. package/dist/{chunk-XMBSJJ5U.js → chunk-4BOEFDDE.js} +3 -3
  7. package/dist/{chunk-2WH4DLV5.js → chunk-ASLMPY54.js} +3 -3
  8. package/dist/{chunk-MG73MOZC.mjs → chunk-I557S566.mjs} +2 -2
  9. package/dist/{chunk-4R42ZNO7.mjs → chunk-JFFOPHU3.mjs} +57 -57
  10. package/dist/{chunk-KSERBMXW.mjs → chunk-MLOWRZXO.mjs} +3 -3
  11. package/dist/{chunk-QVULSG6J.mjs → chunk-NFJ4CB63.mjs} +3 -3
  12. package/dist/{chunk-RGNP45VR.js → chunk-UHTJ6UFW.js} +2 -2
  13. package/dist/{chunk-RNTNHVKZ.js → chunk-YPKUHSK4.js} +2 -2
  14. package/dist/{chunk-UFPSUO52.js → chunk-Z73T6MWY.js} +57 -57
  15. package/dist/consent.js +1 -0
  16. package/dist/consent.mjs +1 -0
  17. package/dist/core.d.mts +2 -2
  18. package/dist/core.d.ts +2 -2
  19. package/dist/core.js +1 -1
  20. package/dist/core.mjs +1 -1
  21. package/dist/cross-border.js +1 -0
  22. package/dist/cross-border.mjs +1 -0
  23. package/dist/{docx-CV7Vsry_.d.mts → docx-4n8g4zul.d.mts} +1 -1
  24. package/dist/{docx-BxKascXN.d.ts → docx-VvcTLYZM.d.ts} +1 -1
  25. package/dist/dpia.js +1 -0
  26. package/dist/dpia.mjs +1 -0
  27. package/dist/dsr.js +1 -0
  28. package/dist/dsr.mjs +1 -0
  29. package/dist/hooks.d.mts +2 -2
  30. package/dist/hooks.d.ts +2 -2
  31. package/dist/hooks.js +2 -1
  32. package/dist/hooks.mjs +2 -1
  33. package/dist/index.js +2 -1
  34. package/dist/index.mjs +2 -1
  35. package/dist/lawful-basis.js +1 -0
  36. package/dist/lawful-basis.mjs +1 -0
  37. package/dist/{policy-engine-fYSqEqSW.d.mts → policy-engine-5qTfp2z4.d.mts} +20 -0
  38. package/dist/{policy-engine-CCUCud2T.d.ts → policy-engine-DzPxskOK.d.ts} +20 -0
  39. package/dist/{policy-sections-BYx6fEFk.d.ts → policy-sections-9tCb7VU7.d.ts} +1 -1
  40. package/dist/{policy-sections-Dm97Nq8m.d.mts → policy-sections-CBWcJv-R.d.mts} +1 -1
  41. package/dist/policy.d.mts +5 -5
  42. package/dist/policy.d.ts +5 -5
  43. package/dist/policy.js +2 -1
  44. package/dist/policy.mjs +2 -1
  45. package/dist/presets.d.mts +1 -1
  46. package/dist/presets.d.ts +1 -1
  47. package/dist/presets.js +2 -1
  48. package/dist/presets.mjs +2 -1
  49. package/dist/ropa.js +1 -0
  50. package/dist/ropa.mjs +1 -0
  51. package/dist/server.d.mts +3 -3
  52. package/dist/server.d.ts +3 -3
  53. package/dist/server.js +1 -1
  54. package/dist/server.mjs +1 -1
  55. package/dist/unstyled.js +1 -0
  56. package/dist/unstyled.mjs +1 -0
  57. package/dist/{useAdaptivePolicyWizard-BnjW4OR4.d.mts → useAdaptivePolicyWizard-BSLyltzZ.d.mts} +1 -1
  58. package/dist/{useAdaptivePolicyWizard-sb3m4-Zk.d.ts → useAdaptivePolicyWizard-CL7C7MTZ.d.ts} +1 -1
  59. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkP2YV6DR3_js=require('./chunk-P2YV6DR3.js'),chunkELKB2AFZ_js=require('./chunk-ELKB2AFZ.js'),chunkMQFZHA2D_js=require('./chunk-MQFZHA2D.js'),react=require('react');function H(e,s){return s?chunkELKB2AFZ_js.a(e):{load:()=>null,save:()=>{},remove:()=>{}}}function L({templates:e,initialPolicy:s,adapter:P,storageKey:c="ndpr_privacy_policy",useLocalStorage:m=true,onGenerate:T}){let w=P!=null?P:H(c,m),l=react.useRef(w);l.current=w;let[r,f]=react.useState(s||null),[o,p]=react.useState(null),[y,z]=react.useState({name:"",website:"",privacyEmail:"",address:"",privacyPhone:"",dpoName:"",dpoEmail:"",industry:""}),[A,O]=react.useState(true),h=react.useRef(e);h.current=e,react.useEffect(()=>{if(s){O(false);return}let t=false;try{let n=l.current.load(),i=a=>{if(a){if(f(a),a.templateId){let g=h.current.find(b=>b.id===a.templateId);g&&p(g);}a.organizationInfo&&z(a.organizationInfo);}O(!1);};n instanceof Promise?n.then(a=>{t||i(a);},()=>{t||O(!1);}):i(n);}catch(n){t||O(false);}return ()=>{t=true;}},[s]);let q=t=>{Promise.resolve(l.current.save(t)).catch(n=>{console.warn("[ndpr-toolkit] Failed to save policy:",n);});},_=react.useCallback(t=>{let n=e.find(b=>b.id===t);if(!n)return false;p(n);let i=n.sections.map(b=>chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},b),{customContent:void 0})),a={};Object.keys(n.variables).forEach(b=>{a[b]=n.variables[b].defaultValue||"";});let g=Date.now();return f({id:"policy_"+g+"_"+Math.random().toString(36).substr(2,9),title:"",templateId:n.id,organizationInfo:y,sections:i,variableValues:a,effectiveDate:g,lastUpdated:g,version:"1.0"}),true},[e,y]),C=react.useCallback(t=>{z(n=>chunkMQFZHA2D_js.a(chunkMQFZHA2D_js.a({},n),t));},[]),k=react.useCallback((t,n)=>{o&&(r?f(i=>i&&chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i),{sections:i.sections.map(a=>a.id===t?chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},a),{included:n}):a)})):p(i=>i&&chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i),{sections:i.sections.map(a=>a.id===t?chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},a),{included:n}):a)})));},[o,r]),j=react.useCallback((t,n)=>{o&&(r?f(i=>i&&chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i),{sections:i.sections.map(a=>a.id===t?chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},a),{customContent:n}):a)})):p(i=>i&&chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i),{sections:i.sections.map(a=>a.id===t?chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},a),{customContent:n}):a)})));},[o,r]),I=react.useCallback((t,n)=>{r&&f(i=>i&&chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i),{variableValues:chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i.variableValues),{[t]:n})}));},[r]),F=()=>"policy_"+Date.now()+"_"+Math.random().toString(36).substr(2,9),M=react.useCallback(()=>{if(!o)return null;let t=Date.now(),n={id:(r==null?void 0:r.id)||F(),title:`Privacy Policy for ${y.name}`,templateId:o.id,organizationInfo:y,sections:o.sections.map(i=>{var a;return chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i),{customContent:(a=r==null?void 0:r.sections.find(g=>g.id===i.id))==null?void 0:a.customContent})}),variableValues:(r==null?void 0:r.variableValues)||{},effectiveDate:t,lastUpdated:t,version:"1.0"};return f(n),q(n),T&&T(n),n},[o,r,y,T]),$=react.useCallback(()=>{if(!r)return {fullText:"",sectionTexts:{},missingVariables:[]};let t=chunkP2YV6DR3_js.b(r.sections,r.organizationInfo);return typeof t=="string"?{fullText:t,sectionTexts:{full:t},missingVariables:[]}:t},[r]),B=react.useCallback(()=>{f(null),p(null),z({name:"",website:"",privacyEmail:"",address:"",privacyPhone:"",dpoName:"",dpoEmail:"",industry:""}),Promise.resolve(l.current.remove()).catch(t=>{console.warn("[ndpr-toolkit] Failed to remove policy:",t);});},[]),G=react.useCallback(()=>{let t=[];if(o||t.push("No template selected"),y.name||t.push("Organization name is required"),y.website||t.push("Organization website is required"),y.privacyEmail||t.push("Privacy contact email is required"),o){let n=o.sections.filter(a=>a.required),i=(r==null?void 0:r.sections.filter(a=>a.included))||[];n.forEach(a=>{i.some(g=>g.id===a.id)||t.push(`Required section "${a.title}" must be included`);});}return o&&r&&Object.entries(o.variables).forEach(([n,i])=>{i.required&&!r.variableValues[n]&&t.push(`Required variable "${i.name}" must have a value`);}),{valid:t.length===0,errors:t}},[o,y,r]);return {policy:r,selectedTemplate:o,organizationInfo:y,selectTemplate:_,updateOrganizationInfo:C,toggleSection:k,updateSectionContent:j,updateVariableValue:I,generatePolicy:M,getPolicyText:$,resetPolicy:B,isValid:G,isLoading:A}}var x="default-business";function J(e){let{sections:s,variables:P}=chunkP2YV6DR3_js.e(),c={};return e&&(e.name&&(c.orgName=e.name),e.email&&(c.privacyEmail=e.email),e.website&&(c.website=e.website),e.address&&(c.address=e.address),e.industry&&(c.industry=e.industry),e.dpoName&&(c.dpoName=e.dpoName),e.dpoEmail&&(c.dpoEmail=e.dpoEmail)),{id:x,name:"Default Business Policy",description:"NDPA-compliant privacy policy template for businesses.",organizationType:"business",sections:s,variables:Object.fromEntries(P.map(m=>[m.name,{name:m.name,description:m.description,required:m.required,defaultValue:c[m.name]||m.value||void 0}])),version:"1.0",lastUpdated:Date.now(),ndpaCompliant:true}}function Q(e){if(!e)return {};let s={};return e.name&&(s.name=e.name),e.email&&(s.privacyEmail=e.email),e.website&&(s.website=e.website),e.address&&(s.address=e.address),e.industry&&(s.industry=e.industry),e.dpoName&&(s.dpoName=e.dpoName),e.dpoEmail&&(s.dpoEmail=e.dpoEmail),s}function ne(e={}){let{orgInfo:s,autoGenerate:P=true,storageKey:c,useLocalStorage:m,adapter:T}=e,w=react.useRef(null);w.current===null&&(w.current=J(s));let l=L({templates:[w.current],adapter:T,storageKey:c,useLocalStorage:m}),r=react.useRef(false),f=react.useRef(false);return react.useEffect(()=>{if(!P||l.isLoading||r.current)return;if(!T&&m!==false&&typeof window!="undefined"&&typeof window.localStorage!="undefined")try{if(window.localStorage.getItem(c!=null?c:"ndpr_privacy_policy")){r.current=!0,f.current=!0;return}}catch(y){}if(l.policy){r.current=true,f.current=true;return}r.current=true;let p=Q(s);Object.keys(p).length>0&&l.updateOrganizationInfo(p),l.selectedTemplate||l.selectTemplate(x);},[P,l.isLoading]),react.useEffect(()=>{var p;if(!P||f.current||!r.current||!l.selectedTemplate)return;let o=(p=s==null?void 0:s.name)!=null?p:"";o&&l.organizationInfo.name!==o||(f.current=true,l.generatePolicy());},[P,l.selectedTemplate,l.organizationInfo]),l}exports.a=L;exports.b=ne;//# sourceMappingURL=chunk-RGNP45VR.js.map
2
- //# sourceMappingURL=chunk-RGNP45VR.js.map
1
+ 'use strict';var chunkP2YV6DR3_js=require('./chunk-P2YV6DR3.js'),chunkELKB2AFZ_js=require('./chunk-ELKB2AFZ.js'),chunkMQFZHA2D_js=require('./chunk-MQFZHA2D.js'),react=require('react');function H(e,s){return s?chunkELKB2AFZ_js.a(e):{load:()=>null,save:()=>{},remove:()=>{}}}function N({templates:e,initialPolicy:s,adapter:P,storageKey:l="ndpr_privacy_policy",useLocalStorage:m=true,onGenerate:T}){let w=P!=null?P:H(l,m),c=react.useRef(w);c.current=w;let[r,f]=react.useState(s||null),[o,p]=react.useState(null),[y,E]=react.useState({name:"",website:"",privacyEmail:"",address:"",privacyPhone:"",dpoName:"",dpoEmail:"",industry:""}),[A,O]=react.useState(true),D=react.useRef(e);D.current=e,react.useEffect(()=>{if(s){O(false);return}let t=false;try{let n=c.current.load(),i=a=>{if(a){if(f(a),a.templateId){let g=D.current.find(b=>b.id===a.templateId);g&&p(g);}a.organizationInfo&&E(a.organizationInfo);}O(!1);};n instanceof Promise?n.then(a=>{t||i(a);},()=>{t||O(!1);}):i(n);}catch(n){t||O(false);}return ()=>{t=true;}},[s]);let q=t=>{Promise.resolve(c.current.save(t)).catch(n=>{console.warn("[ndpr-toolkit] Failed to save policy:",n);});},_=react.useCallback(t=>{let n=e.find(b=>b.id===t);if(!n)return false;p(n);let i=n.sections.map(b=>chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},b),{customContent:void 0})),a={};Object.keys(n.variables).forEach(b=>{a[b]=n.variables[b].defaultValue||"";});let g=Date.now();return f({id:"policy_"+g+"_"+Math.random().toString(36).substr(2,9),title:"",templateId:n.id,organizationInfo:y,sections:i,variableValues:a,effectiveDate:g,lastUpdated:g,version:"1.0"}),true},[e,y]),C=react.useCallback(t=>{E(n=>chunkMQFZHA2D_js.a(chunkMQFZHA2D_js.a({},n),t));},[]),k=react.useCallback((t,n)=>{o&&(r?f(i=>i&&chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i),{sections:i.sections.map(a=>a.id===t?chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},a),{included:n}):a)})):p(i=>i&&chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i),{sections:i.sections.map(a=>a.id===t?chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},a),{included:n}):a)})));},[o,r]),j=react.useCallback((t,n)=>{o&&(r?f(i=>i&&chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i),{sections:i.sections.map(a=>a.id===t?chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},a),{customContent:n}):a)})):p(i=>i&&chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i),{sections:i.sections.map(a=>a.id===t?chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},a),{customContent:n}):a)})));},[o,r]),I=react.useCallback((t,n)=>{r&&f(i=>i&&chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i),{variableValues:chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i.variableValues),{[t]:n})}));},[r]),F=()=>"policy_"+Date.now()+"_"+Math.random().toString(36).substr(2,9),M=react.useCallback(()=>{if(!o)return null;let t=Date.now(),n={id:(r==null?void 0:r.id)||F(),title:`Privacy Policy for ${y.name}`,templateId:o.id,organizationInfo:y,sections:o.sections.map(i=>{var a;return chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},i),{customContent:(a=r==null?void 0:r.sections.find(g=>g.id===i.id))==null?void 0:a.customContent})}),variableValues:(r==null?void 0:r.variableValues)||{},effectiveDate:t,lastUpdated:t,version:"1.0"};return f(n),q(n),T&&T(n),n},[o,r,y,T]),$=react.useCallback(()=>{if(!r)return {fullText:"",sectionTexts:{},missingVariables:[]};let t=chunkP2YV6DR3_js.b(r.sections,r.organizationInfo);return typeof t=="string"?{fullText:t,sectionTexts:{full:t},missingVariables:[]}:t},[r]),B=react.useCallback(()=>{f(null),p(null),E({name:"",website:"",privacyEmail:"",address:"",privacyPhone:"",dpoName:"",dpoEmail:"",industry:""}),Promise.resolve(c.current.remove()).catch(t=>{console.warn("[ndpr-toolkit] Failed to remove policy:",t);});},[]),G=react.useCallback(()=>{let t=[];if(o||t.push("No template selected"),y.name||t.push("Organization name is required"),y.website||t.push("Organization website is required"),y.privacyEmail||t.push("Privacy contact email is required"),o){let n=o.sections.filter(a=>a.required),i=(r==null?void 0:r.sections.filter(a=>a.included))||[];n.forEach(a=>{i.some(g=>g.id===a.id)||t.push(`Required section "${a.title}" must be included`);});}return o&&r&&Object.entries(o.variables).forEach(([n,i])=>{i.required&&!r.variableValues[n]&&t.push(`Required variable "${i.name}" must have a value`);}),{valid:t.length===0,errors:t}},[o,y,r]);return {policy:r,selectedTemplate:o,organizationInfo:y,selectTemplate:_,updateOrganizationInfo:C,toggleSection:k,updateSectionContent:j,updateVariableValue:I,generatePolicy:M,getPolicyText:$,resetPolicy:B,isValid:G,isLoading:A}}var x="default-business";function J(e){return e.toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"})}function Q(e){let{sections:s,variables:P}=chunkP2YV6DR3_js.e(),l={};return e&&(e.name&&(l.orgName=e.name),e.email&&(l.privacyEmail=e.email),e.website&&(l.website=e.website),e.address&&(l.address=e.address),e.industry&&(l.industry=e.industry),e.dpoName&&(l.dpoName=e.dpoName),e.dpoEmail&&(l.dpoEmail=e.dpoEmail)),l.effectiveDate||(l.effectiveDate=J(new Date)),{id:x,name:"Default Business Policy",description:"NDPA-compliant privacy policy template for businesses.",organizationType:"business",sections:s,variables:Object.fromEntries(P.map(m=>[m.name,{name:m.name,description:m.description,required:m.required,defaultValue:l[m.name]||m.value||void 0}])),version:"1.0",lastUpdated:Date.now(),ndpaCompliant:true}}function W(e){if(!e)return {};let s={};return e.name&&(s.name=e.name),e.email&&(s.privacyEmail=e.email),e.website&&(s.website=e.website),e.address&&(s.address=e.address),e.industry&&(s.industry=e.industry),e.dpoName&&(s.dpoName=e.dpoName),e.dpoEmail&&(s.dpoEmail=e.dpoEmail),s}function se(e={}){let{orgInfo:s,autoGenerate:P=true,storageKey:l,useLocalStorage:m,adapter:T}=e,w=react.useRef(null);w.current===null&&(w.current=Q(s));let c=N({templates:[w.current],adapter:T,storageKey:l,useLocalStorage:m}),r=react.useRef(false),f=react.useRef(false);return react.useEffect(()=>{if(!P||c.isLoading||r.current)return;if(!T&&m!==false&&typeof window!="undefined"&&typeof window.localStorage!="undefined")try{if(window.localStorage.getItem(l!=null?l:"ndpr_privacy_policy")){r.current=!0,f.current=!0;return}}catch(y){}if(c.policy){r.current=true,f.current=true;return}r.current=true;let p=W(s);Object.keys(p).length>0&&c.updateOrganizationInfo(p),c.selectedTemplate||c.selectTemplate(x);},[P,c.isLoading]),react.useEffect(()=>{var p;if(!P||f.current||!r.current||!c.selectedTemplate)return;let o=(p=s==null?void 0:s.name)!=null?p:"";o&&c.organizationInfo.name!==o||(f.current=true,c.generatePolicy());},[P,c.selectedTemplate,c.organizationInfo]),c}exports.a=N;exports.b=se;//# sourceMappingURL=chunk-UHTJ6UFW.js.map
2
+ //# sourceMappingURL=chunk-UHTJ6UFW.js.map
@@ -11,5 +11,5 @@
11
11
  4. Right to Restrict Processing (Section 37)
12
12
  5. Right to Data Portability (Section 38)
13
13
  6. Right to Object (Section 37)`})},{id:"right-to-withdraw-consent",name:"Right to Withdraw Consent",ndpaSection:"NDPA Section 25(2)",severity:"important",points:7,check:e=>{let t=g(e).toLowerCase();return t.includes("withdraw")&&t.includes("consent")},gap:()=>({message:"The policy does not mention the right to withdraw consent. Data subjects must be informed that they can withdraw consent at any time without affecting the lawfulness of prior processing.",fixType:"add_content",fixLabel:"Add withdrawal clause",suggestedContent:"You have the right to withdraw your consent at any time, without affecting the lawfulness of processing carried out prior to withdrawal. To withdraw your consent, contact us at the email address provided in this policy."})},{id:"right-to-lodge-complaint",name:"Right to Lodge Complaint with NDPC",ndpaSection:"NDPA Section 40",severity:"important",points:7,check:e=>{let t=g(e).toLowerCase();return t.includes("ndpc")||t.includes("nigeria data protection commission")},gap:()=>({message:"The policy does not mention the right to lodge a complaint with the Nigeria Data Protection Commission (NDPC). Data subjects must be informed of this right.",fixType:"add_content",fixLabel:"Add NDPC complaint reference",suggestedContent:"You have the right to lodge a complaint with the Nigeria Data Protection Commission (NDPC) if you believe your data protection rights have been infringed. Website: https://ndpc.gov.ng"})},{id:"cross-border-safeguards",name:"Cross-Border Transfer Safeguards",ndpaSection:"NDPA Sections 43-44",severity:"important",points:7,check:(e,t)=>t.hasCrossBorderTransfer?o(e,"cross-border-transfers"):true,gap:()=>({message:"Cross-border data transfers are indicated but the policy lacks a section describing the safeguards in place. The NDPA requires disclosure of transfer mechanisms and adequacy assessments.",fixType:"add_section",fixLabel:"Add cross-border section",suggestedContent:"Where we transfer personal data outside Nigeria, we ensure compliance with Sections 43 and 44 of the NDPA 2023 by implementing appropriate safeguards, including adequacy assessments and Standard Contractual Clauses."})},{id:"automated-decision-disclosure",name:"Automated Decision-Making Disclosure",ndpaSection:"NDPA Section 39",severity:"important",points:7,check:(e,t)=>t.hasAutomatedDecisions?o(e,"automated-decision-making"):true,gap:()=>({message:"Automated decision-making is indicated but the policy does not include a section disclosing this. The NDPA requires you to inform data subjects about automated decisions, including the logic involved and the right to human intervention.",fixType:"add_section",fixLabel:"Add automated decisions section",suggestedContent:"We use automated decision-making in certain processes. You have the right to request human intervention, express your point of view, and contest automated decisions, in accordance with Section 39 of the NDPA 2023."})},{id:"children-data-protection",name:"Children's Data Protection",ndpaSection:"NDPA Section 31",severity:"recommended",points:5,check:(e,t)=>t.hasChildrenData?o(e,"children-data-protection"):true,gap:()=>({message:"Children's data processing is indicated but the policy does not include a dedicated children's data protection section. The NDPA requires enhanced protections including parental consent for children under 13.",fixType:"add_section",fixLabel:"Add children's data section",suggestedContent:"We do not knowingly collect personal data from children under the age of 13 without verifiable parental or guardian consent. Parents and guardians may request access to, correction of, or deletion of their child's data at any time."})},{id:"dpo-contact-info",name:"DPO Contact Information",ndpaSection:"NDPA Section 30",severity:"recommended",points:5,check:e=>{var t,i;return ((t=e.organizationInfo.dpoName)!=null?t:"").trim().length>0&&((i=e.organizationInfo.dpoEmail)!=null?i:"").trim().length>0},gap:()=>({message:"The Data Protection Officer (DPO) contact information is not provided. While not always mandatory, appointing a DPO and publishing their contact details is strongly recommended under the NDPA.",fixType:"fill_field",fixLabel:"Add DPO details",suggestedContent:"Provide the full name and email address of your Data Protection Officer in the Organisation Info section."})},{id:"security-measures",name:"Security Measures Described",ndpaSection:"NDPA Section 28",severity:"recommended",points:5,check:e=>o(e,"data-security"),gap:()=>({message:"The policy does not describe the technical and organisational security measures in place to protect personal data. Describing these measures builds trust and demonstrates NDPA compliance.",fixType:"add_section",fixLabel:"Add security section",suggestedContent:"We implement appropriate technical and organisational measures to protect personal data, including encryption in transit and at rest, access controls, regular security assessments, and incident response procedures aligned with NDPA breach notification requirements."})},{id:"policy-effective-date",name:"Policy Effective Date",ndpaSection:"NDPA Section 24",severity:"recommended",points:5,check:e=>e.effectiveDate>0,gap:()=>({message:"The policy does not have an effective date set. An effective date is important for version control and for data subjects to know when the policy was last updated.",fixType:"fill_field",fixLabel:"Set effective date",suggestedContent:"Set the policy's effective date to the date you intend to publish it."})}];function P(e,t){let i=u.reduce((n,d)=>n+d.points,0),a=0,s=[],l=[];for(let n of u)if(n.check(e,t))a+=n.points,l.push(n.id);else {let d=n.gap(t);s.push(chunkMQFZHA2D_js.a({requirementId:n.id,requirement:n.name,ndpaSection:n.ndpaSection,severity:n.severity},d));}let h=Math.round(a/i*100),r;return a>=100?r="compliant":a>=80?r="nearly_compliant":r="not_compliant",{score:a,maxScore:i,percentage:h,rating:r,gaps:s,passed:l}}
14
- exports.a=m;exports.b=f;exports.c=P;//# sourceMappingURL=chunk-RNTNHVKZ.js.map
15
- //# sourceMappingURL=chunk-RNTNHVKZ.js.map
14
+ exports.a=m;exports.b=f;exports.c=P;//# sourceMappingURL=chunk-YPKUHSK4.js.map
15
+ //# sourceMappingURL=chunk-YPKUHSK4.js.map
@@ -1,11 +1,6 @@
1
- 'use strict';var chunkMQFZHA2D_js=require('./chunk-MQFZHA2D.js');function x(o){return o.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function k(o){return o.toLowerCase().replace(/[^a-z0-9\s-]/g,"").trim().replace(/\s+/g,"-")}function I(o){let l=o.split(`
2
- `),s=[],e=false;for(let r of l){let n=r.trimEnd();n.startsWith("- ")||n.startsWith("\u2022 ")?(e||(s.push("<ul>"),e=true),s.push(` <li>${x(n.replace(/^[-•]\s*/,""))}</li>`)):(e&&(s.push("</ul>"),e=false),n.trim()===""||s.push(`<p>${x(n)}</p>`));}return e&&s.push("</ul>"),s.join(`
3
- `)}var A=`
4
- /* \u2500\u2500 Reset & Base \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
5
- *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
6
-
7
- /* \u2500\u2500 Design tokens \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
8
- :root {
1
+ 'use strict';var chunkMQFZHA2D_js=require('./chunk-MQFZHA2D.js');function x(o){return o.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function O(o,c){var r,i;if(!o)return "";let s={},e=(r=c.organizationInfo)!=null?r:{};typeof e.name=="string"&&e.name&&(s.orgName=e.name);for(let[t,l]of Object.entries(e))typeof l=="string"&&l&&!(t in s)&&(s[t]=l);for(let[t,l]of Object.entries((i=c.variableValues)!=null?i:{}))typeof l=="string"&&l&&(s[t]=l);return o.replace(/\{\{\s*([^}\s]+)\s*\}\}/g,(t,l)=>{let a=String(l).trim();return Object.prototype.hasOwnProperty.call(s,a)?s[a]:t})}function F(o){return o.toLowerCase().replace(/[^a-z0-9\s-]/g,"").trim().replace(/\s+/g,"-")}function A(o){let c=o.split(`
2
+ `),s=[],e=false;for(let r of c){let i=r.trimEnd();i.startsWith("- ")||i.startsWith("\u2022 ")?(e||(s.push("<ul>"),e=true),s.push(` <li>${x(i.replace(/^[-•]\s*/,""))}</li>`)):(e&&(s.push("</ul>"),e=false),i.trim()===""||s.push(`<p>${x(i)}</p>`));}return e&&s.push("</ul>"),s.join(`
3
+ `)}var H=`
9
4
  --color-bg: #ffffff;
10
5
  --color-surface: #f9fafb;
11
6
  --color-border: #e5e7eb;
@@ -15,29 +10,34 @@
15
10
  --color-accent-light: #dcfce7;
16
11
  --color-heading: #064e3b;
17
12
  --color-link: #15803d;
18
- --color-link-hover: #166534;
13
+ --color-link-hover: #166534;`,L=`
14
+ --color-bg: #0f172a;
15
+ --color-surface: #1e293b;
16
+ --color-border: #334155;
17
+ --color-text: #f1f5f9;
18
+ --color-text-muted: #94a3b8;
19
+ --color-accent: #22c55e;
20
+ --color-accent-light: #14532d;
21
+ --color-heading: #86efac;
22
+ --color-link: #4ade80;
23
+ --color-link-hover: #86efac;`;function W(o){let c=o==="auto"?" color-scheme: light dark;":o==="dark"?" color-scheme: dark;":" color-scheme: light;",s=o==="dark"?L:H,e=o==="auto"?`
24
+
25
+ @media (prefers-color-scheme: dark) {
26
+ :root {${L}
27
+ }
28
+ }`:"";return `
29
+ :root {
30
+ ${c}${s}
19
31
  --font-sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
20
32
  --font-mono: ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, monospace;
21
33
  --radius: 8px;
22
34
  --shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0, 0, 0, 0.04);
23
35
  --max-width: 860px;
24
- }
25
-
26
- @media (prefers-color-scheme: dark) {
27
- :root {
28
- --color-bg: #0f172a;
29
- --color-surface: #1e293b;
30
- --color-border: #334155;
31
- --color-text: #f1f5f9;
32
- --color-text-muted: #94a3b8;
33
- --color-accent: #22c55e;
34
- --color-accent-light: #14532d;
35
- --color-heading: #86efac;
36
- --color-link: #4ade80;
37
- --color-link-hover: #86efac;
38
- }
39
- }
36
+ }${e}`}var B=`
37
+ /* \u2500\u2500 Reset & Base \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
38
+ *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
40
39
 
40
+ /* \u2500\u2500 Design tokens \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */`,R=`
41
41
  /* \u2500\u2500 Layout \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
42
42
  html { font-size: 16px; scroll-behavior: smooth; }
43
43
 
@@ -243,76 +243,76 @@
243
243
 
244
244
  a { color: inherit; text-decoration: none; }
245
245
  }
246
- `.trim();function O(o,l){var $;let s=(l==null?void 0:l.includeStyles)!==false,e=($=l==null?void 0:l.customCSS)!=null?$:"",r=o.sections.filter(a=>a.included),n=x(o.organizationInfo.name||"Organisation"),t=x(o.title||"Privacy Policy"),d=x(o.version||"1.0"),i=o.effectiveDate?new Date(o.effectiveDate).toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}):new Date().toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}),p=o.lastUpdated?new Date(o.lastUpdated).toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}):i,y=o.organizationInfo.website?`<a href="${x(o.organizationInfo.website)}" target="_blank" rel="noopener">${x(o.organizationInfo.website)}</a>`:"",h=o.organizationInfo.privacyEmail?`<a href="mailto:${x(o.organizationInfo.privacyEmail)}">${x(o.organizationInfo.privacyEmail)}</a>`:"",z=`
246
+ `;function G(o){return `${B}${W(o)}${R}`.trim()}function _(o,c){var d,g;let s=(c==null?void 0:c.includeStyles)!==false,e=(d=c==null?void 0:c.customCSS)!=null?d:"",r=(g=c==null?void 0:c.theme)!=null?g:"light",i=o.sections.filter(n=>n.included),t=x(o.organizationInfo.name||"Organisation"),l=x(o.title||"Privacy Policy"),a=x(o.version||"1.0"),m=o.effectiveDate?new Date(o.effectiveDate).toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}):new Date().toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}),y=o.lastUpdated?new Date(o.lastUpdated).toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}):m,u=o.organizationInfo.website?`<a href="${x(o.organizationInfo.website)}" target="_blank" rel="noopener">${x(o.organizationInfo.website)}</a>`:"",b=o.organizationInfo.privacyEmail?`<a href="mailto:${x(o.organizationInfo.privacyEmail)}">${x(o.organizationInfo.privacyEmail)}</a>`:"",$=`
247
247
  <nav class="policy-toc" aria-label="Table of Contents">
248
248
  <h2>Table of Contents</h2>
249
249
  <ol>
250
- ${r.map((a,f)=>` <li><a href="#${k(a.title)}">${x(a.title)}</a></li>`).join(`
250
+ ${i.map((n,v)=>` <li><a href="#${F(n.title)}">${x(n.title)}</a></li>`).join(`
251
251
  `)}
252
252
  </ol>
253
- </nav>`,P=r.map((a,f)=>{let c=k(a.title),w=a.template||a.defaultContent||"",m=I(w);return ` <section class="policy-section" id="${c}" aria-labelledby="section-heading-${c}">
254
- <h2 id="section-heading-${c}">
255
- <span class="section-number" aria-hidden="true">${f+1}</span>
256
- ${x(a.title)}
253
+ </nav>`,w=i.map((n,v)=>{let p=F(n.title),f=n.template||n.defaultContent||"",h=O(f,{variableValues:o.variableValues,organizationInfo:o.organizationInfo}),z=A(h);return ` <section class="policy-section" id="${p}" aria-labelledby="section-heading-${p}">
254
+ <h2 id="section-heading-${p}">
255
+ <span class="section-number" aria-hidden="true">${v+1}</span>
256
+ ${x(n.title)}
257
257
  </h2>
258
- ${m}
258
+ ${z}
259
259
  </section>`}).join(`
260
260
 
261
- `),u=e?e.replace(/<\/style>/gi,""):"",D=s?`<style>
262
- ${A}
263
- ${u?`
261
+ `),P=e?e.replace(/<\/style>/gi,""):"",D=s?`<style>
262
+ ${G(r)}
263
+ ${P?`
264
264
  /* \u2500\u2500 Custom styles \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */
265
- ${u}`:""}
266
- </style>`:u?`<style>${u}</style>`:"";return `<!DOCTYPE html>
265
+ ${P}`:""}
266
+ </style>`:P?`<style>${P}</style>`:"";return `<!DOCTYPE html>
267
267
  <html lang="en">
268
268
  <head>
269
269
  <meta charset="UTF-8" />
270
270
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
271
- <meta name="description" content="Privacy Policy for ${n}" />
271
+ <meta name="description" content="Privacy Policy for ${t}" />
272
272
  <meta name="generator" content="NDPA Toolkit" />
273
- <title>${t} \u2014 ${n}</title>
273
+ <title>${l} \u2014 ${t}</title>
274
274
  ${D}
275
275
  </head>
276
276
  <body>
277
277
  <div class="policy-wrapper">
278
278
 
279
279
  <header class="policy-header">
280
- <h1>${t}</h1>
280
+ <h1>${l}</h1>
281
281
  <div class="policy-meta">
282
- <span><strong>Organisation:</strong> ${n}</span>
283
- <span><strong>Effective:</strong> ${i}</span>
284
- <span><strong>Version:</strong> ${d}</span>
285
- ${p!==i?`<span><strong>Last updated:</strong> ${p}</span>`:""}
282
+ <span><strong>Organisation:</strong> ${t}</span>
283
+ <span><strong>Effective:</strong> ${m}</span>
284
+ <span><strong>Version:</strong> ${a}</span>
285
+ ${y!==m?`<span><strong>Last updated:</strong> ${y}</span>`:""}
286
286
  </div>
287
287
  <div>
288
288
  <span class="compliance-badge" role="img" aria-label="NDPA compliant">&#10003; NDPA 2023 Compliant</span>
289
289
  </div>
290
290
  </header>
291
291
 
292
- ${z}
292
+ ${$}
293
293
 
294
294
  <article class="policy-body" aria-label="Policy content">
295
295
 
296
- ${P}
296
+ ${w}
297
297
 
298
298
  </article>
299
299
 
300
300
  <footer class="policy-footer" role="contentinfo">
301
- <div>${n}${y?` &mdash; ${y}`:""}</div>
302
- ${h?`<div>Privacy contact: ${h}</div>`:""}
303
- <div>Effective ${i} &bull; Version ${d}</div>
301
+ <div>${t}${u?` &mdash; ${u}`:""}</div>
302
+ ${b?`<div>Privacy contact: ${b}</div>`:""}
303
+ <div>Effective ${m} &bull; Version ${a}</div>
304
304
  <div>Generated by <strong>NDPA Toolkit</strong> &mdash; Nigeria Data Protection Act 2023</div>
305
305
  </footer>
306
306
 
307
307
  </div>
308
308
  </body>
309
- </html>`}function H(o){return o.toLowerCase().replace(/[^a-z0-9\s-]/g,"").trim().replace(/\s+/g,"-")}function W(o){let l=o.sections.filter(d=>d.included),s=o.title||"Privacy Policy",e=o.organizationInfo.name||"Organisation",r=o.version||"1.0",n=o.effectiveDate?new Date(o.effectiveDate).toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}):new Date().toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}),t=[];return t.push(`# ${s}`),t.push(""),t.push(`_Effective: ${n} | Version: ${r} | ${e}_`),t.push(""),o.organizationInfo.website&&t.push(`**Website:** ${o.organizationInfo.website} `),o.organizationInfo.privacyEmail&&t.push(`**Privacy contact:** ${o.organizationInfo.privacyEmail} `),(o.organizationInfo.website||o.organizationInfo.privacyEmail)&&t.push(""),t.push("> This privacy policy is compliant with the **Nigeria Data Protection Act (NDPA) 2023**."),t.push(""),t.push("---"),t.push(""),l.length>0&&(t.push("## Table of Contents"),t.push(""),l.forEach((d,i)=>{let p=H(`${i+1} ${d.title}`);t.push(`${i+1}. [${d.title}](#${p})`);}),t.push(""),t.push("---"),t.push("")),l.forEach((d,i)=>{t.push(`## ${i+1}. ${d.title}`),t.push("");let p=(d.template||d.defaultContent||"").trim();if(p){let y=p.split(`
310
- `);for(let h of y){let v=h.trimEnd();v.startsWith("-")||v.startsWith("\u2022")||v===""?t.push(v.replace(/^•/,"-")):t.push(v);}}t.push(""),t.push("---"),t.push("");}),t.push(`_Generated by **NDPA Toolkit** \u2014 ${e} \u2022 Version ${r}_`),t.push(""),t.join(`
311
- `)}function B(o,l){return chunkMQFZHA2D_js.d(this,null,function*(){var $;let s;try{let a=yield import('jspdf');s=($=a.jsPDF)!=null?$:a.default;}catch(a){throw new Error(`[ndpr-toolkit] PDF export requires the "jspdf" package. Install it with:
309
+ </html>`}function j(o){return o.toLowerCase().replace(/[^a-z0-9\s-]/g,"").trim().replace(/\s+/g,"-")}function V(o){let c=o.sections.filter(l=>l.included),s=o.title||"Privacy Policy",e=o.organizationInfo.name||"Organisation",r=o.version||"1.0",i=o.effectiveDate?new Date(o.effectiveDate).toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}):new Date().toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}),t=[];return t.push(`# ${s}`),t.push(""),t.push(`_Effective: ${i} | Version: ${r} | ${e}_`),t.push(""),o.organizationInfo.website&&t.push(`**Website:** ${o.organizationInfo.website} `),o.organizationInfo.privacyEmail&&t.push(`**Privacy contact:** ${o.organizationInfo.privacyEmail} `),(o.organizationInfo.website||o.organizationInfo.privacyEmail)&&t.push(""),t.push("> This privacy policy is compliant with the **Nigeria Data Protection Act (NDPA) 2023**."),t.push(""),t.push("---"),t.push(""),c.length>0&&(t.push("## Table of Contents"),t.push(""),c.forEach((l,a)=>{let m=j(`${a+1} ${l.title}`);t.push(`${a+1}. [${l.title}](#${m})`);}),t.push(""),t.push("---"),t.push("")),c.forEach((l,a)=>{t.push(`## ${a+1}. ${l.title}`),t.push("");let m=(l.template||l.defaultContent||"").trim();if(m){let y=m.split(`
310
+ `);for(let u of y){let b=u.trimEnd();b.startsWith("-")||b.startsWith("\u2022")||b===""?t.push(b.replace(/^•/,"-")):t.push(b);}}t.push(""),t.push("---"),t.push("");}),t.push(`_Generated by **NDPA Toolkit** \u2014 ${e} \u2022 Version ${r}_`),t.push(""),t.join(`
311
+ `)}function M(o,c){return chunkMQFZHA2D_js.d(this,null,function*(){var D;let s;try{let d=yield import('jspdf');s=(D=d.jsPDF)!=null?D:d.default;}catch(d){throw new Error(`[ndpr-toolkit] PDF export requires the "jspdf" package. Install it with:
312
312
  pnpm add jspdf
313
- See: https://ndprtoolkit.com.ng/docs/guides/styling-customization`)}let e=new s({unit:"mm",format:"a4"}),r=e.internal.pageSize.getWidth(),n=e.internal.pageSize.getHeight(),t=20,d=r-t*2,i=t,p=o.organizationInfo.name||"",y=o.title||"Privacy Policy",h=o.version||"1.0",v=o.effectiveDate?new Date(o.effectiveDate).toLocaleDateString():new Date().toLocaleDateString(),z=()=>{e.setFontSize(8),e.setFont("helvetica","italic"),e.setTextColor(150,150,150),e.text(p?`${p} \u2014 ${y}`:y,t,12),e.setDrawColor(220,220,220),e.setLineWidth(.3),e.line(t,14,r-t,14),e.setTextColor(0,0,0);},P=a=>{i+a>n-t-10&&(e.addPage(),i=t+8,z());};if((l==null?void 0:l.includeCoverPage)!==false){e.setFillColor(22,163,74),e.rect(0,0,r,12,"F"),e.setFontSize(28),e.setFont("helvetica","bold"),e.setTextColor(22,163,74);let a=e.splitTextToSize(y,d-10),f=72;a.forEach(w=>{e.text(w,r/2,f,{align:"center"}),f+=11;}),e.setDrawColor(22,163,74),e.setLineWidth(.6);let c=f+6;if(e.line(r/2-30,c,r/2+30,c),e.setFontSize(14),e.setFont("helvetica","normal"),e.setTextColor(40,40,40),e.text(p,r/2,c+14,{align:"center"}),e.setFontSize(10),e.setTextColor(100,100,100),e.text(`Effective Date: ${v}`,r/2,c+26,{align:"center"}),e.text(`Version ${h}`,r/2,c+34,{align:"center"}),(l==null?void 0:l.includeComplianceBadge)!==false){let w=c+52,m="Compliant with the Nigeria Data Protection Act (NDPA) 2023";e.setFontSize(8.5),e.setFont("helvetica","bold"),e.setTextColor(255,255,255);let g=e.getTextWidth(m),b=7,T=3.5,S=(r-g-b*2)/2;e.setFillColor(22,163,74),e.roundedRect(S,w-T-1,g+b*2,7+T,2,2,"F"),e.text(m,r/2,w+1.5,{align:"center"}),e.setTextColor(0,0,0);}e.setFillColor(22,163,74),e.rect(0,n-12,r,12,"F"),e.addPage(),i=t+8,z();}let u=o.sections.filter(a=>a.included);(l==null?void 0:l.includeTOC)!==false&&(e.setFontSize(18),e.setFont("helvetica","bold"),e.setTextColor(22,163,74),e.text("Table of Contents",t,i+4),e.setDrawColor(22,163,74),e.setLineWidth(.5),e.line(t,i+8,t+80,i+8),i+=18,e.setFontSize(10.5),e.setFont("helvetica","normal"),e.setTextColor(40,40,40),u.forEach((a,f)=>{P(7);let c=`${f+1}. ${a.title}`;e.text(c,t+4,i),i+=6.5;}),e.addPage(),i=t+8,z()),u.forEach((a,f)=>{P(18),e.setFillColor(22,163,74),e.circle(t+3.5,i-1.5,3.8,"F"),e.setFontSize(8),e.setFont("helvetica","bold"),e.setTextColor(255,255,255),e.text(String(f+1),t+3.5,i-.5,{align:"center"}),e.setFontSize(13),e.setFont("helvetica","bold"),e.setTextColor(22,163,74),e.text(a.title,t+11,i),i+=3,e.setDrawColor(200,200,200),e.setLineWidth(.25),e.line(t+11,i,r-t,i),i+=6;let c=(a.template||a.defaultContent||"").trim();if(c){let w=c.split(`
314
- `);e.setFontSize(9.5),e.setFont("helvetica","normal"),e.setTextColor(50,50,50),w.forEach(m=>{let g=m.trimEnd();if(g===""){i+=3;return}let b=g.startsWith("-")||g.startsWith("\u2022"),T=b?t+8:t+4,S=b?g.replace(/^[-•]\s*/,""):g,C=d-(b?12:8);e.splitTextToSize(S,C).forEach((E,L)=>{P(5),b&&L===0&&(e.setFillColor(22,163,74),e.circle(t+4,i-1,.9,"F")),e.text(E,T,i),i+=5;});});}i+=10;});let D=e.getNumberOfPages();for(let a=1;a<=D;a++)e.setPage(a),e.setFontSize(7.5),e.setFont("helvetica","normal"),e.setTextColor(160,160,160),e.setDrawColor(220,220,220),e.setLineWidth(.3),e.line(t,n-12,r-t,n-12),e.text(p?`${p} \u2014 Privacy Policy`:"Privacy Policy",t,n-8),e.text(`Page ${a} of ${D}`,r-t,n-8,{align:"right"}),e.setTextColor(0,0,0);return e.setProperties({title:y,author:p,subject:"Privacy Policy \u2014 NDPA 2023 Compliant",keywords:"privacy policy, NDPA, Nigeria, data protection"}),e.output("blob")})}function G(o,l){return chunkMQFZHA2D_js.d(this,null,function*(){let s;try{s=yield import('docx');}catch(m){throw new Error(`[ndpr-toolkit] Word export requires the "docx" package. Install it with:
313
+ See: https://ndprtoolkit.com.ng/docs/guides/styling-customization`)}let e=new s({unit:"mm",format:"a4"}),r=e.internal.pageSize.getWidth(),i=e.internal.pageSize.getHeight(),t=20,l=r-t*2,a=t,m=o.organizationInfo.name||"",y=o.title||"Privacy Policy",u=o.version||"1.0",b=o.effectiveDate?new Date(o.effectiveDate).toLocaleDateString():new Date().toLocaleDateString(),T=()=>{e.setFontSize(8),e.setFont("helvetica","italic"),e.setTextColor(150,150,150),e.text(m?`${m} \u2014 ${y}`:y,t,12),e.setDrawColor(220,220,220),e.setLineWidth(.3),e.line(t,14,r-t,14),e.setTextColor(0,0,0);},$=d=>{a+d>i-t-10&&(e.addPage(),a=t+8,T());};if((c==null?void 0:c.includeCoverPage)!==false){e.setFillColor(22,163,74),e.rect(0,0,r,12,"F"),e.setFontSize(28),e.setFont("helvetica","bold"),e.setTextColor(22,163,74);let d=e.splitTextToSize(y,l-10),g=72;d.forEach(v=>{e.text(v,r/2,g,{align:"center"}),g+=11;}),e.setDrawColor(22,163,74),e.setLineWidth(.6);let n=g+6;if(e.line(r/2-30,n,r/2+30,n),e.setFontSize(14),e.setFont("helvetica","normal"),e.setTextColor(40,40,40),e.text(m,r/2,n+14,{align:"center"}),e.setFontSize(10),e.setTextColor(100,100,100),e.text(`Effective Date: ${b}`,r/2,n+26,{align:"center"}),e.text(`Version ${u}`,r/2,n+34,{align:"center"}),(c==null?void 0:c.includeComplianceBadge)!==false){let v=n+52,p="Compliant with the Nigeria Data Protection Act (NDPA) 2023";e.setFontSize(8.5),e.setFont("helvetica","bold"),e.setTextColor(255,255,255);let f=e.getTextWidth(p),h=7,z=3.5,S=(r-f-h*2)/2;e.setFillColor(22,163,74),e.roundedRect(S,v-z-1,f+h*2,7+z,2,2,"F"),e.text(p,r/2,v+1.5,{align:"center"}),e.setTextColor(0,0,0);}e.setFillColor(22,163,74),e.rect(0,i-12,r,12,"F"),e.addPage(),a=t+8,T();}let w=o.sections.filter(d=>d.included);(c==null?void 0:c.includeTOC)!==false&&(e.setFontSize(18),e.setFont("helvetica","bold"),e.setTextColor(22,163,74),e.text("Table of Contents",t,a+4),e.setDrawColor(22,163,74),e.setLineWidth(.5),e.line(t,a+8,t+80,a+8),a+=18,e.setFontSize(10.5),e.setFont("helvetica","normal"),e.setTextColor(40,40,40),w.forEach((d,g)=>{$(7);let n=`${g+1}. ${d.title}`;e.text(n,t+4,a),a+=6.5;}),e.addPage(),a=t+8,T()),w.forEach((d,g)=>{$(18),e.setFillColor(22,163,74),e.circle(t+3.5,a-1.5,3.8,"F"),e.setFontSize(8),e.setFont("helvetica","bold"),e.setTextColor(255,255,255),e.text(String(g+1),t+3.5,a-.5,{align:"center"}),e.setFontSize(13),e.setFont("helvetica","bold"),e.setTextColor(22,163,74),e.text(d.title,t+11,a),a+=3,e.setDrawColor(200,200,200),e.setLineWidth(.25),e.line(t+11,a,r-t,a),a+=6;let n=(d.template||d.defaultContent||"").trim();if(n){let v=n.split(`
314
+ `);e.setFontSize(9.5),e.setFont("helvetica","normal"),e.setTextColor(50,50,50),v.forEach(p=>{let f=p.trimEnd();if(f===""){a+=3;return}let h=f.startsWith("-")||f.startsWith("\u2022"),z=h?t+8:t+4,S=h?f.replace(/^[-•]\s*/,""):f,C=l-(h?12:8);e.splitTextToSize(S,C).forEach((E,I)=>{$(5),h&&I===0&&(e.setFillColor(22,163,74),e.circle(t+4,a-1,.9,"F")),e.text(E,z,a),a+=5;});});}a+=10;});let P=e.getNumberOfPages();for(let d=1;d<=P;d++)e.setPage(d),e.setFontSize(7.5),e.setFont("helvetica","normal"),e.setTextColor(160,160,160),e.setDrawColor(220,220,220),e.setLineWidth(.3),e.line(t,i-12,r-t,i-12),e.text(m?`${m} \u2014 Privacy Policy`:"Privacy Policy",t,i-8),e.text(`Page ${d} of ${P}`,r-t,i-8,{align:"right"}),e.setTextColor(0,0,0);return e.setProperties({title:y,author:m,subject:"Privacy Policy \u2014 NDPA 2023 Compliant",keywords:"privacy policy, NDPA, Nigeria, data protection"}),e.output("blob")})}function X(o,c){return chunkMQFZHA2D_js.d(this,null,function*(){let s;try{s=yield import('docx');}catch(p){throw new Error(`[ndpr-toolkit] Word export requires the "docx" package. Install it with:
315
315
  pnpm add docx
316
- See: https://ndprtoolkit.com.ng/docs/guides/styling-customization`)}let{Document:e,Paragraph:r,TextRun:n,HeadingLevel:t,Packer:d,Header:i,Footer:p,PageNumber:y,AlignmentType:h,BorderStyle:v,ShadingType:z,TableOfContents:P}=s,u=o.organizationInfo.name||"",D=o.title||"Privacy Policy",$=o.version||"1.0",a=o.effectiveDate?new Date(o.effectiveDate).toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}):new Date().toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}),f=o.sections.filter(m=>m.included),c=[];if(c.push(new r({children:[new n({text:D,bold:true,size:52,color:"064e3b"})],heading:t.TITLE,spacing:{after:160},alignment:h.CENTER})),c.push(new r({children:[new n({text:`${u}${u?" \u2022 ":""}Version ${$} \u2022 Effective ${a}`,size:20,color:"6b7280",italics:true})],spacing:{after:120},alignment:h.CENTER})),c.push(new r({children:[new n({text:"Compliant with the Nigeria Data Protection Act (NDPA) 2023",size:18,color:"16a34a",bold:true})],spacing:{after:400},alignment:h.CENTER})),c.push(new r({children:[],spacing:{after:200},border:{bottom:{color:"16a34a",style:v.SINGLE,size:6,space:1}}})),(l==null?void 0:l.includeTOC)!==false){if(c.push(new r({children:[new n({text:"Table of Contents",bold:true,size:28,color:"064e3b"})],heading:t.HEADING_1,spacing:{before:400,after:200}})),typeof P=="function")try{c.push(new P("Table of Contents",{hyperlink:!0,headingStyleRange:"1-1"}));}catch(m){f.forEach((g,b)=>{c.push(new r({children:[new n({text:`${b+1}. ${g.title}`,size:22,color:"15803d"})],spacing:{after:80}}));});}else f.forEach((m,g)=>{c.push(new r({children:[new n({text:`${g+1}. ${m.title}`,size:22,color:"15803d"})],spacing:{after:80}}));});c.push(new r({children:[],pageBreakBefore:true}));}f.forEach((m,g)=>{c.push(new r({children:[new n({text:`${g+1}. ${m.title}`,bold:true,size:28,color:"064e3b"})],heading:t.HEADING_1,spacing:{before:400,after:200},border:{bottom:{color:"dcfce7",style:v.SINGLE,size:4,space:1}}}));let b=(m.template||m.defaultContent||"").trim();b&&b.split(`
317
- `).forEach(S=>{let C=S.trimEnd();if(C===""){c.push(new r({children:[],spacing:{after:60}}));return}let F=C.startsWith("- ")||C.startsWith("\u2022 "),E=F?C.replace(/^[-•]\s*/,""):C;F?c.push(new r({children:[new n({text:E,size:22})],spacing:{after:80},bullet:{level:0}})):c.push(new r({children:[new n({text:E,size:22})],spacing:{after:100}}));});}),c.push(new r({children:[new n({text:`Generated by NDPA Toolkit \u2014 ${u}${u?" \u2014 ":""}Privacy Policy v${$}`,size:16,color:"9ca3af",italics:true})],spacing:{before:600},alignment:h.CENTER}));let w=new e({title:D,description:"Privacy Policy \u2014 NDPA 2023 Compliant",styles:{paragraphStyles:[{id:"Normal",name:"Normal",run:{font:"Calibri",size:22}}]},sections:[{headers:{default:new i({children:[new r({children:[new n({text:u||"Privacy Policy",size:16,color:"9ca3af"})],alignment:h.RIGHT})]})},footers:{default:new p({children:[new r({children:[new n({text:"Page ",size:16,color:"9ca3af"}),new n({children:[y.CURRENT],size:16,color:"9ca3af"}),new n({text:" of ",size:16,color:"9ca3af"}),new n({children:[y.TOTAL_PAGES],size:16,color:"9ca3af"})],alignment:h.CENTER})]})},children:c}]});return d.toBlob(w)})}exports.a=O;exports.b=W;exports.c=B;exports.d=G;//# sourceMappingURL=chunk-UFPSUO52.js.map
318
- //# sourceMappingURL=chunk-UFPSUO52.js.map
316
+ See: https://ndprtoolkit.com.ng/docs/guides/styling-customization`)}let{Document:e,Paragraph:r,TextRun:i,HeadingLevel:t,Packer:l,Header:a,Footer:m,PageNumber:y,AlignmentType:u,BorderStyle:b,ShadingType:T,TableOfContents:$}=s,w=o.organizationInfo.name||"",P=o.title||"Privacy Policy",D=o.version||"1.0",d=o.effectiveDate?new Date(o.effectiveDate).toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}):new Date().toLocaleDateString("en-NG",{day:"numeric",month:"long",year:"numeric"}),g=o.sections.filter(p=>p.included),n=[];if(n.push(new r({children:[new i({text:P,bold:true,size:52,color:"064e3b"})],heading:t.TITLE,spacing:{after:160},alignment:u.CENTER})),n.push(new r({children:[new i({text:`${w}${w?" \u2022 ":""}Version ${D} \u2022 Effective ${d}`,size:20,color:"6b7280",italics:true})],spacing:{after:120},alignment:u.CENTER})),n.push(new r({children:[new i({text:"Compliant with the Nigeria Data Protection Act (NDPA) 2023",size:18,color:"16a34a",bold:true})],spacing:{after:400},alignment:u.CENTER})),n.push(new r({children:[],spacing:{after:200},border:{bottom:{color:"16a34a",style:b.SINGLE,size:6,space:1}}})),(c==null?void 0:c.includeTOC)!==false){if(n.push(new r({children:[new i({text:"Table of Contents",bold:true,size:28,color:"064e3b"})],heading:t.HEADING_1,spacing:{before:400,after:200}})),typeof $=="function")try{n.push(new $("Table of Contents",{hyperlink:!0,headingStyleRange:"1-1"}));}catch(p){g.forEach((f,h)=>{n.push(new r({children:[new i({text:`${h+1}. ${f.title}`,size:22,color:"15803d"})],spacing:{after:80}}));});}else g.forEach((p,f)=>{n.push(new r({children:[new i({text:`${f+1}. ${p.title}`,size:22,color:"15803d"})],spacing:{after:80}}));});n.push(new r({children:[],pageBreakBefore:true}));}g.forEach((p,f)=>{n.push(new r({children:[new i({text:`${f+1}. ${p.title}`,bold:true,size:28,color:"064e3b"})],heading:t.HEADING_1,spacing:{before:400,after:200},border:{bottom:{color:"dcfce7",style:b.SINGLE,size:4,space:1}}}));let h=(p.template||p.defaultContent||"").trim();h&&h.split(`
317
+ `).forEach(S=>{let C=S.trimEnd();if(C===""){n.push(new r({children:[],spacing:{after:60}}));return}let N=C.startsWith("- ")||C.startsWith("\u2022 "),E=N?C.replace(/^[-•]\s*/,""):C;N?n.push(new r({children:[new i({text:E,size:22})],spacing:{after:80},bullet:{level:0}})):n.push(new r({children:[new i({text:E,size:22})],spacing:{after:100}}));});}),n.push(new r({children:[new i({text:`Generated by NDPA Toolkit \u2014 ${w}${w?" \u2014 ":""}Privacy Policy v${D}`,size:16,color:"9ca3af",italics:true})],spacing:{before:600},alignment:u.CENTER}));let v=new e({title:P,description:"Privacy Policy \u2014 NDPA 2023 Compliant",styles:{paragraphStyles:[{id:"Normal",name:"Normal",run:{font:"Calibri",size:22}}]},sections:[{headers:{default:new a({children:[new r({children:[new i({text:w||"Privacy Policy",size:16,color:"9ca3af"})],alignment:u.RIGHT})]})},footers:{default:new m({children:[new r({children:[new i({text:"Page ",size:16,color:"9ca3af"}),new i({children:[y.CURRENT],size:16,color:"9ca3af"}),new i({text:" of ",size:16,color:"9ca3af"}),new i({children:[y.TOTAL_PAGES],size:16,color:"9ca3af"})],alignment:u.CENTER})]})},children:n}]});return l.toBlob(v)})}exports.a=_;exports.b=V;exports.c=M;exports.d=X;//# sourceMappingURL=chunk-Z73T6MWY.js.map
318
+ //# sourceMappingURL=chunk-Z73T6MWY.js.map
package/dist/consent.js CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  'use strict';var chunk3NQQSU4P_js=require('./chunk-3NQQSU4P.js'),chunkRLYTX3MM_js=require('./chunk-RLYTX3MM.js'),chunkSUEGUY35_js=require('./chunk-SUEGUY35.js'),chunkMJGOLP5M_js=require('./chunk-MJGOLP5M.js'),chunk7SMLHZ4B_js=require('./chunk-7SMLHZ4B.js');require('./chunk-A4PK7JB2.js');var chunkHO5M7M4M_js=require('./chunk-HO5M7M4M.js'),chunkE64TU6IU_js=require('./chunk-E64TU6IU.js');require('./chunk-ELKB2AFZ.js');var chunkMQFZHA2D_js=require('./chunk-MQFZHA2D.js'),react=require('react'),jsxRuntime=require('react/jsx-runtime');var S=react.createContext(null);function p(){let t=react.useContext(S);if(!t)throw new Error("Consent compound components must be wrapped in <Consent.Provider>. Example: <Consent.Provider options={...}><Consent.Banner /></Consent.Provider>");return t}var x=({options:t,adapter:n,version:s,onChange:r,children:c})=>{let C=chunk7SMLHZ4B_js.a({options:t,adapter:n,version:s,onChange:r}),o=chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},C),{options:t});return jsxRuntime.jsx(S.Provider,{value:o,children:c})};var v=({classNames:t,unstyled:n})=>{let{options:s,settings:r}=p(),[c,C]=react.useState(()=>{let o={};return s.forEach(i=>{var a,_;o[i.id]=(_=(a=r==null?void 0:r.consents[i.id])!=null?a:i.defaultValue)!=null?_:false;}),o});return jsxRuntime.jsx("div",{className:chunkE64TU6IU_js.a("ndpr-consent-banner__options-list",t==null?void 0:t.root,n),"data-ndpr-component":"consent-option-list",children:s.map(o=>jsxRuntime.jsxs("div",{className:chunkE64TU6IU_js.a("ndpr-consent-banner__option",t==null?void 0:t.optionItem,n),children:[jsxRuntime.jsx("input",{id:`consent-${o.id}`,type:"checkbox",checked:c[o.id]||false,onChange:i=>C(a=>chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},a),{[o.id]:i.target.checked})),disabled:o.required,className:chunkE64TU6IU_js.a("ndpr-consent-banner__option-checkbox",t==null?void 0:t.optionCheckbox,n),"aria-label":o.label}),jsxRuntime.jsxs("div",{className:n?"":"ndpr-consent-banner__option-text",children:[jsxRuntime.jsxs("label",{htmlFor:`consent-${o.id}`,className:chunkE64TU6IU_js.a("ndpr-consent-banner__option-label",t==null?void 0:t.optionLabel,n),children:[o.label,o.required&&jsxRuntime.jsx("span",{className:n?"":"ndpr-consent-banner__required-marker",children:" *"})]}),jsxRuntime.jsx("p",{className:chunkE64TU6IU_js.a("ndpr-consent-banner__option-description",t==null?void 0:t.optionDescription,n),children:o.description})]})]},o.id))})};var g=({children:t,className:n,unstyled:s})=>{let{acceptAll:r}=p();return jsxRuntime.jsx("button",{onClick:r,className:chunkE64TU6IU_js.a("ndpr-consent-banner__button ndpr-consent-banner__button--primary",n,s),"data-ndpr-component":"consent-accept-button",children:t!=null?t:"Accept All"})};var B=({children:t,className:n,unstyled:s})=>{let{rejectAll:r}=p();return jsxRuntime.jsx("button",{onClick:r,className:chunkE64TU6IU_js.a("ndpr-consent-banner__button ndpr-consent-banner__button--secondary",n,s),"data-ndpr-component":"consent-reject-button",children:t!=null?t:"Reject All"})};var P=({children:t,className:n,unstyled:s,consents:r})=>{let{updateConsent:c,options:C}=p();return jsxRuntime.jsx("button",{onClick:()=>{if(r)c(r);else {let i={};C.forEach(a=>{i[a.id]=a.required||false;}),c(i);}},className:chunkE64TU6IU_js.a("ndpr-consent-banner__button ndpr-consent-banner__button--primary",n,s),"data-ndpr-component":"consent-save-button",children:t!=null?t:"Save Preferences"})};var I={Provider:x,OptionList:v,AcceptButton:g,RejectButton:B,SaveButton:P,Banner:chunkSUEGUY35_js.a,Settings:chunkRLYTX3MM_js.a,Storage:chunk3NQQSU4P_js.a};Object.defineProperty(exports,"ConsentStorage",{enumerable:true,get:function(){return chunk3NQQSU4P_js.a}});Object.defineProperty(exports,"ConsentManager",{enumerable:true,get:function(){return chunkRLYTX3MM_js.a}});Object.defineProperty(exports,"ConsentBanner",{enumerable:true,get:function(){return chunkSUEGUY35_js.a}});Object.defineProperty(exports,"appendAuditEntry",{enumerable:true,get:function(){return chunkMJGOLP5M_js.c}});Object.defineProperty(exports,"createAuditEntry",{enumerable:true,get:function(){return chunkMJGOLP5M_js.a}});Object.defineProperty(exports,"getAuditLog",{enumerable:true,get:function(){return chunkMJGOLP5M_js.b}});Object.defineProperty(exports,"useConsent",{enumerable:true,get:function(){return chunk7SMLHZ4B_js.a}});Object.defineProperty(exports,"validateConsent",{enumerable:true,get:function(){return chunkHO5M7M4M_js.a}});Object.defineProperty(exports,"validateConsentOptions",{enumerable:true,get:function(){return chunkHO5M7M4M_js.b}});Object.defineProperty(exports,"resolveClass",{enumerable:true,get:function(){return chunkE64TU6IU_js.a}});exports.Consent=I;exports.ConsentAcceptButton=g;exports.ConsentOptionList=v;exports.ConsentProvider=x;exports.ConsentRejectButton=B;exports.ConsentSaveButton=P;exports.useConsentCompound=p;//# sourceMappingURL=consent.js.map
2
3
  //# sourceMappingURL=consent.js.map
package/dist/consent.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  import {a}from'./chunk-IZCWCE7W.mjs';export{a as ConsentStorage}from'./chunk-IZCWCE7W.mjs';import {a as a$1}from'./chunk-EPT2K355.mjs';export{a as ConsentManager}from'./chunk-EPT2K355.mjs';import {a as a$2}from'./chunk-BN77GP4W.mjs';export{a as ConsentBanner}from'./chunk-BN77GP4W.mjs';export{c as appendAuditEntry,a as createAuditEntry,b as getAuditLog}from'./chunk-P3PULLYP.mjs';import {a as a$3}from'./chunk-VWPGIES4.mjs';export{a as useConsent}from'./chunk-VWPGIES4.mjs';import'./chunk-R3OYAJI6.mjs';export{a as validateConsent,b as validateConsentOptions}from'./chunk-U62QYKVG.mjs';import {a as a$5}from'./chunk-AYKLAEOU.mjs';export{a as resolveClass}from'./chunk-AYKLAEOU.mjs';import'./chunk-6WIP33TW.mjs';import {b,a as a$4}from'./chunk-WWT2ZSNU.mjs';import {createContext,useContext,useState}from'react';import {jsx,jsxs}from'react/jsx-runtime';var S=createContext(null);function p(){let t=useContext(S);if(!t)throw new Error("Consent compound components must be wrapped in <Consent.Provider>. Example: <Consent.Provider options={...}><Consent.Banner /></Consent.Provider>");return t}var x=({options:t,adapter:n,version:s,onChange:r,children:c})=>{let C=a$3({options:t,adapter:n,version:s,onChange:r}),o=b(a$4({},C),{options:t});return jsx(S.Provider,{value:o,children:c})};var v=({classNames:t,unstyled:n})=>{let{options:s,settings:r}=p(),[c,C]=useState(()=>{let o={};return s.forEach(i=>{var a,_;o[i.id]=(_=(a=r==null?void 0:r.consents[i.id])!=null?a:i.defaultValue)!=null?_:false;}),o});return jsx("div",{className:a$5("ndpr-consent-banner__options-list",t==null?void 0:t.root,n),"data-ndpr-component":"consent-option-list",children:s.map(o=>jsxs("div",{className:a$5("ndpr-consent-banner__option",t==null?void 0:t.optionItem,n),children:[jsx("input",{id:`consent-${o.id}`,type:"checkbox",checked:c[o.id]||false,onChange:i=>C(a=>b(a$4({},a),{[o.id]:i.target.checked})),disabled:o.required,className:a$5("ndpr-consent-banner__option-checkbox",t==null?void 0:t.optionCheckbox,n),"aria-label":o.label}),jsxs("div",{className:n?"":"ndpr-consent-banner__option-text",children:[jsxs("label",{htmlFor:`consent-${o.id}`,className:a$5("ndpr-consent-banner__option-label",t==null?void 0:t.optionLabel,n),children:[o.label,o.required&&jsx("span",{className:n?"":"ndpr-consent-banner__required-marker",children:" *"})]}),jsx("p",{className:a$5("ndpr-consent-banner__option-description",t==null?void 0:t.optionDescription,n),children:o.description})]})]},o.id))})};var g=({children:t,className:n,unstyled:s})=>{let{acceptAll:r}=p();return jsx("button",{onClick:r,className:a$5("ndpr-consent-banner__button ndpr-consent-banner__button--primary",n,s),"data-ndpr-component":"consent-accept-button",children:t!=null?t:"Accept All"})};var B=({children:t,className:n,unstyled:s})=>{let{rejectAll:r}=p();return jsx("button",{onClick:r,className:a$5("ndpr-consent-banner__button ndpr-consent-banner__button--secondary",n,s),"data-ndpr-component":"consent-reject-button",children:t!=null?t:"Reject All"})};var P=({children:t,className:n,unstyled:s,consents:r})=>{let{updateConsent:c,options:C}=p();return jsx("button",{onClick:()=>{if(r)c(r);else {let i={};C.forEach(a=>{i[a.id]=a.required||false;}),c(i);}},className:a$5("ndpr-consent-banner__button ndpr-consent-banner__button--primary",n,s),"data-ndpr-component":"consent-save-button",children:t!=null?t:"Save Preferences"})};var I={Provider:x,OptionList:v,AcceptButton:g,RejectButton:B,SaveButton:P,Banner:a$2,Settings:a$1,Storage:a};export{I as Consent,g as ConsentAcceptButton,v as ConsentOptionList,x as ConsentProvider,B as ConsentRejectButton,P as ConsentSaveButton,p as useConsentCompound};//# sourceMappingURL=consent.mjs.map
2
3
  //# sourceMappingURL=consent.mjs.map
package/dist/core.d.mts CHANGED
@@ -17,7 +17,7 @@ export { f as formatDSRRequest } from './dsr-XZ_HqTlA.mjs';
17
17
  export { a as assessDPIARisk } from './dpia-DQDFw2_l.mjs';
18
18
  export { c as calculateBreachSeverity } from './breach-B_-6lDqS.mjs';
19
19
  export { D as DEFAULT_POLICY_SECTIONS, a as DEFAULT_POLICY_VARIABLES, c as createBusinessPolicyTemplate, f as findUnfilledTokens, g as generatePolicyText } from './policy-templates-DwYl2329.mjs';
20
- export { C as ComplianceGap, a as ComplianceResult, b as CustomSection, D as DataCategory, P as PolicyDraft, T as TemplateContext, c as ThirdPartyProcessor, d as createDefaultContext } from './policy-engine-fYSqEqSW.mjs';
21
- export { a as assemblePolicy, e as evaluatePolicyCompliance } from './policy-sections-Dm97Nq8m.mjs';
20
+ export { C as ComplianceGap, a as ComplianceResult, b as CustomSection, D as DataCategory, P as PolicyDraft, T as TemplateContext, c as ThirdPartyProcessor, d as createDefaultContext } from './policy-engine-5qTfp2z4.mjs';
21
+ export { a as assemblePolicy, e as evaluatePolicyCompliance } from './policy-sections-CBWcJv-R.mjs';
22
22
  export { C as ComplianceInput, a as ComplianceRating, b as ComplianceReport, E as EffortLevel, M as ModuleScore, R as Recommendation, c as RecommendationPriority, d as RegulatoryReference, g as getComplianceScore } from './compliance-score-racQe_E_.mjs';
23
23
  import 'react';
package/dist/core.d.ts CHANGED
@@ -17,7 +17,7 @@ export { f as formatDSRRequest } from './dsr-CIx5sd7e.js';
17
17
  export { a as assessDPIARisk } from './dpia-D82hUrJe.js';
18
18
  export { c as calculateBreachSeverity } from './breach-CzXqSsaY.js';
19
19
  export { D as DEFAULT_POLICY_SECTIONS, a as DEFAULT_POLICY_VARIABLES, c as createBusinessPolicyTemplate, f as findUnfilledTokens, g as generatePolicyText } from './policy-templates-DhLwq4R-.js';
20
- export { C as ComplianceGap, a as ComplianceResult, b as CustomSection, D as DataCategory, P as PolicyDraft, T as TemplateContext, c as ThirdPartyProcessor, d as createDefaultContext } from './policy-engine-CCUCud2T.js';
21
- export { a as assemblePolicy, e as evaluatePolicyCompliance } from './policy-sections-BYx6fEFk.js';
20
+ export { C as ComplianceGap, a as ComplianceResult, b as CustomSection, D as DataCategory, P as PolicyDraft, T as TemplateContext, c as ThirdPartyProcessor, d as createDefaultContext } from './policy-engine-DzPxskOK.js';
21
+ export { a as assemblePolicy, e as evaluatePolicyCompliance } from './policy-sections-9tCb7VU7.js';
22
22
  export { C as ComplianceInput, a as ComplianceRating, b as ComplianceReport, E as EffortLevel, M as ModuleScore, R as Recommendation, c as RecommendationPriority, d as RegulatoryReference, g as getComplianceScore } from './compliance-score-racQe_E_.js';
23
23
  import 'react';
package/dist/core.js CHANGED
@@ -1,2 +1,2 @@
1
- 'use strict';var chunkRXL6CZAI_js=require('./chunk-RXL6CZAI.js'),chunk6QPRDQZF_js=require('./chunk-6QPRDQZF.js'),chunkC5QO3SX4_js=require('./chunk-C5QO3SX4.js'),chunkRNTNHVKZ_js=require('./chunk-RNTNHVKZ.js'),chunkP2YV6DR3_js=require('./chunk-P2YV6DR3.js'),chunkS4GRSNB4_js=require('./chunk-S4GRSNB4.js'),chunkAHSMDPG5_js=require('./chunk-AHSMDPG5.js'),chunkTDDAYVKK_js=require('./chunk-TDDAYVKK.js'),chunkC4YM4UMI_js=require('./chunk-C4YM4UMI.js'),chunkGOU6FU6Y_js=require('./chunk-GOU6FU6Y.js'),chunkMJGOLP5M_js=require('./chunk-MJGOLP5M.js'),chunkHO5M7M4M_js=require('./chunk-HO5M7M4M.js'),chunkJKKRPS4P_js=require('./chunk-JKKRPS4P.js'),chunkP42Z5CFE_js=require('./chunk-P42Z5CFE.js'),chunkBKRETVJ6_js=require('./chunk-BKRETVJ6.js'),chunkI54CDQGN_js=require('./chunk-I54CDQGN.js');require('./chunk-MQFZHA2D.js');Object.defineProperty(exports,"NDPRProvider",{enumerable:true,get:function(){return chunkRXL6CZAI_js.a}});Object.defineProperty(exports,"useNDPRConfig",{enumerable:true,get:function(){return chunkRXL6CZAI_js.b}});Object.defineProperty(exports,"useNDPRLocale",{enumerable:true,get:function(){return chunkRXL6CZAI_js.c}});Object.defineProperty(exports,"hausaLocale",{enumerable:true,get:function(){return chunk6QPRDQZF_js.c}});Object.defineProperty(exports,"igboLocale",{enumerable:true,get:function(){return chunk6QPRDQZF_js.b}});Object.defineProperty(exports,"pidginLocale",{enumerable:true,get:function(){return chunk6QPRDQZF_js.d}});Object.defineProperty(exports,"yorubaLocale",{enumerable:true,get:function(){return chunk6QPRDQZF_js.a}});Object.defineProperty(exports,"defaultLocale",{enumerable:true,get:function(){return chunkC5QO3SX4_js.a}});Object.defineProperty(exports,"mergeLocale",{enumerable:true,get:function(){return chunkC5QO3SX4_js.b}});Object.defineProperty(exports,"createDefaultContext",{enumerable:true,get:function(){return chunkRNTNHVKZ_js.b}});Object.defineProperty(exports,"evaluatePolicyCompliance",{enumerable:true,get:function(){return chunkRNTNHVKZ_js.c}});Object.defineProperty(exports,"DEFAULT_POLICY_SECTIONS",{enumerable:true,get:function(){return chunkP2YV6DR3_js.c}});Object.defineProperty(exports,"DEFAULT_POLICY_VARIABLES",{enumerable:true,get:function(){return chunkP2YV6DR3_js.d}});Object.defineProperty(exports,"createBusinessPolicyTemplate",{enumerable:true,get:function(){return chunkP2YV6DR3_js.e}});Object.defineProperty(exports,"findUnfilledTokens",{enumerable:true,get:function(){return chunkP2YV6DR3_js.a}});Object.defineProperty(exports,"generatePolicyText",{enumerable:true,get:function(){return chunkP2YV6DR3_js.b}});Object.defineProperty(exports,"getComplianceScore",{enumerable:true,get:function(){return chunkS4GRSNB4_js.a}});Object.defineProperty(exports,"assemblePolicy",{enumerable:true,get:function(){return chunkAHSMDPG5_js.c}});Object.defineProperty(exports,"assessComplianceGaps",{enumerable:true,get:function(){return chunkTDDAYVKK_js.c}});Object.defineProperty(exports,"generateLawfulBasisSummary",{enumerable:true,get:function(){return chunkTDDAYVKK_js.d}});Object.defineProperty(exports,"getLawfulBasisDescription",{enumerable:true,get:function(){return chunkTDDAYVKK_js.b}});Object.defineProperty(exports,"validateProcessingActivity",{enumerable:true,get:function(){return chunkTDDAYVKK_js.a}});Object.defineProperty(exports,"assessTransferRisk",{enumerable:true,get:function(){return chunkC4YM4UMI_js.h}});Object.defineProperty(exports,"getTransferMechanismDescription",{enumerable:true,get:function(){return chunkC4YM4UMI_js.f}});Object.defineProperty(exports,"isNDPCApprovalRequired",{enumerable:true,get:function(){return chunkC4YM4UMI_js.e}});Object.defineProperty(exports,"validateTransfer",{enumerable:true,get:function(){return chunkC4YM4UMI_js.g}});Object.defineProperty(exports,"exportROPAToCSV",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.c}});Object.defineProperty(exports,"generateROPASummary",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.b}});Object.defineProperty(exports,"identifyComplianceGaps",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.d}});Object.defineProperty(exports,"validateProcessingRecord",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.a}});Object.defineProperty(exports,"appendAuditEntry",{enumerable:true,get:function(){return chunkMJGOLP5M_js.c}});Object.defineProperty(exports,"createAuditEntry",{enumerable:true,get:function(){return chunkMJGOLP5M_js.a}});Object.defineProperty(exports,"getAuditLog",{enumerable:true,get:function(){return chunkMJGOLP5M_js.b}});Object.defineProperty(exports,"validateConsent",{enumerable:true,get:function(){return chunkHO5M7M4M_js.a}});Object.defineProperty(exports,"validateConsentOptions",{enumerable:true,get:function(){return chunkHO5M7M4M_js.b}});Object.defineProperty(exports,"formatDSRRequest",{enumerable:true,get:function(){return chunkJKKRPS4P_js.a}});Object.defineProperty(exports,"assessDPIARisk",{enumerable:true,get:function(){return chunkP42Z5CFE_js.a}});Object.defineProperty(exports,"calculateBreachSeverity",{enumerable:true,get:function(){return chunkBKRETVJ6_js.a}});Object.defineProperty(exports,"sanitizeInput",{enumerable:true,get:function(){return chunkI54CDQGN_js.a}});//# sourceMappingURL=core.js.map
1
+ 'use strict';var chunkRXL6CZAI_js=require('./chunk-RXL6CZAI.js'),chunk6QPRDQZF_js=require('./chunk-6QPRDQZF.js'),chunkC5QO3SX4_js=require('./chunk-C5QO3SX4.js'),chunkYPKUHSK4_js=require('./chunk-YPKUHSK4.js'),chunkP2YV6DR3_js=require('./chunk-P2YV6DR3.js'),chunkS4GRSNB4_js=require('./chunk-S4GRSNB4.js'),chunkAHSMDPG5_js=require('./chunk-AHSMDPG5.js'),chunkTDDAYVKK_js=require('./chunk-TDDAYVKK.js'),chunkC4YM4UMI_js=require('./chunk-C4YM4UMI.js'),chunkGOU6FU6Y_js=require('./chunk-GOU6FU6Y.js'),chunkMJGOLP5M_js=require('./chunk-MJGOLP5M.js'),chunkHO5M7M4M_js=require('./chunk-HO5M7M4M.js'),chunkJKKRPS4P_js=require('./chunk-JKKRPS4P.js'),chunkP42Z5CFE_js=require('./chunk-P42Z5CFE.js'),chunkBKRETVJ6_js=require('./chunk-BKRETVJ6.js'),chunkI54CDQGN_js=require('./chunk-I54CDQGN.js');require('./chunk-MQFZHA2D.js');Object.defineProperty(exports,"NDPRProvider",{enumerable:true,get:function(){return chunkRXL6CZAI_js.a}});Object.defineProperty(exports,"useNDPRConfig",{enumerable:true,get:function(){return chunkRXL6CZAI_js.b}});Object.defineProperty(exports,"useNDPRLocale",{enumerable:true,get:function(){return chunkRXL6CZAI_js.c}});Object.defineProperty(exports,"hausaLocale",{enumerable:true,get:function(){return chunk6QPRDQZF_js.c}});Object.defineProperty(exports,"igboLocale",{enumerable:true,get:function(){return chunk6QPRDQZF_js.b}});Object.defineProperty(exports,"pidginLocale",{enumerable:true,get:function(){return chunk6QPRDQZF_js.d}});Object.defineProperty(exports,"yorubaLocale",{enumerable:true,get:function(){return chunk6QPRDQZF_js.a}});Object.defineProperty(exports,"defaultLocale",{enumerable:true,get:function(){return chunkC5QO3SX4_js.a}});Object.defineProperty(exports,"mergeLocale",{enumerable:true,get:function(){return chunkC5QO3SX4_js.b}});Object.defineProperty(exports,"createDefaultContext",{enumerable:true,get:function(){return chunkYPKUHSK4_js.b}});Object.defineProperty(exports,"evaluatePolicyCompliance",{enumerable:true,get:function(){return chunkYPKUHSK4_js.c}});Object.defineProperty(exports,"DEFAULT_POLICY_SECTIONS",{enumerable:true,get:function(){return chunkP2YV6DR3_js.c}});Object.defineProperty(exports,"DEFAULT_POLICY_VARIABLES",{enumerable:true,get:function(){return chunkP2YV6DR3_js.d}});Object.defineProperty(exports,"createBusinessPolicyTemplate",{enumerable:true,get:function(){return chunkP2YV6DR3_js.e}});Object.defineProperty(exports,"findUnfilledTokens",{enumerable:true,get:function(){return chunkP2YV6DR3_js.a}});Object.defineProperty(exports,"generatePolicyText",{enumerable:true,get:function(){return chunkP2YV6DR3_js.b}});Object.defineProperty(exports,"getComplianceScore",{enumerable:true,get:function(){return chunkS4GRSNB4_js.a}});Object.defineProperty(exports,"assemblePolicy",{enumerable:true,get:function(){return chunkAHSMDPG5_js.c}});Object.defineProperty(exports,"assessComplianceGaps",{enumerable:true,get:function(){return chunkTDDAYVKK_js.c}});Object.defineProperty(exports,"generateLawfulBasisSummary",{enumerable:true,get:function(){return chunkTDDAYVKK_js.d}});Object.defineProperty(exports,"getLawfulBasisDescription",{enumerable:true,get:function(){return chunkTDDAYVKK_js.b}});Object.defineProperty(exports,"validateProcessingActivity",{enumerable:true,get:function(){return chunkTDDAYVKK_js.a}});Object.defineProperty(exports,"assessTransferRisk",{enumerable:true,get:function(){return chunkC4YM4UMI_js.h}});Object.defineProperty(exports,"getTransferMechanismDescription",{enumerable:true,get:function(){return chunkC4YM4UMI_js.f}});Object.defineProperty(exports,"isNDPCApprovalRequired",{enumerable:true,get:function(){return chunkC4YM4UMI_js.e}});Object.defineProperty(exports,"validateTransfer",{enumerable:true,get:function(){return chunkC4YM4UMI_js.g}});Object.defineProperty(exports,"exportROPAToCSV",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.c}});Object.defineProperty(exports,"generateROPASummary",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.b}});Object.defineProperty(exports,"identifyComplianceGaps",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.d}});Object.defineProperty(exports,"validateProcessingRecord",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.a}});Object.defineProperty(exports,"appendAuditEntry",{enumerable:true,get:function(){return chunkMJGOLP5M_js.c}});Object.defineProperty(exports,"createAuditEntry",{enumerable:true,get:function(){return chunkMJGOLP5M_js.a}});Object.defineProperty(exports,"getAuditLog",{enumerable:true,get:function(){return chunkMJGOLP5M_js.b}});Object.defineProperty(exports,"validateConsent",{enumerable:true,get:function(){return chunkHO5M7M4M_js.a}});Object.defineProperty(exports,"validateConsentOptions",{enumerable:true,get:function(){return chunkHO5M7M4M_js.b}});Object.defineProperty(exports,"formatDSRRequest",{enumerable:true,get:function(){return chunkJKKRPS4P_js.a}});Object.defineProperty(exports,"assessDPIARisk",{enumerable:true,get:function(){return chunkP42Z5CFE_js.a}});Object.defineProperty(exports,"calculateBreachSeverity",{enumerable:true,get:function(){return chunkBKRETVJ6_js.a}});Object.defineProperty(exports,"sanitizeInput",{enumerable:true,get:function(){return chunkI54CDQGN_js.a}});//# sourceMappingURL=core.js.map
2
2
  //# sourceMappingURL=core.js.map
package/dist/core.mjs CHANGED
@@ -1,2 +1,2 @@
1
- export{a as NDPRProvider,b as useNDPRConfig,c as useNDPRLocale}from'./chunk-74Z23WUA.mjs';export{c as hausaLocale,b as igboLocale,d as pidginLocale,a as yorubaLocale}from'./chunk-R5FW5XUQ.mjs';export{a as defaultLocale,b as mergeLocale}from'./chunk-XHROISIF.mjs';export{b as createDefaultContext,c as evaluatePolicyCompliance}from'./chunk-MG73MOZC.mjs';export{c as DEFAULT_POLICY_SECTIONS,d as DEFAULT_POLICY_VARIABLES,e as createBusinessPolicyTemplate,a as findUnfilledTokens,b as generatePolicyText}from'./chunk-LSCMXAPY.mjs';export{a as getComplianceScore}from'./chunk-ABDB7LEV.mjs';export{c as assemblePolicy}from'./chunk-ZLSWOFAY.mjs';export{c as assessComplianceGaps,d as generateLawfulBasisSummary,b as getLawfulBasisDescription,a as validateProcessingActivity}from'./chunk-TXBZPCGF.mjs';export{h as assessTransferRisk,f as getTransferMechanismDescription,e as isNDPCApprovalRequired,g as validateTransfer}from'./chunk-75TJPK2N.mjs';export{c as exportROPAToCSV,b as generateROPASummary,d as identifyComplianceGaps,a as validateProcessingRecord}from'./chunk-SHMJNRHO.mjs';export{c as appendAuditEntry,a as createAuditEntry,b as getAuditLog}from'./chunk-P3PULLYP.mjs';export{a as validateConsent,b as validateConsentOptions}from'./chunk-U62QYKVG.mjs';export{a as formatDSRRequest}from'./chunk-7D2OIPHH.mjs';export{a as assessDPIARisk}from'./chunk-6TA2MVTU.mjs';export{a as calculateBreachSeverity}from'./chunk-DJGS7SSN.mjs';export{a as sanitizeInput}from'./chunk-GKKAK6ES.mjs';import'./chunk-WWT2ZSNU.mjs';//# sourceMappingURL=core.mjs.map
1
+ export{a as NDPRProvider,b as useNDPRConfig,c as useNDPRLocale}from'./chunk-74Z23WUA.mjs';export{c as hausaLocale,b as igboLocale,d as pidginLocale,a as yorubaLocale}from'./chunk-R5FW5XUQ.mjs';export{a as defaultLocale,b as mergeLocale}from'./chunk-XHROISIF.mjs';export{b as createDefaultContext,c as evaluatePolicyCompliance}from'./chunk-I557S566.mjs';export{c as DEFAULT_POLICY_SECTIONS,d as DEFAULT_POLICY_VARIABLES,e as createBusinessPolicyTemplate,a as findUnfilledTokens,b as generatePolicyText}from'./chunk-LSCMXAPY.mjs';export{a as getComplianceScore}from'./chunk-ABDB7LEV.mjs';export{c as assemblePolicy}from'./chunk-ZLSWOFAY.mjs';export{c as assessComplianceGaps,d as generateLawfulBasisSummary,b as getLawfulBasisDescription,a as validateProcessingActivity}from'./chunk-TXBZPCGF.mjs';export{h as assessTransferRisk,f as getTransferMechanismDescription,e as isNDPCApprovalRequired,g as validateTransfer}from'./chunk-75TJPK2N.mjs';export{c as exportROPAToCSV,b as generateROPASummary,d as identifyComplianceGaps,a as validateProcessingRecord}from'./chunk-SHMJNRHO.mjs';export{c as appendAuditEntry,a as createAuditEntry,b as getAuditLog}from'./chunk-P3PULLYP.mjs';export{a as validateConsent,b as validateConsentOptions}from'./chunk-U62QYKVG.mjs';export{a as formatDSRRequest}from'./chunk-7D2OIPHH.mjs';export{a as assessDPIARisk}from'./chunk-6TA2MVTU.mjs';export{a as calculateBreachSeverity}from'./chunk-DJGS7SSN.mjs';export{a as sanitizeInput}from'./chunk-GKKAK6ES.mjs';import'./chunk-WWT2ZSNU.mjs';//# sourceMappingURL=core.mjs.map
2
2
  //# sourceMappingURL=core.mjs.map
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  'use strict';var chunkNQNFS3QI_js=require('./chunk-NQNFS3QI.js'),chunkMCWV7S2G_js=require('./chunk-MCWV7S2G.js'),chunkC4YM4UMI_js=require('./chunk-C4YM4UMI.js');require('./chunk-E64TU6IU.js'),require('./chunk-ELKB2AFZ.js'),require('./chunk-MQFZHA2D.js');var react=require('react'),jsxRuntime=require('react/jsx-runtime');var t=react.createContext(null);function A(){let r=react.useContext(t);if(!r)throw new Error("CrossBorder compound components must be wrapped in <CrossBorder.Provider>. Example: <CrossBorder.Provider><CrossBorder.Manager /></CrossBorder.Provider>");return r}var e=({adapter:r,storageKey:d,useLocalStorage:a,initialTransfers:n,onAdd:p,onUpdate:C,onRemove:f,children:i})=>{let m=chunkMCWV7S2G_js.a({adapter:r,storageKey:d,useLocalStorage:a,initialTransfers:n,onAdd:p,onUpdate:C,onRemove:f});return jsxRuntime.jsx(t.Provider,{value:m,children:i})};var q={Provider:e,Manager:chunkNQNFS3QI_js.a};Object.defineProperty(exports,"CrossBorderTransferManager",{enumerable:true,get:function(){return chunkNQNFS3QI_js.a}});Object.defineProperty(exports,"useCrossBorderTransfer",{enumerable:true,get:function(){return chunkMCWV7S2G_js.a}});Object.defineProperty(exports,"COUNTRY_ADEQUACY_MAP",{enumerable:true,get:function(){return chunkC4YM4UMI_js.a}});Object.defineProperty(exports,"assessTransferRisk",{enumerable:true,get:function(){return chunkC4YM4UMI_js.h}});Object.defineProperty(exports,"getAdequateCountries",{enumerable:true,get:function(){return chunkC4YM4UMI_js.c}});Object.defineProperty(exports,"getCountryAdequacy",{enumerable:true,get:function(){return chunkC4YM4UMI_js.b}});Object.defineProperty(exports,"getTransferMechanismDescription",{enumerable:true,get:function(){return chunkC4YM4UMI_js.f}});Object.defineProperty(exports,"isNDPCApprovalRequired",{enumerable:true,get:function(){return chunkC4YM4UMI_js.e}});Object.defineProperty(exports,"requiresNDPCApproval",{enumerable:true,get:function(){return chunkC4YM4UMI_js.d}});Object.defineProperty(exports,"validateTransfer",{enumerable:true,get:function(){return chunkC4YM4UMI_js.g}});exports.CrossBorder=q;exports.CrossBorderProvider=e;exports.useCrossBorderCompound=A;//# sourceMappingURL=cross-border.js.map
2
3
  //# sourceMappingURL=cross-border.js.map
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  import {a}from'./chunk-SYMQJO2W.mjs';export{a as CrossBorderTransferManager}from'./chunk-SYMQJO2W.mjs';import {a as a$1}from'./chunk-Z6IIMLZU.mjs';export{a as useCrossBorderTransfer}from'./chunk-Z6IIMLZU.mjs';export{a as COUNTRY_ADEQUACY_MAP,h as assessTransferRisk,c as getAdequateCountries,b as getCountryAdequacy,f as getTransferMechanismDescription,e as isNDPCApprovalRequired,d as requiresNDPCApproval,g as validateTransfer}from'./chunk-75TJPK2N.mjs';import'./chunk-AYKLAEOU.mjs';import'./chunk-6WIP33TW.mjs';import'./chunk-WWT2ZSNU.mjs';import {createContext,useContext}from'react';import {jsx}from'react/jsx-runtime';var t=createContext(null);function A(){let r=useContext(t);if(!r)throw new Error("CrossBorder compound components must be wrapped in <CrossBorder.Provider>. Example: <CrossBorder.Provider><CrossBorder.Manager /></CrossBorder.Provider>");return r}var e=({adapter:r,storageKey:d,useLocalStorage:a,initialTransfers:n,onAdd:p,onUpdate:C,onRemove:f,children:i})=>{let m=a$1({adapter:r,storageKey:d,useLocalStorage:a,initialTransfers:n,onAdd:p,onUpdate:C,onRemove:f});return jsx(t.Provider,{value:m,children:i})};var q={Provider:e,Manager:a};export{q as CrossBorder,e as CrossBorderProvider,A as useCrossBorderCompound};//# sourceMappingURL=cross-border.mjs.map
2
3
  //# sourceMappingURL=cross-border.mjs.map
@@ -1,5 +1,5 @@
1
1
  import { c as PrivacyPolicy } from './privacy-Ca6te9Ir.mjs';
2
- import { H as HTMLExportOptions, g as PDFExportOptions, f as DOCXExportOptions } from './policy-engine-fYSqEqSW.mjs';
2
+ import { H as HTMLExportOptions, g as PDFExportOptions, f as DOCXExportOptions } from './policy-engine-5qTfp2z4.mjs';
3
3
 
4
4
  /**
5
5
  * Export a PrivacyPolicy as a self-contained HTML string.
@@ -1,5 +1,5 @@
1
1
  import { c as PrivacyPolicy } from './privacy-Ca6te9Ir.js';
2
- import { H as HTMLExportOptions, g as PDFExportOptions, f as DOCXExportOptions } from './policy-engine-CCUCud2T.js';
2
+ import { H as HTMLExportOptions, g as PDFExportOptions, f as DOCXExportOptions } from './policy-engine-DzPxskOK.js';
3
3
 
4
4
  /**
5
5
  * Export a PrivacyPolicy as a self-contained HTML string.
package/dist/dpia.js CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  'use strict';var chunk3VQAYQR7_js=require('./chunk-3VQAYQR7.js'),chunk5HL4UBFV_js=require('./chunk-5HL4UBFV.js'),chunkOPYQIJKY_js=require('./chunk-OPYQIJKY.js'),chunkP42Z5CFE_js=require('./chunk-P42Z5CFE.js');require('./chunk-E64TU6IU.js'),require('./chunk-ELKB2AFZ.js');var chunkMQFZHA2D_js=require('./chunk-MQFZHA2D.js'),react=require('react'),jsxRuntime=require('react/jsx-runtime');var i=react.createContext(null);function v(){let o=react.useContext(i);if(!o)throw new Error("DPIA compound components must be wrapped in <DPIA.Provider>. Example: <DPIA.Provider sections={...}><DPIA.Questionnaire /></DPIA.Provider>");return o}var p=({sections:o,initialAnswers:a,adapter:m,storageKey:I,useLocalStorage:A,onComplete:d,children:D})=>{let u=chunkOPYQIJKY_js.a({sections:o,initialAnswers:a,adapter:m,storageKey:I,useLocalStorage:A,onComplete:d}),c=chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},u),{sections:o});return jsxRuntime.jsx(i.Provider,{value:c,children:D})};var y={Provider:p,Questionnaire:chunk5HL4UBFV_js.a,Report:chunk3VQAYQR7_js.a,StepIndicator:chunk3VQAYQR7_js.b};Object.defineProperty(exports,"DPIAReport",{enumerable:true,get:function(){return chunk3VQAYQR7_js.a}});Object.defineProperty(exports,"StepIndicator",{enumerable:true,get:function(){return chunk3VQAYQR7_js.b}});Object.defineProperty(exports,"DPIAQuestionnaire",{enumerable:true,get:function(){return chunk5HL4UBFV_js.a}});Object.defineProperty(exports,"useDPIA",{enumerable:true,get:function(){return chunkOPYQIJKY_js.a}});Object.defineProperty(exports,"assessDPIARisk",{enumerable:true,get:function(){return chunkP42Z5CFE_js.a}});exports.DPIA=y;exports.DPIAProvider=p;exports.useDPIACompound=v;//# sourceMappingURL=dpia.js.map
2
3
  //# sourceMappingURL=dpia.js.map
package/dist/dpia.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  import {b,a}from'./chunk-TCN22KYP.mjs';export{a as DPIAReport,b as StepIndicator}from'./chunk-TCN22KYP.mjs';import {a as a$1}from'./chunk-LJNNPAFU.mjs';export{a as DPIAQuestionnaire}from'./chunk-LJNNPAFU.mjs';import {a as a$2}from'./chunk-6FGCGLH5.mjs';export{a as useDPIA}from'./chunk-6FGCGLH5.mjs';export{a as assessDPIARisk}from'./chunk-6TA2MVTU.mjs';import'./chunk-AYKLAEOU.mjs';import'./chunk-6WIP33TW.mjs';import {b as b$1,a as a$3}from'./chunk-WWT2ZSNU.mjs';import {createContext,useContext}from'react';import {jsx}from'react/jsx-runtime';var i=createContext(null);function v(){let o=useContext(i);if(!o)throw new Error("DPIA compound components must be wrapped in <DPIA.Provider>. Example: <DPIA.Provider sections={...}><DPIA.Questionnaire /></DPIA.Provider>");return o}var p=({sections:o,initialAnswers:a,adapter:m,storageKey:I,useLocalStorage:A,onComplete:d,children:D})=>{let u=a$2({sections:o,initialAnswers:a,adapter:m,storageKey:I,useLocalStorage:A,onComplete:d}),c=b$1(a$3({},u),{sections:o});return jsx(i.Provider,{value:c,children:D})};var y={Provider:p,Questionnaire:a$1,Report:a,StepIndicator:b};export{y as DPIA,p as DPIAProvider,v as useDPIACompound};//# sourceMappingURL=dpia.mjs.map
2
3
  //# sourceMappingURL=dpia.mjs.map
package/dist/dsr.js CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  'use strict';var chunkZYLDLGFL_js=require('./chunk-ZYLDLGFL.js'),chunkZPKVLTSX_js=require('./chunk-ZPKVLTSX.js'),chunkXSEZDQLB_js=require('./chunk-XSEZDQLB.js'),chunkJKKRPS4P_js=require('./chunk-JKKRPS4P.js');require('./chunk-I54CDQGN.js'),require('./chunk-E64TU6IU.js'),require('./chunk-ELKB2AFZ.js');var chunkMQFZHA2D_js=require('./chunk-MQFZHA2D.js'),react=require('react'),jsxRuntime=require('react/jsx-runtime');var R=react.createContext(null);function v(){let e=react.useContext(R);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 s=({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:d,onSubmit:u,onUpdate:n,children:i})=>{let f=chunkXSEZDQLB_js.a({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:d,onSubmit:u,onUpdate:n}),x=chunkMQFZHA2D_js.b(chunkMQFZHA2D_js.a({},f),{requestTypes:e});return jsxRuntime.jsx(R.Provider,{value:x,children:i})};var C={Provider:s,Form:chunkZPKVLTSX_js.a,Dashboard:chunkZYLDLGFL_js.a,Tracker:chunkZYLDLGFL_js.b};Object.defineProperty(exports,"DSRDashboard",{enumerable:true,get:function(){return chunkZYLDLGFL_js.a}});Object.defineProperty(exports,"DSRTracker",{enumerable:true,get:function(){return chunkZYLDLGFL_js.b}});Object.defineProperty(exports,"DSRRequestForm",{enumerable:true,get:function(){return chunkZPKVLTSX_js.a}});Object.defineProperty(exports,"useDSR",{enumerable:true,get:function(){return chunkXSEZDQLB_js.a}});Object.defineProperty(exports,"formatDSRRequest",{enumerable:true,get:function(){return chunkJKKRPS4P_js.a}});exports.DSR=C;exports.DSRProvider=s;exports.useDSRCompound=v;//# sourceMappingURL=dsr.js.map
2
3
  //# sourceMappingURL=dsr.js.map
package/dist/dsr.mjs CHANGED
@@ -1,2 +1,3 @@
1
+ "use client";
1
2
  import {b,a}from'./chunk-5X32J5IA.mjs';export{a as DSRDashboard,b as DSRTracker}from'./chunk-5X32J5IA.mjs';import {a as a$1}from'./chunk-6HZL2WDU.mjs';export{a as DSRRequestForm}from'./chunk-6HZL2WDU.mjs';import {a as a$2}from'./chunk-DCJK5OZT.mjs';export{a as useDSR}from'./chunk-DCJK5OZT.mjs';export{a as formatDSRRequest}from'./chunk-7D2OIPHH.mjs';import'./chunk-GKKAK6ES.mjs';import'./chunk-AYKLAEOU.mjs';import'./chunk-6WIP33TW.mjs';import {b as b$1,a as a$3}from'./chunk-WWT2ZSNU.mjs';import {createContext,useContext}from'react';import {jsx}from'react/jsx-runtime';var R=createContext(null);function v(){let e=useContext(R);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 s=({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:d,onSubmit:u,onUpdate:n,children:i})=>{let f=a$2({requestTypes:e,adapter:S,storageKey:D,useLocalStorage:d,onSubmit:u,onUpdate:n}),x=b$1(a$3({},f),{requestTypes:e});return jsx(R.Provider,{value:x,children:i})};var C={Provider:s,Form:a$1,Dashboard:a,Tracker:b};export{C as DSR,s as DSRProvider,v as useDSRCompound};//# sourceMappingURL=dsr.mjs.map
2
3
  //# sourceMappingURL=dsr.mjs.map
package/dist/hooks.d.mts CHANGED
@@ -15,12 +15,12 @@ export { u as useLawfulBasis } from './useLawfulBasis-CKJ-kw84.mjs';
15
15
  export { u as useCrossBorderTransfer } from './useCrossBorderTransfer-DixjLjN1.mjs';
16
16
  export { U as UseROPAOptions, a as UseROPAReturn, u as useROPA } from './useROPA-C2hjaBTz.mjs';
17
17
  import { C as ComplianceInput, b as ComplianceReport } from './compliance-score-racQe_E_.mjs';
18
- export { U as UseAdaptivePolicyWizardOptions, a as UseAdaptivePolicyWizardReturn, u as useAdaptivePolicyWizard } from './useAdaptivePolicyWizard-BnjW4OR4.mjs';
18
+ export { U as UseAdaptivePolicyWizardOptions, a as UseAdaptivePolicyWizardReturn, u as useAdaptivePolicyWizard } from './useAdaptivePolicyWizard-BSLyltzZ.mjs';
19
19
  import './types-DK2CoKOC.mjs';
20
20
  import './lawful-basis-C2eGaoHM.mjs';
21
21
  import './cross-border-BBi9rZyO.mjs';
22
22
  import './ropa-NIgxd8uP.mjs';
23
- import './policy-engine-fYSqEqSW.mjs';
23
+ import './policy-engine-5qTfp2z4.mjs';
24
24
 
25
25
  interface UseComplianceScoreOptions {
26
26
  input: ComplianceInput;
package/dist/hooks.d.ts CHANGED
@@ -15,12 +15,12 @@ export { u as useLawfulBasis } from './useLawfulBasis-DFTmu1ca.js';
15
15
  export { u as useCrossBorderTransfer } from './useCrossBorderTransfer-DvSq06lv.js';
16
16
  export { U as UseROPAOptions, a as UseROPAReturn, u as useROPA } from './useROPA-BSSU1rfx.js';
17
17
  import { C as ComplianceInput, b as ComplianceReport } from './compliance-score-racQe_E_.js';
18
- export { U as UseAdaptivePolicyWizardOptions, a as UseAdaptivePolicyWizardReturn, u as useAdaptivePolicyWizard } from './useAdaptivePolicyWizard-sb3m4-Zk.js';
18
+ export { U as UseAdaptivePolicyWizardOptions, a as UseAdaptivePolicyWizardReturn, u as useAdaptivePolicyWizard } from './useAdaptivePolicyWizard-CL7C7MTZ.js';
19
19
  import './types-DK2CoKOC.js';
20
20
  import './lawful-basis-BEyI0kGg.js';
21
21
  import './cross-border-Dy-U9Hu6.js';
22
22
  import './ropa-CyynscU6.js';
23
- import './policy-engine-CCUCud2T.js';
23
+ import './policy-engine-DzPxskOK.js';
24
24
 
25
25
  interface UseComplianceScoreOptions {
26
26
  input: ComplianceInput;
package/dist/hooks.js CHANGED
@@ -1,2 +1,3 @@
1
- 'use strict';var chunkXMBSJJ5U_js=require('./chunk-XMBSJJ5U.js'),chunkRGNP45VR_js=require('./chunk-RGNP45VR.js'),chunk7AVN424U_js=require('./chunk-7AVN424U.js'),chunkMCWV7S2G_js=require('./chunk-MCWV7S2G.js'),chunkM2TPT5GB_js=require('./chunk-M2TPT5GB.js');require('./chunk-UFPSUO52.js'),require('./chunk-RNTNHVKZ.js'),require('./chunk-P2YV6DR3.js');var chunkS4GRSNB4_js=require('./chunk-S4GRSNB4.js');require('./chunk-AHSMDPG5.js'),require('./chunk-TDDAYVKK.js'),require('./chunk-C4YM4UMI.js'),require('./chunk-GOU6FU6Y.js');var chunk7SMLHZ4B_js=require('./chunk-7SMLHZ4B.js');require('./chunk-A4PK7JB2.js'),require('./chunk-HO5M7M4M.js');var chunkXSEZDQLB_js=require('./chunk-XSEZDQLB.js');require('./chunk-JKKRPS4P.js');var chunkOPYQIJKY_js=require('./chunk-OPYQIJKY.js');require('./chunk-P42Z5CFE.js');var chunkI4M2AA3N_js=require('./chunk-I4M2AA3N.js');require('./chunk-BKRETVJ6.js'),require('./chunk-ELKB2AFZ.js'),require('./chunk-MQFZHA2D.js');var react=require('react');function l({input:e}){let r=JSON.stringify(e);return react.useMemo(()=>chunkS4GRSNB4_js.a(e),[r])}Object.defineProperty(exports,"useAdaptivePolicyWizard",{enumerable:true,get:function(){return chunkXMBSJJ5U_js.a}});Object.defineProperty(exports,"useDefaultPrivacyPolicy",{enumerable:true,get:function(){return chunkRGNP45VR_js.b}});Object.defineProperty(exports,"usePrivacyPolicy",{enumerable:true,get:function(){return chunkRGNP45VR_js.a}});Object.defineProperty(exports,"useLawfulBasis",{enumerable:true,get:function(){return chunk7AVN424U_js.a}});Object.defineProperty(exports,"useCrossBorderTransfer",{enumerable:true,get:function(){return chunkMCWV7S2G_js.a}});Object.defineProperty(exports,"useROPA",{enumerable:true,get:function(){return chunkM2TPT5GB_js.a}});Object.defineProperty(exports,"useConsent",{enumerable:true,get:function(){return chunk7SMLHZ4B_js.a}});Object.defineProperty(exports,"useDSR",{enumerable:true,get:function(){return chunkXSEZDQLB_js.a}});Object.defineProperty(exports,"useDPIA",{enumerable:true,get:function(){return chunkOPYQIJKY_js.a}});Object.defineProperty(exports,"useBreach",{enumerable:true,get:function(){return chunkI4M2AA3N_js.a}});exports.useComplianceScore=l;//# sourceMappingURL=hooks.js.map
1
+ "use client";
2
+ 'use strict';var chunk4BOEFDDE_js=require('./chunk-4BOEFDDE.js'),chunkUHTJ6UFW_js=require('./chunk-UHTJ6UFW.js'),chunk7AVN424U_js=require('./chunk-7AVN424U.js'),chunkMCWV7S2G_js=require('./chunk-MCWV7S2G.js'),chunkM2TPT5GB_js=require('./chunk-M2TPT5GB.js');require('./chunk-Z73T6MWY.js'),require('./chunk-YPKUHSK4.js'),require('./chunk-P2YV6DR3.js');var chunkS4GRSNB4_js=require('./chunk-S4GRSNB4.js');require('./chunk-AHSMDPG5.js'),require('./chunk-TDDAYVKK.js'),require('./chunk-C4YM4UMI.js'),require('./chunk-GOU6FU6Y.js');var chunk7SMLHZ4B_js=require('./chunk-7SMLHZ4B.js');require('./chunk-A4PK7JB2.js'),require('./chunk-HO5M7M4M.js');var chunkXSEZDQLB_js=require('./chunk-XSEZDQLB.js');require('./chunk-JKKRPS4P.js');var chunkOPYQIJKY_js=require('./chunk-OPYQIJKY.js');require('./chunk-P42Z5CFE.js');var chunkI4M2AA3N_js=require('./chunk-I4M2AA3N.js');require('./chunk-BKRETVJ6.js'),require('./chunk-ELKB2AFZ.js'),require('./chunk-MQFZHA2D.js');var react=require('react');function l({input:e}){let r=JSON.stringify(e);return react.useMemo(()=>chunkS4GRSNB4_js.a(e),[r])}Object.defineProperty(exports,"useAdaptivePolicyWizard",{enumerable:true,get:function(){return chunk4BOEFDDE_js.a}});Object.defineProperty(exports,"useDefaultPrivacyPolicy",{enumerable:true,get:function(){return chunkUHTJ6UFW_js.b}});Object.defineProperty(exports,"usePrivacyPolicy",{enumerable:true,get:function(){return chunkUHTJ6UFW_js.a}});Object.defineProperty(exports,"useLawfulBasis",{enumerable:true,get:function(){return chunk7AVN424U_js.a}});Object.defineProperty(exports,"useCrossBorderTransfer",{enumerable:true,get:function(){return chunkMCWV7S2G_js.a}});Object.defineProperty(exports,"useROPA",{enumerable:true,get:function(){return chunkM2TPT5GB_js.a}});Object.defineProperty(exports,"useConsent",{enumerable:true,get:function(){return chunk7SMLHZ4B_js.a}});Object.defineProperty(exports,"useDSR",{enumerable:true,get:function(){return chunkXSEZDQLB_js.a}});Object.defineProperty(exports,"useDPIA",{enumerable:true,get:function(){return chunkOPYQIJKY_js.a}});Object.defineProperty(exports,"useBreach",{enumerable:true,get:function(){return chunkI4M2AA3N_js.a}});exports.useComplianceScore=l;//# sourceMappingURL=hooks.js.map
2
3
  //# sourceMappingURL=hooks.js.map
package/dist/hooks.mjs CHANGED
@@ -1,2 +1,3 @@
1
- export{a as useAdaptivePolicyWizard}from'./chunk-KSERBMXW.mjs';export{b as useDefaultPrivacyPolicy,a as usePrivacyPolicy}from'./chunk-NCOZB2WU.mjs';export{a as useLawfulBasis}from'./chunk-E4NCJ7RD.mjs';export{a as useCrossBorderTransfer}from'./chunk-Z6IIMLZU.mjs';export{a as useROPA}from'./chunk-2AW7KAZO.mjs';import'./chunk-4R42ZNO7.mjs';import'./chunk-MG73MOZC.mjs';import'./chunk-LSCMXAPY.mjs';import {a}from'./chunk-ABDB7LEV.mjs';import'./chunk-ZLSWOFAY.mjs';import'./chunk-TXBZPCGF.mjs';import'./chunk-75TJPK2N.mjs';import'./chunk-SHMJNRHO.mjs';export{a as useConsent}from'./chunk-VWPGIES4.mjs';import'./chunk-R3OYAJI6.mjs';import'./chunk-U62QYKVG.mjs';export{a as useDSR}from'./chunk-DCJK5OZT.mjs';import'./chunk-7D2OIPHH.mjs';export{a as useDPIA}from'./chunk-6FGCGLH5.mjs';import'./chunk-6TA2MVTU.mjs';export{a as useBreach}from'./chunk-PATONNTZ.mjs';import'./chunk-DJGS7SSN.mjs';import'./chunk-6WIP33TW.mjs';import'./chunk-WWT2ZSNU.mjs';import {useMemo}from'react';function l({input:e}){let r=JSON.stringify(e);return useMemo(()=>a(e),[r])}export{l as useComplianceScore};//# sourceMappingURL=hooks.mjs.map
1
+ "use client";
2
+ export{a as useAdaptivePolicyWizard}from'./chunk-MLOWRZXO.mjs';export{b as useDefaultPrivacyPolicy,a as usePrivacyPolicy}from'./chunk-2L7BSG7G.mjs';export{a as useLawfulBasis}from'./chunk-E4NCJ7RD.mjs';export{a as useCrossBorderTransfer}from'./chunk-Z6IIMLZU.mjs';export{a as useROPA}from'./chunk-2AW7KAZO.mjs';import'./chunk-JFFOPHU3.mjs';import'./chunk-I557S566.mjs';import'./chunk-LSCMXAPY.mjs';import {a}from'./chunk-ABDB7LEV.mjs';import'./chunk-ZLSWOFAY.mjs';import'./chunk-TXBZPCGF.mjs';import'./chunk-75TJPK2N.mjs';import'./chunk-SHMJNRHO.mjs';export{a as useConsent}from'./chunk-VWPGIES4.mjs';import'./chunk-R3OYAJI6.mjs';import'./chunk-U62QYKVG.mjs';export{a as useDSR}from'./chunk-DCJK5OZT.mjs';import'./chunk-7D2OIPHH.mjs';export{a as useDPIA}from'./chunk-6FGCGLH5.mjs';import'./chunk-6TA2MVTU.mjs';export{a as useBreach}from'./chunk-PATONNTZ.mjs';import'./chunk-DJGS7SSN.mjs';import'./chunk-6WIP33TW.mjs';import'./chunk-WWT2ZSNU.mjs';import {useMemo}from'react';function l({input:e}){let r=JSON.stringify(e);return useMemo(()=>a(e),[r])}export{l as useComplianceScore};//# sourceMappingURL=hooks.mjs.map
2
3
  //# sourceMappingURL=hooks.mjs.map
package/dist/index.js CHANGED
@@ -1,2 +1,3 @@
1
- 'use strict';var chunkHQSU7LGM_js=require('./chunk-HQSU7LGM.js'),chunkHGGLW5TE_js=require('./chunk-HGGLW5TE.js'),chunkLSNL4XR5_js=require('./chunk-LSNL4XR5.js'),chunkNQNFS3QI_js=require('./chunk-NQNFS3QI.js'),chunkP6QAFBCV_js=require('./chunk-P6QAFBCV.js'),chunkRXL6CZAI_js=require('./chunk-RXL6CZAI.js');require('./chunk-C5QO3SX4.js');var chunkRGNP45VR_js=require('./chunk-RGNP45VR.js'),chunk7AVN424U_js=require('./chunk-7AVN424U.js'),chunkMCWV7S2G_js=require('./chunk-MCWV7S2G.js'),chunkM2TPT5GB_js=require('./chunk-M2TPT5GB.js'),chunkP2YV6DR3_js=require('./chunk-P2YV6DR3.js'),chunkS4GRSNB4_js=require('./chunk-S4GRSNB4.js');require('./chunk-AHSMDPG5.js');var chunkTDDAYVKK_js=require('./chunk-TDDAYVKK.js'),chunkC4YM4UMI_js=require('./chunk-C4YM4UMI.js'),chunkGOU6FU6Y_js=require('./chunk-GOU6FU6Y.js'),chunk3NQQSU4P_js=require('./chunk-3NQQSU4P.js'),chunkRLYTX3MM_js=require('./chunk-RLYTX3MM.js'),chunkSUEGUY35_js=require('./chunk-SUEGUY35.js'),chunkMJGOLP5M_js=require('./chunk-MJGOLP5M.js'),chunk7SMLHZ4B_js=require('./chunk-7SMLHZ4B.js');require('./chunk-A4PK7JB2.js');var chunkHO5M7M4M_js=require('./chunk-HO5M7M4M.js'),chunkZYLDLGFL_js=require('./chunk-ZYLDLGFL.js'),chunkZPKVLTSX_js=require('./chunk-ZPKVLTSX.js'),chunkXSEZDQLB_js=require('./chunk-XSEZDQLB.js'),chunkJKKRPS4P_js=require('./chunk-JKKRPS4P.js'),chunk3VQAYQR7_js=require('./chunk-3VQAYQR7.js'),chunk5HL4UBFV_js=require('./chunk-5HL4UBFV.js'),chunkOPYQIJKY_js=require('./chunk-OPYQIJKY.js'),chunkP42Z5CFE_js=require('./chunk-P42Z5CFE.js'),chunkEHAZIKDX_js=require('./chunk-EHAZIKDX.js'),chunkWTJGLNTB_js=require('./chunk-WTJGLNTB.js'),chunkI4M2AA3N_js=require('./chunk-I4M2AA3N.js'),chunkBKRETVJ6_js=require('./chunk-BKRETVJ6.js'),chunkI54CDQGN_js=require('./chunk-I54CDQGN.js'),chunkE64TU6IU_js=require('./chunk-E64TU6IU.js');require('./chunk-ELKB2AFZ.js'),require('./chunk-MQFZHA2D.js');Object.defineProperty(exports,"PolicyExporter",{enumerable:true,get:function(){return chunkHQSU7LGM_js.c}});Object.defineProperty(exports,"PolicyGenerator",{enumerable:true,get:function(){return chunkHQSU7LGM_js.a}});Object.defineProperty(exports,"PolicyPreview",{enumerable:true,get:function(){return chunkHQSU7LGM_js.b}});Object.defineProperty(exports,"NDPRDashboard",{enumerable:true,get:function(){return chunkHGGLW5TE_js.a}});Object.defineProperty(exports,"LawfulBasisTracker",{enumerable:true,get:function(){return chunkLSNL4XR5_js.a}});Object.defineProperty(exports,"CrossBorderTransferManager",{enumerable:true,get:function(){return chunkNQNFS3QI_js.a}});Object.defineProperty(exports,"ROPAManager",{enumerable:true,get:function(){return chunkP6QAFBCV_js.a}});Object.defineProperty(exports,"NDPRProvider",{enumerable:true,get:function(){return chunkRXL6CZAI_js.a}});Object.defineProperty(exports,"useNDPRConfig",{enumerable:true,get:function(){return chunkRXL6CZAI_js.b}});Object.defineProperty(exports,"useDefaultPrivacyPolicy",{enumerable:true,get:function(){return chunkRGNP45VR_js.b}});Object.defineProperty(exports,"usePrivacyPolicy",{enumerable:true,get:function(){return chunkRGNP45VR_js.a}});Object.defineProperty(exports,"useLawfulBasis",{enumerable:true,get:function(){return chunk7AVN424U_js.a}});Object.defineProperty(exports,"useCrossBorderTransfer",{enumerable:true,get:function(){return chunkMCWV7S2G_js.a}});Object.defineProperty(exports,"useROPA",{enumerable:true,get:function(){return chunkM2TPT5GB_js.a}});Object.defineProperty(exports,"DEFAULT_POLICY_SECTIONS",{enumerable:true,get:function(){return chunkP2YV6DR3_js.c}});Object.defineProperty(exports,"DEFAULT_POLICY_VARIABLES",{enumerable:true,get:function(){return chunkP2YV6DR3_js.d}});Object.defineProperty(exports,"createBusinessPolicyTemplate",{enumerable:true,get:function(){return chunkP2YV6DR3_js.e}});Object.defineProperty(exports,"generatePolicyText",{enumerable:true,get:function(){return chunkP2YV6DR3_js.b}});Object.defineProperty(exports,"getComplianceScore",{enumerable:true,get:function(){return chunkS4GRSNB4_js.a}});Object.defineProperty(exports,"assessComplianceGaps",{enumerable:true,get:function(){return chunkTDDAYVKK_js.c}});Object.defineProperty(exports,"generateLawfulBasisSummary",{enumerable:true,get:function(){return chunkTDDAYVKK_js.d}});Object.defineProperty(exports,"getLawfulBasisDescription",{enumerable:true,get:function(){return chunkTDDAYVKK_js.b}});Object.defineProperty(exports,"validateProcessingActivity",{enumerable:true,get:function(){return chunkTDDAYVKK_js.a}});Object.defineProperty(exports,"assessTransferRisk",{enumerable:true,get:function(){return chunkC4YM4UMI_js.h}});Object.defineProperty(exports,"getTransferMechanismDescription",{enumerable:true,get:function(){return chunkC4YM4UMI_js.f}});Object.defineProperty(exports,"isNDPCApprovalRequired",{enumerable:true,get:function(){return chunkC4YM4UMI_js.e}});Object.defineProperty(exports,"validateTransfer",{enumerable:true,get:function(){return chunkC4YM4UMI_js.g}});Object.defineProperty(exports,"exportROPAToCSV",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.c}});Object.defineProperty(exports,"generateROPASummary",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.b}});Object.defineProperty(exports,"identifyComplianceGaps",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.d}});Object.defineProperty(exports,"validateProcessingRecord",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.a}});Object.defineProperty(exports,"ConsentStorage",{enumerable:true,get:function(){return chunk3NQQSU4P_js.a}});Object.defineProperty(exports,"ConsentManager",{enumerable:true,get:function(){return chunkRLYTX3MM_js.a}});Object.defineProperty(exports,"ConsentBanner",{enumerable:true,get:function(){return chunkSUEGUY35_js.a}});Object.defineProperty(exports,"appendAuditEntry",{enumerable:true,get:function(){return chunkMJGOLP5M_js.c}});Object.defineProperty(exports,"createAuditEntry",{enumerable:true,get:function(){return chunkMJGOLP5M_js.a}});Object.defineProperty(exports,"getAuditLog",{enumerable:true,get:function(){return chunkMJGOLP5M_js.b}});Object.defineProperty(exports,"useConsent",{enumerable:true,get:function(){return chunk7SMLHZ4B_js.a}});Object.defineProperty(exports,"validateConsent",{enumerable:true,get:function(){return chunkHO5M7M4M_js.a}});Object.defineProperty(exports,"validateConsentOptions",{enumerable:true,get:function(){return chunkHO5M7M4M_js.b}});Object.defineProperty(exports,"DSRDashboard",{enumerable:true,get:function(){return chunkZYLDLGFL_js.a}});Object.defineProperty(exports,"DSRTracker",{enumerable:true,get:function(){return chunkZYLDLGFL_js.b}});Object.defineProperty(exports,"DSRRequestForm",{enumerable:true,get:function(){return chunkZPKVLTSX_js.a}});Object.defineProperty(exports,"useDSR",{enumerable:true,get:function(){return chunkXSEZDQLB_js.a}});Object.defineProperty(exports,"formatDSRRequest",{enumerable:true,get:function(){return chunkJKKRPS4P_js.a}});Object.defineProperty(exports,"DPIAReport",{enumerable:true,get:function(){return chunk3VQAYQR7_js.a}});Object.defineProperty(exports,"StepIndicator",{enumerable:true,get:function(){return chunk3VQAYQR7_js.b}});Object.defineProperty(exports,"DPIAQuestionnaire",{enumerable:true,get:function(){return chunk5HL4UBFV_js.a}});Object.defineProperty(exports,"useDPIA",{enumerable:true,get:function(){return chunkOPYQIJKY_js.a}});Object.defineProperty(exports,"assessDPIARisk",{enumerable:true,get:function(){return chunkP42Z5CFE_js.a}});Object.defineProperty(exports,"BreachNotificationManager",{enumerable:true,get:function(){return chunkEHAZIKDX_js.b}});Object.defineProperty(exports,"BreachRiskAssessment",{enumerable:true,get:function(){return chunkEHAZIKDX_js.a}});Object.defineProperty(exports,"RegulatoryReportGenerator",{enumerable:true,get:function(){return chunkEHAZIKDX_js.c}});Object.defineProperty(exports,"BreachReportForm",{enumerable:true,get:function(){return chunkWTJGLNTB_js.a}});Object.defineProperty(exports,"useBreach",{enumerable:true,get:function(){return chunkI4M2AA3N_js.a}});Object.defineProperty(exports,"calculateBreachSeverity",{enumerable:true,get:function(){return chunkBKRETVJ6_js.a}});Object.defineProperty(exports,"sanitizeInput",{enumerable:true,get:function(){return chunkI54CDQGN_js.a}});Object.defineProperty(exports,"resolveClass",{enumerable:true,get:function(){return chunkE64TU6IU_js.a}});//# sourceMappingURL=index.js.map
1
+ "use client";
2
+ 'use strict';var chunkHQSU7LGM_js=require('./chunk-HQSU7LGM.js'),chunkHGGLW5TE_js=require('./chunk-HGGLW5TE.js'),chunkLSNL4XR5_js=require('./chunk-LSNL4XR5.js'),chunkNQNFS3QI_js=require('./chunk-NQNFS3QI.js'),chunkP6QAFBCV_js=require('./chunk-P6QAFBCV.js'),chunkRXL6CZAI_js=require('./chunk-RXL6CZAI.js');require('./chunk-C5QO3SX4.js');var chunkUHTJ6UFW_js=require('./chunk-UHTJ6UFW.js'),chunk7AVN424U_js=require('./chunk-7AVN424U.js'),chunkMCWV7S2G_js=require('./chunk-MCWV7S2G.js'),chunkM2TPT5GB_js=require('./chunk-M2TPT5GB.js'),chunkP2YV6DR3_js=require('./chunk-P2YV6DR3.js'),chunkS4GRSNB4_js=require('./chunk-S4GRSNB4.js');require('./chunk-AHSMDPG5.js');var chunkTDDAYVKK_js=require('./chunk-TDDAYVKK.js'),chunkC4YM4UMI_js=require('./chunk-C4YM4UMI.js'),chunkGOU6FU6Y_js=require('./chunk-GOU6FU6Y.js'),chunk3NQQSU4P_js=require('./chunk-3NQQSU4P.js'),chunkRLYTX3MM_js=require('./chunk-RLYTX3MM.js'),chunkSUEGUY35_js=require('./chunk-SUEGUY35.js'),chunkMJGOLP5M_js=require('./chunk-MJGOLP5M.js'),chunk7SMLHZ4B_js=require('./chunk-7SMLHZ4B.js');require('./chunk-A4PK7JB2.js');var chunkHO5M7M4M_js=require('./chunk-HO5M7M4M.js'),chunkZYLDLGFL_js=require('./chunk-ZYLDLGFL.js'),chunkZPKVLTSX_js=require('./chunk-ZPKVLTSX.js'),chunkXSEZDQLB_js=require('./chunk-XSEZDQLB.js'),chunkJKKRPS4P_js=require('./chunk-JKKRPS4P.js'),chunk3VQAYQR7_js=require('./chunk-3VQAYQR7.js'),chunk5HL4UBFV_js=require('./chunk-5HL4UBFV.js'),chunkOPYQIJKY_js=require('./chunk-OPYQIJKY.js'),chunkP42Z5CFE_js=require('./chunk-P42Z5CFE.js'),chunkEHAZIKDX_js=require('./chunk-EHAZIKDX.js'),chunkWTJGLNTB_js=require('./chunk-WTJGLNTB.js'),chunkI4M2AA3N_js=require('./chunk-I4M2AA3N.js'),chunkBKRETVJ6_js=require('./chunk-BKRETVJ6.js'),chunkI54CDQGN_js=require('./chunk-I54CDQGN.js'),chunkE64TU6IU_js=require('./chunk-E64TU6IU.js');require('./chunk-ELKB2AFZ.js'),require('./chunk-MQFZHA2D.js');Object.defineProperty(exports,"PolicyExporter",{enumerable:true,get:function(){return chunkHQSU7LGM_js.c}});Object.defineProperty(exports,"PolicyGenerator",{enumerable:true,get:function(){return chunkHQSU7LGM_js.a}});Object.defineProperty(exports,"PolicyPreview",{enumerable:true,get:function(){return chunkHQSU7LGM_js.b}});Object.defineProperty(exports,"NDPRDashboard",{enumerable:true,get:function(){return chunkHGGLW5TE_js.a}});Object.defineProperty(exports,"LawfulBasisTracker",{enumerable:true,get:function(){return chunkLSNL4XR5_js.a}});Object.defineProperty(exports,"CrossBorderTransferManager",{enumerable:true,get:function(){return chunkNQNFS3QI_js.a}});Object.defineProperty(exports,"ROPAManager",{enumerable:true,get:function(){return chunkP6QAFBCV_js.a}});Object.defineProperty(exports,"NDPRProvider",{enumerable:true,get:function(){return chunkRXL6CZAI_js.a}});Object.defineProperty(exports,"useNDPRConfig",{enumerable:true,get:function(){return chunkRXL6CZAI_js.b}});Object.defineProperty(exports,"useDefaultPrivacyPolicy",{enumerable:true,get:function(){return chunkUHTJ6UFW_js.b}});Object.defineProperty(exports,"usePrivacyPolicy",{enumerable:true,get:function(){return chunkUHTJ6UFW_js.a}});Object.defineProperty(exports,"useLawfulBasis",{enumerable:true,get:function(){return chunk7AVN424U_js.a}});Object.defineProperty(exports,"useCrossBorderTransfer",{enumerable:true,get:function(){return chunkMCWV7S2G_js.a}});Object.defineProperty(exports,"useROPA",{enumerable:true,get:function(){return chunkM2TPT5GB_js.a}});Object.defineProperty(exports,"DEFAULT_POLICY_SECTIONS",{enumerable:true,get:function(){return chunkP2YV6DR3_js.c}});Object.defineProperty(exports,"DEFAULT_POLICY_VARIABLES",{enumerable:true,get:function(){return chunkP2YV6DR3_js.d}});Object.defineProperty(exports,"createBusinessPolicyTemplate",{enumerable:true,get:function(){return chunkP2YV6DR3_js.e}});Object.defineProperty(exports,"generatePolicyText",{enumerable:true,get:function(){return chunkP2YV6DR3_js.b}});Object.defineProperty(exports,"getComplianceScore",{enumerable:true,get:function(){return chunkS4GRSNB4_js.a}});Object.defineProperty(exports,"assessComplianceGaps",{enumerable:true,get:function(){return chunkTDDAYVKK_js.c}});Object.defineProperty(exports,"generateLawfulBasisSummary",{enumerable:true,get:function(){return chunkTDDAYVKK_js.d}});Object.defineProperty(exports,"getLawfulBasisDescription",{enumerable:true,get:function(){return chunkTDDAYVKK_js.b}});Object.defineProperty(exports,"validateProcessingActivity",{enumerable:true,get:function(){return chunkTDDAYVKK_js.a}});Object.defineProperty(exports,"assessTransferRisk",{enumerable:true,get:function(){return chunkC4YM4UMI_js.h}});Object.defineProperty(exports,"getTransferMechanismDescription",{enumerable:true,get:function(){return chunkC4YM4UMI_js.f}});Object.defineProperty(exports,"isNDPCApprovalRequired",{enumerable:true,get:function(){return chunkC4YM4UMI_js.e}});Object.defineProperty(exports,"validateTransfer",{enumerable:true,get:function(){return chunkC4YM4UMI_js.g}});Object.defineProperty(exports,"exportROPAToCSV",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.c}});Object.defineProperty(exports,"generateROPASummary",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.b}});Object.defineProperty(exports,"identifyComplianceGaps",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.d}});Object.defineProperty(exports,"validateProcessingRecord",{enumerable:true,get:function(){return chunkGOU6FU6Y_js.a}});Object.defineProperty(exports,"ConsentStorage",{enumerable:true,get:function(){return chunk3NQQSU4P_js.a}});Object.defineProperty(exports,"ConsentManager",{enumerable:true,get:function(){return chunkRLYTX3MM_js.a}});Object.defineProperty(exports,"ConsentBanner",{enumerable:true,get:function(){return chunkSUEGUY35_js.a}});Object.defineProperty(exports,"appendAuditEntry",{enumerable:true,get:function(){return chunkMJGOLP5M_js.c}});Object.defineProperty(exports,"createAuditEntry",{enumerable:true,get:function(){return chunkMJGOLP5M_js.a}});Object.defineProperty(exports,"getAuditLog",{enumerable:true,get:function(){return chunkMJGOLP5M_js.b}});Object.defineProperty(exports,"useConsent",{enumerable:true,get:function(){return chunk7SMLHZ4B_js.a}});Object.defineProperty(exports,"validateConsent",{enumerable:true,get:function(){return chunkHO5M7M4M_js.a}});Object.defineProperty(exports,"validateConsentOptions",{enumerable:true,get:function(){return chunkHO5M7M4M_js.b}});Object.defineProperty(exports,"DSRDashboard",{enumerable:true,get:function(){return chunkZYLDLGFL_js.a}});Object.defineProperty(exports,"DSRTracker",{enumerable:true,get:function(){return chunkZYLDLGFL_js.b}});Object.defineProperty(exports,"DSRRequestForm",{enumerable:true,get:function(){return chunkZPKVLTSX_js.a}});Object.defineProperty(exports,"useDSR",{enumerable:true,get:function(){return chunkXSEZDQLB_js.a}});Object.defineProperty(exports,"formatDSRRequest",{enumerable:true,get:function(){return chunkJKKRPS4P_js.a}});Object.defineProperty(exports,"DPIAReport",{enumerable:true,get:function(){return chunk3VQAYQR7_js.a}});Object.defineProperty(exports,"StepIndicator",{enumerable:true,get:function(){return chunk3VQAYQR7_js.b}});Object.defineProperty(exports,"DPIAQuestionnaire",{enumerable:true,get:function(){return chunk5HL4UBFV_js.a}});Object.defineProperty(exports,"useDPIA",{enumerable:true,get:function(){return chunkOPYQIJKY_js.a}});Object.defineProperty(exports,"assessDPIARisk",{enumerable:true,get:function(){return chunkP42Z5CFE_js.a}});Object.defineProperty(exports,"BreachNotificationManager",{enumerable:true,get:function(){return chunkEHAZIKDX_js.b}});Object.defineProperty(exports,"BreachRiskAssessment",{enumerable:true,get:function(){return chunkEHAZIKDX_js.a}});Object.defineProperty(exports,"RegulatoryReportGenerator",{enumerable:true,get:function(){return chunkEHAZIKDX_js.c}});Object.defineProperty(exports,"BreachReportForm",{enumerable:true,get:function(){return chunkWTJGLNTB_js.a}});Object.defineProperty(exports,"useBreach",{enumerable:true,get:function(){return chunkI4M2AA3N_js.a}});Object.defineProperty(exports,"calculateBreachSeverity",{enumerable:true,get:function(){return chunkBKRETVJ6_js.a}});Object.defineProperty(exports,"sanitizeInput",{enumerable:true,get:function(){return chunkI54CDQGN_js.a}});Object.defineProperty(exports,"resolveClass",{enumerable:true,get:function(){return chunkE64TU6IU_js.a}});//# sourceMappingURL=index.js.map
2
3
  //# sourceMappingURL=index.js.map