UNPKG

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