primevue
Version:
[](https://opensource.org/licenses/MIT) [](https://badge.fury.io/js/primevue)
2 lines (1 loc) • 1.94 kB
JavaScript
this.primevue=this.primevue||{},this.primevue.rating=function(e){"use strict";var t={emits:["update:modelValue","change"],props:{modelValue:{type:Number,default:null},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},stars:{type:Number,default:5},cancel:{type:Boolean,default:!0}},methods:{onStarClick(e,t){this.readonly||this.disabled||this.updateModel(e,t)},onCancelClick(){this.readonly||this.disabled||this.updateModel(event,null)},updateModel(e,t){this.$emit("update:modelValue",t),this.$emit("change",{originalEvent:e,value:t})}},computed:{containerClass(){return["p-rating",{"p-readonly":this.readonly,"p-disabled":this.disabled}]},focusIndex(){return this.disabled||this.readonly?null:"0"}}};return function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var a=document.head||document.getElementsByTagName("head")[0],l=document.createElement("style");l.type="text/css","top"===n&&a.firstChild?a.insertBefore(l,a.firstChild):a.appendChild(l),l.styleSheet?l.styleSheet.cssText=e:l.appendChild(document.createTextNode(e))}}("\n.p-rating-icon {\n cursor: pointer;\n}\n.p-rating.p-rating-readonly .p-rating-icon {\n cursor: default;\n}\n"),t.render=function(t,n,a,l,i,o){return e.openBlock(),e.createBlock("div",{class:o.containerClass},[a.cancel?(e.openBlock(),e.createBlock("span",{key:0,class:"p-rating-icon p-rating-cancel pi pi-ban",tabindex:o.focusIndex,onClick:n[1]||(n[1]=(...e)=>o.onCancelClick&&o.onCancelClick(...e))},null,8,["tabindex"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createBlock(e.Fragment,null,e.renderList(a.stars,(t=>(e.openBlock(),e.createBlock("span",{key:t,onClick:e=>o.onStarClick(e,t),tabindex:o.focusIndex,onKeydown:e.withKeys(e.withModifiers((e=>o.onStarClick(e,t)),["prevent"]),["enter"]),class:["p-rating-icon",{"pi pi-star-o":t>a.modelValue,"pi pi-star":t<=a.modelValue}]},null,42,["onClick","tabindex","onKeydown"])))),128))],2)},t}(Vue);