UNPKG

tdesign-react

Version:
142 lines (134 loc) 6.08 kB
/** * tdesign v1.16.2 * (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-8d0229b3.js'); var hooks_useGlobalIcon = require('../../../hooks/useGlobalIcon.js'); var hooks_useCommonClassName = require('../../../hooks/useCommonClassName.js'); require('../../../_chunks/dep-5cb0d66d.js'); require('../../../_chunks/dep-737b8bd8.js'); require('../../../_chunks/dep-831bdf33.js'); require('../../../_chunks/dep-0fe55884.js'); require('../../../_chunks/dep-b325182b.js'); require('../../../_chunks/dep-83aba171.js'); require('../../../_chunks/dep-2dde8b60.js'); require('../../../_chunks/dep-b304bc94.js'); require('../../../_chunks/dep-4ce0670e.js'); require('../../../_chunks/dep-bdafd287.js'); require('../../../_chunks/dep-3448f35f.js'); require('../../../_chunks/dep-22771603.js'); require('../../../hooks/useConfig.js'); require('../../../config-provider/ConfigContext.js'); require('../../../_chunks/dep-17dea53e.js'); require('../../../_chunks/dep-a0cbf081.js'); require('dayjs'); require('../../../_chunks/dep-481a1ecc.js'); require('../../../_chunks/dep-474eb386.js'); require('../../../_chunks/dep-3b256bc0.js'); require('../../../_chunks/dep-b6a3ada9.js'); require('../../../_chunks/dep-967e785f.js'); require('../../../_chunks/dep-5c8525ea.js'); require('../../../_chunks/dep-735cd5b9.js'); require('../../../_chunks/dep-4d300b8f.js'); require('../../../_chunks/dep-3332ad6f.js'); require('../../../_chunks/dep-98783318.js'); require('../../../_chunks/dep-fc884a8e.js'); require('../../../_chunks/dep-008b21d4.js'); require('../../../_chunks/dep-9193eded.js'); require('../../../_chunks/dep-afe817f9.js'); require('../../../_chunks/dep-0b70c7ec.js'); require('../../../_chunks/dep-a1e3e59b.js'); require('../../../_chunks/dep-24ab8f68.js'); require('../../../_chunks/dep-753b7d52.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