89c762c37baebf179173e28382d4ceab.json
48.9 KB
{"ast":null,"code":"import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/createSuper\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport List from './list';\nimport Operation from './operation';\nimport Search from './search';\nimport LocaleReceiver from '../locale-provider/LocaleReceiver';\nimport defaultLocale from '../locale/default';\nimport { ConfigConsumer } from '../config-provider';\nimport devWarning from '../_util/devWarning';\n\nvar Transfer = /*#__PURE__*/function (_React$Component) {\n _inherits(Transfer, _React$Component);\n\n var _super = _createSuper(Transfer);\n\n function Transfer(props) {\n var _this;\n\n _classCallCheck(this, Transfer);\n\n _this = _super.call(this, props);\n _this.separatedDataSource = null;\n\n _this.setStateKeys = function (direction, keys) {\n if (direction === 'left') {\n _this.setState(function (_ref) {\n var sourceSelectedKeys = _ref.sourceSelectedKeys;\n return {\n sourceSelectedKeys: typeof keys === 'function' ? keys(sourceSelectedKeys || []) : keys\n };\n });\n } else {\n _this.setState(function (_ref2) {\n var targetSelectedKeys = _ref2.targetSelectedKeys;\n return {\n targetSelectedKeys: typeof keys === 'function' ? keys(targetSelectedKeys || []) : keys\n };\n });\n }\n };\n\n _this.getLocale = function (transferLocale, renderEmpty) {\n return _extends(_extends(_extends({}, transferLocale), {\n notFoundContent: renderEmpty('Transfer')\n }), _this.props.locale);\n };\n\n _this.moveTo = function (direction) {\n var _this$props = _this.props,\n _this$props$targetKey = _this$props.targetKeys,\n targetKeys = _this$props$targetKey === void 0 ? [] : _this$props$targetKey,\n _this$props$dataSourc = _this$props.dataSource,\n dataSource = _this$props$dataSourc === void 0 ? [] : _this$props$dataSourc,\n onChange = _this$props.onChange;\n var _this$state = _this.state,\n sourceSelectedKeys = _this$state.sourceSelectedKeys,\n targetSelectedKeys = _this$state.targetSelectedKeys;\n var moveKeys = direction === 'right' ? sourceSelectedKeys : targetSelectedKeys; // filter the disabled options\n\n var newMoveKeys = moveKeys.filter(function (key) {\n return !dataSource.some(function (data) {\n return !!(key === data.key && data.disabled);\n });\n }); // move items to target box\n\n var newTargetKeys = direction === 'right' ? newMoveKeys.concat(targetKeys) : targetKeys.filter(function (targetKey) {\n return newMoveKeys.indexOf(targetKey) === -1;\n }); // empty checked keys\n\n var oppositeDirection = direction === 'right' ? 'left' : 'right';\n\n _this.setStateKeys(oppositeDirection, []);\n\n _this.handleSelectChange(oppositeDirection, []);\n\n if (onChange) {\n onChange(newTargetKeys, direction, newMoveKeys);\n }\n };\n\n _this.moveToLeft = function () {\n return _this.moveTo('left');\n };\n\n _this.moveToRight = function () {\n return _this.moveTo('right');\n };\n\n _this.onItemSelectAll = function (direction, selectedKeys, checkAll) {\n _this.setStateKeys(direction, function (prevKeys) {\n var mergedCheckedKeys = [];\n\n if (checkAll) {\n // Merge current keys with origin key\n mergedCheckedKeys = Array.from(new Set([].concat(_toConsumableArray(prevKeys), _toConsumableArray(selectedKeys))));\n } else {\n // Remove current keys from origin keys\n mergedCheckedKeys = prevKeys.filter(function (key) {\n return selectedKeys.indexOf(key) === -1;\n });\n }\n\n _this.handleSelectChange(direction, mergedCheckedKeys);\n\n return mergedCheckedKeys;\n });\n };\n\n _this.onLeftItemSelectAll = function (selectedKeys, checkAll) {\n return _this.onItemSelectAll('left', selectedKeys, checkAll);\n };\n\n _this.onRightItemSelectAll = function (selectedKeys, checkAll) {\n return _this.onItemSelectAll('right', selectedKeys, checkAll);\n };\n\n _this.handleFilter = function (direction, e) {\n var onSearch = _this.props.onSearch;\n var value = e.target.value;\n\n if (onSearch) {\n onSearch(direction, value);\n }\n };\n\n _this.handleLeftFilter = function (e) {\n return _this.handleFilter('left', e);\n };\n\n _this.handleRightFilter = function (e) {\n return _this.handleFilter('right', e);\n };\n\n _this.handleClear = function (direction) {\n var onSearch = _this.props.onSearch;\n\n if (onSearch) {\n onSearch(direction, '');\n }\n };\n\n _this.handleLeftClear = function () {\n return _this.handleClear('left');\n };\n\n _this.handleRightClear = function () {\n return _this.handleClear('right');\n };\n\n _this.onItemSelect = function (direction, selectedKey, checked) {\n var _this$state2 = _this.state,\n sourceSelectedKeys = _this$state2.sourceSelectedKeys,\n targetSelectedKeys = _this$state2.targetSelectedKeys;\n var holder = direction === 'left' ? _toConsumableArray(sourceSelectedKeys) : _toConsumableArray(targetSelectedKeys);\n var index = holder.indexOf(selectedKey);\n\n if (index > -1) {\n holder.splice(index, 1);\n }\n\n if (checked) {\n holder.push(selectedKey);\n }\n\n _this.handleSelectChange(direction, holder);\n\n if (!_this.props.selectedKeys) {\n _this.setStateKeys(direction, holder);\n }\n };\n\n _this.onLeftItemSelect = function (selectedKey, checked) {\n return _this.onItemSelect('left', selectedKey, checked);\n };\n\n _this.onRightItemSelect = function (selectedKey, checked) {\n return _this.onItemSelect('right', selectedKey, checked);\n };\n\n _this.onRightItemRemove = function (selectedKeys) {\n var _this$props2 = _this.props,\n _this$props2$targetKe = _this$props2.targetKeys,\n targetKeys = _this$props2$targetKe === void 0 ? [] : _this$props2$targetKe,\n onChange = _this$props2.onChange;\n\n _this.setStateKeys('right', []);\n\n if (onChange) {\n onChange(targetKeys.filter(function (key) {\n return !selectedKeys.includes(key);\n }), 'left', _toConsumableArray(selectedKeys));\n }\n };\n\n _this.handleScroll = function (direction, e) {\n var onScroll = _this.props.onScroll;\n\n if (onScroll) {\n onScroll(direction, e);\n }\n };\n\n _this.handleLeftScroll = function (e) {\n return _this.handleScroll('left', e);\n };\n\n _this.handleRightScroll = function (e) {\n return _this.handleScroll('right', e);\n };\n\n _this.handleListStyle = function (listStyle, direction) {\n if (typeof listStyle === 'function') {\n return listStyle({\n direction: direction\n });\n }\n\n return listStyle;\n };\n\n _this.renderTransfer = function (transferLocale) {\n return /*#__PURE__*/React.createElement(ConfigConsumer, null, function (_ref3) {\n var _classNames;\n\n var getPrefixCls = _ref3.getPrefixCls,\n renderEmpty = _ref3.renderEmpty,\n direction = _ref3.direction;\n var _this$props3 = _this.props,\n customizePrefixCls = _this$props3.prefixCls,\n className = _this$props3.className,\n disabled = _this$props3.disabled,\n _this$props3$operatio = _this$props3.operations,\n operations = _this$props3$operatio === void 0 ? [] : _this$props3$operatio,\n showSearch = _this$props3.showSearch,\n footer = _this$props3.footer,\n style = _this$props3.style,\n listStyle = _this$props3.listStyle,\n operationStyle = _this$props3.operationStyle,\n filterOption = _this$props3.filterOption,\n render = _this$props3.render,\n children = _this$props3.children,\n showSelectAll = _this$props3.showSelectAll,\n oneWay = _this$props3.oneWay,\n pagination = _this$props3.pagination;\n var prefixCls = getPrefixCls('transfer', customizePrefixCls);\n\n var locale = _this.getLocale(transferLocale, renderEmpty);\n\n var _this$state3 = _this.state,\n sourceSelectedKeys = _this$state3.sourceSelectedKeys,\n targetSelectedKeys = _this$state3.targetSelectedKeys;\n var mergedPagination = !children && pagination;\n\n var _this$separateDataSou = _this.separateDataSource(),\n leftDataSource = _this$separateDataSou.leftDataSource,\n rightDataSource = _this$separateDataSou.rightDataSource;\n\n var leftActive = targetSelectedKeys.length > 0;\n var rightActive = sourceSelectedKeys.length > 0;\n var cls = classNames(prefixCls, (_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-disabled\"), disabled), _defineProperty(_classNames, \"\".concat(prefixCls, \"-customize-list\"), !!children), _defineProperty(_classNames, \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), _classNames), className);\n\n var titles = _this.getTitles(locale);\n\n var selectAllLabels = _this.props.selectAllLabels || [];\n return /*#__PURE__*/React.createElement(\"div\", {\n className: cls,\n style: style\n }, /*#__PURE__*/React.createElement(List, _extends({\n prefixCls: \"\".concat(prefixCls, \"-list\"),\n titleText: titles[0],\n dataSource: leftDataSource,\n filterOption: filterOption,\n style: _this.handleListStyle(listStyle, 'left'),\n checkedKeys: sourceSelectedKeys,\n handleFilter: _this.handleLeftFilter,\n handleClear: _this.handleLeftClear,\n onItemSelect: _this.onLeftItemSelect,\n onItemSelectAll: _this.onLeftItemSelectAll,\n render: render,\n showSearch: showSearch,\n renderList: children,\n footer: footer,\n onScroll: _this.handleLeftScroll,\n disabled: disabled,\n direction: \"left\",\n showSelectAll: showSelectAll,\n selectAllLabel: selectAllLabels[0],\n pagination: mergedPagination\n }, locale)), /*#__PURE__*/React.createElement(Operation, {\n className: \"\".concat(prefixCls, \"-operation\"),\n rightActive: rightActive,\n rightArrowText: operations[0],\n moveToRight: _this.moveToRight,\n leftActive: leftActive,\n leftArrowText: operations[1],\n moveToLeft: _this.moveToLeft,\n style: operationStyle,\n disabled: disabled,\n direction: direction,\n oneWay: oneWay\n }), /*#__PURE__*/React.createElement(List, _extends({\n prefixCls: \"\".concat(prefixCls, \"-list\"),\n titleText: titles[1],\n dataSource: rightDataSource,\n filterOption: filterOption,\n style: _this.handleListStyle(listStyle, 'right'),\n checkedKeys: targetSelectedKeys,\n handleFilter: _this.handleRightFilter,\n handleClear: _this.handleRightClear,\n onItemSelect: _this.onRightItemSelect,\n onItemSelectAll: _this.onRightItemSelectAll,\n onItemRemove: _this.onRightItemRemove,\n render: render,\n showSearch: showSearch,\n renderList: children,\n footer: footer,\n onScroll: _this.handleRightScroll,\n disabled: disabled,\n direction: \"right\",\n showSelectAll: showSelectAll,\n selectAllLabel: selectAllLabels[1],\n showRemove: oneWay,\n pagination: mergedPagination\n }, locale)));\n });\n };\n\n var _props$selectedKeys = props.selectedKeys,\n selectedKeys = _props$selectedKeys === void 0 ? [] : _props$selectedKeys,\n _props$targetKeys = props.targetKeys,\n targetKeys = _props$targetKeys === void 0 ? [] : _props$targetKeys;\n _this.state = {\n sourceSelectedKeys: selectedKeys.filter(function (key) {\n return targetKeys.indexOf(key) === -1;\n }),\n targetSelectedKeys: selectedKeys.filter(function (key) {\n return targetKeys.indexOf(key) > -1;\n })\n };\n return _this;\n }\n\n _createClass(Transfer, [{\n key: \"getTitles\",\n value: function getTitles(transferLocale) {\n var titles = this.props.titles;\n\n if (titles) {\n return titles;\n }\n\n return transferLocale.titles;\n }\n }, {\n key: \"handleSelectChange\",\n value: function handleSelectChange(direction, holder) {\n var _this$state4 = this.state,\n sourceSelectedKeys = _this$state4.sourceSelectedKeys,\n targetSelectedKeys = _this$state4.targetSelectedKeys;\n var onSelectChange = this.props.onSelectChange;\n\n if (!onSelectChange) {\n return;\n }\n\n if (direction === 'left') {\n onSelectChange(holder, targetSelectedKeys);\n } else {\n onSelectChange(sourceSelectedKeys, holder);\n }\n }\n }, {\n key: \"separateDataSource\",\n value: function separateDataSource() {\n var _this$props4 = this.props,\n dataSource = _this$props4.dataSource,\n rowKey = _this$props4.rowKey,\n _this$props4$targetKe = _this$props4.targetKeys,\n targetKeys = _this$props4$targetKe === void 0 ? [] : _this$props4$targetKe;\n var leftDataSource = [];\n var rightDataSource = new Array(targetKeys.length);\n dataSource.forEach(function (record) {\n if (rowKey) {\n record.key = rowKey(record);\n } // rightDataSource should be ordered by targetKeys\n // leftDataSource should be ordered by dataSource\n\n\n var indexOfKey = targetKeys.indexOf(record.key);\n\n if (indexOfKey !== -1) {\n rightDataSource[indexOfKey] = record;\n } else {\n leftDataSource.push(record);\n }\n });\n return {\n leftDataSource: leftDataSource,\n rightDataSource: rightDataSource\n };\n }\n }, {\n key: \"render\",\n value: function render() {\n return /*#__PURE__*/React.createElement(LocaleReceiver, {\n componentName: \"Transfer\",\n defaultLocale: defaultLocale.Transfer\n }, this.renderTransfer);\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(_ref4) {\n var selectedKeys = _ref4.selectedKeys,\n targetKeys = _ref4.targetKeys,\n pagination = _ref4.pagination,\n children = _ref4.children;\n\n if (selectedKeys) {\n var mergedTargetKeys = targetKeys || [];\n return {\n sourceSelectedKeys: selectedKeys.filter(function (key) {\n return !mergedTargetKeys.includes(key);\n }),\n targetSelectedKeys: selectedKeys.filter(function (key) {\n return mergedTargetKeys.includes(key);\n })\n };\n }\n\n devWarning(!pagination || !children, 'Transfer', '`pagination` not support customize render list.');\n return null;\n }\n }]);\n\n return Transfer;\n}(React.Component); // For high-level customized Transfer @dqaria\n\n\nTransfer.List = List;\nTransfer.Operation = Operation;\nTransfer.Search = Search;\nTransfer.defaultProps = {\n dataSource: [],\n locale: {},\n showSearch: false,\n listStyle: function listStyle() {}\n};\nexport default Transfer;","map":{"version":3,"sources":["C:/Users/kkwan_000/Desktop/git/2017110269/minsung/node_modules/antd/es/transfer/index.js"],"names":["_defineProperty","_toConsumableArray","_extends","_classCallCheck","_createClass","_inherits","_createSuper","React","classNames","List","Operation","Search","LocaleReceiver","defaultLocale","ConfigConsumer","devWarning","Transfer","_React$Component","_super","props","_this","call","separatedDataSource","setStateKeys","direction","keys","setState","_ref","sourceSelectedKeys","_ref2","targetSelectedKeys","getLocale","transferLocale","renderEmpty","notFoundContent","locale","moveTo","_this$props","_this$props$targetKey","targetKeys","_this$props$dataSourc","dataSource","onChange","_this$state","state","moveKeys","newMoveKeys","filter","key","some","data","disabled","newTargetKeys","concat","targetKey","indexOf","oppositeDirection","handleSelectChange","moveToLeft","moveToRight","onItemSelectAll","selectedKeys","checkAll","prevKeys","mergedCheckedKeys","Array","from","Set","onLeftItemSelectAll","onRightItemSelectAll","handleFilter","e","onSearch","value","target","handleLeftFilter","handleRightFilter","handleClear","handleLeftClear","handleRightClear","onItemSelect","selectedKey","checked","_this$state2","holder","index","splice","push","onLeftItemSelect","onRightItemSelect","onRightItemRemove","_this$props2","_this$props2$targetKe","includes","handleScroll","onScroll","handleLeftScroll","handleRightScroll","handleListStyle","listStyle","renderTransfer","createElement","_ref3","_classNames","getPrefixCls","_this$props3","customizePrefixCls","prefixCls","className","_this$props3$operatio","operations","showSearch","footer","style","operationStyle","filterOption","render","children","showSelectAll","oneWay","pagination","_this$state3","mergedPagination","_this$separateDataSou","separateDataSource","leftDataSource","rightDataSource","leftActive","length","rightActive","cls","titles","getTitles","selectAllLabels","titleText","checkedKeys","renderList","selectAllLabel","rightArrowText","leftArrowText","onItemRemove","showRemove","_props$selectedKeys","_props$targetKeys","_this$state4","onSelectChange","_this$props4","rowKey","_this$props4$targetKe","forEach","record","indexOfKey","componentName","getDerivedStateFromProps","_ref4","mergedTargetKeys","Component","defaultProps"],"mappings":"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","sourcesContent":["import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport _extends from \"@babel/runtime/helpers/extends\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/createSuper\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport List from './list';\nimport Operation from './operation';\nimport Search from './search';\nimport LocaleReceiver from '../locale-provider/LocaleReceiver';\nimport defaultLocale from '../locale/default';\nimport { ConfigConsumer } from '../config-provider';\nimport devWarning from '../_util/devWarning';\n\nvar Transfer = /*#__PURE__*/function (_React$Component) {\n _inherits(Transfer, _React$Component);\n\n var _super = _createSuper(Transfer);\n\n function Transfer(props) {\n var _this;\n\n _classCallCheck(this, Transfer);\n\n _this = _super.call(this, props);\n _this.separatedDataSource = null;\n\n _this.setStateKeys = function (direction, keys) {\n if (direction === 'left') {\n _this.setState(function (_ref) {\n var sourceSelectedKeys = _ref.sourceSelectedKeys;\n return {\n sourceSelectedKeys: typeof keys === 'function' ? keys(sourceSelectedKeys || []) : keys\n };\n });\n } else {\n _this.setState(function (_ref2) {\n var targetSelectedKeys = _ref2.targetSelectedKeys;\n return {\n targetSelectedKeys: typeof keys === 'function' ? keys(targetSelectedKeys || []) : keys\n };\n });\n }\n };\n\n _this.getLocale = function (transferLocale, renderEmpty) {\n return _extends(_extends(_extends({}, transferLocale), {\n notFoundContent: renderEmpty('Transfer')\n }), _this.props.locale);\n };\n\n _this.moveTo = function (direction) {\n var _this$props = _this.props,\n _this$props$targetKey = _this$props.targetKeys,\n targetKeys = _this$props$targetKey === void 0 ? [] : _this$props$targetKey,\n _this$props$dataSourc = _this$props.dataSource,\n dataSource = _this$props$dataSourc === void 0 ? [] : _this$props$dataSourc,\n onChange = _this$props.onChange;\n var _this$state = _this.state,\n sourceSelectedKeys = _this$state.sourceSelectedKeys,\n targetSelectedKeys = _this$state.targetSelectedKeys;\n var moveKeys = direction === 'right' ? sourceSelectedKeys : targetSelectedKeys; // filter the disabled options\n\n var newMoveKeys = moveKeys.filter(function (key) {\n return !dataSource.some(function (data) {\n return !!(key === data.key && data.disabled);\n });\n }); // move items to target box\n\n var newTargetKeys = direction === 'right' ? newMoveKeys.concat(targetKeys) : targetKeys.filter(function (targetKey) {\n return newMoveKeys.indexOf(targetKey) === -1;\n }); // empty checked keys\n\n var oppositeDirection = direction === 'right' ? 'left' : 'right';\n\n _this.setStateKeys(oppositeDirection, []);\n\n _this.handleSelectChange(oppositeDirection, []);\n\n if (onChange) {\n onChange(newTargetKeys, direction, newMoveKeys);\n }\n };\n\n _this.moveToLeft = function () {\n return _this.moveTo('left');\n };\n\n _this.moveToRight = function () {\n return _this.moveTo('right');\n };\n\n _this.onItemSelectAll = function (direction, selectedKeys, checkAll) {\n _this.setStateKeys(direction, function (prevKeys) {\n var mergedCheckedKeys = [];\n\n if (checkAll) {\n // Merge current keys with origin key\n mergedCheckedKeys = Array.from(new Set([].concat(_toConsumableArray(prevKeys), _toConsumableArray(selectedKeys))));\n } else {\n // Remove current keys from origin keys\n mergedCheckedKeys = prevKeys.filter(function (key) {\n return selectedKeys.indexOf(key) === -1;\n });\n }\n\n _this.handleSelectChange(direction, mergedCheckedKeys);\n\n return mergedCheckedKeys;\n });\n };\n\n _this.onLeftItemSelectAll = function (selectedKeys, checkAll) {\n return _this.onItemSelectAll('left', selectedKeys, checkAll);\n };\n\n _this.onRightItemSelectAll = function (selectedKeys, checkAll) {\n return _this.onItemSelectAll('right', selectedKeys, checkAll);\n };\n\n _this.handleFilter = function (direction, e) {\n var onSearch = _this.props.onSearch;\n var value = e.target.value;\n\n if (onSearch) {\n onSearch(direction, value);\n }\n };\n\n _this.handleLeftFilter = function (e) {\n return _this.handleFilter('left', e);\n };\n\n _this.handleRightFilter = function (e) {\n return _this.handleFilter('right', e);\n };\n\n _this.handleClear = function (direction) {\n var onSearch = _this.props.onSearch;\n\n if (onSearch) {\n onSearch(direction, '');\n }\n };\n\n _this.handleLeftClear = function () {\n return _this.handleClear('left');\n };\n\n _this.handleRightClear = function () {\n return _this.handleClear('right');\n };\n\n _this.onItemSelect = function (direction, selectedKey, checked) {\n var _this$state2 = _this.state,\n sourceSelectedKeys = _this$state2.sourceSelectedKeys,\n targetSelectedKeys = _this$state2.targetSelectedKeys;\n var holder = direction === 'left' ? _toConsumableArray(sourceSelectedKeys) : _toConsumableArray(targetSelectedKeys);\n var index = holder.indexOf(selectedKey);\n\n if (index > -1) {\n holder.splice(index, 1);\n }\n\n if (checked) {\n holder.push(selectedKey);\n }\n\n _this.handleSelectChange(direction, holder);\n\n if (!_this.props.selectedKeys) {\n _this.setStateKeys(direction, holder);\n }\n };\n\n _this.onLeftItemSelect = function (selectedKey, checked) {\n return _this.onItemSelect('left', selectedKey, checked);\n };\n\n _this.onRightItemSelect = function (selectedKey, checked) {\n return _this.onItemSelect('right', selectedKey, checked);\n };\n\n _this.onRightItemRemove = function (selectedKeys) {\n var _this$props2 = _this.props,\n _this$props2$targetKe = _this$props2.targetKeys,\n targetKeys = _this$props2$targetKe === void 0 ? [] : _this$props2$targetKe,\n onChange = _this$props2.onChange;\n\n _this.setStateKeys('right', []);\n\n if (onChange) {\n onChange(targetKeys.filter(function (key) {\n return !selectedKeys.includes(key);\n }), 'left', _toConsumableArray(selectedKeys));\n }\n };\n\n _this.handleScroll = function (direction, e) {\n var onScroll = _this.props.onScroll;\n\n if (onScroll) {\n onScroll(direction, e);\n }\n };\n\n _this.handleLeftScroll = function (e) {\n return _this.handleScroll('left', e);\n };\n\n _this.handleRightScroll = function (e) {\n return _this.handleScroll('right', e);\n };\n\n _this.handleListStyle = function (listStyle, direction) {\n if (typeof listStyle === 'function') {\n return listStyle({\n direction: direction\n });\n }\n\n return listStyle;\n };\n\n _this.renderTransfer = function (transferLocale) {\n return /*#__PURE__*/React.createElement(ConfigConsumer, null, function (_ref3) {\n var _classNames;\n\n var getPrefixCls = _ref3.getPrefixCls,\n renderEmpty = _ref3.renderEmpty,\n direction = _ref3.direction;\n var _this$props3 = _this.props,\n customizePrefixCls = _this$props3.prefixCls,\n className = _this$props3.className,\n disabled = _this$props3.disabled,\n _this$props3$operatio = _this$props3.operations,\n operations = _this$props3$operatio === void 0 ? [] : _this$props3$operatio,\n showSearch = _this$props3.showSearch,\n footer = _this$props3.footer,\n style = _this$props3.style,\n listStyle = _this$props3.listStyle,\n operationStyle = _this$props3.operationStyle,\n filterOption = _this$props3.filterOption,\n render = _this$props3.render,\n children = _this$props3.children,\n showSelectAll = _this$props3.showSelectAll,\n oneWay = _this$props3.oneWay,\n pagination = _this$props3.pagination;\n var prefixCls = getPrefixCls('transfer', customizePrefixCls);\n\n var locale = _this.getLocale(transferLocale, renderEmpty);\n\n var _this$state3 = _this.state,\n sourceSelectedKeys = _this$state3.sourceSelectedKeys,\n targetSelectedKeys = _this$state3.targetSelectedKeys;\n var mergedPagination = !children && pagination;\n\n var _this$separateDataSou = _this.separateDataSource(),\n leftDataSource = _this$separateDataSou.leftDataSource,\n rightDataSource = _this$separateDataSou.rightDataSource;\n\n var leftActive = targetSelectedKeys.length > 0;\n var rightActive = sourceSelectedKeys.length > 0;\n var cls = classNames(prefixCls, (_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-disabled\"), disabled), _defineProperty(_classNames, \"\".concat(prefixCls, \"-customize-list\"), !!children), _defineProperty(_classNames, \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), _classNames), className);\n\n var titles = _this.getTitles(locale);\n\n var selectAllLabels = _this.props.selectAllLabels || [];\n return /*#__PURE__*/React.createElement(\"div\", {\n className: cls,\n style: style\n }, /*#__PURE__*/React.createElement(List, _extends({\n prefixCls: \"\".concat(prefixCls, \"-list\"),\n titleText: titles[0],\n dataSource: leftDataSource,\n filterOption: filterOption,\n style: _this.handleListStyle(listStyle, 'left'),\n checkedKeys: sourceSelectedKeys,\n handleFilter: _this.handleLeftFilter,\n handleClear: _this.handleLeftClear,\n onItemSelect: _this.onLeftItemSelect,\n onItemSelectAll: _this.onLeftItemSelectAll,\n render: render,\n showSearch: showSearch,\n renderList: children,\n footer: footer,\n onScroll: _this.handleLeftScroll,\n disabled: disabled,\n direction: \"left\",\n showSelectAll: showSelectAll,\n selectAllLabel: selectAllLabels[0],\n pagination: mergedPagination\n }, locale)), /*#__PURE__*/React.createElement(Operation, {\n className: \"\".concat(prefixCls, \"-operation\"),\n rightActive: rightActive,\n rightArrowText: operations[0],\n moveToRight: _this.moveToRight,\n leftActive: leftActive,\n leftArrowText: operations[1],\n moveToLeft: _this.moveToLeft,\n style: operationStyle,\n disabled: disabled,\n direction: direction,\n oneWay: oneWay\n }), /*#__PURE__*/React.createElement(List, _extends({\n prefixCls: \"\".concat(prefixCls, \"-list\"),\n titleText: titles[1],\n dataSource: rightDataSource,\n filterOption: filterOption,\n style: _this.handleListStyle(listStyle, 'right'),\n checkedKeys: targetSelectedKeys,\n handleFilter: _this.handleRightFilter,\n handleClear: _this.handleRightClear,\n onItemSelect: _this.onRightItemSelect,\n onItemSelectAll: _this.onRightItemSelectAll,\n onItemRemove: _this.onRightItemRemove,\n render: render,\n showSearch: showSearch,\n renderList: children,\n footer: footer,\n onScroll: _this.handleRightScroll,\n disabled: disabled,\n direction: \"right\",\n showSelectAll: showSelectAll,\n selectAllLabel: selectAllLabels[1],\n showRemove: oneWay,\n pagination: mergedPagination\n }, locale)));\n });\n };\n\n var _props$selectedKeys = props.selectedKeys,\n selectedKeys = _props$selectedKeys === void 0 ? [] : _props$selectedKeys,\n _props$targetKeys = props.targetKeys,\n targetKeys = _props$targetKeys === void 0 ? [] : _props$targetKeys;\n _this.state = {\n sourceSelectedKeys: selectedKeys.filter(function (key) {\n return targetKeys.indexOf(key) === -1;\n }),\n targetSelectedKeys: selectedKeys.filter(function (key) {\n return targetKeys.indexOf(key) > -1;\n })\n };\n return _this;\n }\n\n _createClass(Transfer, [{\n key: \"getTitles\",\n value: function getTitles(transferLocale) {\n var titles = this.props.titles;\n\n if (titles) {\n return titles;\n }\n\n return transferLocale.titles;\n }\n }, {\n key: \"handleSelectChange\",\n value: function handleSelectChange(direction, holder) {\n var _this$state4 = this.state,\n sourceSelectedKeys = _this$state4.sourceSelectedKeys,\n targetSelectedKeys = _this$state4.targetSelectedKeys;\n var onSelectChange = this.props.onSelectChange;\n\n if (!onSelectChange) {\n return;\n }\n\n if (direction === 'left') {\n onSelectChange(holder, targetSelectedKeys);\n } else {\n onSelectChange(sourceSelectedKeys, holder);\n }\n }\n }, {\n key: \"separateDataSource\",\n value: function separateDataSource() {\n var _this$props4 = this.props,\n dataSource = _this$props4.dataSource,\n rowKey = _this$props4.rowKey,\n _this$props4$targetKe = _this$props4.targetKeys,\n targetKeys = _this$props4$targetKe === void 0 ? [] : _this$props4$targetKe;\n var leftDataSource = [];\n var rightDataSource = new Array(targetKeys.length);\n dataSource.forEach(function (record) {\n if (rowKey) {\n record.key = rowKey(record);\n } // rightDataSource should be ordered by targetKeys\n // leftDataSource should be ordered by dataSource\n\n\n var indexOfKey = targetKeys.indexOf(record.key);\n\n if (indexOfKey !== -1) {\n rightDataSource[indexOfKey] = record;\n } else {\n leftDataSource.push(record);\n }\n });\n return {\n leftDataSource: leftDataSource,\n rightDataSource: rightDataSource\n };\n }\n }, {\n key: \"render\",\n value: function render() {\n return /*#__PURE__*/React.createElement(LocaleReceiver, {\n componentName: \"Transfer\",\n defaultLocale: defaultLocale.Transfer\n }, this.renderTransfer);\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(_ref4) {\n var selectedKeys = _ref4.selectedKeys,\n targetKeys = _ref4.targetKeys,\n pagination = _ref4.pagination,\n children = _ref4.children;\n\n if (selectedKeys) {\n var mergedTargetKeys = targetKeys || [];\n return {\n sourceSelectedKeys: selectedKeys.filter(function (key) {\n return !mergedTargetKeys.includes(key);\n }),\n targetSelectedKeys: selectedKeys.filter(function (key) {\n return mergedTargetKeys.includes(key);\n })\n };\n }\n\n devWarning(!pagination || !children, 'Transfer', '`pagination` not support customize render list.');\n return null;\n }\n }]);\n\n return Transfer;\n}(React.Component); // For high-level customized Transfer @dqaria\n\n\nTransfer.List = List;\nTransfer.Operation = Operation;\nTransfer.Search = Search;\nTransfer.defaultProps = {\n dataSource: [],\n locale: {},\n showSearch: false,\n listStyle: function listStyle() {}\n};\nexport default Transfer;"]},"metadata":{},"sourceType":"module"}