UNPKG

@ant-design/x

Version:

Craft AI-driven interfaces effortlessly

64 lines (63 loc) 1.79 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _antd = require("antd"); var _clsx = require("clsx"); var _react = _interopRequireDefault(require("react")); var _ActionsMenu = _interopRequireDefault(require("./ActionsMenu")); var _context = require("./context"); const Item = props => { const { item, onClick, dropdownProps = {} } = props; const { prefixCls, classNames = {}, styles = {} } = _react.default.useContext(_context.ActionsContext) || {}; const id = _react.default.useId(); const itemKey = item?.key || id; if (!item) { return null; } if (item.actionRender) { return typeof item.actionRender === 'function' ? item.actionRender(item) : item.actionRender; } if (item.subItems) { return /*#__PURE__*/_react.default.createElement(_ActionsMenu.default, { key: itemKey, item: item, onClick: onClick, dropdownProps: dropdownProps }); } return /*#__PURE__*/_react.default.createElement("div", { className: (0, _clsx.clsx)(`${prefixCls}-item`, classNames.item, { [`${prefixCls}-list-danger`]: item?.danger }), style: styles.item, onClick: domEvent => { if (item?.onItemClick) { item.onItemClick(item); return; } onClick?.({ key: itemKey, item: item, keyPath: [itemKey], domEvent }); }, key: itemKey }, /*#__PURE__*/_react.default.createElement(_antd.Tooltip, { title: item.label }, /*#__PURE__*/_react.default.createElement("div", { className: `${prefixCls}-icon` }, item?.icon))); }; var _default = exports.default = Item;