UNPKG

@flatbiz/antd

Version:
46 lines (42 loc) 1.53 kB
/*! @flatjs/forge MIT @flatbiz/antd */ import _CloseCircleFilled from '@ant-design/icons/es/icons/CloseCircleFilled.js'; import _DeleteOutlined from '@ant-design/icons/es/icons/DeleteOutlined.js'; import { hooks } from '@wove/react/hooks'; import { a as _slicedToArray } from './_rollupPluginBabelHelpers-BYm17lo8.js'; import { useState, useRef, Fragment } from 'react'; import { I as IconWrapper } from './icon-wrapper-HJ2r5GeZ.js'; import { jsx } from 'react/jsx-runtime'; var DeleteNode = function DeleteNode(props) { var _useState = useState(false), _useState2 = _slicedToArray(_useState, 2), status = _useState2[0], setStatus = _useState2[1]; var timeoutRef = useRef(); var onClick = hooks.useDebounceClick(function (event) { event.stopPropagation(); if (!status) { setStatus(true); timeoutRef.current = setTimeout(function () { setStatus(false); }, 3000); } else { clearTimeout(timeoutRef.current); setStatus(false); props.onDelete(); } }, 300); if (props.hidden) return /*#__PURE__*/jsx(Fragment, {}); return /*#__PURE__*/jsx(IconWrapper, { className: props.className, style: props.style, icon: !status ? props.icon ? props.icon : /*#__PURE__*/jsx(_DeleteOutlined, {}) : props.confirmIcon ? props.confirmIcon : /*#__PURE__*/jsx(_CloseCircleFilled, { style: { color: 'red' } }), onClick: onClick, size: "small" }); }; export { DeleteNode as D }; //# sourceMappingURL=delete-node-BF-2Gsyu.js.map