@moda/om 15.11.3 → 15.11.4
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 +7 -0
- package/dist/index.cjs.js +18 -28
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +18 -28
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/Popover/Popover.tsx +22 -28
package/dist/index.esm.js
CHANGED
|
@@ -11269,8 +11269,7 @@ var Popover = function Popover(_ref) {
|
|
|
11269
11269
|
var className = _ref.className,
|
|
11270
11270
|
children = _ref.children,
|
|
11271
11271
|
content = _ref.content,
|
|
11272
|
-
|
|
11273
|
-
open = _ref$open === void 0 ? false : _ref$open,
|
|
11272
|
+
open = _ref.open,
|
|
11274
11273
|
_ref$anchor = _ref.anchor,
|
|
11275
11274
|
anchor = _ref$anchor === void 0 ? 'topLeft' : _ref$anchor,
|
|
11276
11275
|
zIndex = _ref.zIndex,
|
|
@@ -11300,18 +11299,24 @@ var Popover = function Popover(_ref) {
|
|
|
11300
11299
|
setMode = _useState2[1];
|
|
11301
11300
|
|
|
11302
11301
|
var timeout = useRef(null);
|
|
11302
|
+
var handleOpen = useCallback(function () {
|
|
11303
|
+
if (smoothTransitioning) setMode(Mode.Opening);
|
|
11304
|
+
if (!smoothTransitioning) setMode(Mode.Open);
|
|
11305
|
+
}, [smoothTransitioning]);
|
|
11306
|
+
var handleClose = useCallback(function () {
|
|
11307
|
+
if (smoothTransitioning) setMode(Mode.Closing);
|
|
11308
|
+
if (!smoothTransitioning) setMode(Mode.Closed);
|
|
11309
|
+
}, [smoothTransitioning]);
|
|
11303
11310
|
var handleMouseEnter = useCallback(function () {
|
|
11304
11311
|
if (!open) {
|
|
11305
11312
|
timeout.current && clearTimeout(timeout.current);
|
|
11306
|
-
|
|
11313
|
+
handleOpen();
|
|
11307
11314
|
}
|
|
11308
|
-
}, [
|
|
11315
|
+
}, [handleOpen, open]);
|
|
11309
11316
|
var handleMouseLeave = useCallback(function () {
|
|
11310
11317
|
if (open) return;
|
|
11311
|
-
timeout.current = setTimeout(
|
|
11312
|
-
|
|
11313
|
-
}, POPOVER_MOUSEOUT_DELAY_MS);
|
|
11314
|
-
}, [open, smoothTransitioning]);
|
|
11318
|
+
timeout.current = setTimeout(handleClose, POPOVER_MOUSEOUT_DELAY_MS);
|
|
11319
|
+
}, [handleClose, open]);
|
|
11315
11320
|
useEffect(function () {
|
|
11316
11321
|
if (mode !== Mode.Closing) return;
|
|
11317
11322
|
var closingTimeout = setTimeout(function () {
|
|
@@ -11341,30 +11346,15 @@ var Popover = function Popover(_ref) {
|
|
|
11341
11346
|
}, [mode]);
|
|
11342
11347
|
useEffect(function () {
|
|
11343
11348
|
if (mode !== Mode.AutoOpen) return;
|
|
11344
|
-
var stayingTimeout = setTimeout(
|
|
11345
|
-
return setMode(smoothTransitioning ? Mode.Closing : Mode.Closed);
|
|
11346
|
-
}, 5000);
|
|
11349
|
+
var stayingTimeout = setTimeout(handleClose, 5000);
|
|
11347
11350
|
return function () {
|
|
11348
11351
|
return clearTimeout(stayingTimeout);
|
|
11349
11352
|
};
|
|
11350
|
-
}, [mode, smoothTransitioning]);
|
|
11353
|
+
}, [handleClose, mode, smoothTransitioning]);
|
|
11351
11354
|
useEffect(function () {
|
|
11352
|
-
if (open
|
|
11353
|
-
|
|
11354
|
-
|
|
11355
|
-
|
|
11356
|
-
if (open && !smoothTransitioning) {
|
|
11357
|
-
setMode(Mode.Open);
|
|
11358
|
-
}
|
|
11359
|
-
|
|
11360
|
-
if (!open && smoothTransitioning) {
|
|
11361
|
-
setMode(Mode.Closing);
|
|
11362
|
-
}
|
|
11363
|
-
|
|
11364
|
-
if (!open && !smoothTransitioning) {
|
|
11365
|
-
setMode(Mode.Closed);
|
|
11366
|
-
}
|
|
11367
|
-
}, [open, smoothTransitioning]);
|
|
11355
|
+
if (open === undefined) return;
|
|
11356
|
+
open ? handleOpen() : handleClose();
|
|
11357
|
+
}, [handleClose, handleOpen, open]);
|
|
11368
11358
|
var isOpen = mode === Mode.AutoOpen || mode === Mode.Opening || mode === Mode.Open || mode === Mode.Closing;
|
|
11369
11359
|
return /*#__PURE__*/React__default.createElement("div", _extends$3({
|
|
11370
11360
|
className: classNames("Popover Popover--anchor-".concat(anchor), className),
|