{"version":3,"file":"TextClamp.CbIPHGPW.mjs","names":["useMemo"],"sources":["https:/framerusercontent.com/modules/19fVsk2qPShO0fNr7noL/yQo5TkFImnQlUZa71V4Q/TextClamp.js"],"sourcesContent":["// Responsive text component with font clamp, color, and full font controls\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useMemo}from\"react\";/**\n * TextClamp\n *\n * @framerSupportedLayoutWidth auto\n * @framerSupportedLayoutHeight auto\n */export default function TextClamp(props){const{text,color,minFontSize,maxFontSize,vw,font,style}=props;// Clamp formula: clamp(min, calc, max)\nconst fontSize=useMemo(()=>{return`clamp(${minFontSize}px, ${vw}vw, ${maxFontSize}px)`;},[minFontSize,maxFontSize,vw]);// Determine width style for Framer layout\nlet widthStyle={};if(style?.width===\"fit-content\"){widthStyle={width:\"fit-content\",minWidth:0,maxWidth:\"100%\"};}else if(style?.width===\"max-content\"){widthStyle={width:\"max-content\",minWidth:0,maxWidth:\"100%\"};}else if(style?.width===\"100%\"){widthStyle={width:\"100%\",minWidth:0,maxWidth:\"100%\"};}else if(style?.width){widthStyle={width:style.width};}return /*#__PURE__*/_jsx(\"span\",{style:{color,fontSize,fontFamily:font.fontFamily,fontWeight:font.fontWeight,fontStyle:font.fontStyle,lineHeight:font.lineHeight,letterSpacing:font.letterSpacing,textAlign:font.textAlign,...widthStyle,...style},children:text});}addPropertyControls(TextClamp,{text:{type:ControlType.String,title:\"Text\",defaultValue:\"Responsive Text\"},color:{type:ControlType.Color,title:\"Color\",defaultValue:\"#000000\"},minFontSize:{type:ControlType.Number,title:\"Min Size\",defaultValue:16,min:8,max:100,unit:\"px\",displayStepper:true},maxFontSize:{type:ControlType.Number,title:\"Max Size\",defaultValue:48,min:16,max:200,unit:\"px\",displayStepper:true},vw:{type:ControlType.Number,title:\"VW\",defaultValue:2,min:0,max:10,step:.1,unit:\"vw\"},font:{type:ControlType.Font,title:\"Font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:24,variant:\"Regular\",letterSpacing:\"0em\",lineHeight:\"1.2em\",textAlign:\"left\"}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"TextClamp\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"auto\",\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./TextClamp.map"],"mappings":"kQAMG,SAAwB,EAAU,EAAM,CAAC,GAAK,CAAC,OAAK,QAAM,cAAY,cAAY,KAAG,OAAK,SAAO,EAC9F,EAASA,MAAmB,SAAS,EAAY,MAAM,EAAG,MAAM,EAAY,KAAO,CAAC,EAAY,EAAY,EAAG,CAAC,CAClH,EAAW,EAAE,CAA6U,OAAzU,GAAO,QAAQ,cAAe,EAAW,CAAC,MAAM,cAAc,SAAS,EAAE,SAAS,OAAO,CAAU,GAAO,QAAQ,cAAe,EAAW,CAAC,MAAM,cAAc,SAAS,EAAE,SAAS,OAAO,CAAU,GAAO,QAAQ,OAAQ,EAAW,CAAC,MAAM,OAAO,SAAS,EAAE,SAAS,OAAO,CAAU,GAAO,QAAO,EAAW,CAAC,MAAM,EAAM,MAAM,EAAsB,EAAK,OAAO,CAAC,MAAM,CAAC,QAAM,WAAS,WAAW,EAAK,WAAW,WAAW,EAAK,WAAW,UAAU,EAAK,UAAU,WAAW,EAAK,WAAW,cAAc,EAAK,cAAc,UAAU,EAAK,UAAU,GAAG,EAAW,GAAG,EAAM,CAAC,SAAS,EAAK,CAAC,kBAPrjB,IAAoD,IAA2B,CAOwe,EAAoB,EAAU,CAAC,KAAK,CAAC,KAAK,EAAY,OAAO,MAAM,OAAO,aAAa,kBAAkB,CAAC,MAAM,CAAC,KAAK,EAAY,MAAM,MAAM,QAAQ,aAAa,UAAU,CAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,KAAK,KAAK,eAAe,GAAK,CAAC,YAAY,CAAC,KAAK,EAAY,OAAO,MAAM,WAAW,aAAa,GAAG,IAAI,GAAG,IAAI,IAAI,KAAK,KAAK,eAAe,GAAK,CAAC,GAAG,CAAC,KAAK,EAAY,OAAO,MAAM,KAAK,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,GAAG,KAAK,KAAK,CAAC,KAAK,CAAC,KAAK,EAAY,KAAK,MAAM,OAAO,SAAS,WAAW,gBAAgB,aAAa,aAAa,CAAC,SAAS,GAAG,QAAQ,UAAU,cAAc,MAAM,WAAW,QAAQ,UAAU,OAAO,CAAC,CAAC,CAAC"}