@synerise/ds-tabs 0.11.74 → 0.12.3
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/CHANGELOG.md +32 -0
- package/dist/Tab/Tab.js +9 -22
- package/dist/Tab/Tab.styles.js +2 -2
- package/dist/Tab/Tab.types.js +1 -0
- package/dist/Tabs.js +34 -52
- package/dist/Tabs.types.js +1 -0
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,38 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [0.12.3](https://github.com/synerise/synerise-design/compare/@synerise/ds-tabs@0.12.2...@synerise/ds-tabs@0.12.3) (2021-11-22)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @synerise/ds-tabs
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [0.12.2](https://github.com/synerise/synerise-design/compare/@synerise/ds-tabs@0.12.1...@synerise/ds-tabs@0.12.2) (2021-11-16)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @synerise/ds-tabs
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
## [0.12.1](https://github.com/synerise/synerise-design/compare/@synerise/ds-tabs@0.11.74...@synerise/ds-tabs@0.12.1) (2021-11-09)
|
|
23
|
+
|
|
24
|
+
**Note:** Version bump only for package @synerise/ds-tabs
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
# [0.12.0](https://github.com/synerise/synerise-design/compare/@synerise/ds-tabs@0.11.74...@synerise/ds-tabs@0.12.0) (2021-11-09)
|
|
31
|
+
|
|
32
|
+
**Note:** Version bump only for package @synerise/ds-tabs
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
6
38
|
## [0.11.74](https://github.com/synerise/synerise-design/compare/@synerise/ds-tabs@0.11.73...@synerise/ds-tabs@0.11.74) (2021-11-05)
|
|
7
39
|
|
|
8
40
|
**Note:** Version bump only for package @synerise/ds-tabs
|
package/dist/Tab/Tab.js
CHANGED
|
@@ -1,15 +1,3 @@
|
|
|
1
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
2
|
-
|
|
3
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
4
|
-
|
|
5
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
6
|
-
|
|
7
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
8
|
-
|
|
9
|
-
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
10
|
-
|
|
11
|
-
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
12
|
-
|
|
13
1
|
import * as React from 'react';
|
|
14
2
|
import Icon from '@synerise/ds-icon';
|
|
15
3
|
import classNames from 'classnames';
|
|
@@ -29,9 +17,8 @@ var Tab = function Tab(_ref) {
|
|
|
29
17
|
suffixel = _ref.suffixel;
|
|
30
18
|
|
|
31
19
|
var _React$useState = React.useState(false),
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
setPressed = _React$useState2[1];
|
|
20
|
+
isPressed = _React$useState[0],
|
|
21
|
+
setPressed = _React$useState[1];
|
|
35
22
|
|
|
36
23
|
var handleClick = function handleClick() {
|
|
37
24
|
onClick(index);
|
|
@@ -53,13 +40,13 @@ var Tab = function Tab(_ref) {
|
|
|
53
40
|
|
|
54
41
|
var renderSuffixel = function renderSuffixel() {
|
|
55
42
|
if (typeof suffixel === 'string' || typeof suffixel === 'number') {
|
|
56
|
-
return React.createElement(S.SuffixWrapper, null, suffixel);
|
|
43
|
+
return /*#__PURE__*/React.createElement(S.SuffixWrapper, null, suffixel);
|
|
57
44
|
}
|
|
58
45
|
|
|
59
|
-
return React.createElement(S.DefaultSuffixWrapper, null, suffixel);
|
|
46
|
+
return /*#__PURE__*/React.createElement(S.DefaultSuffixWrapper, null, suffixel);
|
|
60
47
|
};
|
|
61
48
|
|
|
62
|
-
return React.createElement(S.TabContainer, {
|
|
49
|
+
return /*#__PURE__*/React.createElement(S.TabContainer, {
|
|
63
50
|
className: containerClasses,
|
|
64
51
|
onClick: handleClick,
|
|
65
52
|
onMouseDown: handleMouseDown,
|
|
@@ -71,14 +58,14 @@ var Tab = function Tab(_ref) {
|
|
|
71
58
|
type: "button",
|
|
72
59
|
"data-testid": "tab-container",
|
|
73
60
|
block: block
|
|
74
|
-
}, React.createElement(S.BlockContentWrapper, {
|
|
61
|
+
}, /*#__PURE__*/React.createElement(S.BlockContentWrapper, {
|
|
75
62
|
block: block
|
|
76
|
-
}, React.createElement(S.TabContent, {
|
|
63
|
+
}, /*#__PURE__*/React.createElement(S.TabContent, {
|
|
77
64
|
className: "tab-content"
|
|
78
|
-
}, icon && React.createElement(Icon, {
|
|
65
|
+
}, icon && /*#__PURE__*/React.createElement(Icon, {
|
|
79
66
|
component: icon,
|
|
80
67
|
size: 24
|
|
81
|
-
}), label && React.createElement(S.TabLabel, null, label), !!suffixel && renderSuffixel())));
|
|
68
|
+
}), label && /*#__PURE__*/React.createElement(S.TabLabel, null, label), !!suffixel && renderSuffixel())));
|
|
82
69
|
};
|
|
83
70
|
|
|
84
71
|
Tab.defaultProps = {
|
package/dist/Tab/Tab.styles.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import styled from 'styled-components';
|
|
2
2
|
import { macro } from '@synerise/ds-typography';
|
|
3
|
-
import { IconContainer } from '@synerise/ds-icon
|
|
3
|
+
import { IconContainer } from '@synerise/ds-icon';
|
|
4
4
|
export var TabLabel = styled.span.withConfig({
|
|
5
5
|
displayName: "Tabstyles__TabLabel",
|
|
6
6
|
componentId: "sc-8a5swe-0"
|
|
@@ -20,7 +20,7 @@ export var TabContent = styled.div.withConfig({
|
|
|
20
20
|
})(["display:flex;flex-direction:row;align-self:center;align-items:center;justify-content:flex-start;height:24px;overflow:hidden;text-overflow:ellipsis;"]);
|
|
21
21
|
|
|
22
22
|
var applyBlockStyles = function applyBlockStyles(props) {
|
|
23
|
-
return "\n margin-right: 0;\n flex: 1;\n "
|
|
23
|
+
return "\n margin-right: 0;\n flex: 1;\n " + TabContent + " {\n border-left: 5px solid transparent;\n border-right: 5px solid transparent;\n }\n &: after {\n background-color:" + props.theme.palette['grey-200'] + ";\n height:1px;\n }\n &: hover {\n &::after {\n background-color:" + props.theme.palette['grey-300'] + ";\n height: 1px;\n }\n }\n &:focus:active:not(:hover) {\n &::after {\n background-color:" + props.theme.palette['blue-600'] + ";\n background-image:none;\n height: 1px;\n }\n }\n &.pressed {\n && {\n &::after {\n height: 1px;\n }\n }\n }\n";
|
|
24
24
|
};
|
|
25
25
|
|
|
26
26
|
export var TabContainer = styled.button.withConfig({
|
package/dist/Tab/Tab.types.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/Tabs.js
CHANGED
|
@@ -4,22 +4,9 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
4
4
|
|
|
5
5
|
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; }
|
|
6
6
|
|
|
7
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
8
|
-
|
|
9
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
10
|
-
|
|
11
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
12
|
-
|
|
13
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
14
|
-
|
|
15
|
-
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
16
|
-
|
|
17
|
-
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
18
|
-
|
|
19
7
|
import * as React from 'react';
|
|
20
8
|
import Dropdown from '@synerise/ds-dropdown';
|
|
21
|
-
import Icon from '@synerise/ds-icon';
|
|
22
|
-
import OptionHorizontalM from '@synerise/ds-icon/dist/icons/OptionHorizontalM';
|
|
9
|
+
import Icon, { OptionHorizontalM } from '@synerise/ds-icon';
|
|
23
10
|
import { useResize } from '@synerise/ds-utils';
|
|
24
11
|
import * as S from './Tabs.styles';
|
|
25
12
|
import Tab from './Tab/Tab';
|
|
@@ -45,29 +32,24 @@ var Tabs = function Tabs(_ref) {
|
|
|
45
32
|
width = _useResize.width;
|
|
46
33
|
|
|
47
34
|
var _React$useState = React.useState(true),
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
setRenderHelperTabs = _React$useState2[1];
|
|
35
|
+
renderHelperTabs = _React$useState[0],
|
|
36
|
+
setRenderHelperTabs = _React$useState[1];
|
|
51
37
|
|
|
52
|
-
var _React$
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
setItems = _React$useState4[1];
|
|
38
|
+
var _React$useState2 = React.useState([]),
|
|
39
|
+
items = _React$useState2[0],
|
|
40
|
+
setItems = _React$useState2[1];
|
|
56
41
|
|
|
57
|
-
var _React$
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
setItemsWidths = _React$useState6[1];
|
|
42
|
+
var _React$useState3 = React.useState([]),
|
|
43
|
+
itemsWidths = _React$useState3[0],
|
|
44
|
+
setItemsWidths = _React$useState3[1];
|
|
61
45
|
|
|
62
|
-
var _React$
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
setVisibleTabs = _React$useState8[1];
|
|
46
|
+
var _React$useState4 = React.useState([]),
|
|
47
|
+
visibleTabs = _React$useState4[0],
|
|
48
|
+
setVisibleTabs = _React$useState4[1];
|
|
66
49
|
|
|
67
|
-
var _React$
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
setHiddenTabs = _React$useState10[1];
|
|
50
|
+
var _React$useState5 = React.useState([]),
|
|
51
|
+
hiddenTabs = _React$useState5[0],
|
|
52
|
+
setHiddenTabs = _React$useState5[1];
|
|
71
53
|
|
|
72
54
|
React.useEffect(function () {
|
|
73
55
|
var newTabs = tabs.map(function (tab) {
|
|
@@ -113,48 +95,48 @@ var Tabs = function Tabs(_ref) {
|
|
|
113
95
|
configuration && configuration.action();
|
|
114
96
|
}, [configuration]);
|
|
115
97
|
var renderHiddenTabs = React.useMemo(function () {
|
|
116
|
-
return React.createElement(S.TabsDropdownContainer, {
|
|
98
|
+
return /*#__PURE__*/React.createElement(S.TabsDropdownContainer, {
|
|
117
99
|
"data-testid": "tabs-dropdown-container"
|
|
118
|
-
}, hiddenTabs.length > 0 && React.createElement(S.DropdownMenu, null, hiddenTabs.map(function (item, index) {
|
|
119
|
-
return React.createElement(S.DropdownMenuItem, {
|
|
100
|
+
}, hiddenTabs.length > 0 && /*#__PURE__*/React.createElement(S.DropdownMenu, null, hiddenTabs.map(function (item, index) {
|
|
101
|
+
return /*#__PURE__*/React.createElement(S.DropdownMenuItem, {
|
|
120
102
|
// eslint-disable-next-line react/no-array-index-key
|
|
121
|
-
key:
|
|
103
|
+
key: item.label + "-dropdown-" + index,
|
|
122
104
|
onClick: function onClick() {
|
|
123
105
|
return handleTabClick(visibleTabs.length + index);
|
|
124
106
|
},
|
|
125
107
|
disabled: item.disabled
|
|
126
108
|
}, item.label);
|
|
127
|
-
})), hiddenTabs.length > 0 && configuration && React.createElement(S.TabsDropdownDivider, null), configuration && React.createElement(S.DropdownMenu, null, React.createElement(S.DropdownMenuItem, {
|
|
109
|
+
})), hiddenTabs.length > 0 && configuration && /*#__PURE__*/React.createElement(S.TabsDropdownDivider, null), configuration && /*#__PURE__*/React.createElement(S.DropdownMenu, null, /*#__PURE__*/React.createElement(S.DropdownMenuItem, {
|
|
128
110
|
key: "configuration-btn",
|
|
129
111
|
onClick: handleConfigurationAction,
|
|
130
|
-
disabled: !!(configuration
|
|
112
|
+
disabled: !!(configuration != null && configuration.disabled)
|
|
131
113
|
}, configuration.label)));
|
|
132
114
|
}, [hiddenTabs, configuration, handleConfigurationAction, handleTabClick, visibleTabs.length]);
|
|
133
115
|
|
|
134
116
|
var renderDropdown = function renderDropdown() {
|
|
135
|
-
return React.createElement(React.Fragment, null, (hiddenTabs.length || configuration) && React.createElement(Dropdown, {
|
|
117
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, (hiddenTabs.length || configuration) && /*#__PURE__*/React.createElement(Dropdown, {
|
|
136
118
|
trigger: ['click'],
|
|
137
119
|
"data-testid": "tabs-dropdown",
|
|
138
120
|
overlay: renderHiddenTabs,
|
|
139
|
-
disabled: !!(configuration
|
|
121
|
+
disabled: !!(configuration != null && configuration.disabled),
|
|
140
122
|
overlayStyle: {
|
|
141
123
|
boxShadow: '0 4px 12px 0 rgba(35, 41, 54, 0.07)'
|
|
142
124
|
}
|
|
143
|
-
}, React.createElement(S.ShowHiddenTabsTrigger, {
|
|
125
|
+
}, /*#__PURE__*/React.createElement(S.ShowHiddenTabsTrigger, {
|
|
144
126
|
type: "ghost",
|
|
145
127
|
mode: "single-icon",
|
|
146
|
-
disabled: !!(configuration
|
|
147
|
-
}, React.createElement(Icon, {
|
|
148
|
-
component: React.createElement(OptionHorizontalM, null)
|
|
128
|
+
disabled: !!(configuration != null && configuration.disabled)
|
|
129
|
+
}, /*#__PURE__*/React.createElement(Icon, {
|
|
130
|
+
component: /*#__PURE__*/React.createElement(OptionHorizontalM, null)
|
|
149
131
|
}))));
|
|
150
132
|
};
|
|
151
133
|
|
|
152
134
|
var renderVisibleTabs = React.useMemo(function () {
|
|
153
|
-
return React.createElement(React.Fragment, null, visibleTabs.filter(function (tab) {
|
|
135
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, visibleTabs.filter(function (tab) {
|
|
154
136
|
return Boolean(tab);
|
|
155
137
|
}).map(function (tab, index) {
|
|
156
|
-
var key = "tabs-tab-"
|
|
157
|
-
return React.createElement(Tab, {
|
|
138
|
+
var key = "tabs-tab-" + index;
|
|
139
|
+
return /*#__PURE__*/React.createElement(Tab, {
|
|
158
140
|
underscore: underscore,
|
|
159
141
|
forwardedRef: tab.ref,
|
|
160
142
|
key: key,
|
|
@@ -170,11 +152,11 @@ var Tabs = function Tabs(_ref) {
|
|
|
170
152
|
}));
|
|
171
153
|
}, [visibleTabs, activeTab, handleTabClick, underscore, block]);
|
|
172
154
|
var renderHelpers = React.useMemo(function () {
|
|
173
|
-
return React.createElement(S.HiddenTabs, {
|
|
155
|
+
return /*#__PURE__*/React.createElement(S.HiddenTabs, {
|
|
174
156
|
className: "ds-hidden-helper"
|
|
175
157
|
}, items.map(function (tab, index) {
|
|
176
|
-
var key = "tabs-tab-helper-"
|
|
177
|
-
return React.createElement(Tab, {
|
|
158
|
+
var key = "tabs-tab-helper-" + index;
|
|
159
|
+
return /*#__PURE__*/React.createElement(Tab, {
|
|
178
160
|
className: "hidden",
|
|
179
161
|
underscore: underscore,
|
|
180
162
|
forwardedRef: tab.ref,
|
|
@@ -188,7 +170,7 @@ var Tabs = function Tabs(_ref) {
|
|
|
188
170
|
});
|
|
189
171
|
}));
|
|
190
172
|
}, [items, underscore, block]);
|
|
191
|
-
return React.createElement(React.Fragment, null, React.createElement(S.TabsContainer, {
|
|
173
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(S.TabsContainer, {
|
|
192
174
|
className: "ds-tabs",
|
|
193
175
|
ref: containerRef,
|
|
194
176
|
"data-testid": "tabs-container",
|
package/dist/Tabs.types.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@synerise/ds-tabs",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.3",
|
|
4
4
|
"description": "Tabs UI Component for the Synerise Design System",
|
|
5
5
|
"license": "ISC",
|
|
6
6
|
"repository": "synerise/synerise-design",
|
|
@@ -32,8 +32,8 @@
|
|
|
32
32
|
],
|
|
33
33
|
"types": "dist/index.d.ts",
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@synerise/ds-dropdown": "^0.
|
|
36
|
-
"@synerise/ds-menu": "^0.
|
|
35
|
+
"@synerise/ds-dropdown": "^0.17.3",
|
|
36
|
+
"@synerise/ds-menu": "^0.11.2",
|
|
37
37
|
"@synerise/ds-utils": "^0.19.0",
|
|
38
38
|
"classnames": "2.2.6"
|
|
39
39
|
},
|
|
@@ -45,5 +45,5 @@
|
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@types/classnames": "2.2.10"
|
|
47
47
|
},
|
|
48
|
-
"gitHead": "
|
|
48
|
+
"gitHead": "2468359677783819939fb9f1ef5acc36667ecd1a"
|
|
49
49
|
}
|