{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/SCy7FLdHzkNZj7inEGxN/cSvfxNpnMBWJ6BQNiN23/SearchBar.js"],
  "sourcesContent": ["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useState,useRef}from\"react\";import{Border,borderPropertyControl,fillProp,createBackground,superfieldsId,generateInstanceId}from\"https://framerusercontent.com/modules/FZjYlw33eNo8pxLbSFLX/YrTe3IQtil6BX07Rgpao/SuperfieldsShared.js\";import useSuperfieldsStore from\"https://framerusercontent.com/modules/OoGHZMzWDzm2mNN7bmeR/quqdohq6i4dLZg5wuqIc/Store.js\";/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 500\n * @framerDisableUnlink\n */export default function SearchBar(props){const{superfieldsId,placeholderColor,searchIcon,xButton}=props;const instanceId=generateInstanceId();const inputRef=useRef(null);const[focused,setFocused]=useState(false);const[search,totalItems,setSearch]=useSuperfieldsStore(superfieldsId,state=>[state.search,state.totalItems,state.setSearch]);function onXClick(){setSearch(\"\");}// Top, right, bottom, left\nconst paddingValues=parsePadding(props.padding);return /*#__PURE__*/_jsxs(\"div\",{\"data-superfields\":true,id:instanceId,style:{position:\"relative\",...createBackground(props.fill),color:props.fontColor,borderRadius:props.radius,boxShadow:props.shadows,display:\"flex\",flexDirection:\"row\",alignItems:\"center\",padding:props.padding,gap:props.gap,cursor:\"text\",overflow:\"hidden\",...props.font,...props.style},onClick:()=>{var _inputRef_current;(_inputRef_current=inputRef.current)===null||_inputRef_current===void 0?void 0:_inputRef_current.focus();},children:[searchIcon&&/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:searchIcon.size,height:searchIcon.size,viewBox:\"0 0 24 24\",fill:\"none\",stroke:searchIcon.color,\"stroke-width\":searchIcon.lineWidth,\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",style:{opacity:searchIcon.opacity,display:\"block\",pointerEvents:\"none\"},children:[/*#__PURE__*/_jsx(\"path\",{d:\"M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M21 21l-6 -6\"})]}),/*#__PURE__*/_jsx(\"input\",{ref:inputRef,type:\"text\",style:{border:\"none\",color:props.fontColor,background:\"none\",...props.font,...props.style},placeholder:props.placeholderText.replace(\"[items]\",String(totalItems!==null&&totalItems!==void 0?totalItems:0)),autoFocus:props.autoFocus,value:search!==null&&search!==void 0?search:\"\",onChange:event=>{setSearch(event.target.value);},onFocus:()=>setFocused(true),onBlur:()=>setFocused(false)}),search&&xButton&&/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:xButton.size,display:\"flex\",alignItems:\"center\",alignSelf:\"stretch\"},children:[/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:xButton.size,height:xButton.size,viewBox:\"0 0 24 24\",fill:\"none\",stroke:xButton.color,\"stroke-width\":xButton.lineWidth,\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",style:{display:\"block\",opacity:xButton.opacity},children:[/*#__PURE__*/_jsx(\"path\",{d:\"M18 6l-12 12\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M6 6l12 12\"})]}),/*#__PURE__*/_jsx(\"button\",{style:{position:\"absolute\",left:-props.gap,top:-paddingValues[0],right:-paddingValues[1],bottom:-paddingValues[2],cursor:\"pointer\",background:\"none\",border:\"none\"},onClick:onXClick,onFocus:()=>setFocused(true),onBlur:()=>setFocused(false)})]}),/*#__PURE__*/_jsx(Border,{...props.border}),/*#__PURE__*/_jsx(Border,{...props.focus,animate:{opacity:focused?1:0}}),/*#__PURE__*/_jsx(\"style\",{children:`\n                #${instanceId} input::placeholder { color: ${placeholderColor}; user-select: none; }\n                #${instanceId} input::-webkit-input-placeholder { color: ${placeholderColor}; user-select: none; }\n                #${instanceId} input::-moz-placeholder { color: ${placeholderColor}; user-select: none; }\n                #${instanceId} input:-ms-input-placeholder { color: ${placeholderColor}; user-select: none; }\u0192\n                #${instanceId} input:-moz-placeholder { color: ${placeholderColor}; user-select: none; }\n                #${instanceId} input:focus { outline: none; }\n            `})]});}SearchBar.displayName=\"Search Bar\";addPropertyControls(SearchBar,{...superfieldsId(),placeholderText:{type:ControlType.String,defaultValue:\"Search [items] items...\",title:\"Placeholder\",description:\"*[items]*: number of CMS items\"},autoFocus:{type:ControlType.Boolean,defaultValue:false,title:\"Auto-Focus\"},fill:fillProp({color:\"#EFEFEF\"}),fontColor:{type:ControlType.Color,defaultValue:\"#000\"},placeholderColor:{type:ControlType.Color,defaultValue:\"rgba(0, 0, 0, 0.5)\"},font:{type:ControlType.Font,controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{fontSize:14,lineHeight:1.4}},searchIcon:{type:ControlType.Object,optional:true,defaultValue:{color:\"$000\",size:16,lineWidth:2.5,opacity:.5},controls:{color:{type:ControlType.Color,defaultValue:\"$000\"},size:{type:ControlType.Number,defaultValue:16,min:1,step:1},lineWidth:{type:ControlType.Number,defaultValue:2.5,min:.1,max:5,step:.1},opacity:{type:ControlType.Number,defaultValue:1,min:0,max:1,step:.01}}},xButton:{type:ControlType.Object,optional:true,defaultValue:{color:\"#000\",size:14,lineWidth:2.5,opacity:.5},controls:{color:{type:ControlType.Color,defaultValue:\"#000\"},size:{type:ControlType.Number,defaultValue:14,min:1,step:1},lineWidth:{type:ControlType.Number,defaultValue:2.5,min:.1,max:5,step:.1},opacity:{type:ControlType.Number,defaultValue:.5,min:0,max:1,step:.01}}},gap:{type:ControlType.Number,defaultValue:8,min:0,step:1},padding:{type:ControlType.Padding,defaultValue:\"8px 12px 8px 12px\"},radius:{type:ControlType.BorderRadius,defaultValue:\"8px\"},border:borderPropertyControl(),shadows:{type:ControlType.BoxShadow},focus:{type:ControlType.Object,optional:true,defaultValue:{color:\"#0075FF\",width:2,style:\"solid\"},buttonTitle:\"Border\",controls:{color:{type:ControlType.Color,defaultValue:\"#0075FF\",title:\"Color\"},width:{type:ControlType.FusedNumber,defaultValue:2,toggleKey:\"widthIsMixed\",toggleTitles:[\"All\",\"Individual\"],valueKeys:[\"widthTop\",\"widthRight\",\"widthBottom\",\"widthLeft\"],valueLabels:[\"T\",\"R\",\"B\",\"L\"],min:0},style:{type:ControlType.Enum,defaultValue:\"solid\",options:[\"solid\",\"dashed\",\"dotted\",\"double\"],optionTitles:[\"Solid\",\"Dashed\",\"Dotted\",\"Double\"]},transition:{type:ControlType.Transition,defaultValue:{type:\"spring\",duration:.2,bounce:0}}}}});function parsePadding(padding){// Split the input string by spaces and convert each to an integer\nconst values=padding.trim().split(/\\s+/).map(val=>parseInt(val,10));// If only one value is provided, replicate it four times\nif(values.length===1){return[values[0],values[0],values[0],values[0]];}else if(values.length===4){return values;}else{throw new Error(\"Invalid padding input. Provide either one or four padding values.\");}}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"SearchBar\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"fixed\",\"framerSupportedLayoutHeight\":\"any\",\"framerContractVersion\":\"1\",\"framerIntrinsicWidth\":\"500\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SearchBar.map"],
  "mappings": "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",
  "names": ["SearchBar", "props", "superfieldsId", "placeholderColor", "searchIcon", "xButton", "instanceId", "generateInstanceId", "inputRef", "pe", "focused", "setFocused", "ye", "search", "totalItems", "setSearch", "Store_default", "state", "onXClick", "paddingValues", "parsePadding", "createBackground", "_inputRef_current", "p", "event", "Border", "addPropertyControls", "ControlType", "fillProp", "borderPropertyControl", "padding", "values", "val"]
}
