@bigbinary/neetoui 8.3.70 → 8.3.72
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.
- package/dist/Alert.js +7 -3
- package/dist/Alert.js.map +1 -1
- package/dist/DatePicker.js +1 -1
- package/dist/Modal.js +2 -1
- package/dist/Modal.js.map +1 -1
- package/dist/Pane.js +2 -1
- package/dist/Pane.js.map +1 -1
- package/dist/{Portal-BkMqCf2F.js → Portal-BaWO-CyE.js} +11 -2
- package/dist/{Portal-BkMqCf2F.js.map → Portal-BaWO-CyE.js.map} +1 -1
- package/dist/Table.js +1 -1
- package/dist/TimePicker.js +1 -1
- package/dist/cjs/Alert.js +7 -3
- package/dist/cjs/Alert.js.map +1 -1
- package/dist/cjs/DatePicker.js +1 -1
- package/dist/cjs/Modal.js +2 -1
- package/dist/cjs/Modal.js.map +1 -1
- package/dist/cjs/Pane.js +2 -1
- package/dist/cjs/Pane.js.map +1 -1
- package/dist/cjs/{Portal-DOeXKll0.js → Portal-D3CvlJ0g.js} +11 -2
- package/dist/cjs/{Portal-DOeXKll0.js.map → Portal-D3CvlJ0g.js.map} +1 -1
- package/dist/cjs/Table.js +1 -1
- package/dist/cjs/TimePicker.js +1 -1
- package/dist/cjs/formik/BlockNavigation.js +1 -1
- package/dist/cjs/formik/index.js +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/formik/BlockNavigation.js +1 -1
- package/dist/formik/index.js +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/dist/Alert.js
CHANGED
|
@@ -30,7 +30,7 @@ import '@tippyjs/react';
|
|
|
30
30
|
import 'tippy.js';
|
|
31
31
|
import './usePrefersReducedMotion-n4ZJtExQ.js';
|
|
32
32
|
import '@bigbinary/neeto-icons/Close';
|
|
33
|
-
import './Portal-
|
|
33
|
+
import './Portal-BaWO-CyE.js';
|
|
34
34
|
import './index-QWVp_Xt6.js';
|
|
35
35
|
import './en-Dmu3B4Vs.js';
|
|
36
36
|
import '@babel/runtime/helpers/esm/extends';
|
|
@@ -38,13 +38,15 @@ import '@babel/runtime/helpers/esm/objectWithoutPropertiesLoose';
|
|
|
38
38
|
import '@babel/runtime/helpers/esm/inheritsLoose';
|
|
39
39
|
import 'react-dom';
|
|
40
40
|
|
|
41
|
-
var _excluded = ["size", "isOpen", "isSubmitting", "className", "closeOnEsc", "closeButton", "backdropClassName", "closeOnOutsideClick", "onClose", "onSubmit", "title", "message", "submitButtonLabel", "cancelButtonLabel", "initialFocusRef", "initialFocusElement", "hideCancelButton"];
|
|
41
|
+
var _excluded = ["size", "isOpen", "isSubmitting", "className", "closeOnEsc", "closeButton", "backdropClassName", "closeOnOutsideClick", "onClose", "onSubmit", "title", "message", "submitButtonLabel", "cancelButtonLabel", "initialFocusRef", "initialFocusElement", "hideCancelButton", "style"];
|
|
42
42
|
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; }
|
|
43
43
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).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; }
|
|
44
44
|
var SIZES = {
|
|
45
45
|
medium: "medium"};
|
|
46
46
|
var FOCUSABLE_ELEMENTS = {
|
|
47
47
|
submit: "submit"};
|
|
48
|
+
var ALERT_STYLES = {
|
|
49
|
+
danger: "danger"};
|
|
48
50
|
var Alert = function Alert(_ref) {
|
|
49
51
|
var _ref$size = _ref.size,
|
|
50
52
|
size = _ref$size === void 0 ? SIZES.medium : _ref$size,
|
|
@@ -78,6 +80,8 @@ var Alert = function Alert(_ref) {
|
|
|
78
80
|
initialFocusElement = _ref.initialFocusElement,
|
|
79
81
|
_ref$hideCancelButton = _ref.hideCancelButton,
|
|
80
82
|
hideCancelButton = _ref$hideCancelButton === void 0 ? false : _ref$hideCancelButton,
|
|
83
|
+
_ref$style = _ref.style,
|
|
84
|
+
submitButtonStyle = _ref$style === void 0 ? ALERT_STYLES.danger : _ref$style,
|
|
81
85
|
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
82
86
|
var submitButtonRef = useRef(null);
|
|
83
87
|
var cancelButtonRef = useRef(null);
|
|
@@ -136,7 +140,7 @@ var Alert = function Alert(_ref) {
|
|
|
136
140
|
label: submitButtonLabel,
|
|
137
141
|
loading: isSubmitting,
|
|
138
142
|
ref: submitButtonRef,
|
|
139
|
-
style:
|
|
143
|
+
style: submitButtonStyle,
|
|
140
144
|
onClick: onSubmit
|
|
141
145
|
})]
|
|
142
146
|
})]
|
package/dist/Alert.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Alert.js","sources":["../src/components/Alert.jsx"],"sourcesContent":["import React, { useRef } from \"react\";\n\nimport PropTypes from \"prop-types\";\n\nimport { useId } from \"hooks\";\n\nimport Button from \"./Button\";\nimport Modal from \"./Modal\";\nimport Typography from \"./Typography\";\n\nconst SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst FOCUSABLE_ELEMENTS = { submit: \"submit\", cancel: \"cancel\" };\n\nconst Alert = ({\n size = SIZES.medium,\n isOpen = false,\n isSubmitting = false,\n className = \"\",\n closeOnEsc = true,\n closeButton = true,\n backdropClassName = \"\",\n closeOnOutsideClick = true,\n onClose = () => {},\n onSubmit = () => {},\n title = \"\",\n message = \"\",\n submitButtonLabel = \"Continue\",\n cancelButtonLabel = \"Cancel\",\n initialFocusRef,\n initialFocusElement,\n hideCancelButton = false,\n ...otherProps\n}) => {\n const submitButtonRef = useRef(null);\n const cancelButtonRef = useRef(null);\n\n const hasCustomFocusableElement = !!initialFocusRef || initialFocusElement;\n const initialFocusElementRef =\n initialFocusElement === FOCUSABLE_ELEMENTS.submit\n ? submitButtonRef\n : cancelButtonRef;\n\n // Generate unique IDs for title and message\n const baseId = useId();\n const titleId = `alert-title-${baseId}`;\n const messageId = `alert-message-${baseId}`;\n const ariaProps = {\n ...(title && { \"aria-labelledby\": titleId }),\n ...(message && { \"aria-describedby\": messageId }),\n };\n\n return (\n <Modal\n {...{\n backdropClassName,\n className,\n closeButton,\n closeOnEsc,\n closeOnOutsideClick,\n isOpen,\n onClose,\n size,\n ...(hasCustomFocusableElement && {\n initialFocusRef: initialFocusRef || initialFocusElementRef,\n }),\n ...ariaProps,\n ...otherProps,\n }}\n data-testid=\"alert-box\"\n role=\"alertdialog\"\n >\n <Modal.Header>\n <Typography data-testid=\"alert-title\" id={titleId} style=\"h2\">\n {title}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Typography\n data-testid=\"alert-message\"\n id={messageId}\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {message}\n </Typography>\n </Modal.Body>\n <Modal.Footer className=\"neeto-ui-gap-2 neeto-ui-flex neeto-ui-justify-end neeto-ui-items-center\">\n {!hideCancelButton && (\n <Button\n data-testid=\"alert-cancel-button\"\n label={cancelButtonLabel}\n ref={cancelButtonRef}\n style=\"tertiary\"\n onClick={onClose}\n />\n )}\n <Button\n data-testid=\"alert-submit-button\"\n disabled={isSubmitting || !isOpen}\n label={submitButtonLabel}\n loading={isSubmitting}\n ref={submitButtonRef}\n style=\"danger\"\n onClick={onSubmit}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nAlert.propTypes = {\n /**\n * To specify the size of the Alert.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify whether the Alert is open or not.\n */\n isOpen: PropTypes.bool,\n /**\n * To specify the callback which will be invoked when the Alert is closed.\n */\n onClose: PropTypes.func,\n /**\n * To specify the callback which will be invoked when the Alert is submitted.\n */\n onSubmit: PropTypes.func,\n /**\n * To provide title to the Alert.\n */\n title: PropTypes.string,\n /**\n * To provide description to the Alert.\n */\n message: PropTypes.node,\n /**\n * To add loading state to submit button\n */\n isSubmitting: PropTypes.bool,\n /**\n * To provide external classNames to the Alert.\n */\n className: PropTypes.string,\n /**\n * To close the Alert on pressing the `Esc` key.\n */\n closeOnEsc: PropTypes.bool,\n /**\n * To specify whether the close button of the Alert should be displayed or not.\n */\n closeButton: PropTypes.bool,\n /**\n * To provide label to the submit button.\n */\n submitButtonLabel: PropTypes.string,\n /**\n * To provide label to the cancel button.\n */\n cancelButtonLabel: PropTypes.string,\n /**\n * To add custom classes to Backdrop component.\n */\n backdropClassName: PropTypes.string,\n /**\n * To close on clicking outside the Alert content.\n */\n closeOnOutsideClick: PropTypes.bool,\n /**\n * To specify the ref of the element which will receive focus when the Alert is opened.\n * If not specified, the focus will be set to the submit button inside the Alert.\n * */\n initialFocusRef: PropTypes.object,\n /**\n * To specify the element which will receive focus when the Alert is opened.\n */\n initialFocusElement: PropTypes.oneOf(Object.values(FOCUSABLE_ELEMENTS)),\n /**\n * To hide the cancel button\n */\n hideCancelButton: PropTypes.bool,\n};\n\nexport default Alert;\n"],"names":["SIZES","small","medium","FOCUSABLE_ELEMENTS","submit","Alert","_ref","_ref$size","size","_ref$isOpen","isOpen","_ref$isSubmitting","isSubmitting","_ref$className","className","_ref$closeOnEsc","closeOnEsc","_ref$closeButton","closeButton","_ref$backdropClassNam","backdropClassName","_ref$closeOnOutsideCl","closeOnOutsideClick","_ref$onClose","onClose","_ref$onSubmit","onSubmit","_ref$title","title","_ref$message","message","_ref$submitButtonLabe","submitButtonLabel","_ref$cancelButtonLabe","cancelButtonLabel","initialFocusRef","initialFocusElement","_ref$hideCancelButton","hideCancelButton","otherProps","_objectWithoutProperties","_excluded","submitButtonRef","useRef","cancelButtonRef","hasCustomFocusableElement","initialFocusElementRef","baseId","useId","titleId","concat","messageId","ariaProps","_objectSpread","_jsxs","Modal","role","children","_jsx","Header","Typography","id","style","Body","lineHeight","Footer","Button","label","ref","onClick","disabled","loading"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Alert.js","sources":["../src/components/Alert.jsx"],"sourcesContent":["import React, { useRef } from \"react\";\n\nimport PropTypes from \"prop-types\";\n\nimport { useId } from \"hooks\";\n\nimport Button from \"./Button\";\nimport Modal from \"./Modal\";\nimport Typography from \"./Typography\";\n\nconst SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst FOCUSABLE_ELEMENTS = { submit: \"submit\", cancel: \"cancel\" };\n\nconst ALERT_STYLES = { danger: \"danger\", warning: \"warning\" };\n\nconst Alert = ({\n size = SIZES.medium,\n isOpen = false,\n isSubmitting = false,\n className = \"\",\n closeOnEsc = true,\n closeButton = true,\n backdropClassName = \"\",\n closeOnOutsideClick = true,\n onClose = () => {},\n onSubmit = () => {},\n title = \"\",\n message = \"\",\n submitButtonLabel = \"Continue\",\n cancelButtonLabel = \"Cancel\",\n initialFocusRef,\n initialFocusElement,\n hideCancelButton = false,\n style: submitButtonStyle = ALERT_STYLES.danger,\n ...otherProps\n}) => {\n const submitButtonRef = useRef(null);\n const cancelButtonRef = useRef(null);\n\n const hasCustomFocusableElement = !!initialFocusRef || initialFocusElement;\n const initialFocusElementRef =\n initialFocusElement === FOCUSABLE_ELEMENTS.submit\n ? submitButtonRef\n : cancelButtonRef;\n\n // Generate unique IDs for title and message\n const baseId = useId();\n const titleId = `alert-title-${baseId}`;\n const messageId = `alert-message-${baseId}`;\n const ariaProps = {\n ...(title && { \"aria-labelledby\": titleId }),\n ...(message && { \"aria-describedby\": messageId }),\n };\n\n return (\n <Modal\n {...{\n backdropClassName,\n className,\n closeButton,\n closeOnEsc,\n closeOnOutsideClick,\n isOpen,\n onClose,\n size,\n ...(hasCustomFocusableElement && {\n initialFocusRef: initialFocusRef || initialFocusElementRef,\n }),\n ...ariaProps,\n ...otherProps,\n }}\n data-testid=\"alert-box\"\n role=\"alertdialog\"\n >\n <Modal.Header>\n <Typography data-testid=\"alert-title\" id={titleId} style=\"h2\">\n {title}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Typography\n data-testid=\"alert-message\"\n id={messageId}\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {message}\n </Typography>\n </Modal.Body>\n <Modal.Footer className=\"neeto-ui-gap-2 neeto-ui-flex neeto-ui-justify-end neeto-ui-items-center\">\n {!hideCancelButton && (\n <Button\n data-testid=\"alert-cancel-button\"\n label={cancelButtonLabel}\n ref={cancelButtonRef}\n style=\"tertiary\"\n onClick={onClose}\n />\n )}\n <Button\n data-testid=\"alert-submit-button\"\n disabled={isSubmitting || !isOpen}\n label={submitButtonLabel}\n loading={isSubmitting}\n ref={submitButtonRef}\n style={submitButtonStyle}\n onClick={onSubmit}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nAlert.propTypes = {\n /**\n * To specify the size of the Alert.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify whether the Alert is open or not.\n */\n isOpen: PropTypes.bool,\n /**\n * To specify the callback which will be invoked when the Alert is closed.\n */\n onClose: PropTypes.func,\n /**\n * To specify the callback which will be invoked when the Alert is submitted.\n */\n onSubmit: PropTypes.func,\n /**\n * To provide title to the Alert.\n */\n title: PropTypes.string,\n /**\n * To provide description to the Alert.\n */\n message: PropTypes.node,\n /**\n * To add loading state to submit button\n */\n isSubmitting: PropTypes.bool,\n /**\n * To provide external classNames to the Alert.\n */\n className: PropTypes.string,\n /**\n * To close the Alert on pressing the `Esc` key.\n */\n closeOnEsc: PropTypes.bool,\n /**\n * To specify whether the close button of the Alert should be displayed or not.\n */\n closeButton: PropTypes.bool,\n /**\n * To provide label to the submit button.\n */\n submitButtonLabel: PropTypes.string,\n /**\n * To provide label to the cancel button.\n */\n cancelButtonLabel: PropTypes.string,\n /**\n * To add custom classes to Backdrop component.\n */\n backdropClassName: PropTypes.string,\n /**\n * To close on clicking outside the Alert content.\n */\n closeOnOutsideClick: PropTypes.bool,\n /**\n * To specify the ref of the element which will receive focus when the Alert is opened.\n * If not specified, the focus will be set to the submit button inside the Alert.\n * */\n initialFocusRef: PropTypes.object,\n /**\n * To specify the element which will receive focus when the Alert is opened.\n */\n initialFocusElement: PropTypes.oneOf(Object.values(FOCUSABLE_ELEMENTS)),\n /**\n * To hide the cancel button\n */\n hideCancelButton: PropTypes.bool,\n /**\n * To specify the style of the Alert submit button.\n */\n style: PropTypes.oneOf(Object.values(ALERT_STYLES)),\n};\n\nexport default Alert;\n"],"names":["SIZES","small","medium","FOCUSABLE_ELEMENTS","submit","ALERT_STYLES","danger","Alert","_ref","_ref$size","size","_ref$isOpen","isOpen","_ref$isSubmitting","isSubmitting","_ref$className","className","_ref$closeOnEsc","closeOnEsc","_ref$closeButton","closeButton","_ref$backdropClassNam","backdropClassName","_ref$closeOnOutsideCl","closeOnOutsideClick","_ref$onClose","onClose","_ref$onSubmit","onSubmit","_ref$title","title","_ref$message","message","_ref$submitButtonLabe","submitButtonLabel","_ref$cancelButtonLabe","cancelButtonLabel","initialFocusRef","initialFocusElement","_ref$hideCancelButton","hideCancelButton","_ref$style","style","submitButtonStyle","otherProps","_objectWithoutProperties","_excluded","submitButtonRef","useRef","cancelButtonRef","hasCustomFocusableElement","initialFocusElementRef","baseId","useId","titleId","concat","messageId","ariaProps","_objectSpread","_jsxs","Modal","role","children","_jsx","Header","Typography","id","Body","lineHeight","Footer","Button","label","ref","onClick","disabled","loading"],"mappings":"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"}
|
package/dist/DatePicker.js
CHANGED
|
@@ -87,7 +87,7 @@ import 'dayjs/plugin/weekOfYear';
|
|
|
87
87
|
import './en-Dmu3B4Vs.js';
|
|
88
88
|
import './Spinner.js';
|
|
89
89
|
import './Tooltip.js';
|
|
90
|
-
import './Portal-
|
|
90
|
+
import './Portal-BaWO-CyE.js';
|
|
91
91
|
import '@babel/runtime/helpers/esm/objectWithoutPropertiesLoose';
|
|
92
92
|
import '@babel/runtime/helpers/esm/inheritsLoose';
|
|
93
93
|
import '@bigbinary/neeto-icons/Help';
|
package/dist/Modal.js
CHANGED
|
@@ -4,7 +4,7 @@ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProper
|
|
|
4
4
|
import React__default, { useState, useRef } from 'react';
|
|
5
5
|
import classnames from 'classnames';
|
|
6
6
|
import Close from '@bigbinary/neeto-icons/Close';
|
|
7
|
-
import { u as useOverlayManager, a as useOverlay, P as Portal, C as CSSTransition, B as Backdrop } from './Portal-
|
|
7
|
+
import { u as useOverlayManager, a as useOverlay, P as Portal, C as CSSTransition, B as Backdrop } from './Portal-BaWO-CyE.js';
|
|
8
8
|
import Button from './Button.js';
|
|
9
9
|
import 'react-router-dom';
|
|
10
10
|
import 'qs';
|
|
@@ -145,6 +145,7 @@ var Modal = function Modal(_ref) {
|
|
|
145
145
|
setFocusField = _useOverlay.setFocusField;
|
|
146
146
|
var isFullScreenModal = size === SIZES.fullScreen;
|
|
147
147
|
return /*#__PURE__*/jsx(Portal, {
|
|
148
|
+
bringToFront: isOpen,
|
|
148
149
|
rootId: "neeto-ui-portal",
|
|
149
150
|
children: /*#__PURE__*/jsx(CSSTransition, {
|
|
150
151
|
unmountOnExit: true,
|
package/dist/Modal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","sources":["../src/components/Modal/Body.jsx","../src/components/Modal/Footer.jsx","../src/components/Modal/Header.jsx","../src/components/Modal/MemoizedChildren.js","../src/components/Modal/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Body = ({ children, className, dataTestid }) => (\n <div\n className={classnames(\"neeto-ui-modal__body\", className)}\n data-testid={dataTestid ?? \"modal-body\"}\n >\n {children}\n </div>\n);\n\nBody.propTypes = {\n /**\n * To specify className to be applied to the Modal Body.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Body.\n */\n children: PropTypes.node,\n};\n\nexport default Body;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Footer = ({ children, className, dataTestid }) => (\n <div\n className={classnames(\"neeto-ui-modal__footer\", className)}\n data-testid={dataTestid ?? \"modal-footer\"}\n >\n {children}\n </div>\n);\n\nFooter.propTypes = {\n /**\n * To specify className to be applied to the Modal Footer.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Footer.\n */\n children: PropTypes.node,\n};\n\nexport default Footer;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport Typography from \"../Typography\";\n\nconst Header = ({ description = \"\", children, className, dataTestid }) => (\n <div\n className={classnames(\"neeto-ui-modal__header\", className)}\n data-testid={dataTestid ?? \"modal-header\"}\n >\n {children}\n {description && (\n <div\n className=\"neeto-ui-modal__header-desc\"\n data-testid=\"modal-header-desc\"\n >\n <Typography lineHeight=\"normal\" style=\"body2\">\n {description}\n </Typography>\n </div>\n )}\n </div>\n);\n\nHeader.propTypes = {\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify the short description of the Modal.\n */\n description: PropTypes.string,\n /**\n * To specify className to be applied to the Modal Header container.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Header.\n */\n children: PropTypes.node,\n};\n\nexport default Header;\n","import React from \"react\";\n\nconst MemoizedChildren = React.memo(\n ({ children }) => children,\n (_, { shouldUpdate }) => !shouldUpdate\n);\n\nMemoizedChildren.displayName = \"MemoizedChildren\";\n\nexport default MemoizedChildren;\n","import React, { useRef, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Close } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { CSSTransition } from \"react-transition-group\";\n\nimport Backdrop from \"atoms/Backdrop\";\nimport Portal from \"atoms/Portal\";\nimport Button from \"components/Button\";\nimport { useOverlayManager, useOverlay } from \"hooks\";\n\nimport Body from \"./Body\";\nimport Footer from \"./Footer\";\nimport Header from \"./Header\";\nimport MemoizedChildren from \"./MemoizedChildren\";\n\nconst SIZES = {\n small: \"small\",\n medium: \"medium\",\n large: \"large\",\n fullScreen: \"fullScreen\",\n};\n\nconst Modal = ({\n size = SIZES.medium,\n isOpen = false,\n onClose = () => {},\n children,\n finalFocusRef,\n initialFocusRef,\n className = \"\",\n closeOnEsc = true,\n closeButton = true,\n backdropClassName = \"\",\n blockScrollOnMount = true,\n closeOnOutsideClick = true,\n forceRender = false,\n ...otherProps\n}) => {\n const [hasTransitionCompleted, setHasTransitionCompleted] = useState(false);\n\n const modalWrapper = useRef(null);\n const backdropRef = useRef(null);\n\n useOverlayManager(modalWrapper, isOpen);\n\n const { handleOverlayClose, setFocusField } = useOverlay({\n isOpen,\n initialFocusRef,\n finalFocusRef,\n overlayWrapper: modalWrapper,\n onClose,\n backdropRef,\n closeOnOutsideClick,\n closeOnEsc,\n blockScrollOnMount,\n hasTransitionCompleted,\n });\n\n const isFullScreenModal = size === SIZES.fullScreen;\n\n return (\n <Portal rootId=\"neeto-ui-portal\">\n <CSSTransition\n unmountOnExit\n appear={isOpen}\n classNames=\"neeto-ui-modal\"\n in={isOpen}\n timeout={300}\n onEntered={() => setHasTransitionCompleted(true)}\n onExited={() => setHasTransitionCompleted(false)}\n >\n <Backdrop\n key=\"modal-backdrop\"\n ref={backdropRef}\n className={classnames(\n \"neeto-ui-modal__backdrop\",\n {\n \"neeto-ui-modal__backdrop--fullscreen\": isFullScreenModal,\n },\n backdropClassName\n )}\n >\n <div\n aria-modal\n key=\"modal-wrapper\"\n ref={modalWrapper}\n role=\"dialog\"\n className={classnames(\"neeto-ui-modal__wrapper\", {\n \"neeto-ui-modal__wrapper--small\": size === SIZES.small,\n \"neeto-ui-modal__wrapper--medium\": size === SIZES.medium,\n \"neeto-ui-modal__wrapper--large\": size === SIZES.large,\n \"neeto-ui-modal__wrapper--fullscreen\": isFullScreenModal,\n [className]: className,\n })}\n {...otherProps}\n >\n {closeButton && (\n <Button\n aria-label=\"Close\"\n className=\"neeto-ui-modal__close\"\n data-testid=\"modal-close-button\"\n icon={Close}\n size={isFullScreenModal ? \"large\" : \"small\"}\n style={isFullScreenModal ? \"secondary\" : \"text\"}\n onClick={handleOverlayClose}\n />\n )}\n <MemoizedChildren shouldUpdate={isOpen || forceRender}>\n {typeof children === \"function\"\n ? children({ setFocusField })\n : children}\n </MemoizedChildren>\n </div>\n </Backdrop>\n </CSSTransition>\n </Portal>\n );\n};\n\nModal.propTypes = {\n /**\n * To specify the size of the Modal.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify whether the Modal is open or not.\n */\n isOpen: PropTypes.bool,\n /**\n * To specify the callback which will be invoked when the Modal is closed.\n */\n onClose: PropTypes.func,\n /**\n * To specify the content to be rendered inside the Modal component.\n */\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n /**\n * To provide external classNames to the Modal.\n */\n className: PropTypes.string,\n /**\n * To close the Modal on pressing the Esc key.\n */\n closeOnEsc: PropTypes.bool,\n /**\n * To specify whether the close button of the Modal should be displayed or not.\n */\n closeButton: PropTypes.bool,\n /**\n * To add custom classes to backdrop component.\n */\n backdropClassName: PropTypes.string,\n /**\n * To close on clicking outside the Modal content.\n */\n closeOnOutsideClick: PropTypes.bool,\n /*\n * To specify the ref of the element which will receive focus when the Modal is closed.\n * If not specified, the focus will be set to the element which was focused when the Modal was opened.\n * If the Modal was opened by clicking on a button, then the focus will be set to the button.\n * */\n finalFocusRef: PropTypes.object,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify the ref of the element which will receive focus when the Modal is opened.\n * If not specified, the focus will be set to the first focusable element inside the Modal.\n * */\n initialFocusRef: PropTypes.object,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify whether the scroll should be blocked when the Modal is opened.\n * */\n blockScrollOnMount: PropTypes.bool,\n /**\n * The modal children will be force re-rendered if the boolean is set to `true`. Ideally the modal won't update\n * if the `isOpen` is `false`. You can use this prop to override that nature.\n */\n forceRender: PropTypes.bool,\n};\n\nModal.Header = Header;\nModal.Body = Body;\nModal.Footer = Footer;\n\nexport default Modal;\n"],"names":["Body","_ref","children","className","dataTestid","_jsx","classnames","Footer","Header","_ref$description","description","_jsxs","Typography","lineHeight","style","MemoizedChildren","React","memo","_","_ref2","shouldUpdate","displayName","SIZES","small","medium","large","fullScreen","Modal","_ref$size","size","_ref$isOpen","isOpen","_ref$onClose","onClose","finalFocusRef","initialFocusRef","_ref$className","_ref$closeOnEsc","closeOnEsc","_ref$closeButton","closeButton","_ref$backdropClassNam","backdropClassName","_ref$blockScrollOnMou","blockScrollOnMount","_ref$closeOnOutsideCl","closeOnOutsideClick","_ref$forceRender","forceRender","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","hasTransitionCompleted","setHasTransitionCompleted","modalWrapper","useRef","backdropRef","useOverlayManager","_useOverlay","useOverlay","overlayWrapper","handleOverlayClose","setFocusField","isFullScreenModal","Portal","rootId","CSSTransition","unmountOnExit","appear","classNames","timeout","onEntered","onExited","Backdrop","ref","_objectSpread","role","_defineProperty","Button","icon","Close","onClick"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Modal.js","sources":["../src/components/Modal/Body.jsx","../src/components/Modal/Footer.jsx","../src/components/Modal/Header.jsx","../src/components/Modal/MemoizedChildren.js","../src/components/Modal/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Body = ({ children, className, dataTestid }) => (\n <div\n className={classnames(\"neeto-ui-modal__body\", className)}\n data-testid={dataTestid ?? \"modal-body\"}\n >\n {children}\n </div>\n);\n\nBody.propTypes = {\n /**\n * To specify className to be applied to the Modal Body.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Body.\n */\n children: PropTypes.node,\n};\n\nexport default Body;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Footer = ({ children, className, dataTestid }) => (\n <div\n className={classnames(\"neeto-ui-modal__footer\", className)}\n data-testid={dataTestid ?? \"modal-footer\"}\n >\n {children}\n </div>\n);\n\nFooter.propTypes = {\n /**\n * To specify className to be applied to the Modal Footer.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Footer.\n */\n children: PropTypes.node,\n};\n\nexport default Footer;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport Typography from \"../Typography\";\n\nconst Header = ({ description = \"\", children, className, dataTestid }) => (\n <div\n className={classnames(\"neeto-ui-modal__header\", className)}\n data-testid={dataTestid ?? \"modal-header\"}\n >\n {children}\n {description && (\n <div\n className=\"neeto-ui-modal__header-desc\"\n data-testid=\"modal-header-desc\"\n >\n <Typography lineHeight=\"normal\" style=\"body2\">\n {description}\n </Typography>\n </div>\n )}\n </div>\n);\n\nHeader.propTypes = {\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify the short description of the Modal.\n */\n description: PropTypes.string,\n /**\n * To specify className to be applied to the Modal Header container.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Header.\n */\n children: PropTypes.node,\n};\n\nexport default Header;\n","import React from \"react\";\n\nconst MemoizedChildren = React.memo(\n ({ children }) => children,\n (_, { shouldUpdate }) => !shouldUpdate\n);\n\nMemoizedChildren.displayName = \"MemoizedChildren\";\n\nexport default MemoizedChildren;\n","import React, { useRef, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Close } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { CSSTransition } from \"react-transition-group\";\n\nimport Backdrop from \"atoms/Backdrop\";\nimport Portal from \"atoms/Portal\";\nimport Button from \"components/Button\";\nimport { useOverlayManager, useOverlay } from \"hooks\";\n\nimport Body from \"./Body\";\nimport Footer from \"./Footer\";\nimport Header from \"./Header\";\nimport MemoizedChildren from \"./MemoizedChildren\";\n\nconst SIZES = {\n small: \"small\",\n medium: \"medium\",\n large: \"large\",\n fullScreen: \"fullScreen\",\n};\n\nconst Modal = ({\n size = SIZES.medium,\n isOpen = false,\n onClose = () => {},\n children,\n finalFocusRef,\n initialFocusRef,\n className = \"\",\n closeOnEsc = true,\n closeButton = true,\n backdropClassName = \"\",\n blockScrollOnMount = true,\n closeOnOutsideClick = true,\n forceRender = false,\n ...otherProps\n}) => {\n const [hasTransitionCompleted, setHasTransitionCompleted] = useState(false);\n\n const modalWrapper = useRef(null);\n const backdropRef = useRef(null);\n\n useOverlayManager(modalWrapper, isOpen);\n\n const { handleOverlayClose, setFocusField } = useOverlay({\n isOpen,\n initialFocusRef,\n finalFocusRef,\n overlayWrapper: modalWrapper,\n onClose,\n backdropRef,\n closeOnOutsideClick,\n closeOnEsc,\n blockScrollOnMount,\n hasTransitionCompleted,\n });\n\n const isFullScreenModal = size === SIZES.fullScreen;\n\n return (\n <Portal bringToFront={isOpen} rootId=\"neeto-ui-portal\">\n <CSSTransition\n unmountOnExit\n appear={isOpen}\n classNames=\"neeto-ui-modal\"\n in={isOpen}\n timeout={300}\n onEntered={() => setHasTransitionCompleted(true)}\n onExited={() => setHasTransitionCompleted(false)}\n >\n <Backdrop\n key=\"modal-backdrop\"\n ref={backdropRef}\n className={classnames(\n \"neeto-ui-modal__backdrop\",\n {\n \"neeto-ui-modal__backdrop--fullscreen\": isFullScreenModal,\n },\n backdropClassName\n )}\n >\n <div\n aria-modal\n key=\"modal-wrapper\"\n ref={modalWrapper}\n role=\"dialog\"\n className={classnames(\"neeto-ui-modal__wrapper\", {\n \"neeto-ui-modal__wrapper--small\": size === SIZES.small,\n \"neeto-ui-modal__wrapper--medium\": size === SIZES.medium,\n \"neeto-ui-modal__wrapper--large\": size === SIZES.large,\n \"neeto-ui-modal__wrapper--fullscreen\": isFullScreenModal,\n [className]: className,\n })}\n {...otherProps}\n >\n {closeButton && (\n <Button\n aria-label=\"Close\"\n className=\"neeto-ui-modal__close\"\n data-testid=\"modal-close-button\"\n icon={Close}\n size={isFullScreenModal ? \"large\" : \"small\"}\n style={isFullScreenModal ? \"secondary\" : \"text\"}\n onClick={handleOverlayClose}\n />\n )}\n <MemoizedChildren shouldUpdate={isOpen || forceRender}>\n {typeof children === \"function\"\n ? children({ setFocusField })\n : children}\n </MemoizedChildren>\n </div>\n </Backdrop>\n </CSSTransition>\n </Portal>\n );\n};\n\nModal.propTypes = {\n /**\n * To specify the size of the Modal.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify whether the Modal is open or not.\n */\n isOpen: PropTypes.bool,\n /**\n * To specify the callback which will be invoked when the Modal is closed.\n */\n onClose: PropTypes.func,\n /**\n * To specify the content to be rendered inside the Modal component.\n */\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n /**\n * To provide external classNames to the Modal.\n */\n className: PropTypes.string,\n /**\n * To close the Modal on pressing the Esc key.\n */\n closeOnEsc: PropTypes.bool,\n /**\n * To specify whether the close button of the Modal should be displayed or not.\n */\n closeButton: PropTypes.bool,\n /**\n * To add custom classes to backdrop component.\n */\n backdropClassName: PropTypes.string,\n /**\n * To close on clicking outside the Modal content.\n */\n closeOnOutsideClick: PropTypes.bool,\n /*\n * To specify the ref of the element which will receive focus when the Modal is closed.\n * If not specified, the focus will be set to the element which was focused when the Modal was opened.\n * If the Modal was opened by clicking on a button, then the focus will be set to the button.\n * */\n finalFocusRef: PropTypes.object,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify the ref of the element which will receive focus when the Modal is opened.\n * If not specified, the focus will be set to the first focusable element inside the Modal.\n * */\n initialFocusRef: PropTypes.object,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify whether the scroll should be blocked when the Modal is opened.\n * */\n blockScrollOnMount: PropTypes.bool,\n /**\n * The modal children will be force re-rendered if the boolean is set to `true`. Ideally the modal won't update\n * if the `isOpen` is `false`. You can use this prop to override that nature.\n */\n forceRender: PropTypes.bool,\n};\n\nModal.Header = Header;\nModal.Body = Body;\nModal.Footer = Footer;\n\nexport default Modal;\n"],"names":["Body","_ref","children","className","dataTestid","_jsx","classnames","Footer","Header","_ref$description","description","_jsxs","Typography","lineHeight","style","MemoizedChildren","React","memo","_","_ref2","shouldUpdate","displayName","SIZES","small","medium","large","fullScreen","Modal","_ref$size","size","_ref$isOpen","isOpen","_ref$onClose","onClose","finalFocusRef","initialFocusRef","_ref$className","_ref$closeOnEsc","closeOnEsc","_ref$closeButton","closeButton","_ref$backdropClassNam","backdropClassName","_ref$blockScrollOnMou","blockScrollOnMount","_ref$closeOnOutsideCl","closeOnOutsideClick","_ref$forceRender","forceRender","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","hasTransitionCompleted","setHasTransitionCompleted","modalWrapper","useRef","backdropRef","useOverlayManager","_useOverlay","useOverlay","overlayWrapper","handleOverlayClose","setFocusField","isFullScreenModal","Portal","bringToFront","rootId","CSSTransition","unmountOnExit","appear","classNames","timeout","onEntered","onExited","Backdrop","ref","_objectSpread","role","_defineProperty","Button","icon","Close","onClick"],"mappings":"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"}
|
package/dist/Pane.js
CHANGED
|
@@ -4,7 +4,7 @@ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProper
|
|
|
4
4
|
import { useState, useRef, useEffect } from 'react';
|
|
5
5
|
import classnames from 'classnames';
|
|
6
6
|
import Close from '@bigbinary/neeto-icons/Close';
|
|
7
|
-
import { u as useOverlayManager, a as useOverlay, P as Portal, C as CSSTransition, B as Backdrop } from './Portal-
|
|
7
|
+
import { u as useOverlayManager, a as useOverlay, P as Portal, C as CSSTransition, B as Backdrop } from './Portal-BaWO-CyE.js';
|
|
8
8
|
import Button from './Button.js';
|
|
9
9
|
import 'react-router-dom';
|
|
10
10
|
import 'qs';
|
|
@@ -166,6 +166,7 @@ var Pane = function Pane(_ref) {
|
|
|
166
166
|
};
|
|
167
167
|
}, [hasTransitionCompleted, isTopOverlay]);
|
|
168
168
|
return /*#__PURE__*/jsx(Portal, {
|
|
169
|
+
bringToFront: isOpen,
|
|
169
170
|
rootId: "neeto-ui-portal",
|
|
170
171
|
children: /*#__PURE__*/jsx(CSSTransition, {
|
|
171
172
|
unmountOnExit: true,
|
package/dist/Pane.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pane.js","sources":["../src/components/Pane/Body.jsx","../src/components/Pane/Footer.jsx","../src/components/Pane/Header.jsx","../src/components/Pane/constants.js","../src/components/Pane/utils.js","../src/components/Pane/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Body = ({ children, className, hasFooter = true }) => (\n <div\n data-testid=\"pane-body\"\n className={classnames(\n \"neeto-ui-pane__body neeto-ui-flex neeto-ui-flex-col neeto-ui-items-start neeto-ui-justify-start\",\n {\n \"neeto-ui-pane__body--has-footer\": hasFooter,\n [className]: className,\n }\n )}\n >\n {children}\n </div>\n);\n\nBody.propTypes = {\n /**\n * To specify if the Pane has a footer.\n * @default true\n */\n hasFooter: PropTypes.bool,\n /**\n * To specify className to be applied to the Pane Body container.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Pane Body.\n */\n children: PropTypes.node,\n};\n\nexport default Body;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Footer = ({ children, className }) => (\n <div\n className={classnames(\n \"neeto-ui-pane__footer neeto-ui-flex neeto-ui-items-center\",\n className\n )}\n >\n {children}\n </div>\n);\n\nFooter.propTypes = {\n /**\n * To specify className to be applied to the Pane Footer container.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Pane Footer.\n */\n children: PropTypes.node,\n};\n\nexport default Footer;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Header = ({ children, className }) => (\n <div\n className={classnames(\"neeto-ui-pane__header\", className)}\n data-testid=\"pane-header\"\n >\n {children}\n </div>\n);\n\nHeader.propTypes = {\n /**\n * To specify className to be applied to the Pane Header container.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Pane Header.\n */\n children: PropTypes.node,\n};\n\nexport default Header;\n","export const DEFAULT_PANE_HEADER_HEIGHT = 78;\n","import { DEFAULT_PANE_HEADER_HEIGHT } from \"./constants\";\n\nexport const getHeader = paneWrapperRef =>\n paneWrapperRef.current?.querySelector(\".neeto-ui-pane__header\");\n\nexport const updateHeaderHeight = (header, paneWrapperRef) => {\n const headerHeight = header?.offsetHeight;\n\n if (headerHeight > DEFAULT_PANE_HEADER_HEIGHT) {\n paneWrapperRef.current?.style.setProperty(\n \"--neeto-ui-pane-header-height\",\n `${headerHeight}px`\n );\n } else {\n paneWrapperRef.current?.style.removeProperty(\n \"--neeto-ui-pane-header-height\"\n );\n }\n};\n","import React, { useRef, useState, useEffect } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Close } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { CSSTransition } from \"react-transition-group\";\n\nimport Backdrop from \"atoms/Backdrop\";\nimport Portal from \"atoms/Portal\";\nimport Button from \"components/Button\";\nimport { useOverlay, useOverlayManager } from \"hooks\";\n\nimport Body from \"./Body\";\nimport Footer from \"./Footer\";\nimport Header from \"./Header\";\nimport { getHeader, updateHeaderHeight } from \"./utils\";\n\nconst SIZES = { small: \"small\", large: \"large\", extraLarge: \"extraLarge\" };\n\nconst Pane = ({\n size = SIZES.small,\n isOpen = false,\n onClose = () => {},\n children,\n className = \"\",\n closeOnEsc = true,\n closeButton = true,\n backdropClassName = \"\",\n closeOnOutsideClick = true,\n initialFocusRef,\n finalFocusRef,\n ...otherProps\n}) => {\n const [hasTransitionCompleted, setHasTransitionCompleted] = useState(false);\n\n const paneWrapperRef = useRef(null);\n const backdropRef = useRef(null);\n\n const observerRef = useRef(\n new ResizeObserver(([entry]) =>\n updateHeaderHeight(entry.target, paneWrapperRef)\n )\n );\n\n useOverlayManager(paneWrapperRef, isOpen);\n\n const { handleOverlayClose, setFocusField, isTopOverlay } = useOverlay({\n overlayWrapper: paneWrapperRef,\n backdropRef,\n closeOnOutsideClick,\n closeOnEsc,\n onClose,\n isOpen,\n initialFocusRef,\n finalFocusRef,\n hasTransitionCompleted,\n });\n\n useEffect(() => {\n if (!hasTransitionCompleted || !paneWrapperRef.current) return undefined;\n\n const observer = observerRef.current;\n const header = getHeader(paneWrapperRef);\n\n if (header) {\n observer.observe(header);\n\n return () => observer.disconnect();\n }\n\n const mutationObserver = new MutationObserver(() => {\n const header = getHeader(paneWrapperRef);\n if (!header) return;\n\n observer.observe(header);\n mutationObserver.disconnect();\n });\n\n mutationObserver.observe(paneWrapperRef.current, {\n childList: true,\n subtree: true,\n });\n\n return () => {\n mutationObserver.disconnect();\n observer.disconnect();\n };\n }, [hasTransitionCompleted, isTopOverlay]);\n\n return (\n <Portal rootId=\"neeto-ui-portal\">\n <CSSTransition\n unmountOnExit\n appear={isOpen}\n classNames=\"neeto-ui-pane\"\n in={isOpen}\n timeout={230}\n onEntered={() => setHasTransitionCompleted(true)}\n onExited={() => setHasTransitionCompleted(false)}\n >\n <Backdrop\n key=\"pane-backdrop\"\n ref={backdropRef}\n className={classnames(\n \"neeto-ui-pane__backdrop neeto-ui-flex neeto-ui-justify-end\",\n backdropClassName\n )}\n >\n <div\n data-testid=\"pane-wrapper\"\n key=\"pane-wrapper\"\n ref={paneWrapperRef}\n className={classnames(\"neeto-ui-pane__wrapper\", {\n \"neeto-ui-pane__wrapper--small\": size === SIZES.small,\n \"neeto-ui-pane__wrapper--large\": size === SIZES.large,\n \"neeto-ui-pane__wrapper--extralarge\": size === SIZES.extraLarge,\n [className]: className,\n })}\n {...otherProps}\n >\n {closeButton && (\n <Button\n aria-label=\"Close\"\n className=\"neeto-ui-pane__close\"\n data-testid=\"pane-close-button\"\n icon={Close}\n size=\"small\"\n style=\"text\"\n onClick={handleOverlayClose}\n />\n )}\n {hasTransitionCompleted && (\n <>\n {typeof children === \"function\"\n ? children({ setFocusField })\n : children}\n </>\n )}\n </div>\n </Backdrop>\n </CSSTransition>\n </Portal>\n );\n};\n\nPane.propTypes = {\n /**\n * To specify the size of the Pane.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify whether the Pane component is open or not.\n */\n isOpen: PropTypes.bool,\n /**\n * To specify the callback which will be invoked when the close button of Pane is clicked.\n */\n onClose: PropTypes.func,\n /**\n * To specify the content to be rendered inside the Pane component.\n */\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n /**\n * To provide external classname to the Pane component.\n */\n className: PropTypes.string,\n /**\n * To specify whether the Pane component should close on esc key press.\n */\n closeOnEsc: PropTypes.bool,\n /**\n * To specify whether the Pane component should render close button.\n */\n closeButton: PropTypes.bool,\n /**\n * To specify the classname to be applied to the backdrop element.\n */\n backdropClassName: PropTypes.string,\n /**\n * To specify whether the Pane component should close on outside click.\n */\n closeOnOutsideClick: PropTypes.bool,\n\n /**\n * To specify the ref of the element which should be focused when the Pane component is opened.\n * If not specified, the first focusable element inside the Pane component will be focused.\n * If there are no focusable elements, the Pane component itself will be focused.\n */\n initialFocusRef: PropTypes.object,\n\n /**\n * To specify the ref of the element which should be focused when the Pane component is closed.\n * If not specified, the element which was focused when the Pane component was opened will be focused.\n */\n finalFocusRef: PropTypes.object,\n};\n\nPane.Header = Header;\nPane.Body = Body;\nPane.Footer = Footer;\n\nexport default Pane;\n"],"names":["Body","_ref","children","className","_ref$hasFooter","hasFooter","_jsx","classnames","_defineProperty","Footer","Header","DEFAULT_PANE_HEADER_HEIGHT","getHeader","paneWrapperRef","_paneWrapperRef$curre","current","querySelector","updateHeaderHeight","header","headerHeight","offsetHeight","_paneWrapperRef$curre2","style","setProperty","concat","_paneWrapperRef$curre3","removeProperty","SIZES","small","large","extraLarge","Pane","_ref$size","size","_ref$isOpen","isOpen","_ref$onClose","onClose","_ref$className","_ref$closeOnEsc","closeOnEsc","_ref$closeButton","closeButton","_ref$backdropClassNam","backdropClassName","_ref$closeOnOutsideCl","closeOnOutsideClick","initialFocusRef","finalFocusRef","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","hasTransitionCompleted","setHasTransitionCompleted","useRef","backdropRef","observerRef","ResizeObserver","_ref2","_ref3","entry","target","useOverlayManager","_useOverlay","useOverlay","overlayWrapper","handleOverlayClose","setFocusField","isTopOverlay","useEffect","undefined","observer","observe","disconnect","mutationObserver","MutationObserver","childList","subtree","Portal","rootId","CSSTransition","unmountOnExit","appear","classNames","timeout","onEntered","onExited","Backdrop","ref","_jsxs","_objectSpread","Button","icon","Close","onClick","_Fragment"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Pane.js","sources":["../src/components/Pane/Body.jsx","../src/components/Pane/Footer.jsx","../src/components/Pane/Header.jsx","../src/components/Pane/constants.js","../src/components/Pane/utils.js","../src/components/Pane/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Body = ({ children, className, hasFooter = true }) => (\n <div\n data-testid=\"pane-body\"\n className={classnames(\n \"neeto-ui-pane__body neeto-ui-flex neeto-ui-flex-col neeto-ui-items-start neeto-ui-justify-start\",\n {\n \"neeto-ui-pane__body--has-footer\": hasFooter,\n [className]: className,\n }\n )}\n >\n {children}\n </div>\n);\n\nBody.propTypes = {\n /**\n * To specify if the Pane has a footer.\n * @default true\n */\n hasFooter: PropTypes.bool,\n /**\n * To specify className to be applied to the Pane Body container.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Pane Body.\n */\n children: PropTypes.node,\n};\n\nexport default Body;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Footer = ({ children, className }) => (\n <div\n className={classnames(\n \"neeto-ui-pane__footer neeto-ui-flex neeto-ui-items-center\",\n className\n )}\n >\n {children}\n </div>\n);\n\nFooter.propTypes = {\n /**\n * To specify className to be applied to the Pane Footer container.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Pane Footer.\n */\n children: PropTypes.node,\n};\n\nexport default Footer;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Header = ({ children, className }) => (\n <div\n className={classnames(\"neeto-ui-pane__header\", className)}\n data-testid=\"pane-header\"\n >\n {children}\n </div>\n);\n\nHeader.propTypes = {\n /**\n * To specify className to be applied to the Pane Header container.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Pane Header.\n */\n children: PropTypes.node,\n};\n\nexport default Header;\n","export const DEFAULT_PANE_HEADER_HEIGHT = 78;\n","import { DEFAULT_PANE_HEADER_HEIGHT } from \"./constants\";\n\nexport const getHeader = paneWrapperRef =>\n paneWrapperRef.current?.querySelector(\".neeto-ui-pane__header\");\n\nexport const updateHeaderHeight = (header, paneWrapperRef) => {\n const headerHeight = header?.offsetHeight;\n\n if (headerHeight > DEFAULT_PANE_HEADER_HEIGHT) {\n paneWrapperRef.current?.style.setProperty(\n \"--neeto-ui-pane-header-height\",\n `${headerHeight}px`\n );\n } else {\n paneWrapperRef.current?.style.removeProperty(\n \"--neeto-ui-pane-header-height\"\n );\n }\n};\n","import React, { useRef, useState, useEffect } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Close } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { CSSTransition } from \"react-transition-group\";\n\nimport Backdrop from \"atoms/Backdrop\";\nimport Portal from \"atoms/Portal\";\nimport Button from \"components/Button\";\nimport { useOverlay, useOverlayManager } from \"hooks\";\n\nimport Body from \"./Body\";\nimport Footer from \"./Footer\";\nimport Header from \"./Header\";\nimport { getHeader, updateHeaderHeight } from \"./utils\";\n\nconst SIZES = { small: \"small\", large: \"large\", extraLarge: \"extraLarge\" };\n\nconst Pane = ({\n size = SIZES.small,\n isOpen = false,\n onClose = () => {},\n children,\n className = \"\",\n closeOnEsc = true,\n closeButton = true,\n backdropClassName = \"\",\n closeOnOutsideClick = true,\n initialFocusRef,\n finalFocusRef,\n ...otherProps\n}) => {\n const [hasTransitionCompleted, setHasTransitionCompleted] = useState(false);\n\n const paneWrapperRef = useRef(null);\n const backdropRef = useRef(null);\n\n const observerRef = useRef(\n new ResizeObserver(([entry]) =>\n updateHeaderHeight(entry.target, paneWrapperRef)\n )\n );\n\n useOverlayManager(paneWrapperRef, isOpen);\n\n const { handleOverlayClose, setFocusField, isTopOverlay } = useOverlay({\n overlayWrapper: paneWrapperRef,\n backdropRef,\n closeOnOutsideClick,\n closeOnEsc,\n onClose,\n isOpen,\n initialFocusRef,\n finalFocusRef,\n hasTransitionCompleted,\n });\n\n useEffect(() => {\n if (!hasTransitionCompleted || !paneWrapperRef.current) return undefined;\n\n const observer = observerRef.current;\n const header = getHeader(paneWrapperRef);\n\n if (header) {\n observer.observe(header);\n\n return () => observer.disconnect();\n }\n\n const mutationObserver = new MutationObserver(() => {\n const header = getHeader(paneWrapperRef);\n if (!header) return;\n\n observer.observe(header);\n mutationObserver.disconnect();\n });\n\n mutationObserver.observe(paneWrapperRef.current, {\n childList: true,\n subtree: true,\n });\n\n return () => {\n mutationObserver.disconnect();\n observer.disconnect();\n };\n }, [hasTransitionCompleted, isTopOverlay]);\n\n return (\n <Portal bringToFront={isOpen} rootId=\"neeto-ui-portal\">\n <CSSTransition\n unmountOnExit\n appear={isOpen}\n classNames=\"neeto-ui-pane\"\n in={isOpen}\n timeout={230}\n onEntered={() => setHasTransitionCompleted(true)}\n onExited={() => setHasTransitionCompleted(false)}\n >\n <Backdrop\n key=\"pane-backdrop\"\n ref={backdropRef}\n className={classnames(\n \"neeto-ui-pane__backdrop neeto-ui-flex neeto-ui-justify-end\",\n backdropClassName\n )}\n >\n <div\n data-testid=\"pane-wrapper\"\n key=\"pane-wrapper\"\n ref={paneWrapperRef}\n className={classnames(\"neeto-ui-pane__wrapper\", {\n \"neeto-ui-pane__wrapper--small\": size === SIZES.small,\n \"neeto-ui-pane__wrapper--large\": size === SIZES.large,\n \"neeto-ui-pane__wrapper--extralarge\": size === SIZES.extraLarge,\n [className]: className,\n })}\n {...otherProps}\n >\n {closeButton && (\n <Button\n aria-label=\"Close\"\n className=\"neeto-ui-pane__close\"\n data-testid=\"pane-close-button\"\n icon={Close}\n size=\"small\"\n style=\"text\"\n onClick={handleOverlayClose}\n />\n )}\n {hasTransitionCompleted && (\n <>\n {typeof children === \"function\"\n ? children({ setFocusField })\n : children}\n </>\n )}\n </div>\n </Backdrop>\n </CSSTransition>\n </Portal>\n );\n};\n\nPane.propTypes = {\n /**\n * To specify the size of the Pane.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify whether the Pane component is open or not.\n */\n isOpen: PropTypes.bool,\n /**\n * To specify the callback which will be invoked when the close button of Pane is clicked.\n */\n onClose: PropTypes.func,\n /**\n * To specify the content to be rendered inside the Pane component.\n */\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n /**\n * To provide external classname to the Pane component.\n */\n className: PropTypes.string,\n /**\n * To specify whether the Pane component should close on esc key press.\n */\n closeOnEsc: PropTypes.bool,\n /**\n * To specify whether the Pane component should render close button.\n */\n closeButton: PropTypes.bool,\n /**\n * To specify the classname to be applied to the backdrop element.\n */\n backdropClassName: PropTypes.string,\n /**\n * To specify whether the Pane component should close on outside click.\n */\n closeOnOutsideClick: PropTypes.bool,\n\n /**\n * To specify the ref of the element which should be focused when the Pane component is opened.\n * If not specified, the first focusable element inside the Pane component will be focused.\n * If there are no focusable elements, the Pane component itself will be focused.\n */\n initialFocusRef: PropTypes.object,\n\n /**\n * To specify the ref of the element which should be focused when the Pane component is closed.\n * If not specified, the element which was focused when the Pane component was opened will be focused.\n */\n finalFocusRef: PropTypes.object,\n};\n\nPane.Header = Header;\nPane.Body = Body;\nPane.Footer = Footer;\n\nexport default Pane;\n"],"names":["Body","_ref","children","className","_ref$hasFooter","hasFooter","_jsx","classnames","_defineProperty","Footer","Header","DEFAULT_PANE_HEADER_HEIGHT","getHeader","paneWrapperRef","_paneWrapperRef$curre","current","querySelector","updateHeaderHeight","header","headerHeight","offsetHeight","_paneWrapperRef$curre2","style","setProperty","concat","_paneWrapperRef$curre3","removeProperty","SIZES","small","large","extraLarge","Pane","_ref$size","size","_ref$isOpen","isOpen","_ref$onClose","onClose","_ref$className","_ref$closeOnEsc","closeOnEsc","_ref$closeButton","closeButton","_ref$backdropClassNam","backdropClassName","_ref$closeOnOutsideCl","closeOnOutsideClick","initialFocusRef","finalFocusRef","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","hasTransitionCompleted","setHasTransitionCompleted","useRef","backdropRef","observerRef","ResizeObserver","_ref2","_ref3","entry","target","useOverlayManager","_useOverlay","useOverlay","overlayWrapper","handleOverlayClose","setFocusField","isTopOverlay","useEffect","undefined","observer","observe","disconnect","mutationObserver","MutationObserver","childList","subtree","Portal","bringToFront","rootId","CSSTransition","unmountOnExit","appear","classNames","timeout","onEntered","onExited","Backdrop","ref","_jsxs","_objectSpread","Button","icon","Close","onClick","_Fragment"],"mappings":"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"}
|
|
@@ -896,12 +896,15 @@ var Portal$1 = function Portal(_ref, ref) {
|
|
|
896
896
|
};
|
|
897
897
|
var Backdrop = /*#__PURE__*/forwardRef(Portal$1);
|
|
898
898
|
|
|
899
|
+
/* eslint-disable @bigbinary/neeto/file-name-and-export-name-standards */
|
|
899
900
|
var Portal = function Portal(_ref) {
|
|
900
901
|
var children = _ref.children,
|
|
901
902
|
_ref$rootId = _ref.rootId,
|
|
902
903
|
rootId = _ref$rootId === void 0 ? "root-portal" : _ref$rootId,
|
|
903
904
|
_ref$el = _ref.el,
|
|
904
|
-
el = _ref$el === void 0 ? "div" : _ref$el
|
|
905
|
+
el = _ref$el === void 0 ? "div" : _ref$el,
|
|
906
|
+
_ref$bringToFront = _ref.bringToFront,
|
|
907
|
+
bringToFront = _ref$bringToFront === void 0 ? false : _ref$bringToFront;
|
|
905
908
|
var target = useRef(null);
|
|
906
909
|
useEffect(function () {
|
|
907
910
|
var container = document.getElementById(rootId);
|
|
@@ -918,6 +921,12 @@ var Portal = function Portal(_ref) {
|
|
|
918
921
|
}
|
|
919
922
|
};
|
|
920
923
|
}, [rootId]);
|
|
924
|
+
useEffect(function () {
|
|
925
|
+
var _target$current;
|
|
926
|
+
if (bringToFront && (_target$current = target.current) !== null && _target$current !== void 0 && _target$current.parentElement) {
|
|
927
|
+
target.current.parentElement.appendChild(target.current);
|
|
928
|
+
}
|
|
929
|
+
}, [bringToFront]);
|
|
921
930
|
if (!target.current) {
|
|
922
931
|
target.current = document.createElement(el);
|
|
923
932
|
}
|
|
@@ -925,4 +934,4 @@ var Portal = function Portal(_ref) {
|
|
|
925
934
|
};
|
|
926
935
|
|
|
927
936
|
export { Backdrop as B, CSSTransition as C, Portal as P, useOverlay as a, useOverlayManager as u };
|
|
928
|
-
//# sourceMappingURL=Portal-
|
|
937
|
+
//# sourceMappingURL=Portal-BaWO-CyE.js.map
|