vxe-pc-ui 4.9.13 → 4.9.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/icon/style.css +1 -1
- package/es/radio/src/button.js +26 -13
- package/es/radio/src/group.js +3 -3
- package/es/radio/src/radio.js +26 -13
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.umd.js +79 -33
- package/lib/index.umd.min.js +1 -1
- package/lib/radio/src/button.js +36 -14
- package/lib/radio/src/button.min.js +1 -1
- package/lib/radio/src/group.js +4 -3
- package/lib/radio/src/group.min.js +1 -1
- package/lib/radio/src/radio.js +37 -14
- package/lib/radio/src/radio.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +1 -1
- package/packages/radio/src/button.ts +28 -14
- package/packages/radio/src/group.ts +3 -3
- package/packages/radio/src/radio.ts +28 -14
- package/types/components/radio-button.d.ts +12 -2
- package/types/components/radio-group.d.ts +9 -2
- package/types/components/radio.d.ts +7 -1
- /package/es/icon/{iconfont.1756803060105.ttf → iconfont.1756870596899.ttf} +0 -0
- /package/es/icon/{iconfont.1756803060105.woff → iconfont.1756870596899.woff} +0 -0
- /package/es/icon/{iconfont.1756803060105.woff2 → iconfont.1756870596899.woff2} +0 -0
- /package/es/{iconfont.1756803060105.ttf → iconfont.1756870596899.ttf} +0 -0
- /package/es/{iconfont.1756803060105.woff → iconfont.1756870596899.woff} +0 -0
- /package/es/{iconfont.1756803060105.woff2 → iconfont.1756870596899.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1756803060105.ttf → iconfont.1756870596899.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1756803060105.woff → iconfont.1756870596899.woff} +0 -0
- /package/lib/icon/style/{iconfont.1756803060105.woff2 → iconfont.1756870596899.woff2} +0 -0
- /package/lib/{iconfont.1756803060105.ttf → iconfont.1756870596899.ttf} +0 -0
- /package/lib/{iconfont.1756803060105.woff → iconfont.1756870596899.woff} +0 -0
- /package/lib/{iconfont.1756803060105.woff2 → iconfont.1756870596899.woff2} +0 -0
package/lib/radio/src/button.js
CHANGED
|
@@ -14,9 +14,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
14
14
|
name: 'VxeRadioButton',
|
|
15
15
|
props: {
|
|
16
16
|
modelValue: [String, Number, Boolean],
|
|
17
|
-
|
|
17
|
+
checkedValue: {
|
|
18
18
|
type: [String, Number, Boolean],
|
|
19
|
-
default:
|
|
19
|
+
default: undefined
|
|
20
20
|
},
|
|
21
21
|
title: [String, Number],
|
|
22
22
|
content: [String, Number],
|
|
@@ -31,6 +31,13 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
31
31
|
size: {
|
|
32
32
|
type: String,
|
|
33
33
|
default: () => (0, _ui.getConfig)().radioButton.size || (0, _ui.getConfig)().size
|
|
34
|
+
},
|
|
35
|
+
/**
|
|
36
|
+
* 已废弃,被 checkedValue 替换
|
|
37
|
+
*/
|
|
38
|
+
label: {
|
|
39
|
+
type: [String, Number, Boolean],
|
|
40
|
+
default: null
|
|
34
41
|
}
|
|
35
42
|
},
|
|
36
43
|
emits: ['update:modelValue', 'change'],
|
|
@@ -75,9 +82,11 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
75
82
|
});
|
|
76
83
|
const computeChecked = (0, _vue.computed)(() => {
|
|
77
84
|
const {
|
|
78
|
-
label
|
|
85
|
+
label,
|
|
86
|
+
checkedValue
|
|
79
87
|
} = props;
|
|
80
|
-
|
|
88
|
+
const radioValue = _xeUtils.default.isUndefined(checkedValue) ? label : checkedValue;
|
|
89
|
+
return $xeRadioGroup ? $xeRadioGroup.props.modelValue === radioValue : props.modelValue === radioValue;
|
|
81
90
|
});
|
|
82
91
|
const radioButtonMethods = {
|
|
83
92
|
dispatchEvent(type, params, evnt) {
|
|
@@ -88,48 +97,61 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
88
97
|
};
|
|
89
98
|
const radioButtonPrivateMethods = {};
|
|
90
99
|
Object.assign($xeRadioButton, radioButtonMethods, radioButtonPrivateMethods);
|
|
91
|
-
const handleValue = (
|
|
100
|
+
const handleValue = (checkedValue, evnt) => {
|
|
92
101
|
if ($xeRadioGroup) {
|
|
93
102
|
$xeRadioGroup.handleChecked({
|
|
94
|
-
label
|
|
103
|
+
label: checkedValue,
|
|
104
|
+
checkedValue
|
|
95
105
|
}, evnt);
|
|
96
106
|
} else {
|
|
97
|
-
emit('update:modelValue',
|
|
107
|
+
emit('update:modelValue', checkedValue);
|
|
98
108
|
radioButtonMethods.dispatchEvent('change', {
|
|
99
|
-
value:
|
|
100
|
-
label
|
|
109
|
+
value: checkedValue,
|
|
110
|
+
label: checkedValue
|
|
101
111
|
}, evnt);
|
|
102
112
|
// 自动更新校验状态
|
|
103
113
|
if ($xeForm && formItemInfo) {
|
|
104
|
-
$xeForm.triggerItemEvent(evnt, formItemInfo.itemConfig.field,
|
|
114
|
+
$xeForm.triggerItemEvent(evnt, formItemInfo.itemConfig.field, checkedValue);
|
|
105
115
|
}
|
|
106
116
|
}
|
|
107
117
|
};
|
|
108
118
|
const changeEvent = evnt => {
|
|
109
119
|
const isDisabled = computeIsDisabled.value;
|
|
110
120
|
if (!isDisabled) {
|
|
111
|
-
|
|
121
|
+
const {
|
|
122
|
+
label,
|
|
123
|
+
checkedValue
|
|
124
|
+
} = props;
|
|
125
|
+
const radioValue = _xeUtils.default.isUndefined(checkedValue) ? label : checkedValue;
|
|
126
|
+
handleValue(radioValue, evnt);
|
|
112
127
|
}
|
|
113
128
|
};
|
|
114
129
|
const clickEvent = evnt => {
|
|
115
130
|
const isDisabled = computeIsDisabled.value;
|
|
116
131
|
const isStrict = computeStrict.value;
|
|
117
132
|
if (!isDisabled && !isStrict) {
|
|
118
|
-
|
|
133
|
+
const {
|
|
134
|
+
label,
|
|
135
|
+
checkedValue
|
|
136
|
+
} = props;
|
|
137
|
+
const radioValue = _xeUtils.default.isUndefined(checkedValue) ? label : checkedValue;
|
|
138
|
+
if (radioValue === ($xeRadioGroup ? $xeRadioGroup.props.modelValue : props.modelValue)) {
|
|
119
139
|
handleValue(null, evnt);
|
|
120
140
|
}
|
|
121
141
|
}
|
|
122
142
|
};
|
|
123
143
|
const renderVN = () => {
|
|
124
144
|
const {
|
|
125
|
-
label
|
|
145
|
+
label,
|
|
146
|
+
checkedValue
|
|
126
147
|
} = props;
|
|
148
|
+
const radioValue = _xeUtils.default.isUndefined(checkedValue) ? label : checkedValue;
|
|
127
149
|
const vSize = computeSize.value;
|
|
128
150
|
const isDisabled = computeIsDisabled.value;
|
|
129
151
|
const name = computeName.value;
|
|
130
152
|
const isChecked = computeChecked.value;
|
|
131
153
|
return (0, _vue.h)('label', {
|
|
132
|
-
key:
|
|
154
|
+
key: radioValue,
|
|
133
155
|
class: ['vxe-radio vxe-radio--button', {
|
|
134
156
|
[`size--${vSize}`]: vSize,
|
|
135
157
|
'is--disabled': isDisabled
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_ui=require("../../ui");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeRadioButton",props:{modelValue:[String,Number,Boolean],
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_ui=require("../../ui");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeRadioButton",props:{modelValue:[String,Number,Boolean],checkedValue:{type:[String,Number,Boolean],default:void 0},title:[String,Number],content:[String,Number],disabled:{type:Boolean,default:null},strict:{type:Boolean,default:()=>(0,_ui.getConfig)().radioButton.strict},size:{type:String,default:()=>(0,_ui.getConfig)().radioButton.size||(0,_ui.getConfig)().size},label:{type:[String,Number,Boolean],default:null}},emits:["update:modelValue","change"],setup(i,e){const{slots:n,emit:l}=e,u=(0,_vue.inject)("$xeForm",null),a=(0,_vue.inject)("xeFormItemInfo",null),r=(0,_vue.inject)("$xeRadioGroup",null);var t=_xeUtils.default.uniqueId(),o=(0,_vue.reactive)({});const d=(0,_ui.useSize)(i)["computeSize"],s={xID:t,props:i,context:e,reactData:o},c=(0,_vue.computed)(()=>{var e,t=i["disabled"];if(null===t&&r)return e=r.getComputeMaps()["computeIsDisabled"],e.value;return t}),p=(0,_vue.computed)(()=>r?r.name:null),v=(0,_vue.computed)(()=>(r?r.props:i).strict),_=(0,_vue.computed)(()=>{var{label:e,checkedValue:t}=i,e=_xeUtils.default.isUndefined(t)?e:t;return r?r.props.modelValue===e:i.modelValue===e}),f={dispatchEvent(e,t,u){l(e,(0,_ui.createEvent)(u,{$radioButton:s},t))}};Object.assign(s,f,{});const m=(e,t)=>{r?r.handleChecked({label:e,checkedValue:e},t):(l("update:modelValue",e),f.dispatchEvent("change",{value:e,label:e},t),u&&a&&u.triggerItemEvent(t,a.itemConfig.field,e))},b=e=>{var t,u;c.value||({label:u,checkedValue:t}=i,u=_xeUtils.default.isUndefined(t)?u:t,m(u,e))},x=e=>{var t=c.value,u=v.value;t||u||({label:t,checkedValue:u}=i,(_xeUtils.default.isUndefined(u)?t:u)===(r?r.props:i).modelValue&&m(null,e))};t=()=>{var{label:e,checkedValue:t}=i,e=_xeUtils.default.isUndefined(t)?e:t,t=d.value,u=c.value,l=p.value,a=_.value;return(0,_vue.h)("label",{key:e,class:["vxe-radio vxe-radio--button",{["size--"+t]:t,"is--disabled":u}],title:i.title},[(0,_vue.h)("input",{class:"vxe-radio--input",type:"radio",name:l,checked:a,disabled:u,onChange:b,onClick:x}),(0,_vue.h)("span",{class:"vxe-radio--label"},n.default?n.default({}):(0,_utils.getFuncText)(i.content))])};return s.renderVN=t}});
|
package/lib/radio/src/group.js
CHANGED
|
@@ -92,11 +92,12 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
92
92
|
};
|
|
93
93
|
const radioGroupPrivateMethods = {
|
|
94
94
|
handleChecked(params, evnt) {
|
|
95
|
-
const value = params.
|
|
95
|
+
const value = params.checkedValue;
|
|
96
96
|
emit('update:modelValue', value);
|
|
97
97
|
dispatchEvent('change', {
|
|
98
98
|
value,
|
|
99
|
-
label: value
|
|
99
|
+
label: value,
|
|
100
|
+
checkedValue: value
|
|
100
101
|
}, evnt);
|
|
101
102
|
// 自动更新校验状态
|
|
102
103
|
if ($xeForm && formItemInfo) {
|
|
@@ -123,7 +124,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
123
124
|
}, defaultSlot ? defaultSlot({}) : options ? options.map(item => {
|
|
124
125
|
return (0, _vue.h)(btnComp, {
|
|
125
126
|
key: item[valueField],
|
|
126
|
-
|
|
127
|
+
checkedValue: item[valueField],
|
|
127
128
|
content: item[labelField],
|
|
128
129
|
disabled: item[disabledField]
|
|
129
130
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_radio=_interopRequireDefault(require("./radio")),_button=_interopRequireDefault(require("./button"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeRadioGroup",props:{modelValue:[String,Number,Boolean],disabled:{type:Boolean,default:null},type:String,options:Array,optionProps:Object,strict:{type:Boolean,default:()=>(0,_ui.getConfig)().radioGroup.strict},size:{type:String,default:()=>(0,_ui.getConfig)().radioGroup.size||(0,_ui.getConfig)().size}},emits:["update:modelValue","change"],setup(n,e){const{slots:d,emit:r}=e,u=(0,_vue.inject)("$xeForm",null),o=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();const p=(0,_ui.useSize)(n)["computeSize"];var i=(0,_vue.reactive)({});const a={computeIsDisabled:(0,_vue.computed)(()=>{var e=n["disabled"];return null===e?!!u&&(u.props.readonly||u.props.disabled):e})},l={xID:t,props:n,context:e,reactData:i,name:_xeUtils.default.uniqueId("xe_group_"),getComputeMaps:()=>a},s=(0,_vue.computed)(()=>Object.assign({},n.optionProps)),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui"),_radio=_interopRequireDefault(require("./radio")),_button=_interopRequireDefault(require("./button"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeRadioGroup",props:{modelValue:[String,Number,Boolean],disabled:{type:Boolean,default:null},type:String,options:Array,optionProps:Object,strict:{type:Boolean,default:()=>(0,_ui.getConfig)().radioGroup.strict},size:{type:String,default:()=>(0,_ui.getConfig)().radioGroup.size||(0,_ui.getConfig)().size}},emits:["update:modelValue","change"],setup(n,e){const{slots:d,emit:r}=e,u=(0,_vue.inject)("$xeForm",null),o=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();const p=(0,_ui.useSize)(n)["computeSize"];var i=(0,_vue.reactive)({});const a={computeIsDisabled:(0,_vue.computed)(()=>{var e=n["disabled"];return null===e?!!u&&(u.props.readonly||u.props.disabled):e})},l={xID:t,props:n,context:e,reactData:i,name:_xeUtils.default.uniqueId("xe_group_"),getComputeMaps:()=>a},s=(0,_vue.computed)(()=>Object.assign({},n.optionProps)),c=(0,_vue.computed)(()=>{return s.value.label||"label"}),v=(0,_vue.computed)(()=>{return s.value.value||"value"}),_=(0,_vue.computed)(()=>{return s.value.disabled||"disabled"}),m=(e,t,u)=>{r(e,(0,_ui.createEvent)(u,{$radioGroup:l},t))};t={dispatchEvent:m};Object.assign(l,t,{handleChecked(e,t){e=e.checkedValue;r("update:modelValue",e),m("change",{value:e,label:e,checkedValue:e},t),u&&o&&u.triggerItemEvent(t,o.itemConfig.field,e)}});return(0,_vue.provide)("$xeRadioGroup",l),l.renderVN=()=>{var{options:e,type:t}=n,u=p.value,r=d.default;const o=v.value,i=c.value,a=_.value,l=("button"===t?_button:_radio).default;return(0,_vue.h)("div",{class:["vxe-radio-group",{["size--"+u]:u}]},r?r({}):e?e.map(e=>(0,_vue.h)(l,{key:e[o],checkedValue:e[o],content:e[i],disabled:e[a]})):[])},l},render(){return this.renderVN()}});
|
package/lib/radio/src/radio.js
CHANGED
|
@@ -14,9 +14,9 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
14
14
|
name: 'VxeRadio',
|
|
15
15
|
props: {
|
|
16
16
|
modelValue: [String, Number, Boolean],
|
|
17
|
-
|
|
17
|
+
checkedValue: {
|
|
18
18
|
type: [String, Number, Boolean],
|
|
19
|
-
default:
|
|
19
|
+
default: undefined
|
|
20
20
|
},
|
|
21
21
|
title: [String, Number],
|
|
22
22
|
content: [String, Number],
|
|
@@ -32,6 +32,13 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
32
32
|
size: {
|
|
33
33
|
type: String,
|
|
34
34
|
default: () => (0, _ui.getConfig)().radio.size || (0, _ui.getConfig)().size
|
|
35
|
+
},
|
|
36
|
+
/**
|
|
37
|
+
* 已废弃,被 checkedValue 替换
|
|
38
|
+
*/
|
|
39
|
+
label: {
|
|
40
|
+
type: [String, Number, Boolean],
|
|
41
|
+
default: null
|
|
35
42
|
}
|
|
36
43
|
},
|
|
37
44
|
emits: ['update:modelValue', 'change'],
|
|
@@ -76,38 +83,52 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
76
83
|
});
|
|
77
84
|
const computeChecked = (0, _vue.computed)(() => {
|
|
78
85
|
const {
|
|
79
|
-
label
|
|
86
|
+
label,
|
|
87
|
+
checkedValue
|
|
80
88
|
} = props;
|
|
81
|
-
|
|
89
|
+
const radioValue = _xeUtils.default.isUndefined(checkedValue) ? label : checkedValue;
|
|
90
|
+
return $xeRadioGroup ? $xeRadioGroup.props.modelValue === radioValue : props.modelValue === radioValue;
|
|
82
91
|
});
|
|
83
|
-
const handleValue = (
|
|
92
|
+
const handleValue = (checkedValue, evnt) => {
|
|
84
93
|
if ($xeRadioGroup) {
|
|
85
94
|
$xeRadioGroup.handleChecked({
|
|
86
|
-
label
|
|
95
|
+
label: checkedValue,
|
|
96
|
+
checkedValue
|
|
87
97
|
}, evnt);
|
|
88
98
|
} else {
|
|
89
|
-
emit('update:modelValue',
|
|
99
|
+
emit('update:modelValue', checkedValue);
|
|
90
100
|
dispatchEvent('change', {
|
|
91
|
-
value:
|
|
92
|
-
label
|
|
101
|
+
value: checkedValue,
|
|
102
|
+
label: checkedValue,
|
|
103
|
+
checkedValue
|
|
93
104
|
}, evnt);
|
|
94
105
|
// 自动更新校验状态
|
|
95
106
|
if ($xeForm && formItemInfo) {
|
|
96
|
-
$xeForm.triggerItemEvent(evnt, formItemInfo.itemConfig.field,
|
|
107
|
+
$xeForm.triggerItemEvent(evnt, formItemInfo.itemConfig.field, checkedValue);
|
|
97
108
|
}
|
|
98
109
|
}
|
|
99
110
|
};
|
|
100
111
|
const changeEvent = evnt => {
|
|
101
112
|
const isDisabled = computeIsDisabled.value;
|
|
102
113
|
if (!isDisabled) {
|
|
103
|
-
|
|
114
|
+
const {
|
|
115
|
+
label,
|
|
116
|
+
checkedValue
|
|
117
|
+
} = props;
|
|
118
|
+
const radioValue = _xeUtils.default.isUndefined(checkedValue) ? label : checkedValue;
|
|
119
|
+
handleValue(radioValue, evnt);
|
|
104
120
|
}
|
|
105
121
|
};
|
|
106
122
|
const clickEvent = evnt => {
|
|
107
123
|
const isDisabled = computeIsDisabled.value;
|
|
108
124
|
const isStrict = computeStrict.value;
|
|
109
125
|
if (!isDisabled && !isStrict) {
|
|
110
|
-
|
|
126
|
+
const {
|
|
127
|
+
label,
|
|
128
|
+
checkedValue
|
|
129
|
+
} = props;
|
|
130
|
+
const radioValue = _xeUtils.default.isUndefined(checkedValue) ? label : checkedValue;
|
|
131
|
+
if (radioValue === ($xeRadioGroup ? $xeRadioGroup.props.modelValue : props.modelValue)) {
|
|
111
132
|
handleValue(null, evnt);
|
|
112
133
|
}
|
|
113
134
|
}
|
|
@@ -124,14 +145,16 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
124
145
|
Object.assign($xeRadio, radioMethods, radioPrivateMethods);
|
|
125
146
|
const renderVN = () => {
|
|
126
147
|
const {
|
|
127
|
-
label
|
|
148
|
+
label,
|
|
149
|
+
checkedValue
|
|
128
150
|
} = props;
|
|
151
|
+
const radioValue = _xeUtils.default.isUndefined(checkedValue) ? label : checkedValue;
|
|
129
152
|
const vSize = computeSize.value;
|
|
130
153
|
const isDisabled = computeIsDisabled.value;
|
|
131
154
|
const name = computeName.value;
|
|
132
155
|
const isChecked = computeChecked.value;
|
|
133
156
|
return (0, _vue.h)('label', {
|
|
134
|
-
key:
|
|
157
|
+
key: radioValue,
|
|
135
158
|
class: ['vxe-radio vxe-radio--default', {
|
|
136
159
|
[`size--${vSize}`]: vSize,
|
|
137
160
|
'is--checked': isChecked,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_ui=require("../../ui");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeRadio",props:{modelValue:[String,Number,Boolean],
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_utils=require("../../ui/src/utils"),_ui=require("../../ui");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeRadio",props:{modelValue:[String,Number,Boolean],checkedValue:{type:[String,Number,Boolean],default:void 0},title:[String,Number],content:[String,Number],disabled:{type:Boolean,default:null},name:String,strict:{type:Boolean,default:()=>(0,_ui.getConfig)().radio.strict},size:{type:String,default:()=>(0,_ui.getConfig)().radio.size||(0,_ui.getConfig)().size},label:{type:[String,Number,Boolean],default:null}},emits:["update:modelValue","change"],setup(i,e){const{slots:r,emit:l}=e,u=(0,_vue.inject)("$xeForm",null),a=(0,_vue.inject)("xeFormItemInfo",null),n=(0,_vue.inject)("$xeRadioGroup",null);var t=_xeUtils.default.uniqueId(),d=(0,_vue.reactive)({});const o={xID:t,props:i,context:e,reactData:d},s=(0,_ui.useSize)(i)["computeSize"],c=(0,_vue.computed)(()=>{var e,t=i["disabled"];if(null===t&&n)return e=n.getComputeMaps()["computeIsDisabled"],e.value;return t}),p=(0,_vue.computed)(()=>(n||i).name),v=(0,_vue.computed)(()=>(n?n.props:i).strict),_=(0,_vue.computed)(()=>{var{label:e,checkedValue:t}=i,e=_xeUtils.default.isUndefined(t)?e:t;return n?n.props.modelValue===e:i.modelValue===e}),f=(e,t)=>{n?n.handleChecked({label:e,checkedValue:e},t):(l("update:modelValue",e),x("change",{value:e,label:e,checkedValue:e},t),u&&a&&u.triggerItemEvent(t,a.itemConfig.field,e))},m=e=>{var t,u;c.value||({label:u,checkedValue:t}=i,u=_xeUtils.default.isUndefined(t)?u:t,f(u,e))},g=e=>{var t=c.value,u=v.value;t||u||({label:t,checkedValue:u}=i,(_xeUtils.default.isUndefined(u)?t:u)===(n?n.props:i).modelValue&&f(null,e))},x=(e,t,u)=>{l(e,(0,_ui.createEvent)(u,{$radio:o},t))};t={dispatchEvent:x};Object.assign(o,t,{});return o.renderVN=()=>{var{label:e,checkedValue:t}=i,e=_xeUtils.default.isUndefined(t)?e:t,t=s.value,u=c.value,l=p.value,a=_.value;return(0,_vue.h)("label",{key:e,class:["vxe-radio vxe-radio--default",{["size--"+t]:t,"is--checked":a,"is--disabled":u}],title:i.title},[(0,_vue.h)("input",{class:"vxe-radio--input",type:"radio",name:l,checked:a,disabled:u,onChange:m,onClick:g}),(0,_vue.h)("span",{class:["vxe-radio--icon",a?(0,_ui.getIcon)().RADIO_CHECKED:u?(0,_ui.getIcon)().RADIO_DISABLED_UNCHECKED:(0,_ui.getIcon)().RADIO_UNCHECKED]}),(0,_vue.h)("span",{class:"vxe-radio--label"},r.default?r.default({}):(0,_utils.getFuncText)(i.content))])},o},render(){return this.renderVN()}});
|