UNPKG

3.2 kBJavaScriptView Raw
1import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2import { createVNode as _createVNode } from "vue";
3import PropTypes from '../_util/vue-types';
4import classNames from '../_util/classNames';
5import DeleteOutlined from "@ant-design/icons-vue/es/icons/DeleteOutlined";
6import defaultLocale from '../locale/default';
7import Checkbox from '../checkbox';
8import TransButton from '../_util/transButton';
9import LocaleReceiver from '../locale-provider/LocaleReceiver';
10import { defineComponent } from 'vue';
11
12function noop() {}
13
14export var transferListItemProps = {
15 renderedText: PropTypes.any,
16 renderedEl: PropTypes.any,
17 item: PropTypes.any,
18 checked: PropTypes.looseBool,
19 prefixCls: PropTypes.string,
20 disabled: PropTypes.looseBool,
21 showRemove: PropTypes.looseBool,
22 onClick: PropTypes.func,
23 onRemove: PropTypes.func
24};
25export default defineComponent({
26 name: 'ListItem',
27 inheritAttrs: false,
28 props: transferListItemProps,
29 emits: ['click', 'remove'],
30 setup: function setup(props, _ref) {
31 var emit = _ref.emit;
32 return function () {
33 var _classNames;
34
35 var renderedText = props.renderedText,
36 renderedEl = props.renderedEl,
37 item = props.item,
38 checked = props.checked,
39 disabled = props.disabled,
40 prefixCls = props.prefixCls,
41 showRemove = props.showRemove;
42 var className = classNames((_classNames = {}, _defineProperty(_classNames, "".concat(prefixCls, "-content-item"), true), _defineProperty(_classNames, "".concat(prefixCls, "-content-item-disabled"), disabled || item.disabled), _classNames));
43 var title;
44
45 if (typeof renderedText === 'string' || typeof renderedText === 'number') {
46 title = String(renderedText);
47 }
48
49 return _createVNode(LocaleReceiver, {
50 "componentName": "Transfer",
51 "defaultLocale": defaultLocale.Transfer
52 }, {
53 default: function _default(transferLocale) {
54 var labelNode = _createVNode("span", {
55 "class": "".concat(prefixCls, "-content-item-text")
56 }, [renderedEl]);
57
58 if (showRemove) {
59 return _createVNode("li", {
60 "class": className,
61 "title": title
62 }, [labelNode, _createVNode(TransButton, {
63 "disabled": disabled || item.disabled,
64 "class": "".concat(prefixCls, "-content-item-remove"),
65 "aria-label": transferLocale.remove,
66 "onClick": function onClick() {
67 emit('remove', item);
68 }
69 }, {
70 default: function _default() {
71 return [_createVNode(DeleteOutlined, null, null)];
72 }
73 })]);
74 }
75
76 return _createVNode("li", {
77 "class": className,
78 "title": title,
79 "onClick": disabled || item.disabled ? noop : function () {
80 emit('click', item);
81 }
82 }, [_createVNode(Checkbox, {
83 "class": "".concat(prefixCls, "-checkbox"),
84 "checked": checked,
85 "disabled": disabled || item.disabled
86 }, null), labelNode]);
87 }
88 });
89 };
90 }
91});
\No newline at end of file