linear-react-components-ui 0.4.76-rc.10 → 0.4.76-rc.13

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.
Files changed (70) hide show
  1. package/.tool-versions +1 -0
  2. package/.vscode/settings.json +1 -2
  3. package/README.md +33 -0
  4. package/lib/assets/styles/dropdown.scss +25 -2
  5. package/lib/assets/styles/effects.scss +12 -0
  6. package/lib/assets/styles/floatMenu.scss +0 -1
  7. package/lib/assets/styles/multiSelect.scss +105 -0
  8. package/lib/assets/styles/panel.scss +0 -1
  9. package/lib/assets/styles/periodpicker.scss +65 -0
  10. package/lib/assets/styles/progress.scss +8 -1
  11. package/lib/assets/styles/select.scss +1 -0
  12. package/lib/assets/styles/table.scss +13 -5
  13. package/lib/assets/styles/tabs.scss +79 -45
  14. package/lib/assets/styles/treeview.scss +32 -0
  15. package/lib/avatar/avatar.spec.js +17 -6
  16. package/lib/avatar/index.js +1 -1
  17. package/lib/buttons/DefaultButton.js +7 -1
  18. package/lib/checkbox/Label.js +37 -0
  19. package/lib/checkbox/index.js +20 -6
  20. package/lib/dialog/base/index.js +15 -6
  21. package/lib/dialog/form/index.js +16 -3
  22. package/lib/drawer/index.js +4 -1
  23. package/lib/form/Field.js +2 -0
  24. package/lib/form/FieldNumber.js +10 -2
  25. package/lib/form/FieldPeriod.js +100 -0
  26. package/lib/form/helpers.js +9 -1
  27. package/lib/form/index.js +209 -222
  28. package/lib/form/withFieldHOC.js +2 -0
  29. package/lib/form/withFormSecurity.js +106 -0
  30. package/lib/icons/helper.js +16 -0
  31. package/lib/inputs/base/InputTextBase.js +1 -10
  32. package/lib/inputs/base/helpers.js +3 -11
  33. package/lib/inputs/multiSelect/ActionButtons.js +68 -0
  34. package/lib/inputs/multiSelect/Dropdown.js +200 -0
  35. package/lib/inputs/multiSelect/helper.js +18 -0
  36. package/lib/inputs/multiSelect/index.js +343 -0
  37. package/lib/inputs/number/BaseNumber.js +1 -1
  38. package/lib/inputs/number/index.js +7 -5
  39. package/lib/inputs/period/Dialog.js +38 -0
  40. package/lib/inputs/period/Dropdown.js +90 -0
  41. package/lib/inputs/period/PeriodList.js +79 -0
  42. package/lib/inputs/period/helper.js +118 -0
  43. package/lib/inputs/period/index.js +490 -0
  44. package/lib/inputs/select/Dropdown.js +4 -4
  45. package/lib/inputs/select/index.js +26 -3
  46. package/lib/inputs/select/multiple/index.js +9 -7
  47. package/lib/inputs/select/simple/index.js +30 -18
  48. package/lib/internals/withTooltip.js +86 -82
  49. package/lib/list/Item.js +3 -3
  50. package/lib/list/index.js +20 -10
  51. package/lib/list/list.spec.js +129 -85
  52. package/lib/menus/float/MenuItem.js +25 -8
  53. package/lib/menus/sidenav/index.js +7 -3
  54. package/lib/menus/sidenav/popup_menu_search/index.js +1 -1
  55. package/lib/progress/Bar.js +40 -9
  56. package/lib/progress/index.js +12 -4
  57. package/lib/spinner/index.js +6 -1
  58. package/lib/split/Split.js +5 -11
  59. package/lib/table/Row.js +1 -1
  60. package/lib/tabs/DropdownItems.js +84 -0
  61. package/lib/tabs/Menu.js +18 -5
  62. package/lib/tabs/MenuItems.js +7 -7
  63. package/lib/tabs/Panel.js +1 -3
  64. package/lib/tabs/index.js +151 -20
  65. package/lib/tabs/tabs.spec.js +8 -5
  66. package/lib/toolbar/index.js +8 -4
  67. package/lib/tooltip/index.js +19 -3
  68. package/lib/treeview/Node.js +328 -47
  69. package/lib/treeview/index.js +454 -35
  70. package/package.json +9 -8
@@ -35,6 +35,8 @@ var _react = _interopRequireWildcard(require("react"));
35
35
 
36
36
  var _propTypes = _interopRequireDefault(require("prop-types"));
37
37
 
38
+ var _uuid = _interopRequireDefault(require("uuid"));
39
+
38
40
  var _NavMenuItem = _interopRequireDefault(require("./NavMenuItem"));
39
41
 
40
42
  var _NavSubMenuItem = _interopRequireDefault(require("./NavSubMenuItem"));
@@ -233,7 +235,9 @@ var SideNav = function SideNav(props) {
233
235
  };
234
236
 
235
237
  var getPopupMenuSearch = function getPopupMenuSearch() {
236
- return /*#__PURE__*/_react["default"].createElement(_NavMenuGroup["default"], null, /*#__PURE__*/_react["default"].createElement(_NavMenuItem["default"], {
238
+ return /*#__PURE__*/_react["default"].createElement(_NavMenuGroup["default"], {
239
+ key: "popup-menusearch-".concat(_uuid["default"].v1())
240
+ }, /*#__PURE__*/_react["default"].createElement(_NavMenuItem["default"], {
237
241
  childrenIsSubMenu: false,
238
242
  customClass: "-customsidenavitem"
239
243
  }, /*#__PURE__*/_react["default"].createElement(_text["default"], _extends({
@@ -252,15 +256,15 @@ var SideNav = function SideNav(props) {
252
256
  },
253
257
  inputRef: searchFieldRef,
254
258
  onChange: function onChange(e) {
259
+ setSearchContent(e.target.value);
255
260
  setOpenSearchMenuPopup(e.target.value !== '');
256
261
  setSideNavDimensions(sideNavRef.current.getBoundingClientRect());
257
- setSearchContent(e.target.value);
258
262
  }
259
263
  }, returnLeftElements())), openSearchMenuPopup && /*#__PURE__*/_react["default"].createElement(_popup_menu_search["default"], _extends({}, props, {
260
264
  style: getPopupMenuSearchStyle(),
261
265
  searchContent: searchContent,
262
266
  handlerClose: closeSearchMenuPopup,
263
- menuItemsContent: returnMenuItems()
267
+ menuItemsContent: menuItemsContent && returnMenuItems()
264
268
  }))));
265
269
  };
266
270
 
@@ -84,7 +84,7 @@ var PopupMenuSearch = function PopupMenuSearch(props) {
84
84
 
85
85
  var search = function search(value) {
86
86
  var filter = value.toLowerCase();
87
- var result = menuItemsContent.filter(function (item) {
87
+ var result = menuItemsContent && menuItemsContent.filter(function (item) {
88
88
  return item.content.toLowerCase().includes(filter);
89
89
  });
90
90
  setSearchFieldContent(value);
@@ -18,6 +18,16 @@ var getPercentage = function getPercentage(props) {
18
18
  return Math.round(percentage * ROUND_PRECISION) / ROUND_PRECISION;
19
19
  };
20
20
 
21
+ var getClass = function getClass(props) {
22
+ var style = 'bar';
23
+ if (props.customClass) style += "".concat(props.customClass);
24
+ if (props.type) style += " -".concat(props.type);
25
+ if (props.effect) style += ' -effect';
26
+ if (props.animated) style += ' -animated';
27
+ if (props.indeterminate) style += ' -indeterminate';
28
+ return style;
29
+ };
30
+
21
31
  var getLabel = function getLabel(progress) {
22
32
  var value = progress.label;
23
33
 
@@ -30,43 +40,64 @@ var getLabel = function getLabel(progress) {
30
40
  }, value);
31
41
  };
32
42
 
43
+ var getStyle = function getStyle(props) {
44
+ if (props.indeterminate) {
45
+ return {
46
+ width: props.progressWidth,
47
+ height: props.height,
48
+ animationDuration: "".concat(props.indeterminateDuration, "s"),
49
+ animationDelay: "".concat(props.indeterminateDelay, "s")
50
+ };
51
+ }
52
+
53
+ return {
54
+ width: "".concat(getPercentage(props), "%"),
55
+ height: props.height
56
+ };
57
+ };
58
+
33
59
  var ProgressBar = function ProgressBar(props) {
34
60
  return /*#__PURE__*/_react["default"].createElement("div", {
35
61
  role: "progressbar",
36
- className: "bar -".concat(props.type, " ").concat(props.customClass, " -").concat(props.effect && '-effect', " -").concat(props.animated && '-animated'),
37
- style: {
38
- width: "".concat(getPercentage(props), "%"),
39
- height: "".concat(props.height)
40
- },
62
+ className: getClass(props),
63
+ style: getStyle(props),
41
64
  "aria-valuenow": props.value,
42
65
  "aria-valuemin": props.min,
43
66
  "aria-valuemax": props.max
44
- }, props.showLabel && getLabel(props));
67
+ }, props.showLabel && !props.indeterminate && getLabel(props));
45
68
  };
46
69
 
47
70
  ProgressBar.defaultProps = {
48
71
  min: 0,
49
72
  max: 100,
50
73
  value: 0,
74
+ progressWidth: '100%',
51
75
  height: '100%',
52
76
  effect: false,
53
77
  customClass: '',
54
78
  type: '',
55
79
  showLabel: true,
56
80
  label: '',
57
- animated: false
81
+ animated: false,
82
+ indeterminate: false,
83
+ indeterminateDuration: 1.5,
84
+ indeterminateDelay: 1
58
85
  };
59
86
  ProgressBar.propTypes = {
60
87
  label: _propTypes["default"].string,
61
88
  min: _propTypes["default"].number,
62
89
  value: _propTypes["default"].number,
63
90
  max: _propTypes["default"].number,
64
- height: _propTypes["default"].string,
91
+ progressWidth: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
92
+ height: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
65
93
  showLabel: _propTypes["default"].bool,
66
94
  effect: _propTypes["default"].bool,
67
95
  type: _propTypes["default"].string,
68
96
  customClass: _propTypes["default"].string,
69
- animated: _propTypes["default"].bool
97
+ animated: _propTypes["default"].bool,
98
+ indeterminate: _propTypes["default"].bool,
99
+ indeterminateDuration: _propTypes["default"].number,
100
+ indeterminateDelay: _propTypes["default"].number
70
101
  };
71
102
  var _default = ProgressBar;
72
103
  exports["default"] = _default;
@@ -21,24 +21,32 @@ require("../assets/styles/progress.scss");
21
21
 
22
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
23
23
 
24
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
25
+
24
26
  var ProgressBar = function ProgressBar(props) {
25
27
  var style = props.style,
26
28
  children = props.children;
29
+
30
+ var getStyle = _extends({}, style, {
31
+ width: props.width,
32
+ height: props.height
33
+ });
34
+
27
35
  return /*#__PURE__*/_react["default"].createElement("div", {
28
36
  className: "container-progress",
29
- style: style
37
+ style: getStyle
30
38
  }, children || /*#__PURE__*/_react["default"].createElement(_Bar["default"], props));
31
39
  };
32
40
 
33
41
  ProgressBar.propTypes = {
34
- width: _propTypes["default"].string,
35
- height: _propTypes["default"].string,
42
+ width: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
43
+ height: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
36
44
  style: _propTypes["default"].object,
37
45
  children: _propTypes["default"].any
38
46
  };
39
47
  ProgressBar.defaultProps = {
40
48
  width: '100%',
41
- height: '100%',
49
+ height: '24px',
42
50
  children: null,
43
51
  style: {}
44
52
  };
@@ -47,12 +47,17 @@ var Spinner = function Spinner(props) {
47
47
  delay = _useState2[0],
48
48
  setDelay = _useState2[1];
49
49
 
50
+ var delayTimeout = (0, _react.useRef)(null);
50
51
  (0, _react.useEffect)(function () {
51
52
  if (delayTime) {
52
- setTimeout(function () {
53
+ delayTimeout.current = setTimeout(function () {
53
54
  setDelay(false);
54
55
  }, delayTime);
55
56
  }
57
+
58
+ return function () {
59
+ clearTimeout(delayTimeout.current);
60
+ };
56
61
  }, []);
57
62
 
58
63
  var getCssClass = function getCssClass() {
@@ -49,8 +49,6 @@ var Split = function Split(props) {
49
49
  var hotKey = props.hotKey,
50
50
  secondaryInitialSize = props.secondaryInitialSize,
51
51
  onSecondaryPaneSizeChange = props.onSecondaryPaneSizeChange,
52
- onDragStart = props.onDragStart,
53
- onDragEnd = props.onDragEnd,
54
52
  vertical = props.vertical,
55
53
  primaryIndex = props.primaryIndex,
56
54
  percentage = props.percentage,
@@ -271,9 +269,6 @@ var Split = function Split(props) {
271
269
  (0, _react.useEffect)(function () {
272
270
  if (state.resizing) {
273
271
  document.addEventListener('mousemove', handleMouseMove);
274
- if (onDragStart) onDragStart();
275
- } else if (onDragEnd) {
276
- onDragEnd();
277
272
  }
278
273
 
279
274
  return function () {
@@ -334,8 +329,11 @@ var Split = function Split(props) {
334
329
  role: "button",
335
330
  tabIndex: "-1",
336
331
  onDoubleClick: function onDoubleClick() {
337
- return setState(_extends({}, state, {
338
- visibleSplitSide: !visibleSplitSide,
332
+ return state.secondaryPaneSize === 100 ? setState(_extends({}, state, {
333
+ secondaryPaneSize: 50,
334
+ resizing: false
335
+ })) : setState(_extends({}, state, {
336
+ secondaryPaneSize: 100,
339
337
  resizing: false
340
338
  }));
341
339
  },
@@ -354,8 +352,6 @@ Split.propTypes = {
354
352
  secondaryInitialSize: _propTypes["default"].number,
355
353
  secondaryMinSize: _propTypes["default"].number,
356
354
  hideSplitSideOnToggleClick: _propTypes["default"].string,
357
- onDragStart: _propTypes["default"].func,
358
- onDragEnd: _propTypes["default"].func,
359
355
  onSecondaryPaneSizeChange: _propTypes["default"].func,
360
356
  children: _propTypes["default"].arrayOf(_propTypes["default"].node)
361
357
  };
@@ -369,8 +365,6 @@ Split.defaultProps = {
369
365
  secondaryInitialSize: undefined,
370
366
  secondaryMinSize: 0,
371
367
  hideSplitSideOnToggleClick: 'primary',
372
- onDragStart: null,
373
- onDragEnd: null,
374
368
  onSecondaryPaneSizeChange: null,
375
369
  children: [],
376
370
  hotKey: false
package/lib/table/Row.js CHANGED
@@ -59,7 +59,7 @@ Row.propTypes = {
59
59
  children: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].arrayOf(_propTypes["default"].object)]).isRequired,
60
60
  customClass: _propTypes["default"].string,
61
61
  rowId: _propTypes["default"].string,
62
- dataId: _propTypes["default"].number,
62
+ dataId: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string]),
63
63
  onClick: _propTypes["default"].func,
64
64
  rowBorder: _propTypes["default"].bool,
65
65
  height: _propTypes["default"].string
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
14
+ var _buttons = _interopRequireDefault(require("./../buttons"));
15
+
16
+ var _list = _interopRequireWildcard(require("../list"));
17
+
18
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
+
20
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
+
22
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
23
+
24
+ var DropdownItems = function DropdownItems(_ref) {
25
+ var dropdownPanels = _ref.dropdownPanels,
26
+ handlerRemovePanel = _ref.handlerRemovePanel,
27
+ tabMenuSize = _ref.tabMenuSize,
28
+ handlerClick = _ref.handlerClick;
29
+ return dropdownPanels.length > 0 && /*#__PURE__*/_react["default"].createElement(_buttons["default"], {
30
+ dropdown: true,
31
+ dropdownAlign: "right",
32
+ transparent: true,
33
+ boxShadow: false,
34
+ size: "large",
35
+ customClass: "dropdownbutton"
36
+ }, /*#__PURE__*/_react["default"].createElement(_list["default"], {
37
+ customClass: "dropdown-hide-tabs"
38
+ }, dropdownPanels.map(function (panel, index) {
39
+ var _panel$props = panel.props,
40
+ id = _panel$props.id,
41
+ title = _panel$props.title,
42
+ closeable = _panel$props.closeable,
43
+ iconAlign = _panel$props.iconAlign,
44
+ icon = _panel$props.icon,
45
+ iconName = _panel$props.iconName,
46
+ disabled = _panel$props.disabled;
47
+ return /*#__PURE__*/_react["default"].createElement(_list.ListItem, {
48
+ key: id
49
+ }, /*#__PURE__*/_react["default"].createElement("div", {
50
+ className: "menuitem"
51
+ }, /*#__PURE__*/_react["default"].createElement(_buttons["default"], {
52
+ className: "btn menubutton",
53
+ boxShadow: false,
54
+ onClick: function onClick() {
55
+ return handlerClick(id);
56
+ },
57
+ iconAlign: iconAlign,
58
+ iconName: iconName,
59
+ icon: icon,
60
+ disabled: disabled,
61
+ label: title,
62
+ size: tabMenuSize,
63
+ transparent: true
64
+ }), closeable && /*#__PURE__*/_react["default"].createElement("button", {
65
+ className: "closepanel",
66
+ onClick: function onClick() {
67
+ handlerRemovePanel(id, index, true);
68
+ }
69
+ })));
70
+ })));
71
+ };
72
+
73
+ DropdownItems.propTypes = {
74
+ dropdownPanels: _propTypes["default"].arrayOf(_propTypes["default"].element).isRequired,
75
+ handlerClick: _propTypes["default"].func.isRequired,
76
+ handlerRemovePanel: _propTypes["default"].func,
77
+ tabMenuSize: _propTypes["default"].string
78
+ };
79
+ DropdownItems.defaultProps = {
80
+ handlerRemovePanel: null,
81
+ tabMenuSize: 'medium'
82
+ };
83
+ var _default = DropdownItems;
84
+ exports["default"] = _default;
package/lib/tabs/Menu.js CHANGED
@@ -11,15 +11,23 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
12
  var _MenuItems = _interopRequireDefault(require("./MenuItems"));
13
13
 
14
+ var _DropdownItems = _interopRequireDefault(require("./DropdownItems"));
15
+
14
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
17
 
16
18
  var Menu = function Menu(props) {
17
19
  var toolbar = props.toolbar,
18
20
  customClassForToolBar = props.customClassForToolBar,
19
- menuRef = props.menuRef;
21
+ menuRef = props.menuRef,
22
+ toolBarRef = props.toolBarRef;
20
23
 
21
24
  if (!toolbar) {
22
- return /*#__PURE__*/_react["default"].createElement(_MenuItems["default"], props);
25
+ return /*#__PURE__*/_react["default"].createElement("div", {
26
+ className: "menucontainer",
27
+ ref: function ref(r) {
28
+ menuRef(r);
29
+ }
30
+ }, /*#__PURE__*/_react["default"].createElement(_MenuItems["default"], props), /*#__PURE__*/_react["default"].createElement(_DropdownItems["default"], props));
23
31
  }
24
32
 
25
33
  return /*#__PURE__*/_react["default"].createElement("div", {
@@ -27,18 +35,23 @@ var Menu = function Menu(props) {
27
35
  ref: function ref(r) {
28
36
  menuRef(r);
29
37
  }
30
- }, /*#__PURE__*/_react["default"].createElement(_MenuItems["default"], props), /*#__PURE__*/_react["default"].cloneElement(toolbar, {
31
- customClass: "menubar ".concat(customClassForToolBar)
38
+ }, /*#__PURE__*/_react["default"].createElement(_MenuItems["default"], props), /*#__PURE__*/_react["default"].createElement(_DropdownItems["default"], props), /*#__PURE__*/_react["default"].cloneElement(toolbar, {
39
+ customClass: "menubar ".concat(customClassForToolBar),
40
+ innerRef: toolBarRef ? function (r) {
41
+ toolBarRef(r);
42
+ } : undefined
32
43
  }));
33
44
  };
34
45
 
35
46
  Menu.propTypes = {
36
47
  toolbar: _propTypes["default"].object,
37
48
  customClassForToolBar: _propTypes["default"].string,
38
- menuRef: _propTypes["default"].func.isRequired
49
+ menuRef: _propTypes["default"].func.isRequired,
50
+ toolBarRef: _propTypes["default"].func
39
51
  };
40
52
  Menu.defaultProps = {
41
53
  toolbar: undefined,
54
+ toolBarRef: null,
42
55
  customClassForToolBar: ''
43
56
  };
44
57
  var _default = Menu;
@@ -24,17 +24,17 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
24
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
25
25
 
26
26
  var MenuItems = function MenuItems(_ref) {
27
- var panels = _ref.panels,
28
- selectedTabId = _ref.selectedTabId,
27
+ var selectedTabId = _ref.selectedTabId,
29
28
  handlerClick = _ref.handlerClick,
30
29
  handlerRemovePanel = _ref.handlerRemovePanel,
31
30
  tabMenuAlign = _ref.tabMenuAlign,
32
31
  firstTabIdent = _ref.firstTabIdent,
33
- tabMenuSize = _ref.tabMenuSize;
32
+ tabMenuSize = _ref.tabMenuSize,
33
+ currentPanels = _ref.currentPanels;
34
34
  return /*#__PURE__*/_react["default"].createElement("ul", {
35
35
  className: "menu ".concat(firstTabIdent && '-firsttabident'),
36
36
  style: helpers.menuStyles(tabMenuAlign)
37
- }, panels.map(function (panel, index) {
37
+ }, currentPanels.map(function (panel, index) {
38
38
  var _panel$props = panel.props,
39
39
  id = _panel$props.id,
40
40
  title = _panel$props.title,
@@ -63,10 +63,10 @@ var MenuItems = function MenuItems(_ref) {
63
63
  disabled: disabled || onDenied.disabled,
64
64
  label: title,
65
65
  size: tabMenuSize,
66
- tooltip: tooltip,
66
+ tooltip: tooltip || title,
67
67
  tooltipPosition: tooltipPosition,
68
68
  tooltipWidth: tooltipWidth
69
- }), closeable && panels.length > 1 && /*#__PURE__*/_react["default"].createElement("button", {
69
+ }), closeable && currentPanels.length > 1 && /*#__PURE__*/_react["default"].createElement("button", {
70
70
  className: "closepanel",
71
71
  onClick: function onClick() {
72
72
  handlerRemovePanel(id, index);
@@ -76,7 +76,7 @@ var MenuItems = function MenuItems(_ref) {
76
76
  };
77
77
 
78
78
  MenuItems.propTypes = {
79
- panels: _propTypes["default"].arrayOf(_propTypes["default"].element).isRequired,
79
+ currentPanels: _propTypes["default"].arrayOf(_propTypes["default"].element).isRequired,
80
80
  selectedTabId: _propTypes["default"].string,
81
81
  handlerClick: _propTypes["default"].func.isRequired,
82
82
  handlerRemovePanel: _propTypes["default"].func,
package/lib/tabs/Panel.js CHANGED
@@ -110,8 +110,7 @@ Panel.defaultProps = {
110
110
  iconAlign: 'left',
111
111
  customClass: '',
112
112
  children: undefined,
113
- tooltip: '',
114
- tooltipPosition: 'top',
113
+ tooltipPosition: 'bottom',
115
114
  tooltipWidth: 'auto',
116
115
  onEndReached: undefined,
117
116
  onEndReachedThreshold: 0.1,
@@ -131,7 +130,6 @@ Panel.propTypes = {
131
130
  icon: _propTypes["default"].instanceOf(Object),
132
131
  iconName: _propTypes["default"].string,
133
132
  iconAlign: _propTypes["default"].string,
134
- tooltip: _propTypes["default"].string,
135
133
  tooltipPosition: _propTypes["default"].string,
136
134
  tooltipWidth: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
137
135
  onEndReached: _propTypes["default"].func,