@redacto.io/consent-sdk-js 0.1.1 → 0.1.2-beta.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.
@@ -128,6 +128,6 @@
128
128
  .redacto-dl-retry-btn:hover {
129
129
  background-color: #2563eb !important;
130
130
  }
131
- `,ae=n=>{if(typeof document=="undefined"||(n instanceof Document?n.getElementById(Se):n.querySelector(`#${Se}`)))return;let t=document.createElement("style");t.id=Se,t.textContent=Tt,n instanceof Document?n.head.appendChild(t):n.appendChild(t)};var g={overlay:{position:"fixed",top:0,left:0,width:"100%",height:"100%",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:999,animation:"overlayFadeIn 0.2s cubic-bezier(0.16, 1, 0.3, 1)",pointerEvents:"all",margin:0,padding:0,boxSizing:"border-box"},modal:{position:"fixed",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"700px",borderRadius:"8px",backgroundColor:"#ffffff",boxShadow:"4px 0px 4px 0px #00000040",border:"none",display:"flex",flexDirection:"column",maxHeight:"90vh",zIndex:1e3,margin:0,padding:0,boxSizing:"border-box",textAlign:"left",fontFamily:"inherit"},content:{margin:"22px",display:"flex",flexDirection:"column",flexGrow:1,overflow:"hidden",minHeight:0,boxSizing:"border-box",textAlign:"left"},topSection:{display:"flex",justifyContent:"space-between",alignItems:"flex-start",gap:"10px",paddingBottom:"15px",borderBottom:"none",backgroundColor:"#ffffff",margin:0,boxSizing:"border-box",textAlign:"left"},topLeft:{display:"flex",alignItems:"center",gap:"10px",flex:"1 1 0",minWidth:0,margin:0,padding:0,boxSizing:"border-box"},logo:{height:"32px",width:"auto",maxWidth:"140px",objectFit:"contain",flexShrink:0,margin:0,padding:0,display:"block"},title:{fontSize:"18px",fontWeight:700,lineHeight:"150%",letterSpacing:"0.2px",verticalAlign:"middle",color:"#101828",flex:"1 1 auto",minWidth:0,wordBreak:"normal",overflowWrap:"anywhere",margin:0,padding:0,textAlign:"left"},topRight:{borderRadius:"8px",padding:"3px 9px",border:"1px solid #d0d5dd",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,fontWeight:400,fontSize:"12px",lineHeight:"150%",letterSpacing:"0.2px",verticalAlign:"middle",color:"#344054",gap:"5px",margin:0,boxSizing:"border-box",textAlign:"left",cursor:"pointer",backgroundColor:"#ffffff"},middleSection:{margin:"0px",display:"flex",flexDirection:"column",gap:"12px",flexGrow:1,overflowY:"auto",minHeight:0,paddingRight:"15px",boxSizing:"border-box",textAlign:"left"},privacyText:{fontSize:"16px",fontWeight:400,lineHeight:"150%",color:"#344054",margin:0,padding:0,textAlign:"left"},link:{color:"#4f87ff",textDecoration:"none",margin:0,padding:0,boxSizing:"border-box"},subTitle:{fontWeight:600,fontSize:"16px",lineHeight:"150%",letterSpacing:"0.2px",color:"#101828",margin:0,padding:0,textAlign:"left"},optionsContainer:{display:"flex",flexDirection:"column",gap:"10px",margin:0,padding:0,boxSizing:"border-box"},optionItem:{display:"flex",justifyContent:"space-between",alignItems:"center",margin:0,padding:0,boxSizing:"border-box"},optionLeft:{display:"flex",gap:"12px",alignItems:"center",cursor:"pointer",margin:0,padding:0,boxSizing:"border-box"},optionTextContainer:{display:"flex",flexDirection:"column",margin:0,padding:0,boxSizing:"border-box"},optionTitle:{fontWeight:500,fontSize:"16px",lineHeight:"150%",letterSpacing:"0.2px",color:"#101828",margin:0,padding:0,textAlign:"left"},optionDescription:{fontWeight:400,fontSize:"12px",lineHeight:"150%",letterSpacing:"0.2px",color:"#475467",verticalAlign:"middle",margin:0,padding:0,textAlign:"left"},checkboxLarge:{height:"20px",width:"20px",padding:"4px",borderRadius:"5px",border:"2px solid #d0d5dd",margin:0,boxSizing:"border-box",appearance:"none",WebkitAppearance:"none",MozAppearance:"none",cursor:"pointer",position:"relative",backgroundColor:"transparent"},dataElementsContainer:{marginLeft:"27px",display:"flex",flexDirection:"column",margin:0,padding:0,boxSizing:"border-box",paddingLeft:"22px"},dataElementItem:{display:"flex",alignItems:"center",gap:"10px",justifyContent:"space-between",margin:0,padding:0,boxSizing:"border-box",minHeight:"24px"},dataElementText:{fontWeight:400,fontSize:"14px",lineHeight:"150%",letterSpacing:"0.2px",color:"#344054",margin:0,padding:0,textAlign:"left"},checkboxSmall:{height:"16px",width:"16px",padding:"4px",borderRadius:"5px",border:"2px solid #d0d5dd",margin:0,boxSizing:"border-box",appearance:"none",WebkitAppearance:"none",MozAppearance:"none",cursor:"pointer",position:"relative",backgroundColor:"transparent"},bottomSection:{display:"flex",justifyContent:"space-between",gap:"29px",paddingTop:"15px",borderTop:"none",backgroundColor:"#ffffff",margin:0,boxSizing:"border-box"},button:{width:"100%",borderRadius:"8px",padding:"9px 45px",fontWeight:400,fontSize:"16px",lineHeight:"150%",letterSpacing:"0.2px",cursor:"pointer",margin:0,boxSizing:"border-box",textAlign:"center"},acceptButton:{backgroundColor:"#4f87ff",border:"none",color:"#ffffff"},cancelButton:{border:"1px solid #d0d5dd",backgroundColor:"#ffffff",color:"#000000"},languageSelectorContainer:{position:"relative",margin:0,padding:0,boxSizing:"border-box"},languageDropdown:{position:"absolute",top:"100%",right:0,backgroundColor:"#ffffff",border:"1px solid #d0d5dd",borderRadius:"4px",boxShadow:"0px 2px 4px rgba(0, 0, 0, 0.1)",zIndex:10,width:"max-content",maxHeight:"200px",overflowY:"auto",marginTop:"4px",padding:0,boxSizing:"border-box",textAlign:"left"},languageItem:{padding:"8px 12px",cursor:"pointer",fontSize:"12px",color:"#344054",backgroundColor:"#ffffff",borderBottom:"1px solid #e5e7eb",margin:0,boxSizing:"border-box",textAlign:"left"},selectedLanguageItem:{backgroundColor:"#f3f4f6",fontWeight:600},loadingContainer:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:"2rem",minHeight:"200px",margin:0,boxSizing:"border-box"},loadingSpinner:{width:"40px",height:"40px",border:"4px solid #f3f3f3",borderTop:"4px solid #3498db",borderRadius:"50%",animation:"spin 1s linear infinite",marginBottom:"1rem",boxSizing:"border-box"}};function we(n,e){var I,B;let{selectedPurposes:t,collapsedPurposes:o,selectedDataElements:r,initialDataElementSelections:i={},settings:s,isMobile:p,isAlreadyConsented:d,getTranslatedText:l,onPurposeToggle:c,onPurposeCollapse:u,onDataElementToggle:x}=e,f=new Map,b=new Map,h=new Map,y=new Map,S=new Map,_=new Map,m=new Map,A=(s==null?void 0:s.headingColor)||"#323B4B",L=(s==null?void 0:s.textColor)||"#344054",v=(s==null?void 0:s.font)||"inherit",w=a("div",{style:g.optionsContainer});for(let E of n){let D=a("div"),k=R("svg",{width:"7",height:"12",viewBox:"0 0 7 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:A,"stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{transform:o[E.uuid]?"rotate(0deg)":"rotate(90deg)",transition:"transform 0.3s ease"},"aria-hidden":"true"},R("path",{d:"M1 1L6 6L1 11"}));y.set(E.uuid,k);let H=a("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",marginLeft:"5px"}},k),M=a("h2",{id:`purpose-name-${E.uuid}`,style:{...g.optionTitle,fontSize:p?"14px":"16px",color:A,fontFamily:v}});M.textContent=l("purposes.name",E.name,E.uuid),S.set(E.uuid,M);let z=a("h3",{id:`purpose-description-${E.uuid}`,style:{...g.optionDescription,fontSize:p?"11px":"12px",color:L,fontFamily:v}});z.textContent=l("purposes.description",E.description,E.uuid),_.set(E.uuid,z);let G=a("div",{style:g.optionTextContainer},M,z),V=a("div",{style:g.optionLeft,role:"button",tabIndex:"0","aria-expanded":String(!o[E.uuid]),"aria-controls":`purpose-${E.uuid}`,"aria-label":`${o[E.uuid]?"Expand":"Collapse"} ${l("purposes.name",E.name,E.uuid)} details`,onClick:()=>u(E.uuid),onKeydown:C=>{(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),u(E.uuid))}},H,G);b.set(E.uuid,V);let N;if(d)N=Je(20,`Already consented to ${l("purposes.name",E.name,E.uuid)}`),he(N,{marginLeft:"12px"});else{let C=a("input",{className:"redacto-checkbox-large",type:"checkbox",checked:t[E.uuid]||!1,"aria-label":`Select all data elements for ${l("purposes.name",E.name,E.uuid)}`,onChange:()=>c(E.uuid)});f.set(E.uuid,C),N=C}let j=a("div",{style:g.optionItem},V,N),O=a("div",{id:`purpose-${E.uuid}`,style:g.dataElementsContainer});if(((I=E.data_elements)==null?void 0:I.length)>0)for(let C of E.data_elements){let T=`${E.uuid}-${C.uuid}`,P=a("span",{id:`data-element-${E.uuid}-${C.uuid}`,style:{...g.dataElementText,fontSize:p?"12px":"14px",color:L,fontFamily:v}});if(P.textContent=l("data_elements.name",C.name,C.uuid),m.set(T,P),C.required){let q=a("span",{style:{color:"red",marginLeft:"4px"},"aria-label":"required"});q.textContent="*",P.appendChild(q)}let $;if(d)i[T]||!1?$=Je(16,`Consented to ${l("data_elements.name",C.name,C.uuid)}`):$=a("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",width:"16px",height:"16px",borderRadius:"50%",border:"2px solid #d0d5dd",backgroundColor:"transparent"},"aria-label":`Not consented to ${l("data_elements.name",C.name,C.uuid)}`});else{let q=a("input",{className:"redacto-checkbox-small",type:"checkbox",checked:r[T]||!1,"aria-label":`Select ${l("data_elements.name",C.name,C.uuid)}${C.required?" (required)":""}`,onChange:()=>x(C.uuid,E.uuid)});f.set(T,q),$=q}let U=a("div",{style:g.dataElementItem},P,$);O.appendChild(U)}h.set(E.uuid,O),O.style.display=!o[E.uuid]&&((B=E.data_elements)==null?void 0:B.length)>0?"flex":"none",D.appendChild(j),D.appendChild(O),w.appendChild(D)}return{container:w,checkboxes:f,collapseButtons:b,dataElementContainers:h,chevrons:y,titleElements:S,descriptionElements:_,dataElementLabels:m}}function Je(n,e){let t=n===20?12:10,o=n===20?"2":"1.5",r=n===20?"M4 6L5.5 7.5L8.5 4.5":"M3 5L4.5 6.5L7.5 3.5",i=R("svg",{width:String(t),height:String(t),viewBox:`0 0 ${t} ${t}`,fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},R("path",{d:r,stroke:"white","stroke-width":o,"stroke-linecap":"round","stroke-linejoin":"round"}));return a("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",width:`${n}px`,height:`${n}px`,borderRadius:"50%",backgroundColor:"#10B981"},"aria-label":e},i)}var Rt={English:"English",Assamese:"\u0985\u09B8\u09AE\u09C0\u09AF\u09BC\u09BE (Assamese)",Bengali:"\u09AC\u09BE\u0982\u09B2\u09BE (Bengali)",Bhojpuri:"\u092D\u094B\u091C\u092A\u0941\u0930\u0940 (Bhojpuri)",Bodo:"\u092C\u0921\u093C\u094B (Bodo)",Dogri:"\u0921\u094B\u0917\u0930\u0940 (Dogri)","Goan Konkani":"\u0915\u094B\u0902\u0915\u0923\u0940 (Goan Konkani)",Gujarati:"\u0A97\u0AC1\u0A9C\u0AB0\u0ABE\u0AA4\u0AC0 (Gujarati)",Hindi:"\u0939\u093F\u0928\u094D\u0926\u0940 (Hindi)",Kannada:"\u0C95\u0CA8\u0CCD\u0CA8\u0CA1 (Kannada)",Kashmiri:"\u0643\u0672\u0634\u064F\u0631 (Kashmiri)",Maithili:"\u092E\u0948\u0925\u093F\u0932\u0940 (Maithili)",Malayalam:"\u0D2E\u0D32\u0D2F\u0D3E\u0D33\u0D02 (Malayalam)",Manipuri:"\uABC3\uABE9\uABC7\uABE9\uABC2\uABE3\uABDF (Manipuri)",Marathi:"\u092E\u0930\u093E\u0920\u0940 (Marathi)",Nepali:"\u0928\u0947\u092A\u093E\u0932\u0940 (Nepali)",Odia:"\u0B13\u0B21\u0B3C\u0B3F\u0B06 (Odia)",Punjabi:"\u0A2A\u0A70\u0A1C\u0A3E\u0A2C\u0A40 (Punjabi)",Sanskrit:"\u0938\u0902\u0938\u094D\u0915\u0943\u0924\u092E\u094D (Sanskrit)",Santali:"\u1C65\u1C5F\u1C71\u1C5B\u1C5F\u1C72\u1C64 (Santali)",Sindhi:"\u0633\u0646\u068C\u064A (Sindhi)",Tamil:"\u0BA4\u0BAE\u0BBF\u0BB4\u0BCD (Tamil)",Telugu:"\u0C24\u0C46\u0C32\u0C41\u0C17\u0C41 (Telugu)",Urdu:"\u0627\u0631\u062F\u0648 (Urdu)"},ke=n=>{var e;return(e=Rt[n])!=null?e:n};function Xe(n){var m,A,L,v;let{languages:e,selectedLanguage:t,settings:o,onSelect:r,dropdownContainer:i}=n,s=!1,p=a("span");p.textContent=ke(t);let d=R("svg",{width:"8",height:"5",viewBox:"0 0 8 5",fill:"none",xmlns:"http://www.w3.org/2000/svg"},R("path",{d:"M1 1L4 4L7 1",stroke:((A=(m=o==null?void 0:o.button)==null?void 0:m.language)==null?void 0:A.textColor)||"#344054","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})),l={...g.topRight};(L=o==null?void 0:o.button)!=null&&L.language&&(l.backgroundColor=o.button.language.backgroundColor,l.color=o.button.language.textColor);let c=a("div",{style:l,role:"button",tabIndex:"0","aria-haspopup":"listbox","aria-expanded":"false","aria-label":`Language selector, current: ${ke(t)}`,onClick:()=>y(),onKeydown:w=>{w.key==="Enter"||w.key===" "?(w.preventDefault(),y()):w.key==="Escape"&&_()}},p,d),u=a("div",{style:{position:"fixed",backgroundColor:"#ffffff",border:"1px solid #d0d5dd",borderRadius:"4px",boxShadow:"0px 4px 12px rgba(0, 0, 0, 0.15)",zIndex:2147483647,minWidth:"140px",maxHeight:"200px",overflowY:"auto",padding:0,boxSizing:"border-box",textAlign:"left",display:"none"},role:"listbox","aria-label":"Select language"});for(let w of e){let I=w===t,B=I?{...g.languageItem,...g.selectedLanguageItem}:{...g.languageItem};(v=o==null?void 0:o.button)!=null&&v.language&&(I&&o.button.language.selectedBackgroundColor&&(B.backgroundColor=o.button.language.selectedBackgroundColor),I&&o.button.language.selectedTextColor&&(B.color=o.button.language.selectedTextColor));let E=a("div",{style:B,role:"option","aria-selected":String(I),onClick:()=>{r(w),_()},onMouseenter:D=>{D.target.style.backgroundColor="#f3f4f6"},onMouseleave:D=>{D.target.style.backgroundColor=I?"#f3f4f6":"#ffffff"}});E.textContent=ke(w),u.appendChild(E)}let x=a("div",{style:g.languageSelectorContainer},c);i.appendChild(u);function f(){let w=c.getBoundingClientRect();u.style.top=`${w.bottom+4}px`,u.style.right=`${window.innerWidth-w.right}px`,u.style.left="auto"}let b=w=>{var B,E;let I=(E=(B=w.composedPath)==null?void 0:B.call(w))!=null?E:[];if(!(I.includes(x)||I.includes(u))){if(I.length===0){let D=w.target;if(x.contains(D)||u.contains(D))return}_()}},h=()=>{s&&f()};function y(){s?_():S()}function S(){s=!0,f(),u.style.display="block",c.setAttribute("aria-expanded","true"),setTimeout(()=>{document.addEventListener("click",b)},0),window.addEventListener("scroll",h,!0),window.addEventListener("resize",h)}function _(){s=!1,u.style.display="none",c.setAttribute("aria-expanded","false"),document.removeEventListener("click",b),window.removeEventListener("scroll",h,!0),window.removeEventListener("resize",h)}return{container:x,button:c,dropdown:u,buttonText:p}}function le(n,e){let t=o=>{var r;if(o.key==="Escape"){o.preventDefault(),e();return}if(o.key==="Tab"){let i=n.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])'),s=Array.from(i).filter(u=>!u.hasAttribute("disabled")&&u.offsetParent!==null);if(s.length===0){o.preventDefault();return}let p=s[0],d=s[s.length-1],c=(r=n.getRootNode().activeElement)!=null?r:document.activeElement;o.shiftKey?c===p&&(o.preventDefault(),d.focus()):c===d&&(o.preventDefault(),p.focus())}};return document.addEventListener("keydown",t),requestAnimationFrame(()=>{let o=n.querySelector('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');o==null||o.focus()}),()=>{document.removeEventListener("keydown",t)}}var _e="redacto_consent_sdk_state";var Te=()=>typeof window!="undefined"&&typeof window.sessionStorage!="undefined",Re=n=>{if(!Te()){console.warn("SessionStorage not available - state not persisted");return}try{let e={...n,timestamp:new Date().toISOString()};sessionStorage.setItem(_e,JSON.stringify(e))}catch(e){console.error("Failed to save consent state:",e)}},de=()=>{if(!Te())return null;try{let n=sessionStorage.getItem(_e);if(!n)return null;let e=JSON.parse(n);return Date.now()-new Date(e.timestamp).getTime()>18e5?(ee(),null):e}catch(n){return console.error("Failed to get consent state:",n),null}},ee=()=>{if(Te())try{sessionStorage.removeItem(_e)}catch(n){console.error("Failed to clear consent state:",n)}},Ze=n=>{let e=de();e&&Re({...e,...n,timestamp:new Date().toISOString()})};var et=[{audioKey:"grievance_text_audio_url",elementId:"dpo-grievance-text"},{audioKey:"grievance_anchor_text_audio_url",elementId:"dpo-grievance-link"},{audioKey:"grievance_email_connector_text_audio_url",elementId:"dpo-grievance-email-connector"},{audioKey:"grievance_email_audio_url",elementId:"dpo-grievance-email"},{audioKey:"dp_board_text_audio_url",elementId:"dpo-dp-board-text"},{audioKey:"dp_board_anchor_text_audio_url",elementId:"dpo-dp-board-link"},{audioKey:"dpo_text_audio_url",elementId:"dpo-dpo-text"},{audioKey:"dpo_anchor_text_audio_url",elementId:"dpo-dpo-link"}];var ye=class{constructor(e,t){this.audioUrls=null;this.audioSequence=[];this.elementIdSequence=[];this.currentAudio=null;this.currentIndex=0;this._isPlaying=!1;this._isPaused=!1;this._isAvailable=!1;this.highlightedElementId=null;this.abortController=null;this.onStateChange=e,this.root=t}get isPlaying(){return this._isPlaying}get isPaused(){return this._isPaused}get isAvailable(){return this._isAvailable}async fetchAudioUrls(e){var t;this.stopInternal(),this._isAvailable=!1,this.audioUrls=null,this.audioSequence=[],this.elementIdSequence=[],this.onStateChange(),(t=this.abortController)==null||t.abort(),this.abortController=new AbortController;try{let o=await Qe({accessToken:e.accessToken,baseUrl:e.baseUrl,noticeUuid:e.noticeUuid,language:e.language,signal:this.abortController.signal});this.audioUrls=o.detail,this.buildSequences(e.content),this._isAvailable=this.audioSequence.length>0,this.onStateChange()}catch(o){o.name!=="AbortError"&&(this._isAvailable=!1,this.audioUrls=null,this.audioSequence=[],this.elementIdSequence=[],this.onStateChange())}}buildSequences(e){var s,p;if(!this.audioUrls)return;let t=this.audioUrls,o=[],r=[],i=(d,l)=>{d&&(o.push(d),r.push(l))};i(t.notice_banner_heading_audio_url,"privacy-notice-title"),i(t.notice_text_audio_url,"privacy-notice-text"),i(t.privacy_policy_prefix_text_audio_url,"privacy-policy-text"),i(t.privacy_policy_anchor_text_audio_url,"privacy-policy-link"),i(t.purpose_section_heading_audio_url,"purpose-section-heading");for(let d of e.purposes){let l=(s=t.purposes_audio)==null?void 0:s[d.uuid];l&&(i(l.name_audio_url,`purpose-name-${d.uuid}`),i(l.description_audio_url,`purpose-description-${d.uuid}`));for(let c of d.data_elements){let u=(p=t.data_elements_audio)==null?void 0:p[c.uuid];u&&i(u.name_audio_url,`data-element-${d.uuid}-${c.uuid}`)}}if(i(t.additional_text_audio_url,"additional-text"),i(t.privacy_center_anchor_text_audio_url,"privacy-center-link"),t.dpo_info_audio)for(let d of et){let l=t.dpo_info_audio[d.audioKey];i(l,d.elementId)}i(t.confirm_button_text_audio_url,"confirm-button-text"),i(t.decline_button_text_audio_url,"decline-button-text"),this.audioSequence=o,this.elementIdSequence=r}toggle(){this._isPlaying?this.pause():this.play()}play(){if(this.audioSequence.length!==0)if(this._isPaused&&this.currentAudio)this.currentAudio.play().then(()=>{this._isPlaying=!0,this._isPaused=!1,this.onStateChange()}).catch(()=>{});else{let e=this._isPlaying?this.currentIndex:0;this.playNextAudio(e)}}pause(){this.currentAudio&&this._isPlaying&&(this.currentAudio.pause(),this._isPlaying=!1,this._isPaused=!0,this.onStateChange())}stop(){this.stopInternal(),this.onStateChange()}stopInternal(){this.currentAudio&&(this.currentAudio.pause(),this.currentAudio.currentTime=0,this.currentAudio=null),this._isPlaying=!1,this._isPaused=!1,this.currentIndex=0,this.removeHighlights(),this.highlightedElementId=null}destroy(){var e;(e=this.abortController)==null||e.abort(),this.stop()}playNextAudio(e){if(e>=this.audioSequence.length){this.stop();return}this.currentAudio&&(this.currentAudio.pause(),this.currentAudio=null);let t=new Audio(this.audioSequence[e]);this.currentAudio=t,this.currentIndex=e,this._isPlaying=!0,this._isPaused=!1;let o=this.elementIdSequence[e];o&&this.highlightElement(o),t.onended=()=>this.playNextAudio(e+1),t.onerror=()=>{console.warn(`Failed to load audio at index ${e}`),this.playNextAudio(e+1)},t.play().catch(r=>{console.warn(`Failed to play audio at index ${e}:`,r),this._isPlaying=!1,this.onStateChange()}),this.onStateChange()}highlightElement(e){this.removeHighlights(),this.highlightedElementId=e,setTimeout(()=>{let t="getElementById"in this.root?this.root.getElementById(e):this.root.querySelector(`#${CSS.escape(e)}`);if(t){t.classList.add("redacto-tts-highlight");let o=t.getBoundingClientRect();o.top>=0&&o.left>=0&&o.bottom<=window.innerHeight&&o.right<=window.innerWidth||t.scrollIntoView({behavior:"smooth",block:"center",inline:"nearest"})}},50)}removeHighlights(){this.root.querySelectorAll(".redacto-tts-highlight").forEach(e=>{e.classList.remove("redacto-tts-highlight")})}};function tt(n){let{settings:e,colors:t,isMobile:o,logoUrl:r,onYes:i,onNo:s,onClose:p}=n,d=(e==null?void 0:e.headingColor)||"#101828",l=t.text,c=t.font,u=a("img",{src:r,style:g.logo,alt:"Redacto Logo"}),x=a("h2",{id:"age-verification-title",style:{...g.title,fontSize:o?"16px":"18px",color:d,fontFamily:c}});x.textContent="Age Verification Required";let f=a("div",{style:g.topLeft},u,x),b=a("button",{style:{background:"none",border:"none",color:d,cursor:"pointer",padding:o?"2px":"4px",display:"flex",alignItems:"center",justifyContent:"center"},type:"button","aria-label":"Close modal",onClick:p}),h=R("svg",{width:o?"18":"20",height:o?"18":"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},R("path",{d:"M15 5L5 15M5 5L15 15",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"}));b.appendChild(h);let y=a("div",{style:{...g.topSection,color:l,fontFamily:c}},f,b),S=a("p",{style:{...g.privacyText,fontSize:o?"14px":"16px",color:l,fontFamily:c,marginBottom:"16px"}});S.textContent="To proceed with this consent form, we need to verify your age.";let _=a("p",{style:{...g.subTitle,color:l,fontFamily:c,marginBottom:"24px",textAlign:"left"}});_.textContent="Are you 18 years of age or older?";let m=a("div",{style:{...g.middleSection,color:l,fontFamily:c}},S,_),A={...g.button,fontSize:o?"14px":"16px",padding:o?"10px 20px":"9px 45px"},L=a("button",{style:{...A,...g.acceptButton,backgroundColor:t.acceptBg,color:t.acceptText,borderRadius:t.borderRadius},type:"button","aria-label":"Confirm that I am 18 years of age or older",onClick:i});L.textContent="Yes, I am 18 or older";let v=a("button",{style:{...A,...g.cancelButton,backgroundColor:t.declineBg,color:t.declineText,borderColor:t.declineBorder,borderRadius:t.borderRadius},type:"button","aria-label":"Indicate that I am under 18 years of age",onClick:s});v.textContent="No, I am under 18";let w=a("div",{style:{...g.bottomSection,color:l,fontFamily:c}},L,v);return{container:a("div",{style:g.content},y,m,w)}}var Pe=[{value:"Father",label:"Father"},{value:"Mother",label:"Mother"},{value:"Legal Guardian",label:"Legal Guardian"},{value:"Grandparent",label:"Grandparent"}];function ot(n){var He;let{formData:e,settings:t,colors:o,isMobile:r,logoUrl:i,isSubmitting:s,onSubmit:p,onCancel:d,onFieldChange:l}=n,c=(t==null?void 0:t.headingColor)||"#101828",u=o.text,x=o.declineBorder,f=(t==null?void 0:t.backgroundColor)||"#ffffff",b=o.borderRadius,h=o.font,y=o.acceptBg,S={width:"100%",padding:"10px 12px",border:`1px solid ${x}`,borderRadius:b,fontSize:"13px",fontFamily:h,color:u,backgroundColor:f,marginBottom:"2px",boxSizing:"border-box",outline:"none"},_={color:"#DC2626",fontSize:"11px",marginTop:"4px",marginBottom:"0px",display:"none"},m={fontSize:"13px",fontWeight:500,color:u,fontFamily:h,marginBottom:"4px",display:"block"},A={fontSize:"11px",color:"#667085",marginTop:"2px",marginBottom:"0px",lineHeight:"1.4"},L=a("img",{src:i,style:g.logo,alt:"Logo"}),v=a("h2",{id:"guardian-form-title",style:{...g.title,fontSize:"16px",fontWeight:600,color:c,fontFamily:h}});v.textContent="Guardian Verification";let w=a("div",{style:g.topLeft},L,v),I=a("div",{style:{...g.topSection,color:u,fontFamily:h}},w),B=a("p",{style:{...g.privacyText,fontSize:"13px",lineHeight:"1.5",color:u,fontFamily:h,marginBottom:"12px"}});B.textContent="Since you are under the age of consent, a legal guardian must verify their identity via DigiLocker before you can proceed.";let E=R("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"#2563EB","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},R("circle",{cx:"12",cy:"12",r:"10"}),R("line",{x1:"12",y1:"16",x2:"12",y2:"12"}),R("line",{x1:"12",y1:"8",x2:"12.01",y2:"8"}));E.style.cssText="flex-shrink:0;margin-top:1px";let D=a("span");D.textContent="The guardian's name will be matched against their DigiLocker identity document (e.g. Aadhaar). Please enter the name exactly as it appears on the document.";let k=a("div",{style:{display:"flex",alignItems:"flex-start",gap:"8px",padding:"10px 12px",backgroundColor:"#EFF6FF",border:"1px solid #BFDBFE",borderRadius:b,marginBottom:"16px",fontSize:"12px",lineHeight:"1.5",color:"#1E40AF"}},E,D),H=a("label",{for:"guardianName",style:m});H.innerHTML=`Guardian's Full Name <span style="color:#DC2626">*</span>`;let M=a("input",{id:"guardianName",type:"text",style:S,value:e.guardianName,placeholder:"e.g. Rajesh Kumar",autoComplete:"name","aria-describedby":"guardianName-hint",onInput:F=>l("guardianName",F.target.value)}),z=a("p",{id:"guardianName-hint",style:A});z.textContent="Enter the full name as per government ID (Aadhaar, PAN, etc.)";let G=a("div",{style:_,role:"alert"}),V=a("div",null,H,M,z,G),N=a("label",{for:"guardianContact",style:m});N.innerHTML=`Guardian's Phone Number <span style="color:#DC2626">*</span>`;let j=a("input",{id:"guardianContact",type:"tel",inputMode:"tel",style:S,value:e.guardianContact,placeholder:"e.g. 9876543210",autoComplete:"tel","aria-describedby":"guardianContact-hint",onInput:F=>l("guardianContact",F.target.value)}),O=a("p",{id:"guardianContact-hint",style:A});O.textContent="Mobile number linked to guardian's Aadhaar";let C=a("div",{style:_,role:"alert"}),T=a("div",null,N,j,O,C),P=a("label",{id:"guardianRelationship-label",style:m});P.innerHTML='Relationship <span style="color:#DC2626">*</span>';let $=(He=Pe.find(F=>F.value===e.guardianRelationship))==null?void 0:He.label,U=R("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"#667085","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},R("polyline",{points:"6 9 12 15 18 9"}));U.style.cssText="flex-shrink:0;margin-left:8px;transition:transform 0.2s";let q=a("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}});q.textContent=$||"Select relationship";let K=a("div",{role:"combobox","aria-expanded":"false","aria-haspopup":"listbox","aria-labelledby":"guardianRelationship-label",tabIndex:"0",style:{...S,color:$?u:"#9CA3AF",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"space-between",userSelect:"none",transition:"border-color 0.15s, box-shadow 0.15s"}},q,U),Q=a("div",{id:"guardianRelationship-listbox",role:"listbox","aria-labelledby":"guardianRelationship-label",style:{position:"absolute",top:"calc(100% + 4px)",left:0,right:0,backgroundColor:f,border:`1px solid ${x}`,borderRadius:b,boxShadow:"0 4px 12px rgba(0,0,0,0.1), 0 1px 3px rgba(0,0,0,0.06)",zIndex:50,overflow:"hidden",padding:"4px 0",maxHeight:"220px",overflowY:"auto",display:"none"}});for(let F=0;F<Pe.length;F++){let te=Pe[F],oe=e.guardianRelationship===te.value,ge=a("div",{id:`guardianRelationship-option-${F}`,role:"option","aria-selected":String(oe),style:{padding:"9px 12px",fontSize:"13px",fontFamily:h,color:oe?y:u,backgroundColor:"transparent",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"space-between",transition:"background-color 0.1s"},onClick:()=>{l("guardianRelationship",te.value),q.textContent=te.label,K.style.color=u,ue()},onMouseenter:ne=>{ne.target.style.backgroundColor="#F3F4F6"},onMouseleave:ne=>{ne.target.style.backgroundColor="transparent"}}),Ve=a("span");if(Ve.textContent=te.label,ge.appendChild(Ve),oe){let ne=R("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:y,"stroke-width":"2.5","stroke-linecap":"round","stroke-linejoin":"round"},R("polyline",{points:"20 6 9 17 4 12"}));ne.style.flexShrink="0",ge.appendChild(ne)}Q.appendChild(ge)}let pe=!1,J=a("div",{style:{position:"relative"}}),Me=F=>{J.contains(F.target)||ue()};function Ae(){pe=!0,Q.style.display="block",K.setAttribute("aria-expanded","true"),U.style.transform="rotate(180deg)",K.style.borderColor=y,K.style.boxShadow=`0 0 0 1px ${y}`;let F=J.getBoundingClientRect(),te=window.innerHeight-F.bottom,oe=220;te<oe&&F.top>oe?(Q.style.top="auto",Q.style.bottom="calc(100% + 4px)",Q.style.boxShadow="0 -4px 12px rgba(0,0,0,0.1), 0 -1px 3px rgba(0,0,0,0.06)"):(Q.style.top="calc(100% + 4px)",Q.style.bottom="auto",Q.style.boxShadow="0 4px 12px rgba(0,0,0,0.1), 0 1px 3px rgba(0,0,0,0.06)"),requestAnimationFrame(()=>{Q.scrollIntoView({behavior:"smooth",block:"nearest"})}),setTimeout(()=>document.addEventListener("mousedown",Me),0)}function ue(){pe=!1,Q.style.display="none",K.setAttribute("aria-expanded","false"),U.style.transform="rotate(0deg)",K.style.borderColor=x,K.style.boxShadow="none",document.removeEventListener("mousedown",Me)}K.addEventListener("click",()=>{pe?ue():Ae()}),K.addEventListener("keydown",F=>{F.key==="Enter"||F.key===" "||F.key==="ArrowDown"?(F.preventDefault(),pe||Ae()):(F.key==="Escape"||F.key==="Tab")&&ue()});let Le=a("div",{style:_,role:"alert"});J.appendChild(P),J.appendChild(K),J.appendChild(Q),J.appendChild(Le);let De=a("div",{role:"alert",style:{color:"#DC2626",fontSize:"13px",marginTop:"16px",padding:"12px",borderRadius:"6px",border:"1px solid #FCA5A5",backgroundColor:"#FEF2F2",textAlign:"center",display:"none"}}),gt=a("div",{style:{display:"flex",flexDirection:"column",gap:"14px"}},V,T,J),ht=a("div",{style:{...g.middleSection,overflow:"visible",color:u,fontFamily:h}},B,k,gt,De),Be={...g.button,fontSize:r?"14px":"16px",padding:r?"10px 20px":"9px 45px"},Ce=a("button",{style:{...Be,...g.acceptButton,backgroundColor:o.acceptBg,color:o.acceptText,borderRadius:o.borderRadius},type:"button",disabled:s,"aria-label":s?"Verifying guardian identity":"Proceed to guardian verification",onClick:p});Ce.textContent=s?"Verifying...":"Verify via DigiLocker";let Fe=a("button",{style:{...Be,...g.cancelButton,backgroundColor:o.declineBg,color:o.declineText,borderColor:o.declineBorder,borderRadius:o.borderRadius},type:"button","aria-label":"Cancel",onClick:d});Fe.textContent="Cancel";let ft=a("div",{style:{...g.bottomSection,paddingTop:"12px",color:u,fontFamily:h}},Ce,Fe);return{container:a("div",{style:{...g.content,overflow:"visible"}},I,ht,ft),nameInput:M,contactInput:j,relationshipDisplay:K,nameError:G,contactError:C,relationshipError:Le,submitBtn:Ce,generalError:De}}function nt(n){let e={};return n.guardianName.trim()||(e.guardianName="Guardian name is required"),n.guardianContact.trim()||(e.guardianContact="Guardian contact is required"),n.guardianRelationship.trim()||(e.guardianRelationship="Relationship to guardian is required"),e}function it(n,e){switch(n){case"GUARDIAN_UNDER_18":return"The guardian must be 18 years or older. Please provide details of a different guardian.";case"TOKEN_FAILED":return"DigiLocker verification could not be completed. Please try again.";case"DIGILOCKER_AUTH_FAILED":return"DigiLocker authorization was cancelled or failed. Please try again.";case"NO_AUTH_CODE":return"DigiLocker did not return an authorization code. Please try again.";case"SESSION_EXPIRED":return"Verification session has expired. Please try again.";default:return e||"Verification failed. Please try again."}}function rt(n){let{settings:e,colors:t,isMobile:o,logoUrl:r,isInitiating:i,isPolling:s,isComplete:p,isAutoTransitioning:d,error:l,errorCode:c,canRetry:u,onContinue:x,onBack:f}=n,b=(e==null?void 0:e.headingColor)||"#101828",h=t.text,y=t.font,S=t.acceptBg,_=a("img",{src:r,style:g.logo,alt:"Logo"}),m=a("h2",{id:"verification-title",style:{...g.title,fontSize:"16px",fontWeight:600,color:b,fontFamily:y}});m.textContent="Guardian Verification";let A=a("div",{style:g.topLeft},_,m),L=a("div",{style:{...g.topSection,color:h,fontFamily:y}},A),v=a("div",{style:{...g.middleSection,color:h,fontFamily:y,textAlign:"center"}});if(p&&!l){let k=a("div",{style:{width:"64px",height:"64px",borderRadius:"50%",backgroundColor:"#D1FAE5",display:"flex",alignItems:"center",justifyContent:"center"}}),H=R("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",stroke:"#059669","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},R("polyline",{points:"20 6 9 17 4 12"}));k.appendChild(H);let M=a("p",{style:{color:b,fontFamily:y,fontSize:"16px",fontWeight:600,lineHeight:"1.5",marginTop:"12px",marginBottom:"24px"}});M.textContent="Verification Completed";let z=a("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",flex:"1"}},k,M);v.appendChild(z)}else if((i||s)&&!l){let k=a("div",{style:{width:"48px",height:"48px",border:"4px solid #e5e7eb",borderTopColor:S,borderRadius:"50%",animation:"spin 1s linear infinite",margin:"24px auto"}}),H=a("div",{style:{color:"#059669",fontSize:"14px",marginTop:"16px",padding:"12px",borderRadius:"6px",border:"1px solid #A7F3D0",backgroundColor:"#D1FAE5",textAlign:"center"}});H.textContent=i?"Opening DigiLocker in a new tab...":"Please complete the verification in the DigiLocker tab. This page will update automatically when verification is complete.",v.appendChild(k),v.appendChild(H)}if(l){let k=a("div",{style:{width:"64px",height:"64px",borderRadius:"50%",backgroundColor:"#fee2e2",display:"flex",alignItems:"center",justifyContent:"center",margin:"24px auto"}}),H=R("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",stroke:"#dc2626","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},R("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),R("line",{x1:"6",y1:"6",x2:"18",y2:"18"}));k.appendChild(H);let M=a("p",{style:{...g.privacyText,color:h,fontFamily:y,fontSize:"14px",lineHeight:"1.5",marginBottom:"12px"}});M.textContent="Verification failed";let z=a("div",{style:{color:"#DC2626",fontSize:"14px",marginTop:"16px",padding:"12px",borderRadius:"6px",border:"1px solid #FCA5A5",backgroundColor:"#FEF2F2",textAlign:"center"}});z.textContent=l,v.appendChild(k),v.appendChild(M),v.appendChild(z)}let w={...g.button,fontSize:o?"14px":"16px",padding:o?"10px 20px":"9px 45px"},I=a("div",{style:{...g.bottomSection,paddingTop:"12px",display:"flex",gap:"12px",justifyContent:"center",color:h,fontFamily:y}}),B={backgroundColor:t.acceptBg,color:t.acceptText,borderRadius:t.borderRadius},E={backgroundColor:t.declineBg,color:t.declineText,borderColor:t.declineBorder,borderRadius:t.borderRadius};if(!d)if(p&&!l){let k=a("button",{style:{...w,...B},type:"button","aria-label":"Continue to consent form",onClick:x});k.textContent="Continue",I.appendChild(k)}else if(l&&u){let k=a("button",{style:{...w,...g.acceptButton,...B},type:"button","aria-label":c==="GUARDIAN_UNDER_18"?"Change guardian details":"Try verification again",onClick:()=>f(c==="GUARDIAN_UNDER_18")});k.textContent=c==="GUARDIAN_UNDER_18"?"Change Guardian":"Try Again",I.appendChild(k)}else if(l){let k=a("button",{style:{...w,...g.cancelButton,...E},type:"button","aria-label":"Go back",onClick:()=>f(!1)});k.textContent="Go Back",I.appendChild(k)}else{let k=a("button",{style:{...w,...g.cancelButton,...E},type:"button","aria-label":"Cancel verification",onClick:()=>f(!1)});k.textContent="Cancel",I.appendChild(k)}return{container:a("div",{style:g.content},L,v,I)}}function at(n,e){var r,i,s,p,d,l,c,u;let t=(e==null?void 0:e.primary_color)||"#4f87ff",o=(e==null?void 0:e.secondary_color)||"#4f87ff";return{acceptBg:((i=(r=n==null?void 0:n.button)==null?void 0:r.accept)==null?void 0:i.backgroundColor)||t,acceptText:((p=(s=n==null?void 0:n.button)==null?void 0:s.accept)==null?void 0:p.textColor)||"#ffffff",declineBg:((l=(d=n==null?void 0:n.button)==null?void 0:d.decline)==null?void 0:l.backgroundColor)||"#ffffff",declineText:((u=(c=n==null?void 0:n.button)==null?void 0:c.decline)==null?void 0:u.textColor)||"#000000",declineBorder:(n==null?void 0:n.borderColor)||"#d0d5dd",link:(n==null?void 0:n.link)||o,heading:(n==null?void 0:n.headingColor)||"#323B4B",text:(n==null?void 0:n.textColor)||"#344054",font:(n==null?void 0:n.font)||"inherit",borderRadius:(n==null?void 0:n.borderRadius)||"8px",primaryColor:t,secondaryColor:o}}var xe=class{constructor(e){this.hostEl=null;this.shadowRoot=null;this.previousBodyOverflow=null;this.previousHtmlOverflow=null;this.overlayEl=null;this.modalEl=null;this.purposeRefs=null;this.alreadyConsentedPurposeRefs=null;this.langSelectorRefs=null;this.keyboardCleanup=null;this.abortController=null;this.unsubscribe=null;this.ttsManager=null;this.guardianFormRefs=null;this.statusPollTimeout=null;this.popupCheckInterval=null;this.verificationPopup=null;this.verificationSessionToken=null;this.visibilityChangeHandler=null;this.acceptBtn=null;this.declineBtn=null;this.middleSection=null;this.errorEl=null;this.noticeTitleEl=null;this.noticeTextEl=null;this.purposeHeadingEl=null;this.additionalTextEl=null;this.privacyPolicyLinkEl=null;this.privacyCenterLinkEl=null;this.ttsButton=null;this.options=e,this.store=new ie({isLoading:!0,isSubmitting:!1,isSubmittingAccept:!1,isSubmittingDecline:!1,content:null,selectedPurposes:{},selectedDataElements:{},initialDataElementSelections:{},collapsedPurposes:{},hasAlreadyConsented:!1,isFullyConsentedReviewMode:!1,selectedLanguage:e.language||"en",errorMessage:null,fetchError:null,needsConsentPurposes:[],alreadyConsentedPurposes:[],isMinorFlow:!1,selfDeclaredAdult:!1,showAgeVerification:!1,showGuardianForm:!1,showVerificationScreen:!1,verificationReference:null,isVerificationComplete:!1,isInitiatingVerification:!1,isPollingStatus:!1,verificationError:null,verificationErrorCode:null,canRetryVerification:!1,guardianFormData:{guardianName:"",guardianContact:"",guardianRelationship:""}}),this.mediaQuery=fe("(max-width: 768px)")}async init(){this.unsubscribe=this.store.subscribe((e,t)=>{this.handleStateChange(e,t)}),this.mediaQuery.subscribe(()=>this.rebuildUI()),this.renderOverlayWithLoading(),await this.fetchNotice()}destroy(){var e,t,o,r;(e=this.abortController)==null||e.abort(),(t=this.keyboardCleanup)==null||t.call(this),(o=this.unsubscribe)==null||o.call(this),this.mediaQuery.destroy(),(r=this.ttsManager)==null||r.destroy(),this.stopPolling(),this.store.destroy(),this.hostEl&&this.hostEl.parentNode&&this.hostEl.parentNode.removeChild(this.hostEl),this.previousBodyOverflow!==null&&(document.body.style.overflow=this.previousBodyOverflow,this.previousBodyOverflow=null),this.previousHtmlOverflow!==null&&(document.documentElement.style.overflow=this.previousHtmlOverflow,this.previousHtmlOverflow=null),this.hostEl=null,this.shadowRoot=null,this.overlayEl=null,this.modalEl=null,this.purposeRefs=null,this.langSelectorRefs=null}async fetchNotice(){var e,t,o;this.abortController=new AbortController,this.store.setState({isLoading:!0,fetchError:null});try{let r=await qe({noticeId:this.options.noticeId,accessToken:this.options.accessToken,refreshToken:this.options.refreshToken,baseUrl:this.options.baseUrl,language:this.options.language,specific_uuid:this.options.applicationId,validate_against:this.options.validateAgainst||"all",include_fully_consented_data:this.options.includeFullyConsentedData,signal:this.abortController.signal}),i=r.detail.active_config,s=r.detail.purpose_selections,p={},d={},l={},c={},u=[],x=[],f=!1;if(s&&r.detail.reconsent_required)for(let m of i.purposes){let A=s[m.uuid];if(p[m.uuid]=!0,A&&A.selected&&!A.needs_reconsent){x.push(m),d[m.uuid]=!0;for(let L of m.data_elements){let v=`${m.uuid}-${L.uuid}`,w=(e=A.data_elements)==null?void 0:e[L.uuid],I=(w==null?void 0:w.selected)||!1;l[v]=I,c[v]=I}}else{u.push(m),d[m.uuid]=!1;for(let L of m.data_elements)l[`${m.uuid}-${L.uuid}`]=!1}}else{u=i.purposes;for(let m of i.purposes){p[m.uuid]=!0,d[m.uuid]=!1;for(let A of m.data_elements)l[`${m.uuid}-${A.uuid}`]=!1}}this.options.includeFullyConsentedData&&u.length===0&&x.length>0&&(f=!0);let b=this.options.language||"en";i.default_language&&(b=i.default_language);let h=!1,y=!1,S={},_=null;if(r.detail.is_minor){h=!0;let m=de();m!=null&&m.noticeId&&m.noticeId!==this.options.noticeId?ee():(m==null?void 0:m.flowState)==="digilocker-pending"&&m.sessionToken?(S={showVerificationScreen:!0,isPollingStatus:!0},_=m.sessionToken):(m==null?void 0:m.verificationResult)==="verified"&&m.verificationReference?(S={showVerificationScreen:!0,isVerificationComplete:!0,verificationReference:m.verificationReference},ee()):(m==null?void 0:m.verificationResult)==="failed"||(m==null?void 0:m.verificationResult)==="expired"?(S={showVerificationScreen:!0,verificationError:m.verificationResult==="expired"?"Verification session has expired. Please try again.":"Verification failed. Please try again.",canRetryVerification:!0},ee()):y=!0}this.store.setState({content:r,isLoading:!1,selectedLanguage:b,collapsedPurposes:p,selectedPurposes:d,selectedDataElements:l,initialDataElementSelections:c,needsConsentPurposes:u,alreadyConsentedPurposes:x,isFullyConsentedReviewMode:f,isMinorFlow:h,showAgeVerification:y,...S}),_&&this.startStatusPolling(_)}catch(r){if(r.name==="AbortError")return;let i=r;i.status===409?(this.store.setState({hasAlreadyConsented:!0,isLoading:!1}),this.options.onAccept()):(this.store.setState({fetchError:i,isLoading:!1}),(o=(t=this.options).onError)==null||o.call(t,i))}}handleStateChange(e,t){if(t.isLoading&&!e.isLoading&&e.content){this.rebuildUI();return}if(e.hasAlreadyConsented&&!t.hasAlreadyConsented){this.destroy();return}if(e.fetchError&&!t.fetchError){this.renderError(e.fetchError.message);return}if(e.showAgeVerification!==t.showAgeVerification||e.showGuardianForm!==t.showGuardianForm||e.showVerificationScreen!==t.showVerificationScreen){this.rebuildUI();return}if(e.showVerificationScreen&&(e.isVerificationComplete!==t.isVerificationComplete||e.verificationError!==t.verificationError||e.isPollingStatus!==t.isPollingStatus||e.isInitiatingVerification!==t.isInitiatingVerification)){this.rebuildUI();return}(e.selectedPurposes!==t.selectedPurposes||e.selectedDataElements!==t.selectedDataElements)&&this.updateCheckboxes(e),e.collapsedPurposes!==t.collapsedPurposes&&this.updateCollapseState(e),e.errorMessage!==t.errorMessage&&this.updateErrorMessage(e),(e.isSubmittingAccept!==t.isSubmittingAccept||e.isSubmittingDecline!==t.isSubmittingDecline)&&this.updateButtonStates(e)}renderOverlayWithLoading(){this.hostEl=document.createElement("div"),this.hostEl.setAttribute("data-redacto-consent",""),this.hostEl.style.position="fixed",this.hostEl.style.top="0",this.hostEl.style.left="0",this.hostEl.style.width="0",this.hostEl.style.height="0",this.hostEl.style.zIndex="2147483646",document.body.appendChild(this.hostEl),this.shadowRoot=this.hostEl.attachShadow({mode:"open"}),this.previousBodyOverflow=document.body.style.overflow,this.previousHtmlOverflow=document.documentElement.style.overflow,document.body.style.overflow="hidden",document.documentElement.style.overflow="hidden",ae(this.shadowRoot),this.ttsManager=new ye(()=>this.updateTTSButton(),this.shadowRoot),this.options.blockUI!==!1&&(this.overlayEl=a("div",{style:g.overlay,role:"presentation"}),this.shadowRoot.appendChild(this.overlayEl));let t=this.options.settings,o={...g.modal};t!=null&&t.backgroundColor&&(o.backgroundColor=t.backgroundColor),t!=null&&t.borderRadius&&(o.borderRadius=t.borderRadius),t!=null&&t.borderColor&&(o.border=`1px solid ${t.borderColor}`),t!=null&&t.font&&(o.fontFamily=t.font),this.mediaQuery.matches&&(o.width="90%",o.maxWidth="90%"),this.modalEl=a("div",{style:o,role:"dialog","aria-modal":"true","aria-label":"Privacy consent"});let r=a("div",{style:g.loadingContainer},a("div",{style:g.loadingSpinner}),a("p",{style:{...g.privacyText,color:(t==null?void 0:t.textColor)||"#344054"}},"Loading...")),i=a("div",{style:g.content},r);this.modalEl.appendChild(i),this.shadowRoot.appendChild(this.modalEl)}rebuildUI(){var H,M,z,G,V,N,j,O;let e=this.store.getState();if(!e.content||!this.modalEl)return;let t=e.content.detail.active_config,o=this.options.settings,r=this.mediaQuery.matches,i=at(o,t);if(e.showAgeVerification){X(this.modalEl);let C=tt({settings:o,colors:i,isMobile:r,logoUrl:t.logo_url,onYes:()=>this.handleAgeVerificationYes(),onNo:()=>this.handleAgeVerificationNo(),onClose:()=>this.handleDecline()});this.modalEl.appendChild(C.container),(H=this.keyboardCleanup)==null||H.call(this),this.keyboardCleanup=le(this.modalEl,()=>this.handleDecline());return}if(e.showGuardianForm){X(this.modalEl),this.guardianFormRefs=ot({formData:e.guardianFormData,settings:o,colors:i,isMobile:r,logoUrl:t.logo_url,isSubmitting:e.isInitiatingVerification,onSubmit:()=>this.handleGuardianFormSubmit(),onCancel:()=>this.handleDecline(),onFieldChange:(C,T)=>{let P=this.store.getState();this.store.setState({guardianFormData:{...P.guardianFormData,[C]:T}})}}),this.modalEl.appendChild(this.guardianFormRefs.container),(M=this.keyboardCleanup)==null||M.call(this),this.keyboardCleanup=le(this.modalEl,()=>this.handleDecline());return}if(e.showVerificationScreen){X(this.modalEl);let C=rt({settings:o,colors:i,isMobile:r,logoUrl:t.logo_url,isInitiating:e.isInitiatingVerification,isPolling:e.isPollingStatus,isComplete:e.isVerificationComplete,error:e.verificationError,errorCode:e.verificationErrorCode,canRetry:e.canRetryVerification,onContinue:()=>this.handleVerificationContinue(),onBack:T=>{T?this.handleChangeGuardian():e.verificationError&&e.canRetryVerification?this.handleVerificationRetry():this.handleDecline()}});this.modalEl.appendChild(C.container),(z=this.keyboardCleanup)==null||z.call(this),this.keyboardCleanup=le(this.modalEl,()=>{});return}X(this.modalEl);let s=(o==null?void 0:o.headingColor)||"#101828",p=i.text,d=i.link,l=i.font,c=t.logo_url?a("img",{src:t.logo_url,style:{...g.logo,maxWidth:r?"96px":"140px",maxHeight:r?"28px":"32px"},alt:"Logo"}):null;this.noticeTitleEl=a("span",{id:"privacy-notice-title",style:{...g.title,color:s,fontFamily:l,fontSize:r?"16px":"18px"}}),this.noticeTitleEl.textContent=this.getTranslatedText("notice_banner_heading",t.notice_banner_heading),(G=this.langSelectorRefs)!=null&&G.dropdown&&this.shadowRoot&&this.langSelectorRefs.dropdown.parentNode===this.shadowRoot&&this.shadowRoot.removeChild(this.langSelectorRefs.dropdown);let u=Object.keys(t.supported_languages_and_translations||{}),x=[t.default_language||"English",...u.filter(C=>C!==t.default_language)];this.langSelectorRefs=Xe({languages:x,selectedLanguage:e.selectedLanguage,settings:o,onSelect:C=>this.handleLanguageSelect(C),dropdownContainer:this.shadowRoot});let f=((N=(V=o==null?void 0:o.button)==null?void 0:V.language)==null?void 0:N.textColor)||"currentColor",b=R("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:f,"stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},R("polygon",{points:"11 5 6 9 2 9 2 15 6 15 11 19 11 5"}),R("path",{d:"M19.07 4.93a10 10 0 0 1 0 14.14M15.54 8.46a5 5 0 0 1 0 7.07"}));this.ttsButton=a("button",{style:{...g.topRight,display:"none",padding:"3px 9px",alignItems:"center",justifyContent:"center"},type:"button","aria-label":"Start audio playback",title:"Start Talkback",onClick:()=>{var C;return(C=this.ttsManager)==null?void 0:C.toggle()}}),this.ttsButton.appendChild(b),(j=this.ttsManager)==null||j.fetchAudioUrls({accessToken:this.options.accessToken,baseUrl:this.options.baseUrl,noticeUuid:t.notice_uuid,language:this.getLanguageCode(e.selectedLanguage),content:t});let h=a("div",{style:{display:"flex",alignItems:"center",gap:"8px",flexShrink:0}},this.ttsButton,this.langSelectorRefs.container),y;if(r){let C=a("div",{style:{display:"flex",alignItems:"center",gap:"10px",width:"100%"}},...c?[c]:[],a("div",{style:{marginLeft:"auto",display:"flex",alignItems:"center"}},h));y=a("div",{style:{...g.topSection,flexDirection:"column",alignItems:"stretch",flexWrap:"nowrap"}},C,this.noticeTitleEl)}else{let C=a("div",{style:g.topLeft},c,this.noticeTitleEl);y=a("div",{style:g.topSection},C,h)}this.middleSection=a("div",{style:g.middleSection});let S={...g.privacyText,color:p,fontFamily:l,fontSize:r?"14px":"16px"},_=a("span",{id:"privacy-notice-text"});_.textContent=this.getTranslatedText("notice_text",t.notice_text);let m=this.getTranslatedText("privacy_policy_prefix_text",t.privacy_policy_prefix_text),A=this.getTranslatedText("privacy_policy_anchor_text",t.privacy_policy_anchor_text);this.privacyPolicyLinkEl=a("a",{id:"privacy-policy-link",href:t.privacy_policy_url,target:"_blank",rel:"noopener noreferrer",style:{...g.link,color:d,fontFamily:l},"aria-label":"Privacy Policy (opens in new tab)"}),this.privacyPolicyLinkEl.textContent=A;let L=a("span",{id:"privacy-policy-text"},`${m} `,this.privacyPolicyLinkEl),v=a("p",{style:S},_,a("br"),L);if(this.purposeHeadingEl=a("h2",{id:"purpose-section-heading",style:{...g.subTitle,color:s,fontFamily:l}}),this.purposeHeadingEl.textContent=this.getTranslatedText("purpose_section_heading",t.purpose_section_heading),this.middleSection.appendChild(v),this.middleSection.appendChild(this.purposeHeadingEl),e.needsConsentPurposes.length>0&&(this.purposeRefs=we(e.needsConsentPurposes,{selectedPurposes:e.selectedPurposes,collapsedPurposes:e.collapsedPurposes,selectedDataElements:e.selectedDataElements,settings:o,isMobile:r,isAlreadyConsented:!1,getTranslatedText:(C,T,P)=>this.getTranslatedText(C,T,P),onPurposeToggle:C=>this.handlePurposeCheckboxChange(C),onPurposeCollapse:C=>this.togglePurposeCollapse(C),onDataElementToggle:(C,T)=>this.handleDataElementCheckboxChange(C,T)}),this.middleSection.appendChild(this.purposeRefs.container)),e.alreadyConsentedPurposes.length>0&&(this.alreadyConsentedPurposeRefs=we(e.alreadyConsentedPurposes,{selectedPurposes:e.selectedPurposes,collapsedPurposes:e.collapsedPurposes,selectedDataElements:e.selectedDataElements,initialDataElementSelections:e.initialDataElementSelections,settings:o,isMobile:r,isAlreadyConsented:!0,getTranslatedText:(C,T,P)=>this.getTranslatedText(C,T,P),onPurposeToggle:()=>{},onPurposeCollapse:C=>this.togglePurposeCollapse(C),onDataElementToggle:()=>{}}),this.middleSection.appendChild(this.alreadyConsentedPurposeRefs.container)),t.privacy_center_url||t.dpo_info){let C=a("div",{style:{...S,fontSize:r?"13px":"14px",lineHeight:"1.4",borderTop:"1px solid rgba(152, 162, 179, 0.3)",paddingTop:"12px",marginTop:"12px"}}),T=a("p",{style:{margin:"0",opacity:"0.6"}});if(t.privacy_center_url){if(t.additional_text){let $=a("span",{id:"additional-text"});$.textContent=this.getTranslatedText("additional_text",t.additional_text),T.appendChild($),T.appendChild(document.createTextNode(" "))}let P=this.getTranslatedText("privacy_center_anchor_text",t.privacy_center_anchor_text||"Privacy Center");this.privacyCenterLinkEl=a("a",{id:"privacy-center-link",href:t.privacy_center_url,target:"_blank",rel:"noopener noreferrer",style:{...g.link,color:d,fontFamily:l}}),this.privacyCenterLinkEl.textContent=P,T.appendChild(this.privacyCenterLinkEl),T.appendChild(document.createTextNode("."))}if(t.dpo_info){let P=t.dpo_info;if(t.privacy_center_url&&T.appendChild(a("br")),P.grievance_text){let $=a("span",{id:"dpo-grievance-text"});if($.textContent=this.getTranslatedDpoText("grievance_text",P.grievance_text),T.appendChild($),T.appendChild(document.createTextNode(" ")),P.grievance_url){let U=a("a",{id:"dpo-grievance-link",href:P.grievance_url,target:"_blank",rel:"noopener noreferrer",style:{...g.link,color:d,fontFamily:l}});U.textContent=this.getTranslatedDpoText("grievance_anchor_text",P.grievance_anchor_text),T.appendChild(U)}if(P.grievance_email){T.appendChild(document.createTextNode(" "));let U=a("span",{id:"dpo-grievance-email-connector"});U.textContent=this.getTranslatedDpoText("grievance_email_connector_text",P.grievance_email_connector_text||"or email to"),T.appendChild(U),T.appendChild(document.createTextNode(" "));let q=a("a",{id:"dpo-grievance-email",href:`mailto:${P.grievance_email}`,style:{...g.link,color:d,fontFamily:l}});q.textContent=P.grievance_email,T.appendChild(q)}}if(P.dp_board_text){T.appendChild(a("br"));let $=a("span",{id:"dpo-dp-board-text"});if($.textContent=this.getTranslatedDpoText("dp_board_text",P.dp_board_text),T.appendChild($),T.appendChild(document.createTextNode(" ")),P.dp_board_url){let U=a("a",{id:"dpo-dp-board-link",href:P.dp_board_url,target:"_blank",rel:"noopener noreferrer",style:{...g.link,color:d,fontFamily:l}});U.textContent=this.getTranslatedDpoText("dp_board_anchor_text",P.dp_board_anchor_text),T.appendChild(U)}}if(P.dpo_text){T.appendChild(a("br"));let $=a("span",{id:"dpo-dpo-text"});if($.textContent=this.getTranslatedDpoText("dpo_text",P.dpo_text),T.appendChild($),T.appendChild(document.createTextNode(" ")),P.dpo_url){let U=a("a",{id:"dpo-dpo-link",href:P.dpo_url,target:"_blank",rel:"noopener noreferrer",style:{...g.link,color:d,fontFamily:l}});U.textContent=this.getTranslatedDpoText("dpo_anchor_text",P.dpo_anchor_text),T.appendChild(U)}}}C.appendChild(T),this.middleSection.appendChild(C)}this.errorEl=a("div",{role:"alert",style:{backgroundColor:"#FEE2E2",color:"#DC2626",padding:"12px",borderRadius:"6px",fontSize:"14px",border:"1px solid #FCA5A5",display:"none"}});let w=e.isFullyConsentedReviewMode?this.options.reviewModeButtonText||"Continue":this.getTranslatedText("confirm_button_text",t.confirm_button_text),I={...g.button,...g.acceptButton,backgroundColor:i.acceptBg,color:i.acceptText,borderRadius:i.borderRadius,fontSize:r?"14px":"16px",padding:r?"10px 20px":"9px 45px"};this.acceptBtn=a("button",{id:"confirm-button-text",style:I,type:"button",onClick:()=>this.handleAccept()}),this.acceptBtn.textContent=w;let B=this.getTranslatedText("decline_button_text",t.decline_button_text),E={...g.button,...g.cancelButton,backgroundColor:i.declineBg,color:i.declineText,borderColor:i.declineBorder,borderRadius:i.borderRadius,fontSize:r?"14px":"16px",padding:r?"10px 20px":"9px 45px"};this.declineBtn=a("button",{id:"decline-button-text",style:E,type:"button",onClick:()=>this.handleDecline()}),e.isFullyConsentedReviewMode||(this.declineBtn.textContent=B);let D=a("div",{style:g.bottomSection});e.isFullyConsentedReviewMode?D.appendChild(this.acceptBtn):(D.appendChild(this.acceptBtn),D.appendChild(this.declineBtn));let k=a("div",{style:g.content},y,this.errorEl,this.middleSection,D);this.modalEl.appendChild(k),this.updateAcceptButtonState(e),(O=this.keyboardCleanup)==null||O.call(this),this.keyboardCleanup=le(this.modalEl,()=>this.handleDecline())}getLanguageCode(e){var o,r;let t=(o=this.store.getState().content)==null?void 0:o.detail.active_config;return!t||e==="English"||e==="en"||e==="EN"?"English":(r=t.supported_languages_and_translations)!=null&&r[e]?e:t.default_language==="en"||t.default_language==="EN"?"English":t.default_language||"English"}getTranslatedDpoText(e,t){var l;let o=this.store.getState(),r=(l=o.content)==null?void 0:l.detail.active_config;if(!r)return t;let i=o.selectedLanguage;if(i==="English"||i==="en"||i==="EN")return t;let s=r.supported_languages_and_translations;if(!s)return t;let p=s[i];if(!(p!=null&&p.dpo_info))return t;let d=p.dpo_info[e];return typeof d=="string"&&d?d:t}renderError(e){if(!this.modalEl)return;X(this.modalEl);let t=a("div",{style:{...g.content,alignItems:"center",justifyContent:"center"}},a("div",{role:"alert",style:{backgroundColor:"#FEE2E2",color:"#DC2626",padding:"16px",borderRadius:"8px",fontSize:"14px",border:"1px solid #FCA5A5",textAlign:"center",maxWidth:"400px"}},e));this.modalEl.appendChild(t)}getTranslatedText(e,t,o){var c,u,x;let r=this.store.getState(),i=(c=r.content)==null?void 0:c.detail.active_config;if(!i)return t;let s=r.selectedLanguage;if(s==="English"||s==="en"||s==="EN")return e==="privacy_policy_anchor_text"&&i.privacy_policy_anchor_text?i.privacy_policy_anchor_text:t;let p=i.supported_languages_and_translations;if(!p)return t;let d=p[s];if(!d)return t;if(o){if(e==="purposes.name"||e==="purposes.description"){let f=(u=d.purposes)==null?void 0:u[o];return f?typeof f=="string"?e==="purposes.name"?f:t:e==="purposes.name"?f.name||t:f.description||t:t}if(e.startsWith("data_elements."))return((x=d.data_elements)==null?void 0:x[o])||t}let l=d[e];return typeof l=="string"&&l?l:t}handleLanguageSelect(e){this.store.setState({selectedLanguage:e}),this.rebuildUI()}togglePurposeCollapse(e){let t=this.store.getState();this.store.setState({collapsedPurposes:{...t.collapsedPurposes,[e]:!t.collapsedPurposes[e]}})}handlePurposeCheckboxChange(e){var p;let t=this.store.getState(),o=(p=t.content)==null?void 0:p.detail.active_config;if(!o)return;let r=o.purposes.find(d=>d.uuid===e);if(!r)return;let i=!t.selectedPurposes[e],s={...t.selectedDataElements};for(let d of r.data_elements)s[`${e}-${d.uuid}`]=i;this.store.setState({selectedPurposes:{...t.selectedPurposes,[e]:i},selectedDataElements:s})}handleDataElementCheckboxChange(e,t){var c;let o=this.store.getState(),r=(c=o.content)==null?void 0:c.detail.active_config;if(!r)return;let i=r.purposes.find(u=>u.uuid===t);if(!i)return;let s=`${t}-${e}`,p={...o.selectedDataElements,[s]:!o.selectedDataElements[s]},d=i.data_elements.filter(u=>u.required),l;d.length>0?l=d.every(u=>p[`${t}-${u.uuid}`]):l=i.data_elements.some(u=>p[`${t}-${u.uuid}`]),this.store.setState({selectedDataElements:p,selectedPurposes:{...o.selectedPurposes,[t]:l}})}async handleAccept(){var o,r,i;let e=this.store.getState();if(e.isSubmitting)return;if(e.isFullyConsentedReviewMode){this.options.onAccept(),this.destroy();return}if(e.isMinorFlow&&!e.verificationReference&&!e.selfDeclaredAdult){this.store.setState({errorMessage:"Guardian verification is required before consent can be submitted."});return}let t=(o=e.content)==null?void 0:o.detail.active_config;if(t){this.abortController=new AbortController,this.store.setState({isSubmitting:!0,isSubmittingAccept:!0,errorMessage:null});try{let s=t.purposes.map(p=>{let d=p.data_elements.filter(l=>l.enabled).map(l=>({uuid:l.uuid,name:l.name,enabled:l.enabled,required:l.required,selected:e.selectedDataElements[`${p.uuid}-${l.uuid}`]||!1}));return{uuid:p.uuid,name:p.name,description:p.description,selected:e.selectedPurposes[p.uuid]||!1,data_elements:d}});await We({accessToken:this.options.accessToken,baseUrl:this.options.baseUrl,noticeUuid:e.content.detail.uuid,purposes:s,declined:!1,meta_data:this.options.applicationId?{specific_uuid:this.options.applicationId}:void 0,guardianVerificationReference:e.verificationReference||void 0,selfDeclaredAdult:e.selfDeclaredAdult||void 0,signal:this.abortController.signal}),this.options.onAccept(),this.destroy()}catch(s){if(s.name==="AbortError")return;let p=s,d=p.status===409?"You have already provided consent.":p.status&&p.status>=500?"Server error: Please try again later.":p.message||"Failed to submit consent.";this.store.setState({errorMessage:d,isSubmitting:!1,isSubmittingAccept:!1}),(i=(r=this.options).onError)==null||i.call(r,p)}}}handleDecline(){this.store.getState().isSubmitting||(this.stopPolling(),ee(),this.options.onDecline(),this.destroy())}updateCheckboxes(e){if(this.purposeRefs)for(let[t,o]of this.purposeRefs.checkboxes)t in e.selectedPurposes?o.checked=e.selectedPurposes[t]||!1:o.checked=e.selectedDataElements[t]||!1;this.updateAcceptButtonState(e)}areAllRequiredChecked(e){var o,r;let t=(o=e.content)==null?void 0:o.detail.active_config;return(r=t==null?void 0:t.purposes)!=null&&r.length?t.purposes.every(i=>{let s=i.data_elements.filter(p=>p.required&&p.enabled);return s.length===0?!0:s.every(p=>e.selectedDataElements[`${i.uuid}-${p.uuid}`])}):!1}updateAcceptButtonState(e){if(!this.acceptBtn||e.isFullyConsentedReviewMode)return;let o=!this.areAllRequiredChecked(e)||e.isSubmittingAccept||e.isSubmittingDecline;this.acceptBtn.disabled=o,this.acceptBtn.style.opacity=o?"0.5":"1",this.acceptBtn.style.cursor=o?"not-allowed":"pointer"}updateCollapseState(e){let t=o=>{var r,i;if(o)for(let[s,p]of o.dataElementContainers){let d=(r=e.content)==null?void 0:r.detail.active_config,l=d==null?void 0:d.purposes.find(f=>f.uuid===s),c=e.collapsedPurposes[s];p.style.display=!c&&((i=l==null?void 0:l.data_elements)!=null&&i.length)?"flex":"none";let u=o.chevrons.get(s);u&&(u.style.transform=c?"rotate(0deg)":"rotate(90deg)");let x=o.collapseButtons.get(s);x&&x.setAttribute("aria-expanded",String(!c))}};t(this.purposeRefs),t(this.alreadyConsentedPurposeRefs)}updateErrorMessage(e){this.errorEl&&(e.errorMessage?(this.errorEl.textContent=e.errorMessage,this.errorEl.style.display="block"):this.errorEl.style.display="none")}handleAgeVerificationYes(){this.store.setState({isMinorFlow:!1,selfDeclaredAdult:!0,showAgeVerification:!1})}handleAgeVerificationNo(){this.store.setState({showAgeVerification:!1,showGuardianForm:!0})}async handleGuardianFormSubmit(){let e=this.store.getState(),t=nt(e.guardianFormData);if(Object.keys(t).length>0){this.guardianFormRefs&&(t.guardianName&&(this.guardianFormRefs.nameError.textContent=t.guardianName,this.guardianFormRefs.nameError.style.display="block"),t.guardianContact&&(this.guardianFormRefs.contactError.textContent=t.guardianContact,this.guardianFormRefs.contactError.style.display="block"),t.guardianRelationship&&(this.guardianFormRefs.relationshipError.textContent=t.guardianRelationship,this.guardianFormRefs.relationshipError.style.display="block"));return}this.store.setState({isInitiatingVerification:!0});let o=this.options.digilockerMode||"redirect",r=o==="popup"?new URL(this.options.digilockerCallbackUrl||"/digilocker-callback",window.location.origin).href:void 0;try{let i=await Ye({accessToken:this.options.accessToken,baseUrl:this.options.baseUrl,guardianName:e.guardianFormData.guardianName,guardianContact:e.guardianFormData.guardianContact,guardianRelationship:e.guardianFormData.guardianRelationship,frontendCallbackUrl:r});if(i.already_verified&&i.verification_reference){this.store.setState({verificationReference:i.verification_reference,showGuardianForm:!1,showVerificationScreen:!0,isInitiatingVerification:!1,isVerificationComplete:!0}),setTimeout(()=>{this.store.setState({showVerificationScreen:!1,isVerificationComplete:!1})},1e3);return}if(Re({flowState:"digilocker-pending",sessionToken:i.session_token,guardianInfoUuid:i.guardian_info_uuid,selectedPurposes:e.selectedPurposes,selectedDataElements:e.selectedDataElements,timestamp:new Date().toISOString(),originalUrl:window.location.href,noticeId:this.options.noticeId,baseUrl:this.options.baseUrl}),this.store.setState({showGuardianForm:!1,showVerificationScreen:!0,isInitiatingVerification:!0,isPollingStatus:!1}),o==="popup"&&i.digilocker_redirect_url){let s=window.open(i.digilocker_redirect_url,"digilocker_verification","width=600,height=700,scrollbars=yes,resizable=yes");if(s)this.verificationPopup=s,this.startPopupMonitoring(s);else{this.store.setState({isInitiatingVerification:!1,verificationError:"Popup blocked. Please allow popups for this site.",canRetryVerification:!0});return}}else if(i.digilocker_redirect_url){let s=window.open(i.digilocker_redirect_url,"_blank");if(!s){this.store.setState({isInitiatingVerification:!1,verificationError:"Unable to open DigiLocker. Please allow popups.",canRetryVerification:!0});return}try{s.opener=null}catch{}}this.store.setState({isInitiatingVerification:!1,isPollingStatus:!0}),this.startStatusPolling(i.session_token)}catch(i){this.store.setState({isInitiatingVerification:!1});let s=i;this.guardianFormRefs&&(this.guardianFormRefs.generalError.textContent=s.message||"Failed to initiate verification.",this.guardianFormRefs.generalError.style.display="block")}}startStatusPolling(e){this.verificationSessionToken=e;let t=0,o=0,r=!1,i=40,s=3,p=3e3,d=async()=>{var l;if(!r){if(t++,t>i){this.stopPolling(),this.store.setState({verificationError:"Verification is taking longer than expected. Please try again.",verificationErrorCode:"SESSION_EXPIRED",canRetryVerification:!0,isPollingStatus:!1});return}try{let c=await be({accessToken:this.options.accessToken,baseUrl:this.options.baseUrl,sessionToken:e});if(o=0,c.status==="verified"){this.stopPolling();let u=c.verification_reference||((l=c.guardian_details)==null?void 0:l.verification_reference);if(!u){this.store.setState({verificationError:"Verification completed but no reference received. Please try again.",canRetryVerification:!0,isPollingStatus:!1});return}this.store.setState({verificationReference:u,isVerificationComplete:!0,isPollingStatus:!1}),ee();return}if(c.status==="failed"||c.status==="expired"){this.stopPolling(),this.store.setState({verificationError:it(c.error_code,c.error),verificationErrorCode:c.error_code,canRetryVerification:c.can_retry,isPollingStatus:!1});return}r||(this.statusPollTimeout=setTimeout(d,p))}catch(c){let u=c;if(u.status===404||u.status===410){this.stopPolling(),this.store.setState({verificationError:"Verification session not found or expired.",verificationErrorCode:"SESSION_EXPIRED",canRetryVerification:!0,isPollingStatus:!1});return}if(o++,o>=s){this.stopPolling(),this.store.setState({verificationError:u.message||"Unable to check verification status.",canRetryVerification:!0,isPollingStatus:!1});return}this.statusPollTimeout=setTimeout(d,p)}}};this.visibilityChangeHandler=()=>{document.hidden?(r=!0,this.statusPollTimeout&&(clearTimeout(this.statusPollTimeout),this.statusPollTimeout=null)):(r=!1,d())},document.addEventListener("visibilitychange",this.visibilityChangeHandler),this.statusPollTimeout=setTimeout(d,p)}stopPolling(){var e;this.statusPollTimeout&&(clearTimeout(this.statusPollTimeout),this.statusPollTimeout=null),this.popupCheckInterval&&(clearInterval(this.popupCheckInterval),this.popupCheckInterval=null),this.visibilityChangeHandler&&(document.removeEventListener("visibilitychange",this.visibilityChangeHandler),this.visibilityChangeHandler=null),(e=this.verificationPopup)==null||e.close(),this.verificationPopup=null}startPopupMonitoring(e){this.popupCheckInterval=setInterval(()=>{e.closed&&this.popupCheckInterval&&(clearInterval(this.popupCheckInterval),this.popupCheckInterval=null)},500)}handleVerificationContinue(){this.store.setState({showVerificationScreen:!1,isVerificationComplete:!1})}handleVerificationRetry(){this.store.setState({showVerificationScreen:!1,showGuardianForm:!0,verificationError:null,verificationErrorCode:null,canRetryVerification:!1,isVerificationComplete:!1})}handleChangeGuardian(){this.store.setState({showVerificationScreen:!1,showGuardianForm:!0,verificationError:null,verificationErrorCode:null,canRetryVerification:!1,isVerificationComplete:!1,guardianFormData:{guardianName:"",guardianContact:"",guardianRelationship:""}})}updateTTSButton(){var t,o,r;if(!this.ttsButton||!this.ttsManager)return;if(!this.ttsManager.isAvailable){this.ttsButton.style.display="none";return}this.ttsButton.style.display="flex",X(this.ttsButton);let e=((r=(o=(t=this.options.settings)==null?void 0:t.button)==null?void 0:o.language)==null?void 0:r.textColor)||"currentColor";if(this.ttsManager.isPlaying){let i=R("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:e,"stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},R("rect",{x:"6",y:"4",width:"4",height:"16"}),R("rect",{x:"14",y:"4",width:"4",height:"16"}));this.ttsButton.appendChild(i),this.ttsButton.setAttribute("aria-label","Pause audio playback"),this.ttsButton.setAttribute("title","Pause Talkback")}else{let i=R("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:e,"stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},R("polygon",{points:"11 5 6 9 2 9 2 15 6 15 11 19 11 5"}),R("path",{d:"M19.07 4.93a10 10 0 0 1 0 14.14M15.54 8.46a5 5 0 0 1 0 7.07"}));this.ttsButton.appendChild(i),this.ttsButton.setAttribute("aria-label",this.ttsManager.isPaused?"Resume audio playback":"Start audio playback"),this.ttsButton.setAttribute("title",this.ttsManager.isPaused?"Resume Talkback":"Start Talkback")}}updateButtonStates(e){var t;if(this.acceptBtn)if(e.isSubmittingAccept)this.acceptBtn.textContent="Submitting...",this.acceptBtn.disabled=!0,this.acceptBtn.style.opacity="0.7",this.acceptBtn.style.cursor="not-allowed";else{let o=(t=e.content)==null?void 0:t.detail.active_config;this.acceptBtn.textContent=e.isFullyConsentedReviewMode?this.options.reviewModeButtonText||"Continue":this.getTranslatedText("confirm_button_text",(o==null?void 0:o.confirm_button_text)||"Accept"),this.acceptBtn.disabled=!1,this.acceptBtn.style.opacity="1",this.acceptBtn.style.cursor="pointer"}this.declineBtn&&(this.declineBtn.disabled=e.isSubmitting,this.declineBtn.style.opacity=e.isSubmitting?"0.7":"1",this.declineBtn.style.cursor=e.isSubmitting?"not-allowed":"pointer")}};var W={optionItem:{display:"flex",justifyContent:"space-between",alignItems:"center",margin:0,padding:0,boxSizing:"border-box"},optionLeft:{display:"flex",gap:"12px",alignItems:"center",cursor:"pointer",margin:0,padding:0,boxSizing:"border-box"},optionTextContainer:{display:"flex",flexDirection:"column",margin:0,padding:0,boxSizing:"border-box"},optionTitle:{fontWeight:500,fontSize:"16px",lineHeight:"150%",letterSpacing:"0.2px",color:"#101828",margin:0,padding:0,textAlign:"left"},optionDescription:{fontWeight:400,fontSize:"12px",lineHeight:"150%",letterSpacing:"0.2px",color:"#475467",verticalAlign:"middle",margin:0,padding:0,textAlign:"left"},checkboxLarge:{height:"20px",width:"20px",padding:"4px",borderRadius:"5px",border:"2px solid #d0d5dd",margin:0,boxSizing:"border-box",appearance:"none",WebkitAppearance:"none",MozAppearance:"none",cursor:"pointer",position:"relative",backgroundColor:"transparent"},dataElementsContainer:{marginLeft:"27px",display:"flex",flexDirection:"column",margin:0,padding:0,boxSizing:"border-box",paddingLeft:"22px"},dataElementItem:{display:"flex",alignItems:"center",gap:"10px",justifyContent:"space-between",margin:0,padding:0,boxSizing:"border-box",minHeight:"24px"},dataElementText:{fontWeight:400,fontSize:"14px",lineHeight:"150%",letterSpacing:"0.2px",color:"#344054",margin:0,padding:0,textAlign:"left"},checkboxSmall:{height:"16px",width:"16px",padding:"4px",borderRadius:"5px",border:"2px solid #d0d5dd",margin:0,boxSizing:"border-box",appearance:"none",WebkitAppearance:"none",MozAppearance:"none",cursor:"pointer",position:"relative",backgroundColor:"transparent"},loadingContainer:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:"2rem",minHeight:"200px",margin:0,boxSizing:"border-box"},loadingSpinner:{width:"40px",height:"40px",border:"4px solid #f3f3f3",borderTop:"4px solid #3498db",borderRadius:"50%",animation:"spin 1s linear infinite",marginBottom:"1rem",boxSizing:"border-box"}};function st(n,e){var L;let{selectedPurposes:t,collapsedPurposes:o,selectedDataElements:r,settings:i,isMobile:s,getTranslatedText:p,onPurposeToggle:d,onPurposeCollapse:l,onDataElementToggle:c}=e,u=new Map,x=new Map,f=new Map,b=new Map,h=new Map,y=new Map,S=new Map,_=(i==null?void 0:i.headingColor)||"#101828",m=(i==null?void 0:i.textColor)||"#344054",A=a("div",{style:{display:"flex",flexDirection:"column",gap:"16px"}});for(let v of n){let w=a("div"),I=R("svg",{width:"7",height:"12",viewBox:"0 0 7 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:(i==null?void 0:i.headingColor)||"#323B4B","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{transform:o[v.uuid]?"rotate(0deg)":"rotate(90deg)",transition:"transform 0.3s ease"},"aria-hidden":"true"},R("path",{d:"M1 1L6 6L1 11"}));b.set(v.uuid,I);let B=a("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",marginLeft:"5px"}},I),E=a("h2",{style:{...W.optionTitle,fontSize:s?"14px":"16px",color:_}});E.textContent=p("purposes.name",v.name,v.uuid),h.set(v.uuid,E);let D=a("h3",{style:{...W.optionDescription,fontSize:s?"11px":"12px",color:m}});D.textContent=p("purposes.description",v.description,v.uuid),y.set(v.uuid,D);let k=a("div",{style:W.optionTextContainer},E,D),H=a("div",{style:W.optionLeft,role:"button",tabIndex:"0","aria-expanded":String(!o[v.uuid]),"aria-controls":`purpose-${v.uuid}`,"aria-label":`${o[v.uuid]?"Expand":"Collapse"} ${p("purposes.name",v.name,v.uuid)} details`,onClick:()=>l(v.uuid),onKeydown:V=>{(V.key==="Enter"||V.key===" ")&&(V.preventDefault(),l(v.uuid))}},B,k);x.set(v.uuid,H);let M=a("input",{type:"checkbox",checked:t[v.uuid]||!1,"aria-label":`Select all data elements for ${p("purposes.name",v.name,v.uuid)}`,onChange:()=>d(v.uuid)});u.set(v.uuid,M);let z=a("div",{style:W.optionItem},H,M),G=a("div",{id:`purpose-${v.uuid}`,style:W.dataElementsContainer});if(v.data_elements&&v.data_elements.length>0)for(let V of v.data_elements){let N=`${v.uuid}-${V.uuid}`,j=a("span",{style:{...W.dataElementText,fontSize:s?"12px":"14px",color:m}});if(j.textContent=p("data_elements.name",V.name,V.uuid),S.set(N,j),V.required){let T=a("span",{style:{color:"red",marginLeft:"4px"},"aria-label":"required"});T.textContent="*",j.appendChild(T)}let O=a("input",{type:"checkbox",checked:r[N]||!1,"aria-label":`Select ${p("data_elements.name",V.name,V.uuid)}${V.required?" (required)":""}`,onChange:()=>c(V.uuid,v.uuid)});u.set(N,O);let C=a("div",{style:W.dataElementItem},j,O);G.appendChild(C)}f.set(v.uuid,G),!o[v.uuid]&&((L=v.data_elements)==null?void 0:L.length)>0?G.style.display="flex":G.style.display="none",w.appendChild(z),w.appendChild(G),A.appendChild(w)}return{container:A,checkboxes:u,collapseButtons:x,dataElementContainers:f,chevrons:b,titleElements:h,descriptionElements:y,dataElementLabels:S}}var ve=class{constructor(e){this.targetEl=null;this.hostEl=null;this.shadowRoot=null;this.rootEl=null;this.purposeRefs=null;this.errorEl=null;this.hasSubmitted=!1;this.unsubscribe=null;this.options=e,this.store=new ie({content:null,isLoading:!0,isSubmitting:!1,selectedLanguage:e.language||"en",collapsedPurposes:{},selectedPurposes:{},selectedDataElements:{},hasAlreadyConsented:!1,fetchError:null,errorMessage:null}),this.mediaQuery=fe("(max-width: 768px)")}async init(){if(typeof this.options.target=="string"){if(this.targetEl=document.querySelector(this.options.target),!this.targetEl)throw new Error(`Target element not found: ${this.options.target}`)}else this.targetEl=this.options.target;this.hostEl=document.createElement("div"),this.hostEl.setAttribute("data-redacto-consent-inline",""),this.hostEl.style.display="block",this.targetEl.appendChild(this.hostEl),this.shadowRoot=this.hostEl.attachShadow({mode:"open"}),ae(this.shadowRoot),this.unsubscribe=this.store.subscribe((e,t)=>{this.handleStateChange(e,t)}),this.mediaQuery.subscribe(()=>this.rebuildUI()),this.renderLoading(),await this.fetchNotice()}destroy(){var e;(e=this.unsubscribe)==null||e.call(this),this.mediaQuery.destroy(),this.store.destroy(),this.hostEl&&this.hostEl.parentNode&&this.hostEl.parentNode.removeChild(this.hostEl),this.hostEl=null,this.shadowRoot=null,this.rootEl=null,this.purposeRefs=null}updateToken(e){this.options={...this.options,accessToken:e},this.tryAutoSubmit()}async fetchNotice(){var e,t,o,r;this.store.setState({isLoading:!0,fetchError:null});try{let s=(await je({org_uuid:this.options.org_uuid,workspace_uuid:this.options.workspace_uuid,notice_uuid:this.options.notice_uuid,baseUrl:this.options.baseUrl,language:this.options.language,specific_uuid:this.options.applicationId})).detail.active_config,p={},d={},l={};for(let c of s.purposes){p[c.uuid]=!0,d[c.uuid]=!1;for(let u of c.data_elements)l[`${c.uuid}-${u.uuid}`]=!1}this.store.setState({content:s,isLoading:!1,selectedLanguage:s.default_language||this.options.language||"en",collapsedPurposes:p,selectedPurposes:d,selectedDataElements:l})}catch(i){let s=i;s.status===409?(this.store.setState({hasAlreadyConsented:!0,isLoading:!1}),(t=(e=this.options).onAccept)==null||t.call(e)):(this.store.setState({fetchError:s,isLoading:!1}),(r=(o=this.options).onError)==null||r.call(o,s))}}handleStateChange(e,t){if(t.isLoading&&!e.isLoading&&e.content&&this.rebuildUI(),e.hasAlreadyConsented||e.fetchError){this.rootEl&&this.shadowRoot&&this.rootEl.parentNode===this.shadowRoot&&(this.shadowRoot.removeChild(this.rootEl),this.rootEl=null);return}(e.selectedPurposes!==t.selectedPurposes||e.selectedDataElements!==t.selectedDataElements)&&(this.updateCheckboxes(e),this.notifyValidation(e),this.tryAutoSubmit()),e.collapsedPurposes!==t.collapsedPurposes&&this.updateCollapseState(e),e.errorMessage!==t.errorMessage&&this.updateErrorMessage(e)}renderLoading(){var t;if(!this.shadowRoot)return;let e=((t=this.options.settings)==null?void 0:t.textColor)||"#344054";this.rootEl=a("div",{style:W.loadingContainer},a("div",{style:W.loadingSpinner}),a("p",{style:{fontSize:"16px",fontWeight:400,color:e}},"Loading...")),this.shadowRoot.appendChild(this.rootEl)}rebuildUI(){let e=this.store.getState();!e.content||!this.shadowRoot||(this.rootEl&&this.rootEl.parentNode===this.shadowRoot&&this.shadowRoot.removeChild(this.rootEl),this.errorEl=a("div",{role:"alert",style:{backgroundColor:"#FEE2E2",color:"#DC2626",padding:"12px",borderRadius:"6px",fontSize:"14px",border:"1px solid #FCA5A5",display:e.errorMessage?"block":"none"}}),e.errorMessage&&(this.errorEl.textContent=e.errorMessage),this.purposeRefs=st(e.content.purposes,{selectedPurposes:e.selectedPurposes,collapsedPurposes:e.collapsedPurposes,selectedDataElements:e.selectedDataElements,settings:this.options.settings,isMobile:this.mediaQuery.matches,getTranslatedText:(t,o,r)=>this.getTranslatedText(t,o,r),onPurposeToggle:t=>this.handlePurposeCheckboxChange(t),onPurposeCollapse:t=>this.togglePurposeCollapse(t),onDataElementToggle:(t,o)=>this.handleDataElementCheckboxChange(t,o)}),this.rootEl=a("div",{style:{display:"flex",flexDirection:"column",gap:"16px"}},this.errorEl,this.purposeRefs.container),this.shadowRoot.appendChild(this.rootEl),this.notifyValidation(e))}getTranslatedText(e,t,o){var c,u;let r=this.store.getState(),i=r.content;if(!i)return t;let s=r.selectedLanguage;if(s==="English"||s==="en"||s==="EN")return e==="privacy_policy_anchor_text"&&i.privacy_policy_anchor_text?i.privacy_policy_anchor_text:t;let p=i.supported_languages_and_translations;if(!p)return t;let d=p[s];if(!d)return t;if(o){if(e==="purposes.name"||e==="purposes.description"){let x=(c=d.purposes)==null?void 0:c[o];return x?typeof x=="string"?e==="purposes.name"?x:t:e==="purposes.name"?x.name||t:x.description||t:t}if(e.startsWith("data_elements."))return((u=d.data_elements)==null?void 0:u[o])||t}let l=d[e];return typeof l=="string"&&l?l:t}togglePurposeCollapse(e){let t=this.store.getState();this.store.setState({collapsedPurposes:{...t.collapsedPurposes,[e]:!t.collapsedPurposes[e]}})}handlePurposeCheckboxChange(e){let t=this.store.getState(),o=t.content;if(!o)return;let r=o.purposes.find(p=>p.uuid===e);if(!r)return;let i=!t.selectedPurposes[e],s={...t.selectedDataElements};for(let p of r.data_elements)s[`${e}-${p.uuid}`]=i;this.store.setState({selectedPurposes:{...t.selectedPurposes,[e]:i},selectedDataElements:s})}handleDataElementCheckboxChange(e,t){let o=this.store.getState(),r=o.content;if(!r)return;let i=r.purposes.find(u=>u.uuid===t);if(!i)return;let s=`${t}-${e}`,p=!o.selectedDataElements[s],d={...o.selectedDataElements,[s]:p},l=i.data_elements.filter(u=>u.required),c;l.length>0?c=l.every(u=>d[`${t}-${u.uuid}`]):c=i.data_elements.some(u=>d[`${t}-${u.uuid}`]),this.store.setState({selectedDataElements:d,selectedPurposes:{...o.selectedPurposes,[t]:c}})}updateCheckboxes(e){if(this.purposeRefs)for(let[t,o]of this.purposeRefs.checkboxes)t in e.selectedPurposes?o.checked=e.selectedPurposes[t]||!1:o.checked=e.selectedDataElements[t]||!1}updateCollapseState(e){var t;if(this.purposeRefs)for(let[o,r]of this.purposeRefs.dataElementContainers){let i=this.store.getState().content,s=i==null?void 0:i.purposes.find(c=>c.uuid===o),p=e.collapsedPurposes[o];r.style.display=!p&&((t=s==null?void 0:s.data_elements)!=null&&t.length)?"flex":"none";let d=this.purposeRefs.chevrons.get(o);d&&(d.style.transform=p?"rotate(0deg)":"rotate(90deg)");let l=this.purposeRefs.collapseButtons.get(o);l&&l.setAttribute("aria-expanded",String(!p))}}updateErrorMessage(e){this.errorEl&&(e.errorMessage?(this.errorEl.textContent=e.errorMessage,this.errorEl.style.display="block"):this.errorEl.style.display="none")}areAllRequiredElementsChecked(){let e=this.store.getState(),t=e.content;return t?t.purposes.every(o=>o.data_elements.filter(i=>i.required).every(i=>e.selectedDataElements[`${o.uuid}-${i.uuid}`])):!1}notifyValidation(e){var o,r;let t=this.areAllRequiredElementsChecked();(r=(o=this.options).onValidationChange)==null||r.call(o,t)}async tryAutoSubmit(){var o,r;let e=this.store.getState(),t=this.options.accessToken;if(t&&e.content&&this.areAllRequiredElementsChecked()&&!e.isSubmitting&&!this.hasSubmitted){this.hasSubmitted=!0;try{await this.handleSubmit(t)}catch(i){this.hasSubmitted=!1,(r=(o=this.options).onError)==null||r.call(o,i)}}}async handleSubmit(e){var r,i;let t=this.store.getState(),o=t.content;if(!e||!o)throw this.store.setState({errorMessage:"Unable to submit consent. Please try again."}),new Error("Access token or content not available");try{this.store.setState({isSubmitting:!0,errorMessage:null}),await Ke({org_uuid:this.options.org_uuid,workspace_uuid:this.options.workspace_uuid,accessToken:e,baseUrl:this.options.baseUrl,noticeUuid:o.notice_uuid,purposes:o.purposes.map(s=>{let p=s.data_elements.some(c=>c.required&&(t.selectedDataElements[`${s.uuid}-${c.uuid}`]||!1)),d=s.data_elements.some(c=>t.selectedDataElements[`${s.uuid}-${c.uuid}`]||!1),l=t.selectedPurposes[s.uuid]||p||d;return{...s,selected:l,data_elements:s.data_elements.map(c=>({...c,selected:t.selectedDataElements[`${s.uuid}-${c.uuid}`]||!1}))}}),declined:!1,meta_data:this.options.applicationId?{specific_uuid:this.options.applicationId}:void 0}),(i=(r=this.options).onAccept)==null||i.call(r),this.hasSubmitted=!1}catch(s){let p=s,d=p.status===500?"An error occurred while submitting your consent. Please try again later.":p.message||"Failed to submit consent. Please try again.";throw this.store.setState({errorMessage:d}),this.hasSubmitted=!1,s}finally{this.store.setState({isSubmitting:!1})}}};function lt(n){switch(n){case"GUARDIAN_UNDER_18":return"Guardian verification failed: The guardian must be 18 years or older.";case"SESSION_EXPIRED":return"Verification session has expired. Please restart the verification process.";case"TOKEN_FAILED":return"DigiLocker authentication failed. Please try again.";case"DIGILOCKER_AUTH_FAILED":return"DigiLocker authorization was cancelled or failed. Please try again.";case"NO_AUTH_CODE":return"Missing authorization code from DigiLocker. Please try again.";default:return"Verification failed. Please try again."}}function dt(n){var A,L,v;ae(document);let e=new URLSearchParams(window.location.search),t=e.get("session_token"),o=e.get("status"),r=e.get("verification_reference"),i=e.get("error_code"),s=de(),p=(s==null?void 0:s.originalUrl)||"/",d=s==null?void 0:s.baseUrl,l=s==null?void 0:s.sessionToken,c=t||l,u=n.baseUrl||d,x=!1;try{x=window.self!==window.top}catch{x=!0}let f=a("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"200px",padding:"32px",fontFamily:"system-ui, -apple-system, sans-serif"}}),b=a("p",{style:{fontSize:"16px",fontWeight:600,color:"#101828",textAlign:"center"}});b.textContent="Processing verification...";let h=a("div",{style:{width:"40px",height:"40px",border:"4px solid #f3f3f3",borderTop:"4px solid #3498db",borderRadius:"50%",animation:"spin 1s linear infinite",marginBottom:"16px"}});f.appendChild(h),f.appendChild(b),document.body.appendChild(f);let y=(w,I)=>{Ze({verificationResult:w,verificationReference:I,flowState:w==="verified"?"consent-form":"error"}),b.textContent=w==="verified"?"Verification successful! Redirecting...":"Verification failed. Redirecting...",h.style.display="none",setTimeout(()=>{window.location.href=p},1500)};if(o==="verified"&&r){if(x&&window.parent){window.parent.postMessage({type:"DIGILOCKER_VERIFICATION_STATUS",status:"verified",verificationReference:r},window.location.origin),b.textContent="Verification successful!",h.style.display="none";return}(A=n.onSuccess)==null||A.call(n,r),y("verified",r);return}if(o==="failed"||o==="expired"){let w=lt(i);if(x&&window.parent){window.parent.postMessage({type:"DIGILOCKER_VERIFICATION_STATUS",status:o,errorCode:i,error:w},window.location.origin),b.textContent=w,b.style.color="#DC2626",h.style.display="none";return}(L=n.onError)==null||L.call(n,new Error(w),i||void 0),y(o);return}if(!c){b.textContent="No verification session found.",b.style.color="#DC2626",h.style.display="none",(v=n.onError)==null||v.call(n,new Error("No session token available"));return}let S=0,_=3,m=async()=>{var w,I,B,E,D;try{let k=await be({accessToken:n.accessToken,baseUrl:u,sessionToken:c});if(k.status==="verified"){let M=k.verification_reference||((w=k.guardian_details)==null?void 0:w.verification_reference);if(x&&window.parent){window.parent.postMessage({type:"DIGILOCKER_VERIFICATION_STATUS",status:"verified",verificationReference:M},window.location.origin),b.textContent="Verification successful!",h.style.display="none";return}M&&((I=n.onSuccess)==null||I.call(n,M)),y("verified",M||void 0);return}if(k.status==="failed"||k.status==="expired"){let M=Pt(k.error_code,k.error);if(x&&window.parent){window.parent.postMessage({type:"DIGILOCKER_VERIFICATION_STATUS",status:k.status,errorCode:k.error_code,error:M},window.location.origin),b.textContent=M,b.style.color="#DC2626",h.style.display="none";return}(B=n.onError)==null||B.call(n,new Error(M),k.error_code||void 0),y(k.status);return}if(S++,S>_){let M="Verification is taking too long. Please return to the original page.";b.textContent=M,b.style.color="#DC2626",h.style.display="none",(E=n.onError)==null||E.call(n,new Error(M)),y("failed");return}let H=3e3*Math.pow(2,S-1);b.textContent="Still processing... Please wait.",setTimeout(m,H)}catch(k){if(S++,S>_){let M=k.message||"Failed to check verification status.";b.textContent=M,b.style.color="#DC2626",h.style.display="none",(D=n.onError)==null||D.call(n,k),y("failed");return}let H=3e3*Math.pow(2,S-1);setTimeout(m,H)}};setTimeout(m,3e3)}function Pt(n,e){return lt(n)||e||"Verification failed. Please try again."}var ce=null,Y=null;function ct(n){Ie(),ce=new xe(n),ce.init().catch(e=>{var t;(t=n.onError)==null||t.call(n,e)})}function pt(n){Y&&(Y.destroy(),Y=null),Y=new ve(n),Y.init().catch(e=>{var t;(t=n.onError)==null||t.call(n,e)})}function Ie(){ce&&(ce.destroy(),ce=null),Y&&(Y.destroy(),Y=null)}function ut(n){dt(n)}var It={init:ct,inline:pt,destroy:Ie,digilockerCallback:ut,version:"0.1.0"},Mt=It;return Ct(At);})();
131
+ `,ae=n=>{if(typeof document=="undefined"||(n instanceof Document?n.getElementById(Se):n.querySelector(`#${Se}`)))return;let t=document.createElement("style");t.id=Se,t.textContent=Tt,n instanceof Document?n.head.appendChild(t):n.appendChild(t)};var g={overlay:{position:"fixed",top:0,left:0,width:"100%",height:"100%",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:999,animation:"overlayFadeIn 0.2s cubic-bezier(0.16, 1, 0.3, 1)",pointerEvents:"all",margin:0,padding:0,boxSizing:"border-box"},modal:{position:"fixed",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"700px",borderRadius:"8px",backgroundColor:"#ffffff",boxShadow:"4px 0px 4px 0px #00000040",border:"none",display:"flex",flexDirection:"column",maxHeight:"90vh",zIndex:1e3,margin:0,padding:0,boxSizing:"border-box",textAlign:"left",fontFamily:"inherit"},content:{margin:"22px",display:"flex",flexDirection:"column",flexGrow:1,overflow:"hidden",minHeight:0,boxSizing:"border-box",textAlign:"left"},topSection:{display:"flex",justifyContent:"space-between",alignItems:"flex-start",gap:"10px",paddingBottom:"15px",borderBottom:"none",backgroundColor:"#ffffff",margin:0,boxSizing:"border-box",textAlign:"left"},topLeft:{display:"flex",alignItems:"center",gap:"10px",flex:"1 1 0",minWidth:0,margin:0,padding:0,boxSizing:"border-box"},logo:{height:"32px",width:"auto",maxWidth:"140px",objectFit:"contain",flexShrink:0,margin:0,padding:0,display:"block"},title:{fontSize:"18px",fontWeight:700,lineHeight:"150%",letterSpacing:"0.2px",verticalAlign:"middle",color:"#101828",flex:"1 1 auto",minWidth:0,wordBreak:"normal",overflowWrap:"anywhere",margin:0,padding:0,textAlign:"left"},topRight:{borderRadius:"8px",padding:"3px 9px",border:"1px solid #d0d5dd",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,fontWeight:400,fontSize:"12px",lineHeight:"150%",letterSpacing:"0.2px",verticalAlign:"middle",color:"#344054",gap:"5px",margin:0,boxSizing:"border-box",textAlign:"left",cursor:"pointer",backgroundColor:"#ffffff"},middleSection:{margin:"0px",display:"flex",flexDirection:"column",gap:"12px",flexGrow:1,overflowY:"auto",minHeight:0,paddingRight:"15px",boxSizing:"border-box",textAlign:"left"},privacyText:{fontSize:"16px",fontWeight:400,lineHeight:"150%",color:"#344054",margin:0,padding:0,textAlign:"left"},link:{color:"#4f87ff",textDecoration:"none",margin:0,padding:0,boxSizing:"border-box"},subTitle:{fontWeight:600,fontSize:"16px",lineHeight:"150%",letterSpacing:"0.2px",color:"#101828",margin:0,padding:0,textAlign:"left"},optionsContainer:{display:"flex",flexDirection:"column",gap:"10px",margin:0,padding:0,boxSizing:"border-box"},optionItem:{display:"flex",justifyContent:"space-between",alignItems:"center",margin:0,padding:0,boxSizing:"border-box"},optionLeft:{display:"flex",gap:"12px",alignItems:"center",cursor:"pointer",margin:0,padding:0,boxSizing:"border-box"},optionTextContainer:{display:"flex",flexDirection:"column",margin:0,padding:0,boxSizing:"border-box"},optionTitle:{fontWeight:500,fontSize:"16px",lineHeight:"150%",letterSpacing:"0.2px",color:"#101828",margin:0,padding:0,textAlign:"left"},optionDescription:{fontWeight:400,fontSize:"12px",lineHeight:"150%",letterSpacing:"0.2px",color:"#475467",verticalAlign:"middle",margin:0,padding:0,textAlign:"left"},checkboxLarge:{height:"20px",width:"20px",padding:"4px",borderRadius:"5px",border:"2px solid #d0d5dd",margin:0,boxSizing:"border-box",appearance:"none",WebkitAppearance:"none",MozAppearance:"none",cursor:"pointer",position:"relative",backgroundColor:"transparent"},dataElementsContainer:{marginLeft:"27px",display:"flex",flexDirection:"column",margin:0,padding:0,boxSizing:"border-box",paddingLeft:"22px"},dataElementItem:{display:"flex",alignItems:"center",gap:"10px",justifyContent:"space-between",margin:0,padding:0,boxSizing:"border-box",minHeight:"24px"},dataElementText:{fontWeight:400,fontSize:"14px",lineHeight:"150%",letterSpacing:"0.2px",color:"#344054",margin:0,padding:0,textAlign:"left"},checkboxSmall:{height:"16px",width:"16px",padding:"4px",borderRadius:"5px",border:"2px solid #d0d5dd",margin:0,boxSizing:"border-box",appearance:"none",WebkitAppearance:"none",MozAppearance:"none",cursor:"pointer",position:"relative",backgroundColor:"transparent"},bottomSection:{display:"flex",justifyContent:"space-between",gap:"29px",paddingTop:"15px",borderTop:"none",backgroundColor:"#ffffff",margin:0,boxSizing:"border-box"},button:{width:"100%",borderRadius:"8px",padding:"9px 45px",fontWeight:400,fontSize:"16px",lineHeight:"150%",letterSpacing:"0.2px",cursor:"pointer",margin:0,boxSizing:"border-box",textAlign:"center"},acceptButton:{backgroundColor:"#4f87ff",border:"none",color:"#ffffff"},cancelButton:{border:"1px solid #d0d5dd",backgroundColor:"#ffffff",color:"#000000"},languageSelectorContainer:{position:"relative",margin:0,padding:0,boxSizing:"border-box"},languageDropdown:{position:"absolute",top:"100%",right:0,backgroundColor:"#ffffff",border:"1px solid #d0d5dd",borderRadius:"4px",boxShadow:"0px 2px 4px rgba(0, 0, 0, 0.1)",zIndex:10,width:"max-content",maxHeight:"200px",overflowY:"auto",marginTop:"4px",padding:0,boxSizing:"border-box",textAlign:"left"},languageItem:{padding:"8px 12px",cursor:"pointer",fontSize:"12px",color:"#344054",backgroundColor:"#ffffff",borderBottom:"1px solid #e5e7eb",margin:0,boxSizing:"border-box",textAlign:"left"},selectedLanguageItem:{backgroundColor:"#f3f4f6",fontWeight:600},loadingContainer:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:"2rem",minHeight:"200px",margin:0,boxSizing:"border-box"},loadingSpinner:{width:"40px",height:"40px",border:"4px solid #f3f3f3",borderTop:"4px solid #3498db",borderRadius:"50%",animation:"spin 1s linear infinite",marginBottom:"1rem",boxSizing:"border-box"}};function we(n,e){var I,B;let{selectedPurposes:t,collapsedPurposes:o,selectedDataElements:r,initialDataElementSelections:i={},settings:s,isMobile:p,isAlreadyConsented:d,getTranslatedText:l,onPurposeToggle:c,onPurposeCollapse:u,onDataElementToggle:x}=e,f=new Map,b=new Map,h=new Map,y=new Map,S=new Map,_=new Map,m=new Map,A=(s==null?void 0:s.headingColor)||"#323B4B",L=(s==null?void 0:s.textColor)||"#344054",v=(s==null?void 0:s.font)||"inherit",w=a("div",{style:g.optionsContainer});for(let E of n){let D=a("div"),k=R("svg",{width:"7",height:"12",viewBox:"0 0 7 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:A,"stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{transform:o[E.uuid]?"rotate(0deg)":"rotate(90deg)",transition:"transform 0.3s ease"},"aria-hidden":"true"},R("path",{d:"M1 1L6 6L1 11"}));y.set(E.uuid,k);let H=a("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",marginLeft:"5px"}},k),M=a("h2",{id:`purpose-name-${E.uuid}`,style:{...g.optionTitle,fontSize:p?"14px":"16px",color:A,fontFamily:v}});M.textContent=l("purposes.name",E.name,E.uuid),S.set(E.uuid,M);let z=a("h3",{id:`purpose-description-${E.uuid}`,style:{...g.optionDescription,fontSize:p?"11px":"12px",color:L,fontFamily:v}});z.textContent=l("purposes.description",E.description,E.uuid),_.set(E.uuid,z);let G=a("div",{style:g.optionTextContainer},M,z),V=a("div",{style:g.optionLeft,role:"button",tabIndex:"0","aria-expanded":String(!o[E.uuid]),"aria-controls":`purpose-${E.uuid}`,"aria-label":`${o[E.uuid]?"Expand":"Collapse"} ${l("purposes.name",E.name,E.uuid)} details`,onClick:()=>u(E.uuid),onKeydown:C=>{(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),u(E.uuid))}},H,G);b.set(E.uuid,V);let N;if(d)N=Je(20,`Already consented to ${l("purposes.name",E.name,E.uuid)}`),he(N,{marginLeft:"12px"});else{let C=a("input",{className:"redacto-checkbox-large",type:"checkbox",checked:t[E.uuid]||!1,"aria-label":`Select all data elements for ${l("purposes.name",E.name,E.uuid)}`,onChange:()=>c(E.uuid)});f.set(E.uuid,C),N=C}let j=a("div",{style:g.optionItem},V,N),O=a("div",{id:`purpose-${E.uuid}`,style:g.dataElementsContainer});if(((I=E.data_elements)==null?void 0:I.length)>0)for(let C of E.data_elements){let T=`${E.uuid}-${C.uuid}`,P=a("span",{id:`data-element-${E.uuid}-${C.uuid}`,style:{...g.dataElementText,fontSize:p?"12px":"14px",color:L,fontFamily:v}});if(P.textContent=l("data_elements.name",C.name,C.uuid),m.set(T,P),C.required){let q=a("span",{style:{color:"red",marginLeft:"4px"},"aria-label":"required"});q.textContent="*",P.appendChild(q)}let $;if(d)i[T]||!1?$=Je(16,`Consented to ${l("data_elements.name",C.name,C.uuid)}`):$=a("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",width:"16px",height:"16px",borderRadius:"50%",border:"2px solid #d0d5dd",backgroundColor:"transparent"},"aria-label":`Not consented to ${l("data_elements.name",C.name,C.uuid)}`});else{let q=a("input",{className:"redacto-checkbox-small",type:"checkbox",checked:r[T]||!1,"aria-label":`Select ${l("data_elements.name",C.name,C.uuid)}${C.required?" (required)":""}`,onChange:()=>x(C.uuid,E.uuid)});f.set(T,q),$=q}let U=a("div",{style:g.dataElementItem},P,$);O.appendChild(U)}h.set(E.uuid,O),O.style.display=!o[E.uuid]&&((B=E.data_elements)==null?void 0:B.length)>0?"flex":"none",D.appendChild(j),D.appendChild(O),w.appendChild(D)}return{container:w,checkboxes:f,collapseButtons:b,dataElementContainers:h,chevrons:y,titleElements:S,descriptionElements:_,dataElementLabels:m}}function Je(n,e){let t=n===20?12:10,o=n===20?"2":"1.5",r=n===20?"M4 6L5.5 7.5L8.5 4.5":"M3 5L4.5 6.5L7.5 3.5",i=R("svg",{width:String(t),height:String(t),viewBox:`0 0 ${t} ${t}`,fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},R("path",{d:r,stroke:"white","stroke-width":o,"stroke-linecap":"round","stroke-linejoin":"round"}));return a("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",width:`${n}px`,height:`${n}px`,borderRadius:"50%",backgroundColor:"#10B981"},"aria-label":e},i)}var Rt={English:"English",Assamese:"\u0985\u09B8\u09AE\u09C0\u09AF\u09BC\u09BE (Assamese)",Bengali:"\u09AC\u09BE\u0982\u09B2\u09BE (Bengali)",Bodo:"\u092C\u0921\u093C\u094B (Bodo)",Dogri:"\u0921\u094B\u0917\u0930\u0940 (Dogri)","Goan Konkani":"\u0915\u094B\u0902\u0915\u0923\u0940 (Goan Konkani)",Gujarati:"\u0A97\u0AC1\u0A9C\u0AB0\u0ABE\u0AA4\u0AC0 (Gujarati)",Hindi:"\u0939\u093F\u0928\u094D\u0926\u0940 (Hindi)",Kannada:"\u0C95\u0CA8\u0CCD\u0CA8\u0CA1 (Kannada)",Kashmiri:"\u0643\u0672\u0634\u064F\u0631 (Kashmiri)",Maithili:"\u092E\u0948\u0925\u093F\u0932\u0940 (Maithili)",Malayalam:"\u0D2E\u0D32\u0D2F\u0D3E\u0D33\u0D02 (Malayalam)",Manipuri:"\uABC3\uABE9\uABC7\uABE9\uABC2\uABE3\uABDF (Manipuri)",Marathi:"\u092E\u0930\u093E\u0920\u0940 (Marathi)",Nepali:"\u0928\u0947\u092A\u093E\u0932\u0940 (Nepali)",Odia:"\u0B13\u0B21\u0B3C\u0B3F\u0B06 (Odia)",Punjabi:"\u0A2A\u0A70\u0A1C\u0A3E\u0A2C\u0A40 (Punjabi)",Sanskrit:"\u0938\u0902\u0938\u094D\u0915\u0943\u0924\u092E\u094D (Sanskrit)",Santali:"\u1C65\u1C5F\u1C71\u1C5B\u1C5F\u1C72\u1C64 (Santali)",Sindhi:"\u0633\u0646\u068C\u064A (Sindhi)",Tamil:"\u0BA4\u0BAE\u0BBF\u0BB4\u0BCD (Tamil)",Telugu:"\u0C24\u0C46\u0C32\u0C41\u0C17\u0C41 (Telugu)",Urdu:"\u0627\u0631\u062F\u0648 (Urdu)"},ke=n=>{var e;return(e=Rt[n])!=null?e:n};function Xe(n){var m,A,L,v;let{languages:e,selectedLanguage:t,settings:o,onSelect:r,dropdownContainer:i}=n,s=!1,p=a("span");p.textContent=ke(t);let d=R("svg",{width:"8",height:"5",viewBox:"0 0 8 5",fill:"none",xmlns:"http://www.w3.org/2000/svg"},R("path",{d:"M1 1L4 4L7 1",stroke:((A=(m=o==null?void 0:o.button)==null?void 0:m.language)==null?void 0:A.textColor)||"#344054","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})),l={...g.topRight};(L=o==null?void 0:o.button)!=null&&L.language&&(l.backgroundColor=o.button.language.backgroundColor,l.color=o.button.language.textColor);let c=a("div",{style:l,role:"button",tabIndex:"0","aria-haspopup":"listbox","aria-expanded":"false","aria-label":`Language selector, current: ${ke(t)}`,onClick:()=>y(),onKeydown:w=>{w.key==="Enter"||w.key===" "?(w.preventDefault(),y()):w.key==="Escape"&&_()}},p,d),u=a("div",{style:{position:"fixed",backgroundColor:"#ffffff",border:"1px solid #d0d5dd",borderRadius:"4px",boxShadow:"0px 4px 12px rgba(0, 0, 0, 0.15)",zIndex:2147483647,minWidth:"140px",maxHeight:"200px",overflowY:"auto",padding:0,boxSizing:"border-box",textAlign:"left",display:"none"},role:"listbox","aria-label":"Select language"});for(let w of e){let I=w===t,B=I?{...g.languageItem,...g.selectedLanguageItem}:{...g.languageItem};(v=o==null?void 0:o.button)!=null&&v.language&&(I&&o.button.language.selectedBackgroundColor&&(B.backgroundColor=o.button.language.selectedBackgroundColor),I&&o.button.language.selectedTextColor&&(B.color=o.button.language.selectedTextColor));let E=a("div",{style:B,role:"option","aria-selected":String(I),onClick:()=>{r(w),_()},onMouseenter:D=>{D.target.style.backgroundColor="#f3f4f6"},onMouseleave:D=>{D.target.style.backgroundColor=I?"#f3f4f6":"#ffffff"}});E.textContent=ke(w),u.appendChild(E)}let x=a("div",{style:g.languageSelectorContainer},c);i.appendChild(u);function f(){let w=c.getBoundingClientRect();u.style.top=`${w.bottom+4}px`,u.style.right=`${window.innerWidth-w.right}px`,u.style.left="auto"}let b=w=>{var B,E;let I=(E=(B=w.composedPath)==null?void 0:B.call(w))!=null?E:[];if(!(I.includes(x)||I.includes(u))){if(I.length===0){let D=w.target;if(x.contains(D)||u.contains(D))return}_()}},h=()=>{s&&f()};function y(){s?_():S()}function S(){s=!0,f(),u.style.display="block",c.setAttribute("aria-expanded","true"),setTimeout(()=>{document.addEventListener("click",b)},0),window.addEventListener("scroll",h,!0),window.addEventListener("resize",h)}function _(){s=!1,u.style.display="none",c.setAttribute("aria-expanded","false"),document.removeEventListener("click",b),window.removeEventListener("scroll",h,!0),window.removeEventListener("resize",h)}return{container:x,button:c,dropdown:u,buttonText:p}}function le(n,e){let t=o=>{var r;if(o.key==="Escape"){o.preventDefault(),e();return}if(o.key==="Tab"){let i=n.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])'),s=Array.from(i).filter(u=>!u.hasAttribute("disabled")&&u.offsetParent!==null);if(s.length===0){o.preventDefault();return}let p=s[0],d=s[s.length-1],c=(r=n.getRootNode().activeElement)!=null?r:document.activeElement;o.shiftKey?c===p&&(o.preventDefault(),d.focus()):c===d&&(o.preventDefault(),p.focus())}};return document.addEventListener("keydown",t),requestAnimationFrame(()=>{let o=n.querySelector('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');o==null||o.focus()}),()=>{document.removeEventListener("keydown",t)}}var _e="redacto_consent_sdk_state";var Te=()=>typeof window!="undefined"&&typeof window.sessionStorage!="undefined",Re=n=>{if(!Te()){console.warn("SessionStorage not available - state not persisted");return}try{let e={...n,timestamp:new Date().toISOString()};sessionStorage.setItem(_e,JSON.stringify(e))}catch(e){console.error("Failed to save consent state:",e)}},de=()=>{if(!Te())return null;try{let n=sessionStorage.getItem(_e);if(!n)return null;let e=JSON.parse(n);return Date.now()-new Date(e.timestamp).getTime()>18e5?(ee(),null):e}catch(n){return console.error("Failed to get consent state:",n),null}},ee=()=>{if(Te())try{sessionStorage.removeItem(_e)}catch(n){console.error("Failed to clear consent state:",n)}},Ze=n=>{let e=de();e&&Re({...e,...n,timestamp:new Date().toISOString()})};var et=[{audioKey:"grievance_text_audio_url",elementId:"dpo-grievance-text"},{audioKey:"grievance_anchor_text_audio_url",elementId:"dpo-grievance-link"},{audioKey:"grievance_email_connector_text_audio_url",elementId:"dpo-grievance-email-connector"},{audioKey:"grievance_email_audio_url",elementId:"dpo-grievance-email"},{audioKey:"dp_board_text_audio_url",elementId:"dpo-dp-board-text"},{audioKey:"dp_board_anchor_text_audio_url",elementId:"dpo-dp-board-link"},{audioKey:"dpo_text_audio_url",elementId:"dpo-dpo-text"},{audioKey:"dpo_anchor_text_audio_url",elementId:"dpo-dpo-link"}];var ye=class{constructor(e,t){this.audioUrls=null;this.audioSequence=[];this.elementIdSequence=[];this.currentAudio=null;this.currentIndex=0;this._isPlaying=!1;this._isPaused=!1;this._isAvailable=!1;this.highlightedElementId=null;this.abortController=null;this.onStateChange=e,this.root=t}get isPlaying(){return this._isPlaying}get isPaused(){return this._isPaused}get isAvailable(){return this._isAvailable}async fetchAudioUrls(e){var t;this.stopInternal(),this._isAvailable=!1,this.audioUrls=null,this.audioSequence=[],this.elementIdSequence=[],this.onStateChange(),(t=this.abortController)==null||t.abort(),this.abortController=new AbortController;try{let o=await Qe({accessToken:e.accessToken,baseUrl:e.baseUrl,noticeUuid:e.noticeUuid,language:e.language,signal:this.abortController.signal});this.audioUrls=o.detail,this.buildSequences(e.content),this._isAvailable=this.audioSequence.length>0,this.onStateChange()}catch(o){o.name!=="AbortError"&&(this._isAvailable=!1,this.audioUrls=null,this.audioSequence=[],this.elementIdSequence=[],this.onStateChange())}}buildSequences(e){var s,p;if(!this.audioUrls)return;let t=this.audioUrls,o=[],r=[],i=(d,l)=>{d&&(o.push(d),r.push(l))};i(t.notice_banner_heading_audio_url,"privacy-notice-title"),i(t.notice_text_audio_url,"privacy-notice-text"),i(t.privacy_policy_prefix_text_audio_url,"privacy-policy-text"),i(t.privacy_policy_anchor_text_audio_url,"privacy-policy-link"),i(t.purpose_section_heading_audio_url,"purpose-section-heading");for(let d of e.purposes){let l=(s=t.purposes_audio)==null?void 0:s[d.uuid];l&&(i(l.name_audio_url,`purpose-name-${d.uuid}`),i(l.description_audio_url,`purpose-description-${d.uuid}`));for(let c of d.data_elements){let u=(p=t.data_elements_audio)==null?void 0:p[c.uuid];u&&i(u.name_audio_url,`data-element-${d.uuid}-${c.uuid}`)}}if(i(t.additional_text_audio_url,"additional-text"),i(t.privacy_center_anchor_text_audio_url,"privacy-center-link"),t.dpo_info_audio)for(let d of et){let l=t.dpo_info_audio[d.audioKey];i(l,d.elementId)}i(t.confirm_button_text_audio_url,"confirm-button-text"),i(t.decline_button_text_audio_url,"decline-button-text"),this.audioSequence=o,this.elementIdSequence=r}toggle(){this._isPlaying?this.pause():this.play()}play(){if(this.audioSequence.length!==0)if(this._isPaused&&this.currentAudio)this.currentAudio.play().then(()=>{this._isPlaying=!0,this._isPaused=!1,this.onStateChange()}).catch(()=>{});else{let e=this._isPlaying?this.currentIndex:0;this.playNextAudio(e)}}pause(){this.currentAudio&&this._isPlaying&&(this.currentAudio.pause(),this._isPlaying=!1,this._isPaused=!0,this.onStateChange())}stop(){this.stopInternal(),this.onStateChange()}stopInternal(){this.currentAudio&&(this.currentAudio.pause(),this.currentAudio.currentTime=0,this.currentAudio=null),this._isPlaying=!1,this._isPaused=!1,this.currentIndex=0,this.removeHighlights(),this.highlightedElementId=null}destroy(){var e;(e=this.abortController)==null||e.abort(),this.stop()}playNextAudio(e){if(e>=this.audioSequence.length){this.stop();return}this.currentAudio&&(this.currentAudio.pause(),this.currentAudio=null);let t=new Audio(this.audioSequence[e]);this.currentAudio=t,this.currentIndex=e,this._isPlaying=!0,this._isPaused=!1;let o=this.elementIdSequence[e];o&&this.highlightElement(o),t.onended=()=>this.playNextAudio(e+1),t.onerror=()=>{console.warn(`Failed to load audio at index ${e}`),this.playNextAudio(e+1)},t.play().catch(r=>{console.warn(`Failed to play audio at index ${e}:`,r),this._isPlaying=!1,this.onStateChange()}),this.onStateChange()}highlightElement(e){this.removeHighlights(),this.highlightedElementId=e,setTimeout(()=>{let t="getElementById"in this.root?this.root.getElementById(e):this.root.querySelector(`#${CSS.escape(e)}`);if(t){t.classList.add("redacto-tts-highlight");let o=t.getBoundingClientRect();o.top>=0&&o.left>=0&&o.bottom<=window.innerHeight&&o.right<=window.innerWidth||t.scrollIntoView({behavior:"smooth",block:"center",inline:"nearest"})}},50)}removeHighlights(){this.root.querySelectorAll(".redacto-tts-highlight").forEach(e=>{e.classList.remove("redacto-tts-highlight")})}};function tt(n){let{settings:e,colors:t,isMobile:o,logoUrl:r,onYes:i,onNo:s,onClose:p}=n,d=(e==null?void 0:e.headingColor)||"#101828",l=t.text,c=t.font,u=a("img",{src:r,style:g.logo,alt:"Redacto Logo"}),x=a("h2",{id:"age-verification-title",style:{...g.title,fontSize:o?"16px":"18px",color:d,fontFamily:c}});x.textContent="Age Verification Required";let f=a("div",{style:g.topLeft},u,x),b=a("button",{style:{background:"none",border:"none",color:d,cursor:"pointer",padding:o?"2px":"4px",display:"flex",alignItems:"center",justifyContent:"center"},type:"button","aria-label":"Close modal",onClick:p}),h=R("svg",{width:o?"18":"20",height:o?"18":"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},R("path",{d:"M15 5L5 15M5 5L15 15",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"}));b.appendChild(h);let y=a("div",{style:{...g.topSection,color:l,fontFamily:c}},f,b),S=a("p",{style:{...g.privacyText,fontSize:o?"14px":"16px",color:l,fontFamily:c,marginBottom:"16px"}});S.textContent="To proceed with this consent form, we need to verify your age.";let _=a("p",{style:{...g.subTitle,color:l,fontFamily:c,marginBottom:"24px",textAlign:"left"}});_.textContent="Are you 18 years of age or older?";let m=a("div",{style:{...g.middleSection,color:l,fontFamily:c}},S,_),A={...g.button,fontSize:o?"14px":"16px",padding:o?"10px 20px":"9px 45px"},L=a("button",{style:{...A,...g.acceptButton,backgroundColor:t.acceptBg,color:t.acceptText,borderRadius:t.borderRadius},type:"button","aria-label":"Confirm that I am 18 years of age or older",onClick:i});L.textContent="Yes, I am 18 or older";let v=a("button",{style:{...A,...g.cancelButton,backgroundColor:t.declineBg,color:t.declineText,borderColor:t.declineBorder,borderRadius:t.borderRadius},type:"button","aria-label":"Indicate that I am under 18 years of age",onClick:s});v.textContent="No, I am under 18";let w=a("div",{style:{...g.bottomSection,color:l,fontFamily:c}},L,v);return{container:a("div",{style:g.content},y,m,w)}}var Pe=[{value:"Father",label:"Father"},{value:"Mother",label:"Mother"},{value:"Legal Guardian",label:"Legal Guardian"},{value:"Grandparent",label:"Grandparent"}];function ot(n){var He;let{formData:e,settings:t,colors:o,isMobile:r,logoUrl:i,isSubmitting:s,onSubmit:p,onCancel:d,onFieldChange:l}=n,c=(t==null?void 0:t.headingColor)||"#101828",u=o.text,x=o.declineBorder,f=(t==null?void 0:t.backgroundColor)||"#ffffff",b=o.borderRadius,h=o.font,y=o.acceptBg,S={width:"100%",padding:"10px 12px",border:`1px solid ${x}`,borderRadius:b,fontSize:"13px",fontFamily:h,color:u,backgroundColor:f,marginBottom:"2px",boxSizing:"border-box",outline:"none"},_={color:"#DC2626",fontSize:"11px",marginTop:"4px",marginBottom:"0px",display:"none"},m={fontSize:"13px",fontWeight:500,color:u,fontFamily:h,marginBottom:"4px",display:"block"},A={fontSize:"11px",color:"#667085",marginTop:"2px",marginBottom:"0px",lineHeight:"1.4"},L=a("img",{src:i,style:g.logo,alt:"Logo"}),v=a("h2",{id:"guardian-form-title",style:{...g.title,fontSize:"16px",fontWeight:600,color:c,fontFamily:h}});v.textContent="Guardian Verification";let w=a("div",{style:g.topLeft},L,v),I=a("div",{style:{...g.topSection,color:u,fontFamily:h}},w),B=a("p",{style:{...g.privacyText,fontSize:"13px",lineHeight:"1.5",color:u,fontFamily:h,marginBottom:"12px"}});B.textContent="Since you are under the age of consent, a legal guardian must verify their identity via DigiLocker before you can proceed.";let E=R("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"#2563EB","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},R("circle",{cx:"12",cy:"12",r:"10"}),R("line",{x1:"12",y1:"16",x2:"12",y2:"12"}),R("line",{x1:"12",y1:"8",x2:"12.01",y2:"8"}));E.style.cssText="flex-shrink:0;margin-top:1px";let D=a("span");D.textContent="The guardian's name will be matched against their DigiLocker identity document (e.g. Aadhaar). Please enter the name exactly as it appears on the document.";let k=a("div",{style:{display:"flex",alignItems:"flex-start",gap:"8px",padding:"10px 12px",backgroundColor:"#EFF6FF",border:"1px solid #BFDBFE",borderRadius:b,marginBottom:"16px",fontSize:"12px",lineHeight:"1.5",color:"#1E40AF"}},E,D),H=a("label",{for:"guardianName",style:m});H.innerHTML=`Guardian's Full Name <span style="color:#DC2626">*</span>`;let M=a("input",{id:"guardianName",type:"text",style:S,value:e.guardianName,placeholder:"e.g. Rajesh Kumar",autoComplete:"name","aria-describedby":"guardianName-hint",onInput:F=>l("guardianName",F.target.value)}),z=a("p",{id:"guardianName-hint",style:A});z.textContent="Enter the full name as per government ID (Aadhaar, PAN, etc.)";let G=a("div",{style:_,role:"alert"}),V=a("div",null,H,M,z,G),N=a("label",{for:"guardianContact",style:m});N.innerHTML=`Guardian's Phone Number <span style="color:#DC2626">*</span>`;let j=a("input",{id:"guardianContact",type:"tel",inputMode:"tel",style:S,value:e.guardianContact,placeholder:"e.g. 9876543210",autoComplete:"tel","aria-describedby":"guardianContact-hint",onInput:F=>l("guardianContact",F.target.value)}),O=a("p",{id:"guardianContact-hint",style:A});O.textContent="Mobile number linked to guardian's Aadhaar";let C=a("div",{style:_,role:"alert"}),T=a("div",null,N,j,O,C),P=a("label",{id:"guardianRelationship-label",style:m});P.innerHTML='Relationship <span style="color:#DC2626">*</span>';let $=(He=Pe.find(F=>F.value===e.guardianRelationship))==null?void 0:He.label,U=R("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"#667085","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},R("polyline",{points:"6 9 12 15 18 9"}));U.style.cssText="flex-shrink:0;margin-left:8px;transition:transform 0.2s";let q=a("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}});q.textContent=$||"Select relationship";let K=a("div",{role:"combobox","aria-expanded":"false","aria-haspopup":"listbox","aria-labelledby":"guardianRelationship-label",tabIndex:"0",style:{...S,color:$?u:"#9CA3AF",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"space-between",userSelect:"none",transition:"border-color 0.15s, box-shadow 0.15s"}},q,U),Q=a("div",{id:"guardianRelationship-listbox",role:"listbox","aria-labelledby":"guardianRelationship-label",style:{position:"absolute",top:"calc(100% + 4px)",left:0,right:0,backgroundColor:f,border:`1px solid ${x}`,borderRadius:b,boxShadow:"0 4px 12px rgba(0,0,0,0.1), 0 1px 3px rgba(0,0,0,0.06)",zIndex:50,overflow:"hidden",padding:"4px 0",maxHeight:"220px",overflowY:"auto",display:"none"}});for(let F=0;F<Pe.length;F++){let te=Pe[F],oe=e.guardianRelationship===te.value,ge=a("div",{id:`guardianRelationship-option-${F}`,role:"option","aria-selected":String(oe),style:{padding:"9px 12px",fontSize:"13px",fontFamily:h,color:oe?y:u,backgroundColor:"transparent",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"space-between",transition:"background-color 0.1s"},onClick:()=>{l("guardianRelationship",te.value),q.textContent=te.label,K.style.color=u,ue()},onMouseenter:ne=>{ne.target.style.backgroundColor="#F3F4F6"},onMouseleave:ne=>{ne.target.style.backgroundColor="transparent"}}),Ve=a("span");if(Ve.textContent=te.label,ge.appendChild(Ve),oe){let ne=R("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:y,"stroke-width":"2.5","stroke-linecap":"round","stroke-linejoin":"round"},R("polyline",{points:"20 6 9 17 4 12"}));ne.style.flexShrink="0",ge.appendChild(ne)}Q.appendChild(ge)}let pe=!1,J=a("div",{style:{position:"relative"}}),Me=F=>{J.contains(F.target)||ue()};function Ae(){pe=!0,Q.style.display="block",K.setAttribute("aria-expanded","true"),U.style.transform="rotate(180deg)",K.style.borderColor=y,K.style.boxShadow=`0 0 0 1px ${y}`;let F=J.getBoundingClientRect(),te=window.innerHeight-F.bottom,oe=220;te<oe&&F.top>oe?(Q.style.top="auto",Q.style.bottom="calc(100% + 4px)",Q.style.boxShadow="0 -4px 12px rgba(0,0,0,0.1), 0 -1px 3px rgba(0,0,0,0.06)"):(Q.style.top="calc(100% + 4px)",Q.style.bottom="auto",Q.style.boxShadow="0 4px 12px rgba(0,0,0,0.1), 0 1px 3px rgba(0,0,0,0.06)"),requestAnimationFrame(()=>{Q.scrollIntoView({behavior:"smooth",block:"nearest"})}),setTimeout(()=>document.addEventListener("mousedown",Me),0)}function ue(){pe=!1,Q.style.display="none",K.setAttribute("aria-expanded","false"),U.style.transform="rotate(0deg)",K.style.borderColor=x,K.style.boxShadow="none",document.removeEventListener("mousedown",Me)}K.addEventListener("click",()=>{pe?ue():Ae()}),K.addEventListener("keydown",F=>{F.key==="Enter"||F.key===" "||F.key==="ArrowDown"?(F.preventDefault(),pe||Ae()):(F.key==="Escape"||F.key==="Tab")&&ue()});let Le=a("div",{style:_,role:"alert"});J.appendChild(P),J.appendChild(K),J.appendChild(Q),J.appendChild(Le);let De=a("div",{role:"alert",style:{color:"#DC2626",fontSize:"13px",marginTop:"16px",padding:"12px",borderRadius:"6px",border:"1px solid #FCA5A5",backgroundColor:"#FEF2F2",textAlign:"center",display:"none"}}),gt=a("div",{style:{display:"flex",flexDirection:"column",gap:"14px"}},V,T,J),ht=a("div",{style:{...g.middleSection,overflow:"visible",color:u,fontFamily:h}},B,k,gt,De),Be={...g.button,fontSize:r?"14px":"16px",padding:r?"10px 20px":"9px 45px"},Ce=a("button",{style:{...Be,...g.acceptButton,backgroundColor:o.acceptBg,color:o.acceptText,borderRadius:o.borderRadius},type:"button",disabled:s,"aria-label":s?"Verifying guardian identity":"Proceed to guardian verification",onClick:p});Ce.textContent=s?"Verifying...":"Verify via DigiLocker";let Fe=a("button",{style:{...Be,...g.cancelButton,backgroundColor:o.declineBg,color:o.declineText,borderColor:o.declineBorder,borderRadius:o.borderRadius},type:"button","aria-label":"Cancel",onClick:d});Fe.textContent="Cancel";let ft=a("div",{style:{...g.bottomSection,paddingTop:"12px",color:u,fontFamily:h}},Ce,Fe);return{container:a("div",{style:{...g.content,overflow:"visible"}},I,ht,ft),nameInput:M,contactInput:j,relationshipDisplay:K,nameError:G,contactError:C,relationshipError:Le,submitBtn:Ce,generalError:De}}function nt(n){let e={};return n.guardianName.trim()||(e.guardianName="Guardian name is required"),n.guardianContact.trim()||(e.guardianContact="Guardian contact is required"),n.guardianRelationship.trim()||(e.guardianRelationship="Relationship to guardian is required"),e}function it(n,e){switch(n){case"GUARDIAN_UNDER_18":return"The guardian must be 18 years or older. Please provide details of a different guardian.";case"TOKEN_FAILED":return"DigiLocker verification could not be completed. Please try again.";case"DIGILOCKER_AUTH_FAILED":return"DigiLocker authorization was cancelled or failed. Please try again.";case"NO_AUTH_CODE":return"DigiLocker did not return an authorization code. Please try again.";case"SESSION_EXPIRED":return"Verification session has expired. Please try again.";default:return e||"Verification failed. Please try again."}}function rt(n){let{settings:e,colors:t,isMobile:o,logoUrl:r,isInitiating:i,isPolling:s,isComplete:p,isAutoTransitioning:d,error:l,errorCode:c,canRetry:u,onContinue:x,onBack:f}=n,b=(e==null?void 0:e.headingColor)||"#101828",h=t.text,y=t.font,S=t.acceptBg,_=a("img",{src:r,style:g.logo,alt:"Logo"}),m=a("h2",{id:"verification-title",style:{...g.title,fontSize:"16px",fontWeight:600,color:b,fontFamily:y}});m.textContent="Guardian Verification";let A=a("div",{style:g.topLeft},_,m),L=a("div",{style:{...g.topSection,color:h,fontFamily:y}},A),v=a("div",{style:{...g.middleSection,color:h,fontFamily:y,textAlign:"center"}});if(p&&!l){let k=a("div",{style:{width:"64px",height:"64px",borderRadius:"50%",backgroundColor:"#D1FAE5",display:"flex",alignItems:"center",justifyContent:"center"}}),H=R("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",stroke:"#059669","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},R("polyline",{points:"20 6 9 17 4 12"}));k.appendChild(H);let M=a("p",{style:{color:b,fontFamily:y,fontSize:"16px",fontWeight:600,lineHeight:"1.5",marginTop:"12px",marginBottom:"24px"}});M.textContent="Verification Completed";let z=a("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",flex:"1"}},k,M);v.appendChild(z)}else if((i||s)&&!l){let k=a("div",{style:{width:"48px",height:"48px",border:"4px solid #e5e7eb",borderTopColor:S,borderRadius:"50%",animation:"spin 1s linear infinite",margin:"24px auto"}}),H=a("div",{style:{color:"#059669",fontSize:"14px",marginTop:"16px",padding:"12px",borderRadius:"6px",border:"1px solid #A7F3D0",backgroundColor:"#D1FAE5",textAlign:"center"}});H.textContent=i?"Opening DigiLocker in a new tab...":"Please complete the verification in the DigiLocker tab. This page will update automatically when verification is complete.",v.appendChild(k),v.appendChild(H)}if(l){let k=a("div",{style:{width:"64px",height:"64px",borderRadius:"50%",backgroundColor:"#fee2e2",display:"flex",alignItems:"center",justifyContent:"center",margin:"24px auto"}}),H=R("svg",{width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",stroke:"#dc2626","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},R("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),R("line",{x1:"6",y1:"6",x2:"18",y2:"18"}));k.appendChild(H);let M=a("p",{style:{...g.privacyText,color:h,fontFamily:y,fontSize:"14px",lineHeight:"1.5",marginBottom:"12px"}});M.textContent="Verification failed";let z=a("div",{style:{color:"#DC2626",fontSize:"14px",marginTop:"16px",padding:"12px",borderRadius:"6px",border:"1px solid #FCA5A5",backgroundColor:"#FEF2F2",textAlign:"center"}});z.textContent=l,v.appendChild(k),v.appendChild(M),v.appendChild(z)}let w={...g.button,fontSize:o?"14px":"16px",padding:o?"10px 20px":"9px 45px"},I=a("div",{style:{...g.bottomSection,paddingTop:"12px",display:"flex",gap:"12px",justifyContent:"center",color:h,fontFamily:y}}),B={backgroundColor:t.acceptBg,color:t.acceptText,borderRadius:t.borderRadius},E={backgroundColor:t.declineBg,color:t.declineText,borderColor:t.declineBorder,borderRadius:t.borderRadius};if(!d)if(p&&!l){let k=a("button",{style:{...w,...B},type:"button","aria-label":"Continue to consent form",onClick:x});k.textContent="Continue",I.appendChild(k)}else if(l&&u){let k=a("button",{style:{...w,...g.acceptButton,...B},type:"button","aria-label":c==="GUARDIAN_UNDER_18"?"Change guardian details":"Try verification again",onClick:()=>f(c==="GUARDIAN_UNDER_18")});k.textContent=c==="GUARDIAN_UNDER_18"?"Change Guardian":"Try Again",I.appendChild(k)}else if(l){let k=a("button",{style:{...w,...g.cancelButton,...E},type:"button","aria-label":"Go back",onClick:()=>f(!1)});k.textContent="Go Back",I.appendChild(k)}else{let k=a("button",{style:{...w,...g.cancelButton,...E},type:"button","aria-label":"Cancel verification",onClick:()=>f(!1)});k.textContent="Cancel",I.appendChild(k)}return{container:a("div",{style:g.content},L,v,I)}}function at(n,e){var r,i,s,p,d,l,c,u;let t=(e==null?void 0:e.primary_color)||"#4f87ff",o=(e==null?void 0:e.secondary_color)||"#4f87ff";return{acceptBg:((i=(r=n==null?void 0:n.button)==null?void 0:r.accept)==null?void 0:i.backgroundColor)||t,acceptText:((p=(s=n==null?void 0:n.button)==null?void 0:s.accept)==null?void 0:p.textColor)||"#ffffff",declineBg:((l=(d=n==null?void 0:n.button)==null?void 0:d.decline)==null?void 0:l.backgroundColor)||"#ffffff",declineText:((u=(c=n==null?void 0:n.button)==null?void 0:c.decline)==null?void 0:u.textColor)||"#000000",declineBorder:(n==null?void 0:n.borderColor)||"#d0d5dd",link:(n==null?void 0:n.link)||o,heading:(n==null?void 0:n.headingColor)||"#323B4B",text:(n==null?void 0:n.textColor)||"#344054",font:(n==null?void 0:n.font)||"inherit",borderRadius:(n==null?void 0:n.borderRadius)||"8px",primaryColor:t,secondaryColor:o}}var xe=class{constructor(e){this.hostEl=null;this.shadowRoot=null;this.previousBodyOverflow=null;this.previousHtmlOverflow=null;this.overlayEl=null;this.modalEl=null;this.purposeRefs=null;this.alreadyConsentedPurposeRefs=null;this.langSelectorRefs=null;this.keyboardCleanup=null;this.abortController=null;this.unsubscribe=null;this.ttsManager=null;this.guardianFormRefs=null;this.statusPollTimeout=null;this.popupCheckInterval=null;this.verificationPopup=null;this.verificationSessionToken=null;this.visibilityChangeHandler=null;this.acceptBtn=null;this.declineBtn=null;this.middleSection=null;this.errorEl=null;this.noticeTitleEl=null;this.noticeTextEl=null;this.purposeHeadingEl=null;this.additionalTextEl=null;this.privacyPolicyLinkEl=null;this.privacyCenterLinkEl=null;this.ttsButton=null;this.options=e,this.store=new ie({isLoading:!0,isSubmitting:!1,isSubmittingAccept:!1,isSubmittingDecline:!1,content:null,selectedPurposes:{},selectedDataElements:{},initialDataElementSelections:{},collapsedPurposes:{},hasAlreadyConsented:!1,isFullyConsentedReviewMode:!1,selectedLanguage:e.language||"en",errorMessage:null,fetchError:null,needsConsentPurposes:[],alreadyConsentedPurposes:[],isMinorFlow:!1,selfDeclaredAdult:!1,showAgeVerification:!1,showGuardianForm:!1,showVerificationScreen:!1,verificationReference:null,isVerificationComplete:!1,isInitiatingVerification:!1,isPollingStatus:!1,verificationError:null,verificationErrorCode:null,canRetryVerification:!1,guardianFormData:{guardianName:"",guardianContact:"",guardianRelationship:""}}),this.mediaQuery=fe("(max-width: 768px)")}async init(){this.unsubscribe=this.store.subscribe((e,t)=>{this.handleStateChange(e,t)}),this.mediaQuery.subscribe(()=>this.rebuildUI()),this.renderOverlayWithLoading(),await this.fetchNotice()}destroy(){var e,t,o,r;(e=this.abortController)==null||e.abort(),(t=this.keyboardCleanup)==null||t.call(this),(o=this.unsubscribe)==null||o.call(this),this.mediaQuery.destroy(),(r=this.ttsManager)==null||r.destroy(),this.stopPolling(),this.store.destroy(),this.hostEl&&this.hostEl.parentNode&&this.hostEl.parentNode.removeChild(this.hostEl),this.previousBodyOverflow!==null&&(document.body.style.overflow=this.previousBodyOverflow,this.previousBodyOverflow=null),this.previousHtmlOverflow!==null&&(document.documentElement.style.overflow=this.previousHtmlOverflow,this.previousHtmlOverflow=null),this.hostEl=null,this.shadowRoot=null,this.overlayEl=null,this.modalEl=null,this.purposeRefs=null,this.langSelectorRefs=null}async fetchNotice(){var e,t,o;this.abortController=new AbortController,this.store.setState({isLoading:!0,fetchError:null});try{let r=await qe({noticeId:this.options.noticeId,accessToken:this.options.accessToken,refreshToken:this.options.refreshToken,baseUrl:this.options.baseUrl,language:this.options.language,specific_uuid:this.options.applicationId,validate_against:this.options.validateAgainst||"all",include_fully_consented_data:this.options.includeFullyConsentedData,signal:this.abortController.signal}),i=r.detail.active_config,s=r.detail.purpose_selections,p={},d={},l={},c={},u=[],x=[],f=!1;if(s&&r.detail.reconsent_required)for(let m of i.purposes){let A=s[m.uuid];if(p[m.uuid]=!0,A&&A.selected&&!A.needs_reconsent){x.push(m),d[m.uuid]=!0;for(let L of m.data_elements){let v=`${m.uuid}-${L.uuid}`,w=(e=A.data_elements)==null?void 0:e[L.uuid],I=(w==null?void 0:w.selected)||!1;l[v]=I,c[v]=I}}else{u.push(m),d[m.uuid]=!1;for(let L of m.data_elements)l[`${m.uuid}-${L.uuid}`]=!1}}else{u=i.purposes;for(let m of i.purposes){p[m.uuid]=!0,d[m.uuid]=!1;for(let A of m.data_elements)l[`${m.uuid}-${A.uuid}`]=!1}}this.options.includeFullyConsentedData&&u.length===0&&x.length>0&&(f=!0);let b=this.options.language||"en";i.default_language&&(b=i.default_language);let h=!1,y=!1,S={},_=null;if(r.detail.is_minor){h=!0;let m=de();m!=null&&m.noticeId&&m.noticeId!==this.options.noticeId?ee():(m==null?void 0:m.flowState)==="digilocker-pending"&&m.sessionToken?(S={showVerificationScreen:!0,isPollingStatus:!0},_=m.sessionToken):(m==null?void 0:m.verificationResult)==="verified"&&m.verificationReference?(S={showVerificationScreen:!0,isVerificationComplete:!0,verificationReference:m.verificationReference},ee()):(m==null?void 0:m.verificationResult)==="failed"||(m==null?void 0:m.verificationResult)==="expired"?(S={showVerificationScreen:!0,verificationError:m.verificationResult==="expired"?"Verification session has expired. Please try again.":"Verification failed. Please try again.",canRetryVerification:!0},ee()):y=!0}this.store.setState({content:r,isLoading:!1,selectedLanguage:b,collapsedPurposes:p,selectedPurposes:d,selectedDataElements:l,initialDataElementSelections:c,needsConsentPurposes:u,alreadyConsentedPurposes:x,isFullyConsentedReviewMode:f,isMinorFlow:h,showAgeVerification:y,...S}),_&&this.startStatusPolling(_)}catch(r){if(r.name==="AbortError")return;let i=r;i.status===409?(this.store.setState({hasAlreadyConsented:!0,isLoading:!1}),this.options.onAccept()):(this.store.setState({fetchError:i,isLoading:!1}),(o=(t=this.options).onError)==null||o.call(t,i))}}handleStateChange(e,t){if(t.isLoading&&!e.isLoading&&e.content){this.rebuildUI();return}if(e.hasAlreadyConsented&&!t.hasAlreadyConsented){this.destroy();return}if(e.fetchError&&!t.fetchError){this.renderError(e.fetchError.message);return}if(e.showAgeVerification!==t.showAgeVerification||e.showGuardianForm!==t.showGuardianForm||e.showVerificationScreen!==t.showVerificationScreen){this.rebuildUI();return}if(e.showVerificationScreen&&(e.isVerificationComplete!==t.isVerificationComplete||e.verificationError!==t.verificationError||e.isPollingStatus!==t.isPollingStatus||e.isInitiatingVerification!==t.isInitiatingVerification)){this.rebuildUI();return}(e.selectedPurposes!==t.selectedPurposes||e.selectedDataElements!==t.selectedDataElements)&&this.updateCheckboxes(e),e.collapsedPurposes!==t.collapsedPurposes&&this.updateCollapseState(e),e.errorMessage!==t.errorMessage&&this.updateErrorMessage(e),(e.isSubmittingAccept!==t.isSubmittingAccept||e.isSubmittingDecline!==t.isSubmittingDecline)&&this.updateButtonStates(e)}renderOverlayWithLoading(){this.hostEl=document.createElement("div"),this.hostEl.setAttribute("data-redacto-consent",""),this.hostEl.style.position="fixed",this.hostEl.style.top="0",this.hostEl.style.left="0",this.hostEl.style.width="0",this.hostEl.style.height="0",this.hostEl.style.zIndex="2147483646",document.body.appendChild(this.hostEl),this.shadowRoot=this.hostEl.attachShadow({mode:"open"}),this.previousBodyOverflow=document.body.style.overflow,this.previousHtmlOverflow=document.documentElement.style.overflow,document.body.style.overflow="hidden",document.documentElement.style.overflow="hidden",ae(this.shadowRoot),this.ttsManager=new ye(()=>this.updateTTSButton(),this.shadowRoot),this.options.blockUI!==!1&&(this.overlayEl=a("div",{style:g.overlay,role:"presentation"}),this.shadowRoot.appendChild(this.overlayEl));let t=this.options.settings,o={...g.modal};t!=null&&t.backgroundColor&&(o.backgroundColor=t.backgroundColor),t!=null&&t.borderRadius&&(o.borderRadius=t.borderRadius),t!=null&&t.borderColor&&(o.border=`1px solid ${t.borderColor}`),t!=null&&t.font&&(o.fontFamily=t.font),this.mediaQuery.matches&&(o.width="90%",o.maxWidth="90%"),this.modalEl=a("div",{style:o,role:"dialog","aria-modal":"true","aria-label":"Privacy consent"});let r=a("div",{style:g.loadingContainer},a("div",{style:g.loadingSpinner}),a("p",{style:{...g.privacyText,color:(t==null?void 0:t.textColor)||"#344054"}},"Loading...")),i=a("div",{style:g.content},r);this.modalEl.appendChild(i),this.shadowRoot.appendChild(this.modalEl)}rebuildUI(){var H,M,z,G,V,N,j,O;let e=this.store.getState();if(!e.content||!this.modalEl)return;let t=e.content.detail.active_config,o=this.options.settings,r=this.mediaQuery.matches,i=at(o,t);if(e.showAgeVerification){X(this.modalEl);let C=tt({settings:o,colors:i,isMobile:r,logoUrl:t.logo_url,onYes:()=>this.handleAgeVerificationYes(),onNo:()=>this.handleAgeVerificationNo(),onClose:()=>this.handleDecline()});this.modalEl.appendChild(C.container),(H=this.keyboardCleanup)==null||H.call(this),this.keyboardCleanup=le(this.modalEl,()=>this.handleDecline());return}if(e.showGuardianForm){X(this.modalEl),this.guardianFormRefs=ot({formData:e.guardianFormData,settings:o,colors:i,isMobile:r,logoUrl:t.logo_url,isSubmitting:e.isInitiatingVerification,onSubmit:()=>this.handleGuardianFormSubmit(),onCancel:()=>this.handleDecline(),onFieldChange:(C,T)=>{let P=this.store.getState();this.store.setState({guardianFormData:{...P.guardianFormData,[C]:T}})}}),this.modalEl.appendChild(this.guardianFormRefs.container),(M=this.keyboardCleanup)==null||M.call(this),this.keyboardCleanup=le(this.modalEl,()=>this.handleDecline());return}if(e.showVerificationScreen){X(this.modalEl);let C=rt({settings:o,colors:i,isMobile:r,logoUrl:t.logo_url,isInitiating:e.isInitiatingVerification,isPolling:e.isPollingStatus,isComplete:e.isVerificationComplete,error:e.verificationError,errorCode:e.verificationErrorCode,canRetry:e.canRetryVerification,onContinue:()=>this.handleVerificationContinue(),onBack:T=>{T?this.handleChangeGuardian():e.verificationError&&e.canRetryVerification?this.handleVerificationRetry():this.handleDecline()}});this.modalEl.appendChild(C.container),(z=this.keyboardCleanup)==null||z.call(this),this.keyboardCleanup=le(this.modalEl,()=>{});return}X(this.modalEl);let s=(o==null?void 0:o.headingColor)||"#101828",p=i.text,d=i.link,l=i.font,c=t.logo_url?a("img",{src:t.logo_url,style:{...g.logo,maxWidth:r?"96px":"140px",maxHeight:r?"28px":"32px"},alt:"Logo"}):null;this.noticeTitleEl=a("span",{id:"privacy-notice-title",style:{...g.title,color:s,fontFamily:l,fontSize:r?"16px":"18px"}}),this.noticeTitleEl.textContent=this.getTranslatedText("notice_banner_heading",t.notice_banner_heading),(G=this.langSelectorRefs)!=null&&G.dropdown&&this.shadowRoot&&this.langSelectorRefs.dropdown.parentNode===this.shadowRoot&&this.shadowRoot.removeChild(this.langSelectorRefs.dropdown);let u=Object.keys(t.supported_languages_and_translations||{}),x=[t.default_language||"English",...u.filter(C=>C!==t.default_language)];this.langSelectorRefs=Xe({languages:x,selectedLanguage:e.selectedLanguage,settings:o,onSelect:C=>this.handleLanguageSelect(C),dropdownContainer:this.shadowRoot});let f=((N=(V=o==null?void 0:o.button)==null?void 0:V.language)==null?void 0:N.textColor)||"currentColor",b=R("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:f,"stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},R("polygon",{points:"11 5 6 9 2 9 2 15 6 15 11 19 11 5"}),R("path",{d:"M19.07 4.93a10 10 0 0 1 0 14.14M15.54 8.46a5 5 0 0 1 0 7.07"}));this.ttsButton=a("button",{style:{...g.topRight,display:"none",padding:"3px 9px",alignItems:"center",justifyContent:"center"},type:"button","aria-label":"Start audio playback",title:"Start Talkback",onClick:()=>{var C;return(C=this.ttsManager)==null?void 0:C.toggle()}}),this.ttsButton.appendChild(b),(j=this.ttsManager)==null||j.fetchAudioUrls({accessToken:this.options.accessToken,baseUrl:this.options.baseUrl,noticeUuid:t.notice_uuid,language:this.getLanguageCode(e.selectedLanguage),content:t});let h=a("div",{style:{display:"flex",alignItems:"center",gap:"8px",flexShrink:0}},this.ttsButton,this.langSelectorRefs.container),y;if(r){let C=a("div",{style:{display:"flex",alignItems:"center",gap:"10px",width:"100%"}},...c?[c]:[],a("div",{style:{marginLeft:"auto",display:"flex",alignItems:"center"}},h));y=a("div",{style:{...g.topSection,flexDirection:"column",alignItems:"stretch",flexWrap:"nowrap"}},C,this.noticeTitleEl)}else{let C=a("div",{style:g.topLeft},c,this.noticeTitleEl);y=a("div",{style:g.topSection},C,h)}this.middleSection=a("div",{style:g.middleSection});let S={...g.privacyText,color:p,fontFamily:l,fontSize:r?"14px":"16px"},_=a("span",{id:"privacy-notice-text"});_.textContent=this.getTranslatedText("notice_text",t.notice_text);let m=this.getTranslatedText("privacy_policy_prefix_text",t.privacy_policy_prefix_text),A=this.getTranslatedText("privacy_policy_anchor_text",t.privacy_policy_anchor_text);this.privacyPolicyLinkEl=a("a",{id:"privacy-policy-link",href:t.privacy_policy_url,target:"_blank",rel:"noopener noreferrer",style:{...g.link,color:d,fontFamily:l},"aria-label":"Privacy Policy (opens in new tab)"}),this.privacyPolicyLinkEl.textContent=A;let L=a("span",{id:"privacy-policy-text"},`${m} `,this.privacyPolicyLinkEl),v=a("p",{style:S},_,a("br"),L);if(this.purposeHeadingEl=a("h2",{id:"purpose-section-heading",style:{...g.subTitle,color:s,fontFamily:l}}),this.purposeHeadingEl.textContent=this.getTranslatedText("purpose_section_heading",t.purpose_section_heading),this.middleSection.appendChild(v),this.middleSection.appendChild(this.purposeHeadingEl),e.needsConsentPurposes.length>0&&(this.purposeRefs=we(e.needsConsentPurposes,{selectedPurposes:e.selectedPurposes,collapsedPurposes:e.collapsedPurposes,selectedDataElements:e.selectedDataElements,settings:o,isMobile:r,isAlreadyConsented:!1,getTranslatedText:(C,T,P)=>this.getTranslatedText(C,T,P),onPurposeToggle:C=>this.handlePurposeCheckboxChange(C),onPurposeCollapse:C=>this.togglePurposeCollapse(C),onDataElementToggle:(C,T)=>this.handleDataElementCheckboxChange(C,T)}),this.middleSection.appendChild(this.purposeRefs.container)),e.alreadyConsentedPurposes.length>0&&(this.alreadyConsentedPurposeRefs=we(e.alreadyConsentedPurposes,{selectedPurposes:e.selectedPurposes,collapsedPurposes:e.collapsedPurposes,selectedDataElements:e.selectedDataElements,initialDataElementSelections:e.initialDataElementSelections,settings:o,isMobile:r,isAlreadyConsented:!0,getTranslatedText:(C,T,P)=>this.getTranslatedText(C,T,P),onPurposeToggle:()=>{},onPurposeCollapse:C=>this.togglePurposeCollapse(C),onDataElementToggle:()=>{}}),this.middleSection.appendChild(this.alreadyConsentedPurposeRefs.container)),t.privacy_center_url||t.dpo_info){let C=a("div",{style:{...S,fontSize:r?"13px":"14px",lineHeight:"1.4",borderTop:"1px solid rgba(152, 162, 179, 0.3)",paddingTop:"12px",marginTop:"12px"}}),T=a("p",{style:{margin:"0",opacity:"0.6"}});if(t.privacy_center_url){if(t.additional_text){let $=a("span",{id:"additional-text"});$.textContent=this.getTranslatedText("additional_text",t.additional_text),T.appendChild($),T.appendChild(document.createTextNode(" "))}let P=this.getTranslatedText("privacy_center_anchor_text",t.privacy_center_anchor_text||"Privacy Center");this.privacyCenterLinkEl=a("a",{id:"privacy-center-link",href:t.privacy_center_url,target:"_blank",rel:"noopener noreferrer",style:{...g.link,color:d,fontFamily:l}}),this.privacyCenterLinkEl.textContent=P,T.appendChild(this.privacyCenterLinkEl),T.appendChild(document.createTextNode("."))}if(t.dpo_info){let P=t.dpo_info;if(t.privacy_center_url&&T.appendChild(a("br")),P.grievance_text){let $=a("span",{id:"dpo-grievance-text"});if($.textContent=this.getTranslatedDpoText("grievance_text",P.grievance_text),T.appendChild($),T.appendChild(document.createTextNode(" ")),P.grievance_url){let U=a("a",{id:"dpo-grievance-link",href:P.grievance_url,target:"_blank",rel:"noopener noreferrer",style:{...g.link,color:d,fontFamily:l}});U.textContent=this.getTranslatedDpoText("grievance_anchor_text",P.grievance_anchor_text),T.appendChild(U)}if(P.grievance_email){T.appendChild(document.createTextNode(" "));let U=a("span",{id:"dpo-grievance-email-connector"});U.textContent=this.getTranslatedDpoText("grievance_email_connector_text",P.grievance_email_connector_text||"or email to"),T.appendChild(U),T.appendChild(document.createTextNode(" "));let q=a("a",{id:"dpo-grievance-email",href:`mailto:${P.grievance_email}`,style:{...g.link,color:d,fontFamily:l}});q.textContent=P.grievance_email,T.appendChild(q)}}if(P.dp_board_text){T.appendChild(a("br"));let $=a("span",{id:"dpo-dp-board-text"});if($.textContent=this.getTranslatedDpoText("dp_board_text",P.dp_board_text),T.appendChild($),T.appendChild(document.createTextNode(" ")),P.dp_board_url){let U=a("a",{id:"dpo-dp-board-link",href:P.dp_board_url,target:"_blank",rel:"noopener noreferrer",style:{...g.link,color:d,fontFamily:l}});U.textContent=this.getTranslatedDpoText("dp_board_anchor_text",P.dp_board_anchor_text),T.appendChild(U)}}if(P.dpo_text){T.appendChild(a("br"));let $=a("span",{id:"dpo-dpo-text"});if($.textContent=this.getTranslatedDpoText("dpo_text",P.dpo_text),T.appendChild($),T.appendChild(document.createTextNode(" ")),P.dpo_url){let U=a("a",{id:"dpo-dpo-link",href:P.dpo_url,target:"_blank",rel:"noopener noreferrer",style:{...g.link,color:d,fontFamily:l}});U.textContent=this.getTranslatedDpoText("dpo_anchor_text",P.dpo_anchor_text),T.appendChild(U)}}}C.appendChild(T),this.middleSection.appendChild(C)}this.errorEl=a("div",{role:"alert",style:{backgroundColor:"#FEE2E2",color:"#DC2626",padding:"12px",borderRadius:"6px",fontSize:"14px",border:"1px solid #FCA5A5",display:"none"}});let w=e.isFullyConsentedReviewMode?this.options.reviewModeButtonText||"Continue":this.getTranslatedText("confirm_button_text",t.confirm_button_text),I={...g.button,...g.acceptButton,backgroundColor:i.acceptBg,color:i.acceptText,borderRadius:i.borderRadius,fontSize:r?"14px":"16px",padding:r?"10px 20px":"9px 45px"};this.acceptBtn=a("button",{id:"confirm-button-text",style:I,type:"button",onClick:()=>this.handleAccept()}),this.acceptBtn.textContent=w;let B=this.getTranslatedText("decline_button_text",t.decline_button_text),E={...g.button,...g.cancelButton,backgroundColor:i.declineBg,color:i.declineText,borderColor:i.declineBorder,borderRadius:i.borderRadius,fontSize:r?"14px":"16px",padding:r?"10px 20px":"9px 45px"};this.declineBtn=a("button",{id:"decline-button-text",style:E,type:"button",onClick:()=>this.handleDecline()}),e.isFullyConsentedReviewMode||(this.declineBtn.textContent=B);let D=a("div",{style:g.bottomSection});e.isFullyConsentedReviewMode?D.appendChild(this.acceptBtn):(D.appendChild(this.acceptBtn),D.appendChild(this.declineBtn));let k=a("div",{style:g.content},y,this.errorEl,this.middleSection,D);this.modalEl.appendChild(k),this.updateAcceptButtonState(e),(O=this.keyboardCleanup)==null||O.call(this),this.keyboardCleanup=le(this.modalEl,()=>this.handleDecline())}getLanguageCode(e){var o,r;let t=(o=this.store.getState().content)==null?void 0:o.detail.active_config;return!t||e==="English"||e==="en"||e==="EN"?"English":(r=t.supported_languages_and_translations)!=null&&r[e]?e:t.default_language==="en"||t.default_language==="EN"?"English":t.default_language||"English"}getTranslatedDpoText(e,t){var l;let o=this.store.getState(),r=(l=o.content)==null?void 0:l.detail.active_config;if(!r)return t;let i=o.selectedLanguage;if(i==="English"||i==="en"||i==="EN")return t;let s=r.supported_languages_and_translations;if(!s)return t;let p=s[i];if(!(p!=null&&p.dpo_info))return t;let d=p.dpo_info[e];return typeof d=="string"&&d?d:t}renderError(e){if(!this.modalEl)return;X(this.modalEl);let t=a("div",{style:{...g.content,alignItems:"center",justifyContent:"center"}},a("div",{role:"alert",style:{backgroundColor:"#FEE2E2",color:"#DC2626",padding:"16px",borderRadius:"8px",fontSize:"14px",border:"1px solid #FCA5A5",textAlign:"center",maxWidth:"400px"}},e));this.modalEl.appendChild(t)}getTranslatedText(e,t,o){var c,u,x;let r=this.store.getState(),i=(c=r.content)==null?void 0:c.detail.active_config;if(!i)return t;let s=r.selectedLanguage;if(s==="English"||s==="en"||s==="EN")return e==="privacy_policy_anchor_text"&&i.privacy_policy_anchor_text?i.privacy_policy_anchor_text:t;let p=i.supported_languages_and_translations;if(!p)return t;let d=p[s];if(!d)return t;if(o){if(e==="purposes.name"||e==="purposes.description"){let f=(u=d.purposes)==null?void 0:u[o];return f?typeof f=="string"?e==="purposes.name"?f:t:e==="purposes.name"?f.name||t:f.description||t:t}if(e.startsWith("data_elements."))return((x=d.data_elements)==null?void 0:x[o])||t}let l=d[e];return typeof l=="string"&&l?l:t}handleLanguageSelect(e){this.store.setState({selectedLanguage:e}),this.rebuildUI()}togglePurposeCollapse(e){let t=this.store.getState();this.store.setState({collapsedPurposes:{...t.collapsedPurposes,[e]:!t.collapsedPurposes[e]}})}handlePurposeCheckboxChange(e){var p;let t=this.store.getState(),o=(p=t.content)==null?void 0:p.detail.active_config;if(!o)return;let r=o.purposes.find(d=>d.uuid===e);if(!r)return;let i=!t.selectedPurposes[e],s={...t.selectedDataElements};for(let d of r.data_elements)s[`${e}-${d.uuid}`]=i;this.store.setState({selectedPurposes:{...t.selectedPurposes,[e]:i},selectedDataElements:s})}handleDataElementCheckboxChange(e,t){var c;let o=this.store.getState(),r=(c=o.content)==null?void 0:c.detail.active_config;if(!r)return;let i=r.purposes.find(u=>u.uuid===t);if(!i)return;let s=`${t}-${e}`,p={...o.selectedDataElements,[s]:!o.selectedDataElements[s]},d=i.data_elements.filter(u=>u.required),l;d.length>0?l=d.every(u=>p[`${t}-${u.uuid}`]):l=i.data_elements.some(u=>p[`${t}-${u.uuid}`]),this.store.setState({selectedDataElements:p,selectedPurposes:{...o.selectedPurposes,[t]:l}})}async handleAccept(){var o,r,i;let e=this.store.getState();if(e.isSubmitting)return;if(e.isFullyConsentedReviewMode){this.options.onAccept(),this.destroy();return}if(e.isMinorFlow&&!e.verificationReference&&!e.selfDeclaredAdult){this.store.setState({errorMessage:"Guardian verification is required before consent can be submitted."});return}let t=(o=e.content)==null?void 0:o.detail.active_config;if(t){this.abortController=new AbortController,this.store.setState({isSubmitting:!0,isSubmittingAccept:!0,errorMessage:null});try{let s=t.purposes.map(p=>{let d=p.data_elements.filter(l=>l.enabled).map(l=>({uuid:l.uuid,name:l.name,enabled:l.enabled,required:l.required,selected:e.selectedDataElements[`${p.uuid}-${l.uuid}`]||!1}));return{uuid:p.uuid,name:p.name,description:p.description,selected:e.selectedPurposes[p.uuid]||!1,data_elements:d}});await We({accessToken:this.options.accessToken,baseUrl:this.options.baseUrl,noticeUuid:e.content.detail.uuid,purposes:s,declined:!1,meta_data:this.options.applicationId?{specific_uuid:this.options.applicationId}:void 0,guardianVerificationReference:e.verificationReference||void 0,selfDeclaredAdult:e.selfDeclaredAdult||void 0,signal:this.abortController.signal}),this.options.onAccept(),this.destroy()}catch(s){if(s.name==="AbortError")return;let p=s,d=p.status===409?"You have already provided consent.":p.status&&p.status>=500?"Server error: Please try again later.":p.message||"Failed to submit consent.";this.store.setState({errorMessage:d,isSubmitting:!1,isSubmittingAccept:!1}),(i=(r=this.options).onError)==null||i.call(r,p)}}}handleDecline(){this.store.getState().isSubmitting||(this.stopPolling(),ee(),this.options.onDecline(),this.destroy())}updateCheckboxes(e){if(this.purposeRefs)for(let[t,o]of this.purposeRefs.checkboxes)t in e.selectedPurposes?o.checked=e.selectedPurposes[t]||!1:o.checked=e.selectedDataElements[t]||!1;this.updateAcceptButtonState(e)}areAllRequiredChecked(e){var o,r;let t=(o=e.content)==null?void 0:o.detail.active_config;return(r=t==null?void 0:t.purposes)!=null&&r.length?t.purposes.every(i=>{let s=i.data_elements.filter(p=>p.required&&p.enabled);return s.length===0?!0:s.every(p=>e.selectedDataElements[`${i.uuid}-${p.uuid}`])}):!1}updateAcceptButtonState(e){if(!this.acceptBtn||e.isFullyConsentedReviewMode)return;let o=!this.areAllRequiredChecked(e)||e.isSubmittingAccept||e.isSubmittingDecline;this.acceptBtn.disabled=o,this.acceptBtn.style.opacity=o?"0.5":"1",this.acceptBtn.style.cursor=o?"not-allowed":"pointer"}updateCollapseState(e){let t=o=>{var r,i;if(o)for(let[s,p]of o.dataElementContainers){let d=(r=e.content)==null?void 0:r.detail.active_config,l=d==null?void 0:d.purposes.find(f=>f.uuid===s),c=e.collapsedPurposes[s];p.style.display=!c&&((i=l==null?void 0:l.data_elements)!=null&&i.length)?"flex":"none";let u=o.chevrons.get(s);u&&(u.style.transform=c?"rotate(0deg)":"rotate(90deg)");let x=o.collapseButtons.get(s);x&&x.setAttribute("aria-expanded",String(!c))}};t(this.purposeRefs),t(this.alreadyConsentedPurposeRefs)}updateErrorMessage(e){this.errorEl&&(e.errorMessage?(this.errorEl.textContent=e.errorMessage,this.errorEl.style.display="block"):this.errorEl.style.display="none")}handleAgeVerificationYes(){this.store.setState({isMinorFlow:!1,selfDeclaredAdult:!0,showAgeVerification:!1})}handleAgeVerificationNo(){this.store.setState({showAgeVerification:!1,showGuardianForm:!0})}async handleGuardianFormSubmit(){let e=this.store.getState(),t=nt(e.guardianFormData);if(Object.keys(t).length>0){this.guardianFormRefs&&(t.guardianName&&(this.guardianFormRefs.nameError.textContent=t.guardianName,this.guardianFormRefs.nameError.style.display="block"),t.guardianContact&&(this.guardianFormRefs.contactError.textContent=t.guardianContact,this.guardianFormRefs.contactError.style.display="block"),t.guardianRelationship&&(this.guardianFormRefs.relationshipError.textContent=t.guardianRelationship,this.guardianFormRefs.relationshipError.style.display="block"));return}this.store.setState({isInitiatingVerification:!0});let o=this.options.digilockerMode||"redirect",r=o==="popup"?new URL(this.options.digilockerCallbackUrl||"/digilocker-callback",window.location.origin).href:void 0;try{let i=await Ye({accessToken:this.options.accessToken,baseUrl:this.options.baseUrl,guardianName:e.guardianFormData.guardianName,guardianContact:e.guardianFormData.guardianContact,guardianRelationship:e.guardianFormData.guardianRelationship,frontendCallbackUrl:r});if(i.already_verified&&i.verification_reference){this.store.setState({verificationReference:i.verification_reference,showGuardianForm:!1,showVerificationScreen:!0,isInitiatingVerification:!1,isVerificationComplete:!0}),setTimeout(()=>{this.store.setState({showVerificationScreen:!1,isVerificationComplete:!1})},1e3);return}if(Re({flowState:"digilocker-pending",sessionToken:i.session_token,guardianInfoUuid:i.guardian_info_uuid,selectedPurposes:e.selectedPurposes,selectedDataElements:e.selectedDataElements,timestamp:new Date().toISOString(),originalUrl:window.location.href,noticeId:this.options.noticeId,baseUrl:this.options.baseUrl}),this.store.setState({showGuardianForm:!1,showVerificationScreen:!0,isInitiatingVerification:!0,isPollingStatus:!1}),o==="popup"&&i.digilocker_redirect_url){let s=window.open(i.digilocker_redirect_url,"digilocker_verification","width=600,height=700,scrollbars=yes,resizable=yes");if(s)this.verificationPopup=s,this.startPopupMonitoring(s);else{this.store.setState({isInitiatingVerification:!1,verificationError:"Popup blocked. Please allow popups for this site.",canRetryVerification:!0});return}}else if(i.digilocker_redirect_url){let s=window.open(i.digilocker_redirect_url,"_blank");if(!s){this.store.setState({isInitiatingVerification:!1,verificationError:"Unable to open DigiLocker. Please allow popups.",canRetryVerification:!0});return}try{s.opener=null}catch{}}this.store.setState({isInitiatingVerification:!1,isPollingStatus:!0}),this.startStatusPolling(i.session_token)}catch(i){this.store.setState({isInitiatingVerification:!1});let s=i;this.guardianFormRefs&&(this.guardianFormRefs.generalError.textContent=s.message||"Failed to initiate verification.",this.guardianFormRefs.generalError.style.display="block")}}startStatusPolling(e){this.verificationSessionToken=e;let t=0,o=0,r=!1,i=40,s=3,p=3e3,d=async()=>{var l;if(!r){if(t++,t>i){this.stopPolling(),this.store.setState({verificationError:"Verification is taking longer than expected. Please try again.",verificationErrorCode:"SESSION_EXPIRED",canRetryVerification:!0,isPollingStatus:!1});return}try{let c=await be({accessToken:this.options.accessToken,baseUrl:this.options.baseUrl,sessionToken:e});if(o=0,c.status==="verified"){this.stopPolling();let u=c.verification_reference||((l=c.guardian_details)==null?void 0:l.verification_reference);if(!u){this.store.setState({verificationError:"Verification completed but no reference received. Please try again.",canRetryVerification:!0,isPollingStatus:!1});return}this.store.setState({verificationReference:u,isVerificationComplete:!0,isPollingStatus:!1}),ee();return}if(c.status==="failed"||c.status==="expired"){this.stopPolling(),this.store.setState({verificationError:it(c.error_code,c.error),verificationErrorCode:c.error_code,canRetryVerification:c.can_retry,isPollingStatus:!1});return}r||(this.statusPollTimeout=setTimeout(d,p))}catch(c){let u=c;if(u.status===404||u.status===410){this.stopPolling(),this.store.setState({verificationError:"Verification session not found or expired.",verificationErrorCode:"SESSION_EXPIRED",canRetryVerification:!0,isPollingStatus:!1});return}if(o++,o>=s){this.stopPolling(),this.store.setState({verificationError:u.message||"Unable to check verification status.",canRetryVerification:!0,isPollingStatus:!1});return}this.statusPollTimeout=setTimeout(d,p)}}};this.visibilityChangeHandler=()=>{document.hidden?(r=!0,this.statusPollTimeout&&(clearTimeout(this.statusPollTimeout),this.statusPollTimeout=null)):(r=!1,d())},document.addEventListener("visibilitychange",this.visibilityChangeHandler),this.statusPollTimeout=setTimeout(d,p)}stopPolling(){var e;this.statusPollTimeout&&(clearTimeout(this.statusPollTimeout),this.statusPollTimeout=null),this.popupCheckInterval&&(clearInterval(this.popupCheckInterval),this.popupCheckInterval=null),this.visibilityChangeHandler&&(document.removeEventListener("visibilitychange",this.visibilityChangeHandler),this.visibilityChangeHandler=null),(e=this.verificationPopup)==null||e.close(),this.verificationPopup=null}startPopupMonitoring(e){this.popupCheckInterval=setInterval(()=>{e.closed&&this.popupCheckInterval&&(clearInterval(this.popupCheckInterval),this.popupCheckInterval=null)},500)}handleVerificationContinue(){this.store.setState({showVerificationScreen:!1,isVerificationComplete:!1})}handleVerificationRetry(){this.store.setState({showVerificationScreen:!1,showGuardianForm:!0,verificationError:null,verificationErrorCode:null,canRetryVerification:!1,isVerificationComplete:!1})}handleChangeGuardian(){this.store.setState({showVerificationScreen:!1,showGuardianForm:!0,verificationError:null,verificationErrorCode:null,canRetryVerification:!1,isVerificationComplete:!1,guardianFormData:{guardianName:"",guardianContact:"",guardianRelationship:""}})}updateTTSButton(){var t,o,r;if(!this.ttsButton||!this.ttsManager)return;if(!this.ttsManager.isAvailable){this.ttsButton.style.display="none";return}this.ttsButton.style.display="flex",X(this.ttsButton);let e=((r=(o=(t=this.options.settings)==null?void 0:t.button)==null?void 0:o.language)==null?void 0:r.textColor)||"currentColor";if(this.ttsManager.isPlaying){let i=R("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:e,"stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},R("rect",{x:"6",y:"4",width:"4",height:"16"}),R("rect",{x:"14",y:"4",width:"4",height:"16"}));this.ttsButton.appendChild(i),this.ttsButton.setAttribute("aria-label","Pause audio playback"),this.ttsButton.setAttribute("title","Pause Talkback")}else{let i=R("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:e,"stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},R("polygon",{points:"11 5 6 9 2 9 2 15 6 15 11 19 11 5"}),R("path",{d:"M19.07 4.93a10 10 0 0 1 0 14.14M15.54 8.46a5 5 0 0 1 0 7.07"}));this.ttsButton.appendChild(i),this.ttsButton.setAttribute("aria-label",this.ttsManager.isPaused?"Resume audio playback":"Start audio playback"),this.ttsButton.setAttribute("title",this.ttsManager.isPaused?"Resume Talkback":"Start Talkback")}}updateButtonStates(e){var t;if(this.acceptBtn)if(e.isSubmittingAccept)this.acceptBtn.textContent="Submitting...",this.acceptBtn.disabled=!0,this.acceptBtn.style.opacity="0.7",this.acceptBtn.style.cursor="not-allowed";else{let o=(t=e.content)==null?void 0:t.detail.active_config;this.acceptBtn.textContent=e.isFullyConsentedReviewMode?this.options.reviewModeButtonText||"Continue":this.getTranslatedText("confirm_button_text",(o==null?void 0:o.confirm_button_text)||"Accept"),this.acceptBtn.disabled=!1,this.acceptBtn.style.opacity="1",this.acceptBtn.style.cursor="pointer"}this.declineBtn&&(this.declineBtn.disabled=e.isSubmitting,this.declineBtn.style.opacity=e.isSubmitting?"0.7":"1",this.declineBtn.style.cursor=e.isSubmitting?"not-allowed":"pointer")}};var W={optionItem:{display:"flex",justifyContent:"space-between",alignItems:"center",margin:0,padding:0,boxSizing:"border-box"},optionLeft:{display:"flex",gap:"12px",alignItems:"center",cursor:"pointer",margin:0,padding:0,boxSizing:"border-box"},optionTextContainer:{display:"flex",flexDirection:"column",margin:0,padding:0,boxSizing:"border-box"},optionTitle:{fontWeight:500,fontSize:"16px",lineHeight:"150%",letterSpacing:"0.2px",color:"#101828",margin:0,padding:0,textAlign:"left"},optionDescription:{fontWeight:400,fontSize:"12px",lineHeight:"150%",letterSpacing:"0.2px",color:"#475467",verticalAlign:"middle",margin:0,padding:0,textAlign:"left"},checkboxLarge:{height:"20px",width:"20px",padding:"4px",borderRadius:"5px",border:"2px solid #d0d5dd",margin:0,boxSizing:"border-box",appearance:"none",WebkitAppearance:"none",MozAppearance:"none",cursor:"pointer",position:"relative",backgroundColor:"transparent"},dataElementsContainer:{marginLeft:"27px",display:"flex",flexDirection:"column",margin:0,padding:0,boxSizing:"border-box",paddingLeft:"22px"},dataElementItem:{display:"flex",alignItems:"center",gap:"10px",justifyContent:"space-between",margin:0,padding:0,boxSizing:"border-box",minHeight:"24px"},dataElementText:{fontWeight:400,fontSize:"14px",lineHeight:"150%",letterSpacing:"0.2px",color:"#344054",margin:0,padding:0,textAlign:"left"},checkboxSmall:{height:"16px",width:"16px",padding:"4px",borderRadius:"5px",border:"2px solid #d0d5dd",margin:0,boxSizing:"border-box",appearance:"none",WebkitAppearance:"none",MozAppearance:"none",cursor:"pointer",position:"relative",backgroundColor:"transparent"},loadingContainer:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:"2rem",minHeight:"200px",margin:0,boxSizing:"border-box"},loadingSpinner:{width:"40px",height:"40px",border:"4px solid #f3f3f3",borderTop:"4px solid #3498db",borderRadius:"50%",animation:"spin 1s linear infinite",marginBottom:"1rem",boxSizing:"border-box"}};function st(n,e){var L;let{selectedPurposes:t,collapsedPurposes:o,selectedDataElements:r,settings:i,isMobile:s,getTranslatedText:p,onPurposeToggle:d,onPurposeCollapse:l,onDataElementToggle:c}=e,u=new Map,x=new Map,f=new Map,b=new Map,h=new Map,y=new Map,S=new Map,_=(i==null?void 0:i.headingColor)||"#101828",m=(i==null?void 0:i.textColor)||"#344054",A=a("div",{style:{display:"flex",flexDirection:"column",gap:"16px"}});for(let v of n){let w=a("div"),I=R("svg",{width:"7",height:"12",viewBox:"0 0 7 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:(i==null?void 0:i.headingColor)||"#323B4B","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{transform:o[v.uuid]?"rotate(0deg)":"rotate(90deg)",transition:"transform 0.3s ease"},"aria-hidden":"true"},R("path",{d:"M1 1L6 6L1 11"}));b.set(v.uuid,I);let B=a("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",marginLeft:"5px"}},I),E=a("h2",{style:{...W.optionTitle,fontSize:s?"14px":"16px",color:_}});E.textContent=p("purposes.name",v.name,v.uuid),h.set(v.uuid,E);let D=a("h3",{style:{...W.optionDescription,fontSize:s?"11px":"12px",color:m}});D.textContent=p("purposes.description",v.description,v.uuid),y.set(v.uuid,D);let k=a("div",{style:W.optionTextContainer},E,D),H=a("div",{style:W.optionLeft,role:"button",tabIndex:"0","aria-expanded":String(!o[v.uuid]),"aria-controls":`purpose-${v.uuid}`,"aria-label":`${o[v.uuid]?"Expand":"Collapse"} ${p("purposes.name",v.name,v.uuid)} details`,onClick:()=>l(v.uuid),onKeydown:V=>{(V.key==="Enter"||V.key===" ")&&(V.preventDefault(),l(v.uuid))}},B,k);x.set(v.uuid,H);let M=a("input",{type:"checkbox",checked:t[v.uuid]||!1,"aria-label":`Select all data elements for ${p("purposes.name",v.name,v.uuid)}`,onChange:()=>d(v.uuid)});u.set(v.uuid,M);let z=a("div",{style:W.optionItem},H,M),G=a("div",{id:`purpose-${v.uuid}`,style:W.dataElementsContainer});if(v.data_elements&&v.data_elements.length>0)for(let V of v.data_elements){let N=`${v.uuid}-${V.uuid}`,j=a("span",{style:{...W.dataElementText,fontSize:s?"12px":"14px",color:m}});if(j.textContent=p("data_elements.name",V.name,V.uuid),S.set(N,j),V.required){let T=a("span",{style:{color:"red",marginLeft:"4px"},"aria-label":"required"});T.textContent="*",j.appendChild(T)}let O=a("input",{type:"checkbox",checked:r[N]||!1,"aria-label":`Select ${p("data_elements.name",V.name,V.uuid)}${V.required?" (required)":""}`,onChange:()=>c(V.uuid,v.uuid)});u.set(N,O);let C=a("div",{style:W.dataElementItem},j,O);G.appendChild(C)}f.set(v.uuid,G),!o[v.uuid]&&((L=v.data_elements)==null?void 0:L.length)>0?G.style.display="flex":G.style.display="none",w.appendChild(z),w.appendChild(G),A.appendChild(w)}return{container:A,checkboxes:u,collapseButtons:x,dataElementContainers:f,chevrons:b,titleElements:h,descriptionElements:y,dataElementLabels:S}}var ve=class{constructor(e){this.targetEl=null;this.hostEl=null;this.shadowRoot=null;this.rootEl=null;this.purposeRefs=null;this.errorEl=null;this.hasSubmitted=!1;this.unsubscribe=null;this.options=e,this.store=new ie({content:null,isLoading:!0,isSubmitting:!1,selectedLanguage:e.language||"en",collapsedPurposes:{},selectedPurposes:{},selectedDataElements:{},hasAlreadyConsented:!1,fetchError:null,errorMessage:null}),this.mediaQuery=fe("(max-width: 768px)")}async init(){if(typeof this.options.target=="string"){if(this.targetEl=document.querySelector(this.options.target),!this.targetEl)throw new Error(`Target element not found: ${this.options.target}`)}else this.targetEl=this.options.target;this.hostEl=document.createElement("div"),this.hostEl.setAttribute("data-redacto-consent-inline",""),this.hostEl.style.display="block",this.targetEl.appendChild(this.hostEl),this.shadowRoot=this.hostEl.attachShadow({mode:"open"}),ae(this.shadowRoot),this.unsubscribe=this.store.subscribe((e,t)=>{this.handleStateChange(e,t)}),this.mediaQuery.subscribe(()=>this.rebuildUI()),this.renderLoading(),await this.fetchNotice()}destroy(){var e;(e=this.unsubscribe)==null||e.call(this),this.mediaQuery.destroy(),this.store.destroy(),this.hostEl&&this.hostEl.parentNode&&this.hostEl.parentNode.removeChild(this.hostEl),this.hostEl=null,this.shadowRoot=null,this.rootEl=null,this.purposeRefs=null}updateToken(e){this.options={...this.options,accessToken:e},this.tryAutoSubmit()}async fetchNotice(){var e,t,o,r;this.store.setState({isLoading:!0,fetchError:null});try{let s=(await je({org_uuid:this.options.org_uuid,workspace_uuid:this.options.workspace_uuid,notice_uuid:this.options.notice_uuid,baseUrl:this.options.baseUrl,language:this.options.language,specific_uuid:this.options.applicationId})).detail.active_config,p={},d={},l={};for(let c of s.purposes){p[c.uuid]=!0,d[c.uuid]=!1;for(let u of c.data_elements)l[`${c.uuid}-${u.uuid}`]=!1}this.store.setState({content:s,isLoading:!1,selectedLanguage:s.default_language||this.options.language||"en",collapsedPurposes:p,selectedPurposes:d,selectedDataElements:l})}catch(i){let s=i;s.status===409?(this.store.setState({hasAlreadyConsented:!0,isLoading:!1}),(t=(e=this.options).onAccept)==null||t.call(e)):(this.store.setState({fetchError:s,isLoading:!1}),(r=(o=this.options).onError)==null||r.call(o,s))}}handleStateChange(e,t){if(t.isLoading&&!e.isLoading&&e.content&&this.rebuildUI(),e.hasAlreadyConsented||e.fetchError){this.rootEl&&this.shadowRoot&&this.rootEl.parentNode===this.shadowRoot&&(this.shadowRoot.removeChild(this.rootEl),this.rootEl=null);return}(e.selectedPurposes!==t.selectedPurposes||e.selectedDataElements!==t.selectedDataElements)&&(this.updateCheckboxes(e),this.notifyValidation(e),this.tryAutoSubmit()),e.collapsedPurposes!==t.collapsedPurposes&&this.updateCollapseState(e),e.errorMessage!==t.errorMessage&&this.updateErrorMessage(e)}renderLoading(){var t;if(!this.shadowRoot)return;let e=((t=this.options.settings)==null?void 0:t.textColor)||"#344054";this.rootEl=a("div",{style:W.loadingContainer},a("div",{style:W.loadingSpinner}),a("p",{style:{fontSize:"16px",fontWeight:400,color:e}},"Loading...")),this.shadowRoot.appendChild(this.rootEl)}rebuildUI(){let e=this.store.getState();!e.content||!this.shadowRoot||(this.rootEl&&this.rootEl.parentNode===this.shadowRoot&&this.shadowRoot.removeChild(this.rootEl),this.errorEl=a("div",{role:"alert",style:{backgroundColor:"#FEE2E2",color:"#DC2626",padding:"12px",borderRadius:"6px",fontSize:"14px",border:"1px solid #FCA5A5",display:e.errorMessage?"block":"none"}}),e.errorMessage&&(this.errorEl.textContent=e.errorMessage),this.purposeRefs=st(e.content.purposes,{selectedPurposes:e.selectedPurposes,collapsedPurposes:e.collapsedPurposes,selectedDataElements:e.selectedDataElements,settings:this.options.settings,isMobile:this.mediaQuery.matches,getTranslatedText:(t,o,r)=>this.getTranslatedText(t,o,r),onPurposeToggle:t=>this.handlePurposeCheckboxChange(t),onPurposeCollapse:t=>this.togglePurposeCollapse(t),onDataElementToggle:(t,o)=>this.handleDataElementCheckboxChange(t,o)}),this.rootEl=a("div",{style:{display:"flex",flexDirection:"column",gap:"16px"}},this.errorEl,this.purposeRefs.container),this.shadowRoot.appendChild(this.rootEl),this.notifyValidation(e))}getTranslatedText(e,t,o){var c,u;let r=this.store.getState(),i=r.content;if(!i)return t;let s=r.selectedLanguage;if(s==="English"||s==="en"||s==="EN")return e==="privacy_policy_anchor_text"&&i.privacy_policy_anchor_text?i.privacy_policy_anchor_text:t;let p=i.supported_languages_and_translations;if(!p)return t;let d=p[s];if(!d)return t;if(o){if(e==="purposes.name"||e==="purposes.description"){let x=(c=d.purposes)==null?void 0:c[o];return x?typeof x=="string"?e==="purposes.name"?x:t:e==="purposes.name"?x.name||t:x.description||t:t}if(e.startsWith("data_elements."))return((u=d.data_elements)==null?void 0:u[o])||t}let l=d[e];return typeof l=="string"&&l?l:t}togglePurposeCollapse(e){let t=this.store.getState();this.store.setState({collapsedPurposes:{...t.collapsedPurposes,[e]:!t.collapsedPurposes[e]}})}handlePurposeCheckboxChange(e){let t=this.store.getState(),o=t.content;if(!o)return;let r=o.purposes.find(p=>p.uuid===e);if(!r)return;let i=!t.selectedPurposes[e],s={...t.selectedDataElements};for(let p of r.data_elements)s[`${e}-${p.uuid}`]=i;this.store.setState({selectedPurposes:{...t.selectedPurposes,[e]:i},selectedDataElements:s})}handleDataElementCheckboxChange(e,t){let o=this.store.getState(),r=o.content;if(!r)return;let i=r.purposes.find(u=>u.uuid===t);if(!i)return;let s=`${t}-${e}`,p=!o.selectedDataElements[s],d={...o.selectedDataElements,[s]:p},l=i.data_elements.filter(u=>u.required),c;l.length>0?c=l.every(u=>d[`${t}-${u.uuid}`]):c=i.data_elements.some(u=>d[`${t}-${u.uuid}`]),this.store.setState({selectedDataElements:d,selectedPurposes:{...o.selectedPurposes,[t]:c}})}updateCheckboxes(e){if(this.purposeRefs)for(let[t,o]of this.purposeRefs.checkboxes)t in e.selectedPurposes?o.checked=e.selectedPurposes[t]||!1:o.checked=e.selectedDataElements[t]||!1}updateCollapseState(e){var t;if(this.purposeRefs)for(let[o,r]of this.purposeRefs.dataElementContainers){let i=this.store.getState().content,s=i==null?void 0:i.purposes.find(c=>c.uuid===o),p=e.collapsedPurposes[o];r.style.display=!p&&((t=s==null?void 0:s.data_elements)!=null&&t.length)?"flex":"none";let d=this.purposeRefs.chevrons.get(o);d&&(d.style.transform=p?"rotate(0deg)":"rotate(90deg)");let l=this.purposeRefs.collapseButtons.get(o);l&&l.setAttribute("aria-expanded",String(!p))}}updateErrorMessage(e){this.errorEl&&(e.errorMessage?(this.errorEl.textContent=e.errorMessage,this.errorEl.style.display="block"):this.errorEl.style.display="none")}areAllRequiredElementsChecked(){let e=this.store.getState(),t=e.content;return t?t.purposes.every(o=>o.data_elements.filter(i=>i.required).every(i=>e.selectedDataElements[`${o.uuid}-${i.uuid}`])):!1}notifyValidation(e){var o,r;let t=this.areAllRequiredElementsChecked();(r=(o=this.options).onValidationChange)==null||r.call(o,t)}async tryAutoSubmit(){var o,r;let e=this.store.getState(),t=this.options.accessToken;if(t&&e.content&&this.areAllRequiredElementsChecked()&&!e.isSubmitting&&!this.hasSubmitted){this.hasSubmitted=!0;try{await this.handleSubmit(t)}catch(i){this.hasSubmitted=!1,(r=(o=this.options).onError)==null||r.call(o,i)}}}async handleSubmit(e){var r,i;let t=this.store.getState(),o=t.content;if(!e||!o)throw this.store.setState({errorMessage:"Unable to submit consent. Please try again."}),new Error("Access token or content not available");try{this.store.setState({isSubmitting:!0,errorMessage:null}),await Ke({org_uuid:this.options.org_uuid,workspace_uuid:this.options.workspace_uuid,accessToken:e,baseUrl:this.options.baseUrl,noticeUuid:o.notice_uuid,purposes:o.purposes.map(s=>{let p=s.data_elements.some(c=>c.required&&(t.selectedDataElements[`${s.uuid}-${c.uuid}`]||!1)),d=s.data_elements.some(c=>t.selectedDataElements[`${s.uuid}-${c.uuid}`]||!1),l=t.selectedPurposes[s.uuid]||p||d;return{...s,selected:l,data_elements:s.data_elements.map(c=>({...c,selected:t.selectedDataElements[`${s.uuid}-${c.uuid}`]||!1}))}}),declined:!1,meta_data:this.options.applicationId?{specific_uuid:this.options.applicationId}:void 0}),(i=(r=this.options).onAccept)==null||i.call(r),this.hasSubmitted=!1}catch(s){let p=s,d=p.status===500?"An error occurred while submitting your consent. Please try again later.":p.message||"Failed to submit consent. Please try again.";throw this.store.setState({errorMessage:d}),this.hasSubmitted=!1,s}finally{this.store.setState({isSubmitting:!1})}}};function lt(n){switch(n){case"GUARDIAN_UNDER_18":return"Guardian verification failed: The guardian must be 18 years or older.";case"SESSION_EXPIRED":return"Verification session has expired. Please restart the verification process.";case"TOKEN_FAILED":return"DigiLocker authentication failed. Please try again.";case"DIGILOCKER_AUTH_FAILED":return"DigiLocker authorization was cancelled or failed. Please try again.";case"NO_AUTH_CODE":return"Missing authorization code from DigiLocker. Please try again.";default:return"Verification failed. Please try again."}}function dt(n){var A,L,v;ae(document);let e=new URLSearchParams(window.location.search),t=e.get("session_token"),o=e.get("status"),r=e.get("verification_reference"),i=e.get("error_code"),s=de(),p=(s==null?void 0:s.originalUrl)||"/",d=s==null?void 0:s.baseUrl,l=s==null?void 0:s.sessionToken,c=t||l,u=n.baseUrl||d,x=!1;try{x=window.self!==window.top}catch{x=!0}let f=a("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",minHeight:"200px",padding:"32px",fontFamily:"system-ui, -apple-system, sans-serif"}}),b=a("p",{style:{fontSize:"16px",fontWeight:600,color:"#101828",textAlign:"center"}});b.textContent="Processing verification...";let h=a("div",{style:{width:"40px",height:"40px",border:"4px solid #f3f3f3",borderTop:"4px solid #3498db",borderRadius:"50%",animation:"spin 1s linear infinite",marginBottom:"16px"}});f.appendChild(h),f.appendChild(b),document.body.appendChild(f);let y=(w,I)=>{Ze({verificationResult:w,verificationReference:I,flowState:w==="verified"?"consent-form":"error"}),b.textContent=w==="verified"?"Verification successful! Redirecting...":"Verification failed. Redirecting...",h.style.display="none",setTimeout(()=>{window.location.href=p},1500)};if(o==="verified"&&r){if(x&&window.parent){window.parent.postMessage({type:"DIGILOCKER_VERIFICATION_STATUS",status:"verified",verificationReference:r},window.location.origin),b.textContent="Verification successful!",h.style.display="none";return}(A=n.onSuccess)==null||A.call(n,r),y("verified",r);return}if(o==="failed"||o==="expired"){let w=lt(i);if(x&&window.parent){window.parent.postMessage({type:"DIGILOCKER_VERIFICATION_STATUS",status:o,errorCode:i,error:w},window.location.origin),b.textContent=w,b.style.color="#DC2626",h.style.display="none";return}(L=n.onError)==null||L.call(n,new Error(w),i||void 0),y(o);return}if(!c){b.textContent="No verification session found.",b.style.color="#DC2626",h.style.display="none",(v=n.onError)==null||v.call(n,new Error("No session token available"));return}let S=0,_=3,m=async()=>{var w,I,B,E,D;try{let k=await be({accessToken:n.accessToken,baseUrl:u,sessionToken:c});if(k.status==="verified"){let M=k.verification_reference||((w=k.guardian_details)==null?void 0:w.verification_reference);if(x&&window.parent){window.parent.postMessage({type:"DIGILOCKER_VERIFICATION_STATUS",status:"verified",verificationReference:M},window.location.origin),b.textContent="Verification successful!",h.style.display="none";return}M&&((I=n.onSuccess)==null||I.call(n,M)),y("verified",M||void 0);return}if(k.status==="failed"||k.status==="expired"){let M=Pt(k.error_code,k.error);if(x&&window.parent){window.parent.postMessage({type:"DIGILOCKER_VERIFICATION_STATUS",status:k.status,errorCode:k.error_code,error:M},window.location.origin),b.textContent=M,b.style.color="#DC2626",h.style.display="none";return}(B=n.onError)==null||B.call(n,new Error(M),k.error_code||void 0),y(k.status);return}if(S++,S>_){let M="Verification is taking too long. Please return to the original page.";b.textContent=M,b.style.color="#DC2626",h.style.display="none",(E=n.onError)==null||E.call(n,new Error(M)),y("failed");return}let H=3e3*Math.pow(2,S-1);b.textContent="Still processing... Please wait.",setTimeout(m,H)}catch(k){if(S++,S>_){let M=k.message||"Failed to check verification status.";b.textContent=M,b.style.color="#DC2626",h.style.display="none",(D=n.onError)==null||D.call(n,k),y("failed");return}let H=3e3*Math.pow(2,S-1);setTimeout(m,H)}};setTimeout(m,3e3)}function Pt(n,e){return lt(n)||e||"Verification failed. Please try again."}var ce=null,Y=null;function ct(n){Ie(),ce=new xe(n),ce.init().catch(e=>{var t;(t=n.onError)==null||t.call(n,e)})}function pt(n){Y&&(Y.destroy(),Y=null),Y=new ve(n),Y.init().catch(e=>{var t;(t=n.onError)==null||t.call(n,e)})}function Ie(){ce&&(ce.destroy(),ce=null),Y&&(Y.destroy(),Y=null)}function ut(n){dt(n)}var It={init:ct,inline:pt,destroy:Ie,digilockerCallback:ut,version:"0.1.0"},Mt=It;return Ct(At);})();
132
132
  if (typeof RedactoConsent !== 'undefined' && RedactoConsent.default) { Object.assign(RedactoConsent, RedactoConsent.default); }
133
133
  //# sourceMappingURL=redacto.global.js.map