{"version":3,"file":"BackButton.X_NqYiFh.mjs","names":["useState"],"sources":["https:/framerusercontent.com/modules/Whpo4hwFaboUVAPzZROl/U1iv6BXZTIgyiYX3RdpH/BackButton.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n * BackButton — bouton « Retour aux projets » pour les pages projets,\n * dans le même style que le bouton « Estimer mon projet ».\n *\n * Comportement :\n * - Si le visiteur vient de ton site (ex. depuis la liste des projets),\n *   le bouton fait un vrai « retour arrière » : il revient au même\n *   endroit de la page, sans remonter tout en haut.\n * - S'il arrive directement sur la page projet (lien partagé, Google…),\n *   le bouton l'envoie vers la section projets de l'accueil.\n *\n * À placer une seule fois sur la page modèle des projets (CMS) :\n * il apparaîtra automatiquement sur tous les projets.\n */export default function BackButton(props){const{label,fallbackLink,textColor,hoverTextColor,borderColor,hoverBackground,fontFamily,fontSize}=props;const[hovered,setHovered]=useState(false);function handleClick(e){if(typeof window===\"undefined\")return;let cameFromSite=false;try{cameFromSite=!!document.referrer&&new URL(document.referrer).origin===window.location.origin;}catch(err){}if(cameFromSite&&window.history.length>1){e.preventDefault();window.history.back();}// Sinon, le lien href (fallbackLink) prend le relais\n}const color=hovered?hoverTextColor:textColor;return /*#__PURE__*/_jsxs(\"a\",{href:fallbackLink,onClick:handleClick,onMouseEnter:()=>setHovered(true),onMouseLeave:()=>setHovered(false),onFocus:()=>setHovered(true),onBlur:()=>setHovered(false),style:{display:\"inline-flex\",alignItems:\"center\",gap:12,padding:\"16px 24px\",border:`1px solid ${borderColor}`,background:hovered?hoverBackground:\"transparent\",color,textDecoration:\"none\",fontFamily,fontSize,letterSpacing:\"0.1em\",textTransform:\"uppercase\",lineHeight:1,cursor:\"pointer\",whiteSpace:\"nowrap\",boxSizing:\"border-box\",transition:\"background 0.25s ease, color 0.25s ease, border-color 0.25s ease\",outlineOffset:4},children:[/*#__PURE__*/_jsx(\"svg\",{width:\"16\",height:\"12\",viewBox:\"0 0 16 12\",fill:\"none\",\"aria-hidden\":\"true\",style:{flex:\"0 0 auto\",transform:hovered?\"translateX(-4px)\":\"translateX(0)\",transition:\"transform 0.3s ease\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"M15 6H1M1 6L6 1M1 6L6 11\",stroke:color,strokeWidth:\"1.2\",style:{transition:\"stroke 0.25s ease\"}})}),/*#__PURE__*/_jsx(\"span\",{children:label})]});}BackButton.displayName=\"BackButton\";BackButton.defaultProps={label:\"Retour\",fallbackLink:\"/#projets\",textColor:\"#F5F5F2\",hoverTextColor:\"#0A0A0A\",borderColor:\"rgba(245,245,242,0.6)\",hoverBackground:\"#F5F5F2\",fontFamily:\"'IBM Plex Mono', monospace\",fontSize:13};addPropertyControls(BackButton,{label:{type:ControlType.String,title:\"Texte\",defaultValue:\"Retour\"},fallbackLink:{type:ControlType.String,title:\"Lien\",defaultValue:\"/#projets\"},textColor:{type:ControlType.Color,title:\"Texte\",defaultValue:\"#F5F5F2\"},borderColor:{type:ControlType.Color,title:\"Bordure\",defaultValue:\"rgba(245,245,242,0.6)\"},hoverBackground:{type:ControlType.Color,title:\"Fond survol\",defaultValue:\"#F5F5F2\"},hoverTextColor:{type:ControlType.Color,title:\"Texte survol\",defaultValue:\"#0A0A0A\"},fontFamily:{type:ControlType.String,title:\"Police\",defaultValue:\"'IBM Plex Mono', monospace\"},fontSize:{type:ControlType.Number,title:\"Taille\",defaultValue:13,min:9,max:24,step:1,unit:\"px\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"BackButton\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./BackButton.map"],"mappings":"+LAaG,SAAwB,EAAW,EAAM,CAAC,GAAK,CAAC,QAAM,eAAa,YAAU,iBAAe,cAAY,kBAAgB,aAAW,YAAU,EAAW,CAAC,EAAQ,GAAYA,EAAS,EAAK,EAAE,SAAS,EAAY,EAAE,CAAC,GAAU,IAAS,OAAY,OAAO,IAAI,EAAa,GAAM,GAAG,CAAC,EAAa,CAAC,CAAC,SAAS,UAAU,IAAI,IAAI,SAAS,QAAQ,CAAC,CAAC,SAAS,EAAO,SAAS,MAAO,MAAW,CAAC,CAAI,GAAc,EAAO,QAAQ,OAAO,IAAG,EAAE,eAAe,EAAE,EAAO,QAAQ,KAAK,EACpd,CAAC,IAAM,EAAM,EAAQ,EAAe,EAAU,OAAoB,EAAM,IAAI,CAAC,KAAK,EAAa,QAAQ,EAAY,iBAAiB,EAAW,EAAI,EAAE,iBAAiB,EAAW,EAAK,EAAE,YAAY,EAAW,EAAI,EAAE,WAAW,EAAW,EAAK,EAAE,MAAM,CAAC,QAAQ,cAAc,WAAW,SAAS,IAAI,GAAG,QAAQ,YAAY,OAAO,aAAa,IAAc,WAAW,EAAQ,EAAgB,cAAc,QAAM,eAAe,OAAO,aAAW,WAAS,cAAc,QAAQ,cAAc,YAAY,WAAW,EAAE,OAAO,UAAU,WAAW,SAAS,UAAU,aAAa,WAAW,mEAAmE,cAAc,CAAC,EAAE,SAAS,CAAc,EAAK,MAAM,CAAC,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OAAO,cAAc,OAAO,MAAM,CAAC,KAAK,WAAW,UAAU,EAAQ,mBAAmB,gBAAgB,WAAW,qBAAqB,EAAE,SAAsB,EAAK,OAAO,CAAC,EAAE,2BAA2B,OAAO,EAAM,YAAY,MAAM,MAAM,CAAC,WAAW,mBAAmB,CAAC,CAAC,CAAC,CAAC,EAAe,EAAK,OAAO,CAAC,SAAS,CAAK,CAAC,CAAC,CAAC,CAAC,CAAE,qBAdt/B,IAA4B,IAAoD,EAcu6B,EAAW,YAAY,aAAa,EAAW,aAAa,CAAC,MAAM,SAAS,aAAa,YAAY,UAAU,UAAU,eAAe,UAAU,YAAY,wBAAwB,gBAAgB,UAAU,WAAW,6BAA6B,SAAS,EAAE,EAAE,EAAoB,EAAW,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,QAAQ,aAAa,QAAQ,EAAE,aAAa,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,aAAa,WAAW,EAAE,UAAU,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,aAAa,SAAS,EAAE,YAAY,CAAC,KAAK,EAAY,MAAM,MAAM,UAAU,aAAa,uBAAuB,EAAE,gBAAgB,CAAC,KAAK,EAAY,MAAM,MAAM,cAAc,aAAa,SAAS,EAAE,eAAe,CAAC,KAAK,EAAY,MAAM,MAAM,eAAe,aAAa,SAAS,EAAE,WAAW,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,4BAA4B,EAAE,SAAS,CAAC,KAAK,EAAY,OAAO,MAAM,SAAS,aAAa,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC"}