UNPKG

kwikid-components-react

Version:

KwikID's Component Library in React

43 lines (42 loc) 2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = _interopRequireDefault(require("react")); var _io = require("react-icons/io5"); var _Messages = require("./Messages.definitions"); var _Messages2 = require("./Messages.style"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } const KwikUIMessages = _ref => { let { customStyles = { container: {}, wrapper: {}, icon: {}, message: {} }, messages = [], size = _Messages.IKwikUIMessageSize.M } = _ref; // Verify that messages adhere to the KwikUIMessage interface const isValidMessages = messages.every(message => message && typeof message.message === "string" && ["error", "info", "warning", "success"].includes(message.type)); if (!isValidMessages) { return null; // Do not render if messages are invalid } return /*#__PURE__*/_react.default.createElement(_Messages2.KwikUIStyleMessageWrapper, { style: customStyles.wrapper }, messages.map((message, index) => /*#__PURE__*/_react.default.createElement(_Messages2.KwikUIStyleMessageContainer, { className: "".concat(message.type), key: String(index), size: size, style: customStyles.container }, /*#__PURE__*/_react.default.createElement("div", { className: "message-icon", style: customStyles.icon }, message.type === "error" && /*#__PURE__*/_react.default.createElement(_io.IoCloseCircleOutline, null), message.type === "info" && /*#__PURE__*/_react.default.createElement(_io.IoInformationCircleOutline, null), message.type === "warning" && /*#__PURE__*/_react.default.createElement(_io.IoWarningOutline, null), message.type === "success" && /*#__PURE__*/_react.default.createElement(_io.IoCheckmarkCircleOutline, null)), /*#__PURE__*/_react.default.createElement("div", { className: "message", style: customStyles.message }, message.message)))); }; var _default = exports.default = KwikUIMessages;