ExpandIcon.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
  3. Object.defineProperty(exports, "__esModule", {
  4. value: true
  5. });
  6. exports.default = void 0;
  7. var _vue = require("vue");
  8. var _classNames = _interopRequireDefault(require("../_util/classNames"));
  9. function renderExpandIcon(locale) {
  10. return function expandIcon(_ref) {
  11. let {
  12. prefixCls,
  13. onExpand,
  14. record,
  15. expanded,
  16. expandable
  17. } = _ref;
  18. const iconPrefix = `${prefixCls}-row-expand-icon`;
  19. return (0, _vue.createVNode)("button", {
  20. "type": "button",
  21. "onClick": e => {
  22. onExpand(record, e);
  23. e.stopPropagation();
  24. },
  25. "class": (0, _classNames.default)(iconPrefix, {
  26. [`${iconPrefix}-spaced`]: !expandable,
  27. [`${iconPrefix}-expanded`]: expandable && expanded,
  28. [`${iconPrefix}-collapsed`]: expandable && !expanded
  29. }),
  30. "aria-label": expanded ? locale.collapse : locale.expand,
  31. "aria-expanded": expanded
  32. }, null);
  33. };
  34. }
  35. var _default = exports.default = renderExpandIcon;