@unbxd-ui/unbxd-react-components 0.2.220 → 0.3.0

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.
Files changed (112) hide show
  1. package/README.md +17 -1
  2. package/components/Accordian/Accordian.js +14 -11
  3. package/components/Accordian/Accordian.stories.js +141 -118
  4. package/components/Accordian/index.js +1 -1
  5. package/components/Button/Button.js +4 -4
  6. package/components/Button/Button.stories.js +168 -62
  7. package/components/Button/DropdownButton.js +5 -6
  8. package/components/Button/buttonTheme.css +1 -1
  9. package/components/Button/index.js +2 -3
  10. package/components/DataLoader/DataLoader.js +6 -7
  11. package/components/DataLoader/DataLoader.stories.js +244 -58
  12. package/components/DataLoader/index.js +1 -1
  13. package/components/Form/Checkbox.js +12 -11
  14. package/components/Form/DragDropFileUploader.js +6 -7
  15. package/components/Form/Dropdown.js +14 -12
  16. package/components/Form/FileUploader.js +3 -4
  17. package/components/Form/Form.js +6 -7
  18. package/components/Form/FormElementWrapper.js +1 -1
  19. package/components/Form/Input.js +24 -15
  20. package/components/Form/RadioList.js +8 -9
  21. package/components/Form/RangeSlider.js +12 -13
  22. package/components/Form/SearchableDropdown.js +563 -0
  23. package/components/Form/ServerPaginatedDDList.js +56 -41
  24. package/components/Form/Textarea.js +26 -10
  25. package/components/Form/Toggle.js +6 -7
  26. package/components/Form/formCore.css +1 -1
  27. package/components/Form/formTheme.css +1 -1
  28. package/components/Form/index.js +8 -1
  29. package/components/Form/stories/Checkbox.stories.js +139 -40
  30. package/components/Form/stories/Dropdown.stories.js +323 -92
  31. package/components/Form/stories/FileUploader.stories.js +178 -19
  32. package/components/Form/stories/Input.stories.js +115 -0
  33. package/components/Form/stories/RangeSlider.stories.js +162 -64
  34. package/components/Form/stories/SearchableDropdown.stories.js +189 -0
  35. package/components/Form/stories/ServerPaginatedDropdown.stories.js +365 -0
  36. package/components/Form/stories/Textarea.stories.js +113 -34
  37. package/components/Form/stories/Toggle.stories.js +193 -14
  38. package/components/Form/variables.css +0 -0
  39. package/components/InlineModal/InlineModal.js +119 -21
  40. package/components/InlineModal/InlineModal.stories.js +239 -45
  41. package/components/InlineModal/index.js +1 -2
  42. package/components/InlineModal/inlineModalCore.css +1 -1
  43. package/components/List/List.js +11 -8
  44. package/components/List/List.stories.js +238 -0
  45. package/components/List/index.js +1 -1
  46. package/components/Modal/Modal.js +67 -20
  47. package/components/Modal/Modal.stories.js +257 -38
  48. package/components/Modal/index.js +1 -1
  49. package/components/Modal/modalCore.css +1 -1
  50. package/components/NoDataPlaceholder/NoDataPlaceholder.js +41 -0
  51. package/components/NoDataPlaceholder/NoDataPlaceholder.stories.js +42 -0
  52. package/components/NoDataPlaceholder/index.js +9 -0
  53. package/components/NoDataPlaceholder/noDataPlaceholderCore.css +1 -0
  54. package/components/NotificationComponent/NotificationComponent.js +20 -10
  55. package/components/NotificationComponent/NotificationComponent.stories.js +171 -19
  56. package/components/NotificationComponent/index.js +1 -1
  57. package/components/NotificationComponent/notificationTheme.css +1 -1
  58. package/components/PageLoader/PageLoader.js +84 -0
  59. package/components/PageLoader/PageLoader.stories.js +276 -0
  60. package/components/PageLoader/index.js +9 -0
  61. package/components/PageLoader/pageLoaderCore.css +1 -0
  62. package/components/ProgressBar/ProgressBar.css +0 -0
  63. package/components/ProgressBar/ProgressBar.js +1 -1
  64. package/components/ProgressBar/ProgressBar.stories.js +203 -10
  65. package/components/ProgressBar/index.js +1 -1
  66. package/components/ProgressBar/progressBarCore.css +1 -1
  67. package/components/Table/BaseTable.js +86 -342
  68. package/components/Table/PaginationComponent.js +4 -4
  69. package/components/Table/Table.js +7 -326
  70. package/components/Table/Table.stories.js +2117 -158
  71. package/components/Table/TableChild.js +383 -0
  72. package/components/Table/TableConstants.js +15 -0
  73. package/components/Table/hooks/usePrevious.js +14 -0
  74. package/components/Table/index.js +14 -1
  75. package/components/Table/tableCore.css +1 -1
  76. package/components/TableOld/BaseTable.js +373 -0
  77. package/components/TableOld/PaginationComponent.js +86 -0
  78. package/components/TableOld/TableOld.js +367 -0
  79. package/components/TableOld/index.js +15 -0
  80. package/components/TabsComponent/TabsComponent.js +6 -7
  81. package/components/TabsComponent/TabsComponent.stories.js +291 -53
  82. package/components/TabsComponent/index.js +1 -1
  83. package/components/ToastNotification/ToastNotificationWrapper.js +212 -0
  84. package/components/ToastNotification/ToastNotificationWrapper.stories.js +554 -0
  85. package/components/ToastNotification/index.js +40 -0
  86. package/components/ToastNotification/toastNotificationCore.css +1 -0
  87. package/components/Tooltip/Tooltip.js +231 -56
  88. package/components/Tooltip/Tooltip.stories.js +380 -15
  89. package/components/Tooltip/index.js +1 -1
  90. package/components/Tooltip/tooltipCore.css +1 -1
  91. package/components/Tooltip/tooltipTheme.css +1 -1
  92. package/components/common/NoDataDropdown.js +50 -0
  93. package/components/common/common.css +1 -0
  94. package/components/core.css +2 -3
  95. package/components/core.scss +20 -1
  96. package/components/index.js +66 -3
  97. package/components/theme.css +2 -3
  98. package/core/Validators.js +1 -1
  99. package/core/customHooks.js +4 -4
  100. package/core/dataLoader.js +58 -17
  101. package/core/index.js +1 -1
  102. package/core/utils.js +15 -4
  103. package/index.js +54 -0
  104. package/package.json +41 -28
  105. package/components/Button/DropdownButton.stories.js +0 -49
  106. package/components/Form/stories/DragDropFileUploader.stories.js +0 -25
  107. package/components/Form/stories/FormDefault.stories.js +0 -115
  108. package/components/Form/stories/RadioList.stories.js +0 -53
  109. package/components/Form/stories/TextInput.stories.js +0 -76
  110. package/components/Form/stories/form.stories.js +0 -233
  111. package/components/List/list.stories.js +0 -35
  112. package/core/dataLoader.stories.js +0 -119
@@ -8,19 +8,45 @@ exports["default"] = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
  var _reactDom = _interopRequireDefault(require("react-dom"));
10
10
  var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _react2 = require("motion/react");
11
12
  var _excluded = ["isOpen", "onClose", "isConditionalHideEnabled"];
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
13
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
14
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
15
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
16
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
14
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(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 (var _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); }
15
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
16
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
17
17
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
18
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
19
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
18
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
19
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
20
20
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
21
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
22
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
23
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
21
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
22
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
23
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
24
+ var fadeInScaleVariants = {
25
+ hidden: {
26
+ opacity: 0,
27
+ scale: .9,
28
+ transition: {
29
+ ease: "easeInOut",
30
+ duration: 0.2
31
+ }
32
+ },
33
+ visible: {
34
+ opacity: 1,
35
+ scale: 1,
36
+ transition: {
37
+ ease: "easeInOut",
38
+ duration: 0.2
39
+ }
40
+ },
41
+ exit: {
42
+ opacity: 0,
43
+ scale: 0.8,
44
+ transition: {
45
+ ease: "easeInOut",
46
+ duration: 0.2
47
+ }
48
+ }
49
+ };
24
50
  var ModalContent = function ModalContent(props) {
25
51
  var className = props.className,
26
52
  children = props.children,
@@ -28,11 +54,29 @@ var ModalContent = function ModalContent(props) {
28
54
  titleComponent = props.titleComponent,
29
55
  showClose = props.showClose,
30
56
  showHeader = props.showHeader,
31
- hideModal = props.hideModal;
32
- return /*#__PURE__*/_react["default"].createElement("div", {
33
- className: "RCB-modal ".concat(className)
34
- }, /*#__PURE__*/_react["default"].createElement("div", {
35
- className: "RCB-modal-body"
57
+ hideModal = props.hideModal,
58
+ animateBody = props.animateBody;
59
+ return /*#__PURE__*/_react["default"].createElement(_react2.motion.div, {
60
+ className: "RCB-modal ".concat(className),
61
+ initial: {
62
+ opacity: 0.6
63
+ },
64
+ animate: {
65
+ opacity: 1
66
+ },
67
+ exit: {
68
+ opacity: 0
69
+ },
70
+ transition: {
71
+ duration: 0.2,
72
+ ease: "easeInOut"
73
+ }
74
+ }, /*#__PURE__*/_react["default"].createElement(_react2.motion.div, {
75
+ className: "RCB-modal-body",
76
+ variants: animateBody ? animateBody : fadeInScaleVariants,
77
+ initial: "hidden",
78
+ animate: "visible",
79
+ exit: "exit"
36
80
  }, showHeader && /*#__PURE__*/_react["default"].createElement("div", {
37
81
  className: "RCB-modal-header"
38
82
  }, /*#__PURE__*/_react["default"].createElement("span", {
@@ -56,7 +100,8 @@ ModalContent.propTypes = {
56
100
 
57
101
  /** Displays a full screen modal */
58
102
  var Modal = function Modal(props, ref) {
59
- var isOpen = props.isOpen,
103
+ var _props$isOpen = props.isOpen,
104
+ isOpen = _props$isOpen === void 0 ? null : _props$isOpen,
60
105
  onClose = props.onClose,
61
106
  _props$isConditionalH = props.isConditionalHideEnabled,
62
107
  isConditionalHideEnabled = _props$isConditionalH === void 0 ? false : _props$isConditionalH,
@@ -78,7 +123,9 @@ var Modal = function Modal(props, ref) {
78
123
  }
79
124
  };
80
125
  (0, _react.useEffect)(function () {
81
- setIsModalOpen(isOpen);
126
+ if (isOpen !== null) {
127
+ setIsModalOpen(isOpen);
128
+ }
82
129
  }, [isOpen]);
83
130
 
84
131
  /* add methods that can be accessed via this component's ref */
@@ -88,9 +135,9 @@ var Modal = function Modal(props, ref) {
88
135
  hideModal: hideModal
89
136
  };
90
137
  });
91
- return isModalOpen ? /*#__PURE__*/_reactDom["default"].createPortal( /*#__PURE__*/_react["default"].createElement(ModalContent, _extends({}, restProps, {
138
+ return /*#__PURE__*/_reactDom["default"].createPortal(/*#__PURE__*/_react["default"].createElement(_react2.AnimatePresence, null, isModalOpen ? /*#__PURE__*/_react["default"].createElement(ModalContent, _extends({}, restProps, {
92
139
  hideModal: hideModal
93
- })), bodyElement) : null;
140
+ })) : null), bodyElement);
94
141
  };
95
142
  Modal = /*#__PURE__*/(0, _react.forwardRef)(Modal);
96
143
  Modal.propTypes = {
@@ -114,7 +161,7 @@ Modal.propTypes = {
114
161
  Modal.defaultProps = {
115
162
  className: "",
116
163
  title: "",
117
- isOpen: false,
164
+ isOpen: null,
118
165
  showClose: true,
119
166
  showHeader: true,
120
167
  isConditionalHideEnabled: false
@@ -4,49 +4,268 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports["default"] = exports.OpenByDefault = exports.ActivateOnClick = void 0;
8
- var _react = _interopRequireWildcard(require("react"));
7
+ exports["default"] = exports.WithCustomTitle = exports.Interactive = exports.FormModal = exports.Default = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
9
  var _Modal = _interopRequireDefault(require("./Modal"));
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
12
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
13
- var ModalExample = function ModalExample() {
14
- return /*#__PURE__*/_react["default"].createElement(_Modal["default"], {
15
- isOpen: true,
16
- title: "This is the header"
17
- }, /*#__PURE__*/_react["default"].createElement("div", null, "From inside a modal"));
18
- };
19
- var ModalClickExample = function ModalClickExample() {
20
- var modalRef = (0, _react.useRef)();
21
- var showModal = function showModal() {
22
- modalRef.current.showModal();
23
- };
24
- return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("a", {
25
- href: "javascript:void(0)",
26
- onClick: showModal
27
- }, "Show Modal"), /*#__PURE__*/_react["default"].createElement(_Modal["default"], {
28
- title: "This is the header",
29
- ref: modalRef
30
- }, /*#__PURE__*/_react["default"].createElement("div", null, "From inside a modal")));
10
+ var _Button = _interopRequireWildcard(require("../Button/Button"));
11
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(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 (var _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); }
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
13
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
14
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
17
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
18
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
19
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
20
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
21
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
22
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
23
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
24
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
25
+ var meta = {
26
+ title: 'Components/Modal',
27
+ component: _Modal["default"],
28
+ parameters: {
29
+ layout: 'centered'
30
+ },
31
+ tags: ['autodocs'],
32
+ argTypes: {
33
+ className: {
34
+ control: 'text',
35
+ description: 'Additional CSS classes for the modal'
36
+ },
37
+ title: {
38
+ control: 'text',
39
+ description: 'Header or title for the modal'
40
+ },
41
+ showClose: {
42
+ control: 'boolean',
43
+ description: 'Whether to show the close button'
44
+ },
45
+ showHeader: {
46
+ control: 'boolean',
47
+ description: 'Whether to show the modal header'
48
+ },
49
+ isConditionalHideEnabled: {
50
+ control: 'boolean',
51
+ description: 'Whether to enable conditional hiding of the modal'
52
+ }
53
+ }
31
54
  };
32
- var ActivateOnClick = exports.ActivateOnClick = function ActivateOnClick() {
33
- return /*#__PURE__*/_react["default"].createElement(ModalClickExample, null);
55
+ var _default = exports["default"] = meta; // Basic Modal
56
+ var Default = exports.Default = {
57
+ render: function render() {
58
+ var modalRef = _react["default"].useRef(null);
59
+ return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
60
+ appearance: _Button.ButtonAppearance.PRIMARY,
61
+ onClick: function onClick() {
62
+ return modalRef.current.showModal();
63
+ }
64
+ }, "Open Modal"), /*#__PURE__*/_react["default"].createElement(_Modal["default"], {
65
+ ref: modalRef,
66
+ title: "Basic Modal",
67
+ onClose: function onClose() {
68
+ return console.log('Modal closed');
69
+ }
70
+ }, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("p", null, "This is a basic modal with default settings."), /*#__PURE__*/_react["default"].createElement("div", {
71
+ className: "modal-footer"
72
+ }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
73
+ appearance: _Button.ButtonAppearance.SECONDARY,
74
+ onClick: function onClick() {
75
+ return modalRef.current.hideModal();
76
+ }
77
+ }, "Close")))));
78
+ }
34
79
  };
35
- ActivateOnClick.story = {
36
- name: "Activate on click"
80
+
81
+ // Custom Title Component
82
+ var CustomTitle = function CustomTitle() {
83
+ return /*#__PURE__*/_react["default"].createElement("div", {
84
+ style: {
85
+ display: 'flex',
86
+ alignItems: 'center',
87
+ gap: '10px'
88
+ }
89
+ }, /*#__PURE__*/_react["default"].createElement("span", {
90
+ style: {
91
+ color: '#1a73e8',
92
+ fontSize: '20px'
93
+ }
94
+ }, "\uD83D\uDE80"), /*#__PURE__*/_react["default"].createElement("span", null, "Custom Title Component"));
37
95
  };
38
- var OpenByDefault = exports.OpenByDefault = function OpenByDefault() {
39
- return /*#__PURE__*/_react["default"].createElement(ModalExample, null);
96
+ var WithCustomTitle = exports.WithCustomTitle = {
97
+ render: function render() {
98
+ var modalRef = _react["default"].useRef(null);
99
+ return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
100
+ appearance: _Button.ButtonAppearance.PRIMARY,
101
+ onClick: function onClick() {
102
+ return modalRef.current.showModal();
103
+ }
104
+ }, "Open Modal with Custom Title"), /*#__PURE__*/_react["default"].createElement(_Modal["default"], {
105
+ ref: modalRef,
106
+ titleComponent: /*#__PURE__*/_react["default"].createElement(CustomTitle, null)
107
+ }, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("p", null, "This modal uses a custom title component instead of a simple string title."), /*#__PURE__*/_react["default"].createElement("div", {
108
+ className: "modal-footer"
109
+ }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
110
+ appearance: _Button.ButtonAppearance.SECONDARY,
111
+ onClick: function onClick() {
112
+ return modalRef.current.hideModal();
113
+ }
114
+ }, "Close")))));
115
+ }
40
116
  };
41
- OpenByDefault.story = {
42
- name: "Open by default"
117
+
118
+ // Form Modal
119
+ var FormModal = exports.FormModal = {
120
+ render: function render() {
121
+ var modalRef = _react["default"].useRef(null);
122
+ var _React$useState = _react["default"].useState({
123
+ name: '',
124
+ email: '',
125
+ message: ''
126
+ }),
127
+ _React$useState2 = _slicedToArray(_React$useState, 2),
128
+ formData = _React$useState2[0],
129
+ setFormData = _React$useState2[1];
130
+ var handleSubmit = function handleSubmit() {
131
+ console.log('Form submitted:', formData);
132
+ modalRef.current.hideModal();
133
+ };
134
+ return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
135
+ appearance: _Button.ButtonAppearance.PRIMARY,
136
+ onClick: function onClick() {
137
+ return modalRef.current.showModal();
138
+ }
139
+ }, "Open Form Modal"), /*#__PURE__*/_react["default"].createElement(_Modal["default"], {
140
+ ref: modalRef,
141
+ title: "Contact Form",
142
+ className: "form-modal"
143
+ }, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
144
+ style: {
145
+ marginBottom: '15px'
146
+ }
147
+ }, /*#__PURE__*/_react["default"].createElement("label", {
148
+ style: {
149
+ display: 'block',
150
+ marginBottom: '5px'
151
+ }
152
+ }, "Name"), /*#__PURE__*/_react["default"].createElement("input", {
153
+ type: "text",
154
+ value: formData.name,
155
+ onChange: function onChange(e) {
156
+ return setFormData(_objectSpread(_objectSpread({}, formData), {}, {
157
+ name: e.target.value
158
+ }));
159
+ },
160
+ style: {
161
+ width: '100%',
162
+ padding: '8px',
163
+ border: '1px solid #ddd',
164
+ borderRadius: '4px'
165
+ }
166
+ })), /*#__PURE__*/_react["default"].createElement("div", {
167
+ style: {
168
+ marginBottom: '15px'
169
+ }
170
+ }, /*#__PURE__*/_react["default"].createElement("label", {
171
+ style: {
172
+ display: 'block',
173
+ marginBottom: '5px'
174
+ }
175
+ }, "Email"), /*#__PURE__*/_react["default"].createElement("input", {
176
+ type: "email",
177
+ value: formData.email,
178
+ onChange: function onChange(e) {
179
+ return setFormData(_objectSpread(_objectSpread({}, formData), {}, {
180
+ email: e.target.value
181
+ }));
182
+ },
183
+ style: {
184
+ width: '100%',
185
+ padding: '8px',
186
+ border: '1px solid #ddd',
187
+ borderRadius: '4px'
188
+ }
189
+ })), /*#__PURE__*/_react["default"].createElement("div", {
190
+ style: {
191
+ marginBottom: '15px'
192
+ }
193
+ }, /*#__PURE__*/_react["default"].createElement("label", {
194
+ style: {
195
+ display: 'block',
196
+ marginBottom: '5px'
197
+ }
198
+ }, "Message"), /*#__PURE__*/_react["default"].createElement("textarea", {
199
+ value: formData.message,
200
+ onChange: function onChange(e) {
201
+ return setFormData(_objectSpread(_objectSpread({}, formData), {}, {
202
+ message: e.target.value
203
+ }));
204
+ },
205
+ style: {
206
+ width: '100%',
207
+ padding: '8px',
208
+ border: '1px solid #ddd',
209
+ borderRadius: '4px',
210
+ minHeight: '100px'
211
+ }
212
+ })), /*#__PURE__*/_react["default"].createElement("div", {
213
+ className: "modal-footer",
214
+ style: {
215
+ display: 'flex',
216
+ justifyContent: 'flex-end',
217
+ gap: '10px'
218
+ }
219
+ }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
220
+ appearance: _Button.ButtonAppearance.SECONDARY,
221
+ onClick: function onClick() {
222
+ return modalRef.current.hideModal();
223
+ }
224
+ }, "Cancel"), /*#__PURE__*/_react["default"].createElement(_Button["default"], {
225
+ appearance: _Button.ButtonAppearance.PRIMARY,
226
+ onClick: handleSubmit
227
+ }, "Submit")))));
228
+ }
43
229
  };
44
- var _default = exports["default"] = {
45
- title: "Modals|Page modal",
46
- parameters: {
47
- info: {
48
- propTables: [_Modal["default"]],
49
- propTablesExclude: [ModalExample, ModalClickExample]
50
- }
230
+
231
+ // Interactive example
232
+ var Interactive = exports.Interactive = {
233
+ render: function render(args) {
234
+ var modalRef = _react["default"].useRef(null);
235
+ return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
236
+ appearance: _Button.ButtonAppearance.PRIMARY,
237
+ onClick: function onClick() {
238
+ return modalRef.current.showModal();
239
+ }
240
+ }, "Open Interactive Modal"), /*#__PURE__*/_react["default"].createElement(_Modal["default"], _extends({
241
+ ref: modalRef
242
+ }, args), /*#__PURE__*/_react["default"].createElement("div", {
243
+ style: {
244
+ padding: '20px',
245
+ minWidth: '300px'
246
+ }
247
+ }, /*#__PURE__*/_react["default"].createElement("p", null, "This is an interactive modal example."), /*#__PURE__*/_react["default"].createElement("p", null, "Try adjusting the controls in the Storybook panel:"), /*#__PURE__*/_react["default"].createElement("ul", {
248
+ style: {
249
+ marginTop: '10px',
250
+ marginBottom: '20px'
251
+ }
252
+ }, /*#__PURE__*/_react["default"].createElement("li", null, "Change the title"), /*#__PURE__*/_react["default"].createElement("li", null, "Toggle header visibility"), /*#__PURE__*/_react["default"].createElement("li", null, "Toggle close button"), /*#__PURE__*/_react["default"].createElement("li", null, "Add custom classes")), /*#__PURE__*/_react["default"].createElement("div", {
253
+ style: {
254
+ marginTop: '20px',
255
+ textAlign: 'right'
256
+ }
257
+ }, /*#__PURE__*/_react["default"].createElement(_Button["default"], {
258
+ appearance: _Button.ButtonAppearance.SECONDARY,
259
+ onClick: function onClick() {
260
+ return modalRef.current.hideModal();
261
+ }
262
+ }, "Close")))));
263
+ },
264
+ args: {
265
+ title: 'Interactive Modal',
266
+ showClose: true,
267
+ showHeader: true,
268
+ isConditionalHideEnabled: false,
269
+ className: ''
51
270
  }
52
271
  };
@@ -5,5 +5,5 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports["default"] = void 0;
7
7
  var _Modal = _interopRequireDefault(require("./Modal"));
8
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
9
9
  var _default = exports["default"] = _Modal["default"];
@@ -1 +1 @@
1
- .RCB-modal{position:fixed;top:0;width:100%;height:100%;background:rgba(0,0,0,0.8);display:flex;justify-content:center;align-items:center;z-index:2}.RCB-modal-body{background:#FFF;padding:20px}.RCB-modal-header{display:flex;margin-bottom:10px}.RCB-modal-title{flex:1}.RCB-modal-close{cursor:pointer}.RCB-modal-close:before{content:"X"}
1
+ .RCB-modal{position:fixed;top:0;width:100%;height:100%;background:rgba(0,0,0,0.6);display:flex;justify-content:center;align-items:center;z-index:2}.RCB-modal .modal-footer{padding:24px 24px;margin:20px -24px 0px;border-radius:0 0 8px 8px;text-align:right}.RCB-modal .modal-footer .RCB-btn{margin-right:14px}.RCB-modal .modal-footer .RCB-btn:last-child{margin-right:0}.RCB-modal-body{background:#FFF;border-radius:8px;padding:0px}.RCB-modal-header{display:flex;margin-bottom:0px;padding:24px 24px 10px}.RCB-modal-title{flex:1;font-size:18px;font-weight:700;line-height:normal}.RCB-modal-close{cursor:pointer}.RCB-modal-close:before{content:"X"}.RCB-modal-content{padding:24px 24px 0px}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
10
+ var NoDataPlaceholder = function NoDataPlaceholder(props) {
11
+ var className = props.className,
12
+ image = props.image,
13
+ title = props.title,
14
+ description = props.description;
15
+ return /*#__PURE__*/_react["default"].createElement("div", {
16
+ className: "RCB-no-data-placeholder ".concat(className)
17
+ }, image && /*#__PURE__*/_react["default"].createElement("div", {
18
+ className: "RCB-no-data-image"
19
+ }, image), title && /*#__PURE__*/_react["default"].createElement("div", {
20
+ className: "RCB-no-data-title"
21
+ }, title), description && /*#__PURE__*/_react["default"].createElement("div", {
22
+ className: "RCB-no-data-description"
23
+ }, description));
24
+ };
25
+ NoDataPlaceholder.propTypes = {
26
+ /** Pass any additional classNames to NoDataPlaceholder component */
27
+ className: _propTypes["default"].string,
28
+ /** React element (typically an image or icon) to display */
29
+ image: _propTypes["default"].element,
30
+ /** Title text to display */
31
+ title: _propTypes["default"].string,
32
+ /** Description text to display */
33
+ description: _propTypes["default"].string
34
+ };
35
+ NoDataPlaceholder.defaultProps = {
36
+ className: "",
37
+ title: "No Data Available",
38
+ description: "There is no data to display at the moment."
39
+ };
40
+ NoDataPlaceholder.displayName = "NoDataPlaceholder";
41
+ var _default = exports["default"] = NoDataPlaceholder;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = exports.Default = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _NoDataPlaceholder = _interopRequireDefault(require("./NoDataPlaceholder"));
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
10
+ var meta = {
11
+ title: 'Components/NoDataPlaceholder',
12
+ component: _NoDataPlaceholder["default"],
13
+ parameters: {
14
+ layout: 'centered'
15
+ },
16
+ tags: ['autodocs'],
17
+ argTypes: {
18
+ image: {
19
+ control: 'object',
20
+ description: 'React element (typically an image or icon) to display'
21
+ },
22
+ title: {
23
+ control: 'text',
24
+ description: 'Title text to display'
25
+ },
26
+ description: {
27
+ control: 'text',
28
+ description: 'Description text to display'
29
+ }
30
+ }
31
+ };
32
+ var _default = exports["default"] = meta; // Basic placeholder
33
+ var Default = exports.Default = {
34
+ args: {
35
+ image: /*#__PURE__*/_react["default"].createElement("img", {
36
+ src: "https://placehold.co/100",
37
+ alt: "No Data"
38
+ }),
39
+ title: 'No Data Available',
40
+ description: 'There is no data to display at the moment.'
41
+ }
42
+ };
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _NoDataPlaceholder = _interopRequireDefault(require("./NoDataPlaceholder"));
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
9
+ var _default = exports["default"] = _NoDataPlaceholder["default"];
@@ -0,0 +1 @@
1
+ .RCB-no-data-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.RCB-no-data-image{margin-bottom:16px}.RCB-no-data-image img{max-width:120px;max-height:120px;object-fit:contain}.RCB-no-data-title{font-size:18px;font-weight:600;color:#333;margin-bottom:8px}.RCB-no-data-description{font-size:14px;color:#666;line-height:1.5}
@@ -7,15 +7,14 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports["default"] = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
12
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
13
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
11
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(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 (var _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); }
12
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
14
13
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
15
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
16
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
14
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
15
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
17
16
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
18
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
17
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
19
18
  var NotificationComponent = function NotificationComponent(props) {
20
19
  var _useState = (0, _react.useState)(false),
21
20
  _useState2 = _slicedToArray(_useState, 2),
@@ -26,7 +25,9 @@ var NotificationComponent = function NotificationComponent(props) {
26
25
  messageId = props.messageId,
27
26
  fadeOut = props.fadeOut,
28
27
  fadeOutTime = props.fadeOutTime,
29
- className = props.className;
28
+ className = props.className,
29
+ _props$showClose = props.showClose,
30
+ showClose = _props$showClose === void 0 ? false : _props$showClose;
30
31
  var fadeOutMessage = typeof fadeOut !== "undefined" ? fadeOut : appearance === "success";
31
32
  var timerID;
32
33
  var clearMessage = function clearMessage() {
@@ -52,7 +53,14 @@ var NotificationComponent = function NotificationComponent(props) {
52
53
  } else {
53
54
  return /*#__PURE__*/_react["default"].createElement("div", {
54
55
  className: "RCB-notif RCB-notif-".concat(appearance, " ").concat(className)
55
- }, children);
56
+ }, showClose ? /*#__PURE__*/_react["default"].createElement("div", {
57
+ className: "notif-wrapper"
58
+ }, children, /*#__PURE__*/_react["default"].createElement("div", {
59
+ className: "".concat(appearance, "-cross-icon"),
60
+ onClick: function onClick() {
61
+ setHideMessage(true);
62
+ }
63
+ })) : /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, children));
56
64
  }
57
65
  };
58
66
  NotificationComponent.propTypes = {
@@ -65,7 +73,9 @@ NotificationComponent.propTypes = {
65
73
  /* Should the message fadeout after (fadeOutTime)ms or not. Default true for success messages only. */
66
74
  fadeOut: _propTypes["default"].bool,
67
75
  /* fadeout timer, in milliseconds */
68
- fadeOutTime: _propTypes["default"].number
76
+ fadeOutTime: _propTypes["default"].number,
77
+ /* showClose to hide notification */
78
+ showClose: _propTypes["default"].bool
69
79
  };
70
80
  NotificationComponent.defaultProps = {
71
81
  className: "",