智慧教务系统
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1 lines
6.7 KiB

import{_ as e}from"./u-icon.d58f766c.js";import{a4 as t,a5 as a,a6 as i,a7 as l,aB as o,bf as r,a8 as s,bh as n,g as d,i as c,o as h,c as p,w as u,b,S as m,B as C,n as S,_ as f,z as D,A as g,j as y,E as z}from"./index-ed377420.js";import{_ as v}from"./_plugin-vue_export-helper.1b428a4d.js";const k=v({name:"u-radio",mixins:[a,i,{props:{name:{type:[String,Number,Boolean],default:()=>t.radio.name},shape:{type:String,default:()=>t.radio.shape},disabled:{type:[String,Boolean],default:()=>t.radio.disabled},labelDisabled:{type:[String,Boolean],default:()=>t.radio.labelDisabled},activeColor:{type:String,default:()=>t.radio.activeColor},inactiveColor:{type:String,default:()=>t.radio.inactiveColor},iconSize:{type:[String,Number],default:()=>t.radio.iconSize},labelSize:{type:[String,Number],default:()=>t.radio.labelSize},label:{type:[String,Number],default:()=>t.radio.label},size:{type:[String,Number],default:()=>t.radio.size},color:{type:String,default:()=>t.radio.color},labelColor:{type:String,default:()=>t.radio.labelColor},iconColor:{type:String,default:()=>t.radio.iconColor}}}],data:()=>({checked:!1,parentData:{iconSize:12,labelDisabled:null,disabled:null,shape:null,activeColor:null,inactiveColor:null,size:18,value:null,modelValue:null,iconColor:null,placement:"row",borderBottom:!1,iconPlacement:"left"}}),computed:{elDisabled(){return""!==this.disabled?this.disabled:null!==this.parentData.disabled&&this.parentData.disabled},elLabelDisabled(){return""!==this.labelDisabled?this.labelDisabled:null!==this.parentData.labelDisabled&&this.parentData.labelDisabled},elSize(){return this.size?this.size:this.parentData.size?this.parentData.size:21},elIconSize(){return this.iconSize?this.iconSize:this.parentData.iconSize?this.parentData.iconSize:12},elActiveColor(){return this.activeColor?this.activeColor:this.parentData.activeColor?this.parentData.activeColor:"#2979ff"},elInactiveColor(){return this.inactiveColor?this.inactiveColor:this.parentData.inactiveColor?this.parentData.inactiveColor:"#c8c9cc"},elLabelColor(){return this.labelColor?this.labelColor:this.parentData.labelColor?this.parentData.labelColor:"#606266"},elShape(){return this.shape?this.shape:this.parentData.shape?this.parentData.shape:"circle"},elLabelSize(){return l(this.labelSize?this.labelSize:this.parentData.labelSize?this.parentData.labelSize:"15")},elIconColor(){const e=this.iconColor?this.iconColor:this.parentData.iconColor?this.parentData.iconColor:"#ffffff";return this.elDisabled?this.checked?this.elInactiveColor:"transparent":this.checked?e:"transparent"},iconClasses(){let e=[];return e.push("u-radio__icon-wrap--"+this.elShape),this.elDisabled&&e.push("u-radio__icon-wrap--disabled"),this.checked&&this.elDisabled&&e.push("u-radio__icon-wrap--disabled--checked"),e},iconWrapStyle(){const e={};return e.backgroundColor=this.checked&&!this.elDisabled?this.elActiveColor:"#ffffff",e.borderColor=this.checked&&!this.elDisabled?this.elActiveColor:this.elInactiveColor,e.width=l(this.elSize),e.height=l(this.elSize),"right"===this.parentData.iconPlacement&&(e.marginRight=0),e},radioStyle(){const e={};return this.parentData.borderBottom&&this.parentData.placement,this.parentData.borderBottom&&"column"===this.parentData.placement&&(e.paddingBottom="ios"===o()?"12px":"8px"),r(e,s(this.customStyle))}},mounted(){this.init()},emits:["change"],methods:{init(){this.updateParentData(),this.parent,this.checked=this.name===this.parentData.modelValue},updateParentData(){this.getParentData("u-radio-group")},iconClickHandler(e){this.preventEvent(e),this.elDisabled||this.setRadioCheckedStatus()},wrapperClickHandler(e){"right"===this.parentData.iconPlacement&&this.iconClickHandler(e)},labelClickHandler(e){this.preventEvent(e),this.elLabelDisabled||this.elDisabled||this.setRadioCheckedStatus()},emitEvent(){this.checked||(this.$emit("change",this.name),this.$nextTick((()=>{n(this,"change")})))},setRadioCheckedStatus(){this.emitEvent(),this.checked=!0,"function"==typeof this.parent.unCheckedOther&&this.parent.unCheckedOther(this)}}},[["render",function(t,a,i,l,o,r){const s=d(c("u-icon"),e),n=y,v=z;return h(),p(n,{class:m(["u-radio cursor-pointer",[`u-radio-label--${o.parentData.iconPlacement}`,o.parentData.borderBottom&&"column"===o.parentData.placement&&"u-border-bottom"]]),onClick:C(r.wrapperClickHandler,["stop"]),style:S([r.radioStyle])},{default:u((()=>[b(n,{class:m(["u-radio__icon-wrap cursor-pointer",r.iconClasses]),onClick:C(r.iconClickHandler,["stop"]),style:S([r.iconWrapStyle])},{default:u((()=>[f(t.$slots,"icon",{},(()=>[b(s,{class:"u-radio__icon-wrap__icon",name:"checkbox-mark",size:r.elIconSize,color:r.elIconColor},null,8,["size","color"])]),!0)])),_:3},8,["onClick","class","style"]),b(v,{class:"u-radio__text",onClick:C(r.labelClickHandler,["stop"]),style:S({color:r.elDisabled?r.elInactiveColor:r.elLabelColor,fontSize:r.elLabelSize,lineHeight:r.elLabelSize})},{default:u((()=>[D(g(t.label),1)])),_:1},8,["onClick","style"])])),_:3},8,["onClick","style","class"])}],["__scopeId","data-v-a4bdd6af"]]);const _=v({name:"u-radio-group",mixins:[a,i,{props:{modelValue:{type:[String,Number,Boolean],default:()=>t.radioGroup.value},disabled:{type:Boolean,default:()=>t.radioGroup.disabled},shape:{type:String,default:()=>t.radioGroup.shape},activeColor:{type:String,default:()=>t.radioGroup.activeColor},inactiveColor:{type:String,default:()=>t.radioGroup.inactiveColor},name:{type:String,default:()=>t.radioGroup.name},size:{type:[String,Number],default:()=>t.radioGroup.size},placement:{type:String,default:()=>t.radioGroup.placement},label:{type:[String],default:()=>t.radioGroup.label},labelColor:{type:[String],default:()=>t.radioGroup.labelColor},labelSize:{type:[String,Number],default:()=>t.radioGroup.labelSize},labelDisabled:{type:Boolean,default:()=>t.radioGroup.labelDisabled},iconColor:{type:String,default:()=>t.radioGroup.iconColor},iconSize:{type:[String,Number],default:()=>t.radioGroup.iconSize},borderBottom:{type:Boolean,default:()=>t.radioGroup.borderBottom},iconPlacement:{type:String,default:()=>t.radio.iconPlacement}}}],computed:{parentData(){return[this.modelValue,this.disabled,this.inactiveColor,this.activeColor,this.size,this.labelDisabled,this.shape,this.iconSize,this.borderBottom,this.placement]},bemClass(){return this.bem("radio-group",["placement"])}},watch:{parentData(){this.children.length&&this.children.map((e=>{"function"==typeof e.init&&e.init()}))}},data:()=>({}),created(){this.children=[]},emits:["update:modelValue","change"],methods:{unCheckedOther(e){this.children.map((t=>{e!==t&&(t.checked=!1)}));const{name:t}=e;this.$emit("update:modelValue",t),this.$emit("change",t)}}},[["render",function(e,t,a,i,l,o){const r=y;return h(),p(r,{class:m(["u-radio-group",o.bemClass])},{default:u((()=>[f(e.$slots,"default",{},void 0,!0)])),_:3},8,["class"])}],["__scopeId","data-v-451898bd"]]);export{k as _,_ as a};