@ebay/ui-core-react
Version:
Skin components build off React
2 lines (1 loc) • 1.12 kB
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react"),i=require("classnames"),E=require("../icons/ebay-icon-eek-range-arrow/index.js"),u=require("../icons/ebay-icon-eek-arrow/index.js"),g={"A+++":["D","E","G"],"A++":["E","G"],"A+":["F","G"],A:["G"]},m=r=>{const{max:a,min:t,rating:s}=r,c=g[a];if(!(c&&c.indexOf(t)>-1))return null;let e=a,l=1;for(;e!==s;){if(l++,t===e)return null;e.length>1?e=e.slice(0,e.length-1):e=String.fromCharCode(e.charCodeAt(0)+1)}return l>7?7:l},k=({min:r="",max:a="",rating:t,a11yText:s,className:c})=>{const e=m({rating:t,min:r,max:a}),l=i(c,"eek",{[`eek--rating-${e}`]:!!e}),o=`Energy Rating: ${t}. Range: ${a} - ${r}.`;return n.createElement("div",{className:l,role:"img","aria-label":s||o},n.createElement("div",{className:"eek__container","aria-hidden":!0},n.createElement("span",{className:"eek__rating-range"},n.createElement("span",null,a),n.createElement(E.EbayIconEekRangeArrow,null),n.createElement("span",null,r)),n.createElement("span",{className:"eek__rating"},t)),n.createElement(u.EbayIconEekArrow,null))};exports.EbayEek=k;