UNPKG

adui

Version:

<div> <img src="https://wxa.wxs.qq.com/mpweb/delivery/legacy/wxadtouch/upload/t1/od834zef_52939fc6.png" style="margin:40px 0 0 -8px; background-color: #fcfcfc; box-shadow: none;" /> </div>

99 lines (85 loc) 14 kB
var _excluded = ["className", "color", "icon", "interactive", "onClick", "paths", "size"]; function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; } function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } import React, { useMemo } from "react"; import PropTypes from "prop-types"; import classNames from "classnames"; import { color2hsl } from "../_util/color"; import IconSvgPaths from "./IconSvgPaths"; import "./style"; var prefix = "adui-icon"; var Icon = function Icon(_ref) { var _classNames; var className = _ref.className, color = _ref.color, icon = _ref.icon, interactiveProp = _ref.interactive, _onClick = _ref.onClick, paths = _ref.paths, size = _ref.size, otherProps = _objectWithoutProperties(_ref, _excluded); if (!icon && !(paths !== null && paths !== void 0 && paths.length)) { return null; } var lightness = useMemo(function () { var colorProp = color; if (colorProp && colorProp.includes("var")) { var documentStyle = getComputedStyle(document.documentElement); if (documentStyle) { colorProp = documentStyle.getPropertyValue(colorProp.slice(4, colorProp.length - 1)); } colorProp = "#a3a3a3"; } return color2hsl(colorProp).l; }, [color]); var data = IconSvgPaths[icon] || []; var finalPaths = (paths || data).map(function (d) { return React.createElement("path", { d: d, key: d, fillRule: "evenodd" }); }); var interactive = interactiveProp || !!_onClick; var classSet = classNames(className, "".concat(prefix, "-base"), (_classNames = {}, _defineProperty(_classNames, "".concat(prefix, "-interactive"), interactive), _defineProperty(_classNames, "".concat(prefix, "-interactive_level_0"), interactive && lightness < 0.35), _defineProperty(_classNames, "".concat(prefix, "-interactive_level_1"), interactive && lightness < 0.45 && lightness >= 0.35), _defineProperty(_classNames, "".concat(prefix, "-interactive_level_2"), interactive && lightness < 0.65 && lightness >= 0.45), _defineProperty(_classNames, "".concat(prefix, "-interactive_level_3"), interactive && lightness < 1 && lightness >= 0.65), _defineProperty(_classNames, "".concat(prefix, "-interactive_level_white"), interactive && lightness === 1), _classNames)); return React.createElement("svg", _extends({ className: classSet, width: size, height: size, viewBox: "0 0 18 18", fill: color, "data-interactive": interactive, "data-icon": icon, onClick: function onClick(e) { if (_onClick) { _onClick(e); } } }, otherProps), finalPaths, interactive && lightness !== 1 && React.createElement("g", { className: "".concat(prefix, "-interactive-cover"), fill: "#000" }, finalPaths)); }; Icon.propTypes = { className: PropTypes.string, color: PropTypes.string, icon: PropTypes.any, interactive: PropTypes.bool, onClick: PropTypes.func, paths: PropTypes.array, size: PropTypes.number }; Icon.defaultProps = { className: undefined, color: "var(--gray-700)", icon: undefined, interactive: false, onClick: null, paths: undefined, size: 18 }; Icon.type = "Icon"; export default Icon; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInVzZU1lbW8iLCJQcm9wVHlwZXMiLCJjbGFzc05hbWVzIiwiY29sb3IyaHNsIiwiSWNvblN2Z1BhdGhzIiwicHJlZml4IiwiSWNvbiIsImNsYXNzTmFtZSIsImNvbG9yIiwiaWNvbiIsImludGVyYWN0aXZlUHJvcCIsImludGVyYWN0aXZlIiwib25DbGljayIsInBhdGhzIiwic2l6ZSIsIm90aGVyUHJvcHMiLCJsZW5ndGgiLCJsaWdodG5lc3MiLCJjb2xvclByb3AiLCJpbmNsdWRlcyIsImRvY3VtZW50U3R5bGUiLCJnZXRDb21wdXRlZFN0eWxlIiwiZG9jdW1lbnQiLCJkb2N1bWVudEVsZW1lbnQiLCJnZXRQcm9wZXJ0eVZhbHVlIiwic2xpY2UiLCJsIiwiZGF0YSIsImZpbmFsUGF0aHMiLCJtYXAiLCJkIiwiY2xhc3NTZXQiLCJlIiwicHJvcFR5cGVzIiwic3RyaW5nIiwiYW55IiwiYm9vbCIsImZ1bmMiLCJhcnJheSIsIm51bWJlciIsImRlZmF1bHRQcm9wcyIsInVuZGVmaW5lZCIsInR5cGUiXSwic291cmNlcyI6WyIuLi8uLi9jb21wb25lbnRzL2ljb24vSWNvbi50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8gfSBmcm9tIFwicmVhY3RcIlxuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiXG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tIFwiY2xhc3NuYW1lc1wiXG5pbXBvcnQgeyBjb2xvcjJoc2wgfSBmcm9tIFwiLi4vX3V0aWwvY29sb3JcIlxuaW1wb3J0IEljb25TdmdQYXRocyBmcm9tIFwiLi9JY29uU3ZnUGF0aHNcIlxuaW1wb3J0IHsgSUljb25OYW1lcyB9IGZyb20gXCIuL0ljb25OYW1lc1wiXG5pbXBvcnQgXCIuL3N0eWxlXCJcblxuY29uc3QgcHJlZml4ID0gXCJhZHVpLWljb25cIlxuXG5leHBvcnQgdHlwZSBJY29uTmFtZXMgPSBrZXlvZiBJSWNvbk5hbWVzXG5cbmV4cG9ydCBpbnRlcmZhY2UgSUljb25Qcm9wcyB7XG4gIFtrZXk6IHN0cmluZ106IGFueVxuICAvKipcbiAgICog6ZmE5Yqg57G75ZCNXG4gICAqL1xuICBjbGFzc05hbWU/OiBzdHJpbmdcbiAgLyoqXG4gICAqIOminOiJsuWAvO+8jOaUr+aMgSByZ2IoYT8pLCBoZXgg5Lul5Y+KIGNzcyB2YXJpYWJsZVxuICAgKi9cbiAgY29sb3I/OiBzdHJpbmdcbiAgLyoqXG4gICAqIOWbvuagh+WQjeensFxuICAgKi9cbiAgaWNvbjogSWNvbk5hbWVzXG4gIC8qKlxuICAgKiDmmK/lkKblj6/kuqTkupLvvIznu4Tku7blhoXpg6jlsIbkvJrmoLnmja7lvZPliY3popzoibLvvIzkuLrlhbbliqDkuIogaG92ZXIgYWN0aXZlIOagt+W8j1xuICAgKi9cbiAgaW50ZXJhY3RpdmU/OiBib29sZWFuXG4gIC8qKlxuICAgKiDngrnlh7vkuovku7bnmoQgaGFuZGxlclxuICAgKi9cbiAgb25DbGljaz86ICgoZTogUmVhY3QuTW91c2VFdmVudDxTVkdTVkdFbGVtZW50LCBNb3VzZUV2ZW50PikgPT4gdm9pZCkgfCBudWxsXG4gIC8qKlxuICAgKiDoh6rlrprkuYnlm77moIcgcGF0aCDot6/lvoRcbiAgICovXG4gIHBhdGhzPzogc3RyaW5nW11cbiAgLyoqXG4gICAqIOWwuuWvuFxuICAgKi9cbiAgc2l6ZT86IG51bWJlclxufVxuXG4vKipcbiAqIOivreS5ieWMlueahOefoumHj+WbvuW9ou+8jOWIhuS4uuWvvOiIquOAgeWPjemmiOOAgee8lui+keOAgeW3peWFt+OAgeWbvuihqOWSjOeUn+a0u+S6lOenjeexu+Wei+OAglxuICovXG5jb25zdCBJY29uOiBSZWFjdC5GQzxJSWNvblByb3BzPiAmIHtcbiAgdHlwZTogc3RyaW5nXG59ID0gKHtcbiAgY2xhc3NOYW1lLFxuICBjb2xvcixcbiAgaWNvbixcbiAgaW50ZXJhY3RpdmU6IGludGVyYWN0aXZlUHJvcCxcbiAgb25DbGljayxcbiAgcGF0aHMsXG4gIHNpemUsXG4gIC4uLm90aGVyUHJvcHNcbn06IElJY29uUHJvcHMpID0+IHtcbiAgaWYgKCFpY29uICYmICFwYXRocz8ubGVuZ3RoKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfVxuXG4gIGNvbnN0IGxpZ2h0bmVzcyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGxldCBjb2xvclByb3AgPSBjb2xvclxuICAgIGlmIChjb2xvclByb3AgJiYgY29sb3JQcm9wLmluY2x1ZGVzKFwidmFyXCIpKSB7XG4gICAgICBjb25zdCBkb2N1bWVudFN0eWxlID0gZ2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpXG4gICAgICBpZiAoZG9jdW1lbnRTdHlsZSkge1xuICAgICAgICBjb2xvclByb3AgPSBkb2N1bWVudFN0eWxlLmdldFByb3BlcnR5VmFsdWUoXG4gICAgICAgICAgY29sb3JQcm9wLnNsaWNlKDQsIGNvbG9yUHJvcC5sZW5ndGggLSAxKVxuICAgICAgICApXG4gICAgICB9XG4gICAgICBjb2xvclByb3AgPSBcIiNhM2EzYTNcIlxuICAgIH1cbiAgICByZXR1cm4gY29sb3IyaHNsKGNvbG9yUHJvcCkubFxuICB9LCBbY29sb3JdKVxuXG4gIGNvbnN0IGRhdGEgPSBJY29uU3ZnUGF0aHNbaWNvbl0gfHwgW11cbiAgY29uc3QgZmluYWxQYXRocyA9IChwYXRocyB8fCBkYXRhKS5tYXAoKGQ6IHN0cmluZykgPT4gKFxuICAgIDxwYXRoIGQ9e2R9IGtleT17ZH0gZmlsbFJ1bGU9XCJldmVub2RkXCIgLz5cbiAgKSlcbiAgY29uc3QgaW50ZXJhY3RpdmUgPSBpbnRlcmFjdGl2ZVByb3AgfHwgISFvbkNsaWNrXG4gIGNvbnN0IGNsYXNzU2V0ID0gY2xhc3NOYW1lcyhjbGFzc05hbWUsIGAke3ByZWZpeH0tYmFzZWAsIHtcbiAgICBbYCR7cHJlZml4fS1pbnRlcmFjdGl2ZWBdOiBpbnRlcmFjdGl2ZSxcbiAgICBbYCR7cHJlZml4fS1pbnRlcmFjdGl2ZV9sZXZlbF8wYF06IGludGVyYWN0aXZlICYmIGxpZ2h0bmVzcyA8IDAuMzUsXG4gICAgW2Ake3ByZWZpeH0taW50ZXJhY3RpdmVfbGV2ZWxfMWBdOlxuICAgICAgaW50ZXJhY3RpdmUgJiYgbGlnaHRuZXNzIDwgMC40NSAmJiBsaWdodG5lc3MgPj0gMC4zNSxcbiAgICBbYCR7cHJlZml4fS1pbnRlcmFjdGl2ZV9sZXZlbF8yYF06XG4gICAgICBpbnRlcmFjdGl2ZSAmJiBsaWdodG5lc3MgPCAwLjY1ICYmIGxpZ2h0bmVzcyA+PSAwLjQ1LFxuICAgIFtgJHtwcmVmaXh9LWludGVyYWN0aXZlX2xldmVsXzNgXTpcbiAgICAgIGludGVyYWN0aXZlICYmIGxpZ2h0bmVzcyA8IDEgJiYgbGlnaHRuZXNzID49IDAuNjUsXG4gICAgW2Ake3ByZWZpeH0taW50ZXJhY3RpdmVfbGV2ZWxfd2hpdGVgXTogaW50ZXJhY3RpdmUgJiYgbGlnaHRuZXNzID09PSAxLFxuICB9KVxuXG4gIHJldHVybiAoXG4gICAgPHN2Z1xuICAgICAgY2xhc3NOYW1lPXtjbGFzc1NldH1cbiAgICAgIHdpZHRoPXtzaXplfVxuICAgICAgaGVpZ2h0PXtzaXplfVxuICAgICAgdmlld0JveD1cIjAgMCAxOCAxOFwiXG4gICAgICBmaWxsPXtjb2xvcn1cbiAgICAgIGRhdGEtaW50ZXJhY3RpdmU9e2ludGVyYWN0aXZlfVxuICAgICAgZGF0YS1pY29uPXtpY29ufVxuICAgICAgb25DbGljaz17KGUpID0+IHtcbiAgICAgICAgaWYgKG9uQ2xpY2spIHtcbiAgICAgICAgICBvbkNsaWNrKGUpXG4gICAgICAgIH1cbiAgICAgIH19XG4gICAgICB7Li4ub3RoZXJQcm9wc31cbiAgICA+XG4gICAgICB7ZmluYWxQYXRoc31cbiAgICAgIHtpbnRlcmFjdGl2ZSAmJiBsaWdodG5lc3MgIT09IDEgJiYgKFxuICAgICAgICA8ZyBjbGFzc05hbWU9e2Ake3ByZWZpeH0taW50ZXJhY3RpdmUtY292ZXJgfSBmaWxsPVwiIzAwMFwiPlxuICAgICAgICAgIHtmaW5hbFBhdGhzfVxuICAgICAgICA8L2c+XG4gICAgICApfVxuICAgIDwvc3ZnPlxuICApXG59XG5cbkljb24ucHJvcFR5cGVzID0ge1xuICAvKipcbiAgICog6ZmE5Yqg57G75ZCNXG4gICAqL1xuICBjbGFzc05hbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gIC8qKlxuICAgKiDpopzoibLlgLzvvIzmlK/mjIEgcmdiKGE/KSwgaGV4IOS7peWPiiBjc3MgdmFyaWFibGVcbiAgICovXG4gIGNvbG9yOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAvKipcbiAgICog5Zu+5qCH5ZCN56ewXG4gICAqL1xuICBpY29uOiBQcm9wVHlwZXMuYW55LFxuICAvKipcbiAgICog5piv5ZCm5Y+v5Lqk5LqS77yM57uE5Lu25YaF6YOo5bCG5Lya5qC55o2u5b2T5YmN6aKc6Imy77yM5Li65YW25Yqg5LiKIGhvdmVyIGFjdGl2ZSDmoLflvI9cbiAgICovXG4gIGludGVyYWN0aXZlOiBQcm9wVHlwZXMuYm9vbCxcbiAgLyoqXG4gICAqIOeCueWHu+S6i+S7tueahCBoYW5kbGVyXG4gICAqL1xuICBvbkNsaWNrOiBQcm9wVHlwZXMuZnVuYyxcbiAgLyoqXG4gICAqIOiHquWumuS5ieWbvuaghyBwYXRoIOi3r+W+hFxuICAgKi9cbiAgcGF0aHM6IFByb3BUeXBlcy5hcnJheSxcbiAgLyoqXG4gICAqIOWwuuWvuFxuICAgKi9cbiAgc2l6ZTogUHJvcFR5cGVzLm51bWJlcixcbn1cblxuSWNvbi5kZWZhdWx0UHJvcHMgPSB7XG4gIGNsYXNzTmFtZTogdW5kZWZpbmVkLFxuICBjb2xvcjogXCJ2YXIoLS1ncmF5LTcwMClcIixcbiAgaWNvbjogdW5kZWZpbmVkLFxuICBpbnRlcmFjdGl2ZTogZmFsc2UsXG4gIG9uQ2xpY2s6IG51bGwsXG4gIHBhdGhzOiB1bmRlZmluZWQsXG4gIHNpemU6IDE4LFxufVxuXG5JY29uLnR5cGUgPSBcIkljb25cIlxuXG5leHBvcnQgZGVmYXVsdCBJY29uXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxPQUFPQSxLQUFQLElBQWdCQyxPQUFoQixRQUErQixPQUEv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