{"version":3,"file":"AnimatedLine.DilxUncC.mjs","names":["useRef"],"sources":["https:/framerusercontent.com/modules/td5SsO6OSq4EAEQfQKeZ/LPWWLCX76xHlMtahJQ1N/AnimatedLine.js"],"sourcesContent":["// 1px horizontal line that animates from left to right when entering viewport, with customizable color, speed, delay, direction, and easing\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{motion,useInView}from\"framer-motion\";import{useRef}from\"react\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";/**\n * Animated Horizontal Line\n *\n * @framerIntrinsicWidth 100\n * @framerIntrinsicHeight 5\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight fixed\n */export default function AnimatedLine(props){const{color,speed,delay,direction,easing,style}=props;const ref=useRef(null);const isInView=useInView(ref,{once:true,margin:\"-20% 0px\"});const isStatic=useIsStaticRenderer();// Animation direction\nconst transformOrigin=direction===\"left-to-right\"?\"left\":\"right\";// Height: always 1px (fixed), never use style.height for height\nreturn /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{width:\"100%\",height:5,minHeight:5,minWidth:5,position:\"relative\",...style},children:/*#__PURE__*/_jsx(motion.div,{style:{height:1,width:\"100%\",background:color,position:\"absolute\",left:0,top:\"50%\",transform:\"translateY(-50%)\",transformOrigin},initial:{scaleX:0},animate:isStatic?{scaleX:1}:isInView?{scaleX:1}:{scaleX:0},transition:{duration:speed,delay:delay,// Use spring only for bounce/anticipate, otherwise use tween\ntype:[\"bounceIn\",\"bounceOut\",\"bounceInOut\",\"anticipate\"].includes(easing)?\"spring\":\"tween\",ease:easing}})});}addPropertyControls(AnimatedLine,{color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"},speed:{type:ControlType.Number,title:\"Speed (s)\",defaultValue:.7,min:.1,max:5,step:.05,unit:\"s\"},delay:{type:ControlType.Number,title:\"Delay (s)\",defaultValue:0,min:0,max:3,step:.05,unit:\"s\"},direction:{type:ControlType.Enum,title:\"Direction\",options:[\"left-to-right\",\"right-to-left\"],optionTitles:[\"Left to Right\",\"Right to Left\"],defaultValue:\"left-to-right\",displaySegmentedControl:true},easing:{type:ControlType.Enum,title:\"Easing\",options:[\"easeOut\",\"easeIn\",\"easeInOut\",\"linear\"],optionTitles:[\"Ease Out\",\"Ease In\",\"Ease InOut\",\"Linear\"],defaultValue:\"easeOut\",displaySegmentedControl:false,hidden:false}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"AnimatedLine\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerSupportedLayoutHeight\":\"fixed\",\"framerIntrinsicWidth\":\"100\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"5\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./AnimatedLine.map"],"mappings":"0OASG,SAAwB,EAAa,EAAM,CAAC,GAAK,CAAC,QAAM,QAAM,QAAM,YAAU,SAAO,SAAO,EAAY,EAAIA,EAAO,KAAK,CAAO,EAAS,EAAU,EAAI,CAAC,KAAK,GAAK,OAAO,WAAW,CAAC,CAAO,EAAS,GAAqB,CACtN,EAAgB,IAAY,gBAAgB,OAAO,QACzD,OAAoB,EAAK,MAAM,CAAK,MAAI,MAAM,CAAC,MAAM,OAAO,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,WAAW,GAAG,EAAM,CAAC,SAAsB,EAAK,EAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,OAAO,WAAW,EAAM,SAAS,WAAW,KAAK,EAAE,IAAI,MAAM,UAAU,mBAAmB,kBAAgB,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,QAAQ,GAAoB,EAAX,CAAC,OAAO,EAAE,CAAqB,CAAC,OAAO,EAAE,CAAC,WAAW,CAAC,SAAS,EAAY,QACjZ,KAAK,CAAC,WAAW,YAAY,cAAc,aAAa,CAAC,SAAS,EAAO,CAAC,SAAS,QAAQ,KAAK,EAAO,CAAC,CAAC,CAAC,CAAC,kBAXhE,IAA4C,IAA0B,IAAwE,CAW5E,EAAoB,EAAa,CAAC,MAAM,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,aAAa,UAAU,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,GAAG,IAAI,GAAG,IAAI,EAAE,KAAK,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,EAAY,OAAO,MAAM,YAAY,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC,KAAK,EAAY,KAAK,MAAM,YAAY,QAAQ,CAAC,gBAAgB,gBAAgB,CAAC,aAAa,CAAC,gBAAgB,gBAAgB,CAAC,aAAa,gBAAgB,wBAAwB,GAAK,CAAC,OAAO,CAAC,KAAK,EAAY,KAAK,MAAM,SAAS,QAAQ,CAAC,UAAU,SAAS,YAAY,SAAS,CAAC,aAAa,CAAC,WAAW,UAAU,aAAa,SAAS,CAAC,aAAa,UAAU,wBAAwB,GAAM,OAAO,GAAM,CAAC,CAAC"}