{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/aRfNfcaxMH2II1hiNqfA/rGoh0Sdmep850EXp9IMl/Rating.js"],
  "sourcesContent": ["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight any\n */export default function Rating(props){const{mode}=props;let{filledStar,emptyStar}=props;const sizeString=`${props.size}px`;if(mode==\"default\"){filledStar=/*#__PURE__*/_jsx(\"div\",{style:{width:sizeString,height:sizeString,color:props.filledColor},children:starSvg(sizeString,props.filledColor)});emptyStar=/*#__PURE__*/_jsx(\"div\",{style:{width:sizeString,height:sizeString,color:props.emptyColor},children:starSvg(sizeString,props.emptyColor)});}let stars=[];let filledStarCount=Math.min(props.totalStars,Math.floor(props.value));for(let i=0;i<filledStarCount;i++){// Add filled star\nstars.push(filledStar);}if(stars.length<props.totalStars&&props.value%1!=0){// Add partially filled star\nconst percent=props.value%1*100;const maskFilled=`linear-gradient(to right, white 0 ${percent}%, transparent ${percent}% 100%)`;const maskEmpty=`linear-gradient(to right, transparent 0 ${percent}%, white ${percent}% 100%)`;stars.push(/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{WebkitMaskImage:maskFilled,maskImage:maskFilled},children:filledStar}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,WebkitMaskImage:maskEmpty,maskImage:maskEmpty},children:emptyStar})]}));}for(let i=stars.length;i<props.totalStars;i++){// Add empty star\nstars.push(emptyStar);}return /*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",flexDirection:\"row\",gap:props.gap},children:stars});}addPropertyControls(Rating,{mode:{type:ControlType.Enum,defaultValue:\"default\",options:[\"default\",\"custom\"],optionTitles:[\"Default\",\"Custom\"],displaySegmentedControl:true},filledStar:{type:ControlType.ComponentInstance,title:\"Filled\",hidden(props){return props.mode!==\"custom\";}},emptyStar:{type:ControlType.ComponentInstance,title:\"Empty\",hidden(props){return props.mode!==\"custom\";}},filledColor:{type:ControlType.Color,defaultValue:\"#FFB92E\",title:\"Filled\",hidden(props){return props.mode!==\"default\";}},emptyColor:{type:ControlType.Color,defaultValue:\"#EBEBEB\",title:\"Empty\",hidden(props){return props.mode!==\"default\";}},size:{type:ControlType.Number,defaultValue:24,min:1,step:1,hidden(props){return props.mode!==\"default\";}},gap:{type:ControlType.Number,defaultValue:4,min:0},value:{type:ControlType.Number,defaultValue:3.5,min:0,max:100,step:.1,displayStepper:true},totalStars:{type:ControlType.Number,defaultValue:5,min:1,max:100,step:1,displayStepper:true}});function starSvg(size,color){return /*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",viewBox:\"0 0 40 40\",width:size,height:size,children:/*#__PURE__*/_jsx(\"path\",{d:\"M 18.097 2.289 C 18.693 0.441 21.307 0.441 21.903 2.289 L 25.136 12.312 C 25.403 13.14 26.174 13.7 27.044 13.698 L 37.575 13.675 C 39.517 13.671 40.325 16.158 38.751 17.296 L 30.218 23.467 C 29.513 23.977 29.219 24.884 29.489 25.71 L 32.765 35.719 C 33.37 37.565 31.254 39.101 29.686 37.957 L 21.179 31.748 C 20.477 31.235 19.523 31.235 18.821 31.748 L 10.314 37.957 C 8.746 39.101 6.63 37.565 7.235 35.719 L 10.511 25.71 C 10.781 24.884 10.487 23.977 9.782 23.467 L 1.249 17.296 C -0.325 16.158 0.483 13.671 2.425 13.675 L 12.956 13.698 C 13.826 13.7 14.597 13.14 14.864 12.312 Z\",fill:color})});}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Rating\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any\",\"framerSupportedLayoutWidth\":\"any\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Rating.map"],
  "mappings": "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",
  "names": ["Rating", "props", "mode", "filledStar", "emptyStar", "sizeString", "p", "starSvg", "stars", "filledStarCount", "i", "percent", "maskFilled", "maskEmpty", "u", "addPropertyControls", "ControlType", "size", "color"]
}
