UNPKG

4.14 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, '__esModule', { value: true });
4
5function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
6
7var slicedToArray = require('./slicedToArray-0711941d.js');
8require('./unsupportedIterableToArray-68db1d3b.js');
9var React = require('react');
10var React__default = _interopDefault(React);
11require('./_commonjsHelpers-72d386ba.js');
12var index = require('./index-b0606964.js');
13require('./defineProperty-0921a47c.js');
14require('./toConsumableArray-d8a4a2c3.js');
15var _styled = require('styled-components');
16var _styled__default = _interopDefault(_styled);
17require('./getPrototypeOf-2a661a20.js');
18require('./color.js');
19require('./components.js');
20require('./contains-component.js');
21require('./css.js');
22require('./dayjs.min-e07657bf.js');
23require('./date.js');
24require('./miscellaneous.js');
25require('./environment.js');
26require('./font.js');
27require('./math-f4029164.js');
28require('./characters.js');
29require('./format.js');
30require('./keycodes.js');
31require('./url.js');
32require('./web3.js');
33var constants = require('./constants.js');
34require('./breakpoints.js');
35require('./springs.js');
36var textStyles = require('./text-styles.js');
37require('./theme-dark.js');
38require('./theme-light.js');
39var Theme = require('./Theme.js');
40require('./extends-40571110.js');
41require('./objectWithoutProperties-35db8ab0.js');
42var index$1 = require('./index-ecc57c9f.js');
43require('./FocusVisible.js');
44var ButtonBase = require('./ButtonBase.js');
45
46var _StyledLi = _styled__default("li").withConfig({
47 displayName: "Tab___StyledLi",
48 componentId: "sc-1cgzd3b-0"
49})(["list-style:none"]);
50
51var _StyledButtonBase = _styled__default(ButtonBase.default).withConfig({
52 displayName: "Tab___StyledButtonBase",
53 componentId: "sc-1cgzd3b-1"
54})(["", ";border-radius:0;transition:background 50ms ease-in-out;&:active{background:", ";}"], function (p) {
55 return p._css;
56}, function (p) {
57 return p._css2;
58});
59
60var _StyledSpan = _styled__default("span").withConfig({
61 displayName: "Tab___StyledSpan",
62 componentId: "sc-1cgzd3b-2"
63})(["display:flex;position:relative;align-items:center;height:", "px;padding:0 ", "px;white-space:nowrap;color:", ";"], function (p) {
64 return p._css3;
65}, function (p) {
66 return p._css4;
67}, function (p) {
68 return p._css5;
69});
70
71var _StyledSpan2 = _styled__default("span").withConfig({
72 displayName: "Tab___StyledSpan2",
73 componentId: "sc-1cgzd3b-3"
74})(["position:absolute;left:0;right:0;bottom:0;background:", ";height:2px;opacity:", ";transition-property:transform,opacity;transition-duration:150ms;transition-timing-function:ease-in-out;transform:scale3d(1,", ",1);transform-origin:0 100%;"], function (p) {
75 return p._css6;
76}, function (p) {
77 return p._css7;
78}, function (p) {
79 return p._css8;
80});
81
82function Tab(_ref) {
83 var index = _ref.index,
84 item = _ref.item,
85 selected = _ref.selected,
86 onChange = _ref.onChange;
87 var theme = Theme.useTheme();
88
89 var _useInside = index$1.o('SidePanel'),
90 _useInside2 = slicedToArray._slicedToArray(_useInside, 1),
91 insideSidePanel = _useInside2[0];
92
93 var handleClick = React.useCallback(function () {
94 onChange(index);
95 }, [index, onChange]);
96 return /*#__PURE__*/React__default.createElement(_StyledLi, null, /*#__PURE__*/React__default.createElement(_StyledButtonBase, {
97 focusRingRadius: constants.RADIUS,
98 onClick: handleClick,
99 _css: textStyles.textStyle('body2'),
100 _css2: theme.surfacePressed
101 }, /*#__PURE__*/React__default.createElement(_StyledSpan, {
102 _css3: 8 * constants.GU - (insideSidePanel ? 1 : 2),
103 _css4: 3 * constants.GU,
104 _css5: selected ? theme.surfaceContent : theme.surfaceContentSecondary
105 }, item, /*#__PURE__*/React__default.createElement(_StyledSpan2, {
106 _css6: theme.selected,
107 _css7: Number(selected),
108 _css8: Number(selected)
109 }))));
110}
111
112Tab.propTypes = {
113 index: index.PropTypes.number.isRequired,
114 item: index.PropTypes.node.isRequired,
115 onChange: index.PropTypes.func.isRequired,
116 selected: index.PropTypes.bool.isRequired
117};
118
119exports.default = Tab;
120//# sourceMappingURL=Tab.js.map