Socket
Socket
Sign inDemoInstall

@smastrom/react-rating

Package Overview
Dependencies
5
Maintainers
1
Versions
17
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.2.0 to 1.2.1

6

dist/index.js

@@ -243,3 +243,3 @@ import r, { useEffect as e, useLayoutEffect as t, useRef as n, useState as o, isValidElement as a, forwardRef as i, useMemo as s, useCallback as c, Fragment as l } from "react";

case "Space":
return r3.preventDefault(), h2 == null ? void 0 : h2(i3 ? 0 : e3 + 1);
return r3.preventDefault(), h2(i3 ? 0 : e3 + 1);
}

@@ -251,3 +251,3 @@ r3.preventDefault(), r3.stopPropagation();

return { onClick: (e2) => function(r3, e3) {
r3.stopPropagation(), h2 == null ? void 0 : h2(W2 || Q2 !== e3 ? e3 + 1 : 0);
r3.stopPropagation(), h2(W2 || Q2 !== e3 ? e3 + 1 : 0);
}(e2, r2), onMouseEnter: () => function(r3) {

@@ -282,3 +282,3 @@ g2(r3 + 1), vr2({ ...yr2, ...ir2(r3, true) });

}(), ...b }, P2.map((e2, t3) => {
return r.createElement(l, { key: e2 }, r.createElement("div", { className: `${v} ${yr2.dynamicClassNames[t3]}`, style: yr2.dynamicCssVars[t3], ...Tr2(t3), ...(o2 = t3, J2 ? { ...Zr2(o2), ...Pr2(o2), ...zr2(o2), onFocus: (r2) => Mr2(r2, o2), onBlur: (r2) => Er2(r2) } : {}) }, r.createElement(Nr, { ...qr2(t3) })), U2 && t3 === P2.length - 1 && r.createElement("div", { ...(n2 = t3 + 1, { className: S, role: "radio", "aria-label": O2, "aria-checked": 0 === q2, onClick: () => h2 == null ? void 0 : h2(0), onFocus: (r2) => {
return r.createElement(l, { key: e2 }, r.createElement("div", { className: `${v} ${yr2.dynamicClassNames[t3]}`, style: yr2.dynamicCssVars[t3], ...Tr2(t3), ...(o2 = t3, J2 ? { ...Zr2(o2), ...Pr2(o2), ...zr2(o2), onFocus: (r2) => Mr2(r2, o2), onBlur: (r2) => Er2(r2) } : {}) }, r.createElement(Nr, { ...qr2(t3) })), U2 && t3 === P2.length - 1 && r.createElement("div", { ...(n2 = t3 + 1, { className: S, role: "radio", "aria-label": O2, "aria-checked": 0 === q2, onClick: () => h2(0), onFocus: (r2) => {
var _a;

@@ -285,0 +285,0 @@ Mr2(r2, n2), (_a = pr2.current) == null ? void 0 : _a.classList.add($);

@@ -1,1 +0,1 @@

!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],r):r((e="undefined"!=typeof globalThis?globalThis:e||self)["@smastrom/react-rating"]={},e.React)}(this,(function(e,r){"use strict";const t=(u=r)&&"object"==typeof u&&"default"in u?u:{default:u},n=e=>{},a="undefined"==typeof window?r.useEffect:r.useLayoutEffect,o=e=>"number"==typeof e&&e>0,s=e=>o(e)?e:0,i=e=>Math.round(100*e)/100,l=e=>Math.round(2*e)/2,c=e=>0===e?0:-1*i(e);var u;const f={},d="rr--focus-reset",m="rr--on",h="rr--off",p="rr--fx-colors",g="horizontal",b="vertical",y="svg",v="none",S="small",x="medium",C="large",k="colors",w="activeFillColor",$="activeBoxColor",B="activeBoxBorderColor",E="activeStrokeColor";function A({itemShapes:e,testId:n,itemStrokeWidth:o=0,orientation:s=g,hasHF:l=!1}){const u=o>0?-o/2:0,f=o>0?`${u} ${u}`:"0 0",d=r.useRef(null),m=r.useRef(null),[h,p]=r.useState(null);return a((()=>{if(l&&!m.current&&(m.current=`rr_hf_${(Math.random()+1).toString(36).substring(7)}`),d.current){const{width:e,height:r,x:t,y:n}=d.current.getBBox();if(((...e)=>e.every((e=>"number"==typeof e)))(e,r,t,n)){const a=`${f} ${i(e+o)} ${i(r+o)}`,s=`${c(t)} ${c(n)}`;p({viewBox:a,translateData:s})}}}),[e,o,l]),t.default.createElement("svg",{"aria-hidden":"true",className:"rr--svg",xmlns:"http://www.w3.org/2000/svg",viewBox:h?h.viewBox:"0 0 0 0",preserveAspectRatio:"xMidYMid meet",...o>0?{strokeWidth:o}:{},...n},l&&m.current&&t.default.createElement("defs",{},t.default.createElement("linearGradient",{id:m.current,...s===b?{gradientTransform:"rotate(90)"}:{}},t.default.createElement("stop",{className:"rr--svg-stop-1",offset:"50%"}),t.default.createElement("stop",{className:"rr--svg-stop-2",offset:"50%"}))),t.default.createElement("g",{ref:d,shapeRendering:"geometricPrecision",...function(){if(h){const e=`translate(${null==h?void 0:h.translateData})`;return"translate(0 0)"===e?{}:{transform:e}}return{transform:void 0}}(),...l?{fill:`url('#${m.current}')`}:{}},e))}function R(e,r,t){switch(r){case w:return e["--rr--fill-on-color"]=t,!0;case $:return e["--rr--box-on-color"]=t,!0;case B:return e["--rr--border-on-color"]=t,!0;case E:return e["--rr--stroke-on-color"]=t,!0}return!1}function M(e,r,t){if(!R(e,r,t))switch(r){case"inactiveFillColor":e["--rr--fill-off-color"]=t;break;case"inactiveBoxColor":e["--rr--box-off-color"]=t;break;case"inactiveBoxBorderColor":e["--rr--border-off-color"]=t;break;case"inactiveStrokeColor":e["--rr--stroke-off-color"]=t}}function N(e,r,t){const n={};let a;for(const[o,s]of Object.entries(e))R(n,o,s[r]);return t?(a=Array(r).fill({}),a.push(n)):a=Array(r+1).fill(n),a}const L=e=>`${e} ${p}`;function W(e,r,t){return Array.from({length:r},((r,n)=>e?n===t?m:h:n<=t?m:h))}function I(e,r,t){const n=Math.floor(l(e));return Array.from({length:r},((e,r)=>"box"===t?r>n?"rr--hf-box-off":r===n?"rr--hf-box-int":"rr--hf-box-on":r>n?"rr--hf-svg-off":"rr--hf-svg-on"))}function F(e,r){const t={};o(r)&&(t["--rr--border-width"]=`${r}px`);const n=Object.entries(e);if(n.length>0)for(const[a,o]of n)M(t,a,o);return t}const D=[w,$,E,B];function O(e,r,t=!1){return Array.from({length:e},((n,a)=>t&&r<0?a===e-1?0:-1:r<=0?0===a?0:-1:r>0?a===r?0:-1:void 0))}function T(e,r){return e.shouldRender=!1,e.reason=`[@smastrom/react-rating] - Nothing's returned from rendering. Reason: ${r}.`,e}const V="itemShapes is not a valid JSX element",j=t.default.createElement("polygon",{points:"25 9.02 16.4 7.75 12.46 0 8.59 7.79 0 9.14 6.21 15.23 4.85 23.81 12.55 19.79 20.3 23.74 18.85 15.17 25 9.02"}),H=t.default.createElement("path",{d:"M12.5,18.16l-7.73,5.61,2.95-9.08L0,9.07H9.55S12.5,0,12.5,0l2.95,9.07h9.55l-7.73,5.62,2.95,9.08-7.73-5.61Z"}),P=t.default.createElement("path",{d:"M112.46,57.88c-.23-.72-.88-1.22-1.63-1.27l-6.63-.46-2.45-6.19c-.27-.7-.95-1.16-1.7-1.16h0c-.75,0-1.42,.46-1.7,1.16l-2.5,6.23-6.58,.42c-.75,.05-1.4,.55-1.63,1.27-.24,.73,0,1.53,.58,2.02l5.07,4.28-1.51,5.92c-.21,.82,.1,1.69,.78,2.19,.66,.48,1.55,.5,2.24,.07l5.23-3.31h.02l5.63,3.56c.29,.19,.63,.29,.97,.29,1.02,0,1.83-.84,1.83-1.86,0-.16-.02-.31-.06-.47l-1.6-6.48,5.04-4.2c.59-.49,.82-1.29,.58-2.02Z"}),Z=t.default.createElement("path",{d:"M22.72,8.24h-6.68L13.97,1.88c-.81-2.51-2.13-2.51-2.95,0l-2.07,6.36H2.28c-2.63,0-3.04,1.25-.91,2.8l5.41,3.93-2.06,6.36c-.81,2.51,.25,3.28,2.39,1.73l5.41-3.93,5.41,3.93c2.13,1.55,3.2,.77,2.39-1.73l-2.07-6.36,5.41-3.93c2.13-1.55,1.72-2.8-.91-2.8Z"}),_=t.default.createElement("path",{d:"M11.58,.77c.51-1.02,1.33-1.02,1.84,0l2.34,4.73c.5,1.02,1.84,2,2.98,2.16l5.22,.76c1.13,.17,1.39,.95,.57,1.75l-3.78,3.68c-.82,.8-1.33,2.37-1.14,3.5l.89,5.2c.19,1.13-.48,1.61-1.49,1.08l-4.67-2.45c-1.01-.53-2.67-.53-3.68,0l-4.67,2.46c-1.01,.53-1.68,.05-1.49-1.08l.89-5.2c.19-1.13-.32-2.7-1.14-3.5L.48,10.17c-.82-.8-.56-1.58,.57-1.75l5.22-.76c1.13-.16,2.47-1.14,2.98-2.16L11.58,.77h0Z"}),q=t.default.createElement("path",{d:"M19.29,1.61c-2.15-2.15-5.63-2.15-7.78,0,0,0,0,0,0,0l-1.06,1.06-1.06-1.06C7.24-.54,3.76-.54,1.61,1.61-.54,3.76-.54,7.24,1.61,9.39l1.06,1.06,7.78,7.78,7.78-7.78,1.06-1.06c2.15-2.15,2.15-5.63,0-7.78,0,0,0,0,0,0Z"}),z={itemShapes:j,itemStrokeWidth:2,activeFillColor:"#ffb23f",inactiveFillColor:"#fff7ed",activeStrokeColor:"#e17b21",inactiveStrokeColor:"#eda76a"},G=r.forwardRef((({value:e,items:o=5,readOnly:i=!1,onChange:c=n,onHoverChange:u=n,onFocus:m=n,onBlur:h=n,isDisabled:w=!1,highlightOnlySelected:$=!1,orientation:B=g,spaceBetween:E=v,spaceInside:R=S,radius:M=v,transition:j=k,itemStyles:H=z,isRequired:P=!1,halfFillMode:Z=y,visibleLabelId:_,visibleItemLabelIds:q,invisibleLabel:G=(i?`Rated ${e} on ${o}`:"Rating"),invisibleItemLabels:J,resetLabel:K="No rating",id:U,className:X,style:Y},Q)=>{const ee=Array.from({length:o},((e,r)=>r+1)),re=i&&!Number.isInteger(e),te=re&&!$,ne=re&&$?Math.round(e):e,ae=!i&&!w,oe=ne>=.25,se="string"==typeof X?X:"",ie="box"===Z?"box":y,le=te&&(Re=ne,!Number.isInteger(l(Re))),ce=!P&&!i,ue=P?o:o+1,fe=te?function(e,r){const t=l(r);return Number.isInteger(t)?e.indexOf(t):Math.floor(t)}(ee,ne):ee.indexOf(ne),{staticColors:de,arrayColors:me,itemShapes:he,absoluteStrokeWidth:pe,absoluteBoxBorderWidth:ge}=r.useMemo((()=>{const{itemShapes:e,itemStrokeWidth:r,boxBorderWidth:t,...n}=H,a=function(e){const r={...e},t={},n=Object.entries(r);if(n.length>0)for(const[a,o]of n)if(Array.isArray(o)||"string"==typeof o){if(Array.isArray(o))for(const e of D)if(e===a){const e=o.filter((e=>"string"==typeof e));e.length>0&&(t[a]=e,delete r[a])}else delete r[a]}else delete r[a];return{arrayColors:t,staticColors:r}}(n);return{itemShapes:e,absoluteStrokeWidth:s(r),absoluteBoxBorderWidth:s(t),...a}}),[H]),be=Object.keys(me).length>0,ye=r.useCallback(((e,r)=>({dynamicClassNames:le?I(ne,o,ie):W($,o,e),dynamicCssVars:r&&be?N(me,e,$):[]})),[me,be,$,ie,le,o,ne]),ve=r.useCallback((()=>Ae(O(ue,fe,!P))),[fe,ue,P]),Se=r.useRef(!0),xe=r.useRef(!0),Ce=r.useRef(null),ke=r.useRef([]),we=r.useRef(!1),[$e,Be]=r.useState({staticCssVars:F(de,ge),...ye(fe,oe)}),[Ee,Ae]=r.useState((()=>ae?O(ue,fe,!P):[]));var Re;a((()=>{ae&&ke.current&&(we.current=function(e){return!!e&&"rtl"===getComputedStyle(e).getPropertyValue("direction")}(ke.current[0]))}),[ae]),r.useEffect((()=>{if(!Se.current)return Be({staticCssVars:F(de,ge),...ye(fe,oe)});Se.current=!1}),[de,ye,ge,fe,oe]),r.useEffect((()=>{if(!xe.current&&ae)return ve();xe.current=!1}),[ae,ve]);const{shouldRender:Me,reason:Ne}=function({items:e,itemShapes:t}){const n={shouldRender:!0,reason:""};if("number"!=typeof e||e<1||e>10)return T(n,"items is invalid");if(!t)return T(n,"itemStyles needs at least the property itemShapes set");if(!Array.isArray(t)&&!r.isValidElement(t))return T(n,V);if(Array.isArray(t)){if(t.length!==e)return T(n,"itemShapes length mismatch");if(!t.every((e=>r.isValidElement(e))))return T(n,V)}return n}({items:o,itemShapes:he});if(!Me)return console.error(Ne),null;function Le(e,r,t=(()=>{})){ke.current.some((r=>r===e.relatedTarget))?t():r()}function We(){u(0),ve()}function Ie(e){Le(e,(()=>{We()})),Be({...$e,...ye(fe,oe)})}function Fe(e){Le(e,(()=>{We(),h()}))}function De(e,r){const t=P||r!==ee.length?r+1:0;Le(e,(()=>{m(),u(t)}),(()=>{u(t)}))}function Oe(e){Ae(O(ue,e,!P)),ke.current[e].focus()}const Te=function({className:e,radius:r,readOnly:t,isDisabled:n,isDynamic:a,transition:o,orientation:s,absoluteBoxBorderWidth:i,absoluteStrokeWidth:l,spaceBetween:c,spaceInside:u}){const f=a?"rr--pointer":"",d=function(e){switch(e){case S:return"rr--gap-sm";case x:return"rr--gap-md";case C:return"rr--gap-lg";default:return""}}(c),m=function(e){switch(e){case S:return"rr--space-sm";case x:return"rr--space-md";case C:return"rr--space-lg";default:return""}}(u),h=!t&&n?"rr--disabled":"",g=a&&"none"!==o?function(e){switch(e){case"zoom":return L("rr--fx-zoom");case"position":return L("rr--fx-position");case"opacity":return L("rr--fx-opacity");case k:return p;default:return""}}(o):"";return`rr--group ${s===b?"rr--dir-y":"rr--dir-x"} ${l>0?"rr--has-stroke":""} ${i>0?"rr--has-border":""}\n${g} ${function(e){switch(e){case S:return"rr--rx-sm";case x:return"rr--rx-md";case C:return"rr--rx-lg";case"full":return"rr--rx-full";default:return""}}(r)} ${f} ${h} ${d}\n${m} ${e}`.replace(/ +/g," ").trimEnd()}({className:se,radius:M,readOnly:i,isDisabled:w,isDynamic:ae,transition:j,orientation:B,absoluteBoxBorderWidth:ge,absoluteStrokeWidth:pe,spaceBetween:E,spaceInside:R});function Ve(e){return{ref:r=>ke.current[e]=r}}function je(e){return{tabIndex:Ee[e],onKeyDown:r=>function(e,r){let t=0;const n=P?ee.length-1:ee.length,a=r-1,o=r+1,s=!P&&r===ee.length,i=0===r?n:a,l=n===r?0:o;switch(e.code){case"Shift":case"Tab":return!0;case"ArrowDown":case"ArrowRight":return t=we.current?i:l,Oe(t);case"ArrowUp":case"ArrowLeft":return t=we.current?l:i,Oe(t);case"Enter":case"Space":return e.preventDefault(),null==c?void 0:c(s?0:r+1)}e.preventDefault(),e.stopPropagation()}(r,e)}}function He(e){return{onClick:r=>{return t=e,r.stopPropagation(),void(null==c||c(P||fe!==t?t+1:0));var t},onMouseEnter:()=>{return u((r=e)+1),void Be({...$e,...ye(r,!0)});var r},onMouseLeave:Ie}}function Pe(e){if(i)return{};const r={};if(Array.isArray(q))r["aria-labelledby"]=q[e];else{const t=Array.isArray(J)?J:ee.map(((e,r)=>`Rate ${r+1}`));r["aria-label"]=t[e]}return w&&(r["aria-disabled"]="true"),{role:"radio","aria-checked":e+1===ne,...r}}function Ze(e){const r={itemShapes:Array.isArray(he)?he[e]:he,itemStrokeWidth:pe,orientation:B,hasHF:!1,testId:{}};return le&&ie===y&&(r.hasHF=e===fe),r}return t.default.createElement("div",{id:U,className:Te,style:{...Y,...$e.staticCssVars},ref:function(e){ae&&!P&&(Ce.current=e),Q&&(Q.current=e)},...function(){if(!i){const e=P&&!w,r={role:"radiogroup","aria-required":e};return e&&(r["aria-invalid"]=ne<=0),"string"==typeof _&&_.length>0?r["aria-labelledby"]=_:r["aria-label"]=G,r}return{role:"img","aria-label":G}}(),...f},ee.map(((e,n)=>{return t.default.createElement(r.Fragment,{key:e},t.default.createElement("div",{className:`rr--box ${$e.dynamicClassNames[n]}`,style:$e.dynamicCssVars[n],...Pe(n),...(o=n,ae?{...Ve(o),...je(o),...He(o),onFocus:e=>De(e,o),onBlur:e=>Fe(e)}:{})},t.default.createElement(A,{...Ze(n)})),ce&&n===ee.length-1&&t.default.createElement("div",{...(a=n+1,{className:"rr--reset",role:"radio","aria-label":K,"aria-checked":0===ne,onClick:()=>null==c?void 0:c(0),onFocus:e=>{var r;De(e,a),null==(r=Ce.current)||r.classList.add(d)},onBlur:e=>{var r;Fe(e),null==(r=Ce.current)||r.classList.remove(d)},...je(a),...Ve(a),...w?{"aria-disabled":"true"}:{}})}));var a,o})))}));G.displayName="Rating",e.Heart=q,e.Rating=G,e.RoundedStar=P,e.Star=j,e.StickerStar=_,e.ThinRoundedStar=Z,e.ThinStar=H,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
!function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],r):r((e="undefined"!=typeof globalThis?globalThis:e||self)["@smastrom/react-rating"]={},e.React)}(this,(function(e,r){"use strict";const t=(u=r)&&"object"==typeof u&&"default"in u?u:{default:u},n=e=>{},a="undefined"==typeof window?r.useEffect:r.useLayoutEffect,o=e=>"number"==typeof e&&e>0,s=e=>o(e)?e:0,i=e=>Math.round(100*e)/100,l=e=>Math.round(2*e)/2,c=e=>0===e?0:-1*i(e);var u;const f={},d="rr--focus-reset",m="rr--on",h="rr--off",p="rr--fx-colors",g="horizontal",b="vertical",y="svg",v="none",S="small",x="medium",C="large",k="colors",w="activeFillColor",$="activeBoxColor",B="activeBoxBorderColor",E="activeStrokeColor";function A({itemShapes:e,testId:n,itemStrokeWidth:o=0,orientation:s=g,hasHF:l=!1}){const u=o>0?-o/2:0,f=o>0?`${u} ${u}`:"0 0",d=r.useRef(null),m=r.useRef(null),[h,p]=r.useState(null);return a((()=>{if(l&&!m.current&&(m.current=`rr_hf_${(Math.random()+1).toString(36).substring(7)}`),d.current){const{width:e,height:r,x:t,y:n}=d.current.getBBox();if(((...e)=>e.every((e=>"number"==typeof e)))(e,r,t,n)){const a=`${f} ${i(e+o)} ${i(r+o)}`,s=`${c(t)} ${c(n)}`;p({viewBox:a,translateData:s})}}}),[e,o,l]),t.default.createElement("svg",{"aria-hidden":"true",className:"rr--svg",xmlns:"http://www.w3.org/2000/svg",viewBox:h?h.viewBox:"0 0 0 0",preserveAspectRatio:"xMidYMid meet",...o>0?{strokeWidth:o}:{},...n},l&&m.current&&t.default.createElement("defs",{},t.default.createElement("linearGradient",{id:m.current,...s===b?{gradientTransform:"rotate(90)"}:{}},t.default.createElement("stop",{className:"rr--svg-stop-1",offset:"50%"}),t.default.createElement("stop",{className:"rr--svg-stop-2",offset:"50%"}))),t.default.createElement("g",{ref:d,shapeRendering:"geometricPrecision",...function(){if(h){const e=`translate(${null==h?void 0:h.translateData})`;return"translate(0 0)"===e?{}:{transform:e}}return{transform:void 0}}(),...l?{fill:`url('#${m.current}')`}:{}},e))}function R(e,r,t){switch(r){case w:return e["--rr--fill-on-color"]=t,!0;case $:return e["--rr--box-on-color"]=t,!0;case B:return e["--rr--border-on-color"]=t,!0;case E:return e["--rr--stroke-on-color"]=t,!0}return!1}function M(e,r,t){if(!R(e,r,t))switch(r){case"inactiveFillColor":e["--rr--fill-off-color"]=t;break;case"inactiveBoxColor":e["--rr--box-off-color"]=t;break;case"inactiveBoxBorderColor":e["--rr--border-off-color"]=t;break;case"inactiveStrokeColor":e["--rr--stroke-off-color"]=t}}function N(e,r,t){const n={};let a;for(const[o,s]of Object.entries(e))R(n,o,s[r]);return t?(a=Array(r).fill({}),a.push(n)):a=Array(r+1).fill(n),a}const L=e=>`${e} ${p}`;function W(e,r,t){return Array.from({length:r},((r,n)=>e?n===t?m:h:n<=t?m:h))}function I(e,r,t){const n=Math.floor(l(e));return Array.from({length:r},((e,r)=>"box"===t?r>n?"rr--hf-box-off":r===n?"rr--hf-box-int":"rr--hf-box-on":r>n?"rr--hf-svg-off":"rr--hf-svg-on"))}function F(e,r){const t={};o(r)&&(t["--rr--border-width"]=`${r}px`);const n=Object.entries(e);if(n.length>0)for(const[a,o]of n)M(t,a,o);return t}const D=[w,$,E,B];function O(e,r,t=!1){return Array.from({length:e},((n,a)=>t&&r<0?a===e-1?0:-1:r<=0?0===a?0:-1:r>0?a===r?0:-1:void 0))}function T(e,r){return e.shouldRender=!1,e.reason=`[@smastrom/react-rating] - Nothing's returned from rendering. Reason: ${r}.`,e}const V="itemShapes is not a valid JSX element",j=t.default.createElement("polygon",{points:"25 9.02 16.4 7.75 12.46 0 8.59 7.79 0 9.14 6.21 15.23 4.85 23.81 12.55 19.79 20.3 23.74 18.85 15.17 25 9.02"}),H=t.default.createElement("path",{d:"M12.5,18.16l-7.73,5.61,2.95-9.08L0,9.07H9.55S12.5,0,12.5,0l2.95,9.07h9.55l-7.73,5.62,2.95,9.08-7.73-5.61Z"}),P=t.default.createElement("path",{d:"M112.46,57.88c-.23-.72-.88-1.22-1.63-1.27l-6.63-.46-2.45-6.19c-.27-.7-.95-1.16-1.7-1.16h0c-.75,0-1.42,.46-1.7,1.16l-2.5,6.23-6.58,.42c-.75,.05-1.4,.55-1.63,1.27-.24,.73,0,1.53,.58,2.02l5.07,4.28-1.51,5.92c-.21,.82,.1,1.69,.78,2.19,.66,.48,1.55,.5,2.24,.07l5.23-3.31h.02l5.63,3.56c.29,.19,.63,.29,.97,.29,1.02,0,1.83-.84,1.83-1.86,0-.16-.02-.31-.06-.47l-1.6-6.48,5.04-4.2c.59-.49,.82-1.29,.58-2.02Z"}),Z=t.default.createElement("path",{d:"M22.72,8.24h-6.68L13.97,1.88c-.81-2.51-2.13-2.51-2.95,0l-2.07,6.36H2.28c-2.63,0-3.04,1.25-.91,2.8l5.41,3.93-2.06,6.36c-.81,2.51,.25,3.28,2.39,1.73l5.41-3.93,5.41,3.93c2.13,1.55,3.2,.77,2.39-1.73l-2.07-6.36,5.41-3.93c2.13-1.55,1.72-2.8-.91-2.8Z"}),_=t.default.createElement("path",{d:"M11.58,.77c.51-1.02,1.33-1.02,1.84,0l2.34,4.73c.5,1.02,1.84,2,2.98,2.16l5.22,.76c1.13,.17,1.39,.95,.57,1.75l-3.78,3.68c-.82,.8-1.33,2.37-1.14,3.5l.89,5.2c.19,1.13-.48,1.61-1.49,1.08l-4.67-2.45c-1.01-.53-2.67-.53-3.68,0l-4.67,2.46c-1.01,.53-1.68,.05-1.49-1.08l.89-5.2c.19-1.13-.32-2.7-1.14-3.5L.48,10.17c-.82-.8-.56-1.58,.57-1.75l5.22-.76c1.13-.16,2.47-1.14,2.98-2.16L11.58,.77h0Z"}),q=t.default.createElement("path",{d:"M19.29,1.61c-2.15-2.15-5.63-2.15-7.78,0,0,0,0,0,0,0l-1.06,1.06-1.06-1.06C7.24-.54,3.76-.54,1.61,1.61-.54,3.76-.54,7.24,1.61,9.39l1.06,1.06,7.78,7.78,7.78-7.78,1.06-1.06c2.15-2.15,2.15-5.63,0-7.78,0,0,0,0,0,0Z"}),z={itemShapes:j,itemStrokeWidth:2,activeFillColor:"#ffb23f",inactiveFillColor:"#fff7ed",activeStrokeColor:"#e17b21",inactiveStrokeColor:"#eda76a"},G=r.forwardRef((({value:e,items:o=5,readOnly:i=!1,onChange:c=n,onHoverChange:u=n,onFocus:m=n,onBlur:h=n,isDisabled:w=!1,highlightOnlySelected:$=!1,orientation:B=g,spaceBetween:E=v,spaceInside:R=S,radius:M=v,transition:j=k,itemStyles:H=z,isRequired:P=!1,halfFillMode:Z=y,visibleLabelId:_,visibleItemLabelIds:q,invisibleLabel:G=(i?`Rated ${e} on ${o}`:"Rating"),invisibleItemLabels:J,resetLabel:K="No rating",id:U,className:X,style:Y},Q)=>{const ee=Array.from({length:o},((e,r)=>r+1)),re=i&&!Number.isInteger(e),te=re&&!$,ne=re&&$?Math.round(e):e,ae=!i&&!w,oe=ne>=.25,se="string"==typeof X?X:"",ie="box"===Z?"box":y,le=te&&(Re=ne,!Number.isInteger(l(Re))),ce=!P&&!i,ue=P?o:o+1,fe=te?function(e,r){const t=l(r);return Number.isInteger(t)?e.indexOf(t):Math.floor(t)}(ee,ne):ee.indexOf(ne),{staticColors:de,arrayColors:me,itemShapes:he,absoluteStrokeWidth:pe,absoluteBoxBorderWidth:ge}=r.useMemo((()=>{const{itemShapes:e,itemStrokeWidth:r,boxBorderWidth:t,...n}=H,a=function(e){const r={...e},t={},n=Object.entries(r);if(n.length>0)for(const[a,o]of n)if(Array.isArray(o)||"string"==typeof o){if(Array.isArray(o))for(const e of D)if(e===a){const e=o.filter((e=>"string"==typeof e));e.length>0&&(t[a]=e,delete r[a])}else delete r[a]}else delete r[a];return{arrayColors:t,staticColors:r}}(n);return{itemShapes:e,absoluteStrokeWidth:s(r),absoluteBoxBorderWidth:s(t),...a}}),[H]),be=Object.keys(me).length>0,ye=r.useCallback(((e,r)=>({dynamicClassNames:le?I(ne,o,ie):W($,o,e),dynamicCssVars:r&&be?N(me,e,$):[]})),[me,be,$,ie,le,o,ne]),ve=r.useCallback((()=>Ae(O(ue,fe,!P))),[fe,ue,P]),Se=r.useRef(!0),xe=r.useRef(!0),Ce=r.useRef(null),ke=r.useRef([]),we=r.useRef(!1),[$e,Be]=r.useState({staticCssVars:F(de,ge),...ye(fe,oe)}),[Ee,Ae]=r.useState((()=>ae?O(ue,fe,!P):[]));var Re;a((()=>{ae&&ke.current&&(we.current=function(e){return!!e&&"rtl"===getComputedStyle(e).getPropertyValue("direction")}(ke.current[0]))}),[ae]),r.useEffect((()=>{if(!Se.current)return Be({staticCssVars:F(de,ge),...ye(fe,oe)});Se.current=!1}),[de,ye,ge,fe,oe]),r.useEffect((()=>{if(!xe.current&&ae)return ve();xe.current=!1}),[ae,ve]);const{shouldRender:Me,reason:Ne}=function({items:e,itemShapes:t}){const n={shouldRender:!0,reason:""};if("number"!=typeof e||e<1||e>10)return T(n,"items is invalid");if(!t)return T(n,"itemStyles needs at least the property itemShapes set");if(!Array.isArray(t)&&!r.isValidElement(t))return T(n,V);if(Array.isArray(t)){if(t.length!==e)return T(n,"itemShapes length mismatch");if(!t.every((e=>r.isValidElement(e))))return T(n,V)}return n}({items:o,itemShapes:he});if(!Me)return console.error(Ne),null;function Le(e,r,t=(()=>{})){ke.current.some((r=>r===e.relatedTarget))?t():r()}function We(){u(0),ve()}function Ie(e){Le(e,(()=>{We()})),Be({...$e,...ye(fe,oe)})}function Fe(e){Le(e,(()=>{We(),h()}))}function De(e,r){const t=P||r!==ee.length?r+1:0;Le(e,(()=>{m(),u(t)}),(()=>{u(t)}))}function Oe(e){Ae(O(ue,e,!P)),ke.current[e].focus()}const Te=function({className:e,radius:r,readOnly:t,isDisabled:n,isDynamic:a,transition:o,orientation:s,absoluteBoxBorderWidth:i,absoluteStrokeWidth:l,spaceBetween:c,spaceInside:u}){const f=a?"rr--pointer":"",d=function(e){switch(e){case S:return"rr--gap-sm";case x:return"rr--gap-md";case C:return"rr--gap-lg";default:return""}}(c),m=function(e){switch(e){case S:return"rr--space-sm";case x:return"rr--space-md";case C:return"rr--space-lg";default:return""}}(u),h=!t&&n?"rr--disabled":"",g=a&&"none"!==o?function(e){switch(e){case"zoom":return L("rr--fx-zoom");case"position":return L("rr--fx-position");case"opacity":return L("rr--fx-opacity");case k:return p;default:return""}}(o):"";return`rr--group ${s===b?"rr--dir-y":"rr--dir-x"} ${l>0?"rr--has-stroke":""} ${i>0?"rr--has-border":""}\n${g} ${function(e){switch(e){case S:return"rr--rx-sm";case x:return"rr--rx-md";case C:return"rr--rx-lg";case"full":return"rr--rx-full";default:return""}}(r)} ${f} ${h} ${d}\n${m} ${e}`.replace(/ +/g," ").trimEnd()}({className:se,radius:M,readOnly:i,isDisabled:w,isDynamic:ae,transition:j,orientation:B,absoluteBoxBorderWidth:ge,absoluteStrokeWidth:pe,spaceBetween:E,spaceInside:R});function Ve(e){return{ref:r=>ke.current[e]=r}}function je(e){return{tabIndex:Ee[e],onKeyDown:r=>function(e,r){let t=0;const n=P?ee.length-1:ee.length,a=r-1,o=r+1,s=!P&&r===ee.length,i=0===r?n:a,l=n===r?0:o;switch(e.code){case"Shift":case"Tab":return!0;case"ArrowDown":case"ArrowRight":return t=we.current?i:l,Oe(t);case"ArrowUp":case"ArrowLeft":return t=we.current?l:i,Oe(t);case"Enter":case"Space":return e.preventDefault(),c(s?0:r+1)}e.preventDefault(),e.stopPropagation()}(r,e)}}function He(e){return{onClick:r=>{return t=e,r.stopPropagation(),void c(P||fe!==t?t+1:0);var t},onMouseEnter:()=>{return u((r=e)+1),void Be({...$e,...ye(r,!0)});var r},onMouseLeave:Ie}}function Pe(e){if(i)return{};const r={};if(Array.isArray(q))r["aria-labelledby"]=q[e];else{const t=Array.isArray(J)?J:ee.map(((e,r)=>`Rate ${r+1}`));r["aria-label"]=t[e]}return w&&(r["aria-disabled"]="true"),{role:"radio","aria-checked":e+1===ne,...r}}function Ze(e){const r={itemShapes:Array.isArray(he)?he[e]:he,itemStrokeWidth:pe,orientation:B,hasHF:!1,testId:{}};return le&&ie===y&&(r.hasHF=e===fe),r}return t.default.createElement("div",{id:U,className:Te,style:{...Y,...$e.staticCssVars},ref:function(e){ae&&!P&&(Ce.current=e),Q&&(Q.current=e)},...function(){if(!i){const e=P&&!w,r={role:"radiogroup","aria-required":e};return e&&(r["aria-invalid"]=ne<=0),"string"==typeof _&&_.length>0?r["aria-labelledby"]=_:r["aria-label"]=G,r}return{role:"img","aria-label":G}}(),...f},ee.map(((e,n)=>{return t.default.createElement(r.Fragment,{key:e},t.default.createElement("div",{className:`rr--box ${$e.dynamicClassNames[n]}`,style:$e.dynamicCssVars[n],...Pe(n),...(o=n,ae?{...Ve(o),...je(o),...He(o),onFocus:e=>De(e,o),onBlur:e=>Fe(e)}:{})},t.default.createElement(A,{...Ze(n)})),ce&&n===ee.length-1&&t.default.createElement("div",{...(a=n+1,{className:"rr--reset",role:"radio","aria-label":K,"aria-checked":0===ne,onClick:()=>c(0),onFocus:e=>{var r;De(e,a),null==(r=Ce.current)||r.classList.add(d)},onBlur:e=>{var r;Fe(e),null==(r=Ce.current)||r.classList.remove(d)},...je(a),...Ve(a),...w?{"aria-disabled":"true"}:{}})}));var a,o})))}));G.displayName="Rating",e.Heart=q,e.Rating=G,e.RoundedStar=P,e.Star=j,e.StickerStar=_,e.ThinRoundedStar=Z,e.ThinStar=H,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
{
"name": "@smastrom/react-rating",
"version": "1.2.0",
"version": "1.2.1",
"private": false,

@@ -5,0 +5,0 @@ "keywords": [

@@ -1,2 +0,2 @@

![react-rating-version](https://img.shields.io/npm/v/@smastrom/react-rating?color=22C55E) ![react-rating-build-workflow](https://img.shields.io/github/workflow/status/smastrom/react-rating/Build/main?color=22C55E)
![react-rating-version](https://img.shields.io/npm/v/@smastrom/react-rating?color=22C55E) ![react-rating-dependencies](https://img.shields.io/badge/dependency%20count-0-22C55E) ![react-rating-build-workflow](https://img.shields.io/github/workflow/status/smastrom/react-rating/Build/main?color=22C55E)
![react-rating-tests-workflow](https://img.shields.io/github/workflow/status/smastrom/react-rating/Tests/main?color=22C55E&label=tests) ![react-rating-coverage](https://img.shields.io/codecov/c/github/smastrom/react-rating?color=22C55E) ![react-rating-code-quality](https://img.shields.io/lgtm/grade/javascript/github/smastrom/react-rating?color=22C55E)

@@ -813,6 +813,9 @@

```css
.rr--box:focus-visible .rr--svg,
.rr--focus-reset {
box-shadow: var(--rr--focus-shadow);
outline: 6px double #0079ff;
}
.rr--box:focus-visible .rr--svg {
outline: 6px double #0079ff;
}
```

@@ -819,0 +822,0 @@

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc