UNPKG

2.66 kBJavaScriptView Raw
1"use strict";
2
3var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
5var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
7Object.defineProperty(exports, "__esModule", {
8 value: true
9});
10exports.default = exports.styles = void 0;
11
12var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
14var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
16var React = _interopRequireWildcard(require("react"));
17
18var _propTypes = _interopRequireDefault(require("prop-types"));
19
20var _clsx = _interopRequireDefault(require("clsx"));
21
22var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
23
24var _capitalize = _interopRequireDefault(require("../utils/capitalize"));
25
26var styles = function styles(theme) {
27 return {
28 root: {
29 position: 'absolute',
30 height: 2,
31 bottom: 0,
32 width: '100%',
33 transition: theme.transitions.create()
34 },
35 colorPrimary: {
36 backgroundColor: theme.palette.primary.main
37 },
38 colorSecondary: {
39 backgroundColor: theme.palette.secondary.main
40 },
41 vertical: {
42 height: '100%',
43 width: 2,
44 right: 0
45 }
46 };
47};
48/**
49 * @ignore - internal component.
50 */
51
52
53exports.styles = styles;
54var TabIndicator = /*#__PURE__*/React.forwardRef(function TabIndicator(props, ref) {
55 var classes = props.classes,
56 className = props.className,
57 color = props.color,
58 orientation = props.orientation,
59 other = (0, _objectWithoutProperties2.default)(props, ["classes", "className", "color", "orientation"]);
60 return /*#__PURE__*/React.createElement("span", (0, _extends2.default)({
61 className: (0, _clsx.default)(classes.root, classes["color".concat((0, _capitalize.default)(color))], className, orientation === 'vertical' && classes.vertical),
62 ref: ref
63 }, other));
64});
65process.env.NODE_ENV !== "production" ? TabIndicator.propTypes = {
66 /**
67 * Override or extend the styles applied to the component.
68 * See [CSS API](#css) below for more details.
69 */
70 classes: _propTypes.default.object.isRequired,
71
72 /**
73 * @ignore
74 */
75 className: _propTypes.default.string,
76
77 /**
78 * @ignore
79 * The color of the tab indicator.
80 */
81 color: _propTypes.default.oneOf(['primary', 'secondary']).isRequired,
82
83 /**
84 * The tabs orientation (layout flow direction).
85 */
86 orientation: _propTypes.default.oneOf(['horizontal', 'vertical']).isRequired
87} : void 0;
88
89var _default = (0, _withStyles.default)(styles, {
90 name: 'PrivateTabIndicator'
91})(TabIndicator);
92
93exports.default = _default;
\No newline at end of file