{"version":3,"file":"ViewProjectButton.C1e9aCrs.mjs","names":["React.forwardRef","useState"],"sources":["https:/framerusercontent.com/modules/CiGGjrw5dYpN4NHDE2Gg/oCG5ewYxDu1Xmf4RdqTv/P3MA2yYun.js","https:/framerusercontent.com/modules/uM4QUWVfsp2NBC7VHVLZ/s4N5Bw86PgLwcPzwQ0iG/ViewProjectButton.js"],"sourcesContent":["// Generated by Framer (85eaff3)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,cx,motion,useSVGTemplate,withCSS}from\"framer\";import*as React from\"react\";import{forwardRef}from\"react\";const mask=\"var(--framer-icon-mask)\";const Base=/*#__PURE__*/forwardRef(function(props,ref){return /*#__PURE__*/_jsx(\"svg\",{...props,ref:ref,children:props.children});});const MotionSVG=motion.create(Base);const SVG=/*#__PURE__*/forwardRef((props,ref)=>{const{animated,layoutId,children,...rest}=props;return animated?/*#__PURE__*/_jsx(MotionSVG,{...rest,layoutId:layoutId,ref:ref,children:children}):/*#__PURE__*/_jsx(\"svg\",{...rest,ref:ref,children:children});});const svg='<svg display=\"block\" role=\"presentation\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 0 0 L 10 0 L 10 10\" fill=\"transparent\" height=\"10px\" id=\"eMA3WLRa2\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--js9iwy, 2)\" stroke=\"var(--1m973uw, rgb(0,0,0))\" transform=\"translate(7 7)\" width=\"10px\"/><path d=\"M 0 10 L 10 0\" fill=\"transparent\" height=\"10px\" id=\"GBl_xBBAR\" stroke-dasharray=\"\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"var(--js9iwy, 2)\" stroke=\"var(--1m973uw, rgb(0,0,0))\" transform=\"translate(7 7)\" width=\"10px\"/></svg>';const getProps=({color,height,id,width,width1,...props})=>{return{...props,JEeZYcamG:width1??props.JEeZYcamG??2,P_DcoRcrY:color??props.P_DcoRcrY??\"rgb(0, 0, 0)\"};};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const{style,className,layoutId,variant,P_DcoRcrY,JEeZYcamG,...restProps}=getProps(props);const href=useSVGTemplate(\"1475982494\",svg);return /*#__PURE__*/_jsx(SVG,{...restProps,className:cx(\"framer-HfmfX\",className),layoutId:layoutId,ref:ref,role:\"presentation\",style:{\"--1m973uw\":P_DcoRcrY,\"--js9iwy\":JEeZYcamG,...style},viewBox:\"0 0 24 24\",children:/*#__PURE__*/_jsx(\"use\",{href:href})});});const css=[`.framer-HfmfX { -webkit-mask: ${mask}; aspect-ratio: 1; display: block; mask: ${mask}; width: 24px; }`];/**\n * This is a generated Framer component.\n * @framerIntrinsicWidth 24\n * @framerIntrinsicHeight 24\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n * @framerVariables {\"P_DcoRcrY\":\"color\",\"JEeZYcamG\":\"width1\"}\n * @framerImmutableVariables true\n * @framerVector {\"name\":\"Arrow Up Right\",\"color\":{\"type\":\"variable\",\"value\":\"1m973uw\"},\"set\":{\"localId\":\"vectorSet/ZsiCCGPvG\",\"id\":\"ZsiCCGPvG\",\"moduleId\":\"Y7SpbVH16cWqMhj75z1M\"}}\n */const Icon=withCSS(Component,css,\"framer-HfmfX\");Icon.displayName=\"Arrow Up Right\";export default Icon;addPropertyControls(Icon,{P_DcoRcrY:{defaultValue:\"rgb(0, 0, 0)\",hidden:false,title:\"Color\",type:ControlType.Color},JEeZYcamG:{defaultValue:2,displayStepper:true,hidden:false,max:16,min:1,title:\"Width\",type:ControlType.Number}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Icon\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"24\",\"framerVector\":\"{\\\"name\\\":\\\"Arrow Up Right\\\",\\\"color\\\":{\\\"type\\\":\\\"variable\\\",\\\"value\\\":\\\"1m973uw\\\"},\\\"set\\\":{\\\"localId\\\":\\\"vectorSet/ZsiCCGPvG\\\",\\\"id\\\":\\\"ZsiCCGPvG\\\",\\\"moduleId\\\":\\\"Y7SpbVH16cWqMhj75z1M\\\"}}\",\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerVariables\":\"{\\\"P_DcoRcrY\\\":\\\"color\\\",\\\"JEeZYcamG\\\":\\\"width1\\\"}\",\"framerIntrinsicWidth\":\"24\",\"framerImmutableVariables\":\"true\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";/**\n * View Project Button\n *\n * Pill-shaped outline button. On hover a fill slides up from the bottom and\n * the label color swaps. Visual only by design: wrap the instance in a Framer\n * Link so navigation runs through Framer's router (internal page paths resolve\n * correctly in Preview and on the published site).\n *\n * @framerIntrinsicWidth 170\n * @framerIntrinsicHeight 40\n *\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n */export default function ViewProjectButton(props){const{label=\"View project\",barHeight=40,fontSize=19,paddingX=26,borderColor=\"#000000\",borderWidth=1.45,textColor=\"#000000\",hoverTextColor=\"#FFFFFF\",fillColor=\"#000000\",style}=props;const[hover,setHover]=useState(false);const h=typeof barHeight===\"number\"?barHeight:parseFloat(String(barHeight))||40;return /*#__PURE__*/_jsxs(\"div\",{onMouseEnter:()=>setHover(true),onMouseLeave:()=>setHover(false),style:{...style,position:\"relative\",display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",height:h,paddingLeft:paddingX,paddingRight:paddingX,boxSizing:\"border-box\",width:\"max-content\",border:`${borderWidth}px solid ${borderColor}`,borderRadius:999,background:\"transparent\",overflow:\"hidden\",cursor:\"pointer\",WebkitTapHighlightColor:\"transparent\"},children:[/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":\"true\",style:{position:\"absolute\",left:0,right:0,bottom:0,height:\"100%\",background:fillColor,transform:hover?\"translateY(0%)\":\"translateY(101%)\",transition:\"transform 0.5s cubic-bezier(0.4, 0, 0, 1)\",zIndex:0}}),/*#__PURE__*/_jsx(\"span\",{style:{position:\"relative\",zIndex:1,fontFamily:'\"Universal Sans Display\", \"UniversalSans\", \"Inter\", -apple-system, sans-serif',fontSize,fontWeight:500,lineHeight:1,letterSpacing:\"0em\",whiteSpace:\"nowrap\",color:hover?hoverTextColor:textColor,transition:\"color 0.4s cubic-bezier(0.4, 0, 0, 1)\"},children:label})]});}addPropertyControls(ViewProjectButton,{label:{type:ControlType.String,title:\"Label\",defaultValue:\"View project\"},barHeight:{type:ControlType.Number,title:\"Height\",defaultValue:40,min:24,max:80,step:1,unit:\"px\"},fontSize:{type:ControlType.Number,title:\"Text Size\",defaultValue:19,min:10,max:40,step:1,unit:\"px\"},paddingX:{type:ControlType.Number,title:\"Side Padding\",defaultValue:26,min:0,max:64,step:1,unit:\"px\"},borderColor:{type:ControlType.Color,title:\"Border\",defaultValue:\"#000000\"},borderWidth:{type:ControlType.Number,title:\"Border Width\",defaultValue:1.45,min:0,max:6,step:.05,unit:\"px\"},textColor:{type:ControlType.Color,title:\"Text\",defaultValue:\"#000000\"},hoverTextColor:{type:ControlType.Color,title:\"Text (Hover)\",defaultValue:\"#FFFFFF\"},fillColor:{type:ControlType.Color,title:\"Fill (Hover)\",defaultValue:\"#000000\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ViewProjectButton\",\"slots\":[],\"annotations\":{\"framerIntrinsicHeight\":\"40\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"auto\",\"framerIntrinsicWidth\":\"170\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ViewProjectButton.map"],"mappings":"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"}