@bydata/react-supertabs 1.1.7 → 1.1.9

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.
@@ -13,7 +13,7 @@ var NotAvailable = function NotAvailable(_ref) {
13
13
  var title = _ref.title,
14
14
  description = _ref.description,
15
15
  _ref$subTabName = _ref.subTabName,
16
- subTabName = _ref$subTabName === void 0 ? 'Page' : _ref$subTabName;
16
+ subTabName = _ref$subTabName === void 0 ? "Page" : _ref$subTabName;
17
17
  var _useTabContext = (0, _TabContext.useTabContext)(),
18
18
  activeSubTab = _useTabContext.activeSubTab;
19
19
  var heading = title !== null && title !== void 0 ? title : (0, _Utils.getTitle)(activeSubTab);
@@ -24,7 +24,7 @@ var NotAvailable = function NotAvailable(_ref) {
24
24
  className: "not-available-content"
25
25
  }, /*#__PURE__*/_react["default"].createElement("h3", {
26
26
  className: "title"
27
- }, heading.replace('Loading...', 'Untitled')), /*#__PURE__*/_react["default"].createElement("p", {
27
+ }, heading.replace("Loading...", "Untitled")), /*#__PURE__*/_react["default"].createElement("p", {
28
28
  className: "description"
29
29
  }, subHeading)));
30
30
  };
package/dist/SuperLink.js CHANGED
@@ -7,35 +7,16 @@ exports["default"] = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _reactRouterDom = require("react-router-dom");
9
9
  var _TabContext = require("./TabContext");
10
- var _excluded = ["children", "tab", "isSubTab", "isExternal"];
11
10
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
12
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
13
- function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
14
- function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
15
- /**
16
- * Hook that returns whether we're inside a valid React Router context.
17
- * When the app and the library use different copies of react-router-dom,
18
- * location can be undefined and NavLink would throw reading pathname.
19
- */
20
- function useHasRouterContext() {
21
- try {
22
- var location = (0, _reactRouterDom.useLocation)();
23
- return location != null && typeof location.pathname === 'string';
24
- } catch (_unused) {
25
- return false;
26
- }
27
- }
28
11
  var SuperLink = function SuperLink(_ref) {
29
12
  var children = _ref.children,
30
13
  tab = _ref.tab,
31
14
  _ref$isSubTab = _ref.isSubTab,
32
15
  isSubTab = _ref$isSubTab === void 0 ? true : _ref$isSubTab,
33
16
  _ref$isExternal = _ref.isExternal,
34
- isExternal = _ref$isExternal === void 0 ? false : _ref$isExternal,
35
- rest = _objectWithoutProperties(_ref, _excluded);
17
+ isExternal = _ref$isExternal === void 0 ? false : _ref$isExternal;
36
18
  var _useTabContext = (0, _TabContext.useTabContext)(),
37
19
  openSuperTabOnRowClick = _useTabContext.openSuperTabOnRowClick;
38
- var hasRouterContext = useHasRouterContext();
39
20
  var handleSuperLinkClick = function handleSuperLinkClick(e) {
40
21
  if (isExternal) {
41
22
  e.preventDefault();
@@ -47,22 +28,11 @@ var SuperLink = function SuperLink(_ref) {
47
28
  isSubTab: isSubTab
48
29
  });
49
30
  };
50
- if (!hasRouterContext) {
51
- return /*#__PURE__*/_react["default"].createElement("a", _extends({
52
- href: tab.url,
53
- title: tab.title || '',
54
- onClick: function onClick(e) {
55
- if (!isExternal) {
56
- e.preventDefault();
57
- handleSuperLinkClick(e);
58
- }
59
- }
60
- }, rest), children);
61
- }
62
- return /*#__PURE__*/_react["default"].createElement(_reactRouterDom.NavLink, _extends({
31
+ return /*#__PURE__*/_react["default"].createElement(_reactRouterDom.NavLink, {
63
32
  to: tab.url,
64
33
  title: tab.title || '',
65
34
  onClick: handleSuperLinkClick
66
- }, rest), children);
35
+ // exact
36
+ }, children);
67
37
  };
68
38
  var _default = exports["default"] = SuperLink;
package/dist/SuperTabs.js CHANGED
@@ -50,7 +50,11 @@ var tooltipStyles = {
50
50
  zIndex: 100000,
51
51
  boxShadow: "0px 1px 10px 0px rgba(0, 0, 0, 0.10)",
52
52
  marginBottom: "5px",
53
- minWidth: "fit-content"
53
+ minWidth: "fit-content",
54
+ marginTop: "2px",
55
+ borderRadius: "2px",
56
+ backgroundColor: 'var(--tab-background-overlay, #272B32)',
57
+ color: 'var(--tab-text-normal, #BDC3CC)'
54
58
  };
55
59
  var filterSubTabs = function filterSubTabs(subTabs) {
56
60
  // const subTabsInList = [];
@@ -106,6 +110,7 @@ var SuperTabs = function SuperTabs(_ref) {
106
110
  updateExpandedID = _useTabContext.updateExpandedID,
107
111
  expandedTabIDRef = _useTabContext.expandedTabIDRef,
108
112
  updateCurrentTab = _useTabContext.updateCurrentTab,
113
+ openSuperTabOnRowClick = _useTabContext.openSuperTabOnRowClick,
109
114
  hasPrivilege = _useTabContext.hasPrivilege,
110
115
  subTabChange = _useTabContext.subTabChange,
111
116
  updateSubTabChange = _useTabContext.updateSubTabChange,
@@ -324,8 +329,6 @@ var SuperTabs = function SuperTabs(_ref) {
324
329
 
325
330
  // Hover handlers for brand wrapper
326
331
  var handleBrandHoverEnter = function handleBrandHoverEnter() {
327
- console.log('handleBrandHoverEnter', isMobile, preventHomeRedirect);
328
-
329
332
  // Skip hover functionality on mobile devices to avoid conflicts
330
333
  if (isMobile) return;
331
334
 
@@ -849,7 +852,14 @@ var SuperTabs = function SuperTabs(_ref) {
849
852
  ref: provided.innerRef
850
853
  // (snapshot.isDragging ? " dragging" : "") +
851
854
  ,
852
- className: 'tab-with-child-wrapper parent-super-tab' + " tab-".concat(tab.id) + (isActive ? ' active' : '') + (closingTabID === tab.id ? ' stack-closing' : '') + (shrinkedTab ? ' shrinked-parent-tab' : '') + (snapshot.isDragging ? ' dragging' : '')
855
+ className: 'tab-with-child-wrapper parent-super-tab' + " tab-".concat(tab.id) + (isActive ? ' active' : '') + (closingTabID === tab.id ? ' stack-closing' : '') + (shrinkedTab ? ' shrinked-parent-tab' : '') + (snapshot.isDragging ? ' dragging' : ''),
856
+ onClick: function onClick() {
857
+ if (isActive) return;
858
+ openSuperTabOnRowClick({
859
+ tab: tab,
860
+ isSubTab: false
861
+ });
862
+ }
853
863
  }), /*#__PURE__*/_react["default"].createElement("div", {
854
864
  className: 'child-tabs-wrapper tab-' + tab.id + (showSubTabs ? ' expanded' : '')
855
865
  // (isActive ? ' active' : '')
@@ -870,6 +880,7 @@ var SuperTabs = function SuperTabs(_ref) {
870
880
  // title={tab.title}
871
881
  ,
872
882
  onClick: function onClick(e) {
883
+ e.stopPropagation();
873
884
  var ignoreActiveTabUpdate = false;
874
885
  if (containsSubTabs && !isActive) {
875
886
  var _lastOpenedUrl$curren;
@@ -197,6 +197,7 @@ body[data-theme="light"] {
197
197
 
198
198
  display: flex;
199
199
  align-items: center;
200
+ cursor: pointer !important;
200
201
  transition-duration: var(--transition-duration-extended);
201
202
  transition-property: padding, opacity, border-color, max-width;
202
203
 
@@ -536,6 +537,7 @@ body[data-theme="light"] {
536
537
  align-items: center;
537
538
  position: relative;
538
539
  z-index: 10;
540
+ cursor: pointer !important;
539
541
 
540
542
  &:not(.active) {
541
543
  position: relative;
@@ -1496,7 +1496,7 @@ function TabProvider(_ref9) {
1496
1496
  break;
1497
1497
  }
1498
1498
  pathName = window.location.pathname;
1499
- isHomeTab = pathName === homeUrl;
1499
+ isHomeTab = pathName === homeUrl || pathName === '/';
1500
1500
  _context10.n = 3;
1501
1501
  return findDuplicateEntriesAndCloseTab(response.tabs);
1502
1502
  case 3:
package/dist/TabList.js CHANGED
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports["default"] = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
+ var _reactDom = require("react-dom");
9
10
  var _TabContext = require("./TabContext");
10
11
  var _reactRouterDom = require("react-router-dom");
11
12
  var _ClickOutsideListener = _interopRequireDefault(require("./ClickOutsideListener"));
@@ -74,13 +75,16 @@ var TabList = function TabList(_ref) {
74
75
  if (popupElem) {
75
76
  var popupRect = popupElem.getBoundingClientRect();
76
77
  var windowWidth = window.innerWidth;
78
+ var top = "".concat(popupRect.bottom - 2, "px");
77
79
  if (popupRect.right + 300 > windowWidth) {
78
80
  position = {
79
- right: "".concat(window.innerWidth - (popupRect === null || popupRect === void 0 ? void 0 : popupRect.right), "px")
81
+ right: "".concat(window.innerWidth - (popupRect === null || popupRect === void 0 ? void 0 : popupRect.right), "px"),
82
+ top: top
80
83
  };
81
84
  } else {
82
85
  position = {
83
- left: "".concat((popupRect === null || popupRect === void 0 ? void 0 : popupRect.left) + 5, "px")
86
+ left: "".concat((popupRect === null || popupRect === void 0 ? void 0 : popupRect.left) + 5, "px"),
87
+ top: top
84
88
  };
85
89
  }
86
90
  }
@@ -134,7 +138,7 @@ var TabList = function TabList(_ref) {
134
138
  return exactMatches.flat().concat(otherMatches);
135
139
  };
136
140
  var filteredTabs = filterTabs(tabs);
137
- return /*#__PURE__*/_react["default"].createElement(_ClickOutsideListener["default"], {
141
+ var tabListContent = /*#__PURE__*/_react["default"].createElement(_ClickOutsideListener["default"], {
138
142
  onOutsideClick: handleOutsideClick
139
143
  }, /*#__PURE__*/_react["default"].createElement("div", {
140
144
  className: "tab-list-wrapper ".concat(showList ? 'show' : ''),
@@ -154,7 +158,7 @@ var TabList = function TabList(_ref) {
154
158
  closeList();
155
159
  setShowList(false);
156
160
  }
157
- }, title), !(index == customAddButtons.length - 1) && /*#__PURE__*/_react["default"].createElement("span", {
161
+ }, title), !(index === customAddButtons.length - 1) && /*#__PURE__*/_react["default"].createElement("span", {
158
162
  className: "pipe"
159
163
  }));
160
164
  }) : showAddButton && !hasCustomAddButtons && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement("button", {
@@ -232,5 +236,9 @@ var TabList = function TabList(_ref) {
232
236
  }) : /*#__PURE__*/_react["default"].createElement("div", {
233
237
  className: "tab-list-no-data"
234
238
  }, "No data found"))))));
239
+ if (!showList) {
240
+ return null;
241
+ }
242
+ return /*#__PURE__*/(0, _reactDom.createPortal)(tabListContent, document.body);
235
243
  };
236
244
  var _default = exports["default"] = TabList;
package/dist/TabList.scss CHANGED
@@ -1,11 +1,11 @@
1
1
  .tab-list-wrapper {
2
2
  padding-top: 12px;
3
3
  position: fixed;
4
- top: calc(var(--header-height-other-tab) - 8px);
5
4
  opacity: 0;
6
5
  visibility: hidden;
7
6
  transition: opacity 0.3s;
8
7
  pointer-events: none;
8
+ z-index: 10000;
9
9
 
10
10
  &.show {
11
11
  opacity: 1;
package/dist/index.js CHANGED
@@ -1,24 +1,25 @@
1
1
  "use strict";
2
2
 
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  Object.defineProperty(exports, "NotAvailable", {
7
8
  enumerable: true,
8
9
  get: function get() {
9
- return _NotAvailable.NotAvailable;
10
+ return _NotAvailable["default"];
10
11
  }
11
12
  });
12
13
  Object.defineProperty(exports, "SuperLink", {
13
14
  enumerable: true,
14
15
  get: function get() {
15
- return _SuperLink.SuperLink;
16
+ return _SuperLink["default"];
16
17
  }
17
18
  });
18
19
  Object.defineProperty(exports, "SuperTabs", {
19
20
  enumerable: true,
20
21
  get: function get() {
21
- return _SuperTabs.SuperTabs;
22
+ return _SuperTabs["default"];
22
23
  }
23
24
  });
24
25
  Object.defineProperty(exports, "TabProvider", {
@@ -45,7 +46,9 @@ Object.defineProperty(exports, "useTabContext", {
45
46
  return _TabContext.useTabContext;
46
47
  }
47
48
  });
48
- var _SuperTabs = require("./SuperTabs");
49
- var _SuperLink = require("./SuperLink");
50
- var _NotAvailable = require("./NotAvailable");
51
- var _TabContext = require("./TabContext");
49
+ var _SuperTabs = _interopRequireWildcard(require("./SuperTabs"));
50
+ var _SuperLink = _interopRequireDefault(require("./SuperLink"));
51
+ var _NotAvailable = _interopRequireDefault(require("./NotAvailable"));
52
+ var _TabContext = require("./TabContext");
53
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
54
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bydata/react-supertabs",
3
- "version": "1.1.7",
3
+ "version": "1.1.9",
4
4
  "description": "A customizable React super tabs component.",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -1,6 +0,0 @@
1
- <svg width="36" height="30" viewBox="0 0 36 30" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path d="M8 4.00098C8 2.89641 8.89543 2.00098 10 2.00098H32C33.1046 2.00098 34 2.89641 34 4.00098V26.001C34 27.1055 33.1046 28.001 32 28.001H10C8.89543 28.001 8 27.1055 8 26.001V4.00098Z" fill="#1D2024"/>
3
- <path fill-rule="evenodd" clip-rule="evenodd" d="M10 0.000976562H32C34.2091 0.000976562 36 1.79184 36 4.00098V26.001C36 28.2101 34.2091 30.001 32 30.001H10C7.79086 30.001 6 28.2101 6 26.001V4.00098C6 1.79184 7.79086 0.000976562 10 0.000976562ZM10 2.00098C8.89543 2.00098 8 2.89641 8 4.00098V26.001C8 27.1055 8.89543 28.001 10 28.001H32C33.1046 28.001 34 27.1055 34 26.001V4.00098C34 2.89641 33.1046 2.00098 32 2.00098H10Z" fill="black"/>
4
- <path d="M2 4.00098C2 2.89641 2.89543 2.00098 4 2.00098H26C27.1046 2.00098 28 2.89641 28 4.00098V26.001C28 27.1055 27.1046 28.001 26 28.001H4C2.89543 28.001 2 27.1055 2 26.001V4.00098Z" fill="#1D2024"/>
5
- <path fill-rule="evenodd" clip-rule="evenodd" d="M4 0.000976562H26C28.2091 0.000976562 30 1.79184 30 4.00098V26.001C30 28.2101 28.2091 30.001 26 30.001H4C1.79086 30.001 0 28.2101 0 26.001V4.00098C0 1.79184 1.79086 0.000976562 4 0.000976562ZM4 2.00098C2.89543 2.00098 2 2.89641 2 4.00098V26.001C2 27.1055 2.89543 28.001 4 28.001H26C27.1046 28.001 28 27.1055 28 26.001V4.00098C28 2.89641 27.1046 2.00098 26 2.00098H4Z" fill="black"/>
6
- </svg>