JezK
Edit File: sc-review-stars.cjs.entry.js.map
{"file":"sc-review-stars.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,gBAAgB,GAAG,wZAAwZ,CAAC;AAClb,4BAAe,gBAAgB;;MCMlB,aAAa;;;sBACC,CAAC;oBACX,EAAE;;IAEjB,MAAM;QACJ,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC;QAEzC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG;YACjD,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;YAClB,MAAM,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC;YAC/B,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,KAAK,UAAU,GAAG,CAAC,CAAC;YAE/C,QACEA,qBACE,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,MAAM,EACnC,KAAK,EAAE;oBACL,WAAW,EAAE,MAAM;oBACnB,WAAW,EAAE,MAAM;oBACnB,YAAY,EAAE,CAAC,MAAM,IAAI,CAAC,MAAM;iBACjC,EACD,KAAK,EAAE;oBACL,KAAK,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI;oBACvB,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI;iBACzB,GACQ,EACX;SACH,CAAC,CAAC;QAEH,OAAOA,iBAAK,IAAI,EAAC,MAAM,IAAE,KAAK,CAAO,CAAC;KACvC;;;;;;","names":["h"],"sources":["src/components/ui/review-stars/sc-review-stars.scss?tag=sc-review-stars&encapsulation=shadow","src/components/ui/review-stars/sc-review-stars.tsx"],"sourcesContent":[":host {\n display: flex;\n gap: var(--star-gap, 2px);\n\n --sc-review-stars-primary: var(--sc-color-gray-500);\n}\n\nsc-icon {\n &.full-star::part(svg) {\n fill: var(--sc-review-stars-primary);\n stroke: var(--sc-review-stars-primary);\n color: var(--sc-review-stars-primary);\n }\n\n &.half-star::part(svg) {\n stroke: var(--sc-review-stars-primary);\n color: var(--sc-review-stars-primary);\n }\n\n &.empty-star::part(svg) {\n color: var(--sc-review-stars-primary);\n }\n}\n","import { Component, Prop, h } from '@stencil/core';\n\n@Component({\n tag: 'sc-review-stars',\n styleUrl: 'sc-review-stars.scss',\n shadow: true,\n})\nexport class ScReviewStars {\n @Prop() rating: number = 0;\n @Prop() size = 20;\n\n render() {\n const wholeStars = Math.floor(this.rating);\n const hasHalf = wholeStars < this.rating;\n\n const stars = Array.from({ length: 5 }).map((_, idx) => {\n const i = idx + 1;\n const isFull = i <= wholeStars;\n const isHalf = hasHalf && i === wholeStars + 1;\n\n return (\n <sc-icon\n name={isHalf ? 'half-star' : 'star'}\n class={{\n 'full-star': isFull,\n 'half-star': isHalf,\n 'empty-star': !isFull && !isHalf,\n }}\n style={{\n width: `${this.size}px`,\n height: `${this.size}px`,\n }}\n ></sc-icon>\n );\n });\n\n return <div part=\"base\">{stars}</div>;\n }\n}\n"],"version":3}