{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/rW8YoV64sTcSTVvIJWd5/izCgZNvFsM2Izr8F3sVe/BlogHelpers.js"],
  "sourcesContent": ["import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect}from\"react\";import{Data}from\"framer\";import{useState}from\"react\";// ADD CLASS NAME TO OBJECT\nexport function withClass(Component){return props=>{props.className+=\" blog-tag\"// Remember to add a space\n;return /*#__PURE__*/_jsx(Component,{...props});};}// CHANGE COMPONENT VARIANT BASED ON URL PARAMETER\n// Create a Data object to store the current variant\nconst store=Data({currentVariant:\"default\"});// Function to update the variant based on URL\nfunction updateVariantFromURL(){const urlParams=new URLSearchParams(window.location.search);const urlVariant=urlParams.get(\"variant\");if(urlVariant){store.currentVariant=urlVariant;}}// Call this function when the component mounts\nif(typeof window!==\"undefined\"){updateVariantFromURL();// Optional: Listen for URL changes\nwindow.addEventListener(\"popstate\",updateVariantFromURL);}export function VariantOverride(){return{variant:store.currentVariant};}// APPEND URL PARAMETER TO LINK BASED ON TAG SLUG PROP\nexport function AppendUrlParameter(props){return{onTap(event){// Prevent the default link navigation\nevent.preventDefault();// Define the target link (e.g., from a component or hardcoded)\nconst targetLink=\"https://www.carbon-direct.com/insights\";// Define the parameter key\nconst paramKey=\"variant\";// Get the slug value from props\nconst paramValue=props.slug||\"view-all\"// Fallback to a default value\n;const anchor=\"#feed\";// Create a new URL object\nconst newUrl=new URL(targetLink);// Append or update the parameter\nnewUrl.searchParams.set(paramKey,paramValue);newUrl.hash=anchor;// Navigate to the new URL\nwindow.location.href=newUrl.toString();}};}export function ScrollToAnchor(){return{onLoad:()=>{setTimeout(()=>{if(window.location.hash){const target=document.querySelector(window.location.hash);if(target){target.scrollIntoView({behavior:\"smooth\",block:\"start\"});}}},100)// Small delay to ensure elements are rendered\n;}};}// REMOVE PARAMETER TO CURRENT URL ON CLICK\nexport function RemoveParameter(){return{onTap:()=>{const url=new URL(window.location.href);url.searchParams.delete(\"variant\");window.history.replaceState({},\"\",url.toString());}};}// HIDE SIDE NAV IF THERE AREN'T ANY H2S OR H3S IN THE BLOG CONTENT\nexport function HideIfNoHeadings(){const[isVisible,setIsVisible]=useState(true);useEffect(()=>{const checkHeadings=()=>{const blogContent=document.querySelector(\"#blog-content\");if(blogContent){const hasHeadings=blogContent.querySelectorAll(\"h2, h3\").length>0;setIsVisible(hasHeadings);}else{setIsVisible(false);}};// Run on mount\ncheckHeadings();// Set up observer\nconst observer=new MutationObserver(()=>{checkHeadings();});const blogContent=document.querySelector(\"#blog-content\");if(blogContent){observer.observe(blogContent,{childList:true,subtree:true});}return()=>observer.disconnect();},[]);return{style:{display:isVisible?\"block\":\"none\"}};}// FIX FILTERING ON MOBILE\nexport function FixDropdown(){return{onPointerDown:event=>{event.preventDefault()// Prevents focus conflicts\n;event.stopPropagation()// Prevents event bubbling issues\n;const dropdownMenu=document.querySelector(\".framer-a4IS0\");if(dropdownMenu){dropdownMenu.classList.toggle(\"open\");}},onFocus:event=>{event.preventDefault()// Prevents focus-based triggering\n;}};}import{useContext as __legacyOverrideHOC_useContext}from\"react\";import{DataObserverContext as __legacyOverrideHOC_DataObserverContext}from\"framer\";export function withVariantOverride(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...VariantOverride(props)});};}withVariantOverride.displayName=\"VariantOverride\";export function withAppendUrlParameter(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...AppendUrlParameter(props)});};}withAppendUrlParameter.displayName=\"AppendUrlParameter\";export function withScrollToAnchor(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...ScrollToAnchor(props)});};}withScrollToAnchor.displayName=\"ScrollToAnchor\";export function withRemoveParameter(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...RemoveParameter(props)});};}withRemoveParameter.displayName=\"RemoveParameter\";export function withHideIfNoHeadings(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...HideIfNoHeadings(props)});};}withHideIfNoHeadings.displayName=\"HideIfNoHeadings\";export function withFixDropdown(C){return props=>{__legacyOverrideHOC_useContext(__legacyOverrideHOC_DataObserverContext);return _jsx(C,{...props,...FixDropdown(props)});};}withFixDropdown.displayName=\"FixDropdown\";\nexport const __FramerMetadata__ = {\"exports\":{\"FixDropdown\":{\"type\":\"override\",\"name\":\"FixDropdown\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withHideIfNoHeadings\":{\"type\":\"reactHoc\",\"name\":\"withHideIfNoHeadings\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withFixDropdown\":{\"type\":\"reactHoc\",\"name\":\"withFixDropdown\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withAppendUrlParameter\":{\"type\":\"reactHoc\",\"name\":\"withAppendUrlParameter\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withScrollToAnchor\":{\"type\":\"reactHoc\",\"name\":\"withScrollToAnchor\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"AppendUrlParameter\":{\"type\":\"override\",\"name\":\"AppendUrlParameter\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"ScrollToAnchor\":{\"type\":\"override\",\"name\":\"ScrollToAnchor\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"HideIfNoHeadings\":{\"type\":\"override\",\"name\":\"HideIfNoHeadings\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withVariantOverride\":{\"type\":\"reactHoc\",\"name\":\"withVariantOverride\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withRemoveParameter\":{\"type\":\"reactHoc\",\"name\":\"withRemoveParameter\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RemoveParameter\":{\"type\":\"override\",\"name\":\"RemoveParameter\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withClass\":{\"type\":\"reactHoc\",\"name\":\"withClass\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"VariantOverride\":{\"type\":\"override\",\"name\":\"VariantOverride\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BlogHelpers.map"],
  "mappings": "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",
  "names": ["withClass", "Component", "props", "p", "store", "Data", "updateVariantFromURL", "urlVariant", "window", "VariantOverride", "AppendUrlParameter", "event", "targetLink", "paramKey", "paramValue", "anchor", "newUrl", "ScrollToAnchor", "target", "RemoveParameter", "url", "HideIfNoHeadings", "isVisible", "setIsVisible", "ye", "ue", "checkHeadings", "blogContent", "hasHeadings", "observer", "FixDropdown", "dropdownMenu", "withVariantOverride", "C", "re", "DataObserverContext", "withAppendUrlParameter", "withScrollToAnchor", "withRemoveParameter", "withHideIfNoHeadings", "withFixDropdown"]
}
