antd
Version:
An enterprise-class UI design language and React components implementation
25 lines • 1.08 kB
JavaScript
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
import classNames from 'classnames';
import * as React from 'react';
function renderExpandIcon(locale) {
return function expandIcon(_ref) {
var _classNames;
var prefixCls = _ref.prefixCls,
onExpand = _ref.onExpand,
record = _ref.record,
expanded = _ref.expanded,
expandable = _ref.expandable;
var iconPrefix = prefixCls + "-row-expand-icon";
return /*#__PURE__*/React.createElement("button", {
type: "button",
onClick: function onClick(e) {
onExpand(record, e);
e.stopPropagation();
},
className: classNames(iconPrefix, (_classNames = {}, _defineProperty(_classNames, iconPrefix + "-spaced", !expandable), _defineProperty(_classNames, iconPrefix + "-expanded", expandable && expanded), _defineProperty(_classNames, iconPrefix + "-collapsed", expandable && !expanded), _classNames)),
"aria-label": expanded ? locale.collapse : locale.expand,
"aria-expanded": expanded
});
};
}
export default renderExpandIcon;