@tantainnovative/ndpr-toolkit 5.6.0 → 5.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/README.md +11 -0
- package/dist/{chunk-C77CRJLD.mjs → chunk-2T5MY2Q6.mjs} +1 -1
- package/dist/chunk-7PV64WEZ.js +1 -0
- package/dist/chunk-C5UYAOYX.mjs +1 -0
- package/dist/chunk-DKLJ5DYN.js +1 -0
- package/dist/{chunk-VTBHDHYK.js → chunk-NTEYQLYM.js} +1 -1
- package/dist/chunk-PEUAA5EC.js +1 -0
- package/dist/{chunk-VXLOPB33.mjs → chunk-PQ5IPUJN.mjs} +1 -1
- package/dist/chunk-PYSYBUIV.mjs +1 -0
- package/dist/{chunk-GJH7YFBO.js → chunk-QKXGVT2Q.js} +1 -1
- package/dist/chunk-QNXLY5EJ.mjs +1 -0
- package/dist/chunk-R3ZKV2J7.mjs +1 -0
- package/dist/chunk-T32YQT4Y.js +1 -0
- package/dist/chunk-YMKN3YQL.js +1 -0
- package/dist/chunk-ZY4RCV5C.mjs +1 -0
- package/dist/consent.d.mts +26 -0
- package/dist/consent.d.ts +26 -0
- package/dist/consent.js +1 -1
- package/dist/consent.mjs +1 -1
- package/dist/core.js +1 -1
- package/dist/core.mjs +1 -1
- package/dist/headless.js +1 -1
- package/dist/headless.mjs +1 -1
- package/dist/hooks.js +1 -1
- package/dist/hooks.mjs +1 -1
- package/dist/index.d.mts +26 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/dist/presets-consent.d.mts +2 -0
- package/dist/presets-consent.d.ts +2 -0
- package/dist/presets-consent.js +1 -1
- package/dist/presets-consent.mjs +1 -1
- package/dist/presets.d.mts +2 -0
- package/dist/presets.d.ts +2 -0
- package/dist/presets.js +1 -1
- package/dist/presets.mjs +1 -1
- package/dist/server.js +1 -1
- package/dist/server.mjs +1 -1
- package/dist/unstyled.d.mts +64 -0
- package/dist/unstyled.d.ts +64 -0
- package/dist/unstyled.js +1 -1
- package/dist/unstyled.mjs +1 -1
- package/package.json +1 -1
- package/dist/chunk-675DXBED.mjs +0 -1
- package/dist/chunk-H3Q3I6XC.js +0 -1
- package/dist/chunk-HMKXK23C.mjs +0 -1
- package/dist/chunk-L2VO3MEJ.js +0 -1
- package/dist/chunk-LAAJVTUV.mjs +0 -1
- package/dist/chunk-PXUX4FYM.js +0 -1
- package/dist/chunk-YTU4FNM2.mjs +0 -1
- package/dist/chunk-ZVWSSXV2.js +0 -1
package/dist/chunk-HMKXK23C.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import {a}from'./chunk-YTU4FNM2.mjs';import {a as a$2}from'./chunk-SFGW37LE.mjs';import {c}from'./chunk-PHA3YMFO.mjs';import {a as a$1,b}from'./chunk-ZJYULEER.mjs';import {useState,useRef,useEffect,useCallback}from'react';import {createPortal}from'react-dom';import {jsx,jsxs}from'react/jsx-runtime';var Vn=({options:d,onSave:bn,title:A,description:y,acceptAllButtonText:P,rejectAllButtonText:E,customizeButtonText:D,saveButtonText:z,position:pn="bottom",variant:a$3="bar",zIndex:x=9999,version:C="1.0",show:h,manageStorage:L=true,storageKey:w="ndpr_consent",className:V="",buttonClassName:j="",primaryButtonClassName:ln="",secondaryButtonClassName:fn="",classNames:n,unstyled:o,onAnalytics:k})=>{var U,X,Z,T,m,N,nn,tn,en;let c$1=c(),gn=(U=A!=null?A:c$1.consent.title)!=null?U:"We Value Your Privacy",vn=(X=y!=null?y:c$1.consent.description)!=null?X:"We use cookies and similar technologies to provide our services and enhance your experience. Your consent is collected in accordance with NDPA Sections 25-26.",_n=(Z=P!=null?P:c$1.consent.acceptAll)!=null?Z:"Accept All",Cn=(T=E!=null?E:c$1.consent.rejectAll)!=null?T:"Reject All",hn=(m=D!=null?D:c$1.consent.customize)!=null?m:"Customize",an=(N=z!=null?z:c$1.consent.savePreferences)!=null?N:"Save Preferences",kn=(nn=c$1.consent.selectAll)!=null?nn:"Select All",Sn=(tn=c$1.consent.deselectAll)!=null?tn:"Deselect All",[b$1,u]=useState(false),[f,I]=useState(false),[S,B]=useState({}),[s,Bn]=useState(false),Rn=a({active:b$1}),$=useRef(null),q=useRef(false);useEffect(()=>{Bn(true);},[]);let p=useCallback((t,e)=>{k==null||k(a$1({action:t,timestamp:Date.now(),version:C},e!==void 0?{categories:e}:{}));},[k,C]);useEffect(()=>{let t={};if(d.forEach(e=>{t[e.id]=e.defaultValue||false;}),B(t),h===void 0)if(!L)u(true);else {let e=localStorage.getItem(w);if(e)try{JSON.parse(e).version!==C?u(!0):u(!1);}catch(G){u(true);}else u(true);}else u(h);},[d,w,C,L]),useEffect(()=>{h!==void 0&&u(h);},[h]);let An=()=>{let t={};d.forEach(e=>{t[e.id]=true;}),p("accepted_all",t),H(t);},J=()=>{let t={};d.forEach(e=>{t[e.id]=e.required||false;}),p("rejected_all",t),H(t);},yn=(t,e)=>{B(G=>b(a$1({},G),{[t]:e}));},Pn=()=>{let t={};d.forEach(e=>{t[e.id]=true;}),B(t);},En=()=>{let t={};d.forEach(e=>{t[e.id]=e.required||false;}),B(t);},W=d.length>0&&d.every(t=>S[t.id]),Dn=()=>{p("customized",S),H(S);},H=t=>{let e={consents:t,timestamp:Date.now(),version:C,method:f?"customize":"banner",hasInteracted:true};L&&localStorage.setItem(w,JSON.stringify(e)),bn(e),u(false),I(false);};if(useEffect(()=>{if(!b$1)return;let t=e=>{e.key==="Escape"&&(p("dismissed"),J());};return document.addEventListener("keydown",t),()=>document.removeEventListener("keydown",t)},[b$1,p,d,f]),useEffect(()=>{b$1&&!q.current&&(q.current=true,p("shown")),b$1||(q.current=false);},[b$1,p]),useEffect(()=>{if(f&&$.current){let t=$.current;t.style.maxHeight="0px",t.style.opacity="0",t.offsetHeight,t.style.maxHeight=`${t.scrollHeight}px`,t.style.opacity="1";}},[f]),!b$1)return null;let g=a$3==="modal"?"center":pn,Y=g==="inline",O=g==="center",v=["ndpr-consent-banner"];a$3!=="bar"&&v.push(`ndpr-consent-banner--${a$3}`),g==="top"?v.push("ndpr-consent-banner--top"):g==="bottom"?v.push("ndpr-consent-banner--bottom"):g==="inline"&&v.push("ndpr-consent-banner--inline"),V&&v.push(V);let zn=v.join(" "),K=`ndpr-consent-banner__button ndpr-consent-banner__button--primary ${j} ${ln}`.trim(),Ln=`ndpr-consent-banner__button ndpr-consent-banner__button--secondary ${j} ${fn}`.trim(),wn=`ndpr-consent-banner__button ndpr-consent-banner__button--ghost ${j}`.trim(),jn=(n==null?void 0:n.primaryButton)||(n==null?void 0:n.acceptButton)||K,Q=(n==null?void 0:n.secondaryButton)||(n==null?void 0:n.rejectButton)||Ln,In=(n==null?void 0:n.customizeButton)||wn,$n=(n==null?void 0:n.saveButton)||K,F=jsx("div",{ref:Rn,tabIndex:-1,"data-ndpr-component":"consent-banner","data-ndpr-variant":a$3,"data-ndpr-position":g,className:a$2(zn,n==null?void 0:n.root,o),style:!Y&&!O?{zIndex:x}:void 0,role:"dialog","aria-modal":O||void 0,"aria-labelledby":"consent-banner-title","aria-describedby":"consent-banner-description",children:jsxs("div",{className:a$2("ndpr-consent-banner__container",n==null?void 0:n.container,o),children:[jsx("h2",{id:"consent-banner-title",className:a$2("ndpr-consent-banner__title",n==null?void 0:n.title,o),children:gn}),jsx("p",{id:"consent-banner-description",className:a$2("ndpr-consent-banner__description",n==null?void 0:n.description,o),children:vn}),f&&jsxs("div",{ref:$,className:a$2("ndpr-consent-banner__customize-panel",n==null?void 0:n.customizePanel,o),children:[jsx("div",{className:o?"":"ndpr-consent-banner__select-all-row",children:jsx("button",{type:"button",onClick:W?En:Pn,className:a$2("ndpr-consent-banner__select-all-button",n==null?void 0:n.selectAllButton,o),children:W?Sn:kn})}),jsx("div",{className:a$2("ndpr-consent-banner__options-list",n==null?void 0:n.optionsList,o),children:d.map(t=>jsxs("div",{className:a$2("ndpr-consent-banner__option",n==null?void 0:n.optionItem,o),children:[jsx("input",{id:`consent-${t.id}`,type:"checkbox",checked:S[t.id]||false,onChange:e=>yn(t.id,e.target.checked),disabled:t.required,className:a$2("ndpr-consent-banner__option-checkbox",n==null?void 0:n.optionCheckbox,o)}),jsxs("div",{className:o?"":"ndpr-consent-banner__option-text",children:[jsxs("label",{htmlFor:`consent-${t.id}`,className:a$2("ndpr-consent-banner__option-label",n==null?void 0:n.optionLabel,o),children:[t.label,t.required&&jsx("span",{className:o?"":"ndpr-consent-banner__required-marker",children:" *"})]}),jsx("p",{className:a$2("ndpr-consent-banner__option-description",n==null?void 0:n.optionDescription,o),children:t.description})]})]},t.id))}),jsxs("div",{className:a$2("ndpr-consent-banner__buttons",n==null?void 0:n.buttonGroup,o),children:[jsx("button",{onClick:Dn,className:a$2($n,n==null?void 0:n.saveButton,o),children:an}),jsx("button",{onClick:()=>I(false),className:a$2(Q,n==null?void 0:n.rejectButton,o),children:(en=c$1.common.back)!=null?en:"Back"})]})]}),!f&&jsxs("div",{className:a$2("ndpr-consent-banner__buttons",n==null?void 0:n.buttonGroup,o),children:[jsx("button",{onClick:An,className:a$2(jn,n==null?void 0:n.acceptButton,o),children:_n}),jsx("button",{onClick:J,className:a$2(Q,n==null?void 0:n.rejectButton,o),children:Cn}),jsx("button",{onClick:()=>I(true),className:a$2(In,n==null?void 0:n.customizeButton,o),children:hn})]}),jsx("div",{className:a$2("ndpr-consent-banner__footer-text",void 0,o),children:'By clicking "Accept All", you agree to the use of ALL cookies. Visit our Cookie Policy to learn more.'})]})});if(Y)return F;if(O){let t=jsx("div",{className:o?"":"ndpr-consent-banner__overlay",style:{zIndex:x},children:F});return s?createPortal(t,document.body):null}return s?createPortal(F,document.body):null};export{Vn as a};
|
package/dist/chunk-L2VO3MEJ.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
'use strict';var react=require('react');var m='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])';function v(p){let{active:c,onEscape:o,autoFocus:r=true}=p,t=react.useRef(null),s=react.useRef(null);return react.useEffect(()=>{if(!c||(s.current=typeof document!="undefined"?document.activeElement:null,!t.current))return;let i=false,u;r&&(u=setTimeout(()=>{if(i||!t.current)return;let e=t.current.querySelectorAll(m);e.length>0?e[0].focus():(t.current.tabIndex<0&&(t.current.tabIndex=-1),t.current.focus());},0));let l=e=>{if(e.key==="Escape"&&o){o();return}if(e.key!=="Tab"||!t.current)return;let n=t.current.querySelectorAll(m);if(n.length===0)return;let f=n[0],a=n[n.length-1];e.shiftKey?document.activeElement===f&&(e.preventDefault(),a.focus()):document.activeElement===a&&(e.preventDefault(),f.focus());};return document.addEventListener("keydown",l),()=>{i=true,u&&clearTimeout(u),document.removeEventListener("keydown",l);let e=s.current;e&&typeof document!="undefined"&&document.contains(e)&&typeof e.focus=="function"&&e.focus();}},[c,o,r]),t}exports.a=v;
|
package/dist/chunk-LAAJVTUV.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import {c,d as d$1}from'./chunk-MGXWQW5I.mjs';import {a as a$1}from'./chunk-6A7M4CGJ.mjs';import {a}from'./chunk-WJSUVPYX.mjs';import {d}from'./chunk-675DXBED.mjs';import {useMemo,useState,useRef,useCallback,useEffect}from'react';function h(e,o){return useMemo(()=>a(e,o),[e,o])}function x({input:e}){let o=JSON.stringify(e);return useMemo(()=>a$1(e),[o])}function b(e,o){return useMemo(()=>c(e,o),[e.dataSubjectsInSixMonths,e.isDesignated,o])}function v(e,o){let[u,f]=useState(null),i=useRef(e),r=useRef(o);i.current=e,r.current=o;let t=useCallback(()=>{f(d(i.current,r.current));},[]);return useEffect(()=>{t();},[t]),{result:u,rescan:t}}function q(e,o){return useMemo(()=>d$1(e,o),[e.commencementDate,e.asOf,e.tier,o])}export{h as a,x as b,b as c,v as d,q as e};
|
package/dist/chunk-PXUX4FYM.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
'use strict';var chunkL2VO3MEJ_js=require('./chunk-L2VO3MEJ.js'),chunkAME4HJR4_js=require('./chunk-AME4HJR4.js'),chunkI5ZDNSX5_js=require('./chunk-I5ZDNSX5.js'),chunkRFPLZDIO_js=require('./chunk-RFPLZDIO.js'),react=require('react'),reactDom=require('react-dom'),jsxRuntime=require('react/jsx-runtime');var Vn=({options:d,onSave:bn,title:A,description:y,acceptAllButtonText:P,rejectAllButtonText:E,customizeButtonText:D,saveButtonText:z,position:pn="bottom",variant:a="bar",zIndex:x=9999,version:C="1.0",show:h,manageStorage:L=true,storageKey:w="ndpr_consent",className:V="",buttonClassName:j="",primaryButtonClassName:ln="",secondaryButtonClassName:fn="",classNames:n,unstyled:o,onAnalytics:k})=>{var U,X,Z,T,m,N,nn,tn,en;let c=chunkI5ZDNSX5_js.c(),gn=(U=A!=null?A:c.consent.title)!=null?U:"We Value Your Privacy",vn=(X=y!=null?y:c.consent.description)!=null?X:"We use cookies and similar technologies to provide our services and enhance your experience. Your consent is collected in accordance with NDPA Sections 25-26.",_n=(Z=P!=null?P:c.consent.acceptAll)!=null?Z:"Accept All",Cn=(T=E!=null?E:c.consent.rejectAll)!=null?T:"Reject All",hn=(m=D!=null?D:c.consent.customize)!=null?m:"Customize",an=(N=z!=null?z:c.consent.savePreferences)!=null?N:"Save Preferences",kn=(nn=c.consent.selectAll)!=null?nn:"Select All",Sn=(tn=c.consent.deselectAll)!=null?tn:"Deselect All",[b,u]=react.useState(false),[f,I]=react.useState(false),[S,B]=react.useState({}),[s,Bn]=react.useState(false),Rn=chunkL2VO3MEJ_js.a({active:b}),$=react.useRef(null),q=react.useRef(false);react.useEffect(()=>{Bn(true);},[]);let p=react.useCallback((t,e)=>{k==null||k(chunkRFPLZDIO_js.a({action:t,timestamp:Date.now(),version:C},e!==void 0?{categories:e}:{}));},[k,C]);react.useEffect(()=>{let t={};if(d.forEach(e=>{t[e.id]=e.defaultValue||false;}),B(t),h===void 0)if(!L)u(true);else {let e=localStorage.getItem(w);if(e)try{JSON.parse(e).version!==C?u(!0):u(!1);}catch(G){u(true);}else u(true);}else u(h);},[d,w,C,L]),react.useEffect(()=>{h!==void 0&&u(h);},[h]);let An=()=>{let t={};d.forEach(e=>{t[e.id]=true;}),p("accepted_all",t),H(t);},J=()=>{let t={};d.forEach(e=>{t[e.id]=e.required||false;}),p("rejected_all",t),H(t);},yn=(t,e)=>{B(G=>chunkRFPLZDIO_js.b(chunkRFPLZDIO_js.a({},G),{[t]:e}));},Pn=()=>{let t={};d.forEach(e=>{t[e.id]=true;}),B(t);},En=()=>{let t={};d.forEach(e=>{t[e.id]=e.required||false;}),B(t);},W=d.length>0&&d.every(t=>S[t.id]),Dn=()=>{p("customized",S),H(S);},H=t=>{let e={consents:t,timestamp:Date.now(),version:C,method:f?"customize":"banner",hasInteracted:true};L&&localStorage.setItem(w,JSON.stringify(e)),bn(e),u(false),I(false);};if(react.useEffect(()=>{if(!b)return;let t=e=>{e.key==="Escape"&&(p("dismissed"),J());};return document.addEventListener("keydown",t),()=>document.removeEventListener("keydown",t)},[b,p,d,f]),react.useEffect(()=>{b&&!q.current&&(q.current=true,p("shown")),b||(q.current=false);},[b,p]),react.useEffect(()=>{if(f&&$.current){let t=$.current;t.style.maxHeight="0px",t.style.opacity="0",t.offsetHeight,t.style.maxHeight=`${t.scrollHeight}px`,t.style.opacity="1";}},[f]),!b)return null;let g=a==="modal"?"center":pn,Y=g==="inline",O=g==="center",v=["ndpr-consent-banner"];a!=="bar"&&v.push(`ndpr-consent-banner--${a}`),g==="top"?v.push("ndpr-consent-banner--top"):g==="bottom"?v.push("ndpr-consent-banner--bottom"):g==="inline"&&v.push("ndpr-consent-banner--inline"),V&&v.push(V);let zn=v.join(" "),K=`ndpr-consent-banner__button ndpr-consent-banner__button--primary ${j} ${ln}`.trim(),Ln=`ndpr-consent-banner__button ndpr-consent-banner__button--secondary ${j} ${fn}`.trim(),wn=`ndpr-consent-banner__button ndpr-consent-banner__button--ghost ${j}`.trim(),jn=(n==null?void 0:n.primaryButton)||(n==null?void 0:n.acceptButton)||K,Q=(n==null?void 0:n.secondaryButton)||(n==null?void 0:n.rejectButton)||Ln,In=(n==null?void 0:n.customizeButton)||wn,$n=(n==null?void 0:n.saveButton)||K,F=jsxRuntime.jsx("div",{ref:Rn,tabIndex:-1,"data-ndpr-component":"consent-banner","data-ndpr-variant":a,"data-ndpr-position":g,className:chunkAME4HJR4_js.a(zn,n==null?void 0:n.root,o),style:!Y&&!O?{zIndex:x}:void 0,role:"dialog","aria-modal":O||void 0,"aria-labelledby":"consent-banner-title","aria-describedby":"consent-banner-description",children:jsxRuntime.jsxs("div",{className:chunkAME4HJR4_js.a("ndpr-consent-banner__container",n==null?void 0:n.container,o),children:[jsxRuntime.jsx("h2",{id:"consent-banner-title",className:chunkAME4HJR4_js.a("ndpr-consent-banner__title",n==null?void 0:n.title,o),children:gn}),jsxRuntime.jsx("p",{id:"consent-banner-description",className:chunkAME4HJR4_js.a("ndpr-consent-banner__description",n==null?void 0:n.description,o),children:vn}),f&&jsxRuntime.jsxs("div",{ref:$,className:chunkAME4HJR4_js.a("ndpr-consent-banner__customize-panel",n==null?void 0:n.customizePanel,o),children:[jsxRuntime.jsx("div",{className:o?"":"ndpr-consent-banner__select-all-row",children:jsxRuntime.jsx("button",{type:"button",onClick:W?En:Pn,className:chunkAME4HJR4_js.a("ndpr-consent-banner__select-all-button",n==null?void 0:n.selectAllButton,o),children:W?Sn:kn})}),jsxRuntime.jsx("div",{className:chunkAME4HJR4_js.a("ndpr-consent-banner__options-list",n==null?void 0:n.optionsList,o),children:d.map(t=>jsxRuntime.jsxs("div",{className:chunkAME4HJR4_js.a("ndpr-consent-banner__option",n==null?void 0:n.optionItem,o),children:[jsxRuntime.jsx("input",{id:`consent-${t.id}`,type:"checkbox",checked:S[t.id]||false,onChange:e=>yn(t.id,e.target.checked),disabled:t.required,className:chunkAME4HJR4_js.a("ndpr-consent-banner__option-checkbox",n==null?void 0:n.optionCheckbox,o)}),jsxRuntime.jsxs("div",{className:o?"":"ndpr-consent-banner__option-text",children:[jsxRuntime.jsxs("label",{htmlFor:`consent-${t.id}`,className:chunkAME4HJR4_js.a("ndpr-consent-banner__option-label",n==null?void 0:n.optionLabel,o),children:[t.label,t.required&&jsxRuntime.jsx("span",{className:o?"":"ndpr-consent-banner__required-marker",children:" *"})]}),jsxRuntime.jsx("p",{className:chunkAME4HJR4_js.a("ndpr-consent-banner__option-description",n==null?void 0:n.optionDescription,o),children:t.description})]})]},t.id))}),jsxRuntime.jsxs("div",{className:chunkAME4HJR4_js.a("ndpr-consent-banner__buttons",n==null?void 0:n.buttonGroup,o),children:[jsxRuntime.jsx("button",{onClick:Dn,className:chunkAME4HJR4_js.a($n,n==null?void 0:n.saveButton,o),children:an}),jsxRuntime.jsx("button",{onClick:()=>I(false),className:chunkAME4HJR4_js.a(Q,n==null?void 0:n.rejectButton,o),children:(en=c.common.back)!=null?en:"Back"})]})]}),!f&&jsxRuntime.jsxs("div",{className:chunkAME4HJR4_js.a("ndpr-consent-banner__buttons",n==null?void 0:n.buttonGroup,o),children:[jsxRuntime.jsx("button",{onClick:An,className:chunkAME4HJR4_js.a(jn,n==null?void 0:n.acceptButton,o),children:_n}),jsxRuntime.jsx("button",{onClick:J,className:chunkAME4HJR4_js.a(Q,n==null?void 0:n.rejectButton,o),children:Cn}),jsxRuntime.jsx("button",{onClick:()=>I(true),className:chunkAME4HJR4_js.a(In,n==null?void 0:n.customizeButton,o),children:hn})]}),jsxRuntime.jsx("div",{className:chunkAME4HJR4_js.a("ndpr-consent-banner__footer-text",void 0,o),children:'By clicking "Accept All", you agree to the use of ALL cookies. Visit our Cookie Policy to learn more.'})]})});if(Y)return F;if(O){let t=jsxRuntime.jsx("div",{className:o?"":"ndpr-consent-banner__overlay",style:{zIndex:x},children:F});return s?reactDom.createPortal(t,document.body):null}return s?reactDom.createPortal(F,document.body):null};exports.a=Vn;
|
package/dist/chunk-YTU4FNM2.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import {useRef,useEffect}from'react';var m='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])';function v(p){let{active:c,onEscape:o,autoFocus:r=true}=p,t=useRef(null),s=useRef(null);return useEffect(()=>{if(!c||(s.current=typeof document!="undefined"?document.activeElement:null,!t.current))return;let i=false,u;r&&(u=setTimeout(()=>{if(i||!t.current)return;let e=t.current.querySelectorAll(m);e.length>0?e[0].focus():(t.current.tabIndex<0&&(t.current.tabIndex=-1),t.current.focus());},0));let l=e=>{if(e.key==="Escape"&&o){o();return}if(e.key!=="Tab"||!t.current)return;let n=t.current.querySelectorAll(m);if(n.length===0)return;let f=n[0],a=n[n.length-1];e.shiftKey?document.activeElement===f&&(e.preventDefault(),a.focus()):document.activeElement===a&&(e.preventDefault(),f.focus());};return document.addEventListener("keydown",l),()=>{i=true,u&&clearTimeout(u),document.removeEventListener("keydown",l);let e=s.current;e&&typeof document!="undefined"&&document.contains(e)&&typeof e.focus=="function"&&e.focus();}},[c,o,r]),t}export{v as a};
|
package/dist/chunk-ZVWSSXV2.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
'use strict';function S(r){let e=[];if((!r.consents||Object.keys(r.consents).length===0)&&e.push({field:"consents",code:"consents_required",message:"Consent settings must include at least one consent option"}),r.timestamp?(typeof r.timestamp!="number"||isNaN(r.timestamp))&&e.push({field:"timestamp",code:"timestamp_invalid",message:"Consent timestamp must be a valid number"}):e.push({field:"timestamp",code:"timestamp_required",message:"Consent timestamp is required"}),r.version||e.push({field:"version",code:"version_required",message:"Consent version is required"}),r.method||e.push({field:"method",code:"method_required",message:"Consent collection method is required"}),r.hasInteracted===void 0&&e.push({field:"hasInteracted",code:"has_interacted_required",message:"User interaction status is required"}),r.timestamp){let o=new Date;o.setMonth(o.getMonth()-13);let n=o.getTime();r.timestamp<n&&e.push({field:"timestamp",code:"consent_stale",message:"Consent is older than 13 months and should be refreshed"});}return e.length>0?{valid:false,errors:e}:{valid:true,errors:[],data:r}}function b(r){let e=[];return (!r||r.length===0)&&e.push({field:"options",code:"options_required",message:"At least one consent option is required"}),r==null||r.forEach((o,n)=>{(!o.purpose||o.purpose.trim()==="")&&e.push({field:`options[${n}].purpose`,code:"purpose_required",message:`Consent option "${o.id}" is missing a purpose. NDPA Section 26 requires consent to be specific to a stated purpose.`});}),e.length>0?{valid:false,errors:e}:{valid:true,errors:[],data:r}}var v=[{name:"_ga",category:"analytics",provider:"Google Analytics",purpose:"Distinguishes users"},{name:"_ga_",prefix:true,category:"analytics",provider:"Google Analytics (GA4)",purpose:"Persists session state"},{name:"_gid",category:"analytics",provider:"Google Analytics",purpose:"Distinguishes users"},{name:"_gat",prefix:true,category:"analytics",provider:"Google Analytics",purpose:"Throttles request rate"},{name:"_dc_gtm_",prefix:true,category:"analytics",provider:"Google Tag Manager",purpose:"Throttles request rate"},{name:"_gcl_",prefix:true,category:"marketing",provider:"Google Ads",purpose:"Conversion tracking"},{name:"IDE",category:"marketing",provider:"Google DoubleClick",purpose:"Ad targeting"},{name:"test_cookie",category:"marketing",provider:"Google DoubleClick",purpose:"Checks cookie support"},{name:"_fbp",category:"marketing",provider:"Meta (Facebook)",purpose:"Ad delivery and measurement"},{name:"_fbc",category:"marketing",provider:"Meta (Facebook)",purpose:"Click attribution"},{name:"fr",category:"marketing",provider:"Meta (Facebook)",purpose:"Ad delivery and measurement"},{name:"_clck",category:"analytics",provider:"Microsoft Clarity",purpose:"Session analytics"},{name:"_clsk",category:"analytics",provider:"Microsoft Clarity",purpose:"Session analytics"},{name:"_hj",prefix:true,category:"analytics",provider:"Hotjar",purpose:"Behaviour analytics"},{name:"bcookie",category:"marketing",provider:"LinkedIn",purpose:"Browser identification"},{name:"lidc",category:"marketing",provider:"LinkedIn",purpose:"Routing / ad delivery"},{name:"li_",prefix:true,category:"marketing",provider:"LinkedIn",purpose:"Ad delivery"},{name:"_ttp",category:"marketing",provider:"TikTok",purpose:"Ad measurement"},{name:"personalization_id",category:"marketing",provider:"X (Twitter)",purpose:"Ad personalisation"},{name:"guest_id",category:"marketing",provider:"X (Twitter)",purpose:"Identifies the browser"},{name:"hubspotutk",category:"marketing",provider:"HubSpot",purpose:"Visitor identification"},{name:"__hs",prefix:true,category:"analytics",provider:"HubSpot",purpose:"Analytics / session"},{name:"__stripe_mid",category:"necessary",provider:"Stripe",purpose:"Fraud prevention"},{name:"__stripe_sid",category:"necessary",provider:"Stripe",purpose:"Fraud prevention"},{name:"intercom-",prefix:true,category:"functional",provider:"Intercom",purpose:"Live chat / messaging"},{name:"ndpr_consent",category:"necessary",provider:"NDPR Toolkit",purpose:"Stores the consent decision"}];function k(r,e){return e.name instanceof RegExp?e.name.test(r):e.prefix?r.startsWith(e.name):r===e.name}function C(r){return r.split(";").map(e=>{let o=e.trim(),n=o.indexOf("=");return (n===-1?o:o.slice(0,n)).trim()}).filter(e=>e.length>0)}function A(r=[],e={}){var u,l,m,g,f,y;let o=(u=e.cookieString)!=null?u:typeof document!="undefined"?document.cookie:"",n=(l=e.asOf)!=null?l:Date.now(),h=((m=e.useKnownRegistry)!=null?m:true)?[...(g=e.knownCookies)!=null?g:[],...v]:[],a=C(o).map(t=>{let i=r.find(d=>k(t,d));if(i)return {name:t,category:i.category,matchedBy:"declared",provider:i.provider,purpose:i.purpose};let c=h.find(d=>k(t,d));return c?{name:t,category:c.category,matchedBy:"known",provider:c.provider,purpose:c.purpose}:{name:t,category:null,matchedBy:"none"}}),s={};for(let t of a){let i=(f=t.category)!=null?f:"uncategorized";((y=s[i])!=null?y:s[i]=[]).push(t);}let p=a.filter(t=>t.matchedBy!=="declared");return {scannedAt:n,total:a.length,cookies:a,declared:a.filter(t=>t.matchedBy==="declared"),undeclared:p,identified:a.filter(t=>t.matchedBy==="known"),unknown:a.filter(t=>t.matchedBy==="none"),byCategory:s,complete:p.length===0}}exports.a=S;exports.b=b;exports.c=v;exports.d=A;
|