@hitachivantara/uikit-react-core 3.68.8 → 3.68.9
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/Dialog/Dialog.js
CHANGED
|
@@ -122,10 +122,7 @@ var HvDialog = function HvDialog(_ref) {
|
|
|
122
122
|
if (!others.disableEscapeKeyDown) {
|
|
123
123
|
// Swallow the event, in case someone is listening for the escape key on the body.
|
|
124
124
|
event.stopPropagation();
|
|
125
|
-
|
|
126
|
-
if (_onClose) {
|
|
127
|
-
_onClose(event, "escapeKeyDown");
|
|
128
|
-
}
|
|
125
|
+
_onClose === null || _onClose === void 0 ? void 0 : _onClose(event, "escapeKeyDown");
|
|
129
126
|
}
|
|
130
127
|
}
|
|
131
128
|
};
|
|
@@ -154,7 +151,7 @@ var HvDialog = function HvDialog(_ref) {
|
|
|
154
151
|
}
|
|
155
152
|
},
|
|
156
153
|
onClose: function onClose(event, reason) {
|
|
157
|
-
return _onClose(event, reason);
|
|
154
|
+
return _onClose === null || _onClose === void 0 ? void 0 : _onClose(event, reason);
|
|
158
155
|
},
|
|
159
156
|
onKeyDown: keyDownHandler
|
|
160
157
|
}, others, {
|
|
@@ -164,7 +161,7 @@ var HvDialog = function HvDialog(_ref) {
|
|
|
164
161
|
className: classes.closeButton,
|
|
165
162
|
category: "ghost",
|
|
166
163
|
onClick: function onClick(event) {
|
|
167
|
-
return _onClose(event);
|
|
164
|
+
return _onClose === null || _onClose === void 0 ? void 0 : _onClose(event);
|
|
168
165
|
},
|
|
169
166
|
"aria-label": buttonTitle
|
|
170
167
|
}, /*#__PURE__*/_react.default.createElement(CloseButtonTooltipWrapper, null)), children && (0, _typeof2.default)(children) === "object" ? _react.default.Children.map(children, function (c) {
|
|
@@ -223,7 +220,7 @@ process.env.NODE_ENV !== "production" ? HvDialog.propTypes = {
|
|
|
223
220
|
/**
|
|
224
221
|
* Function executed on close.
|
|
225
222
|
*/
|
|
226
|
-
onClose: _propTypes.default.func
|
|
223
|
+
onClose: _propTypes.default.func,
|
|
227
224
|
|
|
228
225
|
/**
|
|
229
226
|
* Element id that should be focus when the Dialog opens.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.js","names":["HvDialog","classes","className","id","children","open","onClose","firstFocusable","buttonTitle","fullscreen","others","useState","focusableQueue","setFocusableQueue","measuredRef","useCallback","node","focusableList","getFocusableList","first","last","length","isNil","focus","element","document","getElementById","console","warn","keyDownHandler","event","isKeypress","KeyboardCodes","Tab","target","shiftKey","preventDefault","Esc","onEscapeKeyDown","disableEscapeKeyDown","stopPropagation","closeButtonDisplay","CloseButtonTooltipWrapper","withTooltip","clsx","root","paper","background","reason","setId","closeButton","React","Children","map","c","cloneElement","propTypes","PropTypes","string","shape","isRequired","bool","func","withStyles","styles","name"],"sources":["../../src/Dialog/Dialog.js"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { Dialog, withStyles } from \"@material-ui/core\";\nimport { Close } from \"@hitachivantara/uikit-react-icons\";\nimport isNil from \"lodash/isNil\";\nimport Button from \"../Button\";\nimport { isKeypress, KeyboardCodes, setId } from \"../utils\";\nimport styles from \"./styles\";\nimport withTooltip from \"../withTooltip\";\nimport { getFocusableList } from \"../utils/focusableElementFinder\";\n\n/**\n * The Dialog component provides a solid foundation for creating dialogs, popovers, lightboxes, etc.\n * It is created by the composition of DialogTitle, DialogContent and DialogActions components, passed as child elements.\n */\nconst HvDialog = ({\n classes,\n className,\n id,\n children,\n open,\n onClose,\n firstFocusable,\n buttonTitle = \"Close\",\n fullscreen = false,\n ...others\n}) => {\n const [focusableQueue, setFocusableQueue] = useState(null);\n\n const measuredRef = useCallback(\n (node) => {\n if (node) {\n const focusableList = getFocusableList(node);\n setFocusableQueue({\n first: focusableList[1],\n last: focusableList[focusableList.length - 2],\n });\n if (isNil(firstFocusable)) focusableList[1].focus();\n else {\n const element = document.getElementById(firstFocusable);\n if (element) element.focus();\n else {\n // eslint-disable-next-line no-console\n console.warn(`firstFocusable element ${firstFocusable} not found.`);\n focusableList[1].focus();\n }\n }\n }\n },\n [firstFocusable]\n );\n\n const keyDownHandler = (event) => {\n if (isKeypress(event, KeyboardCodes.Tab) && !isNil(event.target) && !isNil(focusableQueue)) {\n if (event.shiftKey && event.target === focusableQueue.first) {\n focusableQueue.last.focus();\n event.preventDefault();\n }\n if (!event.shiftKey && event.target === focusableQueue.last) {\n focusableQueue.first.focus();\n event.preventDefault();\n }\n }\n // Needed as this handler overrides the one in the material ui Modal.\n else if (isKeypress(event, KeyboardCodes.Esc)) {\n if (others.onEscapeKeyDown) {\n others.onEscapeKeyDown(event);\n }\n\n if (!others.disableEscapeKeyDown) {\n // Swallow the event, in case someone is listening for the escape key on the body.\n event.stopPropagation();\n\n if (onClose) {\n onClose(event, \"escapeKeyDown\");\n }\n }\n }\n };\n\n const closeButtonDisplay = () => <Close role=\"presentation\" />;\n\n const CloseButtonTooltipWrapper = buttonTitle\n ? withTooltip(closeButtonDisplay, buttonTitle, \"top\")\n : closeButtonDisplay;\n\n return (\n <Dialog\n className={clsx(classes.root, className)}\n id={id}\n ref={measuredRef}\n open={open}\n PaperProps={{\n classes: {\n root: clsx(classes.paper, fullscreen ? \"fullscreen\" : \"\"),\n },\n }}\n fullScreen={fullscreen}\n BackdropProps={{\n classes: {\n root: classes.background,\n },\n }}\n onClose={(event, reason) => onClose(event, reason)}\n onKeyDown={keyDownHandler}\n {...others}\n aria-modal\n >\n <Button\n id={setId(id, \"close\")}\n className={classes.closeButton}\n category=\"ghost\"\n onClick={(event) => onClose(event)}\n aria-label={buttonTitle}\n >\n <CloseButtonTooltipWrapper />\n </Button>\n {children && typeof children === \"object\"\n ? React.Children.map(children, (c) => React.cloneElement(c, { fullscreen }))\n : children}\n </Dialog>\n );\n};\n\nHvDialog.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root of the component.\n */\n root: PropTypes.string,\n /**\n * Style applied to the background (outside) of the component.\n */\n background: PropTypes.string,\n /**\n * Style applied to the component (root).\n */\n paper: PropTypes.string,\n /**\n * Style applied to the close button.\n */\n closeButton: PropTypes.string,\n }).isRequired,\n /**\n * Components of the Dialog.\n */\n children: PropTypes.node.isRequired,\n /**\n * Current state of the Dialog.\n */\n open: PropTypes.bool.isRequired,\n /**\n * Function executed on close.\n */\n onClose: PropTypes.func.isRequired,\n /**\n * Element id that should be focus when the Dialog opens.\n */\n firstFocusable: PropTypes.string,\n /**\n * Title for the button close.\n */\n buttonTitle: PropTypes.string,\n /**\n * Set the dialog to fullscreen mode.\n */\n fullscreen: PropTypes.bool,\n};\n\nexport default withStyles(styles, { name: \"HvDialog\" })(HvDialog);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Dialog.js","names":["HvDialog","classes","className","id","children","open","onClose","firstFocusable","buttonTitle","fullscreen","others","useState","focusableQueue","setFocusableQueue","measuredRef","useCallback","node","focusableList","getFocusableList","first","last","length","isNil","focus","element","document","getElementById","console","warn","keyDownHandler","event","isKeypress","KeyboardCodes","Tab","target","shiftKey","preventDefault","Esc","onEscapeKeyDown","disableEscapeKeyDown","stopPropagation","closeButtonDisplay","CloseButtonTooltipWrapper","withTooltip","clsx","root","paper","background","reason","setId","closeButton","React","Children","map","c","cloneElement","propTypes","PropTypes","string","shape","isRequired","bool","func","withStyles","styles","name"],"sources":["../../src/Dialog/Dialog.js"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { Dialog, withStyles } from \"@material-ui/core\";\nimport { Close } from \"@hitachivantara/uikit-react-icons\";\nimport isNil from \"lodash/isNil\";\nimport Button from \"../Button\";\nimport { isKeypress, KeyboardCodes, setId } from \"../utils\";\nimport styles from \"./styles\";\nimport withTooltip from \"../withTooltip\";\nimport { getFocusableList } from \"../utils/focusableElementFinder\";\n\n/**\n * The Dialog component provides a solid foundation for creating dialogs, popovers, lightboxes, etc.\n * It is created by the composition of DialogTitle, DialogContent and DialogActions components, passed as child elements.\n */\nconst HvDialog = ({\n classes,\n className,\n id,\n children,\n open,\n onClose,\n firstFocusable,\n buttonTitle = \"Close\",\n fullscreen = false,\n ...others\n}) => {\n const [focusableQueue, setFocusableQueue] = useState(null);\n\n const measuredRef = useCallback(\n (node) => {\n if (node) {\n const focusableList = getFocusableList(node);\n setFocusableQueue({\n first: focusableList[1],\n last: focusableList[focusableList.length - 2],\n });\n if (isNil(firstFocusable)) focusableList[1].focus();\n else {\n const element = document.getElementById(firstFocusable);\n if (element) element.focus();\n else {\n // eslint-disable-next-line no-console\n console.warn(`firstFocusable element ${firstFocusable} not found.`);\n focusableList[1].focus();\n }\n }\n }\n },\n [firstFocusable]\n );\n\n const keyDownHandler = (event) => {\n if (isKeypress(event, KeyboardCodes.Tab) && !isNil(event.target) && !isNil(focusableQueue)) {\n if (event.shiftKey && event.target === focusableQueue.first) {\n focusableQueue.last.focus();\n event.preventDefault();\n }\n if (!event.shiftKey && event.target === focusableQueue.last) {\n focusableQueue.first.focus();\n event.preventDefault();\n }\n }\n // Needed as this handler overrides the one in the material ui Modal.\n else if (isKeypress(event, KeyboardCodes.Esc)) {\n if (others.onEscapeKeyDown) {\n others.onEscapeKeyDown(event);\n }\n\n if (!others.disableEscapeKeyDown) {\n // Swallow the event, in case someone is listening for the escape key on the body.\n event.stopPropagation();\n\n onClose?.(event, \"escapeKeyDown\");\n }\n }\n };\n\n const closeButtonDisplay = () => <Close role=\"presentation\" />;\n\n const CloseButtonTooltipWrapper = buttonTitle\n ? withTooltip(closeButtonDisplay, buttonTitle, \"top\")\n : closeButtonDisplay;\n\n return (\n <Dialog\n className={clsx(classes.root, className)}\n id={id}\n ref={measuredRef}\n open={open}\n PaperProps={{\n classes: {\n root: clsx(classes.paper, fullscreen ? \"fullscreen\" : \"\"),\n },\n }}\n fullScreen={fullscreen}\n BackdropProps={{\n classes: {\n root: classes.background,\n },\n }}\n onClose={(event, reason) => onClose?.(event, reason)}\n onKeyDown={keyDownHandler}\n {...others}\n aria-modal\n >\n <Button\n id={setId(id, \"close\")}\n className={classes.closeButton}\n category=\"ghost\"\n onClick={(event) => onClose?.(event)}\n aria-label={buttonTitle}\n >\n <CloseButtonTooltipWrapper />\n </Button>\n {children && typeof children === \"object\"\n ? React.Children.map(children, (c) => React.cloneElement(c, { fullscreen }))\n : children}\n </Dialog>\n );\n};\n\nHvDialog.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root of the component.\n */\n root: PropTypes.string,\n /**\n * Style applied to the background (outside) of the component.\n */\n background: PropTypes.string,\n /**\n * Style applied to the component (root).\n */\n paper: PropTypes.string,\n /**\n * Style applied to the close button.\n */\n closeButton: PropTypes.string,\n }).isRequired,\n /**\n * Components of the Dialog.\n */\n children: PropTypes.node.isRequired,\n /**\n * Current state of the Dialog.\n */\n open: PropTypes.bool.isRequired,\n /**\n * Function executed on close.\n */\n onClose: PropTypes.func,\n /**\n * Element id that should be focus when the Dialog opens.\n */\n firstFocusable: PropTypes.string,\n /**\n * Title for the button close.\n */\n buttonTitle: PropTypes.string,\n /**\n * Set the dialog to fullscreen mode.\n */\n fullscreen: PropTypes.bool,\n};\n\nexport default withStyles(styles, { name: \"HvDialog\" })(HvDialog);\n"],"mappings":"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"}
|
|
@@ -80,10 +80,7 @@ var HvDialog = function HvDialog(_ref) {
|
|
|
80
80
|
if (!others.disableEscapeKeyDown) {
|
|
81
81
|
// Swallow the event, in case someone is listening for the escape key on the body.
|
|
82
82
|
event.stopPropagation();
|
|
83
|
-
|
|
84
|
-
if (_onClose) {
|
|
85
|
-
_onClose(event, "escapeKeyDown");
|
|
86
|
-
}
|
|
83
|
+
_onClose === null || _onClose === void 0 ? void 0 : _onClose(event, "escapeKeyDown");
|
|
87
84
|
}
|
|
88
85
|
}
|
|
89
86
|
};
|
|
@@ -112,7 +109,7 @@ var HvDialog = function HvDialog(_ref) {
|
|
|
112
109
|
}
|
|
113
110
|
},
|
|
114
111
|
onClose: function onClose(event, reason) {
|
|
115
|
-
return _onClose(event, reason);
|
|
112
|
+
return _onClose === null || _onClose === void 0 ? void 0 : _onClose(event, reason);
|
|
116
113
|
},
|
|
117
114
|
onKeyDown: keyDownHandler
|
|
118
115
|
}, others, {
|
|
@@ -122,7 +119,7 @@ var HvDialog = function HvDialog(_ref) {
|
|
|
122
119
|
className: classes.closeButton,
|
|
123
120
|
category: "ghost",
|
|
124
121
|
onClick: function onClick(event) {
|
|
125
|
-
return _onClose(event);
|
|
122
|
+
return _onClose === null || _onClose === void 0 ? void 0 : _onClose(event);
|
|
126
123
|
},
|
|
127
124
|
"aria-label": buttonTitle
|
|
128
125
|
}, /*#__PURE__*/React.createElement(CloseButtonTooltipWrapper, null)), children && _typeof(children) === "object" ? React.Children.map(children, function (c) {
|
|
@@ -181,7 +178,7 @@ process.env.NODE_ENV !== "production" ? HvDialog.propTypes = {
|
|
|
181
178
|
/**
|
|
182
179
|
* Function executed on close.
|
|
183
180
|
*/
|
|
184
|
-
onClose: PropTypes.func
|
|
181
|
+
onClose: PropTypes.func,
|
|
185
182
|
|
|
186
183
|
/**
|
|
187
184
|
* Element id that should be focus when the Dialog opens.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.js","names":["React","useCallback","useState","clsx","PropTypes","Dialog","withStyles","Close","isNil","Button","isKeypress","KeyboardCodes","setId","styles","withTooltip","getFocusableList","HvDialog","classes","className","id","children","open","onClose","firstFocusable","buttonTitle","fullscreen","others","focusableQueue","setFocusableQueue","measuredRef","node","focusableList","first","last","length","focus","element","document","getElementById","console","warn","keyDownHandler","event","Tab","target","shiftKey","preventDefault","Esc","onEscapeKeyDown","disableEscapeKeyDown","stopPropagation","closeButtonDisplay","CloseButtonTooltipWrapper","root","paper","background","reason","closeButton","Children","map","c","cloneElement","propTypes","string","shape","isRequired","bool","func","name"],"sources":["../../../src/Dialog/Dialog.js"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { Dialog, withStyles } from \"@material-ui/core\";\nimport { Close } from \"@hitachivantara/uikit-react-icons\";\nimport isNil from \"lodash/isNil\";\nimport Button from \"../Button\";\nimport { isKeypress, KeyboardCodes, setId } from \"../utils\";\nimport styles from \"./styles\";\nimport withTooltip from \"../withTooltip\";\nimport { getFocusableList } from \"../utils/focusableElementFinder\";\n\n/**\n * The Dialog component provides a solid foundation for creating dialogs, popovers, lightboxes, etc.\n * It is created by the composition of DialogTitle, DialogContent and DialogActions components, passed as child elements.\n */\nconst HvDialog = ({\n classes,\n className,\n id,\n children,\n open,\n onClose,\n firstFocusable,\n buttonTitle = \"Close\",\n fullscreen = false,\n ...others\n}) => {\n const [focusableQueue, setFocusableQueue] = useState(null);\n\n const measuredRef = useCallback(\n (node) => {\n if (node) {\n const focusableList = getFocusableList(node);\n setFocusableQueue({\n first: focusableList[1],\n last: focusableList[focusableList.length - 2],\n });\n if (isNil(firstFocusable)) focusableList[1].focus();\n else {\n const element = document.getElementById(firstFocusable);\n if (element) element.focus();\n else {\n // eslint-disable-next-line no-console\n console.warn(`firstFocusable element ${firstFocusable} not found.`);\n focusableList[1].focus();\n }\n }\n }\n },\n [firstFocusable]\n );\n\n const keyDownHandler = (event) => {\n if (isKeypress(event, KeyboardCodes.Tab) && !isNil(event.target) && !isNil(focusableQueue)) {\n if (event.shiftKey && event.target === focusableQueue.first) {\n focusableQueue.last.focus();\n event.preventDefault();\n }\n if (!event.shiftKey && event.target === focusableQueue.last) {\n focusableQueue.first.focus();\n event.preventDefault();\n }\n }\n // Needed as this handler overrides the one in the material ui Modal.\n else if (isKeypress(event, KeyboardCodes.Esc)) {\n if (others.onEscapeKeyDown) {\n others.onEscapeKeyDown(event);\n }\n\n if (!others.disableEscapeKeyDown) {\n // Swallow the event, in case someone is listening for the escape key on the body.\n event.stopPropagation();\n\n if (onClose) {\n onClose(event, \"escapeKeyDown\");\n }\n }\n }\n };\n\n const closeButtonDisplay = () => <Close role=\"presentation\" />;\n\n const CloseButtonTooltipWrapper = buttonTitle\n ? withTooltip(closeButtonDisplay, buttonTitle, \"top\")\n : closeButtonDisplay;\n\n return (\n <Dialog\n className={clsx(classes.root, className)}\n id={id}\n ref={measuredRef}\n open={open}\n PaperProps={{\n classes: {\n root: clsx(classes.paper, fullscreen ? \"fullscreen\" : \"\"),\n },\n }}\n fullScreen={fullscreen}\n BackdropProps={{\n classes: {\n root: classes.background,\n },\n }}\n onClose={(event, reason) => onClose(event, reason)}\n onKeyDown={keyDownHandler}\n {...others}\n aria-modal\n >\n <Button\n id={setId(id, \"close\")}\n className={classes.closeButton}\n category=\"ghost\"\n onClick={(event) => onClose(event)}\n aria-label={buttonTitle}\n >\n <CloseButtonTooltipWrapper />\n </Button>\n {children && typeof children === \"object\"\n ? React.Children.map(children, (c) => React.cloneElement(c, { fullscreen }))\n : children}\n </Dialog>\n );\n};\n\nHvDialog.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root of the component.\n */\n root: PropTypes.string,\n /**\n * Style applied to the background (outside) of the component.\n */\n background: PropTypes.string,\n /**\n * Style applied to the component (root).\n */\n paper: PropTypes.string,\n /**\n * Style applied to the close button.\n */\n closeButton: PropTypes.string,\n }).isRequired,\n /**\n * Components of the Dialog.\n */\n children: PropTypes.node.isRequired,\n /**\n * Current state of the Dialog.\n */\n open: PropTypes.bool.isRequired,\n /**\n * Function executed on close.\n */\n onClose: PropTypes.func.isRequired,\n /**\n * Element id that should be focus when the Dialog opens.\n */\n firstFocusable: PropTypes.string,\n /**\n * Title for the button close.\n */\n buttonTitle: PropTypes.string,\n /**\n * Set the dialog to fullscreen mode.\n */\n fullscreen: PropTypes.bool,\n};\n\nexport default withStyles(styles, { name: \"HvDialog\" })(HvDialog);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Dialog.js","names":["React","useCallback","useState","clsx","PropTypes","Dialog","withStyles","Close","isNil","Button","isKeypress","KeyboardCodes","setId","styles","withTooltip","getFocusableList","HvDialog","classes","className","id","children","open","onClose","firstFocusable","buttonTitle","fullscreen","others","focusableQueue","setFocusableQueue","measuredRef","node","focusableList","first","last","length","focus","element","document","getElementById","console","warn","keyDownHandler","event","Tab","target","shiftKey","preventDefault","Esc","onEscapeKeyDown","disableEscapeKeyDown","stopPropagation","closeButtonDisplay","CloseButtonTooltipWrapper","root","paper","background","reason","closeButton","Children","map","c","cloneElement","propTypes","string","shape","isRequired","bool","func","name"],"sources":["../../../src/Dialog/Dialog.js"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { Dialog, withStyles } from \"@material-ui/core\";\nimport { Close } from \"@hitachivantara/uikit-react-icons\";\nimport isNil from \"lodash/isNil\";\nimport Button from \"../Button\";\nimport { isKeypress, KeyboardCodes, setId } from \"../utils\";\nimport styles from \"./styles\";\nimport withTooltip from \"../withTooltip\";\nimport { getFocusableList } from \"../utils/focusableElementFinder\";\n\n/**\n * The Dialog component provides a solid foundation for creating dialogs, popovers, lightboxes, etc.\n * It is created by the composition of DialogTitle, DialogContent and DialogActions components, passed as child elements.\n */\nconst HvDialog = ({\n classes,\n className,\n id,\n children,\n open,\n onClose,\n firstFocusable,\n buttonTitle = \"Close\",\n fullscreen = false,\n ...others\n}) => {\n const [focusableQueue, setFocusableQueue] = useState(null);\n\n const measuredRef = useCallback(\n (node) => {\n if (node) {\n const focusableList = getFocusableList(node);\n setFocusableQueue({\n first: focusableList[1],\n last: focusableList[focusableList.length - 2],\n });\n if (isNil(firstFocusable)) focusableList[1].focus();\n else {\n const element = document.getElementById(firstFocusable);\n if (element) element.focus();\n else {\n // eslint-disable-next-line no-console\n console.warn(`firstFocusable element ${firstFocusable} not found.`);\n focusableList[1].focus();\n }\n }\n }\n },\n [firstFocusable]\n );\n\n const keyDownHandler = (event) => {\n if (isKeypress(event, KeyboardCodes.Tab) && !isNil(event.target) && !isNil(focusableQueue)) {\n if (event.shiftKey && event.target === focusableQueue.first) {\n focusableQueue.last.focus();\n event.preventDefault();\n }\n if (!event.shiftKey && event.target === focusableQueue.last) {\n focusableQueue.first.focus();\n event.preventDefault();\n }\n }\n // Needed as this handler overrides the one in the material ui Modal.\n else if (isKeypress(event, KeyboardCodes.Esc)) {\n if (others.onEscapeKeyDown) {\n others.onEscapeKeyDown(event);\n }\n\n if (!others.disableEscapeKeyDown) {\n // Swallow the event, in case someone is listening for the escape key on the body.\n event.stopPropagation();\n\n onClose?.(event, \"escapeKeyDown\");\n }\n }\n };\n\n const closeButtonDisplay = () => <Close role=\"presentation\" />;\n\n const CloseButtonTooltipWrapper = buttonTitle\n ? withTooltip(closeButtonDisplay, buttonTitle, \"top\")\n : closeButtonDisplay;\n\n return (\n <Dialog\n className={clsx(classes.root, className)}\n id={id}\n ref={measuredRef}\n open={open}\n PaperProps={{\n classes: {\n root: clsx(classes.paper, fullscreen ? \"fullscreen\" : \"\"),\n },\n }}\n fullScreen={fullscreen}\n BackdropProps={{\n classes: {\n root: classes.background,\n },\n }}\n onClose={(event, reason) => onClose?.(event, reason)}\n onKeyDown={keyDownHandler}\n {...others}\n aria-modal\n >\n <Button\n id={setId(id, \"close\")}\n className={classes.closeButton}\n category=\"ghost\"\n onClick={(event) => onClose?.(event)}\n aria-label={buttonTitle}\n >\n <CloseButtonTooltipWrapper />\n </Button>\n {children && typeof children === \"object\"\n ? React.Children.map(children, (c) => React.cloneElement(c, { fullscreen }))\n : children}\n </Dialog>\n );\n};\n\nHvDialog.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root of the component.\n */\n root: PropTypes.string,\n /**\n * Style applied to the background (outside) of the component.\n */\n background: PropTypes.string,\n /**\n * Style applied to the component (root).\n */\n paper: PropTypes.string,\n /**\n * Style applied to the close button.\n */\n closeButton: PropTypes.string,\n }).isRequired,\n /**\n * Components of the Dialog.\n */\n children: PropTypes.node.isRequired,\n /**\n * Current state of the Dialog.\n */\n open: PropTypes.bool.isRequired,\n /**\n * Function executed on close.\n */\n onClose: PropTypes.func,\n /**\n * Element id that should be focus when the Dialog opens.\n */\n firstFocusable: PropTypes.string,\n /**\n * Title for the button close.\n */\n buttonTitle: PropTypes.string,\n /**\n * Set the dialog to fullscreen mode.\n */\n fullscreen: PropTypes.bool,\n};\n\nexport default withStyles(styles, { name: \"HvDialog\" })(HvDialog);\n"],"mappings":"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"}
|
|
@@ -74,10 +74,7 @@ const HvDialog = _ref => {
|
|
|
74
74
|
if (!others.disableEscapeKeyDown) {
|
|
75
75
|
// Swallow the event, in case someone is listening for the escape key on the body.
|
|
76
76
|
event.stopPropagation();
|
|
77
|
-
|
|
78
|
-
if (onClose) {
|
|
79
|
-
onClose(event, "escapeKeyDown");
|
|
80
|
-
}
|
|
77
|
+
onClose === null || onClose === void 0 ? void 0 : onClose(event, "escapeKeyDown");
|
|
81
78
|
}
|
|
82
79
|
}
|
|
83
80
|
};
|
|
@@ -103,7 +100,7 @@ const HvDialog = _ref => {
|
|
|
103
100
|
root: classes.background
|
|
104
101
|
}
|
|
105
102
|
},
|
|
106
|
-
onClose: (event, reason) => onClose(event, reason),
|
|
103
|
+
onClose: (event, reason) => onClose === null || onClose === void 0 ? void 0 : onClose(event, reason),
|
|
107
104
|
onKeyDown: keyDownHandler
|
|
108
105
|
}, others, {
|
|
109
106
|
"aria-modal": true
|
|
@@ -111,7 +108,7 @@ const HvDialog = _ref => {
|
|
|
111
108
|
id: setId(id, "close"),
|
|
112
109
|
className: classes.closeButton,
|
|
113
110
|
category: "ghost",
|
|
114
|
-
onClick: event => onClose(event),
|
|
111
|
+
onClick: event => onClose === null || onClose === void 0 ? void 0 : onClose(event),
|
|
115
112
|
"aria-label": buttonTitle
|
|
116
113
|
}, /*#__PURE__*/React.createElement(CloseButtonTooltipWrapper, null)), children && typeof children === "object" ? React.Children.map(children, c => /*#__PURE__*/React.cloneElement(c, {
|
|
117
114
|
fullscreen
|
|
@@ -167,7 +164,7 @@ process.env.NODE_ENV !== "production" ? HvDialog.propTypes = {
|
|
|
167
164
|
/**
|
|
168
165
|
* Function executed on close.
|
|
169
166
|
*/
|
|
170
|
-
onClose: PropTypes.func
|
|
167
|
+
onClose: PropTypes.func,
|
|
171
168
|
|
|
172
169
|
/**
|
|
173
170
|
* Element id that should be focus when the Dialog opens.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.js","names":["React","useCallback","useState","clsx","PropTypes","Dialog","withStyles","Close","isNil","Button","isKeypress","KeyboardCodes","setId","styles","withTooltip","getFocusableList","HvDialog","classes","className","id","children","open","onClose","firstFocusable","buttonTitle","fullscreen","others","focusableQueue","setFocusableQueue","measuredRef","node","focusableList","first","last","length","focus","element","document","getElementById","console","warn","keyDownHandler","event","Tab","target","shiftKey","preventDefault","Esc","onEscapeKeyDown","disableEscapeKeyDown","stopPropagation","closeButtonDisplay","CloseButtonTooltipWrapper","root","paper","background","reason","closeButton","Children","map","c","cloneElement","propTypes","string","shape","isRequired","bool","func","name"],"sources":["../../../src/Dialog/Dialog.js"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { Dialog, withStyles } from \"@material-ui/core\";\nimport { Close } from \"@hitachivantara/uikit-react-icons\";\nimport isNil from \"lodash/isNil\";\nimport Button from \"../Button\";\nimport { isKeypress, KeyboardCodes, setId } from \"../utils\";\nimport styles from \"./styles\";\nimport withTooltip from \"../withTooltip\";\nimport { getFocusableList } from \"../utils/focusableElementFinder\";\n\n/**\n * The Dialog component provides a solid foundation for creating dialogs, popovers, lightboxes, etc.\n * It is created by the composition of DialogTitle, DialogContent and DialogActions components, passed as child elements.\n */\nconst HvDialog = ({\n classes,\n className,\n id,\n children,\n open,\n onClose,\n firstFocusable,\n buttonTitle = \"Close\",\n fullscreen = false,\n ...others\n}) => {\n const [focusableQueue, setFocusableQueue] = useState(null);\n\n const measuredRef = useCallback(\n (node) => {\n if (node) {\n const focusableList = getFocusableList(node);\n setFocusableQueue({\n first: focusableList[1],\n last: focusableList[focusableList.length - 2],\n });\n if (isNil(firstFocusable)) focusableList[1].focus();\n else {\n const element = document.getElementById(firstFocusable);\n if (element) element.focus();\n else {\n // eslint-disable-next-line no-console\n console.warn(`firstFocusable element ${firstFocusable} not found.`);\n focusableList[1].focus();\n }\n }\n }\n },\n [firstFocusable]\n );\n\n const keyDownHandler = (event) => {\n if (isKeypress(event, KeyboardCodes.Tab) && !isNil(event.target) && !isNil(focusableQueue)) {\n if (event.shiftKey && event.target === focusableQueue.first) {\n focusableQueue.last.focus();\n event.preventDefault();\n }\n if (!event.shiftKey && event.target === focusableQueue.last) {\n focusableQueue.first.focus();\n event.preventDefault();\n }\n }\n // Needed as this handler overrides the one in the material ui Modal.\n else if (isKeypress(event, KeyboardCodes.Esc)) {\n if (others.onEscapeKeyDown) {\n others.onEscapeKeyDown(event);\n }\n\n if (!others.disableEscapeKeyDown) {\n // Swallow the event, in case someone is listening for the escape key on the body.\n event.stopPropagation();\n\n if (onClose) {\n onClose(event, \"escapeKeyDown\");\n }\n }\n }\n };\n\n const closeButtonDisplay = () => <Close role=\"presentation\" />;\n\n const CloseButtonTooltipWrapper = buttonTitle\n ? withTooltip(closeButtonDisplay, buttonTitle, \"top\")\n : closeButtonDisplay;\n\n return (\n <Dialog\n className={clsx(classes.root, className)}\n id={id}\n ref={measuredRef}\n open={open}\n PaperProps={{\n classes: {\n root: clsx(classes.paper, fullscreen ? \"fullscreen\" : \"\"),\n },\n }}\n fullScreen={fullscreen}\n BackdropProps={{\n classes: {\n root: classes.background,\n },\n }}\n onClose={(event, reason) => onClose(event, reason)}\n onKeyDown={keyDownHandler}\n {...others}\n aria-modal\n >\n <Button\n id={setId(id, \"close\")}\n className={classes.closeButton}\n category=\"ghost\"\n onClick={(event) => onClose(event)}\n aria-label={buttonTitle}\n >\n <CloseButtonTooltipWrapper />\n </Button>\n {children && typeof children === \"object\"\n ? React.Children.map(children, (c) => React.cloneElement(c, { fullscreen }))\n : children}\n </Dialog>\n );\n};\n\nHvDialog.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root of the component.\n */\n root: PropTypes.string,\n /**\n * Style applied to the background (outside) of the component.\n */\n background: PropTypes.string,\n /**\n * Style applied to the component (root).\n */\n paper: PropTypes.string,\n /**\n * Style applied to the close button.\n */\n closeButton: PropTypes.string,\n }).isRequired,\n /**\n * Components of the Dialog.\n */\n children: PropTypes.node.isRequired,\n /**\n * Current state of the Dialog.\n */\n open: PropTypes.bool.isRequired,\n /**\n * Function executed on close.\n */\n onClose: PropTypes.func.isRequired,\n /**\n * Element id that should be focus when the Dialog opens.\n */\n firstFocusable: PropTypes.string,\n /**\n * Title for the button close.\n */\n buttonTitle: PropTypes.string,\n /**\n * Set the dialog to fullscreen mode.\n */\n fullscreen: PropTypes.bool,\n};\n\nexport default withStyles(styles, { name: \"HvDialog\" })(HvDialog);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Dialog.js","names":["React","useCallback","useState","clsx","PropTypes","Dialog","withStyles","Close","isNil","Button","isKeypress","KeyboardCodes","setId","styles","withTooltip","getFocusableList","HvDialog","classes","className","id","children","open","onClose","firstFocusable","buttonTitle","fullscreen","others","focusableQueue","setFocusableQueue","measuredRef","node","focusableList","first","last","length","focus","element","document","getElementById","console","warn","keyDownHandler","event","Tab","target","shiftKey","preventDefault","Esc","onEscapeKeyDown","disableEscapeKeyDown","stopPropagation","closeButtonDisplay","CloseButtonTooltipWrapper","root","paper","background","reason","closeButton","Children","map","c","cloneElement","propTypes","string","shape","isRequired","bool","func","name"],"sources":["../../../src/Dialog/Dialog.js"],"sourcesContent":["import React, { useCallback, useState } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { Dialog, withStyles } from \"@material-ui/core\";\nimport { Close } from \"@hitachivantara/uikit-react-icons\";\nimport isNil from \"lodash/isNil\";\nimport Button from \"../Button\";\nimport { isKeypress, KeyboardCodes, setId } from \"../utils\";\nimport styles from \"./styles\";\nimport withTooltip from \"../withTooltip\";\nimport { getFocusableList } from \"../utils/focusableElementFinder\";\n\n/**\n * The Dialog component provides a solid foundation for creating dialogs, popovers, lightboxes, etc.\n * It is created by the composition of DialogTitle, DialogContent and DialogActions components, passed as child elements.\n */\nconst HvDialog = ({\n classes,\n className,\n id,\n children,\n open,\n onClose,\n firstFocusable,\n buttonTitle = \"Close\",\n fullscreen = false,\n ...others\n}) => {\n const [focusableQueue, setFocusableQueue] = useState(null);\n\n const measuredRef = useCallback(\n (node) => {\n if (node) {\n const focusableList = getFocusableList(node);\n setFocusableQueue({\n first: focusableList[1],\n last: focusableList[focusableList.length - 2],\n });\n if (isNil(firstFocusable)) focusableList[1].focus();\n else {\n const element = document.getElementById(firstFocusable);\n if (element) element.focus();\n else {\n // eslint-disable-next-line no-console\n console.warn(`firstFocusable element ${firstFocusable} not found.`);\n focusableList[1].focus();\n }\n }\n }\n },\n [firstFocusable]\n );\n\n const keyDownHandler = (event) => {\n if (isKeypress(event, KeyboardCodes.Tab) && !isNil(event.target) && !isNil(focusableQueue)) {\n if (event.shiftKey && event.target === focusableQueue.first) {\n focusableQueue.last.focus();\n event.preventDefault();\n }\n if (!event.shiftKey && event.target === focusableQueue.last) {\n focusableQueue.first.focus();\n event.preventDefault();\n }\n }\n // Needed as this handler overrides the one in the material ui Modal.\n else if (isKeypress(event, KeyboardCodes.Esc)) {\n if (others.onEscapeKeyDown) {\n others.onEscapeKeyDown(event);\n }\n\n if (!others.disableEscapeKeyDown) {\n // Swallow the event, in case someone is listening for the escape key on the body.\n event.stopPropagation();\n\n onClose?.(event, \"escapeKeyDown\");\n }\n }\n };\n\n const closeButtonDisplay = () => <Close role=\"presentation\" />;\n\n const CloseButtonTooltipWrapper = buttonTitle\n ? withTooltip(closeButtonDisplay, buttonTitle, \"top\")\n : closeButtonDisplay;\n\n return (\n <Dialog\n className={clsx(classes.root, className)}\n id={id}\n ref={measuredRef}\n open={open}\n PaperProps={{\n classes: {\n root: clsx(classes.paper, fullscreen ? \"fullscreen\" : \"\"),\n },\n }}\n fullScreen={fullscreen}\n BackdropProps={{\n classes: {\n root: classes.background,\n },\n }}\n onClose={(event, reason) => onClose?.(event, reason)}\n onKeyDown={keyDownHandler}\n {...others}\n aria-modal\n >\n <Button\n id={setId(id, \"close\")}\n className={classes.closeButton}\n category=\"ghost\"\n onClick={(event) => onClose?.(event)}\n aria-label={buttonTitle}\n >\n <CloseButtonTooltipWrapper />\n </Button>\n {children && typeof children === \"object\"\n ? React.Children.map(children, (c) => React.cloneElement(c, { fullscreen }))\n : children}\n </Dialog>\n );\n};\n\nHvDialog.propTypes = {\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root of the component.\n */\n root: PropTypes.string,\n /**\n * Style applied to the background (outside) of the component.\n */\n background: PropTypes.string,\n /**\n * Style applied to the component (root).\n */\n paper: PropTypes.string,\n /**\n * Style applied to the close button.\n */\n closeButton: PropTypes.string,\n }).isRequired,\n /**\n * Components of the Dialog.\n */\n children: PropTypes.node.isRequired,\n /**\n * Current state of the Dialog.\n */\n open: PropTypes.bool.isRequired,\n /**\n * Function executed on close.\n */\n onClose: PropTypes.func,\n /**\n * Element id that should be focus when the Dialog opens.\n */\n firstFocusable: PropTypes.string,\n /**\n * Title for the button close.\n */\n buttonTitle: PropTypes.string,\n /**\n * Set the dialog to fullscreen mode.\n */\n fullscreen: PropTypes.bool,\n};\n\nexport default withStyles(styles, { name: \"HvDialog\" })(HvDialog);\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hitachivantara/uikit-react-core",
|
|
3
|
-
"version": "3.68.
|
|
3
|
+
"version": "3.68.9",
|
|
4
4
|
"description": "A collection of React components for the Hitachi Vantara's Design System.",
|
|
5
5
|
"homepage": "https://github.com/lumada-design/hv-uikit-react",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -80,5 +80,5 @@
|
|
|
80
80
|
"publishConfig": {
|
|
81
81
|
"access": "public"
|
|
82
82
|
},
|
|
83
|
-
"gitHead": "
|
|
83
|
+
"gitHead": "4208b624d16a8f04110017363f40ee049ef7bcbd"
|
|
84
84
|
}
|