UNPKG

kwikid-components-react

Version:

KwikID's Component Library in React

56 lines (55 loc) 2.97 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _kwikidToolkit = require("kwikid-toolkit"); var _react = _interopRequireWildcard(require("react")); var _reactDom = require("react-dom"); var _fa = require("react-icons/fa6"); var _Alert = require("./Alert.defaults"); var _Alert2 = require("./Alert.style"); function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (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 (const 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); } const KwikUIAlert = _ref => { let { portalId = _Alert.KWIKUI_ALERT_DEFAULTS.portalId, id = _Alert.KWIKUI_ALERT_DEFAULTS.id, message = _Alert.KWIKUI_ALERT_DEFAULTS.message, variant = _Alert.KWIKUI_ALERT_DEFAULTS.variant, position = _Alert.KWIKUI_ALERT_DEFAULTS.position, autoCloseTime = _Alert.KWIKUI_ALERT_DEFAULTS.autoCloseTime, onClose = _Alert.KWIKUI_ALERT_DEFAULTS.onClose } = _ref; const [show, setShow] = (0, _react.useState)(true); (0, _react.useEffect)(() => { if (autoCloseTime) { const timer = setTimeout(() => { setShow(false); onClose(); }, autoCloseTime); return () => clearTimeout(timer); } }, [autoCloseTime, onClose]); const handleClose = () => { setShow(false); onClose(); }; if ((0, _kwikidToolkit.isNotEmptyValue)(portalId)) { return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/(0, _reactDom.createPortal)(/*#__PURE__*/_react.default.createElement(_Alert2.KwikUIStyleAlertContainer, { id: id, variant: variant, position: position }, /*#__PURE__*/_react.default.createElement(_Alert2.KwikUIStyleAlertMessage, null, message), /*#__PURE__*/_react.default.createElement(_Alert2.KwikUIStyleAlertCloseButton, { onClick: () => handleClose() }, /*#__PURE__*/_react.default.createElement(_fa.FaXmark, null))), document.getElementById(portalId || "") || document.body)); } return /*#__PURE__*/_react.default.createElement(_Alert2.KwikUIStyleAlertContainer, { id: id, variant: variant, position: position }, /*#__PURE__*/_react.default.createElement(_Alert2.KwikUIStyleAlertMessage, null, message), /*#__PURE__*/_react.default.createElement(_Alert2.KwikUIStyleAlertCloseButton, { onClick: () => handleClose() }, /*#__PURE__*/_react.default.createElement(_fa.FaXmark, null))); }; KwikUIAlert.defaultProps = _Alert.KWIKUI_ALERT_DEFAULTS; var _default = exports.default = KwikUIAlert;