react-dayo
Version:
A Queue component for notification etc
49 lines • 2.28 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);
};
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
result["default"] = mod;
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
var react_1 = __importStar(require("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 */
exports.Box = function (props) {
var containerRef = react_1.useRef(null);
var middleAreaRef = react_1.useRef(null);
react_1.useEffect(function () {
if (props.isEnter) {
init({ container: containerRef, middleArea: middleAreaRef });
}
}, [
props.isEnter,
props.isEntering,
props.isEntered,
props.isExit,
props.isExiting,
props.isExited,
]);
return (react_1.default.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_1.default.createElement("div", { ref: middleAreaRef }, props.BlockComponent === undefined ? null : (react_1.default.createElement(props.BlockComponent, __assign({ close: props.close }, props.additionalProps || {}), props.children)))));
};
/* eslint-enable react/prop-types */
exports.Box.displayName = 'DayoBox';
exports.default = exports.Box;
//# sourceMappingURL=box.js.map