{"version":3,"file":"DashLine.D4Uez4oV.mjs","names":["React.useContext","React.useMemo","React.Fragment","useRef","React.useId","useRef"],"sources":["https:/framerusercontent.com/modules/2QSgB3AS8jKJKehuVBy8/xfpT6bjCQnMcQVf3SR30/hM3bUjV37.js","https:/framerusercontent.com/modules/KfRtsSxv2OAHs6Smx4z2/h8rXf2mKcRmaNrCkGYHZ/DashLine.js"],"sourcesContent":["// Generated by Framer (9aabefb)\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const serializationHash=\"framer-pH1Fn\";const variantClassNames={Dq6zHbal9:\"framer-v-3fwfwr\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const Variants=motion.create(React.Fragment);const getProps=({color,height,id,width,...props})=>{return{...props,EMurlhm1K:color??props.EMurlhm1K??\"var(--token-c4993753-6e13-4198-95ae-6ce2b86fa5f4, rgb(82, 82, 82))\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,EMurlhm1K,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({defaultVariant:\"Dq6zHbal9\",ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsxs(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-3fwfwr\",className,classNames),\"data-framer-name\":\"Default\",layoutDependency:layoutDependency,layoutId:\"Dq6zHbal9\",ref:refBinding,style:{...style},children:[/*#__PURE__*/_jsx(motion.div,{className:\"framer-1qkt9pu\",\"data-framer-name\":\"Vertical\",layoutDependency:layoutDependency,layoutId:\"GDiLT5UNP\",style:{backgroundColor:EMurlhm1K}}),/*#__PURE__*/_jsx(motion.div,{className:\"framer-17wesev\",\"data-framer-name\":\"Horizontal\",layoutDependency:layoutDependency,layoutId:\"DvkjNEG79\",style:{backgroundColor:EMurlhm1K,rotate:90}})]})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-pH1Fn.framer-kjf3wv, .framer-pH1Fn .framer-kjf3wv { display: block; }\",\".framer-pH1Fn.framer-3fwfwr { height: 10px; overflow: var(--overflow-clip-fallback, clip); position: relative; width: 10px; }\",\".framer-pH1Fn .framer-1qkt9pu, .framer-pH1Fn .framer-17wesev { flex: none; height: 2px; left: 0px; overflow: var(--overflow-clip-fallback, clip); position: absolute; right: 0px; top: calc(50.00000000000002% - 2px / 2); }\"];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 10\n * @framerIntrinsicWidth 10\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerVariables {\"EMurlhm1K\":\"color\"}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerhM3bUjV37=withCSS(Component,css,\"framer-pH1Fn\");export default FramerhM3bUjV37;FramerhM3bUjV37.displayName=\"Divider/Plus\";FramerhM3bUjV37.defaultProps={height:10,width:10};addPropertyControls(FramerhM3bUjV37,{EMurlhm1K:{defaultValue:'var(--token-c4993753-6e13-4198-95ae-6ce2b86fa5f4, rgb(82, 82, 82)) /* {\"name\":\"Grey 2\"} */',title:\"Color\",type:ControlType.Color}});addFonts(FramerhM3bUjV37,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerhM3bUjV37\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerAutoSizeImages\":\"true\",\"framerVariables\":\"{\\\"EMurlhm1K\\\":\\\"color\\\"}\",\"framerIntrinsicWidth\":\"10\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerComponentViewportWidth\":\"true\",\"framerColorSyntax\":\"true\",\"framerImmutableVariables\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerIntrinsicHeight\":\"10\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./hM3bUjV37.map","// Dash line component with customizable style, orientation, and spacing\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";import{motion,useInView}from\"framer-motion\";import{useRef}from\"react\";/**\n * @framerDisableUnlink\n * @framerIntrinsicWidth 200\n * @framerIntrinsicHeight 20\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */export default function DashLine(props){const{orientation=\"horizontal\",dashLength=10,gapLength=5,thickness=2,color=\"#000000\",animationDirectionHorizontal=\"forward\",animationDirectionVertical=\"forward\",transition}=props;const ref=useRef(null);const isInView=useInView(ref,{once:true,amount:.3});const isCanvas=RenderTarget.current()===RenderTarget.canvas;const shouldAnimate=!isCanvas;const isHorizontal=orientation===\"horizontal\";const animationDirection=isHorizontal?animationDirectionHorizontal:animationDirectionVertical;// Check if component is auto-sized\nconst isAutoWidth=!props.style?.width||props.style.width!==\"100%\";const isAutoHeight=!props.style?.height||props.style.height!==\"100%\";// Set minimum dimensions for auto-sized components\nconst minWidth=isHorizontal?50:Math.max(thickness,5);const minHeight=isHorizontal?Math.max(thickness,5):50;// Animation variants for single direction\nconst getAnimationVariants=()=>{if(animationDirection===\"centerOutward\")return{};const isForward=animationDirection===\"forward\";if(isHorizontal){// Horizontal: forward = left to right, backward = right to left\nreturn{hidden:{clipPath:isForward?\"inset(0 100% 0 0)\":\"inset(0 0 0 100%)\"},visible:{clipPath:\"inset(0 0 0 0)\",transition:transition||{duration:.8,ease:\"easeOut\"}}};}else{// Vertical: forward = top to bottom, backward = bottom to top\nreturn{hidden:{clipPath:isForward?\"inset(0 0 100% 0)\":\"inset(100% 0 0 0)\"},visible:{clipPath:\"inset(0 0 0 0)\",transition:transition||{duration:.8,ease:\"easeOut\"}}};}};// Center outward animation variants\nconst centerOutwardVariants={hidden:{clipPath:isHorizontal?\"inset(0 50% 0 50%)\":\"inset(50% 0 50% 0)\"},visible:{clipPath:\"inset(0 0 0 0)\",transition:transition||{duration:.8,ease:\"easeOut\"}}};const dashStyle={width:isHorizontal?\"100%\":`${thickness}px`,height:isHorizontal?`${thickness}px`:\"100%\",background:`repeating-linear-gradient(\n            ${isHorizontal?\"to right\":\"to bottom\"},\n            ${color} 0px,\n            ${color} ${dashLength}px,\n            transparent ${dashLength}px,\n            transparent ${dashLength+gapLength}px\n        )`};return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...props.style,position:\"relative\",width:isAutoWidth?`${minWidth}px`:\"100%\",height:isAutoHeight?`${minHeight}px`:\"100%\",minWidth:isAutoWidth?`${minWidth}px`:undefined,minHeight:isAutoHeight?`${minHeight}px`:undefined,display:\"flex\",alignItems:\"center\",justifyContent:\"center\"},children:/*#__PURE__*/_jsx(motion.div,{style:dashStyle,variants:animationDirection===\"centerOutward\"?centerOutwardVariants:getAnimationVariants(),initial:shouldAnimate?\"hidden\":\"visible\",animate:shouldAnimate&&isInView?\"visible\":shouldAnimate?\"hidden\":\"visible\"})});}addPropertyControls(DashLine,{orientation:{type:ControlType.Enum,title:\"Orientation\",options:[\"horizontal\",\"vertical\"],optionTitles:[\"↔\",\"↕\"],defaultValue:\"horizontal\",displaySegmentedControl:true},animationDirectionHorizontal:{type:ControlType.Enum,title:\"Animation\",options:[\"forward\",\"backward\",\"centerOutward\"],optionTitles:[\"Left to Right\",\"Right to Left\",\"Center\"],defaultValue:\"forward\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:props=>props.orientation===\"vertical\"},animationDirectionVertical:{type:ControlType.Enum,title:\"Animation\",options:[\"forward\",\"backward\",\"centerOutward\"],optionTitles:[\"Top to Bottom\",\"Bottom to Top\",\"Center\"],defaultValue:\"forward\",displaySegmentedControl:true,segmentedControlDirection:\"vertical\",hidden:props=>props.orientation===\"horizontal\"},transition:{type:ControlType.Transition,title:\"Transition\"},dashLength:{type:ControlType.Number,title:\"Dash Length\",defaultValue:10,min:1,max:50,step:1,unit:\"px\",displayStepper:true},gapLength:{type:ControlType.Number,title:\"Gap Length\",defaultValue:5,min:1,max:50,step:1,unit:\"px\",displayStepper:true},thickness:{type:ControlType.Number,title:\"Thickness\",defaultValue:2,min:1,max:20,step:1,unit:\"px\",displayStepper:true},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\",description:\"More resources at [Velox Themes](https://veloxthemes.com)\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"DashLine\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerIntrinsicHeight\":\"20\",\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerDisableUnlink\":\"* @framerIntrinsicWidth 200\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./DashLine.map"],"mappings":"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"}