{"version":3,"file":"Tracking_ButtonClicks.DcFu6vrm.mjs","names":["__legacyOverrideHOC_DataObserverContext","_jsx"],"sources":["https:/framerusercontent.com/modules/HMQcuytT4vYEmjhbBKar/gjq08r64okf9lJGk2TOw/Tracking_ButtonClicks.js"],"sourcesContent":["// overrides/SetupQuizTracking.jsx\nimport{jsx as _jsx}from\"react/jsx-runtime\";import*as React from\"react\";// ---- config: add/adjust your quiz routes here\nconst QUIZ_CONFIGS=[{path:\"/heart-check\",quizId:\"heart_check\"},{path:\"/lp/bp-quiz\",quizId:\"bp_quiz\"},{path:\"/lp/hearthealthprogram\",quizId:\"hh_program_quiz\"},{path:\"/lp/cholesterol-check\",quizId:\"cholesterol_quiz\"}];const QUIZ_DEFAULT_ID=\"other_quiz\";const DEDUPE_MS=350;// Primary selector: the actual Framer Forms button\n// Secondary: same button inside a container named \"Next Button\"\nconst CONTINUE_SELECTOR='button[data-framerforms=\"true\"], div[data-framer-name=\"Next Button\"] button[data-framerforms=\"true\"]';function dlPush(obj){if(typeof window===\"undefined\")return;window.dataLayer=window.dataLayer||[];window.dataLayer.push(obj);if(window.ccTrackDebug)console.log(\"[DL]\",obj);}function getQuizConfig(){if(typeof window===\"undefined\"){return{quizId:QUIZ_DEFAULT_ID};}const path=window.location.pathname||\"\";const match=QUIZ_CONFIGS.find(cfg=>path.includes(cfg.path));if(match)return{quizId:match.quizId};// catch all: still track but with generic id\nreturn{quizId:QUIZ_DEFAULT_ID};}function getClicks(){try{return Number(sessionStorage.getItem(\"cc_quiz_clicks\")||\"0\");}catch{return 0;}}function setClicks(n){try{sessionStorage.setItem(\"cc_quiz_clicks\",String(n));}catch{}}// Optional: only count visible button clicks\nfunction isVisible(el){if(!el)return false;const r=el.getBoundingClientRect();return r.width>0&&r.height>0&&window.getComputedStyle(el).visibility!==\"hidden\";}export function setupQuizTracking(){React.useEffect(()=>{if(typeof window===\"undefined\")return;if(window.__ccQuizTrackInit)return;window.__ccQuizTrackInit=true;const cfg=getQuizConfig();// reset click counter when tracking initialises\nsetClicks(0);if(window.ccTrackDebug){console.log(\"[quiz tracking] attached once\");console.log(\"[quiz tracking] quiz config:\",cfg);console.log(\"[quiz tracking] buttons found:\",document.querySelectorAll(CONTINUE_SELECTOR).length);}let lastTs=0;const fireForButton=btn=>{if(!btn||!isVisible(btn))return;const now=Date.now();if(now-lastTs<DEDUPE_MS)return;// de-dupe double fires\nlastTs=now;if(getClicks()===0){dlPush({event:\"quiz_start\",quiz_id:cfg.quizId,page_location:location.href,page_title:document.title,ts:now});}const n=getClicks()+1;setClicks(n);dlPush({event:\"quiz_step_click\",step_click_index:n,quiz_id:cfg.quizId,page_location:location.href,page_title:document.title,button_text:(btn.getAttribute(\"aria-label\")||btn.textContent||\"\").trim()||undefined,ts:now});};// Capture only clicks that bubble from the actual Continue button\nconst onPointerUp=e=>{const btn=e.target?.closest?.(CONTINUE_SELECTOR);if(!btn)return;fireForButton(btn);};const onKeyDown=e=>{if(e.key!==\"Enter\"&&e.key!==\" \")return;const btn=e.target?.closest?.(CONTINUE_SELECTOR);if(!btn)return;fireForButton(btn);};document.addEventListener(\"pointerup\",onPointerUp,true);document.addEventListener(\"keydown\",onKeyDown,true);return()=>{document.removeEventListener(\"pointerup\",onPointerUp,true);document.removeEventListener(\"keydown\",onKeyDown,true);};},[]);return{};}import{useContext as __legacyOverrideHOC_useContext}from\"react\";import{DataObserverContext as __legacyOverrideHOC_DataObserverContext}from\"framer\";export function withsetupQuizTracking(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...setupQuizTracking(props)});};}withsetupQuizTracking.displayName=\"setupQuizTracking\";\nexport const __FramerMetadata__ = {\"exports\":{\"withsetupQuizTracking\":{\"type\":\"reactHoc\",\"name\":\"withsetupQuizTracking\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"setupQuizTracking\":{\"type\":\"override\",\"name\":\"setupQuizTracking\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Tracking_ButtonClicks.map"],"mappings":"wLAI+H,SAAS,EAAO,EAAI,CAAW,IAAS,SAAmB,EAAO,UAAU,EAAO,WAAW,EAAE,CAAC,EAAO,UAAU,KAAK,EAAI,CAAI,EAAO,cAAa,QAAQ,IAAI,OAAO,EAAI,EAAE,SAAS,GAAe,CAAC,GAAU,IAAS,OAAa,MAAM,CAAC,OAAO,EAAgB,CAAE,IAAM,EAAK,EAAO,SAAS,UAAU,GAAS,EAAM,EAAa,KAAK,GAAK,EAAK,SAAS,EAAI,KAAK,CAAC,CACve,OAD2e,EAAY,CAAC,OAAO,EAAM,OAAO,CACtgB,CAAC,OAAO,EAAgB,CAAE,SAAS,GAAW,CAAC,GAAG,CAAC,OAAO,OAAO,eAAe,QAAQ,iBAAiB,EAAE,IAAI,MAAO,CAAC,MAAO,IAAI,SAAS,EAAU,EAAE,CAAC,GAAG,CAAC,eAAe,QAAQ,iBAAiB,OAAO,EAAE,CAAC,MAAO,GAC3N,SAAS,EAAU,EAAG,CAAC,GAAG,CAAC,EAAG,MAAO,GAAM,IAAM,EAAE,EAAG,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,EAAE,OAAO,GAAG,EAAO,iBAAiB,EAAG,CAAC,aAAa,SAAU,SAAgB,GAAmB,CAG0S,OAHzS,MAAoB,CAAuC,GAA5B,IAAS,QAAsB,EAAO,kBAAkB,OAAO,EAAO,kBAAkB,GAAK,IAAM,EAAI,GAAe,CACxV,EAAU,EAAE,CAAI,EAAO,eAAc,QAAQ,IAAI,gCAAgC,CAAC,QAAQ,IAAI,+BAA+B,EAAI,CAAC,QAAQ,IAAI,iCAAiC,SAAS,iBAAiB,EAAkB,CAAC,OAAO,EAAE,IAAI,EAAO,EAAQ,EAAc,GAAK,CAAC,GAAG,CAAC,GAAK,CAAC,EAAU,EAAI,CAAC,OAAO,IAAM,EAAI,KAAK,KAAK,CAAC,GAAG,EAAI,EAAO,EAAU,OACzV,EAAO,EAAO,GAAW,GAAG,GAAG,EAAO,CAAC,MAAM,aAAa,QAAQ,EAAI,OAAO,cAAc,SAAS,KAAK,WAAW,SAAS,MAAM,GAAG,EAAI,CAAC,CAAE,IAAM,EAAE,GAAW,CAAC,EAAE,EAAU,EAAE,CAAC,EAAO,CAAC,MAAM,kBAAkB,iBAAiB,EAAE,QAAQ,EAAI,OAAO,cAAc,SAAS,KAAK,WAAW,SAAS,MAAM,aAAa,EAAI,aAAa,aAAa,EAAE,EAAI,aAAa,IAAI,MAAM,EAAE,IAAA,GAAU,GAAG,EAAI,CAAC,EAClY,EAAY,GAAG,CAAC,IAAM,EAAI,EAAE,QAAQ,UAAU,EAAkB,CAAK,GAAW,EAAc,EAAI,EAAS,EAAU,GAAG,CAAC,GAAG,EAAE,MAAM,SAAS,EAAE,MAAM,IAAI,OAAO,IAAM,EAAI,EAAE,QAAQ,UAAU,EAAkB,CAAK,GAAW,EAAc,EAAI,EAA+G,OAA5G,SAAS,iBAAiB,YAAY,EAAY,GAAK,CAAC,SAAS,iBAAiB,UAAU,EAAU,GAAK,KAAW,CAAC,SAAS,oBAAoB,YAAY,EAAY,GAAK,CAAC,SAAS,oBAAoB,UAAU,EAAU,GAAK,GAAK,EAAE,CAAC,CAAO,EAAE,CAAqJ,SAAgB,EAAsB,EAAE,CAAC,MAAO,KAAQ,EAA+BA,EAAwC,CAAQC,EAAK,EAAE,CAAC,GAAG,EAAM,GAAG,EAAkB,EAAM,CAAC,CAAC,+BARnxB,IAA4B,IAQkkB,CAPnoB,EAAa,CAAC,CAAC,KAAK,eAAe,OAAO,cAAc,CAAC,CAAC,KAAK,cAAc,OAAO,UAAU,CAAC,CAAC,KAAK,yBAAyB,OAAO,kBAAkB,CAAC,CAAC,KAAK,wBAAwB,OAAO,mBAAmB,CAAC,CAAO,EAAgB,aAAmB,EAAU,IAErQ,EAAkB,uGAK0yB,EAAsB,YAAY"}