react-dayo
Version:
A Queue component for notification etc
40 lines • 1.86 kB
JavaScript
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
import React, { useRef, useEffect } from 'react';
var init = function (refs) {
if (refs.container.current !== null && refs.middleArea.current !== null) {
refs.container.current.style.height = refs.middleArea.current.clientHeight + "px";
}
};
/* eslint-disable react/prop-types */
export var Box = function (props) {
var containerRef = useRef(null);
var middleAreaRef = useRef(null);
useEffect(function () {
if (props.isEnter) {
init({ container: containerRef, middleArea: middleAreaRef });
}
}, [
props.isEnter,
props.isEntering,
props.isEntered,
props.isExit,
props.isExiting,
props.isExited,
]);
return (React.createElement("div", { "data-component": "dayo--box", ref: containerRef, "aria-live": "assertive", "data-to": props.to, "data-is-enter": props.isEnter, "data-is-entering": props.isEntering, "data-is-entered": props.isEntered, "data-is-exit": props.isExit, "data-is-exiting": props.isExiting, "data-is-exited": props.isExited, onTransitionEnd: props.onTransitionEnd, "data-testid": "dayo--box" },
React.createElement("div", { ref: middleAreaRef }, props.BlockComponent === undefined ? null : (React.createElement(props.BlockComponent, __assign({ close: props.close }, props.additionalProps || {}), props.children)))));
};
/* eslint-enable react/prop-types */
Box.displayName = 'DayoBox';
export default Box;
//# sourceMappingURL=box.js.map