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>
91 lines (74 loc) • 11.4 kB
JavaScript
var _excluded = ["className", "disabled", "onClick", "style", "title", "value"];
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 ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
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, { useContext } from "react";
import PropTypes from "prop-types";
import classNames from "classnames";
import { TabsContext } from "./Context";
import "./style";
var prefix = "adui-tabs";
var Tab = function Tab(_ref) {
var _classNames;
var className = _ref.className,
disabledProp = _ref.disabled,
onClick = _ref.onClick,
style = _ref.style,
title = _ref.title,
value = _ref.value,
otherProps = _objectWithoutProperties(_ref, _excluded);
var _useContext = useContext(TabsContext),
disabledContext = _useContext.disabled,
gutterContext = _useContext.gutter,
handleTabsValueChange = _useContext.handleTabsValueChange,
valueContext = _useContext.value;
var disabled = disabledProp || disabledContext;
var classSet = classNames(className, "".concat(prefix, "-tab"), (_classNames = {}, _defineProperty(_classNames, "".concat(prefix, "-active"), value === valueContext), _defineProperty(_classNames, "".concat(prefix, "-disabled"), disabled), _classNames));
var additionStyle = {};
if (gutterContext !== undefined) {
additionStyle.marginRight = "".concat(gutterContext, "px");
}
var handleClick = function handleClick() {
if (value !== undefined && !(disabled || disabledContext) && handleTabsValueChange) {
handleTabsValueChange(value);
}
if (onClick) {
onClick();
}
};
return React.createElement("div", _extends({
"aria-disabled": disabled,
"aria-selected": value === valueContext,
className: classSet,
key: value,
onClick: handleClick,
onKeyDown: function onKeyDown(_ref2) {
var key = _ref2.key;
if (key === "Enter") {
handleClick();
}
},
role: "tab",
tabIndex: -1,
style: _objectSpread(_objectSpread({}, additionStyle), style)
}, otherProps), title);
};
Tab.propTypes = {
className: PropTypes.string,
disabled: PropTypes.bool,
onClick: PropTypes.func,
style: PropTypes.object,
title: PropTypes.node.isRequired,
value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired
};
Tab.defaultProps = {
className: undefined,
disabled: false,
onClick: function onClick() {},
style: {}
};
export default Tab;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInVzZUNvbnRleHQiLCJQcm9wVHlwZXMiLCJjbGFzc05hbWVzIiwiVGFic0NvbnRleHQiLCJwcmVmaXgiLCJUYWIiLCJjbGFzc05hbWUiLCJkaXNhYmxlZFByb3AiLCJkaXNhYmxlZCIsIm9uQ2xpY2siLCJzdHlsZSIsInRpdGxlIiwidmFsdWUiLCJvdGhlclByb3BzIiwiZGlzYWJsZWRDb250ZXh0IiwiZ3V0dGVyQ29udGV4dCIsImd1dHRlciIsImhhbmRsZVRhYnNWYWx1ZUNoYW5nZSIsInZhbHVlQ29udGV4dCIsImNsYXNzU2V0IiwiYWRkaXRpb25TdHlsZSIsInVuZGVmaW5lZCIsIm1hcmdpblJpZ2h0IiwiaGFuZGxlQ2xpY2siLCJrZXkiLCJwcm9wVHlwZXMiLCJzdHJpbmciLCJib29sIiwiZnVuYyIsIm9iamVjdCIsIm5vZGUiLCJpc1JlcXVpcmVkIiwib25lT2ZUeXBlIiwibnVtYmVyIiwiZGVmYXVsdFByb3BzIl0sInNvdXJjZXMiOlsiLi4vLi4vY29tcG9uZW50cy90YWJzL1RhYi50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUNvbnRleHQgfSBmcm9tIFwicmVhY3RcIlxuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiXG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tIFwiY2xhc3NuYW1lc1wiXG5pbXBvcnQgeyBUYWJzQ29udGV4dCB9IGZyb20gXCIuL0NvbnRleHRcIlxuaW1wb3J0IFwiLi9zdHlsZVwiXG5cbmNvbnN0IHByZWZpeCA9IFwiYWR1aS10YWJzXCJcblxuZXhwb3J0IGludGVyZmFjZSBJVGFiUHJvcHMge1xuICBba2V5OiBzdHJpbmddOiBhbnlcbiAgLyoqXG4gICAqIOmZhOWKoOexu+WQjVxuICAgKi9cbiAgY2xhc3NOYW1lPzogc3RyaW5nXG4gIC8qKlxuICAgKiDmmK/lkKbnpoHnlKhcbiAgICovXG4gIGRpc2FibGVkPzogYm9vbGVhblxuICAvKipcbiAgICog54K55Ye75LqL5Lu255qEIGhhbmRsZXJcbiAgICovXG4gIG9uQ2xpY2s/OiAoZT86IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTERpdkVsZW1lbnQ+KSA9PiB2b2lkXG4gIC8qKlxuICAgKiDpmYTliqDmoLflvI9cbiAgICovXG4gIHN0eWxlPzogUmVhY3QuQ1NTUHJvcGVydGllc1xuICAvKipcbiAgICog5qCH562+5paH5a2XXG4gICAqL1xuICB0aXRsZTogUmVhY3QuUmVhY3ROb2RlXG4gIC8qKlxuICAgKiB2YWx1ZVxuICAgKi9cbiAgdmFsdWU/OiBSZWFjdC5SZWFjdFRleHRcbn1cblxuLyoqXG4gKiDlr7zoiKrpobXnrb4gLSBUYWJcbiAqL1xuY29uc3QgVGFiOiBSZWFjdC5GQzxJVGFiUHJvcHM+ID0gKHtcbiAgY2xhc3NOYW1lLFxuICBkaXNhYmxlZDogZGlzYWJsZWRQcm9wLFxuICBvbkNsaWNrLFxuICBzdHlsZSxcbiAgdGl0bGUsXG4gIHZhbHVlLFxuICAuLi5vdGhlclByb3BzXG59OiBJVGFiUHJvcHMpID0+IHtcbiAgY29uc3Qge1xuICAgIGRpc2FibGVkOiBkaXNhYmxlZENvbnRleHQsXG4gICAgZ3V0dGVyOiBndXR0ZXJDb250ZXh0LFxuICAgIGhhbmRsZVRhYnNWYWx1ZUNoYW5nZSxcbiAgICB2YWx1ZTogdmFsdWVDb250ZXh0LFxuICB9ID0gdXNlQ29udGV4dChUYWJzQ29udGV4dClcblxuICBjb25zdCBkaXNhYmxlZCA9IGRpc2FibGVkUHJvcCB8fCBkaXNhYmxlZENvbnRleHRcblxuICBjb25zdCBjbGFzc1NldCA9IGNsYXNzTmFtZXMoY2xhc3NOYW1lLCBgJHtwcmVmaXh9LXRhYmAsIHtcbiAgICBbYCR7cHJlZml4fS1hY3RpdmVgXTogdmFsdWUgPT09IHZhbHVlQ29udGV4dCxcbiAgICBbYCR7cHJlZml4fS1kaXNhYmxlZGBdOiBkaXNhYmxlZCxcbiAgfSlcblxuICBjb25zdCBhZGRpdGlvblN0eWxlOiBSZWFjdC5DU1NQcm9wZXJ0aWVzID0ge31cbiAgaWYgKGd1dHRlckNvbnRleHQgIT09IHVuZGVmaW5lZCkge1xuICAgIGFkZGl0aW9uU3R5bGUubWFyZ2luUmlnaHQgPSBgJHtndXR0ZXJDb250ZXh0fXB4YFxuICB9XG5cbiAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgdmFsdWUgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgIShkaXNhYmxlZCB8fCBkaXNhYmxlZENvbnRleHQpICYmXG4gICAgICBoYW5kbGVUYWJzVmFsdWVDaGFuZ2VcbiAgICApIHtcbiAgICAgIGhhbmRsZVRhYnNWYWx1ZUNoYW5nZSh2YWx1ZSlcbiAgICB9XG4gICAgaWYgKG9uQ2xpY2spIHtcbiAgICAgIG9uQ2xpY2soKVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgYXJpYS1kaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICBhcmlhLXNlbGVjdGVkPXt2YWx1ZSA9PT0gdmFsdWVDb250ZXh0fVxuICAgICAgY2xhc3NOYW1lPXtjbGFzc1NldH1cbiAgICAgIGtleT17dmFsdWV9XG4gICAgICBvbkNsaWNrPXtoYW5kbGVDbGlja31cbiAgICAgIG9uS2V5RG93bj17KHsga2V5IH06IFJlYWN0LktleWJvYXJkRXZlbnQ8SFRNTERpdkVsZW1lbnQ+KSA9PiB7XG4gICAgICAgIGlmIChrZXkgPT09IFwiRW50ZXJcIikge1xuICAgICAgICAgIGhhbmRsZUNsaWNrKClcbiAgICAgICAgfVxuICAgICAgfX1cbiAgICAgIHJvbGU9XCJ0YWJcIlxuICAgICAgdGFiSW5kZXg9ey0xfVxuICAgICAgc3R5bGU9e3tcbiAgICAgICAgLi4uYWRkaXRpb25TdHlsZSxcbiAgICAgICAgLi4uc3R5bGUsXG4gICAgICB9fVxuICAgICAgey4uLm90aGVyUHJvcHN9XG4gICAgPlxuICAgICAge3RpdGxlfVxuICAgIDwvZGl2PlxuICApXG59XG5cblRhYi5wcm9wVHlwZXMgPSB7XG4gIC8qKlxuICAgKiDpmYTliqDnsbvlkI1cbiAgICovXG4gIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgLyoqXG4gICAqIOaYr+WQpuemgeeUqFxuICAgKi9cbiAgZGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICAvKipcbiAgICog54K55Ye75LqL5Lu255qEIGhhbmRsZXJcbiAgICovXG4gIG9uQ2xpY2s6IFByb3BUeXBlcy5mdW5jLFxuICAvKipcbiAgICog6ZmE5Yqg5qC35byPXG4gICAqL1xuICBzdHlsZTogUHJvcFR5cGVzLm9iamVjdCxcbiAgLyoqXG4gICAqIOagh+etvuaWh+Wtl1xuICAgKi9cbiAgdGl0bGU6IFByb3BUeXBlcy5ub2RlLmlzUmVxdWlyZWQsXG4gIC8qKlxuICAgKiB2YWx1ZVxuICAgKi9cbiAgdmFsdWU6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1Byb3BUeXBlcy5zdHJpbmcsIFByb3BUeXBlcy5udW1iZXJdKS5pc1JlcXVpcmVkLFxufVxuXG5UYWIuZGVmYXVsdFByb3BzID0ge1xuICBjbGFzc05hbWU6IHVuZGVmaW5lZCxcbiAgZGlzYWJsZWQ6IGZhbHNlLFxuICBvbkNsaWNrOiAoKSA9PiB7fSxcbiAgc3R5bGU6IHt9LFxufVxuXG5leHBvcnQgZGVmYXVsdCBUYWJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPQSxLQUFQLElBQWdCQyxVQUFoQixRQUFrQyxPQUFsQztBQUNBLE9BQU9DLFNBQVAsTUFBc0IsWUFBdEI7QUFDQSxPQUFPQyxVQUFQLE1BQXVCLFlBQXZCO0FBQ0EsU0FBU0MsV0FBVCxRQUE0QixXQUE1QjtBQUNBLE9BQU8sU0FBUDtBQUVBLElBQU1DLE1BQU0sR0FBRyxXQUFmOztBQWlDQSxJQUFNQyxHQUF3QixHQUFHLFNBQTNCQSxHQUEyQixPQVFoQjtFQUFBOztFQUFBLElBUGZDLFNBT2UsUUFQZkEsU0FPZTtFQUFBLElBTkxDLFlBTUssUUFOZkMsUUFNZTtFQUFBLElBTGZDLE9BS2UsUUFMZkEsT0FLZTtFQUFBLElBSmZDLEtBSWUsUUFKZkEsS0FJZTtFQUFBLElBSGZDLEtBR2UsUUFIZkEsS0FHZTtFQUFBLElBRmZDLEtBRWUsUUFGZkEsS0FFZTtFQUFBLElBRFpDLFVBQ1k7O0VBQ2Ysa0JBS0liLFVBQVUsQ0FBQ0csV0FBRCxDQUxkO0VBQUEsSUFDWVcsZUFEWixlQUNFTixRQURGO0VBQUEsSUFFVU8sYUFGVixlQUVFQyxNQUZGO0VBQUEsSUFHRUMscUJBSEYsZUFHRUEscUJBSEY7RUFBQSxJQUlTQyxZQUpULGVBSUVOLEtBSkY7O0VBT0EsSUFBTUosUUFBUSxHQUFHRCxZQUFZLElBQUlPLGVBQWpDO0VBRUEsSUFBTUssUUFBUSxHQUFHakIsVUFBVSxDQUFDSSxTQUFELFlBQWVGLE1BQWYscUVBQ3JCQSxNQURxQixjQUNIUSxLQUFLLEtBQUtNLFlBRFAsMENBRXJCZCxNQUZxQixnQkFFREksUUFGQyxnQkFBM0I7RUFLQSxJQUFNWSxhQUFrQyxHQUFHLEVBQTNDOztFQUNBLElBQUlMLGFBQWEsS0FBS00sU0FBdEIsRUFBaUM7SUFDL0JELGFBQWEsQ0FBQ0UsV0FBZCxhQUErQlAsYUFBL0I7RUFDRDs7RUFFRCxJQUFNUSxXQUFXLEdBQUcsU0FBZEEsV0FBYyxHQUFNO0lBQ3hCLElBQ0VYLEtBQUssS0FBS1MsU0FBVixJQUNBLEVBQUViLFFBQVEsSUFBSU0sZUFBZCxDQURBLElBRUFHLHFCQUhGLEVBSUU7TUFDQUEscUJBQXFCLENBQUNMLEtBQUQsQ0FBckI7SUFDRDs7SUFDRCxJQUFJSCxPQUFKLEVBQWE7TUFDWEEsT0FBTztJQUNSO0VBQ0YsQ0FYRDs7RUFhQSxPQUNFO0lBQ0UsaUJBQWVELFFBRGpCO0lBRUUsaUJBQWVJLEtBQUssS0FBS00sWUFGM0I7SUFHRSxTQUFTLEVBQUVDLFFBSGI7SUFJRSxHQUFHLEVBQUVQLEtBSlA7SUFLRSxPQUFPLEVBQUVXLFdBTFg7SUFNRSxTQUFTLEVBQUUsMEJBQWtEO01BQUEsSUFBL0NDLEdBQStDLFNBQS9DQSxHQUErQzs7TUFDM0QsSUFBSUEsR0FBRyxLQUFLLE9BQVosRUFBcUI7UUFDbkJELFdBQVc7TUFDWjtJQUNGLENBVkg7SUFXRSxJQUFJLEVBQUMsS0FYUDtJQVlFLFFBQVEsRUFBRSxDQUFDLENBWmI7SUFhRSxLQUFLLGtDQUNBSCxhQURBLEdBRUFWLEtBRkE7RUFiUCxHQWlCTUcsVUFqQk4sR0FtQkdGLEtBbkJILENBREY7QUF1QkQsQ0FoRUQ7O0FBa0VBTixHQUFHLENBQUNvQixTQUFKLEdBQWdCO0VBSWRuQixTQUFTLEVBQUVMLFNBQVMsQ0FBQ3lCLE1BSlA7RUFRZGxCLFFBQVEsRUFBRVAsU0FBUyxDQUFDMEIsSUFSTjtFQVlkbEIsT0FBTyxFQUFFUixTQUFTLENBQUMyQixJQVpMO0VBZ0JkbEIsS0FBSyxFQUFFVCxTQUFTLENBQUM0QixNQWhCSDtFQW9CZGxCLEtBQUssRUFBRVYsU0FBUyxDQUFDNkIsSUFBVixDQUFlQyxVQXBCUjtFQXdCZG5CLEtBQUssRUFBRVgsU0FBUyxDQUFDK0IsU0FBVixDQUFvQixDQUFDL0IsU0FBUyxDQUFDeUIsTUFBWCxFQUFtQnpCLFNBQVMsQ0FBQ2dDLE1BQTdCLENBQXBCLEVBQTBERjtBQXhCbkQsQ0FBaEI7QUEyQkExQixHQUFHLENBQUM2QixZQUFKLEdBQW1CO0VBQ2pCNUIsU0FBUyxFQUFFZSxTQURNO0VBRWpCYixRQUFRLEVBQUUsS0FGTztFQUdqQkMsT0FBTyxFQUFFLG1CQUFNLENBQUUsQ0FIQTtFQUlqQkMsS0FBSyxFQUFFO0FBSlUsQ0FBbkI7QUFPQSxlQUFlTCxHQUFmIn0=