@unbxd-ui/unbxd-react-components 0.2.138 → 0.2.140
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.
|
@@ -48,11 +48,15 @@ var AccordianItem = function AccordianItem(props) {
|
|
|
48
48
|
return item === id;
|
|
49
49
|
}) ? true : false;
|
|
50
50
|
var onItemClick = function onItemClick() {
|
|
51
|
-
var newList = [
|
|
51
|
+
var newList = [];
|
|
52
52
|
if (!allowOneOpen) {
|
|
53
53
|
newList = isOpen ? openedItems.filter(function (item) {
|
|
54
54
|
return item !== id;
|
|
55
55
|
}) : [].concat(_toConsumableArray(openedItems), [id]);
|
|
56
|
+
} else {
|
|
57
|
+
if (!openedItems.includes(id)) {
|
|
58
|
+
newList = [id];
|
|
59
|
+
}
|
|
56
60
|
}
|
|
57
61
|
setOpenedItems(newList);
|
|
58
62
|
};
|
|
@@ -159,7 +159,7 @@ var ServerPaginatedDDList = function ServerPaginatedDDList(props) {
|
|
|
159
159
|
};
|
|
160
160
|
var makeAPICall = function makeAPICall() {
|
|
161
161
|
_dataLoader["default"].abortPreviousCall(requestId);
|
|
162
|
-
|
|
162
|
+
setIsApiLoading(true);
|
|
163
163
|
apiCallRef.current = true;
|
|
164
164
|
setIsNextPageLoading(true);
|
|
165
165
|
if (prefetchedPageResponse && pageNoRef.current === prefetchedPageNo) {
|
|
@@ -198,6 +198,7 @@ var ServerPaginatedDDList = function ServerPaginatedDDList(props) {
|
|
|
198
198
|
/* search query changed -> reset page no. to 1 */
|
|
199
199
|
if (searchQuery !== searchRef.current) {
|
|
200
200
|
// dataLoader.abortPreviousCall(requestId);
|
|
201
|
+
setIsApiLoading(true);
|
|
201
202
|
setIsNextPageLoading(true);
|
|
202
203
|
searchRef.current = searchQuery;
|
|
203
204
|
startSearch();
|
|
@@ -247,12 +248,12 @@ var ServerPaginatedDDList = function ServerPaginatedDDList(props) {
|
|
|
247
248
|
}
|
|
248
249
|
return [];
|
|
249
250
|
}
|
|
250
|
-
|
|
251
|
-
// its not following debounce behaviour
|
|
252
|
-
if (total === 0) {
|
|
251
|
+
if (total === 0 && searchQuery === searchRef.current && !isApiLoading) {
|
|
253
252
|
return /*#__PURE__*/_react["default"].createElement(_NoDataDropdown["default"], _extends({
|
|
254
253
|
searchQuery: searchQuery
|
|
255
254
|
}, restProps));
|
|
255
|
+
} else if (total === 0 && LoaderComponent) {
|
|
256
|
+
return LoaderComponent;
|
|
256
257
|
}
|
|
257
258
|
return /*#__PURE__*/_react["default"].createElement(_reactWindowInfiniteLoader["default"]
|
|
258
259
|
// Function responsible for tracking the loaded state of each item.
|
|
@@ -39,6 +39,8 @@ var Tooltip = function Tooltip(props, ref) {
|
|
|
39
39
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
40
40
|
isOpen = _useState4[0],
|
|
41
41
|
setIsOpen = _useState4[1];
|
|
42
|
+
var tooltipBodyRef = (0, _react.useRef)(null);
|
|
43
|
+
var tooltipRef = (0, _react.useRef)(null);
|
|
42
44
|
var dirClassName = "RCB-tooltip-right";
|
|
43
45
|
switch (direction) {
|
|
44
46
|
case "bottom":
|
|
@@ -73,6 +75,39 @@ var Tooltip = function Tooltip(props, ref) {
|
|
|
73
75
|
var hideToolTip = function hideToolTip() {
|
|
74
76
|
setIsOpen(false);
|
|
75
77
|
};
|
|
78
|
+
var changeModalState = function changeModalState(newState) {
|
|
79
|
+
setIsOpen(newState);
|
|
80
|
+
};
|
|
81
|
+
var onBodyClick = function onBodyClick(e) {
|
|
82
|
+
var eventTarget = e.target;
|
|
83
|
+
var inlineModalNode = tooltipRef.current;
|
|
84
|
+
var eventPathNodes = e.composedPath();
|
|
85
|
+
var isWithinModal = false;
|
|
86
|
+
if (inlineModalNode.contains(eventTarget)) {
|
|
87
|
+
isWithinModal = true;
|
|
88
|
+
} else {
|
|
89
|
+
for (var i = 0; i < eventPathNodes.length; i++) {
|
|
90
|
+
var node = eventPathNodes[i];
|
|
91
|
+
if (node !== window && inlineModalNode.contains(node)) {
|
|
92
|
+
isWithinModal = true;
|
|
93
|
+
break;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
if (!isWithinModal) {
|
|
98
|
+
/* outside click -> close modal */
|
|
99
|
+
changeModalState(false);
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
(0, _react.useEffect)(function () {
|
|
103
|
+
/* add when mounted */
|
|
104
|
+
document.addEventListener("click", onBodyClick);
|
|
105
|
+
|
|
106
|
+
/* return function to be called when unmounted */
|
|
107
|
+
return function () {
|
|
108
|
+
document.removeEventListener("click", onBodyClick);
|
|
109
|
+
};
|
|
110
|
+
}, []);
|
|
76
111
|
var eventProps = activatorAction === "click" ? {
|
|
77
112
|
onClick: showToolTipClick
|
|
78
113
|
} : {
|
|
@@ -80,11 +115,13 @@ var Tooltip = function Tooltip(props, ref) {
|
|
|
80
115
|
onMouseLeave: hideToolTip
|
|
81
116
|
};
|
|
82
117
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
83
|
-
className: "RCB-tooltip ".concat(className)
|
|
118
|
+
className: "RCB-tooltip ".concat(className),
|
|
119
|
+
ref: tooltipRef
|
|
84
120
|
}, /*#__PURE__*/_react["default"].createElement("div", _extends({
|
|
85
121
|
className: "RCB-tooltip-btn"
|
|
86
122
|
}, eventProps), /*#__PURE__*/_react["default"].createElement(TooltipActivator, restProps)), isOpen && /*#__PURE__*/_react["default"].createElement("div", {
|
|
87
|
-
className: "RCB-tooltip-body ".concat(dirClassName, " ").concat(actionClassName)
|
|
123
|
+
className: "RCB-tooltip-body ".concat(dirClassName, " ").concat(actionClassName),
|
|
124
|
+
ref: tooltipBodyRef
|
|
88
125
|
}, children));
|
|
89
126
|
};
|
|
90
127
|
Tooltip = /*#__PURE__*/(0, _react.forwardRef)(Tooltip);
|