UNPKG

ll-package

Version:

2 lines (1 loc) 1.53 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("vue"),C=require("../_util/vue-types/index.js"),f={value:Number,index:Number,prefixCls:String,allowHalf:{type:Boolean,default:void 0},disabled:{type:Boolean,default:void 0},character:C.default.any,characterRender:Function,focused:{type:Boolean,default:void 0},count:Number,onClick:Function,onHover:Function},N=i.defineComponent({compatConfig:{MODE:3},name:"Star",inheritAttrs:!1,props:f,emits:["hover","click"],setup(l,v){let{emit:s}=v;const m=e=>{const{index:t}=l;s("hover",e,t)},x=e=>{const{index:t}=l;s("click",e,t)},h=e=>{const{index:t}=l;e.keyCode===13&&s("click",e,t)},y=i.computed(()=>{const{prefixCls:e,index:t,value:o,allowHalf:r,focused:a}=l,c=t+1;let n=e;return o===0&&t===0&&a?n+=` ${e}-focused`:r&&o+.5>=c&&o<c?(n+=` ${e}-half ${e}-active`,a&&(n+=` ${e}-focused`)):(n+=c<=o?` ${e}-full`:` ${e}-zero`,c===o&&a&&(n+=` ${e}-focused`)),n});return()=>{const{disabled:e,prefixCls:t,characterRender:o,character:r,index:a,count:c,value:n}=l,u=typeof r=="function"?r({disabled:e,prefixCls:t,index:a,count:c,value:n}):r;let d=i.createVNode("li",{class:y.value},[i.createVNode("div",{onClick:e?null:x,onKeydown:e?null:h,onMousemove:e?null:m,role:"radio","aria-checked":n>a?"true":"false","aria-posinset":a+1,"aria-setsize":c,tabindex:e?-1:0},[i.createVNode("div",{class:`${t}-first`},[u]),i.createVNode("div",{class:`${t}-second`},[u])])]);return o&&(d=o(d,l)),d}}});exports.default=N;exports.starProps=f;