{"version":3,"file":"MenuLinkQuery.BsqDQaPF.mjs","names":["useMemo","useCallback"],"sources":["https:/framerusercontent.com/modules/dlmm72q3LTM12WTRR2u9/gtEvtQGxRtpgmc9PDc6R/MenuLinkQuery.js"],"sourcesContent":["import{jsx as _jsx}from\"react/jsx-runtime\";import{cloneElement,forwardRef,isValidElement,useCallback,useMemo}from\"react\";const SUPPORTED_LOCALES=new Set([\"de\",\"da\",\"fi\",\"fr\",\"nl\"]);const DEBUG=true;function asString(value){return typeof value===\"string\"&&value.length>0?value:null;}function readConfiguredCandidate(props){const childProps=props?.children?.props;const candidates=[{source:\"props.link\",value:props?.link},{source:\"props.href\",value:props?.href},{source:\"props.link.href\",value:props?.link?.href},{source:\"child.href\",value:childProps?.href},{source:\"child.link\",value:childProps?.link},{source:\"child.link.href\",value:childProps?.link?.href}];for(const candidate of candidates){const value=asString(candidate.value);if(!value)continue;if(!value.includes(\"?\"))continue;return{source:candidate.source,value};}return null;}function readConfiguredLinkCandidate(props){const childProps=props?.children?.props;const candidates=[{source:\"props.link\",value:props?.link},{source:\"props.href\",value:props?.href},{source:\"props.link.href\",value:props?.link?.href},{source:\"child.href\",value:childProps?.href},{source:\"child.link\",value:childProps?.link},{source:\"child.link.href\",value:childProps?.link?.href}];for(const candidate of candidates){const value=asString(candidate.value);if(!value)continue;return{source:candidate.source,value};}return null;}function splitConfigured(configured){const queryIndex=configured.indexOf(\"?\");if(queryIndex<0){return{configuredPath:configured,suffix:\"\"};}return{configuredPath:configured.slice(0,queryIndex),suffix:configured.slice(queryIndex)};}function getLocalePrefixFromPath(pathname){const firstSegment=pathname.split(\"/\").filter(Boolean)[0]??\"\";if(SUPPORTED_LOCALES.has(firstSegment)){return`/${firstSegment}`;}return\"\";}function getLiveLocalePrefix(){if(typeof window===\"undefined\")return\"\";return getLocalePrefixFromPath(window.location.pathname??\"\");}function selfHosts(){const hosts=new Set([\"super-share-299575.framer.app\"]);if(typeof window!==\"undefined\"&&window.location?.hostname){hosts.add(window.location.hostname);}return hosts;}function classify(value){if(!value||!value.includes(\"?\"))return{kind:\"none\",normalized:value};if(value.startsWith(\"/\"))return{kind:\"relative\",normalized:value};if(/^https?:\\/\\//i.test(value)){try{const url=new URL(value);const currentHost=typeof window!==\"undefined\"?window.location.host:null;const sameCurrentHost=currentHost?url.host===currentHost:false;const sameCanonicalHost=url.hostname===\"super-share-299575.framer.app\";if(sameCurrentHost||sameCanonicalHost||selfHosts().has(url.hostname)){return{kind:\"self-absolute\",normalized:`${url.pathname}${url.search}${url.hash}`};}return{kind:\"external\",normalized:value};}catch(error){return{kind:\"external\",normalized:value};}}return{kind:\"external\",normalized:value};}function normalizeToPathname(value){if(!value)return\"\";if(value.startsWith(\"/\"))return value;if(/^https?:\\/\\//i.test(value)){try{const url=new URL(value);if(selfHosts().has(url.hostname)){return url.pathname||\"/\";}return url.pathname||\"/\";}catch(error){return value;}}return value;}function stripQueryAndHash(value){if(!value)return\"\";const queryIndex=value.indexOf(\"?\");const hashIndex=value.indexOf(\"#\");const cutAt=queryIndex>=0&&hashIndex>=0?Math.min(queryIndex,hashIndex):queryIndex>=0?queryIndex:hashIndex;const pathOnly=cutAt>=0?value.slice(0,cutAt):value;return pathOnly||\"/\";}function stripLeadingLocalePrefix(pathname){if(!pathname.startsWith(\"/\"))return pathname;const parts=pathname.split(\"/\").filter(Boolean);if(parts.length===0)return\"/\";const first=parts[0];if(!SUPPORTED_LOCALES.has(first))return pathname;const rest=parts.slice(1);return rest.length>0?`/${rest.join(\"/\")}`:\"/\";}export function withMenuLinkQuery(Component){return /*#__PURE__*/forwardRef(function MenuLinkQueryOverride(props,ref){const computed=useMemo(()=>{const configuredCandidate=readConfiguredCandidate(props);const raw=configuredCandidate?.value??\"\";const{kind,normalized}=classify(raw);const intercept=kind===\"relative\"||kind===\"self-absolute\";let target=\"\";if(intercept){const{configuredPath,suffix}=splitConfigured(normalized);const livePrefix=getLiveLocalePrefix();const cleanPath=stripLeadingLocalePrefix(stripQueryAndHash(configuredPath));target=`${livePrefix}${cleanPath}${suffix}`;}return{kind,normalized,intercept,target};},[props]);const onClickCapture=useCallback(event=>{if(!computed.intercept)return;if(typeof window===\"undefined\")return;event.preventDefault();event.stopPropagation();window.location.assign(computed.target);},[computed]);const nextProps={...props};if(computed.intercept){nextProps.onClickCapture=onClickCapture;if(DEBUG){nextProps[\"data-menuquery-target\"]=computed.target;}}const child=props?.children;if(/*#__PURE__*/isValidElement(child)){const childElement=child;const childNextProps={};if(computed.intercept){childNextProps.onClickCapture=onClickCapture;if(DEBUG){childNextProps[\"data-menuquery-target\"]=computed.target;}}nextProps.children=/*#__PURE__*/cloneElement(childElement,childNextProps);}return /*#__PURE__*/_jsx(Component,{ref:ref,...nextProps});});}export function withAllProductsLink(Component){return /*#__PURE__*/forwardRef(function AllProductsLinkOverride(props,ref){const computed=useMemo(()=>{const configuredCandidate=readConfiguredLinkCandidate(props);const raw=configuredCandidate?.value??\"\";const normalized=normalizeToPathname(raw);const cleanCollectionPath=stripLeadingLocalePrefix(stripQueryAndHash(normalized));const intercept=cleanCollectionPath.length>0;const target=`${getLiveLocalePrefix()}${cleanCollectionPath}`;return{intercept,target};},[props]);const onClickCapture=useCallback(event=>{if(!computed.intercept)return;if(typeof window===\"undefined\")return;event.preventDefault();event.stopPropagation();window.location.assign(computed.target);},[computed]);const nextProps={...props};if(computed.intercept){nextProps.onClickCapture=onClickCapture;if(DEBUG){nextProps[\"data-allproducts-target\"]=computed.target;}}const child=props?.children;if(/*#__PURE__*/isValidElement(child)){const childElement=child;const childNextProps={};if(computed.intercept){childNextProps.onClickCapture=onClickCapture;if(DEBUG){childNextProps[\"data-allproducts-target\"]=computed.target;}}nextProps.children=/*#__PURE__*/cloneElement(childElement,childNextProps);}return /*#__PURE__*/_jsx(Component,{ref:ref,...nextProps});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withAllProductsLink\":{\"type\":\"reactHoc\",\"name\":\"withAllProductsLink\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withMenuLinkQuery\":{\"type\":\"reactHoc\",\"name\":\"withMenuLinkQuery\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./MenuLinkQuery.map"],"mappings":"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"}