UNPKG

tdesign-react

Version:
143 lines (135 loc) 6.13 kB
/** * tdesign v1.15.1 * (c) 2025 tdesign * @license MIT */ 'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var React = require('react'); var classNames = require('classnames'); var tdesignIconsReact = require('tdesign-icons-react'); var color = require('../../../_chunks/dep-7cfeaee5.js'); var hooks_useGlobalIcon = require('../../../hooks/useGlobalIcon.js'); var hooks_useCommonClassName = require('../../../hooks/useCommonClassName.js'); require('../../../_chunks/dep-8e4d656d.js'); require('../../../_chunks/dep-00b49251.js'); require('../../../_chunks/dep-69792df2.js'); require('../../../_chunks/dep-0006fcfa.js'); require('../../../_chunks/dep-667ac7af.js'); require('../../../_chunks/dep-4d5c26af.js'); require('../../../_chunks/dep-15247f60.js'); require('../../../_chunks/dep-4ed9eda4.js'); require('../../../_chunks/dep-25585736.js'); require('../../../_chunks/dep-64577888.js'); require('../../../_chunks/dep-62e73936.js'); require('../../../_chunks/dep-95a6dd1c.js'); require('../../../hooks/useConfig.js'); require('../../../config-provider/ConfigContext.js'); require('../../../_chunks/dep-1df1dad8.js'); require('../../../_chunks/dep-5b5ab11b.js'); require('dayjs'); require('../../../_chunks/dep-f32c03f1.js'); require('../../../_chunks/dep-31c4bc3d.js'); require('../../../_chunks/dep-eea2872a.js'); require('../../../_chunks/dep-71455db7.js'); require('../../../_chunks/dep-9e5a468d.js'); require('../../../_chunks/dep-ec8d2dca.js'); require('../../../_chunks/dep-fc596d16.js'); require('../../../_chunks/dep-f26edb7b.js'); require('../../../_chunks/dep-f33c1939.js'); require('../../../_chunks/dep-21ece627.js'); require('../../../_chunks/dep-25e4aa84.js'); require('../../../_chunks/dep-e1fbe1c3.js'); require('../../../_chunks/dep-df2b541f.js'); require('../../../_chunks/dep-edd366db.js'); require('../../../_chunks/dep-a56c4939.js'); require('../../../_chunks/dep-6c297e20.js'); require('../../../_chunks/dep-b7ad4d54.js'); require('../../../_chunks/dep-a2cb9299.js'); require('../../../_chunks/dep-f981815b.js'); function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var React__default = /*#__PURE__*/_interopDefaultLegacy(React); var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames); var Swatches = function Swatches(props) { var baseClassName = props.baseClassName, _props$colors = props.colors, colors = _props$colors === void 0 ? [] : _props$colors, _props$editable = props.editable, editable = _props$editable === void 0 ? false : _props$editable, title = props.title, onChange = props.onChange, disabled = props.disabled, onSetColor = props.onSetColor, handleAddColor = props.handleAddColor; var _useGlobalIcon = hooks_useGlobalIcon["default"]({ DeleteIcon: tdesignIconsReact.DeleteIcon, AddIcon: tdesignIconsReact.AddIcon }), DeleteIcon = _useGlobalIcon.DeleteIcon, AddIcon = _useGlobalIcon.AddIcon; var swatchesClass = "".concat(baseClassName, "__swatches"); var _useCommonClassName = hooks_useCommonClassName["default"](), statusClassNames = _useCommonClassName.STATUS; var isEqualCurrentColor = function isEqualCurrentColor(color$1) { return color.Color.compare(color$1, props.color.css); }; var selectedColorIndex = function selectedColorIndex() { return colors.findIndex(function (color) { return isEqualCurrentColor(color); }); }; var handleRemoveColor = function handleRemoveColor() { var selectedIndex = selectedColorIndex(); if (selectedIndex > -1) { var newColors = colors.filter(function (item, index) { return index !== selectedIndex; }); onChange(newColors); } }; var handleClick = function handleClick(color) { return onSetColor(color); }; return /* @__PURE__ */React__default["default"].createElement("div", { className: swatchesClass }, title ? /* @__PURE__ */React__default["default"].createElement("h3", { className: "".concat(swatchesClass, "--title") }, /* @__PURE__ */React__default["default"].createElement("span", null, title), editable && /* @__PURE__ */React__default["default"].createElement("div", { className: "".concat(swatchesClass, "--actions") }, /* @__PURE__ */React__default["default"].createElement("span", { role: "button", className: "".concat(baseClassName, "__icon"), onClick: function onClick() { return handleAddColor(); } }, /* @__PURE__ */React__default["default"].createElement(AddIcon, null)), colors.length > 0 ? /* @__PURE__ */React__default["default"].createElement("span", { role: "button", className: "".concat(baseClassName, "__icon"), onClick: function onClick() { return handleRemoveColor(); } }, /* @__PURE__ */React__default["default"].createElement(DeleteIcon, null)) : null)) : /* @__PURE__ */React__default["default"].createElement(React__default["default"].Fragment, null), /* @__PURE__ */React__default["default"].createElement("ul", { className: classNames__default["default"]("".concat(swatchesClass, "--items"), "narrow-scrollbar") }, colors.map(function (color) { return /* @__PURE__ */React__default["default"].createElement("li", { className: classNames__default["default"]("".concat(swatchesClass, "--item"), isEqualCurrentColor(color) && editable ? statusClassNames.active : ""), key: color, onClick: function onClick() { if (disabled) { return; } handleClick(color); } }, /* @__PURE__ */React__default["default"].createElement("div", { className: classNames__default["default"]("".concat(swatchesClass, "--item__color"), "".concat(baseClassName, "--bg-alpha")) }, /* @__PURE__ */React__default["default"].createElement("span", { className: "".concat(swatchesClass, "--item__inner"), style: { background: color } }))); }))); }; var SwatchesPanel = /*#__PURE__*/React__default["default"].memo(Swatches); exports["default"] = SwatchesPanel; //# sourceMappingURL=swatches.js.map