@desynova-digital/components 9.0.26 → 9.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_helpers/globals.js +9 -10
- package/_helpers/pagination.js +10 -15
- package/_helpers/story-example.js +16 -39
- package/_helpers/story-helpers.js +15 -14
- package/_helpers/story-stack.js +22 -43
- package/_helpers/uniqueId.js +2 -5
- package/_helpers/utils.js +28 -4
- package/atoms/avatar/avatar.js +19 -42
- package/atoms/avatar/avatar.story.js +25 -58
- package/atoms/avatar/index.js +13 -11
- package/atoms/badge/badge.js +14 -37
- package/atoms/badge/badge.story.js +45 -103
- package/atoms/badge/index.js +12 -10
- package/atoms/button/button.js +85 -161
- package/atoms/button/button.story.js +354 -508
- package/atoms/button/index.js +5 -9
- package/atoms/card/card.js +26 -55
- package/atoms/card/card.story.js +39 -88
- package/atoms/card/index.js +12 -10
- package/atoms/cardStack/cardStack.js +88 -147
- package/atoms/cardStack/cardStack.story.js +106 -210
- package/atoms/cardStack/index.js +12 -10
- package/atoms/cardV2/cardV2.js +57 -106
- package/atoms/cardV2/cardV2.story.js +184 -232
- package/atoms/cardV2/content.js +154 -256
- package/atoms/cardV2/index.js +4 -8
- package/atoms/cardV2/thumbnail.js +138 -208
- package/atoms/cardV2/timeline.js +167 -123
- package/atoms/checkbox/checkbox.js +85 -157
- package/atoms/checkbox/checkbox.story.js +237 -365
- package/atoms/checkbox/index.js +4 -9
- package/atoms/customSelect/customSelect.js +136 -215
- package/atoms/customSelect/customSelect.story.js +745 -851
- package/atoms/customSelect/index.js +4 -8
- package/atoms/datePicker/datePicker.js +299 -431
- package/atoms/datePicker/datePicker.story.js +453 -501
- package/atoms/datePicker/index.js +4 -8
- package/atoms/dateTime/dateTime.js +3 -6
- package/atoms/dateTime/dateTime.story.js +17 -63
- package/atoms/dateTime/index.js +5 -9
- package/atoms/draftInputText/draftInputText.js +121 -189
- package/atoms/draftInputText/draftInputText.story.js +200 -249
- package/atoms/draftInputText/index.js +5 -9
- package/atoms/dropdown/dropdown.js +38 -66
- package/atoms/dropdown/dropdown.story.js +102 -262
- package/atoms/dropdown/index.js +4 -8
- package/atoms/dropdownList/dropdownList.js +78 -108
- package/atoms/dropdownList/dropdownList.story.js +1546 -1621
- package/atoms/dropdownList/index.js +4 -8
- package/atoms/graphs/barGraph/barGraph.js +95 -146
- package/atoms/graphs/barGraph/barGraph.story.js +65 -87
- package/atoms/graphs/barGraph/index.js +4 -8
- package/atoms/graphs/circleDonut/circleDonut.js +177 -229
- package/atoms/graphs/circleDonut/circleDonut.story.js +328 -394
- package/atoms/graphs/circleDonut/index.js +5 -9
- package/atoms/graphs/circleGraph/circleGraph.js +60 -90
- package/atoms/graphs/circleGraph/circleGraph.story.js +36 -54
- package/atoms/graphs/circleGraph/index.js +4 -8
- package/atoms/graphs/circleNested/circleNested.js +216 -262
- package/atoms/graphs/circleNested/circleNested.story.js +91 -116
- package/atoms/graphs/circleNested/index.js +5 -9
- package/atoms/graphs/pieChart/index.js +4 -8
- package/atoms/graphs/pieChart/pieChart.js +162 -191
- package/atoms/graphs/pieChart/pieChart.story.js +147 -176
- package/atoms/graphs/verticalBarGraph/index.js +5 -9
- package/atoms/graphs/verticalBarGraph/verticalBarGraph.js +75 -98
- package/atoms/graphs/verticalBarGraph/verticalBarGraph.story.js +26 -45
- package/atoms/icon/icon.js +41 -72
- package/atoms/icon/icon.story.js +831 -260
- package/atoms/icon/index.js +19 -12
- package/atoms/image/image.js +18 -32
- package/atoms/image/image.story.js +10 -19
- package/atoms/image/index.js +4 -8
- package/atoms/inputText/index.js +4 -8
- package/atoms/inputText/inputText.js +86 -131
- package/atoms/inputText/inputText.story.js +191 -255
- package/atoms/label/index.js +4 -8
- package/atoms/label/label.js +25 -50
- package/atoms/label/label.story.js +42 -83
- package/atoms/loader/CircleLoader.js +29 -63
- package/atoms/loader/ShimmerComponent/CollabShimmerCard.js +39 -50
- package/atoms/loader/ShimmerComponent/CollabShimmerCardTray.js +41 -42
- package/atoms/loader/ShimmerComponent/FiltersShimmer.js +30 -30
- package/atoms/loader/ShimmerComponent/GraphDetailShimmer.js +21 -34
- package/atoms/loader/ShimmerComponent/GraphTitleShimmer.js +30 -34
- package/atoms/loader/ShimmerComponent/GraphsComponentShimmer.js +23 -32
- package/atoms/loader/ShimmerComponent/Shimmer.js +24 -32
- package/atoms/loader/ThreeDotLoader.js +14 -29
- package/atoms/loader/index.js +13 -11
- package/atoms/loader/loader.js +34 -58
- package/atoms/loader/loader.story.js +48 -52
- package/atoms/loader/spinningLoader.js +23 -34
- package/atoms/popup/index.js +5 -9
- package/atoms/popup/popup.js +123 -208
- package/atoms/popup/popup.story.js +97 -131
- package/atoms/radio/index.js +18 -11
- package/atoms/radio/radio.js +58 -112
- package/atoms/radio/radio.story.js +197 -420
- package/atoms/select/index.js +4 -8
- package/atoms/select/select.js +48 -86
- package/atoms/sideBar/index.js +5 -9
- package/atoms/sideBar/sidebar.js +89 -140
- package/atoms/switch/index.js +4 -8
- package/atoms/switch/switch.js +56 -86
- package/atoms/switch/switch.story.js +268 -415
- package/atoms/tag/index.js +12 -10
- package/atoms/tag/tag.js +29 -63
- package/atoms/tag/tag.story.js +135 -209
- package/atoms/textarea/index.js +5 -9
- package/atoms/textarea/textarea.js +55 -99
- package/atoms/textarea/textarea.story.js +48 -41
- package/atoms/thematicBreak/index.js +12 -10
- package/atoms/thematicBreak/thematicBreak.js +20 -38
- package/atoms/thematicBreak/thematicBreak.story.js +25 -37
- package/atoms/timeCodeInput/index.js +4 -8
- package/atoms/timeCodeInput/timCodeInput.story.js +21 -35
- package/atoms/timeCodeInput/timeCodeInput.js +33 -51
- package/atoms/timer/index.js +5 -9
- package/atoms/timer/timer.js +57 -108
- package/atoms/timer/timer.story.js +13 -26
- package/atoms/toast/index.js +5 -9
- package/atoms/toast/toast.js +81 -116
- package/atoms/toast/toast.story.js +50 -76
- package/atoms/videoCard/index.js +12 -10
- package/atoms/videoCard/videoCard.js +265 -447
- package/atoms/videoCard/videoCard.story.js +495 -710
- package/components.js +411 -294
- package/index.js +350 -61
- package/molecules/carousel/carousel.js +121 -207
- package/molecules/carousel/carousel.story.js +240 -223
- package/molecules/carousel/index.js +5 -9
- package/molecules/errorScreen/CollabErrorScreen.js +35 -66
- package/molecules/errorScreen/TableErrorScreen.js +109 -102
- package/molecules/errorScreen/TableErrorScreen.jsx +7 -6
- package/molecules/errorScreen/errorScreen.js +41 -94
- package/molecules/filter/constants.js +1 -0
- package/molecules/filter/filter.js +378 -562
- package/molecules/filter/filter.story.js +79 -104
- package/molecules/filter/index.js +5 -9
- package/molecules/graphCard/graphCard.js +97 -193
- package/molecules/graphCard/graphCard.story.js +159 -191
- package/molecules/graphCard/index.js +4 -8
- package/molecules/graphCard/loader.js +28 -68
- package/molecules/graphDetailCard/graphDetailCard.js +115 -183
- package/molecules/graphDetailCard/graphDetailCard.story.js +218 -254
- package/molecules/graphDetailCard/index.js +5 -9
- package/molecules/pageHeader/index.js +12 -10
- package/molecules/pageHeader/pageHeader.js +38 -79
- package/molecules/pageHeader/pageHeader.story.js +34 -55
- package/molecules/pagination/index.js +4 -8
- package/molecules/pagination/pagination.js +126 -202
- package/molecules/pagination/pagination.story.js +40 -52
- package/molecules/richTextInput/RichTextInput.js +354 -0
- package/molecules/richTextInput/RichTextInput.story.js +50 -0
- package/molecules/richTextInput/index.js +9 -0
- package/molecules/table/index.js +4 -8
- package/molecules/table/table-column.js +10 -16
- package/molecules/table/table-header.js +31 -72
- package/molecules/table/table.js +743 -1075
- package/molecules/table/table.story.js +274 -304
- package/molecules/tabs/index.js +4 -8
- package/molecules/tabs/tabs.js +112 -184
- package/molecules/tabs/tabs.story.js +66 -133
- package/molecules/videoCardList/index.js +4 -8
- package/molecules/videoCardList/videoCardList.js +24 -41
- package/molecules/videoCardList/videoCardList.story.js +449 -664
- package/molecules/videoPlayer/index.js +4 -8
- package/molecules/videoPlayer/videoPlayer.js +1019 -1097
- package/molecules/videoPlayer/videoPlayer.story.js +10 -21
- package/package.json +2 -2
package/molecules/tabs/tabs.js
CHANGED
|
@@ -1,50 +1,27 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
6
|
-
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
var
|
|
10
|
-
|
|
11
|
-
var
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
var
|
|
18
|
-
|
|
19
|
-
var
|
|
20
|
-
|
|
21
|
-
var
|
|
22
|
-
|
|
23
|
-
var
|
|
24
|
-
|
|
25
|
-
var _styledComponents = require('styled-components');
|
|
26
|
-
|
|
27
|
-
var _styledComponents2 = _interopRequireDefault(_styledComponents);
|
|
28
|
-
|
|
29
|
-
var _tokens = require('@desynova-digital/tokens');
|
|
30
|
-
|
|
31
|
-
var _uniqueId = require('../../_helpers/uniqueId');
|
|
32
|
-
|
|
33
|
-
var _uniqueId2 = _interopRequireDefault(_uniqueId);
|
|
34
|
-
|
|
35
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
36
|
-
|
|
37
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
38
|
-
|
|
39
|
-
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
|
|
40
|
-
|
|
41
|
-
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
|
|
42
|
-
|
|
43
|
-
function _taggedTemplateLiteral(strings, raw) { return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
44
|
-
|
|
45
|
-
var Wrapper = _styledComponents2.default.div(_templateObject);
|
|
46
|
-
|
|
47
|
-
var TabLink = _styledComponents2.default.a(_templateObject2, function (props) {
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
11
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
12
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
13
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
14
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
15
|
+
var _react = _interopRequireDefault(require("react"));
|
|
16
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
17
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
18
|
+
var _tokens = require("@desynova-digital/tokens");
|
|
19
|
+
var _uniqueId = _interopRequireDefault(require("../../_helpers/uniqueId"));
|
|
20
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
|
|
21
|
+
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
22
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
23
|
+
var Wrapper = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n height: 100%;\n"])));
|
|
24
|
+
var TabLink = _styledComponents["default"].a(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n width: 100%;\n font-family: SFUIText-Medium;\n font-size: 14px;\n padding: 20px 15px;\n line-height: 19px;\n text-transform: uppercase;\n position: relative;\n color: ", ";\n cursor: ", ";\n pointer-events: ", ";\n border-bottom: 1px solid\n ", ";\n text-align: center;\n &:hover {\n color: ", ";\n ", ";\n }\n &:hover {\n .option-list {\n opacity: 1;\n pointer-events: all;\n }\n }\n"])), function (props) {
|
|
48
25
|
return props.selected ? _tokens.colors[props.theme].tabs.navsSelectColor : _tokens.colors[props.theme].tabs.navsDefaultColor;
|
|
49
26
|
}, function (props) {
|
|
50
27
|
return props.selected ? 'default' : 'pointer';
|
|
@@ -57,36 +34,32 @@ var TabLink = _styledComponents2.default.a(_templateObject2, function (props) {
|
|
|
57
34
|
}, function (props) {
|
|
58
35
|
return !props.selected ? 'border-bottom: 1px solid' + _tokens.colors[props.theme].tabs.navsSelectedBorder : null;
|
|
59
36
|
});
|
|
60
|
-
var OptionList =
|
|
37
|
+
var OptionList = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n position: absolute;\n display: flex;\n padding: 15px;\n flex-direction: column;\n gap: 10px;\n z-index: 5;\n border-radius: 10px;\n background: #15212f;\n top: 72px;\n width: 130px;\n color: #fff;\n left: 50%;\n transform: translate(-50%, -50%);\n transition: opacity 0.3s ease-out;\n text-transform: capitalize;\n justify-content: center;\n align-items: center;\n pointer-events: none;\n opacity: 0;\n .active {\n color: ", ";\n }\n .option {\n cursor: pointer;\n font-family: 'SFUIText-Regular';\n font-size: 10px;\n font-style: normal;\n font-weight: 300;\n line-height: 18px;\n display: flex;\n align-self: stretch;\n &:hover {\n color: ", ";\n }\n }\n &:before {\n content: '';\n position: absolute;\n width: 0;\n height: 0;\n border-left: 5px solid transparent;\n border-right: 5px solid transparent;\n border-bottom: 5px solid ", ";\n top: -5px;\n left: 50%;\n transform: translate(-50%);\n border-radius: 5px;\n }\n"])), function (props) {
|
|
61
38
|
return _tokens.colors[props.theme].tabs.lightthemeColor;
|
|
62
39
|
}, function (props) {
|
|
63
40
|
return _tokens.colors[props.theme].tabs.lightthemeColor;
|
|
64
41
|
}, function (props) {
|
|
65
42
|
return _tokens.colors[props.theme].tabs.OptionListBorder;
|
|
66
43
|
});
|
|
67
|
-
|
|
68
|
-
var TabLinkGroup = _styledComponents2.default.div(_templateObject4, function (props) {
|
|
44
|
+
var TabLinkGroup = _styledComponents["default"].div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n display: flex;\n justify-content: stretch;\n align-items: center;\n background: ", ";\n\n &.tab-list {\n align-items: stretch;\n }\n"])), function (props) {
|
|
69
45
|
return _tokens.colors[props.theme].tabs.navsBackground;
|
|
70
46
|
});
|
|
71
|
-
|
|
72
|
-
var TabContent = _styledComponents2.default.div(_templateObject5, function (props) {
|
|
47
|
+
var TabContent = _styledComponents["default"].div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n background: ", ";\n display: flex;\n justify-content: stretch;\n align-items: center;\n"])), function (props) {
|
|
73
48
|
return _tokens.colors[props.theme].tabs.contentBackground;
|
|
74
49
|
});
|
|
75
50
|
|
|
76
51
|
/* Used to keep selected tab on uncontrolled Tabs instances */
|
|
77
52
|
var tabStore = {};
|
|
78
|
-
|
|
79
|
-
var Tabs = function (_React$Component) {
|
|
80
|
-
_inherits(Tabs, _React$Component);
|
|
81
|
-
|
|
53
|
+
var Tabs = /*#__PURE__*/function (_React$Component) {
|
|
82
54
|
function Tabs(props) {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
55
|
+
var _this;
|
|
56
|
+
(0, _classCallCheck2["default"])(this, Tabs);
|
|
57
|
+
_this = _callSuper(this, Tabs, [props]);
|
|
87
58
|
if (props.children) {
|
|
88
|
-
_this.tabs =
|
|
89
|
-
return child ?
|
|
59
|
+
_this.tabs = _react["default"].Children.map(props.children, function (child) {
|
|
60
|
+
return child ? /*#__PURE__*/_react["default"].cloneElement(child, {
|
|
61
|
+
theme: props.theme
|
|
62
|
+
}) : null;
|
|
90
63
|
});
|
|
91
64
|
}
|
|
92
65
|
|
|
@@ -97,32 +70,32 @@ var Tabs = function (_React$Component) {
|
|
|
97
70
|
};
|
|
98
71
|
return _this;
|
|
99
72
|
}
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
key:
|
|
73
|
+
(0, _inherits2["default"])(Tabs, _React$Component);
|
|
74
|
+
return (0, _createClass2["default"])(Tabs, [{
|
|
75
|
+
key: "componentDidUpdate",
|
|
103
76
|
value: function componentDidUpdate() {
|
|
104
77
|
var cosmosKey = this.props.cosmosKey;
|
|
105
|
-
|
|
106
78
|
if (!cosmosKey) return;
|
|
107
|
-
|
|
108
79
|
var storedIndex = tabStore[cosmosKey];
|
|
109
80
|
if (storedIndex && storedIndex !== this.state.selectedMainTabIndex) {
|
|
110
|
-
this.setState({
|
|
81
|
+
this.setState({
|
|
82
|
+
selectedMainTabIndex: tabStore[cosmosKey]
|
|
83
|
+
});
|
|
111
84
|
}
|
|
112
85
|
}
|
|
113
86
|
}, {
|
|
114
|
-
key:
|
|
87
|
+
key: "componentWillReceiveProps",
|
|
115
88
|
value: function componentWillReceiveProps(newProps) {
|
|
116
|
-
this.tabs =
|
|
117
|
-
this.setState({
|
|
89
|
+
this.tabs = _react["default"].Children.toArray(newProps.children);
|
|
90
|
+
this.setState({
|
|
91
|
+
selectedIndex: this.getSelectedTabFromChildProps(this.tabs)
|
|
92
|
+
});
|
|
118
93
|
}
|
|
119
94
|
}, {
|
|
120
|
-
key:
|
|
95
|
+
key: "getSelectedTabFromChildProps",
|
|
121
96
|
value: function getSelectedTabFromChildProps(tabs) {
|
|
122
97
|
var selected = this.props.selected;
|
|
123
|
-
|
|
124
98
|
if (selected) return selected;
|
|
125
|
-
|
|
126
99
|
for (var index = 0; index < tabs.length; index++) {
|
|
127
100
|
if (tabs[index].props.selected) return index;
|
|
128
101
|
}
|
|
@@ -130,190 +103,145 @@ var Tabs = function (_React$Component) {
|
|
|
130
103
|
return 0;
|
|
131
104
|
}
|
|
132
105
|
}, {
|
|
133
|
-
key:
|
|
106
|
+
key: "changeTab",
|
|
134
107
|
value: function changeTab(nextIndex) {
|
|
135
108
|
var currentIndex = this.getSelectedTabFromPropsOrState();
|
|
136
|
-
|
|
137
109
|
if (currentIndex !== nextIndex) {
|
|
138
110
|
if (this.props.onSelect) {
|
|
139
111
|
this.props.onSelect(nextIndex);
|
|
140
112
|
} else {
|
|
141
113
|
var cosmosKey = this.props.cosmosKey;
|
|
142
|
-
|
|
143
114
|
if (cosmosKey) {
|
|
144
115
|
tabStore[cosmosKey] = nextIndex;
|
|
145
116
|
}
|
|
146
117
|
}
|
|
147
|
-
this.setState({
|
|
118
|
+
this.setState({
|
|
119
|
+
selectedIndex: nextIndex,
|
|
120
|
+
selectedNestedTabIndex: null
|
|
121
|
+
});
|
|
148
122
|
}
|
|
149
123
|
}
|
|
150
124
|
}, {
|
|
151
|
-
key:
|
|
125
|
+
key: "getSelectedTabFromPropsOrState",
|
|
152
126
|
value: function getSelectedTabFromPropsOrState() {
|
|
153
127
|
var stateSelectedIndex = this.state.selectedIndex;
|
|
154
128
|
var propsSelectedIndex = this.props.selected;
|
|
155
129
|
var selectedIndex = typeof propsSelectedIndex !== 'undefined' ? propsSelectedIndex : stateSelectedIndex;
|
|
156
|
-
|
|
157
130
|
return selectedIndex;
|
|
158
131
|
}
|
|
159
132
|
}, {
|
|
160
|
-
key:
|
|
133
|
+
key: "getNestedTabFromPropsOrState",
|
|
161
134
|
value: function getNestedTabFromPropsOrState() {
|
|
162
135
|
var stateSelectedIndex = this.state.selectedNestedTabIndex;
|
|
163
136
|
var propsSelectedIndex = this.props.selectedNestedTabIndex;
|
|
164
137
|
var selectedIndex = typeof propsSelectedIndex !== 'undefined' ? propsSelectedIndex : stateSelectedIndex;
|
|
165
|
-
|
|
166
138
|
return selectedIndex;
|
|
167
139
|
}
|
|
168
140
|
}, {
|
|
169
|
-
key:
|
|
141
|
+
key: "changeNestedTab",
|
|
170
142
|
value: function changeNestedTab(nextIndex, parentTabIndex) {
|
|
171
143
|
// Deselect main tab when changing the nested tab
|
|
172
|
-
this.setState({
|
|
144
|
+
this.setState({
|
|
145
|
+
selectedNestedTabIndex: nextIndex,
|
|
146
|
+
selectedIndex: null
|
|
147
|
+
});
|
|
173
148
|
if (this.props.onSelect) {
|
|
174
149
|
this.props.onSelect(nextIndex, parentTabIndex);
|
|
175
150
|
}
|
|
176
151
|
}
|
|
177
152
|
}, {
|
|
178
|
-
key:
|
|
153
|
+
key: "renderNestedTabs",
|
|
179
154
|
value: function renderNestedTabs(tab, index) {
|
|
180
155
|
var _this2 = this;
|
|
181
|
-
|
|
182
156
|
if (!tab.props.children || !Array.isArray(tab.props.children)) {
|
|
183
157
|
return null;
|
|
184
158
|
}
|
|
185
|
-
|
|
186
159
|
var nestedIdx = this.getNestedTabFromPropsOrState();
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
{
|
|
208
|
-
key: nestedTab.props.label,
|
|
209
|
-
className: nestedIdx === nestedIndex ? 'option active' : 'option',
|
|
210
|
-
theme: _this2.props.theme,
|
|
211
|
-
onClick: function onClick() {
|
|
212
|
-
return _this2.changeNestedTab(nestedIndex, index);
|
|
213
|
-
}
|
|
214
|
-
},
|
|
215
|
-
nestedTab.props.label
|
|
216
|
-
) : null;
|
|
217
|
-
})
|
|
218
|
-
)
|
|
219
|
-
)
|
|
220
|
-
);
|
|
160
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(TabLink, {
|
|
161
|
+
selected: this.state.selectedIndex === index,
|
|
162
|
+
allowPointerEvents: true,
|
|
163
|
+
key: tab.props.label,
|
|
164
|
+
theme: this.props.theme,
|
|
165
|
+
className: this.state.selectedIndex === index ? 'tab-list-item active' : 'tab-list-item'
|
|
166
|
+
}, tab.props.label, /*#__PURE__*/_react["default"].createElement(OptionList, {
|
|
167
|
+
theme: this.props.theme,
|
|
168
|
+
className: "option-list",
|
|
169
|
+
style: {}
|
|
170
|
+
}, tab.props.children.map(function (nestedTab, nestedIndex) {
|
|
171
|
+
return nestedTab ? /*#__PURE__*/_react["default"].createElement("div", {
|
|
172
|
+
key: nestedTab.props.label,
|
|
173
|
+
className: nestedIdx === nestedIndex ? 'option active' : 'option',
|
|
174
|
+
theme: _this2.props.theme,
|
|
175
|
+
onClick: function onClick() {
|
|
176
|
+
return _this2.changeNestedTab(nestedIndex, index);
|
|
177
|
+
}
|
|
178
|
+
}, nestedTab.props.label) : null;
|
|
179
|
+
}))));
|
|
221
180
|
}
|
|
222
181
|
}, {
|
|
223
|
-
key:
|
|
182
|
+
key: "render",
|
|
224
183
|
value: function render() {
|
|
225
184
|
var _this3 = this;
|
|
226
|
-
|
|
227
185
|
var selectedIndex = this.getSelectedTabFromPropsOrState();
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
return
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
onClick: function onClick() {
|
|
245
|
-
return _this3.changeTab(index);
|
|
246
|
-
},
|
|
247
|
-
key: tab.props.label,
|
|
248
|
-
selected: selectedIndex === index,
|
|
249
|
-
theme: _this3.props.theme,
|
|
250
|
-
className: selectedIndex === index ? 'tab-list-item active' : 'tab-list-item'
|
|
251
|
-
},
|
|
252
|
-
tab.props.label
|
|
253
|
-
) : _this3.renderNestedTabs(tab, index)
|
|
254
|
-
);
|
|
255
|
-
})
|
|
256
|
-
),
|
|
257
|
-
this.tabs[selectedIndex]
|
|
258
|
-
);
|
|
186
|
+
return /*#__PURE__*/_react["default"].createElement(Wrapper, null, /*#__PURE__*/_react["default"].createElement(TabLinkGroup, {
|
|
187
|
+
theme: this.props.theme,
|
|
188
|
+
className: "tab-list"
|
|
189
|
+
}, this.tabs.sort(function (val1, val2) {
|
|
190
|
+
return val1.props.index - val2.props.index;
|
|
191
|
+
}).map(function (tab, index) {
|
|
192
|
+
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, !tab.props["abstract"] ? /*#__PURE__*/_react["default"].createElement(TabLink, {
|
|
193
|
+
onClick: function onClick() {
|
|
194
|
+
return _this3.changeTab(index);
|
|
195
|
+
},
|
|
196
|
+
key: tab.props.label,
|
|
197
|
+
selected: selectedIndex === index,
|
|
198
|
+
theme: _this3.props.theme,
|
|
199
|
+
className: selectedIndex === index ? 'tab-list-item active' : 'tab-list-item'
|
|
200
|
+
}, tab.props.label) : _this3.renderNestedTabs(tab, index));
|
|
201
|
+
})), this.tabs[selectedIndex]);
|
|
259
202
|
}
|
|
260
203
|
}]);
|
|
261
|
-
|
|
262
|
-
return Tabs;
|
|
263
|
-
}(_react2.default.Component);
|
|
264
|
-
|
|
204
|
+
}(_react["default"].Component);
|
|
265
205
|
Tabs.Tab = TabContent;
|
|
266
|
-
|
|
267
206
|
Tabs.propTypes = {
|
|
268
207
|
/** Children should be an array of Tabs.Tab */
|
|
269
|
-
children:
|
|
208
|
+
children: _propTypes["default"].arrayOf(_propTypes["default"].element).isRequired,
|
|
270
209
|
/** Selected should be the index of the desired selected tab */
|
|
271
|
-
selected:
|
|
210
|
+
selected: _propTypes["default"].number,
|
|
272
211
|
/** onSelect will be called with the new index when a new tab is selected by the user */
|
|
273
|
-
onSelect:
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
selectedNestedTabIndex: _propTypes2.default.number
|
|
212
|
+
onSelect: _propTypes["default"].func,
|
|
213
|
+
index: _propTypes["default"].number,
|
|
214
|
+
selectedNestedTabIndex: _propTypes["default"].number
|
|
278
215
|
};
|
|
279
|
-
|
|
280
216
|
Tabs.defaultProps = {
|
|
281
217
|
theme: 'dark',
|
|
282
218
|
children: []
|
|
283
219
|
};
|
|
284
|
-
|
|
285
220
|
var generateKey = function generateKey(WrappedComponent) {
|
|
286
|
-
return function (_React$Component2) {
|
|
287
|
-
_inherits(KeyWrapper, _React$Component2);
|
|
288
|
-
|
|
221
|
+
return /*#__PURE__*/function (_React$Component2) {
|
|
289
222
|
function KeyWrapper() {
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
return _possibleConstructorReturn(this, (KeyWrapper.__proto__ || Object.getPrototypeOf(KeyWrapper)).apply(this, arguments));
|
|
223
|
+
(0, _classCallCheck2["default"])(this, KeyWrapper);
|
|
224
|
+
return _callSuper(this, KeyWrapper, arguments);
|
|
293
225
|
}
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
key:
|
|
226
|
+
(0, _inherits2["default"])(KeyWrapper, _React$Component2);
|
|
227
|
+
return (0, _createClass2["default"])(KeyWrapper, [{
|
|
228
|
+
key: "shouldComponentUpdate",
|
|
297
229
|
value: function shouldComponentUpdate(nextProps) {
|
|
298
230
|
var selected = this.props.selected;
|
|
299
|
-
|
|
300
231
|
if (typeof selected === 'undefined') return false;
|
|
301
|
-
|
|
302
232
|
return selected !== nextProps.selected;
|
|
303
233
|
}
|
|
304
234
|
}, {
|
|
305
|
-
key:
|
|
235
|
+
key: "render",
|
|
306
236
|
value: function render() {
|
|
307
|
-
var key = (0,
|
|
308
|
-
return this.props.selected ?
|
|
237
|
+
var key = (0, _uniqueId["default"])('tab');
|
|
238
|
+
return this.props.selected ? /*#__PURE__*/_react["default"].createElement(WrappedComponent, this.props) : /*#__PURE__*/_react["default"].createElement(WrappedComponent, (0, _extends2["default"])({}, this.props, {
|
|
239
|
+
cosmosKey: key
|
|
240
|
+
}));
|
|
309
241
|
}
|
|
310
242
|
}]);
|
|
311
|
-
|
|
312
|
-
return KeyWrapper;
|
|
313
|
-
}(_react2.default.Component);
|
|
243
|
+
}(_react["default"].Component);
|
|
314
244
|
};
|
|
315
|
-
|
|
316
245
|
var TabWithKey = generateKey(Tabs);
|
|
317
246
|
TabWithKey.Tab = TabContent;
|
|
318
|
-
|
|
319
|
-
exports.default = Tabs;
|
|
247
|
+
var _default = exports["default"] = Tabs;
|
|
@@ -1,139 +1,72 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
|
|
5
|
-
var _react2 =
|
|
6
|
-
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
null,
|
|
22
|
-
_react2.default.createElement(
|
|
23
|
-
_components.Tabs.Tab,
|
|
24
|
-
{ index: 1, label: 'Tab 1' },
|
|
25
|
-
'This is tab 1'
|
|
26
|
-
),
|
|
27
|
-
_react2.default.createElement(
|
|
28
|
-
_components.Tabs.Tab,
|
|
29
|
-
{ index: 0, label: 'Tab 2' },
|
|
30
|
-
'You can render anything you want here'
|
|
31
|
-
),
|
|
32
|
-
_react2.default.createElement(
|
|
33
|
-
_components.Tabs.Tab,
|
|
34
|
-
{ index: 2, label: 'Tab 3' },
|
|
35
|
-
'Look, third tab is selected by default!'
|
|
36
|
-
)
|
|
37
|
-
)
|
|
38
|
-
);
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _react = _interopRequireDefault(require("react"));
|
|
5
|
+
var _react2 = require("@storybook/react");
|
|
6
|
+
var _storyHelpers = require("../../_helpers/story-helpers");
|
|
7
|
+
var _components = require("../../components");
|
|
8
|
+
(0, _react2.storiesOf)('Tabs').add('default', function () {
|
|
9
|
+
return /*#__PURE__*/_react["default"].createElement(_storyHelpers.Example, {
|
|
10
|
+
title: "default"
|
|
11
|
+
}, /*#__PURE__*/_react["default"].createElement(_components.Tabs, null, /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
12
|
+
index: 1,
|
|
13
|
+
label: "Tab 1"
|
|
14
|
+
}, "This is tab 1"), /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
15
|
+
index: 0,
|
|
16
|
+
label: "Tab 2"
|
|
17
|
+
}, "You can render anything you want here"), /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
18
|
+
index: 2,
|
|
19
|
+
label: "Tab 3"
|
|
20
|
+
}, "Look, third tab is selected by default!")));
|
|
39
21
|
});
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
'This is tab 1'
|
|
52
|
-
),
|
|
53
|
-
_react2.default.createElement(
|
|
54
|
-
_components.Tabs.Tab,
|
|
55
|
-
{ label: 'Tab 2' },
|
|
56
|
-
'You can render anything you want here'
|
|
57
|
-
),
|
|
58
|
-
_react2.default.createElement(
|
|
59
|
-
_components.Tabs.Tab,
|
|
60
|
-
{ selected: true, label: 'Tab 3' },
|
|
61
|
-
'Look, third tab is selected by default!'
|
|
62
|
-
)
|
|
63
|
-
)
|
|
64
|
-
);
|
|
22
|
+
(0, _react2.storiesOf)('Tabs').add('default selected', function () {
|
|
23
|
+
return /*#__PURE__*/_react["default"].createElement(_storyHelpers.Example, {
|
|
24
|
+
title: "default"
|
|
25
|
+
}, /*#__PURE__*/_react["default"].createElement(_components.Tabs, null, /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
26
|
+
label: "Tab 1"
|
|
27
|
+
}, "This is tab 1"), /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
28
|
+
label: "Tab 2"
|
|
29
|
+
}, "You can render anything you want here"), /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
30
|
+
selected: true,
|
|
31
|
+
label: "Tab 3"
|
|
32
|
+
}, "Look, third tab is selected by default!")));
|
|
65
33
|
});
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
_react2.default.createElement(
|
|
75
|
-
_components.Tabs.Tab,
|
|
76
|
-
{ label: 'Tab 1' },
|
|
77
|
-
'This is tab 1'
|
|
78
|
-
),
|
|
79
|
-
null,
|
|
80
|
-
_react2.default.createElement(
|
|
81
|
-
_components.Tabs.Tab,
|
|
82
|
-
{ label: 'Tab 2' },
|
|
83
|
-
'You can render anything you want here'
|
|
84
|
-
)
|
|
85
|
-
)
|
|
86
|
-
);
|
|
34
|
+
(0, _react2.storiesOf)('Tabs').add('null tab in children', function () {
|
|
35
|
+
return /*#__PURE__*/_react["default"].createElement(_storyHelpers.Example, {
|
|
36
|
+
title: "default"
|
|
37
|
+
}, /*#__PURE__*/_react["default"].createElement(_components.Tabs, null, /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
38
|
+
label: "Tab 1"
|
|
39
|
+
}, "This is tab 1"), null, /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
40
|
+
label: "Tab 2"
|
|
41
|
+
}, "You can render anything you want here")));
|
|
87
42
|
});
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
_components.Tabs.Tab,
|
|
103
|
-
{ label: 'Tab 2' },
|
|
104
|
-
'You can render anything you want here'
|
|
105
|
-
),
|
|
106
|
-
_react2.default.createElement(
|
|
107
|
-
_components.Tabs.Tab,
|
|
108
|
-
{ selected: true, label: 'Tab 3' },
|
|
109
|
-
'Look, third tab is selected by default!'
|
|
110
|
-
)
|
|
111
|
-
)
|
|
112
|
-
);
|
|
43
|
+
(0, _react2.storiesOf)('Tabs').add('dark - default selected', function () {
|
|
44
|
+
return /*#__PURE__*/_react["default"].createElement(_storyHelpers.Example, {
|
|
45
|
+
title: "default",
|
|
46
|
+
background: "dark"
|
|
47
|
+
}, /*#__PURE__*/_react["default"].createElement(_components.Tabs, {
|
|
48
|
+
theme: 'dark'
|
|
49
|
+
}, /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
50
|
+
label: "Tab 1"
|
|
51
|
+
}, "This is tab 1"), /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
52
|
+
label: "Tab 2"
|
|
53
|
+
}, "You can render anything you want here"), /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
54
|
+
selected: true,
|
|
55
|
+
label: "Tab 3"
|
|
56
|
+
}, "Look, third tab is selected by default!")));
|
|
113
57
|
});
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
_components.Tabs.Tab,
|
|
129
|
-
{ label: 'Tab 2' },
|
|
130
|
-
'You can render anything you want here'
|
|
131
|
-
),
|
|
132
|
-
_react2.default.createElement(
|
|
133
|
-
_components.Tabs.Tab,
|
|
134
|
-
{ selected: true, label: 'Tab 3' },
|
|
135
|
-
'Look, third tab is selected by default!'
|
|
136
|
-
)
|
|
137
|
-
)
|
|
138
|
-
);
|
|
58
|
+
(0, _react2.storiesOf)('Tabs').add('nexc - default selected', function () {
|
|
59
|
+
return /*#__PURE__*/_react["default"].createElement(_storyHelpers.Example, {
|
|
60
|
+
title: "default",
|
|
61
|
+
background: "dark"
|
|
62
|
+
}, /*#__PURE__*/_react["default"].createElement(_components.Tabs, {
|
|
63
|
+
theme: 'nexc'
|
|
64
|
+
}, /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
65
|
+
label: "Tab 1"
|
|
66
|
+
}, "This is tab 1"), /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
67
|
+
label: "Tab 2"
|
|
68
|
+
}, "You can render anything you want here"), /*#__PURE__*/_react["default"].createElement(_components.Tabs.Tab, {
|
|
69
|
+
selected: true,
|
|
70
|
+
label: "Tab 3"
|
|
71
|
+
}, "Look, third tab is selected by default!")));
|
|
139
72
|
});
|