@hitachivantara/uikit-react-core 3.67.5 → 3.67.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/Dialog/Dialog.js +3 -3
  2. package/dist/Dialog/Dialog.js.map +1 -1
  3. package/dist/Dialog/DialogActions/styles.js +3 -1
  4. package/dist/Dialog/DialogActions/styles.js.map +1 -1
  5. package/dist/Dialog/DialogContent/styles.js +3 -1
  6. package/dist/Dialog/DialogContent/styles.js.map +1 -1
  7. package/dist/Dialog/DialogTitle/DialogTitle.js +3 -2
  8. package/dist/Dialog/DialogTitle/DialogTitle.js.map +1 -1
  9. package/dist/Dialog/DialogTitle/styles.js +3 -2
  10. package/dist/Dialog/DialogTitle/styles.js.map +1 -1
  11. package/dist/Dialog/styles.js +3 -1
  12. package/dist/Dialog/styles.js.map +1 -1
  13. package/dist/VerticalNavigation/TreeView/TreeViewItem.js +3 -1
  14. package/dist/VerticalNavigation/TreeView/TreeViewItem.js.map +1 -1
  15. package/dist/legacy/Dialog/Dialog.js +3 -3
  16. package/dist/legacy/Dialog/Dialog.js.map +1 -1
  17. package/dist/legacy/Dialog/DialogActions/styles.js +3 -1
  18. package/dist/legacy/Dialog/DialogActions/styles.js.map +1 -1
  19. package/dist/legacy/Dialog/DialogContent/styles.js +3 -1
  20. package/dist/legacy/Dialog/DialogContent/styles.js.map +1 -1
  21. package/dist/legacy/Dialog/DialogTitle/DialogTitle.js +3 -2
  22. package/dist/legacy/Dialog/DialogTitle/DialogTitle.js.map +1 -1
  23. package/dist/legacy/Dialog/DialogTitle/styles.js +3 -2
  24. package/dist/legacy/Dialog/DialogTitle/styles.js.map +1 -1
  25. package/dist/legacy/Dialog/styles.js +3 -1
  26. package/dist/legacy/Dialog/styles.js.map +1 -1
  27. package/dist/legacy/VerticalNavigation/TreeView/TreeViewItem.js +3 -1
  28. package/dist/legacy/VerticalNavigation/TreeView/TreeViewItem.js.map +1 -1
  29. package/dist/modern/Dialog/Dialog.js +3 -3
  30. package/dist/modern/Dialog/Dialog.js.map +1 -1
  31. package/dist/modern/Dialog/DialogActions/styles.js +3 -1
  32. package/dist/modern/Dialog/DialogActions/styles.js.map +1 -1
  33. package/dist/modern/Dialog/DialogContent/styles.js +3 -1
  34. package/dist/modern/Dialog/DialogContent/styles.js.map +1 -1
  35. package/dist/modern/Dialog/DialogTitle/DialogTitle.js +5 -2
  36. package/dist/modern/Dialog/DialogTitle/DialogTitle.js.map +1 -1
  37. package/dist/modern/Dialog/DialogTitle/styles.js +3 -2
  38. package/dist/modern/Dialog/DialogTitle/styles.js.map +1 -1
  39. package/dist/modern/Dialog/styles.js +3 -1
  40. package/dist/modern/Dialog/styles.js.map +1 -1
  41. package/dist/modern/VerticalNavigation/TreeView/TreeViewItem.js +3 -1
  42. package/dist/modern/VerticalNavigation/TreeView/TreeViewItem.js.map +1 -1
  43. package/package.json +2 -2
@@ -157,9 +157,9 @@ var HvDialog = function HvDialog(_ref) {
157
157
  return _onClose(event, reason);
158
158
  },
159
159
  onKeyDown: keyDownHandler
160
- }, others), /*#__PURE__*/_react.default.createElement("div", {
160
+ }, others, {
161
161
  "aria-modal": true
162
- }, /*#__PURE__*/_react.default.createElement(_Button.default, {
162
+ }), /*#__PURE__*/_react.default.createElement(_Button.default, {
163
163
  id: (0, _utils.setId)(id, "close"),
164
164
  className: classes.closeButton,
165
165
  category: "ghost",
@@ -171,7 +171,7 @@ var HvDialog = function HvDialog(_ref) {
171
171
  return /*#__PURE__*/_react.default.cloneElement(c, {
172
172
  fullscreen: fullscreen
173
173
  });
174
- }) : children));
174
+ }) : children);
175
175
  };
176
176
 
177
177
  process.env.NODE_ENV !== "production" ? HvDialog.propTypes = {
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.js","names":["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","KeyboardCodes","Tab","target","shiftKey","preventDefault","Esc","onEscapeKeyDown","disableEscapeKeyDown","stopPropagation","closeButtonDisplay","CloseButtonTooltipWrapper","root","paper","background","reason","closeButton","React","Children","map","c","cloneElement","propTypes","PropTypes","string","shape","isRequired","bool","func","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 >\n <div aria-modal>\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 </div>\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","focusableQueue","setFocusableQueue","measuredRef","node","focusableList","first","last","length","focus","element","document","getElementById","console","warn","keyDownHandler","event","KeyboardCodes","Tab","target","shiftKey","preventDefault","Esc","onEscapeKeyDown","disableEscapeKeyDown","stopPropagation","closeButtonDisplay","CloseButtonTooltipWrapper","root","paper","background","reason","closeButton","React","Children","map","c","cloneElement","propTypes","PropTypes","string","shape","isRequired","bool","func","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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"}
@@ -10,7 +10,9 @@ var styles = function styles(theme) {
10
10
  root: {
11
11
  margin: "0",
12
12
  padding: theme.hv.spacing.sm,
13
- borderTop: "3px solid ".concat(theme.hv.palette.atmosphere.atmo2)
13
+ borderTop: "3px solid ".concat(theme.hv.palette.atmosphere.atmo2),
14
+ height: 100,
15
+ flex: 1
14
16
  },
15
17
  spacing: {
16
18
  "& > :not(:first-child)": {
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","theme","root","margin","padding","hv","spacing","sm","borderTop","palette","atmosphere","atmo2","marginLeft","xs","fullscreen","position","width","bottom","left"],"sources":["../../../src/Dialog/DialogActions/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n margin: \"0\",\n padding: theme.hv.spacing.sm,\n borderTop: `3px solid ${theme.hv.palette.atmosphere.atmo2}`,\n },\n spacing: {\n \"& > :not(:first-child)\": {\n marginLeft: theme.hv.spacing.xs,\n },\n },\n fullscreen: {\n position: \"fixed\",\n width: \"100%\",\n bottom: 0,\n left: 0,\n },\n});\n\nexport default styles;\n"],"mappings":";;;;;;;AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,IAAI,EAAE;MACJC,MAAM,EAAE,GADJ;MAEJC,OAAO,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,EAFtB;MAGJC,SAAS,sBAAeP,KAAK,CAACI,EAAN,CAASI,OAAT,CAAiBC,UAAjB,CAA4BC,KAA3C;IAHL,CADmB;IAMzBL,OAAO,EAAE;MACP,0BAA0B;QACxBM,UAAU,EAAEX,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBO;MADL;IADnB,CANgB;IAWzBC,UAAU,EAAE;MACVC,QAAQ,EAAE,OADA;MAEVC,KAAK,EAAE,MAFG;MAGVC,MAAM,EAAE,CAHE;MAIVC,IAAI,EAAE;IAJI;EAXa,CAAZ;AAAA,CAAf;;eAmBelB,M"}
1
+ {"version":3,"file":"styles.js","names":["styles","theme","root","margin","padding","hv","spacing","sm","borderTop","palette","atmosphere","atmo2","height","flex","marginLeft","xs","fullscreen","position","width","bottom","left"],"sources":["../../../src/Dialog/DialogActions/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n margin: \"0\",\n padding: theme.hv.spacing.sm,\n borderTop: `3px solid ${theme.hv.palette.atmosphere.atmo2}`,\n height: 100,\n flex: 1,\n },\n spacing: {\n \"& > :not(:first-child)\": {\n marginLeft: theme.hv.spacing.xs,\n },\n },\n fullscreen: {\n position: \"fixed\",\n width: \"100%\",\n bottom: 0,\n left: 0,\n },\n});\n\nexport default styles;\n"],"mappings":";;;;;;;AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,IAAI,EAAE;MACJC,MAAM,EAAE,GADJ;MAEJC,OAAO,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,EAFtB;MAGJC,SAAS,sBAAeP,KAAK,CAACI,EAAN,CAASI,OAAT,CAAiBC,UAAjB,CAA4BC,KAA3C,CAHL;MAIJC,MAAM,EAAE,GAJJ;MAKJC,IAAI,EAAE;IALF,CADmB;IAQzBP,OAAO,EAAE;MACP,0BAA0B;QACxBQ,UAAU,EAAEb,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBS;MADL;IADnB,CARgB;IAazBC,UAAU,EAAE;MACVC,QAAQ,EAAE,OADA;MAEVC,KAAK,EAAE,MAFG;MAGVC,MAAM,EAAE,CAHE;MAIVC,IAAI,EAAE;IAJI;EAba,CAAZ;AAAA,CAAf;;eAqBepB,M"}
@@ -13,7 +13,9 @@ var styles = function styles(theme) {
13
13
  },
14
14
  textContent: {
15
15
  marginLeft: "42px",
16
- marginRight: "42px"
16
+ paddingRight: "62px",
17
+ flex: 1,
18
+ overflowY: "auto"
17
19
  }
18
20
  };
19
21
  };
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","theme","root","padding","hvSpacing","flex","textContent","marginLeft","marginRight"],"sources":["../../../src/Dialog/DialogContent/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n padding: theme.hvSpacing(0, \"sm\", \"sm\", \"sm\"),\n flex: \"none\",\n },\n textContent: {\n marginLeft: \"42px\",\n marginRight: \"42px\",\n },\n});\n\nexport default styles;\n"],"mappings":";;;;;;;AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,IAAI,EAAE;MACJC,OAAO,EAAEF,KAAK,CAACG,SAAN,CAAgB,CAAhB,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,IAA/B,CADL;MAEJC,IAAI,EAAE;IAFF,CADmB;IAKzBC,WAAW,EAAE;MACXC,UAAU,EAAE,MADD;MAEXC,WAAW,EAAE;IAFF;EALY,CAAZ;AAAA,CAAf;;eAWeR,M"}
1
+ {"version":3,"file":"styles.js","names":["styles","theme","root","padding","hvSpacing","flex","textContent","marginLeft","paddingRight","overflowY"],"sources":["../../../src/Dialog/DialogContent/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n padding: theme.hvSpacing(0, \"sm\", \"sm\", \"sm\"),\n flex: \"none\",\n },\n textContent: {\n marginLeft: \"42px\",\n paddingRight: \"62px\",\n flex: 1,\n overflowY: \"auto\",\n },\n});\n\nexport default styles;\n"],"mappings":";;;;;;;AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,IAAI,EAAE;MACJC,OAAO,EAAEF,KAAK,CAACG,SAAN,CAAgB,CAAhB,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,IAA/B,CADL;MAEJC,IAAI,EAAE;IAFF,CADmB;IAKzBC,WAAW,EAAE;MACXC,UAAU,EAAE,MADD;MAEXC,YAAY,EAAE,MAFH;MAGXH,IAAI,EAAE,CAHK;MAIXI,SAAS,EAAE;IAJA;EALY,CAAZ;AAAA,CAAf;;eAaeT,M"}
@@ -38,13 +38,14 @@ var HvDialogTitle = function HvDialogTitle(_ref) {
38
38
  _ref$customIcon = _ref.customIcon,
39
39
  customIcon = _ref$customIcon === void 0 ? null : _ref$customIcon,
40
40
  others = (0, _objectWithoutProperties2.default)(_ref, _excluded);
41
- var isString = typeof children === "string"; // prevent the `fullscreen` prop from being passed to the `DialogTitle` component
41
+ var isString = typeof children === "string";
42
+ var fullscreen = others.fullscreen; // prevent the `fullscreen` prop from being passed to the `DialogTitle` component
42
43
  // eslint-disable-next-line no-param-reassign
43
44
 
44
45
  delete others.fullscreen;
45
46
  var icon = customIcon || showIcon && (0, _iconVariant.default)(variant);
46
47
  return /*#__PURE__*/_react.default.createElement(_core.DialogTitle, (0, _extends2.default)({
47
- className: (0, _clsx.default)(classes.root, className),
48
+ className: (0, _clsx.default)(classes.root, className, fullscreen && "fullscreen"),
48
49
  disableTypography: true
49
50
  }, others), /*#__PURE__*/_react.default.createElement("div", {
50
51
  className: classes.messageContainer
@@ -1 +1 @@
1
- {"version":3,"file":"DialogTitle.js","names":["HvDialogTitle","classes","className","children","variant","showIcon","customIcon","others","isString","fullscreen","icon","root","messageContainer","textWithIcon","propTypes","PropTypes","string","shape","closeButton","isRequired","oneOf","bool","node","styles","name"],"sources":["../../../src/Dialog/DialogTitle/DialogTitle.js"],"sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { DialogTitle, withStyles } from \"@material-ui/core\";\nimport HvTypography from \"../../Typography\";\nimport iconVariant from \"../../utils/iconVariant\";\nimport styles from \"./styles\";\n\nconst HvDialogTitle = ({\n classes,\n className,\n children,\n variant = \"default\",\n showIcon = true,\n customIcon = null,\n ...others\n}) => {\n const isString = typeof children === \"string\";\n // prevent the `fullscreen` prop from being passed to the `DialogTitle` component\n // eslint-disable-next-line no-param-reassign\n delete others.fullscreen;\n\n const icon = customIcon || (showIcon && iconVariant(variant));\n\n return (\n <DialogTitle className={clsx(classes.root, className)} disableTypography {...others}>\n <div className={classes.messageContainer}>\n {icon}\n <div className={clsx({ [classes.textWithIcon]: icon })}>\n {!isString && children}\n {isString && <HvTypography variant=\"xxsTitle\">{children}</HvTypography>}\n </div>\n </div>\n </DialogTitle>\n );\n};\n\nHvDialogTitle.propTypes = {\n /**\n * Class names to be applied.\n */\n className: 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 (container for the title).\n */\n root: PropTypes.string,\n /**\n * Style applied to the container of the title\n */\n messageContainer: PropTypes.string,\n /**\n * Style applied to the text when the icon is present.\n */\n textWithIcon: PropTypes.string,\n /**\n * Style applied to the icon.\n */\n icon: PropTypes.string,\n /**\n * Style applied to the close button.\n */\n closeButton: PropTypes.string,\n }).isRequired,\n /**\n * Variant of the Dialog.\n */\n variant: PropTypes.oneOf([\"success\", \"warning\", \"error\", \"info\", \"default\"]),\n /**\n * Controls if the associated icon to the variant should be shown.\n */\n showIcon: PropTypes.bool,\n /**\n * Custom icon to replace the variant default.\n */\n customIcon: PropTypes.node,\n /**\n * Node to be render.\n */\n children: PropTypes.node.isRequired,\n};\n\nexport default withStyles(styles, { name: \"HvDialogTitle\" })(HvDialogTitle);\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,OAQhB;EAAA,IAPJC,OAOI,QAPJA,OAOI;EAAA,IANJC,SAMI,QANJA,SAMI;EAAA,IALJC,QAKI,QALJA,QAKI;EAAA,wBAJJC,OAII;EAAA,IAJJA,OAII,6BAJM,SAIN;EAAA,yBAHJC,QAGI;EAAA,IAHJA,QAGI,8BAHO,IAGP;EAAA,2BAFJC,UAEI;EAAA,IAFJA,UAEI,gCAFS,IAET;EAAA,IADDC,MACC;EACJ,IAAMC,QAAQ,GAAG,OAAOL,QAAP,KAAoB,QAArC,CADI,CAEJ;EACA;;EACA,OAAOI,MAAM,CAACE,UAAd;EAEA,IAAMC,IAAI,GAAGJ,UAAU,IAAKD,QAAQ,IAAI,0BAAYD,OAAZ,CAAxC;EAEA,oBACE,6BAAC,iBAAD;IAAa,SAAS,EAAE,mBAAKH,OAAO,CAACU,IAAb,EAAmBT,SAAnB,CAAxB;IAAuD,iBAAiB;EAAxE,GAA6EK,MAA7E,gBACE;IAAK,SAAS,EAAEN,OAAO,CAACW;EAAxB,GACGF,IADH,eAEE;IAAK,SAAS,EAAE,mBAA+BA,IAA/B,IAAQT,OAAO,CAACY,YAAhB;EAAhB,GACG,CAACL,QAAD,IAAaL,QADhB,EAEGK,QAAQ,iBAAI,6BAAC,mBAAD;IAAc,OAAO,EAAC;EAAtB,GAAkCL,QAAlC,CAFf,CAFF,CADF,CADF;AAWD,CA3BD;;AA6BA,wCAAAH,aAAa,CAACc,SAAd,GAA0B;EACxB;AACF;AACA;EACEZ,SAAS,EAAEa,mBAAUC,MAJG;;EAKxB;AACF;AACA;EACEf,OAAO,EAAEc,mBAAUE,KAAV,CAAgB;IACvB;AACJ;AACA;IACIN,IAAI,EAAEI,mBAAUC,MAJO;;IAKvB;AACJ;AACA;IACIJ,gBAAgB,EAAEG,mBAAUC,MARL;;IASvB;AACJ;AACA;IACIH,YAAY,EAAEE,mBAAUC,MAZD;;IAavB;AACJ;AACA;IACIN,IAAI,EAAEK,mBAAUC,MAhBO;;IAiBvB;AACJ;AACA;IACIE,WAAW,EAAEH,mBAAUC;EApBA,CAAhB,EAqBNG,UA7BqB;;EA8BxB;AACF;AACA;EACEf,OAAO,EAAEW,mBAAUK,KAAV,CAAgB,CAAC,SAAD,EAAY,SAAZ,EAAuB,OAAvB,EAAgC,MAAhC,EAAwC,SAAxC,CAAhB,CAjCe;;EAkCxB;AACF;AACA;EACEf,QAAQ,EAAEU,mBAAUM,IArCI;;EAsCxB;AACF;AACA;EACEf,UAAU,EAAES,mBAAUO,IAzCE;;EA0CxB;AACF;AACA;EACEnB,QAAQ,EAAEY,mBAAUO,IAAV,CAAeH;AA7CD,CAA1B;;eAgDe,sBAAWI,eAAX,EAAmB;EAAEC,IAAI,EAAE;AAAR,CAAnB,EAA8CxB,aAA9C,C"}
1
+ {"version":3,"file":"DialogTitle.js","names":["HvDialogTitle","classes","className","children","variant","showIcon","customIcon","others","isString","fullscreen","icon","root","messageContainer","textWithIcon","propTypes","PropTypes","string","shape","closeButton","isRequired","oneOf","bool","node","styles","name"],"sources":["../../../src/Dialog/DialogTitle/DialogTitle.js"],"sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { DialogTitle, withStyles } from \"@material-ui/core\";\nimport HvTypography from \"../../Typography\";\nimport iconVariant from \"../../utils/iconVariant\";\nimport styles from \"./styles\";\n\nconst HvDialogTitle = ({\n classes,\n className,\n children,\n variant = \"default\",\n showIcon = true,\n customIcon = null,\n ...others\n}) => {\n const isString = typeof children === \"string\";\n const { fullscreen } = others;\n\n // prevent the `fullscreen` prop from being passed to the `DialogTitle` component\n // eslint-disable-next-line no-param-reassign\n delete others.fullscreen;\n\n const icon = customIcon || (showIcon && iconVariant(variant));\n\n return (\n <DialogTitle\n className={clsx(classes.root, className, fullscreen ? \"fullscreen\" : \"\")}\n disableTypography\n {...others}\n >\n <div className={classes.messageContainer}>\n {icon}\n <div className={clsx({ [classes.textWithIcon]: icon })}>\n {!isString && children}\n {isString && <HvTypography variant=\"xxsTitle\">{children}</HvTypography>}\n </div>\n </div>\n </DialogTitle>\n );\n};\n\nHvDialogTitle.propTypes = {\n /**\n * Class names to be applied.\n */\n className: 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 (container for the title).\n */\n root: PropTypes.string,\n /**\n * Style applied to the container of the title\n */\n messageContainer: PropTypes.string,\n /**\n * Style applied to the text when the icon is present.\n */\n textWithIcon: PropTypes.string,\n /**\n * Style applied to the icon.\n */\n icon: PropTypes.string,\n /**\n * Style applied to the close button.\n */\n closeButton: PropTypes.string,\n }).isRequired,\n /**\n * Variant of the Dialog.\n */\n variant: PropTypes.oneOf([\"success\", \"warning\", \"error\", \"info\", \"default\"]),\n /**\n * Controls if the associated icon to the variant should be shown.\n */\n showIcon: PropTypes.bool,\n /**\n * Custom icon to replace the variant default.\n */\n customIcon: PropTypes.node,\n /**\n * Node to be render.\n */\n children: PropTypes.node.isRequired,\n};\n\nexport default withStyles(styles, { name: \"HvDialogTitle\" })(HvDialogTitle);\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,OAQhB;EAAA,IAPJC,OAOI,QAPJA,OAOI;EAAA,IANJC,SAMI,QANJA,SAMI;EAAA,IALJC,QAKI,QALJA,QAKI;EAAA,wBAJJC,OAII;EAAA,IAJJA,OAII,6BAJM,SAIN;EAAA,yBAHJC,QAGI;EAAA,IAHJA,QAGI,8BAHO,IAGP;EAAA,2BAFJC,UAEI;EAAA,IAFJA,UAEI,gCAFS,IAET;EAAA,IADDC,MACC;EACJ,IAAMC,QAAQ,GAAG,OAAOL,QAAP,KAAoB,QAArC;EACA,IAAQM,UAAR,GAAuBF,MAAvB,CAAQE,UAAR,CAFI,CAIJ;EACA;;EACA,OAAOF,MAAM,CAACE,UAAd;EAEA,IAAMC,IAAI,GAAGJ,UAAU,IAAKD,QAAQ,IAAI,0BAAYD,OAAZ,CAAxC;EAEA,oBACE,6BAAC,iBAAD;IACE,SAAS,EAAE,mBAAKH,OAAO,CAACU,IAAb,EAAmBT,SAAnB,EAA8BO,UAA9B,IAA2C,YAA3C,CADb;IAEE,iBAAiB;EAFnB,GAGMF,MAHN,gBAKE;IAAK,SAAS,EAAEN,OAAO,CAACW;EAAxB,GACGF,IADH,eAEE;IAAK,SAAS,EAAE,mBAA+BA,IAA/B,IAAQT,OAAO,CAACY,YAAhB;EAAhB,GACG,CAACL,QAAD,IAAaL,QADhB,EAEGK,QAAQ,iBAAI,6BAAC,mBAAD;IAAc,OAAO,EAAC;EAAtB,GAAkCL,QAAlC,CAFf,CAFF,CALF,CADF;AAeD,CAjCD;;AAmCA,wCAAAH,aAAa,CAACc,SAAd,GAA0B;EACxB;AACF;AACA;EACEZ,SAAS,EAAEa,mBAAUC,MAJG;;EAKxB;AACF;AACA;EACEf,OAAO,EAAEc,mBAAUE,KAAV,CAAgB;IACvB;AACJ;AACA;IACIN,IAAI,EAAEI,mBAAUC,MAJO;;IAKvB;AACJ;AACA;IACIJ,gBAAgB,EAAEG,mBAAUC,MARL;;IASvB;AACJ;AACA;IACIH,YAAY,EAAEE,mBAAUC,MAZD;;IAavB;AACJ;AACA;IACIN,IAAI,EAAEK,mBAAUC,MAhBO;;IAiBvB;AACJ;AACA;IACIE,WAAW,EAAEH,mBAAUC;EApBA,CAAhB,EAqBNG,UA7BqB;;EA8BxB;AACF;AACA;EACEf,OAAO,EAAEW,mBAAUK,KAAV,CAAgB,CAAC,SAAD,EAAY,SAAZ,EAAuB,OAAvB,EAAgC,MAAhC,EAAwC,SAAxC,CAAhB,CAjCe;;EAkCxB;AACF;AACA;EACEf,QAAQ,EAAEU,mBAAUM,IArCI;;EAsCxB;AACF;AACA;EACEf,UAAU,EAAES,mBAAUO,IAzCE;;EA0CxB;AACF;AACA;EACEnB,QAAQ,EAAEY,mBAAUO,IAAV,CAAeH;AA7CD,CAA1B;;eAgDe,sBAAWI,eAAX,EAAmB;EAAEC,IAAI,EAAE;AAAR,CAAnB,EAA8CxB,aAA9C,C"}
@@ -10,8 +10,9 @@ var styles = function styles(theme) {
10
10
  root: {
11
11
  padding: theme.hvSpacing("sm"),
12
12
  margin: 0,
13
- display: "flex",
14
- justifyContent: "space-between"
13
+ "&:not(.fullscreen)": {
14
+ flex: 1
15
+ }
15
16
  },
16
17
  messageContainer: {
17
18
  display: "flex",
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","theme","root","padding","hvSpacing","margin","display","justifyContent","messageContainer","alignItems","textWithIcon","marginLeft","marginRight","icon","hv","spacing","md","width","height"],"sources":["../../../src/Dialog/DialogTitle/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n padding: theme.hvSpacing(\"sm\"),\n margin: 0,\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n messageContainer: {\n display: \"flex\",\n alignItems: \"center\",\n },\n textWithIcon: {\n marginLeft: theme.hvSpacing(\"xs\"),\n // 32px is the icon width\n marginRight: `calc(32px + ${theme.hvSpacing(\"xs\")})`,\n },\n icon: {\n marginRight: theme.hv.spacing.md,\n width: 48,\n height: 48,\n },\n});\n\nexport default styles;\n"],"mappings":";;;;;;;AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,IAAI,EAAE;MACJC,OAAO,EAAEF,KAAK,CAACG,SAAN,CAAgB,IAAhB,CADL;MAEJC,MAAM,EAAE,CAFJ;MAGJC,OAAO,EAAE,MAHL;MAIJC,cAAc,EAAE;IAJZ,CADmB;IAOzBC,gBAAgB,EAAE;MAChBF,OAAO,EAAE,MADO;MAEhBG,UAAU,EAAE;IAFI,CAPO;IAWzBC,YAAY,EAAE;MACZC,UAAU,EAAEV,KAAK,CAACG,SAAN,CAAgB,IAAhB,CADA;MAEZ;MACAQ,WAAW,wBAAiBX,KAAK,CAACG,SAAN,CAAgB,IAAhB,CAAjB;IAHC,CAXW;IAgBzBS,IAAI,EAAE;MACJD,WAAW,EAAEX,KAAK,CAACa,EAAN,CAASC,OAAT,CAAiBC,EAD1B;MAEJC,KAAK,EAAE,EAFH;MAGJC,MAAM,EAAE;IAHJ;EAhBmB,CAAZ;AAAA,CAAf;;eAuBelB,M"}
1
+ {"version":3,"file":"styles.js","names":["styles","theme","root","padding","hvSpacing","margin","flex","messageContainer","display","alignItems","textWithIcon","marginLeft","marginRight","icon","hv","spacing","md","width","height"],"sources":["../../../src/Dialog/DialogTitle/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n padding: theme.hvSpacing(\"sm\"),\n margin: 0,\n \"&:not(.fullscreen)\": {\n flex: 1,\n },\n },\n messageContainer: {\n display: \"flex\",\n alignItems: \"center\",\n },\n textWithIcon: {\n marginLeft: theme.hvSpacing(\"xs\"),\n // 32px is the icon width\n marginRight: `calc(32px + ${theme.hvSpacing(\"xs\")})`,\n },\n icon: {\n marginRight: theme.hv.spacing.md,\n width: 48,\n height: 48,\n },\n});\n\nexport default styles;\n"],"mappings":";;;;;;;AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,IAAI,EAAE;MACJC,OAAO,EAAEF,KAAK,CAACG,SAAN,CAAgB,IAAhB,CADL;MAEJC,MAAM,EAAE,CAFJ;MAGJ,sBAAsB;QACpBC,IAAI,EAAE;MADc;IAHlB,CADmB;IAQzBC,gBAAgB,EAAE;MAChBC,OAAO,EAAE,MADO;MAEhBC,UAAU,EAAE;IAFI,CARO;IAYzBC,YAAY,EAAE;MACZC,UAAU,EAAEV,KAAK,CAACG,SAAN,CAAgB,IAAhB,CADA;MAEZ;MACAQ,WAAW,wBAAiBX,KAAK,CAACG,SAAN,CAAgB,IAAhB,CAAjB;IAHC,CAZW;IAiBzBS,IAAI,EAAE;MACJD,WAAW,EAAEX,KAAK,CAACa,EAAN,CAASC,OAAT,CAAiBC,EAD1B;MAEJC,KAAK,EAAE,EAFH;MAGJC,MAAM,EAAE;IAHJ;EAjBmB,CAAZ;AAAA,CAAf;;eAwBelB,M"}
@@ -20,7 +20,9 @@ var styles = function styles(theme) {
20
20
  overflow: "auto",
21
21
  boxShadow: theme.hv.shadows[1],
22
22
  "&:not(.fullscreen)": {
23
- maxHeight: "calc(100% - 200px)"
23
+ maxHeight: "calc(100% - 200px)",
24
+ display: "flex",
25
+ flexDirection: "column"
24
26
  }
25
27
  },
26
28
  closeButton: {
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","theme","background","hv","palette","atmosphere","atmo4","paper","atmo1","padding","overflow","boxShadow","shadows","maxHeight","closeButton","minWidth","position","top","hvSpacing","right"],"sources":["../../src/Dialog/styles.js"],"sourcesContent":["import fade from \"../utils/hexToRgbA\";\n\nconst styles = (theme) => ({\n background: {\n background: fade(theme.hv.palette.atmosphere.atmo4, 0.8),\n },\n paper: {\n background: `${theme.hv.palette.atmosphere.atmo1}`,\n padding: \"0px\",\n overflow: \"auto\",\n boxShadow: theme.hv.shadows[1],\n \"&:not(.fullscreen)\": {\n maxHeight: \"calc(100% - 200px)\",\n },\n },\n closeButton: {\n padding: 0,\n minWidth: \"inherit\",\n position: \"absolute\",\n top: theme.hvSpacing(\"sm\"),\n right: theme.hvSpacing(\"sm\"),\n },\n});\n\nexport default styles;\n"],"mappings":";;;;;;;;;AAAA;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,UAAU,EAAE;MACVA,UAAU,EAAE,wBAAKD,KAAK,CAACE,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC,KAAjC,EAAwC,GAAxC;IADF,CADa;IAIzBC,KAAK,EAAE;MACLL,UAAU,YAAKD,KAAK,CAACE,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BG,KAAjC,CADL;MAELC,OAAO,EAAE,KAFJ;MAGLC,QAAQ,EAAE,MAHL;MAILC,SAAS,EAAEV,KAAK,CAACE,EAAN,CAASS,OAAT,CAAiB,CAAjB,CAJN;MAKL,sBAAsB;QACpBC,SAAS,EAAE;MADS;IALjB,CAJkB;IAazBC,WAAW,EAAE;MACXL,OAAO,EAAE,CADE;MAEXM,QAAQ,EAAE,SAFC;MAGXC,QAAQ,EAAE,UAHC;MAIXC,GAAG,EAAEhB,KAAK,CAACiB,SAAN,CAAgB,IAAhB,CAJM;MAKXC,KAAK,EAAElB,KAAK,CAACiB,SAAN,CAAgB,IAAhB;IALI;EAbY,CAAZ;AAAA,CAAf;;eAsBelB,M"}
1
+ {"version":3,"file":"styles.js","names":["styles","theme","background","hv","palette","atmosphere","atmo4","paper","atmo1","padding","overflow","boxShadow","shadows","maxHeight","display","flexDirection","closeButton","minWidth","position","top","hvSpacing","right"],"sources":["../../src/Dialog/styles.js"],"sourcesContent":["import fade from \"../utils/hexToRgbA\";\n\nconst styles = (theme) => ({\n background: {\n background: fade(theme.hv.palette.atmosphere.atmo4, 0.8),\n },\n paper: {\n background: `${theme.hv.palette.atmosphere.atmo1}`,\n padding: \"0px\",\n overflow: \"auto\",\n boxShadow: theme.hv.shadows[1],\n \"&:not(.fullscreen)\": {\n maxHeight: \"calc(100% - 200px)\",\n display: \"flex\",\n flexDirection: \"column\",\n },\n },\n closeButton: {\n padding: 0,\n minWidth: \"inherit\",\n position: \"absolute\",\n top: theme.hvSpacing(\"sm\"),\n right: theme.hvSpacing(\"sm\"),\n },\n});\n\nexport default styles;\n"],"mappings":";;;;;;;;;AAAA;;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,UAAU,EAAE;MACVA,UAAU,EAAE,wBAAKD,KAAK,CAACE,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC,KAAjC,EAAwC,GAAxC;IADF,CADa;IAIzBC,KAAK,EAAE;MACLL,UAAU,YAAKD,KAAK,CAACE,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BG,KAAjC,CADL;MAELC,OAAO,EAAE,KAFJ;MAGLC,QAAQ,EAAE,MAHL;MAILC,SAAS,EAAEV,KAAK,CAACE,EAAN,CAASS,OAAT,CAAiB,CAAjB,CAJN;MAKL,sBAAsB;QACpBC,SAAS,EAAE,oBADS;QAEpBC,OAAO,EAAE,MAFW;QAGpBC,aAAa,EAAE;MAHK;IALjB,CAJkB;IAezBC,WAAW,EAAE;MACXP,OAAO,EAAE,CADE;MAEXQ,QAAQ,EAAE,SAFC;MAGXC,QAAQ,EAAE,UAHC;MAIXC,GAAG,EAAElB,KAAK,CAACmB,SAAN,CAAgB,IAAhB,CAJM;MAKXC,KAAK,EAAEpB,KAAK,CAACmB,SAAN,CAAgB,IAAhB;IALI;EAfY,CAAZ;AAAA,CAAf;;eAwBepB,M"}
@@ -159,7 +159,9 @@ var TreeViewItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
159
159
  }, [registerNode, unregisterNode, parentId, index, nodeId, expandable, disabledProp, id, selectable, onFocus, payload]);
160
160
  (0, _react.useEffect)(function () {
161
161
  if (mapFirstChar && unMapFirstChar && label) {
162
- mapFirstChar(nodeId, contentRef.current.textContent.substring(0, 1).toLowerCase());
162
+ var _contentRef$current;
163
+
164
+ mapFirstChar(nodeId, (_contentRef$current = contentRef.current) === null || _contentRef$current === void 0 ? void 0 : _contentRef$current.textContent.substring(0, 1).toLowerCase());
163
165
  return function () {
164
166
  unMapFirstChar(nodeId);
165
167
  };
@@ -1 +1 @@
1
- {"version":3,"file":"TreeViewItem.js","names":["preventSelection","event","disabled","shiftKey","ctrlKey","metaKey","preventDefault","TreeViewItem","React","forwardRef","props","ref","idProp","id","className","classes","disabledProp","selectableProp","selectable","nodeId","icon","label","payload","onClick","onMouseDown","onFocus","children","others","treeViewControlContext","TreeViewControlContext","TreeViewStateContext","isExpanded","isSelected","isFocused","isDisabled","treeId","mode","collapsible","toggleExpansion","multiSelect","selectNode","selectRange","disabledItemsFocusable","registerNode","unregisterNode","mapFirstChar","unMapFirstChar","focus","treeviewMode","treeitemElement","setTreeitemElement","contentRef","handleRef","descendant","element","index","parentId","level","expandable","Boolean","Array","isArray","length","expanded","focused","selected","idAttribute","undefined","current","textContent","substring","toLowerCase","ariaSelected","handleFocus","target","currentTarget","ownerDocument","document","getElementById","preventScroll","unfocusable","handleExpansion","multiple","handleSelection","end","handleMouseDown","handleClick","handleKeyDown","isEventHandled","key","altKey","stopPropagation","renderedContent","content","paddingLeft","role","tabIndex","onKeyDown","renderedChildren","group","node","unselected","unselectable","collapsed","propTypes","PropTypes","string","shape","isRequired","bool","any","func","styles","name"],"sources":["../../../src/VerticalNavigation/TreeView/TreeViewItem.js"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useMemo, useRef, useState } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { withStyles } from \"@material-ui/core\";\n\nimport { DropDownXS, DropUpXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport HvTypography from \"../../Typography\";\n\nimport { TreeViewControlContext, TreeViewStateContext } from \"./TreeViewContexts\";\n\nimport { setId, useForkRef } from \"../../utils\";\n\nimport { DescendantProvider, useDescendant } from \"./descendants\";\n\nimport styles from \"./styles\";\n\nconst preventSelection = (event, disabled) => {\n if (event.shiftKey || event.ctrlKey || event.metaKey || disabled) {\n // Prevent text selection\n event.preventDefault();\n }\n};\n\nconst TreeViewItem = React.forwardRef((props, ref) => {\n const {\n id: idProp,\n className,\n classes,\n\n disabled: disabledProp = false,\n\n selectable: selectableProp,\n\n nodeId,\n icon = null,\n label,\n payload,\n\n onClick,\n onMouseDown,\n onFocus,\n\n children,\n\n ...others\n } = props;\n\n const treeViewControlContext = useContext(TreeViewControlContext);\n const { isExpanded, isSelected, isFocused, isDisabled } = useContext(TreeViewStateContext);\n\n const {\n treeId,\n mode,\n collapsible,\n toggleExpansion,\n multiSelect,\n selectNode,\n selectRange,\n disabledItemsFocusable,\n registerNode,\n unregisterNode,\n mapFirstChar,\n unMapFirstChar,\n focus,\n } = treeViewControlContext;\n\n const treeviewMode = mode === \"treeview\";\n\n let id = null;\n\n if (idProp != null) {\n id = idProp;\n } else if (treeId && nodeId) {\n id = `${treeId}-${nodeId}`;\n }\n\n const [treeitemElement, setTreeitemElement] = useState(null);\n const contentRef = useRef(null);\n const handleRef = useForkRef(setTreeitemElement, ref);\n\n const descendant = useMemo(\n () => ({\n element: treeitemElement,\n id: nodeId,\n }),\n [nodeId, treeitemElement]\n );\n\n const { index, parentId, level } = useDescendant(descendant);\n\n const expandable = collapsible && Boolean(Array.isArray(children) ? children.length : children);\n const expanded = isExpanded ? isExpanded(nodeId) : false;\n const focused = isFocused ? isFocused(nodeId) : false;\n const selected = isSelected ? isSelected(nodeId) : false;\n const disabled = isDisabled ? isDisabled(nodeId) : false;\n\n const selectable = selectableProp != null ? selectableProp : !collapsible || !expandable;\n\n useEffect(() => {\n // On the first render a node's index will be -1. We want to wait for the real index.\n if (registerNode && unregisterNode && index !== -1) {\n registerNode({\n id: nodeId,\n idAttribute: id,\n index,\n parentId,\n selectable,\n expandable,\n disabled: disabledProp,\n onFocus,\n payload,\n });\n\n return () => {\n unregisterNode(nodeId);\n };\n }\n\n return undefined;\n }, [\n registerNode,\n unregisterNode,\n parentId,\n index,\n nodeId,\n expandable,\n disabledProp,\n id,\n selectable,\n onFocus,\n payload,\n ]);\n\n useEffect(() => {\n if (mapFirstChar && unMapFirstChar && label) {\n mapFirstChar(nodeId, contentRef.current.textContent.substring(0, 1).toLowerCase());\n\n return () => {\n unMapFirstChar(nodeId);\n };\n }\n return undefined;\n }, [mapFirstChar, unMapFirstChar, nodeId, label]);\n\n let ariaSelected;\n if (multiSelect) {\n ariaSelected = selected;\n } else if (selected) {\n /* single-selection trees unset aria-selected on un-selected items.\n *\n * If the tree does not support multiple selection, aria-selected\n * is set to true for the selected node and it is not present on any other node in the tree.\n * Source: https://www.w3.org/TR/wai-aria-practices/#TreeView\n */\n ariaSelected = true;\n }\n\n const handleFocus = useCallback(\n (event) => {\n // DOM focus stays on the tree which manages focus with aria-activedescendant\n if (event.target === event.currentTarget) {\n (event.target.ownerDocument || document)\n .getElementById(treeId)\n .focus({ preventScroll: true });\n }\n\n const unfocusable = !disabledItemsFocusable && disabled;\n if (!focused && event.currentTarget === event.target && !unfocusable) {\n focus(event, nodeId);\n }\n },\n [disabled, disabledItemsFocusable, focus, focused, nodeId, treeId]\n );\n\n const handleExpansion = useCallback(\n (event) => {\n if (!disabled) {\n if (treeviewMode && !focused) {\n focus(event, nodeId);\n }\n\n const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n // If already expanded and trying to toggle selection don't close\n if (expandable && !(multiple && isExpanded(nodeId))) {\n toggleExpansion(event, nodeId);\n }\n }\n },\n [\n disabled,\n expandable,\n focus,\n focused,\n isExpanded,\n multiSelect,\n nodeId,\n toggleExpansion,\n treeviewMode,\n ]\n );\n\n const handleSelection = useCallback(\n (event) => {\n if (selectable && !disabled) {\n if (treeviewMode && !focused) {\n focus(event, nodeId);\n }\n\n const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n if (multiple) {\n if (event.shiftKey) {\n selectRange(event, { end: nodeId });\n } else {\n selectNode(event, nodeId, true);\n }\n } else {\n selectNode(event, nodeId);\n }\n }\n },\n [\n disabled,\n focus,\n focused,\n multiSelect,\n nodeId,\n selectNode,\n selectRange,\n selectable,\n treeviewMode,\n ]\n );\n\n const handleMouseDown = useCallback(\n (event) => {\n preventSelection(event, disabled);\n\n if (onMouseDown) {\n onMouseDown(event);\n }\n },\n [disabled, onMouseDown]\n );\n\n const handleClick = useCallback(\n (event) => {\n if (!disabled) {\n if (expandable) {\n handleExpansion(event);\n }\n\n if (selectable) {\n handleSelection(event);\n }\n }\n\n if (onClick) {\n onClick(event);\n }\n },\n [disabled, expandable, handleExpansion, handleSelection, onClick, selectable]\n );\n\n const handleKeyDown = useCallback(\n (event) => {\n let isEventHandled = false;\n const { key } = event;\n\n if (event.altKey || event.ctrlKey || event.metaKey || event.currentTarget !== event.target) {\n return;\n }\n if (contentRef.current === event.currentTarget) {\n if (key === \"Enter\" || key === \" \") {\n if (expandable) {\n isEventHandled = handleExpansion(event);\n }\n\n if (selectable) {\n isEventHandled = handleSelection(event);\n }\n }\n\n if (isEventHandled) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n },\n [expandable, handleExpansion, handleSelection, selectable]\n );\n\n const renderedContent = useMemo(\n () => (\n <HvTypography\n id={setId(id, \"button\")}\n component=\"div\"\n innerRef={contentRef}\n className={classes.content}\n onClick={handleClick}\n onMouseDown={handleMouseDown}\n style={{\n paddingLeft: (expandable || icon != null ? 0 : 10) + level * (collapsible ? 32 : 10),\n }}\n {...(treeviewMode\n ? {\n role: \"button\",\n tabIndex: -1,\n onFocus: handleFocus,\n }\n : {\n role: \"button\",\n tabIndex: selectable || expandable ? 0 : -1,\n onKeyDown: handleKeyDown,\n \"aria-current\": selectable && selected ? \"page\" : undefined,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-controls\": expandable ? setId(id, \"group\") : undefined,\n })}\n >\n {expandable && (expanded ? <DropUpXS /> : <DropDownXS />)}\n {icon}\n {label}\n </HvTypography>\n ),\n [\n id,\n classes.content,\n handleClick,\n handleMouseDown,\n expandable,\n level,\n collapsible,\n treeviewMode,\n handleFocus,\n handleKeyDown,\n selectable,\n selected,\n expanded,\n icon,\n label,\n ]\n );\n\n const renderedChildren = useMemo(\n () =>\n children && (\n <ul\n id={setId(id, \"group\")}\n className={classes.group}\n role={treeviewMode ? \"group\" : undefined}\n >\n {children}\n </ul>\n ),\n [children, classes.group, id, treeviewMode]\n );\n\n return (\n <li\n ref={handleRef}\n id={id}\n className={clsx(classes.node, className, {\n [classes.disabled]: disabled,\n [classes.expandable]: expandable,\n [classes.collapsed]: expandable && !expanded,\n [classes.expanded]: expandable && expanded,\n [classes.selectable]: !disabled && selectable,\n [classes.unselectable]: !disabled && !selectable,\n [classes.selected]: !disabled && selectable && selected,\n [classes.unselected]: !disabled && selectable && !selected,\n [classes.focused]: focused,\n })}\n data-hasicon={icon != null ? true : undefined}\n {...(mode === \"treeview\" && {\n role: \"treeitem\",\n \"aria-selected\": ariaSelected,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-disabled\": disabled ? true : undefined,\n })}\n {...others}\n >\n {renderedContent}\n <DescendantProvider id={nodeId} level={level + 1}>\n {renderedChildren}\n </DescendantProvider>\n </li>\n );\n});\n\nTreeViewItem.propTypes = {\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied to the Radio button.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root of the component.\n */\n node: PropTypes.string,\n /**\n * Style applied to the content.\n */\n content: PropTypes.string,\n /**\n * Style applied to the group.\n */\n group: PropTypes.string,\n /**\n * Style applied when item is disabled.\n */\n disabled: PropTypes.string,\n /**\n * Style applied when item is expandable.\n */\n expandable: PropTypes.string,\n /**\n * Style applied when item is collapsed.\n */\n collapsed: PropTypes.string,\n /**\n * Style applied when item is expanded.\n */\n expanded: PropTypes.string,\n /**\n * Style applied when item is selectable.\n */\n selectable: PropTypes.string,\n /**\n * Style applied when item is unselectable.\n */\n unselectable: PropTypes.string,\n /**\n * Style applied when item is selected.\n */\n selected: PropTypes.string,\n /**\n * Style applied when item is unselectable.\n */\n unselected: PropTypes.string,\n /**\n * Style applied when item is focused.\n */\n focused: PropTypes.string,\n }).isRequired,\n /**\n * Is the node disabled.\n */\n disabled: PropTypes.bool,\n /**\n * Can the node be selected.\n */\n selectable: PropTypes.bool,\n /**\n * The id of the node.\n */\n nodeId: PropTypes.string.isRequired,\n /**\n * The icon to display next to the node's label.\n */\n icon: PropTypes.node,\n /**\n * The item label.\n */\n label: PropTypes.node.isRequired,\n /**\n * The node payload.\n */\n // eslint-disable-next-line react/forbid-prop-types\n payload: PropTypes.any,\n /**\n * @ignore\n */\n onClick: PropTypes.func,\n /**\n * @ignore\n */\n onMouseDown: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n};\n\nexport default withStyles(styles, {\n name: \"HvVerticalNavigationTreeViewItem\",\n})(TreeViewItem);\n"],"mappings":"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"}
1
+ {"version":3,"file":"TreeViewItem.js","names":["preventSelection","event","disabled","shiftKey","ctrlKey","metaKey","preventDefault","TreeViewItem","React","forwardRef","props","ref","idProp","id","className","classes","disabledProp","selectableProp","selectable","nodeId","icon","label","payload","onClick","onMouseDown","onFocus","children","others","treeViewControlContext","TreeViewControlContext","TreeViewStateContext","isExpanded","isSelected","isFocused","isDisabled","treeId","mode","collapsible","toggleExpansion","multiSelect","selectNode","selectRange","disabledItemsFocusable","registerNode","unregisterNode","mapFirstChar","unMapFirstChar","focus","treeviewMode","treeitemElement","setTreeitemElement","contentRef","handleRef","descendant","element","index","parentId","level","expandable","Boolean","Array","isArray","length","expanded","focused","selected","idAttribute","undefined","current","textContent","substring","toLowerCase","ariaSelected","handleFocus","target","currentTarget","ownerDocument","document","getElementById","preventScroll","unfocusable","handleExpansion","multiple","handleSelection","end","handleMouseDown","handleClick","handleKeyDown","isEventHandled","key","altKey","stopPropagation","renderedContent","content","paddingLeft","role","tabIndex","onKeyDown","renderedChildren","group","node","unselected","unselectable","collapsed","propTypes","PropTypes","string","shape","isRequired","bool","any","func","styles","name"],"sources":["../../../src/VerticalNavigation/TreeView/TreeViewItem.js"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useMemo, useRef, useState } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { withStyles } from \"@material-ui/core\";\n\nimport { DropDownXS, DropUpXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport HvTypography from \"../../Typography\";\n\nimport { TreeViewControlContext, TreeViewStateContext } from \"./TreeViewContexts\";\n\nimport { setId, useForkRef } from \"../../utils\";\n\nimport { DescendantProvider, useDescendant } from \"./descendants\";\n\nimport styles from \"./styles\";\n\nconst preventSelection = (event, disabled) => {\n if (event.shiftKey || event.ctrlKey || event.metaKey || disabled) {\n // Prevent text selection\n event.preventDefault();\n }\n};\n\nconst TreeViewItem = React.forwardRef((props, ref) => {\n const {\n id: idProp,\n className,\n classes,\n\n disabled: disabledProp = false,\n\n selectable: selectableProp,\n\n nodeId,\n icon = null,\n label,\n payload,\n\n onClick,\n onMouseDown,\n onFocus,\n\n children,\n\n ...others\n } = props;\n\n const treeViewControlContext = useContext(TreeViewControlContext);\n const { isExpanded, isSelected, isFocused, isDisabled } = useContext(TreeViewStateContext);\n\n const {\n treeId,\n mode,\n collapsible,\n toggleExpansion,\n multiSelect,\n selectNode,\n selectRange,\n disabledItemsFocusable,\n registerNode,\n unregisterNode,\n mapFirstChar,\n unMapFirstChar,\n focus,\n } = treeViewControlContext;\n\n const treeviewMode = mode === \"treeview\";\n\n let id = null;\n\n if (idProp != null) {\n id = idProp;\n } else if (treeId && nodeId) {\n id = `${treeId}-${nodeId}`;\n }\n\n const [treeitemElement, setTreeitemElement] = useState(null);\n const contentRef = useRef(null);\n const handleRef = useForkRef(setTreeitemElement, ref);\n\n const descendant = useMemo(\n () => ({\n element: treeitemElement,\n id: nodeId,\n }),\n [nodeId, treeitemElement]\n );\n\n const { index, parentId, level } = useDescendant(descendant);\n\n const expandable = collapsible && Boolean(Array.isArray(children) ? children.length : children);\n const expanded = isExpanded ? isExpanded(nodeId) : false;\n const focused = isFocused ? isFocused(nodeId) : false;\n const selected = isSelected ? isSelected(nodeId) : false;\n const disabled = isDisabled ? isDisabled(nodeId) : false;\n\n const selectable = selectableProp != null ? selectableProp : !collapsible || !expandable;\n\n useEffect(() => {\n // On the first render a node's index will be -1. We want to wait for the real index.\n if (registerNode && unregisterNode && index !== -1) {\n registerNode({\n id: nodeId,\n idAttribute: id,\n index,\n parentId,\n selectable,\n expandable,\n disabled: disabledProp,\n onFocus,\n payload,\n });\n\n return () => {\n unregisterNode(nodeId);\n };\n }\n\n return undefined;\n }, [\n registerNode,\n unregisterNode,\n parentId,\n index,\n nodeId,\n expandable,\n disabledProp,\n id,\n selectable,\n onFocus,\n payload,\n ]);\n\n useEffect(() => {\n if (mapFirstChar && unMapFirstChar && label) {\n mapFirstChar(nodeId, contentRef.current?.textContent.substring(0, 1).toLowerCase());\n\n return () => {\n unMapFirstChar(nodeId);\n };\n }\n return undefined;\n }, [mapFirstChar, unMapFirstChar, nodeId, label]);\n\n let ariaSelected;\n if (multiSelect) {\n ariaSelected = selected;\n } else if (selected) {\n /* single-selection trees unset aria-selected on un-selected items.\n *\n * If the tree does not support multiple selection, aria-selected\n * is set to true for the selected node and it is not present on any other node in the tree.\n * Source: https://www.w3.org/TR/wai-aria-practices/#TreeView\n */\n ariaSelected = true;\n }\n\n const handleFocus = useCallback(\n (event) => {\n // DOM focus stays on the tree which manages focus with aria-activedescendant\n if (event.target === event.currentTarget) {\n (event.target.ownerDocument || document)\n .getElementById(treeId)\n .focus({ preventScroll: true });\n }\n\n const unfocusable = !disabledItemsFocusable && disabled;\n if (!focused && event.currentTarget === event.target && !unfocusable) {\n focus(event, nodeId);\n }\n },\n [disabled, disabledItemsFocusable, focus, focused, nodeId, treeId]\n );\n\n const handleExpansion = useCallback(\n (event) => {\n if (!disabled) {\n if (treeviewMode && !focused) {\n focus(event, nodeId);\n }\n\n const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n // If already expanded and trying to toggle selection don't close\n if (expandable && !(multiple && isExpanded(nodeId))) {\n toggleExpansion(event, nodeId);\n }\n }\n },\n [\n disabled,\n expandable,\n focus,\n focused,\n isExpanded,\n multiSelect,\n nodeId,\n toggleExpansion,\n treeviewMode,\n ]\n );\n\n const handleSelection = useCallback(\n (event) => {\n if (selectable && !disabled) {\n if (treeviewMode && !focused) {\n focus(event, nodeId);\n }\n\n const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n if (multiple) {\n if (event.shiftKey) {\n selectRange(event, { end: nodeId });\n } else {\n selectNode(event, nodeId, true);\n }\n } else {\n selectNode(event, nodeId);\n }\n }\n },\n [\n disabled,\n focus,\n focused,\n multiSelect,\n nodeId,\n selectNode,\n selectRange,\n selectable,\n treeviewMode,\n ]\n );\n\n const handleMouseDown = useCallback(\n (event) => {\n preventSelection(event, disabled);\n\n if (onMouseDown) {\n onMouseDown(event);\n }\n },\n [disabled, onMouseDown]\n );\n\n const handleClick = useCallback(\n (event) => {\n if (!disabled) {\n if (expandable) {\n handleExpansion(event);\n }\n\n if (selectable) {\n handleSelection(event);\n }\n }\n\n if (onClick) {\n onClick(event);\n }\n },\n [disabled, expandable, handleExpansion, handleSelection, onClick, selectable]\n );\n\n const handleKeyDown = useCallback(\n (event) => {\n let isEventHandled = false;\n const { key } = event;\n\n if (event.altKey || event.ctrlKey || event.metaKey || event.currentTarget !== event.target) {\n return;\n }\n if (contentRef.current === event.currentTarget) {\n if (key === \"Enter\" || key === \" \") {\n if (expandable) {\n isEventHandled = handleExpansion(event);\n }\n\n if (selectable) {\n isEventHandled = handleSelection(event);\n }\n }\n\n if (isEventHandled) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n },\n [expandable, handleExpansion, handleSelection, selectable]\n );\n\n const renderedContent = useMemo(\n () => (\n <HvTypography\n id={setId(id, \"button\")}\n component=\"div\"\n innerRef={contentRef}\n className={classes.content}\n onClick={handleClick}\n onMouseDown={handleMouseDown}\n style={{\n paddingLeft: (expandable || icon != null ? 0 : 10) + level * (collapsible ? 32 : 10),\n }}\n {...(treeviewMode\n ? {\n role: \"button\",\n tabIndex: -1,\n onFocus: handleFocus,\n }\n : {\n role: \"button\",\n tabIndex: selectable || expandable ? 0 : -1,\n onKeyDown: handleKeyDown,\n \"aria-current\": selectable && selected ? \"page\" : undefined,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-controls\": expandable ? setId(id, \"group\") : undefined,\n })}\n >\n {expandable && (expanded ? <DropUpXS /> : <DropDownXS />)}\n {icon}\n {label}\n </HvTypography>\n ),\n [\n id,\n classes.content,\n handleClick,\n handleMouseDown,\n expandable,\n level,\n collapsible,\n treeviewMode,\n handleFocus,\n handleKeyDown,\n selectable,\n selected,\n expanded,\n icon,\n label,\n ]\n );\n\n const renderedChildren = useMemo(\n () =>\n children && (\n <ul\n id={setId(id, \"group\")}\n className={classes.group}\n role={treeviewMode ? \"group\" : undefined}\n >\n {children}\n </ul>\n ),\n [children, classes.group, id, treeviewMode]\n );\n\n return (\n <li\n ref={handleRef}\n id={id}\n className={clsx(classes.node, className, {\n [classes.disabled]: disabled,\n [classes.expandable]: expandable,\n [classes.collapsed]: expandable && !expanded,\n [classes.expanded]: expandable && expanded,\n [classes.selectable]: !disabled && selectable,\n [classes.unselectable]: !disabled && !selectable,\n [classes.selected]: !disabled && selectable && selected,\n [classes.unselected]: !disabled && selectable && !selected,\n [classes.focused]: focused,\n })}\n data-hasicon={icon != null ? true : undefined}\n {...(mode === \"treeview\" && {\n role: \"treeitem\",\n \"aria-selected\": ariaSelected,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-disabled\": disabled ? true : undefined,\n })}\n {...others}\n >\n {renderedContent}\n <DescendantProvider id={nodeId} level={level + 1}>\n {renderedChildren}\n </DescendantProvider>\n </li>\n );\n});\n\nTreeViewItem.propTypes = {\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied to the Radio button.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root of the component.\n */\n node: PropTypes.string,\n /**\n * Style applied to the content.\n */\n content: PropTypes.string,\n /**\n * Style applied to the group.\n */\n group: PropTypes.string,\n /**\n * Style applied when item is disabled.\n */\n disabled: PropTypes.string,\n /**\n * Style applied when item is expandable.\n */\n expandable: PropTypes.string,\n /**\n * Style applied when item is collapsed.\n */\n collapsed: PropTypes.string,\n /**\n * Style applied when item is expanded.\n */\n expanded: PropTypes.string,\n /**\n * Style applied when item is selectable.\n */\n selectable: PropTypes.string,\n /**\n * Style applied when item is unselectable.\n */\n unselectable: PropTypes.string,\n /**\n * Style applied when item is selected.\n */\n selected: PropTypes.string,\n /**\n * Style applied when item is unselectable.\n */\n unselected: PropTypes.string,\n /**\n * Style applied when item is focused.\n */\n focused: PropTypes.string,\n }).isRequired,\n /**\n * Is the node disabled.\n */\n disabled: PropTypes.bool,\n /**\n * Can the node be selected.\n */\n selectable: PropTypes.bool,\n /**\n * The id of the node.\n */\n nodeId: PropTypes.string.isRequired,\n /**\n * The icon to display next to the node's label.\n */\n icon: PropTypes.node,\n /**\n * The item label.\n */\n label: PropTypes.node.isRequired,\n /**\n * The node payload.\n */\n // eslint-disable-next-line react/forbid-prop-types\n payload: PropTypes.any,\n /**\n * @ignore\n */\n onClick: PropTypes.func,\n /**\n * @ignore\n */\n onMouseDown: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n};\n\nexport default withStyles(styles, {\n name: \"HvVerticalNavigationTreeViewItem\",\n})(TreeViewItem);\n"],"mappings":"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"}
@@ -115,9 +115,9 @@ var HvDialog = function HvDialog(_ref) {
115
115
  return _onClose(event, reason);
116
116
  },
117
117
  onKeyDown: keyDownHandler
118
- }, others), /*#__PURE__*/React.createElement("div", {
118
+ }, others, {
119
119
  "aria-modal": true
120
- }, /*#__PURE__*/React.createElement(Button, {
120
+ }), /*#__PURE__*/React.createElement(Button, {
121
121
  id: setId(id, "close"),
122
122
  className: classes.closeButton,
123
123
  category: "ghost",
@@ -129,7 +129,7 @@ var HvDialog = function HvDialog(_ref) {
129
129
  return /*#__PURE__*/React.cloneElement(c, {
130
130
  fullscreen: fullscreen
131
131
  });
132
- }) : children));
132
+ }) : children);
133
133
  };
134
134
 
135
135
  process.env.NODE_ENV !== "production" ? HvDialog.propTypes = {
@@ -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 >\n <div aria-modal>\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 </div>\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 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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"}
@@ -3,7 +3,9 @@ var styles = function styles(theme) {
3
3
  root: {
4
4
  margin: "0",
5
5
  padding: theme.hv.spacing.sm,
6
- borderTop: "3px solid ".concat(theme.hv.palette.atmosphere.atmo2)
6
+ borderTop: "3px solid ".concat(theme.hv.palette.atmosphere.atmo2),
7
+ height: 100,
8
+ flex: 1
7
9
  },
8
10
  spacing: {
9
11
  "& > :not(:first-child)": {
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","theme","root","margin","padding","hv","spacing","sm","borderTop","palette","atmosphere","atmo2","marginLeft","xs","fullscreen","position","width","bottom","left"],"sources":["../../../../src/Dialog/DialogActions/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n margin: \"0\",\n padding: theme.hv.spacing.sm,\n borderTop: `3px solid ${theme.hv.palette.atmosphere.atmo2}`,\n },\n spacing: {\n \"& > :not(:first-child)\": {\n marginLeft: theme.hv.spacing.xs,\n },\n },\n fullscreen: {\n position: \"fixed\",\n width: \"100%\",\n bottom: 0,\n left: 0,\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,IAAI,EAAE;MACJC,MAAM,EAAE,GADJ;MAEJC,OAAO,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,EAFtB;MAGJC,SAAS,sBAAeP,KAAK,CAACI,EAAN,CAASI,OAAT,CAAiBC,UAAjB,CAA4BC,KAA3C;IAHL,CADmB;IAMzBL,OAAO,EAAE;MACP,0BAA0B;QACxBM,UAAU,EAAEX,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBO;MADL;IADnB,CANgB;IAWzBC,UAAU,EAAE;MACVC,QAAQ,EAAE,OADA;MAEVC,KAAK,EAAE,MAFG;MAGVC,MAAM,EAAE,CAHE;MAIVC,IAAI,EAAE;IAJI;EAXa,CAAZ;AAAA,CAAf;;AAmBA,eAAelB,MAAf"}
1
+ {"version":3,"file":"styles.js","names":["styles","theme","root","margin","padding","hv","spacing","sm","borderTop","palette","atmosphere","atmo2","height","flex","marginLeft","xs","fullscreen","position","width","bottom","left"],"sources":["../../../../src/Dialog/DialogActions/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n margin: \"0\",\n padding: theme.hv.spacing.sm,\n borderTop: `3px solid ${theme.hv.palette.atmosphere.atmo2}`,\n height: 100,\n flex: 1,\n },\n spacing: {\n \"& > :not(:first-child)\": {\n marginLeft: theme.hv.spacing.xs,\n },\n },\n fullscreen: {\n position: \"fixed\",\n width: \"100%\",\n bottom: 0,\n left: 0,\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,IAAI,EAAE;MACJC,MAAM,EAAE,GADJ;MAEJC,OAAO,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,EAFtB;MAGJC,SAAS,sBAAeP,KAAK,CAACI,EAAN,CAASI,OAAT,CAAiBC,UAAjB,CAA4BC,KAA3C,CAHL;MAIJC,MAAM,EAAE,GAJJ;MAKJC,IAAI,EAAE;IALF,CADmB;IAQzBP,OAAO,EAAE;MACP,0BAA0B;QACxBQ,UAAU,EAAEb,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBS;MADL;IADnB,CARgB;IAazBC,UAAU,EAAE;MACVC,QAAQ,EAAE,OADA;MAEVC,KAAK,EAAE,MAFG;MAGVC,MAAM,EAAE,CAHE;MAIVC,IAAI,EAAE;IAJI;EAba,CAAZ;AAAA,CAAf;;AAqBA,eAAepB,MAAf"}
@@ -6,7 +6,9 @@ var styles = function styles(theme) {
6
6
  },
7
7
  textContent: {
8
8
  marginLeft: "42px",
9
- marginRight: "42px"
9
+ paddingRight: "62px",
10
+ flex: 1,
11
+ overflowY: "auto"
10
12
  }
11
13
  };
12
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","theme","root","padding","hvSpacing","flex","textContent","marginLeft","marginRight"],"sources":["../../../../src/Dialog/DialogContent/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n padding: theme.hvSpacing(0, \"sm\", \"sm\", \"sm\"),\n flex: \"none\",\n },\n textContent: {\n marginLeft: \"42px\",\n marginRight: \"42px\",\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,IAAI,EAAE;MACJC,OAAO,EAAEF,KAAK,CAACG,SAAN,CAAgB,CAAhB,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,IAA/B,CADL;MAEJC,IAAI,EAAE;IAFF,CADmB;IAKzBC,WAAW,EAAE;MACXC,UAAU,EAAE,MADD;MAEXC,WAAW,EAAE;IAFF;EALY,CAAZ;AAAA,CAAf;;AAWA,eAAeR,MAAf"}
1
+ {"version":3,"file":"styles.js","names":["styles","theme","root","padding","hvSpacing","flex","textContent","marginLeft","paddingRight","overflowY"],"sources":["../../../../src/Dialog/DialogContent/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n padding: theme.hvSpacing(0, \"sm\", \"sm\", \"sm\"),\n flex: \"none\",\n },\n textContent: {\n marginLeft: \"42px\",\n paddingRight: \"62px\",\n flex: 1,\n overflowY: \"auto\",\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,IAAI,EAAE;MACJC,OAAO,EAAEF,KAAK,CAACG,SAAN,CAAgB,CAAhB,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,IAA/B,CADL;MAEJC,IAAI,EAAE;IAFF,CADmB;IAKzBC,WAAW,EAAE;MACXC,UAAU,EAAE,MADD;MAEXC,YAAY,EAAE,MAFH;MAGXH,IAAI,EAAE,CAHK;MAIXI,SAAS,EAAE;IAJA;EALY,CAAZ;AAAA,CAAf;;AAaA,eAAeT,MAAf"}
@@ -21,13 +21,14 @@ var HvDialogTitle = function HvDialogTitle(_ref) {
21
21
  customIcon = _ref$customIcon === void 0 ? null : _ref$customIcon,
22
22
  others = _objectWithoutProperties(_ref, _excluded);
23
23
 
24
- var isString = typeof children === "string"; // prevent the `fullscreen` prop from being passed to the `DialogTitle` component
24
+ var isString = typeof children === "string";
25
+ var fullscreen = others.fullscreen; // prevent the `fullscreen` prop from being passed to the `DialogTitle` component
25
26
  // eslint-disable-next-line no-param-reassign
26
27
 
27
28
  delete others.fullscreen;
28
29
  var icon = customIcon || showIcon && iconVariant(variant);
29
30
  return /*#__PURE__*/React.createElement(DialogTitle, _extends({
30
- className: clsx(classes.root, className),
31
+ className: clsx(classes.root, className, fullscreen && "fullscreen"),
31
32
  disableTypography: true
32
33
  }, others), /*#__PURE__*/React.createElement("div", {
33
34
  className: classes.messageContainer
@@ -1 +1 @@
1
- {"version":3,"file":"DialogTitle.js","names":["React","PropTypes","clsx","DialogTitle","withStyles","HvTypography","iconVariant","styles","HvDialogTitle","classes","className","children","variant","showIcon","customIcon","others","isString","fullscreen","icon","root","messageContainer","textWithIcon","propTypes","string","shape","closeButton","isRequired","oneOf","bool","node","name"],"sources":["../../../../src/Dialog/DialogTitle/DialogTitle.js"],"sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { DialogTitle, withStyles } from \"@material-ui/core\";\nimport HvTypography from \"../../Typography\";\nimport iconVariant from \"../../utils/iconVariant\";\nimport styles from \"./styles\";\n\nconst HvDialogTitle = ({\n classes,\n className,\n children,\n variant = \"default\",\n showIcon = true,\n customIcon = null,\n ...others\n}) => {\n const isString = typeof children === \"string\";\n // prevent the `fullscreen` prop from being passed to the `DialogTitle` component\n // eslint-disable-next-line no-param-reassign\n delete others.fullscreen;\n\n const icon = customIcon || (showIcon && iconVariant(variant));\n\n return (\n <DialogTitle className={clsx(classes.root, className)} disableTypography {...others}>\n <div className={classes.messageContainer}>\n {icon}\n <div className={clsx({ [classes.textWithIcon]: icon })}>\n {!isString && children}\n {isString && <HvTypography variant=\"xxsTitle\">{children}</HvTypography>}\n </div>\n </div>\n </DialogTitle>\n );\n};\n\nHvDialogTitle.propTypes = {\n /**\n * Class names to be applied.\n */\n className: 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 (container for the title).\n */\n root: PropTypes.string,\n /**\n * Style applied to the container of the title\n */\n messageContainer: PropTypes.string,\n /**\n * Style applied to the text when the icon is present.\n */\n textWithIcon: PropTypes.string,\n /**\n * Style applied to the icon.\n */\n icon: PropTypes.string,\n /**\n * Style applied to the close button.\n */\n closeButton: PropTypes.string,\n }).isRequired,\n /**\n * Variant of the Dialog.\n */\n variant: PropTypes.oneOf([\"success\", \"warning\", \"error\", \"info\", \"default\"]),\n /**\n * Controls if the associated icon to the variant should be shown.\n */\n showIcon: PropTypes.bool,\n /**\n * Custom icon to replace the variant default.\n */\n customIcon: PropTypes.node,\n /**\n * Node to be render.\n */\n children: PropTypes.node.isRequired,\n};\n\nexport default withStyles(styles, { name: \"HvDialogTitle\" })(HvDialogTitle);\n"],"mappings":";;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,IAAP,MAAiB,MAAjB;AACA,SAASC,WAAT,EAAsBC,UAAtB,QAAwC,mBAAxC;AACA,OAAOC,YAAP,MAAyB,kBAAzB;AACA,OAAOC,WAAP,MAAwB,yBAAxB;AACA,OAAOC,MAAP,MAAmB,UAAnB;;AAEA,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,OAQhB;EAAA,IAPJC,OAOI,QAPJA,OAOI;EAAA,IANJC,SAMI,QANJA,SAMI;EAAA,IALJC,QAKI,QALJA,QAKI;EAAA,wBAJJC,OAII;EAAA,IAJJA,OAII,6BAJM,SAIN;EAAA,yBAHJC,QAGI;EAAA,IAHJA,QAGI,8BAHO,IAGP;EAAA,2BAFJC,UAEI;EAAA,IAFJA,UAEI,gCAFS,IAET;EAAA,IADDC,MACC;;EACJ,IAAMC,QAAQ,GAAG,OAAOL,QAAP,KAAoB,QAArC,CADI,CAEJ;EACA;;EACA,OAAOI,MAAM,CAACE,UAAd;EAEA,IAAMC,IAAI,GAAGJ,UAAU,IAAKD,QAAQ,IAAIP,WAAW,CAACM,OAAD,CAAnD;EAEA,oBACE,oBAAC,WAAD;IAAa,SAAS,EAAEV,IAAI,CAACO,OAAO,CAACU,IAAT,EAAeT,SAAf,CAA5B;IAAuD,iBAAiB;EAAxE,GAA6EK,MAA7E,gBACE;IAAK,SAAS,EAAEN,OAAO,CAACW;EAAxB,GACGF,IADH,eAEE;IAAK,SAAS,EAAEhB,IAAI,CAA2BgB,IAA3B,IAAIT,OAAO,CAACY,YAAZ;EAApB,GACG,CAACL,QAAD,IAAaL,QADhB,EAEGK,QAAQ,iBAAI,oBAAC,YAAD;IAAc,OAAO,EAAC;EAAtB,GAAkCL,QAAlC,CAFf,CAFF,CADF,CADF;AAWD,CA3BD;;AA6BA,wCAAAH,aAAa,CAACc,SAAd,GAA0B;EACxB;AACF;AACA;EACEZ,SAAS,EAAET,SAAS,CAACsB,MAJG;;EAKxB;AACF;AACA;EACEd,OAAO,EAAER,SAAS,CAACuB,KAAV,CAAgB;IACvB;AACJ;AACA;IACIL,IAAI,EAAElB,SAAS,CAACsB,MAJO;;IAKvB;AACJ;AACA;IACIH,gBAAgB,EAAEnB,SAAS,CAACsB,MARL;;IASvB;AACJ;AACA;IACIF,YAAY,EAAEpB,SAAS,CAACsB,MAZD;;IAavB;AACJ;AACA;IACIL,IAAI,EAAEjB,SAAS,CAACsB,MAhBO;;IAiBvB;AACJ;AACA;IACIE,WAAW,EAAExB,SAAS,CAACsB;EApBA,CAAhB,EAqBNG,UA7BqB;;EA8BxB;AACF;AACA;EACEd,OAAO,EAAEX,SAAS,CAAC0B,KAAV,CAAgB,CAAC,SAAD,EAAY,SAAZ,EAAuB,OAAvB,EAAgC,MAAhC,EAAwC,SAAxC,CAAhB,CAjCe;;EAkCxB;AACF;AACA;EACEd,QAAQ,EAAEZ,SAAS,CAAC2B,IArCI;;EAsCxB;AACF;AACA;EACEd,UAAU,EAAEb,SAAS,CAAC4B,IAzCE;;EA0CxB;AACF;AACA;EACElB,QAAQ,EAAEV,SAAS,CAAC4B,IAAV,CAAeH;AA7CD,CAA1B;AAgDA,eAAetB,UAAU,CAACG,MAAD,EAAS;EAAEuB,IAAI,EAAE;AAAR,CAAT,CAAV,CAA8CtB,aAA9C,CAAf"}
1
+ {"version":3,"file":"DialogTitle.js","names":["React","PropTypes","clsx","DialogTitle","withStyles","HvTypography","iconVariant","styles","HvDialogTitle","classes","className","children","variant","showIcon","customIcon","others","isString","fullscreen","icon","root","messageContainer","textWithIcon","propTypes","string","shape","closeButton","isRequired","oneOf","bool","node","name"],"sources":["../../../../src/Dialog/DialogTitle/DialogTitle.js"],"sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { DialogTitle, withStyles } from \"@material-ui/core\";\nimport HvTypography from \"../../Typography\";\nimport iconVariant from \"../../utils/iconVariant\";\nimport styles from \"./styles\";\n\nconst HvDialogTitle = ({\n classes,\n className,\n children,\n variant = \"default\",\n showIcon = true,\n customIcon = null,\n ...others\n}) => {\n const isString = typeof children === \"string\";\n const { fullscreen } = others;\n\n // prevent the `fullscreen` prop from being passed to the `DialogTitle` component\n // eslint-disable-next-line no-param-reassign\n delete others.fullscreen;\n\n const icon = customIcon || (showIcon && iconVariant(variant));\n\n return (\n <DialogTitle\n className={clsx(classes.root, className, fullscreen ? \"fullscreen\" : \"\")}\n disableTypography\n {...others}\n >\n <div className={classes.messageContainer}>\n {icon}\n <div className={clsx({ [classes.textWithIcon]: icon })}>\n {!isString && children}\n {isString && <HvTypography variant=\"xxsTitle\">{children}</HvTypography>}\n </div>\n </div>\n </DialogTitle>\n );\n};\n\nHvDialogTitle.propTypes = {\n /**\n * Class names to be applied.\n */\n className: 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 (container for the title).\n */\n root: PropTypes.string,\n /**\n * Style applied to the container of the title\n */\n messageContainer: PropTypes.string,\n /**\n * Style applied to the text when the icon is present.\n */\n textWithIcon: PropTypes.string,\n /**\n * Style applied to the icon.\n */\n icon: PropTypes.string,\n /**\n * Style applied to the close button.\n */\n closeButton: PropTypes.string,\n }).isRequired,\n /**\n * Variant of the Dialog.\n */\n variant: PropTypes.oneOf([\"success\", \"warning\", \"error\", \"info\", \"default\"]),\n /**\n * Controls if the associated icon to the variant should be shown.\n */\n showIcon: PropTypes.bool,\n /**\n * Custom icon to replace the variant default.\n */\n customIcon: PropTypes.node,\n /**\n * Node to be render.\n */\n children: PropTypes.node.isRequired,\n};\n\nexport default withStyles(styles, { name: \"HvDialogTitle\" })(HvDialogTitle);\n"],"mappings":";;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,IAAP,MAAiB,MAAjB;AACA,SAASC,WAAT,EAAsBC,UAAtB,QAAwC,mBAAxC;AACA,OAAOC,YAAP,MAAyB,kBAAzB;AACA,OAAOC,WAAP,MAAwB,yBAAxB;AACA,OAAOC,MAAP,MAAmB,UAAnB;;AAEA,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,OAQhB;EAAA,IAPJC,OAOI,QAPJA,OAOI;EAAA,IANJC,SAMI,QANJA,SAMI;EAAA,IALJC,QAKI,QALJA,QAKI;EAAA,wBAJJC,OAII;EAAA,IAJJA,OAII,6BAJM,SAIN;EAAA,yBAHJC,QAGI;EAAA,IAHJA,QAGI,8BAHO,IAGP;EAAA,2BAFJC,UAEI;EAAA,IAFJA,UAEI,gCAFS,IAET;EAAA,IADDC,MACC;;EACJ,IAAMC,QAAQ,GAAG,OAAOL,QAAP,KAAoB,QAArC;EACA,IAAQM,UAAR,GAAuBF,MAAvB,CAAQE,UAAR,CAFI,CAIJ;EACA;;EACA,OAAOF,MAAM,CAACE,UAAd;EAEA,IAAMC,IAAI,GAAGJ,UAAU,IAAKD,QAAQ,IAAIP,WAAW,CAACM,OAAD,CAAnD;EAEA,oBACE,oBAAC,WAAD;IACE,SAAS,EAAEV,IAAI,CAACO,OAAO,CAACU,IAAT,EAAeT,SAAf,EAA0BO,UAA1B,IAAuC,YAAvC,CADjB;IAEE,iBAAiB;EAFnB,GAGMF,MAHN,gBAKE;IAAK,SAAS,EAAEN,OAAO,CAACW;EAAxB,GACGF,IADH,eAEE;IAAK,SAAS,EAAEhB,IAAI,CAA2BgB,IAA3B,IAAIT,OAAO,CAACY,YAAZ;EAApB,GACG,CAACL,QAAD,IAAaL,QADhB,EAEGK,QAAQ,iBAAI,oBAAC,YAAD;IAAc,OAAO,EAAC;EAAtB,GAAkCL,QAAlC,CAFf,CAFF,CALF,CADF;AAeD,CAjCD;;AAmCA,wCAAAH,aAAa,CAACc,SAAd,GAA0B;EACxB;AACF;AACA;EACEZ,SAAS,EAAET,SAAS,CAACsB,MAJG;;EAKxB;AACF;AACA;EACEd,OAAO,EAAER,SAAS,CAACuB,KAAV,CAAgB;IACvB;AACJ;AACA;IACIL,IAAI,EAAElB,SAAS,CAACsB,MAJO;;IAKvB;AACJ;AACA;IACIH,gBAAgB,EAAEnB,SAAS,CAACsB,MARL;;IASvB;AACJ;AACA;IACIF,YAAY,EAAEpB,SAAS,CAACsB,MAZD;;IAavB;AACJ;AACA;IACIL,IAAI,EAAEjB,SAAS,CAACsB,MAhBO;;IAiBvB;AACJ;AACA;IACIE,WAAW,EAAExB,SAAS,CAACsB;EApBA,CAAhB,EAqBNG,UA7BqB;;EA8BxB;AACF;AACA;EACEd,OAAO,EAAEX,SAAS,CAAC0B,KAAV,CAAgB,CAAC,SAAD,EAAY,SAAZ,EAAuB,OAAvB,EAAgC,MAAhC,EAAwC,SAAxC,CAAhB,CAjCe;;EAkCxB;AACF;AACA;EACEd,QAAQ,EAAEZ,SAAS,CAAC2B,IArCI;;EAsCxB;AACF;AACA;EACEd,UAAU,EAAEb,SAAS,CAAC4B,IAzCE;;EA0CxB;AACF;AACA;EACElB,QAAQ,EAAEV,SAAS,CAAC4B,IAAV,CAAeH;AA7CD,CAA1B;AAgDA,eAAetB,UAAU,CAACG,MAAD,EAAS;EAAEuB,IAAI,EAAE;AAAR,CAAT,CAAV,CAA8CtB,aAA9C,CAAf"}
@@ -3,8 +3,9 @@ var styles = function styles(theme) {
3
3
  root: {
4
4
  padding: theme.hvSpacing("sm"),
5
5
  margin: 0,
6
- display: "flex",
7
- justifyContent: "space-between"
6
+ "&:not(.fullscreen)": {
7
+ flex: 1
8
+ }
8
9
  },
9
10
  messageContainer: {
10
11
  display: "flex",
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","theme","root","padding","hvSpacing","margin","display","justifyContent","messageContainer","alignItems","textWithIcon","marginLeft","marginRight","icon","hv","spacing","md","width","height"],"sources":["../../../../src/Dialog/DialogTitle/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n padding: theme.hvSpacing(\"sm\"),\n margin: 0,\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n messageContainer: {\n display: \"flex\",\n alignItems: \"center\",\n },\n textWithIcon: {\n marginLeft: theme.hvSpacing(\"xs\"),\n // 32px is the icon width\n marginRight: `calc(32px + ${theme.hvSpacing(\"xs\")})`,\n },\n icon: {\n marginRight: theme.hv.spacing.md,\n width: 48,\n height: 48,\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,IAAI,EAAE;MACJC,OAAO,EAAEF,KAAK,CAACG,SAAN,CAAgB,IAAhB,CADL;MAEJC,MAAM,EAAE,CAFJ;MAGJC,OAAO,EAAE,MAHL;MAIJC,cAAc,EAAE;IAJZ,CADmB;IAOzBC,gBAAgB,EAAE;MAChBF,OAAO,EAAE,MADO;MAEhBG,UAAU,EAAE;IAFI,CAPO;IAWzBC,YAAY,EAAE;MACZC,UAAU,EAAEV,KAAK,CAACG,SAAN,CAAgB,IAAhB,CADA;MAEZ;MACAQ,WAAW,wBAAiBX,KAAK,CAACG,SAAN,CAAgB,IAAhB,CAAjB;IAHC,CAXW;IAgBzBS,IAAI,EAAE;MACJD,WAAW,EAAEX,KAAK,CAACa,EAAN,CAASC,OAAT,CAAiBC,EAD1B;MAEJC,KAAK,EAAE,EAFH;MAGJC,MAAM,EAAE;IAHJ;EAhBmB,CAAZ;AAAA,CAAf;;AAuBA,eAAelB,MAAf"}
1
+ {"version":3,"file":"styles.js","names":["styles","theme","root","padding","hvSpacing","margin","flex","messageContainer","display","alignItems","textWithIcon","marginLeft","marginRight","icon","hv","spacing","md","width","height"],"sources":["../../../../src/Dialog/DialogTitle/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n padding: theme.hvSpacing(\"sm\"),\n margin: 0,\n \"&:not(.fullscreen)\": {\n flex: 1,\n },\n },\n messageContainer: {\n display: \"flex\",\n alignItems: \"center\",\n },\n textWithIcon: {\n marginLeft: theme.hvSpacing(\"xs\"),\n // 32px is the icon width\n marginRight: `calc(32px + ${theme.hvSpacing(\"xs\")})`,\n },\n icon: {\n marginRight: theme.hv.spacing.md,\n width: 48,\n height: 48,\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,IAAI,EAAE;MACJC,OAAO,EAAEF,KAAK,CAACG,SAAN,CAAgB,IAAhB,CADL;MAEJC,MAAM,EAAE,CAFJ;MAGJ,sBAAsB;QACpBC,IAAI,EAAE;MADc;IAHlB,CADmB;IAQzBC,gBAAgB,EAAE;MAChBC,OAAO,EAAE,MADO;MAEhBC,UAAU,EAAE;IAFI,CARO;IAYzBC,YAAY,EAAE;MACZC,UAAU,EAAEV,KAAK,CAACG,SAAN,CAAgB,IAAhB,CADA;MAEZ;MACAQ,WAAW,wBAAiBX,KAAK,CAACG,SAAN,CAAgB,IAAhB,CAAjB;IAHC,CAZW;IAiBzBS,IAAI,EAAE;MACJD,WAAW,EAAEX,KAAK,CAACa,EAAN,CAASC,OAAT,CAAiBC,EAD1B;MAEJC,KAAK,EAAE,EAFH;MAGJC,MAAM,EAAE;IAHJ;EAjBmB,CAAZ;AAAA,CAAf;;AAwBA,eAAelB,MAAf"}
@@ -11,7 +11,9 @@ var styles = function styles(theme) {
11
11
  overflow: "auto",
12
12
  boxShadow: theme.hv.shadows[1],
13
13
  "&:not(.fullscreen)": {
14
- maxHeight: "calc(100% - 200px)"
14
+ maxHeight: "calc(100% - 200px)",
15
+ display: "flex",
16
+ flexDirection: "column"
15
17
  }
16
18
  },
17
19
  closeButton: {
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["fade","styles","theme","background","hv","palette","atmosphere","atmo4","paper","atmo1","padding","overflow","boxShadow","shadows","maxHeight","closeButton","minWidth","position","top","hvSpacing","right"],"sources":["../../../src/Dialog/styles.js"],"sourcesContent":["import fade from \"../utils/hexToRgbA\";\n\nconst styles = (theme) => ({\n background: {\n background: fade(theme.hv.palette.atmosphere.atmo4, 0.8),\n },\n paper: {\n background: `${theme.hv.palette.atmosphere.atmo1}`,\n padding: \"0px\",\n overflow: \"auto\",\n boxShadow: theme.hv.shadows[1],\n \"&:not(.fullscreen)\": {\n maxHeight: \"calc(100% - 200px)\",\n },\n },\n closeButton: {\n padding: 0,\n minWidth: \"inherit\",\n position: \"absolute\",\n top: theme.hvSpacing(\"sm\"),\n right: theme.hvSpacing(\"sm\"),\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,OAAOA,IAAP,MAAiB,oBAAjB;;AAEA,IAAMC,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,UAAU,EAAE;MACVA,UAAU,EAAEH,IAAI,CAACE,KAAK,CAACE,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC,KAA7B,EAAoC,GAApC;IADN,CADa;IAIzBC,KAAK,EAAE;MACLL,UAAU,YAAKD,KAAK,CAACE,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BG,KAAjC,CADL;MAELC,OAAO,EAAE,KAFJ;MAGLC,QAAQ,EAAE,MAHL;MAILC,SAAS,EAAEV,KAAK,CAACE,EAAN,CAASS,OAAT,CAAiB,CAAjB,CAJN;MAKL,sBAAsB;QACpBC,SAAS,EAAE;MADS;IALjB,CAJkB;IAazBC,WAAW,EAAE;MACXL,OAAO,EAAE,CADE;MAEXM,QAAQ,EAAE,SAFC;MAGXC,QAAQ,EAAE,UAHC;MAIXC,GAAG,EAAEhB,KAAK,CAACiB,SAAN,CAAgB,IAAhB,CAJM;MAKXC,KAAK,EAAElB,KAAK,CAACiB,SAAN,CAAgB,IAAhB;IALI;EAbY,CAAZ;AAAA,CAAf;;AAsBA,eAAelB,MAAf"}
1
+ {"version":3,"file":"styles.js","names":["fade","styles","theme","background","hv","palette","atmosphere","atmo4","paper","atmo1","padding","overflow","boxShadow","shadows","maxHeight","display","flexDirection","closeButton","minWidth","position","top","hvSpacing","right"],"sources":["../../../src/Dialog/styles.js"],"sourcesContent":["import fade from \"../utils/hexToRgbA\";\n\nconst styles = (theme) => ({\n background: {\n background: fade(theme.hv.palette.atmosphere.atmo4, 0.8),\n },\n paper: {\n background: `${theme.hv.palette.atmosphere.atmo1}`,\n padding: \"0px\",\n overflow: \"auto\",\n boxShadow: theme.hv.shadows[1],\n \"&:not(.fullscreen)\": {\n maxHeight: \"calc(100% - 200px)\",\n display: \"flex\",\n flexDirection: \"column\",\n },\n },\n closeButton: {\n padding: 0,\n minWidth: \"inherit\",\n position: \"absolute\",\n top: theme.hvSpacing(\"sm\"),\n right: theme.hvSpacing(\"sm\"),\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,OAAOA,IAAP,MAAiB,oBAAjB;;AAEA,IAAMC,MAAM,GAAG,SAATA,MAAS,CAACC,KAAD;EAAA,OAAY;IACzBC,UAAU,EAAE;MACVA,UAAU,EAAEH,IAAI,CAACE,KAAK,CAACE,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC,KAA7B,EAAoC,GAApC;IADN,CADa;IAIzBC,KAAK,EAAE;MACLL,UAAU,YAAKD,KAAK,CAACE,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BG,KAAjC,CADL;MAELC,OAAO,EAAE,KAFJ;MAGLC,QAAQ,EAAE,MAHL;MAILC,SAAS,EAAEV,KAAK,CAACE,EAAN,CAASS,OAAT,CAAiB,CAAjB,CAJN;MAKL,sBAAsB;QACpBC,SAAS,EAAE,oBADS;QAEpBC,OAAO,EAAE,MAFW;QAGpBC,aAAa,EAAE;MAHK;IALjB,CAJkB;IAezBC,WAAW,EAAE;MACXP,OAAO,EAAE,CADE;MAEXQ,QAAQ,EAAE,SAFC;MAGXC,QAAQ,EAAE,UAHC;MAIXC,GAAG,EAAElB,KAAK,CAACmB,SAAN,CAAgB,IAAhB,CAJM;MAKXC,KAAK,EAAEpB,KAAK,CAACmB,SAAN,CAAgB,IAAhB;IALI;EAfY,CAAZ;AAAA,CAAf;;AAwBA,eAAepB,MAAf"}
@@ -120,7 +120,9 @@ var TreeViewItem = /*#__PURE__*/React.forwardRef(function (props, ref) {
120
120
  }, [registerNode, unregisterNode, parentId, index, nodeId, expandable, disabledProp, id, selectable, onFocus, payload]);
121
121
  useEffect(function () {
122
122
  if (mapFirstChar && unMapFirstChar && label) {
123
- mapFirstChar(nodeId, contentRef.current.textContent.substring(0, 1).toLowerCase());
123
+ var _contentRef$current;
124
+
125
+ mapFirstChar(nodeId, (_contentRef$current = contentRef.current) === null || _contentRef$current === void 0 ? void 0 : _contentRef$current.textContent.substring(0, 1).toLowerCase());
124
126
  return function () {
125
127
  unMapFirstChar(nodeId);
126
128
  };
@@ -1 +1 @@
1
- {"version":3,"file":"TreeViewItem.js","names":["React","useCallback","useContext","useEffect","useMemo","useRef","useState","clsx","PropTypes","withStyles","DropDownXS","DropUpXS","HvTypography","TreeViewControlContext","TreeViewStateContext","setId","useForkRef","DescendantProvider","useDescendant","styles","preventSelection","event","disabled","shiftKey","ctrlKey","metaKey","preventDefault","TreeViewItem","forwardRef","props","ref","idProp","id","className","classes","disabledProp","selectableProp","selectable","nodeId","icon","label","payload","onClick","onMouseDown","onFocus","children","others","treeViewControlContext","isExpanded","isSelected","isFocused","isDisabled","treeId","mode","collapsible","toggleExpansion","multiSelect","selectNode","selectRange","disabledItemsFocusable","registerNode","unregisterNode","mapFirstChar","unMapFirstChar","focus","treeviewMode","treeitemElement","setTreeitemElement","contentRef","handleRef","descendant","element","index","parentId","level","expandable","Boolean","Array","isArray","length","expanded","focused","selected","idAttribute","undefined","current","textContent","substring","toLowerCase","ariaSelected","handleFocus","target","currentTarget","ownerDocument","document","getElementById","preventScroll","unfocusable","handleExpansion","multiple","handleSelection","end","handleMouseDown","handleClick","handleKeyDown","isEventHandled","key","altKey","stopPropagation","renderedContent","content","paddingLeft","role","tabIndex","onKeyDown","renderedChildren","group","node","unselected","unselectable","collapsed","propTypes","string","shape","isRequired","bool","any","func","name"],"sources":["../../../../src/VerticalNavigation/TreeView/TreeViewItem.js"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useMemo, useRef, useState } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { withStyles } from \"@material-ui/core\";\n\nimport { DropDownXS, DropUpXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport HvTypography from \"../../Typography\";\n\nimport { TreeViewControlContext, TreeViewStateContext } from \"./TreeViewContexts\";\n\nimport { setId, useForkRef } from \"../../utils\";\n\nimport { DescendantProvider, useDescendant } from \"./descendants\";\n\nimport styles from \"./styles\";\n\nconst preventSelection = (event, disabled) => {\n if (event.shiftKey || event.ctrlKey || event.metaKey || disabled) {\n // Prevent text selection\n event.preventDefault();\n }\n};\n\nconst TreeViewItem = React.forwardRef((props, ref) => {\n const {\n id: idProp,\n className,\n classes,\n\n disabled: disabledProp = false,\n\n selectable: selectableProp,\n\n nodeId,\n icon = null,\n label,\n payload,\n\n onClick,\n onMouseDown,\n onFocus,\n\n children,\n\n ...others\n } = props;\n\n const treeViewControlContext = useContext(TreeViewControlContext);\n const { isExpanded, isSelected, isFocused, isDisabled } = useContext(TreeViewStateContext);\n\n const {\n treeId,\n mode,\n collapsible,\n toggleExpansion,\n multiSelect,\n selectNode,\n selectRange,\n disabledItemsFocusable,\n registerNode,\n unregisterNode,\n mapFirstChar,\n unMapFirstChar,\n focus,\n } = treeViewControlContext;\n\n const treeviewMode = mode === \"treeview\";\n\n let id = null;\n\n if (idProp != null) {\n id = idProp;\n } else if (treeId && nodeId) {\n id = `${treeId}-${nodeId}`;\n }\n\n const [treeitemElement, setTreeitemElement] = useState(null);\n const contentRef = useRef(null);\n const handleRef = useForkRef(setTreeitemElement, ref);\n\n const descendant = useMemo(\n () => ({\n element: treeitemElement,\n id: nodeId,\n }),\n [nodeId, treeitemElement]\n );\n\n const { index, parentId, level } = useDescendant(descendant);\n\n const expandable = collapsible && Boolean(Array.isArray(children) ? children.length : children);\n const expanded = isExpanded ? isExpanded(nodeId) : false;\n const focused = isFocused ? isFocused(nodeId) : false;\n const selected = isSelected ? isSelected(nodeId) : false;\n const disabled = isDisabled ? isDisabled(nodeId) : false;\n\n const selectable = selectableProp != null ? selectableProp : !collapsible || !expandable;\n\n useEffect(() => {\n // On the first render a node's index will be -1. We want to wait for the real index.\n if (registerNode && unregisterNode && index !== -1) {\n registerNode({\n id: nodeId,\n idAttribute: id,\n index,\n parentId,\n selectable,\n expandable,\n disabled: disabledProp,\n onFocus,\n payload,\n });\n\n return () => {\n unregisterNode(nodeId);\n };\n }\n\n return undefined;\n }, [\n registerNode,\n unregisterNode,\n parentId,\n index,\n nodeId,\n expandable,\n disabledProp,\n id,\n selectable,\n onFocus,\n payload,\n ]);\n\n useEffect(() => {\n if (mapFirstChar && unMapFirstChar && label) {\n mapFirstChar(nodeId, contentRef.current.textContent.substring(0, 1).toLowerCase());\n\n return () => {\n unMapFirstChar(nodeId);\n };\n }\n return undefined;\n }, [mapFirstChar, unMapFirstChar, nodeId, label]);\n\n let ariaSelected;\n if (multiSelect) {\n ariaSelected = selected;\n } else if (selected) {\n /* single-selection trees unset aria-selected on un-selected items.\n *\n * If the tree does not support multiple selection, aria-selected\n * is set to true for the selected node and it is not present on any other node in the tree.\n * Source: https://www.w3.org/TR/wai-aria-practices/#TreeView\n */\n ariaSelected = true;\n }\n\n const handleFocus = useCallback(\n (event) => {\n // DOM focus stays on the tree which manages focus with aria-activedescendant\n if (event.target === event.currentTarget) {\n (event.target.ownerDocument || document)\n .getElementById(treeId)\n .focus({ preventScroll: true });\n }\n\n const unfocusable = !disabledItemsFocusable && disabled;\n if (!focused && event.currentTarget === event.target && !unfocusable) {\n focus(event, nodeId);\n }\n },\n [disabled, disabledItemsFocusable, focus, focused, nodeId, treeId]\n );\n\n const handleExpansion = useCallback(\n (event) => {\n if (!disabled) {\n if (treeviewMode && !focused) {\n focus(event, nodeId);\n }\n\n const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n // If already expanded and trying to toggle selection don't close\n if (expandable && !(multiple && isExpanded(nodeId))) {\n toggleExpansion(event, nodeId);\n }\n }\n },\n [\n disabled,\n expandable,\n focus,\n focused,\n isExpanded,\n multiSelect,\n nodeId,\n toggleExpansion,\n treeviewMode,\n ]\n );\n\n const handleSelection = useCallback(\n (event) => {\n if (selectable && !disabled) {\n if (treeviewMode && !focused) {\n focus(event, nodeId);\n }\n\n const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n if (multiple) {\n if (event.shiftKey) {\n selectRange(event, { end: nodeId });\n } else {\n selectNode(event, nodeId, true);\n }\n } else {\n selectNode(event, nodeId);\n }\n }\n },\n [\n disabled,\n focus,\n focused,\n multiSelect,\n nodeId,\n selectNode,\n selectRange,\n selectable,\n treeviewMode,\n ]\n );\n\n const handleMouseDown = useCallback(\n (event) => {\n preventSelection(event, disabled);\n\n if (onMouseDown) {\n onMouseDown(event);\n }\n },\n [disabled, onMouseDown]\n );\n\n const handleClick = useCallback(\n (event) => {\n if (!disabled) {\n if (expandable) {\n handleExpansion(event);\n }\n\n if (selectable) {\n handleSelection(event);\n }\n }\n\n if (onClick) {\n onClick(event);\n }\n },\n [disabled, expandable, handleExpansion, handleSelection, onClick, selectable]\n );\n\n const handleKeyDown = useCallback(\n (event) => {\n let isEventHandled = false;\n const { key } = event;\n\n if (event.altKey || event.ctrlKey || event.metaKey || event.currentTarget !== event.target) {\n return;\n }\n if (contentRef.current === event.currentTarget) {\n if (key === \"Enter\" || key === \" \") {\n if (expandable) {\n isEventHandled = handleExpansion(event);\n }\n\n if (selectable) {\n isEventHandled = handleSelection(event);\n }\n }\n\n if (isEventHandled) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n },\n [expandable, handleExpansion, handleSelection, selectable]\n );\n\n const renderedContent = useMemo(\n () => (\n <HvTypography\n id={setId(id, \"button\")}\n component=\"div\"\n innerRef={contentRef}\n className={classes.content}\n onClick={handleClick}\n onMouseDown={handleMouseDown}\n style={{\n paddingLeft: (expandable || icon != null ? 0 : 10) + level * (collapsible ? 32 : 10),\n }}\n {...(treeviewMode\n ? {\n role: \"button\",\n tabIndex: -1,\n onFocus: handleFocus,\n }\n : {\n role: \"button\",\n tabIndex: selectable || expandable ? 0 : -1,\n onKeyDown: handleKeyDown,\n \"aria-current\": selectable && selected ? \"page\" : undefined,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-controls\": expandable ? setId(id, \"group\") : undefined,\n })}\n >\n {expandable && (expanded ? <DropUpXS /> : <DropDownXS />)}\n {icon}\n {label}\n </HvTypography>\n ),\n [\n id,\n classes.content,\n handleClick,\n handleMouseDown,\n expandable,\n level,\n collapsible,\n treeviewMode,\n handleFocus,\n handleKeyDown,\n selectable,\n selected,\n expanded,\n icon,\n label,\n ]\n );\n\n const renderedChildren = useMemo(\n () =>\n children && (\n <ul\n id={setId(id, \"group\")}\n className={classes.group}\n role={treeviewMode ? \"group\" : undefined}\n >\n {children}\n </ul>\n ),\n [children, classes.group, id, treeviewMode]\n );\n\n return (\n <li\n ref={handleRef}\n id={id}\n className={clsx(classes.node, className, {\n [classes.disabled]: disabled,\n [classes.expandable]: expandable,\n [classes.collapsed]: expandable && !expanded,\n [classes.expanded]: expandable && expanded,\n [classes.selectable]: !disabled && selectable,\n [classes.unselectable]: !disabled && !selectable,\n [classes.selected]: !disabled && selectable && selected,\n [classes.unselected]: !disabled && selectable && !selected,\n [classes.focused]: focused,\n })}\n data-hasicon={icon != null ? true : undefined}\n {...(mode === \"treeview\" && {\n role: \"treeitem\",\n \"aria-selected\": ariaSelected,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-disabled\": disabled ? true : undefined,\n })}\n {...others}\n >\n {renderedContent}\n <DescendantProvider id={nodeId} level={level + 1}>\n {renderedChildren}\n </DescendantProvider>\n </li>\n );\n});\n\nTreeViewItem.propTypes = {\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied to the Radio button.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root of the component.\n */\n node: PropTypes.string,\n /**\n * Style applied to the content.\n */\n content: PropTypes.string,\n /**\n * Style applied to the group.\n */\n group: PropTypes.string,\n /**\n * Style applied when item is disabled.\n */\n disabled: PropTypes.string,\n /**\n * Style applied when item is expandable.\n */\n expandable: PropTypes.string,\n /**\n * Style applied when item is collapsed.\n */\n collapsed: PropTypes.string,\n /**\n * Style applied when item is expanded.\n */\n expanded: PropTypes.string,\n /**\n * Style applied when item is selectable.\n */\n selectable: PropTypes.string,\n /**\n * Style applied when item is unselectable.\n */\n unselectable: PropTypes.string,\n /**\n * Style applied when item is selected.\n */\n selected: PropTypes.string,\n /**\n * Style applied when item is unselectable.\n */\n unselected: PropTypes.string,\n /**\n * Style applied when item is focused.\n */\n focused: PropTypes.string,\n }).isRequired,\n /**\n * Is the node disabled.\n */\n disabled: PropTypes.bool,\n /**\n * Can the node be selected.\n */\n selectable: PropTypes.bool,\n /**\n * The id of the node.\n */\n nodeId: PropTypes.string.isRequired,\n /**\n * The icon to display next to the node's label.\n */\n icon: PropTypes.node,\n /**\n * The item label.\n */\n label: PropTypes.node.isRequired,\n /**\n * The node payload.\n */\n // eslint-disable-next-line react/forbid-prop-types\n payload: PropTypes.any,\n /**\n * @ignore\n */\n onClick: PropTypes.func,\n /**\n * @ignore\n */\n onMouseDown: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n};\n\nexport default withStyles(styles, {\n name: \"HvVerticalNavigationTreeViewItem\",\n})(TreeViewItem);\n"],"mappings":"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"}
1
+ {"version":3,"file":"TreeViewItem.js","names":["React","useCallback","useContext","useEffect","useMemo","useRef","useState","clsx","PropTypes","withStyles","DropDownXS","DropUpXS","HvTypography","TreeViewControlContext","TreeViewStateContext","setId","useForkRef","DescendantProvider","useDescendant","styles","preventSelection","event","disabled","shiftKey","ctrlKey","metaKey","preventDefault","TreeViewItem","forwardRef","props","ref","idProp","id","className","classes","disabledProp","selectableProp","selectable","nodeId","icon","label","payload","onClick","onMouseDown","onFocus","children","others","treeViewControlContext","isExpanded","isSelected","isFocused","isDisabled","treeId","mode","collapsible","toggleExpansion","multiSelect","selectNode","selectRange","disabledItemsFocusable","registerNode","unregisterNode","mapFirstChar","unMapFirstChar","focus","treeviewMode","treeitemElement","setTreeitemElement","contentRef","handleRef","descendant","element","index","parentId","level","expandable","Boolean","Array","isArray","length","expanded","focused","selected","idAttribute","undefined","current","textContent","substring","toLowerCase","ariaSelected","handleFocus","target","currentTarget","ownerDocument","document","getElementById","preventScroll","unfocusable","handleExpansion","multiple","handleSelection","end","handleMouseDown","handleClick","handleKeyDown","isEventHandled","key","altKey","stopPropagation","renderedContent","content","paddingLeft","role","tabIndex","onKeyDown","renderedChildren","group","node","unselected","unselectable","collapsed","propTypes","string","shape","isRequired","bool","any","func","name"],"sources":["../../../../src/VerticalNavigation/TreeView/TreeViewItem.js"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useMemo, useRef, useState } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { withStyles } from \"@material-ui/core\";\n\nimport { DropDownXS, DropUpXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport HvTypography from \"../../Typography\";\n\nimport { TreeViewControlContext, TreeViewStateContext } from \"./TreeViewContexts\";\n\nimport { setId, useForkRef } from \"../../utils\";\n\nimport { DescendantProvider, useDescendant } from \"./descendants\";\n\nimport styles from \"./styles\";\n\nconst preventSelection = (event, disabled) => {\n if (event.shiftKey || event.ctrlKey || event.metaKey || disabled) {\n // Prevent text selection\n event.preventDefault();\n }\n};\n\nconst TreeViewItem = React.forwardRef((props, ref) => {\n const {\n id: idProp,\n className,\n classes,\n\n disabled: disabledProp = false,\n\n selectable: selectableProp,\n\n nodeId,\n icon = null,\n label,\n payload,\n\n onClick,\n onMouseDown,\n onFocus,\n\n children,\n\n ...others\n } = props;\n\n const treeViewControlContext = useContext(TreeViewControlContext);\n const { isExpanded, isSelected, isFocused, isDisabled } = useContext(TreeViewStateContext);\n\n const {\n treeId,\n mode,\n collapsible,\n toggleExpansion,\n multiSelect,\n selectNode,\n selectRange,\n disabledItemsFocusable,\n registerNode,\n unregisterNode,\n mapFirstChar,\n unMapFirstChar,\n focus,\n } = treeViewControlContext;\n\n const treeviewMode = mode === \"treeview\";\n\n let id = null;\n\n if (idProp != null) {\n id = idProp;\n } else if (treeId && nodeId) {\n id = `${treeId}-${nodeId}`;\n }\n\n const [treeitemElement, setTreeitemElement] = useState(null);\n const contentRef = useRef(null);\n const handleRef = useForkRef(setTreeitemElement, ref);\n\n const descendant = useMemo(\n () => ({\n element: treeitemElement,\n id: nodeId,\n }),\n [nodeId, treeitemElement]\n );\n\n const { index, parentId, level } = useDescendant(descendant);\n\n const expandable = collapsible && Boolean(Array.isArray(children) ? children.length : children);\n const expanded = isExpanded ? isExpanded(nodeId) : false;\n const focused = isFocused ? isFocused(nodeId) : false;\n const selected = isSelected ? isSelected(nodeId) : false;\n const disabled = isDisabled ? isDisabled(nodeId) : false;\n\n const selectable = selectableProp != null ? selectableProp : !collapsible || !expandable;\n\n useEffect(() => {\n // On the first render a node's index will be -1. We want to wait for the real index.\n if (registerNode && unregisterNode && index !== -1) {\n registerNode({\n id: nodeId,\n idAttribute: id,\n index,\n parentId,\n selectable,\n expandable,\n disabled: disabledProp,\n onFocus,\n payload,\n });\n\n return () => {\n unregisterNode(nodeId);\n };\n }\n\n return undefined;\n }, [\n registerNode,\n unregisterNode,\n parentId,\n index,\n nodeId,\n expandable,\n disabledProp,\n id,\n selectable,\n onFocus,\n payload,\n ]);\n\n useEffect(() => {\n if (mapFirstChar && unMapFirstChar && label) {\n mapFirstChar(nodeId, contentRef.current?.textContent.substring(0, 1).toLowerCase());\n\n return () => {\n unMapFirstChar(nodeId);\n };\n }\n return undefined;\n }, [mapFirstChar, unMapFirstChar, nodeId, label]);\n\n let ariaSelected;\n if (multiSelect) {\n ariaSelected = selected;\n } else if (selected) {\n /* single-selection trees unset aria-selected on un-selected items.\n *\n * If the tree does not support multiple selection, aria-selected\n * is set to true for the selected node and it is not present on any other node in the tree.\n * Source: https://www.w3.org/TR/wai-aria-practices/#TreeView\n */\n ariaSelected = true;\n }\n\n const handleFocus = useCallback(\n (event) => {\n // DOM focus stays on the tree which manages focus with aria-activedescendant\n if (event.target === event.currentTarget) {\n (event.target.ownerDocument || document)\n .getElementById(treeId)\n .focus({ preventScroll: true });\n }\n\n const unfocusable = !disabledItemsFocusable && disabled;\n if (!focused && event.currentTarget === event.target && !unfocusable) {\n focus(event, nodeId);\n }\n },\n [disabled, disabledItemsFocusable, focus, focused, nodeId, treeId]\n );\n\n const handleExpansion = useCallback(\n (event) => {\n if (!disabled) {\n if (treeviewMode && !focused) {\n focus(event, nodeId);\n }\n\n const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n // If already expanded and trying to toggle selection don't close\n if (expandable && !(multiple && isExpanded(nodeId))) {\n toggleExpansion(event, nodeId);\n }\n }\n },\n [\n disabled,\n expandable,\n focus,\n focused,\n isExpanded,\n multiSelect,\n nodeId,\n toggleExpansion,\n treeviewMode,\n ]\n );\n\n const handleSelection = useCallback(\n (event) => {\n if (selectable && !disabled) {\n if (treeviewMode && !focused) {\n focus(event, nodeId);\n }\n\n const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n if (multiple) {\n if (event.shiftKey) {\n selectRange(event, { end: nodeId });\n } else {\n selectNode(event, nodeId, true);\n }\n } else {\n selectNode(event, nodeId);\n }\n }\n },\n [\n disabled,\n focus,\n focused,\n multiSelect,\n nodeId,\n selectNode,\n selectRange,\n selectable,\n treeviewMode,\n ]\n );\n\n const handleMouseDown = useCallback(\n (event) => {\n preventSelection(event, disabled);\n\n if (onMouseDown) {\n onMouseDown(event);\n }\n },\n [disabled, onMouseDown]\n );\n\n const handleClick = useCallback(\n (event) => {\n if (!disabled) {\n if (expandable) {\n handleExpansion(event);\n }\n\n if (selectable) {\n handleSelection(event);\n }\n }\n\n if (onClick) {\n onClick(event);\n }\n },\n [disabled, expandable, handleExpansion, handleSelection, onClick, selectable]\n );\n\n const handleKeyDown = useCallback(\n (event) => {\n let isEventHandled = false;\n const { key } = event;\n\n if (event.altKey || event.ctrlKey || event.metaKey || event.currentTarget !== event.target) {\n return;\n }\n if (contentRef.current === event.currentTarget) {\n if (key === \"Enter\" || key === \" \") {\n if (expandable) {\n isEventHandled = handleExpansion(event);\n }\n\n if (selectable) {\n isEventHandled = handleSelection(event);\n }\n }\n\n if (isEventHandled) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n },\n [expandable, handleExpansion, handleSelection, selectable]\n );\n\n const renderedContent = useMemo(\n () => (\n <HvTypography\n id={setId(id, \"button\")}\n component=\"div\"\n innerRef={contentRef}\n className={classes.content}\n onClick={handleClick}\n onMouseDown={handleMouseDown}\n style={{\n paddingLeft: (expandable || icon != null ? 0 : 10) + level * (collapsible ? 32 : 10),\n }}\n {...(treeviewMode\n ? {\n role: \"button\",\n tabIndex: -1,\n onFocus: handleFocus,\n }\n : {\n role: \"button\",\n tabIndex: selectable || expandable ? 0 : -1,\n onKeyDown: handleKeyDown,\n \"aria-current\": selectable && selected ? \"page\" : undefined,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-controls\": expandable ? setId(id, \"group\") : undefined,\n })}\n >\n {expandable && (expanded ? <DropUpXS /> : <DropDownXS />)}\n {icon}\n {label}\n </HvTypography>\n ),\n [\n id,\n classes.content,\n handleClick,\n handleMouseDown,\n expandable,\n level,\n collapsible,\n treeviewMode,\n handleFocus,\n handleKeyDown,\n selectable,\n selected,\n expanded,\n icon,\n label,\n ]\n );\n\n const renderedChildren = useMemo(\n () =>\n children && (\n <ul\n id={setId(id, \"group\")}\n className={classes.group}\n role={treeviewMode ? \"group\" : undefined}\n >\n {children}\n </ul>\n ),\n [children, classes.group, id, treeviewMode]\n );\n\n return (\n <li\n ref={handleRef}\n id={id}\n className={clsx(classes.node, className, {\n [classes.disabled]: disabled,\n [classes.expandable]: expandable,\n [classes.collapsed]: expandable && !expanded,\n [classes.expanded]: expandable && expanded,\n [classes.selectable]: !disabled && selectable,\n [classes.unselectable]: !disabled && !selectable,\n [classes.selected]: !disabled && selectable && selected,\n [classes.unselected]: !disabled && selectable && !selected,\n [classes.focused]: focused,\n })}\n data-hasicon={icon != null ? true : undefined}\n {...(mode === \"treeview\" && {\n role: \"treeitem\",\n \"aria-selected\": ariaSelected,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-disabled\": disabled ? true : undefined,\n })}\n {...others}\n >\n {renderedContent}\n <DescendantProvider id={nodeId} level={level + 1}>\n {renderedChildren}\n </DescendantProvider>\n </li>\n );\n});\n\nTreeViewItem.propTypes = {\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied to the Radio button.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root of the component.\n */\n node: PropTypes.string,\n /**\n * Style applied to the content.\n */\n content: PropTypes.string,\n /**\n * Style applied to the group.\n */\n group: PropTypes.string,\n /**\n * Style applied when item is disabled.\n */\n disabled: PropTypes.string,\n /**\n * Style applied when item is expandable.\n */\n expandable: PropTypes.string,\n /**\n * Style applied when item is collapsed.\n */\n collapsed: PropTypes.string,\n /**\n * Style applied when item is expanded.\n */\n expanded: PropTypes.string,\n /**\n * Style applied when item is selectable.\n */\n selectable: PropTypes.string,\n /**\n * Style applied when item is unselectable.\n */\n unselectable: PropTypes.string,\n /**\n * Style applied when item is selected.\n */\n selected: PropTypes.string,\n /**\n * Style applied when item is unselectable.\n */\n unselected: PropTypes.string,\n /**\n * Style applied when item is focused.\n */\n focused: PropTypes.string,\n }).isRequired,\n /**\n * Is the node disabled.\n */\n disabled: PropTypes.bool,\n /**\n * Can the node be selected.\n */\n selectable: PropTypes.bool,\n /**\n * The id of the node.\n */\n nodeId: PropTypes.string.isRequired,\n /**\n * The icon to display next to the node's label.\n */\n icon: PropTypes.node,\n /**\n * The item label.\n */\n label: PropTypes.node.isRequired,\n /**\n * The node payload.\n */\n // eslint-disable-next-line react/forbid-prop-types\n payload: PropTypes.any,\n /**\n * @ignore\n */\n onClick: PropTypes.func,\n /**\n * @ignore\n */\n onMouseDown: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n};\n\nexport default withStyles(styles, {\n name: \"HvVerticalNavigationTreeViewItem\",\n})(TreeViewItem);\n"],"mappings":"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"}
@@ -105,9 +105,9 @@ const HvDialog = _ref => {
105
105
  },
106
106
  onClose: (event, reason) => onClose(event, reason),
107
107
  onKeyDown: keyDownHandler
108
- }, others), /*#__PURE__*/React.createElement("div", {
108
+ }, others, {
109
109
  "aria-modal": true
110
- }, /*#__PURE__*/React.createElement(Button, {
110
+ }), /*#__PURE__*/React.createElement(Button, {
111
111
  id: setId(id, "close"),
112
112
  className: classes.closeButton,
113
113
  category: "ghost",
@@ -115,7 +115,7 @@ const HvDialog = _ref => {
115
115
  "aria-label": buttonTitle
116
116
  }, /*#__PURE__*/React.createElement(CloseButtonTooltipWrapper, null)), children && typeof children === "object" ? React.Children.map(children, c => /*#__PURE__*/React.cloneElement(c, {
117
117
  fullscreen
118
- })) : children));
118
+ })) : children);
119
119
  };
120
120
 
121
121
  process.env.NODE_ENV !== "production" ? HvDialog.propTypes = {
@@ -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 >\n <div aria-modal>\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 </div>\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 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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"}
@@ -2,7 +2,9 @@ const styles = theme => ({
2
2
  root: {
3
3
  margin: "0",
4
4
  padding: theme.hv.spacing.sm,
5
- borderTop: `3px solid ${theme.hv.palette.atmosphere.atmo2}`
5
+ borderTop: `3px solid ${theme.hv.palette.atmosphere.atmo2}`,
6
+ height: 100,
7
+ flex: 1
6
8
  },
7
9
  spacing: {
8
10
  "& > :not(:first-child)": {
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","theme","root","margin","padding","hv","spacing","sm","borderTop","palette","atmosphere","atmo2","marginLeft","xs","fullscreen","position","width","bottom","left"],"sources":["../../../../src/Dialog/DialogActions/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n margin: \"0\",\n padding: theme.hv.spacing.sm,\n borderTop: `3px solid ${theme.hv.palette.atmosphere.atmo2}`,\n },\n spacing: {\n \"& > :not(:first-child)\": {\n marginLeft: theme.hv.spacing.xs,\n },\n },\n fullscreen: {\n position: \"fixed\",\n width: \"100%\",\n bottom: 0,\n left: 0,\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,MAAMA,MAAM,GAAIC,KAAD,KAAY;EACzBC,IAAI,EAAE;IACJC,MAAM,EAAE,GADJ;IAEJC,OAAO,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,EAFtB;IAGJC,SAAS,EAAG,aAAYP,KAAK,CAACI,EAAN,CAASI,OAAT,CAAiBC,UAAjB,CAA4BC,KAAM;EAHtD,CADmB;EAMzBL,OAAO,EAAE;IACP,0BAA0B;MACxBM,UAAU,EAAEX,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBO;IADL;EADnB,CANgB;EAWzBC,UAAU,EAAE;IACVC,QAAQ,EAAE,OADA;IAEVC,KAAK,EAAE,MAFG;IAGVC,MAAM,EAAE,CAHE;IAIVC,IAAI,EAAE;EAJI;AAXa,CAAZ,CAAf;;AAmBA,eAAelB,MAAf"}
1
+ {"version":3,"file":"styles.js","names":["styles","theme","root","margin","padding","hv","spacing","sm","borderTop","palette","atmosphere","atmo2","height","flex","marginLeft","xs","fullscreen","position","width","bottom","left"],"sources":["../../../../src/Dialog/DialogActions/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n margin: \"0\",\n padding: theme.hv.spacing.sm,\n borderTop: `3px solid ${theme.hv.palette.atmosphere.atmo2}`,\n height: 100,\n flex: 1,\n },\n spacing: {\n \"& > :not(:first-child)\": {\n marginLeft: theme.hv.spacing.xs,\n },\n },\n fullscreen: {\n position: \"fixed\",\n width: \"100%\",\n bottom: 0,\n left: 0,\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,MAAMA,MAAM,GAAIC,KAAD,KAAY;EACzBC,IAAI,EAAE;IACJC,MAAM,EAAE,GADJ;IAEJC,OAAO,EAAEH,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBC,EAFtB;IAGJC,SAAS,EAAG,aAAYP,KAAK,CAACI,EAAN,CAASI,OAAT,CAAiBC,UAAjB,CAA4BC,KAAM,EAHtD;IAIJC,MAAM,EAAE,GAJJ;IAKJC,IAAI,EAAE;EALF,CADmB;EAQzBP,OAAO,EAAE;IACP,0BAA0B;MACxBQ,UAAU,EAAEb,KAAK,CAACI,EAAN,CAASC,OAAT,CAAiBS;IADL;EADnB,CARgB;EAazBC,UAAU,EAAE;IACVC,QAAQ,EAAE,OADA;IAEVC,KAAK,EAAE,MAFG;IAGVC,MAAM,EAAE,CAHE;IAIVC,IAAI,EAAE;EAJI;AAba,CAAZ,CAAf;;AAqBA,eAAepB,MAAf"}
@@ -5,7 +5,9 @@ const styles = theme => ({
5
5
  },
6
6
  textContent: {
7
7
  marginLeft: "42px",
8
- marginRight: "42px"
8
+ paddingRight: "62px",
9
+ flex: 1,
10
+ overflowY: "auto"
9
11
  }
10
12
  });
11
13
 
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","theme","root","padding","hvSpacing","flex","textContent","marginLeft","marginRight"],"sources":["../../../../src/Dialog/DialogContent/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n padding: theme.hvSpacing(0, \"sm\", \"sm\", \"sm\"),\n flex: \"none\",\n },\n textContent: {\n marginLeft: \"42px\",\n marginRight: \"42px\",\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,MAAMA,MAAM,GAAIC,KAAD,KAAY;EACzBC,IAAI,EAAE;IACJC,OAAO,EAAEF,KAAK,CAACG,SAAN,CAAgB,CAAhB,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,IAA/B,CADL;IAEJC,IAAI,EAAE;EAFF,CADmB;EAKzBC,WAAW,EAAE;IACXC,UAAU,EAAE,MADD;IAEXC,WAAW,EAAE;EAFF;AALY,CAAZ,CAAf;;AAWA,eAAeR,MAAf"}
1
+ {"version":3,"file":"styles.js","names":["styles","theme","root","padding","hvSpacing","flex","textContent","marginLeft","paddingRight","overflowY"],"sources":["../../../../src/Dialog/DialogContent/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n padding: theme.hvSpacing(0, \"sm\", \"sm\", \"sm\"),\n flex: \"none\",\n },\n textContent: {\n marginLeft: \"42px\",\n paddingRight: \"62px\",\n flex: 1,\n overflowY: \"auto\",\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,MAAMA,MAAM,GAAIC,KAAD,KAAY;EACzBC,IAAI,EAAE;IACJC,OAAO,EAAEF,KAAK,CAACG,SAAN,CAAgB,CAAhB,EAAmB,IAAnB,EAAyB,IAAzB,EAA+B,IAA/B,CADL;IAEJC,IAAI,EAAE;EAFF,CADmB;EAKzBC,WAAW,EAAE;IACXC,UAAU,EAAE,MADD;IAEXC,YAAY,EAAE,MAFH;IAGXH,IAAI,EAAE,CAHK;IAIXI,SAAS,EAAE;EAJA;AALY,CAAZ,CAAf;;AAaA,eAAeT,MAAf"}
@@ -20,13 +20,16 @@ const HvDialogTitle = _ref => {
20
20
  } = _ref,
21
21
  others = _objectWithoutProperties(_ref, _excluded);
22
22
 
23
- const isString = typeof children === "string"; // prevent the `fullscreen` prop from being passed to the `DialogTitle` component
23
+ const isString = typeof children === "string";
24
+ const {
25
+ fullscreen
26
+ } = others; // prevent the `fullscreen` prop from being passed to the `DialogTitle` component
24
27
  // eslint-disable-next-line no-param-reassign
25
28
 
26
29
  delete others.fullscreen;
27
30
  const icon = customIcon || showIcon && iconVariant(variant);
28
31
  return /*#__PURE__*/React.createElement(DialogTitle, _extends({
29
- className: clsx(classes.root, className),
32
+ className: clsx(classes.root, className, fullscreen && "fullscreen"),
30
33
  disableTypography: true
31
34
  }, others), /*#__PURE__*/React.createElement("div", {
32
35
  className: classes.messageContainer
@@ -1 +1 @@
1
- {"version":3,"file":"DialogTitle.js","names":["React","PropTypes","clsx","DialogTitle","withStyles","HvTypography","iconVariant","styles","HvDialogTitle","classes","className","children","variant","showIcon","customIcon","others","isString","fullscreen","icon","root","messageContainer","textWithIcon","propTypes","string","shape","closeButton","isRequired","oneOf","bool","node","name"],"sources":["../../../../src/Dialog/DialogTitle/DialogTitle.js"],"sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { DialogTitle, withStyles } from \"@material-ui/core\";\nimport HvTypography from \"../../Typography\";\nimport iconVariant from \"../../utils/iconVariant\";\nimport styles from \"./styles\";\n\nconst HvDialogTitle = ({\n classes,\n className,\n children,\n variant = \"default\",\n showIcon = true,\n customIcon = null,\n ...others\n}) => {\n const isString = typeof children === \"string\";\n // prevent the `fullscreen` prop from being passed to the `DialogTitle` component\n // eslint-disable-next-line no-param-reassign\n delete others.fullscreen;\n\n const icon = customIcon || (showIcon && iconVariant(variant));\n\n return (\n <DialogTitle className={clsx(classes.root, className)} disableTypography {...others}>\n <div className={classes.messageContainer}>\n {icon}\n <div className={clsx({ [classes.textWithIcon]: icon })}>\n {!isString && children}\n {isString && <HvTypography variant=\"xxsTitle\">{children}</HvTypography>}\n </div>\n </div>\n </DialogTitle>\n );\n};\n\nHvDialogTitle.propTypes = {\n /**\n * Class names to be applied.\n */\n className: 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 (container for the title).\n */\n root: PropTypes.string,\n /**\n * Style applied to the container of the title\n */\n messageContainer: PropTypes.string,\n /**\n * Style applied to the text when the icon is present.\n */\n textWithIcon: PropTypes.string,\n /**\n * Style applied to the icon.\n */\n icon: PropTypes.string,\n /**\n * Style applied to the close button.\n */\n closeButton: PropTypes.string,\n }).isRequired,\n /**\n * Variant of the Dialog.\n */\n variant: PropTypes.oneOf([\"success\", \"warning\", \"error\", \"info\", \"default\"]),\n /**\n * Controls if the associated icon to the variant should be shown.\n */\n showIcon: PropTypes.bool,\n /**\n * Custom icon to replace the variant default.\n */\n customIcon: PropTypes.node,\n /**\n * Node to be render.\n */\n children: PropTypes.node.isRequired,\n};\n\nexport default withStyles(styles, { name: \"HvDialogTitle\" })(HvDialogTitle);\n"],"mappings":";;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,IAAP,MAAiB,MAAjB;AACA,SAASC,WAAT,EAAsBC,UAAtB,QAAwC,mBAAxC;AACA,OAAOC,YAAP,MAAyB,kBAAzB;AACA,OAAOC,WAAP,MAAwB,yBAAxB;AACA,OAAOC,MAAP,MAAmB,UAAnB;;AAEA,MAAMC,aAAa,GAAG,QAQhB;EAAA,IARiB;IACrBC,OADqB;IAErBC,SAFqB;IAGrBC,QAHqB;IAIrBC,OAAO,GAAG,SAJW;IAKrBC,QAAQ,GAAG,IALU;IAMrBC,UAAU,GAAG;EANQ,CAQjB;EAAA,IADDC,MACC;;EACJ,MAAMC,QAAQ,GAAG,OAAOL,QAAP,KAAoB,QAArC,CADI,CAEJ;EACA;;EACA,OAAOI,MAAM,CAACE,UAAd;EAEA,MAAMC,IAAI,GAAGJ,UAAU,IAAKD,QAAQ,IAAIP,WAAW,CAACM,OAAD,CAAnD;EAEA,oBACE,oBAAC,WAAD;IAAa,SAAS,EAAEV,IAAI,CAACO,OAAO,CAACU,IAAT,EAAeT,SAAf,CAA5B;IAAuD,iBAAiB;EAAxE,GAA6EK,MAA7E,gBACE;IAAK,SAAS,EAAEN,OAAO,CAACW;EAAxB,GACGF,IADH,eAEE;IAAK,SAAS,EAAEhB,IAAI,CAA2BgB,IAA3B,IAAIT,OAAO,CAACY,YAAZ;EAApB,GACG,CAACL,QAAD,IAAaL,QADhB,EAEGK,QAAQ,iBAAI,oBAAC,YAAD;IAAc,OAAO,EAAC;EAAtB,GAAkCL,QAAlC,CAFf,CAFF,CADF,CADF;AAWD,CA3BD;;AA6BA,wCAAAH,aAAa,CAACc,SAAd,GAA0B;EACxB;AACF;AACA;EACEZ,SAAS,EAAET,SAAS,CAACsB,MAJG;;EAKxB;AACF;AACA;EACEd,OAAO,EAAER,SAAS,CAACuB,KAAV,CAAgB;IACvB;AACJ;AACA;IACIL,IAAI,EAAElB,SAAS,CAACsB,MAJO;;IAKvB;AACJ;AACA;IACIH,gBAAgB,EAAEnB,SAAS,CAACsB,MARL;;IASvB;AACJ;AACA;IACIF,YAAY,EAAEpB,SAAS,CAACsB,MAZD;;IAavB;AACJ;AACA;IACIL,IAAI,EAAEjB,SAAS,CAACsB,MAhBO;;IAiBvB;AACJ;AACA;IACIE,WAAW,EAAExB,SAAS,CAACsB;EApBA,CAAhB,EAqBNG,UA7BqB;;EA8BxB;AACF;AACA;EACEd,OAAO,EAAEX,SAAS,CAAC0B,KAAV,CAAgB,CAAC,SAAD,EAAY,SAAZ,EAAuB,OAAvB,EAAgC,MAAhC,EAAwC,SAAxC,CAAhB,CAjCe;;EAkCxB;AACF;AACA;EACEd,QAAQ,EAAEZ,SAAS,CAAC2B,IArCI;;EAsCxB;AACF;AACA;EACEd,UAAU,EAAEb,SAAS,CAAC4B,IAzCE;;EA0CxB;AACF;AACA;EACElB,QAAQ,EAAEV,SAAS,CAAC4B,IAAV,CAAeH;AA7CD,CAA1B;AAgDA,eAAetB,UAAU,CAACG,MAAD,EAAS;EAAEuB,IAAI,EAAE;AAAR,CAAT,CAAV,CAA8CtB,aAA9C,CAAf"}
1
+ {"version":3,"file":"DialogTitle.js","names":["React","PropTypes","clsx","DialogTitle","withStyles","HvTypography","iconVariant","styles","HvDialogTitle","classes","className","children","variant","showIcon","customIcon","others","isString","fullscreen","icon","root","messageContainer","textWithIcon","propTypes","string","shape","closeButton","isRequired","oneOf","bool","node","name"],"sources":["../../../../src/Dialog/DialogTitle/DialogTitle.js"],"sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\nimport { DialogTitle, withStyles } from \"@material-ui/core\";\nimport HvTypography from \"../../Typography\";\nimport iconVariant from \"../../utils/iconVariant\";\nimport styles from \"./styles\";\n\nconst HvDialogTitle = ({\n classes,\n className,\n children,\n variant = \"default\",\n showIcon = true,\n customIcon = null,\n ...others\n}) => {\n const isString = typeof children === \"string\";\n const { fullscreen } = others;\n\n // prevent the `fullscreen` prop from being passed to the `DialogTitle` component\n // eslint-disable-next-line no-param-reassign\n delete others.fullscreen;\n\n const icon = customIcon || (showIcon && iconVariant(variant));\n\n return (\n <DialogTitle\n className={clsx(classes.root, className, fullscreen ? \"fullscreen\" : \"\")}\n disableTypography\n {...others}\n >\n <div className={classes.messageContainer}>\n {icon}\n <div className={clsx({ [classes.textWithIcon]: icon })}>\n {!isString && children}\n {isString && <HvTypography variant=\"xxsTitle\">{children}</HvTypography>}\n </div>\n </div>\n </DialogTitle>\n );\n};\n\nHvDialogTitle.propTypes = {\n /**\n * Class names to be applied.\n */\n className: 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 (container for the title).\n */\n root: PropTypes.string,\n /**\n * Style applied to the container of the title\n */\n messageContainer: PropTypes.string,\n /**\n * Style applied to the text when the icon is present.\n */\n textWithIcon: PropTypes.string,\n /**\n * Style applied to the icon.\n */\n icon: PropTypes.string,\n /**\n * Style applied to the close button.\n */\n closeButton: PropTypes.string,\n }).isRequired,\n /**\n * Variant of the Dialog.\n */\n variant: PropTypes.oneOf([\"success\", \"warning\", \"error\", \"info\", \"default\"]),\n /**\n * Controls if the associated icon to the variant should be shown.\n */\n showIcon: PropTypes.bool,\n /**\n * Custom icon to replace the variant default.\n */\n customIcon: PropTypes.node,\n /**\n * Node to be render.\n */\n children: PropTypes.node.isRequired,\n};\n\nexport default withStyles(styles, { name: \"HvDialogTitle\" })(HvDialogTitle);\n"],"mappings":";;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AACA,OAAOC,IAAP,MAAiB,MAAjB;AACA,SAASC,WAAT,EAAsBC,UAAtB,QAAwC,mBAAxC;AACA,OAAOC,YAAP,MAAyB,kBAAzB;AACA,OAAOC,WAAP,MAAwB,yBAAxB;AACA,OAAOC,MAAP,MAAmB,UAAnB;;AAEA,MAAMC,aAAa,GAAG,QAQhB;EAAA,IARiB;IACrBC,OADqB;IAErBC,SAFqB;IAGrBC,QAHqB;IAIrBC,OAAO,GAAG,SAJW;IAKrBC,QAAQ,GAAG,IALU;IAMrBC,UAAU,GAAG;EANQ,CAQjB;EAAA,IADDC,MACC;;EACJ,MAAMC,QAAQ,GAAG,OAAOL,QAAP,KAAoB,QAArC;EACA,MAAM;IAAEM;EAAF,IAAiBF,MAAvB,CAFI,CAIJ;EACA;;EACA,OAAOA,MAAM,CAACE,UAAd;EAEA,MAAMC,IAAI,GAAGJ,UAAU,IAAKD,QAAQ,IAAIP,WAAW,CAACM,OAAD,CAAnD;EAEA,oBACE,oBAAC,WAAD;IACE,SAAS,EAAEV,IAAI,CAACO,OAAO,CAACU,IAAT,EAAeT,SAAf,EAA0BO,UAA1B,IAAuC,YAAvC,CADjB;IAEE,iBAAiB;EAFnB,GAGMF,MAHN,gBAKE;IAAK,SAAS,EAAEN,OAAO,CAACW;EAAxB,GACGF,IADH,eAEE;IAAK,SAAS,EAAEhB,IAAI,CAA2BgB,IAA3B,IAAIT,OAAO,CAACY,YAAZ;EAApB,GACG,CAACL,QAAD,IAAaL,QADhB,EAEGK,QAAQ,iBAAI,oBAAC,YAAD;IAAc,OAAO,EAAC;EAAtB,GAAkCL,QAAlC,CAFf,CAFF,CALF,CADF;AAeD,CAjCD;;AAmCA,wCAAAH,aAAa,CAACc,SAAd,GAA0B;EACxB;AACF;AACA;EACEZ,SAAS,EAAET,SAAS,CAACsB,MAJG;;EAKxB;AACF;AACA;EACEd,OAAO,EAAER,SAAS,CAACuB,KAAV,CAAgB;IACvB;AACJ;AACA;IACIL,IAAI,EAAElB,SAAS,CAACsB,MAJO;;IAKvB;AACJ;AACA;IACIH,gBAAgB,EAAEnB,SAAS,CAACsB,MARL;;IASvB;AACJ;AACA;IACIF,YAAY,EAAEpB,SAAS,CAACsB,MAZD;;IAavB;AACJ;AACA;IACIL,IAAI,EAAEjB,SAAS,CAACsB,MAhBO;;IAiBvB;AACJ;AACA;IACIE,WAAW,EAAExB,SAAS,CAACsB;EApBA,CAAhB,EAqBNG,UA7BqB;;EA8BxB;AACF;AACA;EACEd,OAAO,EAAEX,SAAS,CAAC0B,KAAV,CAAgB,CAAC,SAAD,EAAY,SAAZ,EAAuB,OAAvB,EAAgC,MAAhC,EAAwC,SAAxC,CAAhB,CAjCe;;EAkCxB;AACF;AACA;EACEd,QAAQ,EAAEZ,SAAS,CAAC2B,IArCI;;EAsCxB;AACF;AACA;EACEd,UAAU,EAAEb,SAAS,CAAC4B,IAzCE;;EA0CxB;AACF;AACA;EACElB,QAAQ,EAAEV,SAAS,CAAC4B,IAAV,CAAeH;AA7CD,CAA1B;AAgDA,eAAetB,UAAU,CAACG,MAAD,EAAS;EAAEuB,IAAI,EAAE;AAAR,CAAT,CAAV,CAA8CtB,aAA9C,CAAf"}
@@ -2,8 +2,9 @@ const styles = theme => ({
2
2
  root: {
3
3
  padding: theme.hvSpacing("sm"),
4
4
  margin: 0,
5
- display: "flex",
6
- justifyContent: "space-between"
5
+ "&:not(.fullscreen)": {
6
+ flex: 1
7
+ }
7
8
  },
8
9
  messageContainer: {
9
10
  display: "flex",
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","theme","root","padding","hvSpacing","margin","display","justifyContent","messageContainer","alignItems","textWithIcon","marginLeft","marginRight","icon","hv","spacing","md","width","height"],"sources":["../../../../src/Dialog/DialogTitle/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n padding: theme.hvSpacing(\"sm\"),\n margin: 0,\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n messageContainer: {\n display: \"flex\",\n alignItems: \"center\",\n },\n textWithIcon: {\n marginLeft: theme.hvSpacing(\"xs\"),\n // 32px is the icon width\n marginRight: `calc(32px + ${theme.hvSpacing(\"xs\")})`,\n },\n icon: {\n marginRight: theme.hv.spacing.md,\n width: 48,\n height: 48,\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,MAAMA,MAAM,GAAIC,KAAD,KAAY;EACzBC,IAAI,EAAE;IACJC,OAAO,EAAEF,KAAK,CAACG,SAAN,CAAgB,IAAhB,CADL;IAEJC,MAAM,EAAE,CAFJ;IAGJC,OAAO,EAAE,MAHL;IAIJC,cAAc,EAAE;EAJZ,CADmB;EAOzBC,gBAAgB,EAAE;IAChBF,OAAO,EAAE,MADO;IAEhBG,UAAU,EAAE;EAFI,CAPO;EAWzBC,YAAY,EAAE;IACZC,UAAU,EAAEV,KAAK,CAACG,SAAN,CAAgB,IAAhB,CADA;IAEZ;IACAQ,WAAW,EAAG,eAAcX,KAAK,CAACG,SAAN,CAAgB,IAAhB,CAAsB;EAHtC,CAXW;EAgBzBS,IAAI,EAAE;IACJD,WAAW,EAAEX,KAAK,CAACa,EAAN,CAASC,OAAT,CAAiBC,EAD1B;IAEJC,KAAK,EAAE,EAFH;IAGJC,MAAM,EAAE;EAHJ;AAhBmB,CAAZ,CAAf;;AAuBA,eAAelB,MAAf"}
1
+ {"version":3,"file":"styles.js","names":["styles","theme","root","padding","hvSpacing","margin","flex","messageContainer","display","alignItems","textWithIcon","marginLeft","marginRight","icon","hv","spacing","md","width","height"],"sources":["../../../../src/Dialog/DialogTitle/styles.js"],"sourcesContent":["const styles = (theme) => ({\n root: {\n padding: theme.hvSpacing(\"sm\"),\n margin: 0,\n \"&:not(.fullscreen)\": {\n flex: 1,\n },\n },\n messageContainer: {\n display: \"flex\",\n alignItems: \"center\",\n },\n textWithIcon: {\n marginLeft: theme.hvSpacing(\"xs\"),\n // 32px is the icon width\n marginRight: `calc(32px + ${theme.hvSpacing(\"xs\")})`,\n },\n icon: {\n marginRight: theme.hv.spacing.md,\n width: 48,\n height: 48,\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,MAAMA,MAAM,GAAIC,KAAD,KAAY;EACzBC,IAAI,EAAE;IACJC,OAAO,EAAEF,KAAK,CAACG,SAAN,CAAgB,IAAhB,CADL;IAEJC,MAAM,EAAE,CAFJ;IAGJ,sBAAsB;MACpBC,IAAI,EAAE;IADc;EAHlB,CADmB;EAQzBC,gBAAgB,EAAE;IAChBC,OAAO,EAAE,MADO;IAEhBC,UAAU,EAAE;EAFI,CARO;EAYzBC,YAAY,EAAE;IACZC,UAAU,EAAEV,KAAK,CAACG,SAAN,CAAgB,IAAhB,CADA;IAEZ;IACAQ,WAAW,EAAG,eAAcX,KAAK,CAACG,SAAN,CAAgB,IAAhB,CAAsB;EAHtC,CAZW;EAiBzBS,IAAI,EAAE;IACJD,WAAW,EAAEX,KAAK,CAACa,EAAN,CAASC,OAAT,CAAiBC,EAD1B;IAEJC,KAAK,EAAE,EAFH;IAGJC,MAAM,EAAE;EAHJ;AAjBmB,CAAZ,CAAf;;AAwBA,eAAelB,MAAf"}
@@ -10,7 +10,9 @@ const styles = theme => ({
10
10
  overflow: "auto",
11
11
  boxShadow: theme.hv.shadows[1],
12
12
  "&:not(.fullscreen)": {
13
- maxHeight: "calc(100% - 200px)"
13
+ maxHeight: "calc(100% - 200px)",
14
+ display: "flex",
15
+ flexDirection: "column"
14
16
  }
15
17
  },
16
18
  closeButton: {
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["fade","styles","theme","background","hv","palette","atmosphere","atmo4","paper","atmo1","padding","overflow","boxShadow","shadows","maxHeight","closeButton","minWidth","position","top","hvSpacing","right"],"sources":["../../../src/Dialog/styles.js"],"sourcesContent":["import fade from \"../utils/hexToRgbA\";\n\nconst styles = (theme) => ({\n background: {\n background: fade(theme.hv.palette.atmosphere.atmo4, 0.8),\n },\n paper: {\n background: `${theme.hv.palette.atmosphere.atmo1}`,\n padding: \"0px\",\n overflow: \"auto\",\n boxShadow: theme.hv.shadows[1],\n \"&:not(.fullscreen)\": {\n maxHeight: \"calc(100% - 200px)\",\n },\n },\n closeButton: {\n padding: 0,\n minWidth: \"inherit\",\n position: \"absolute\",\n top: theme.hvSpacing(\"sm\"),\n right: theme.hvSpacing(\"sm\"),\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,OAAOA,IAAP,MAAiB,oBAAjB;;AAEA,MAAMC,MAAM,GAAIC,KAAD,KAAY;EACzBC,UAAU,EAAE;IACVA,UAAU,EAAEH,IAAI,CAACE,KAAK,CAACE,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC,KAA7B,EAAoC,GAApC;EADN,CADa;EAIzBC,KAAK,EAAE;IACLL,UAAU,EAAG,GAAED,KAAK,CAACE,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BG,KAAM,EAD5C;IAELC,OAAO,EAAE,KAFJ;IAGLC,QAAQ,EAAE,MAHL;IAILC,SAAS,EAAEV,KAAK,CAACE,EAAN,CAASS,OAAT,CAAiB,CAAjB,CAJN;IAKL,sBAAsB;MACpBC,SAAS,EAAE;IADS;EALjB,CAJkB;EAazBC,WAAW,EAAE;IACXL,OAAO,EAAE,CADE;IAEXM,QAAQ,EAAE,SAFC;IAGXC,QAAQ,EAAE,UAHC;IAIXC,GAAG,EAAEhB,KAAK,CAACiB,SAAN,CAAgB,IAAhB,CAJM;IAKXC,KAAK,EAAElB,KAAK,CAACiB,SAAN,CAAgB,IAAhB;EALI;AAbY,CAAZ,CAAf;;AAsBA,eAAelB,MAAf"}
1
+ {"version":3,"file":"styles.js","names":["fade","styles","theme","background","hv","palette","atmosphere","atmo4","paper","atmo1","padding","overflow","boxShadow","shadows","maxHeight","display","flexDirection","closeButton","minWidth","position","top","hvSpacing","right"],"sources":["../../../src/Dialog/styles.js"],"sourcesContent":["import fade from \"../utils/hexToRgbA\";\n\nconst styles = (theme) => ({\n background: {\n background: fade(theme.hv.palette.atmosphere.atmo4, 0.8),\n },\n paper: {\n background: `${theme.hv.palette.atmosphere.atmo1}`,\n padding: \"0px\",\n overflow: \"auto\",\n boxShadow: theme.hv.shadows[1],\n \"&:not(.fullscreen)\": {\n maxHeight: \"calc(100% - 200px)\",\n display: \"flex\",\n flexDirection: \"column\",\n },\n },\n closeButton: {\n padding: 0,\n minWidth: \"inherit\",\n position: \"absolute\",\n top: theme.hvSpacing(\"sm\"),\n right: theme.hvSpacing(\"sm\"),\n },\n});\n\nexport default styles;\n"],"mappings":"AAAA,OAAOA,IAAP,MAAiB,oBAAjB;;AAEA,MAAMC,MAAM,GAAIC,KAAD,KAAY;EACzBC,UAAU,EAAE;IACVA,UAAU,EAAEH,IAAI,CAACE,KAAK,CAACE,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BC,KAA7B,EAAoC,GAApC;EADN,CADa;EAIzBC,KAAK,EAAE;IACLL,UAAU,EAAG,GAAED,KAAK,CAACE,EAAN,CAASC,OAAT,CAAiBC,UAAjB,CAA4BG,KAAM,EAD5C;IAELC,OAAO,EAAE,KAFJ;IAGLC,QAAQ,EAAE,MAHL;IAILC,SAAS,EAAEV,KAAK,CAACE,EAAN,CAASS,OAAT,CAAiB,CAAjB,CAJN;IAKL,sBAAsB;MACpBC,SAAS,EAAE,oBADS;MAEpBC,OAAO,EAAE,MAFW;MAGpBC,aAAa,EAAE;IAHK;EALjB,CAJkB;EAezBC,WAAW,EAAE;IACXP,OAAO,EAAE,CADE;IAEXQ,QAAQ,EAAE,SAFC;IAGXC,QAAQ,EAAE,UAHC;IAIXC,GAAG,EAAElB,KAAK,CAACmB,SAAN,CAAgB,IAAhB,CAJM;IAKXC,KAAK,EAAEpB,KAAK,CAACmB,SAAN,CAAgB,IAAhB;EALI;AAfY,CAAZ,CAAf;;AAwBA,eAAepB,MAAf"}
@@ -113,7 +113,9 @@ const TreeViewItem = /*#__PURE__*/React.forwardRef((props, ref) => {
113
113
  }, [registerNode, unregisterNode, parentId, index, nodeId, expandable, disabledProp, id, selectable, onFocus, payload]);
114
114
  useEffect(() => {
115
115
  if (mapFirstChar && unMapFirstChar && label) {
116
- mapFirstChar(nodeId, contentRef.current.textContent.substring(0, 1).toLowerCase());
116
+ var _contentRef$current;
117
+
118
+ mapFirstChar(nodeId, (_contentRef$current = contentRef.current) === null || _contentRef$current === void 0 ? void 0 : _contentRef$current.textContent.substring(0, 1).toLowerCase());
117
119
  return () => {
118
120
  unMapFirstChar(nodeId);
119
121
  };
@@ -1 +1 @@
1
- {"version":3,"file":"TreeViewItem.js","names":["React","useCallback","useContext","useEffect","useMemo","useRef","useState","clsx","PropTypes","withStyles","DropDownXS","DropUpXS","HvTypography","TreeViewControlContext","TreeViewStateContext","setId","useForkRef","DescendantProvider","useDescendant","styles","preventSelection","event","disabled","shiftKey","ctrlKey","metaKey","preventDefault","TreeViewItem","forwardRef","props","ref","id","idProp","className","classes","disabledProp","selectable","selectableProp","nodeId","icon","label","payload","onClick","onMouseDown","onFocus","children","others","treeViewControlContext","isExpanded","isSelected","isFocused","isDisabled","treeId","mode","collapsible","toggleExpansion","multiSelect","selectNode","selectRange","disabledItemsFocusable","registerNode","unregisterNode","mapFirstChar","unMapFirstChar","focus","treeviewMode","treeitemElement","setTreeitemElement","contentRef","handleRef","descendant","element","index","parentId","level","expandable","Boolean","Array","isArray","length","expanded","focused","selected","idAttribute","undefined","current","textContent","substring","toLowerCase","ariaSelected","handleFocus","target","currentTarget","ownerDocument","document","getElementById","preventScroll","unfocusable","handleExpansion","multiple","handleSelection","end","handleMouseDown","handleClick","handleKeyDown","isEventHandled","key","altKey","stopPropagation","renderedContent","content","paddingLeft","role","tabIndex","onKeyDown","renderedChildren","group","node","unselected","unselectable","collapsed","propTypes","string","shape","isRequired","bool","any","func","name"],"sources":["../../../../src/VerticalNavigation/TreeView/TreeViewItem.js"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useMemo, useRef, useState } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { withStyles } from \"@material-ui/core\";\n\nimport { DropDownXS, DropUpXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport HvTypography from \"../../Typography\";\n\nimport { TreeViewControlContext, TreeViewStateContext } from \"./TreeViewContexts\";\n\nimport { setId, useForkRef } from \"../../utils\";\n\nimport { DescendantProvider, useDescendant } from \"./descendants\";\n\nimport styles from \"./styles\";\n\nconst preventSelection = (event, disabled) => {\n if (event.shiftKey || event.ctrlKey || event.metaKey || disabled) {\n // Prevent text selection\n event.preventDefault();\n }\n};\n\nconst TreeViewItem = React.forwardRef((props, ref) => {\n const {\n id: idProp,\n className,\n classes,\n\n disabled: disabledProp = false,\n\n selectable: selectableProp,\n\n nodeId,\n icon = null,\n label,\n payload,\n\n onClick,\n onMouseDown,\n onFocus,\n\n children,\n\n ...others\n } = props;\n\n const treeViewControlContext = useContext(TreeViewControlContext);\n const { isExpanded, isSelected, isFocused, isDisabled } = useContext(TreeViewStateContext);\n\n const {\n treeId,\n mode,\n collapsible,\n toggleExpansion,\n multiSelect,\n selectNode,\n selectRange,\n disabledItemsFocusable,\n registerNode,\n unregisterNode,\n mapFirstChar,\n unMapFirstChar,\n focus,\n } = treeViewControlContext;\n\n const treeviewMode = mode === \"treeview\";\n\n let id = null;\n\n if (idProp != null) {\n id = idProp;\n } else if (treeId && nodeId) {\n id = `${treeId}-${nodeId}`;\n }\n\n const [treeitemElement, setTreeitemElement] = useState(null);\n const contentRef = useRef(null);\n const handleRef = useForkRef(setTreeitemElement, ref);\n\n const descendant = useMemo(\n () => ({\n element: treeitemElement,\n id: nodeId,\n }),\n [nodeId, treeitemElement]\n );\n\n const { index, parentId, level } = useDescendant(descendant);\n\n const expandable = collapsible && Boolean(Array.isArray(children) ? children.length : children);\n const expanded = isExpanded ? isExpanded(nodeId) : false;\n const focused = isFocused ? isFocused(nodeId) : false;\n const selected = isSelected ? isSelected(nodeId) : false;\n const disabled = isDisabled ? isDisabled(nodeId) : false;\n\n const selectable = selectableProp != null ? selectableProp : !collapsible || !expandable;\n\n useEffect(() => {\n // On the first render a node's index will be -1. We want to wait for the real index.\n if (registerNode && unregisterNode && index !== -1) {\n registerNode({\n id: nodeId,\n idAttribute: id,\n index,\n parentId,\n selectable,\n expandable,\n disabled: disabledProp,\n onFocus,\n payload,\n });\n\n return () => {\n unregisterNode(nodeId);\n };\n }\n\n return undefined;\n }, [\n registerNode,\n unregisterNode,\n parentId,\n index,\n nodeId,\n expandable,\n disabledProp,\n id,\n selectable,\n onFocus,\n payload,\n ]);\n\n useEffect(() => {\n if (mapFirstChar && unMapFirstChar && label) {\n mapFirstChar(nodeId, contentRef.current.textContent.substring(0, 1).toLowerCase());\n\n return () => {\n unMapFirstChar(nodeId);\n };\n }\n return undefined;\n }, [mapFirstChar, unMapFirstChar, nodeId, label]);\n\n let ariaSelected;\n if (multiSelect) {\n ariaSelected = selected;\n } else if (selected) {\n /* single-selection trees unset aria-selected on un-selected items.\n *\n * If the tree does not support multiple selection, aria-selected\n * is set to true for the selected node and it is not present on any other node in the tree.\n * Source: https://www.w3.org/TR/wai-aria-practices/#TreeView\n */\n ariaSelected = true;\n }\n\n const handleFocus = useCallback(\n (event) => {\n // DOM focus stays on the tree which manages focus with aria-activedescendant\n if (event.target === event.currentTarget) {\n (event.target.ownerDocument || document)\n .getElementById(treeId)\n .focus({ preventScroll: true });\n }\n\n const unfocusable = !disabledItemsFocusable && disabled;\n if (!focused && event.currentTarget === event.target && !unfocusable) {\n focus(event, nodeId);\n }\n },\n [disabled, disabledItemsFocusable, focus, focused, nodeId, treeId]\n );\n\n const handleExpansion = useCallback(\n (event) => {\n if (!disabled) {\n if (treeviewMode && !focused) {\n focus(event, nodeId);\n }\n\n const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n // If already expanded and trying to toggle selection don't close\n if (expandable && !(multiple && isExpanded(nodeId))) {\n toggleExpansion(event, nodeId);\n }\n }\n },\n [\n disabled,\n expandable,\n focus,\n focused,\n isExpanded,\n multiSelect,\n nodeId,\n toggleExpansion,\n treeviewMode,\n ]\n );\n\n const handleSelection = useCallback(\n (event) => {\n if (selectable && !disabled) {\n if (treeviewMode && !focused) {\n focus(event, nodeId);\n }\n\n const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n if (multiple) {\n if (event.shiftKey) {\n selectRange(event, { end: nodeId });\n } else {\n selectNode(event, nodeId, true);\n }\n } else {\n selectNode(event, nodeId);\n }\n }\n },\n [\n disabled,\n focus,\n focused,\n multiSelect,\n nodeId,\n selectNode,\n selectRange,\n selectable,\n treeviewMode,\n ]\n );\n\n const handleMouseDown = useCallback(\n (event) => {\n preventSelection(event, disabled);\n\n if (onMouseDown) {\n onMouseDown(event);\n }\n },\n [disabled, onMouseDown]\n );\n\n const handleClick = useCallback(\n (event) => {\n if (!disabled) {\n if (expandable) {\n handleExpansion(event);\n }\n\n if (selectable) {\n handleSelection(event);\n }\n }\n\n if (onClick) {\n onClick(event);\n }\n },\n [disabled, expandable, handleExpansion, handleSelection, onClick, selectable]\n );\n\n const handleKeyDown = useCallback(\n (event) => {\n let isEventHandled = false;\n const { key } = event;\n\n if (event.altKey || event.ctrlKey || event.metaKey || event.currentTarget !== event.target) {\n return;\n }\n if (contentRef.current === event.currentTarget) {\n if (key === \"Enter\" || key === \" \") {\n if (expandable) {\n isEventHandled = handleExpansion(event);\n }\n\n if (selectable) {\n isEventHandled = handleSelection(event);\n }\n }\n\n if (isEventHandled) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n },\n [expandable, handleExpansion, handleSelection, selectable]\n );\n\n const renderedContent = useMemo(\n () => (\n <HvTypography\n id={setId(id, \"button\")}\n component=\"div\"\n innerRef={contentRef}\n className={classes.content}\n onClick={handleClick}\n onMouseDown={handleMouseDown}\n style={{\n paddingLeft: (expandable || icon != null ? 0 : 10) + level * (collapsible ? 32 : 10),\n }}\n {...(treeviewMode\n ? {\n role: \"button\",\n tabIndex: -1,\n onFocus: handleFocus,\n }\n : {\n role: \"button\",\n tabIndex: selectable || expandable ? 0 : -1,\n onKeyDown: handleKeyDown,\n \"aria-current\": selectable && selected ? \"page\" : undefined,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-controls\": expandable ? setId(id, \"group\") : undefined,\n })}\n >\n {expandable && (expanded ? <DropUpXS /> : <DropDownXS />)}\n {icon}\n {label}\n </HvTypography>\n ),\n [\n id,\n classes.content,\n handleClick,\n handleMouseDown,\n expandable,\n level,\n collapsible,\n treeviewMode,\n handleFocus,\n handleKeyDown,\n selectable,\n selected,\n expanded,\n icon,\n label,\n ]\n );\n\n const renderedChildren = useMemo(\n () =>\n children && (\n <ul\n id={setId(id, \"group\")}\n className={classes.group}\n role={treeviewMode ? \"group\" : undefined}\n >\n {children}\n </ul>\n ),\n [children, classes.group, id, treeviewMode]\n );\n\n return (\n <li\n ref={handleRef}\n id={id}\n className={clsx(classes.node, className, {\n [classes.disabled]: disabled,\n [classes.expandable]: expandable,\n [classes.collapsed]: expandable && !expanded,\n [classes.expanded]: expandable && expanded,\n [classes.selectable]: !disabled && selectable,\n [classes.unselectable]: !disabled && !selectable,\n [classes.selected]: !disabled && selectable && selected,\n [classes.unselected]: !disabled && selectable && !selected,\n [classes.focused]: focused,\n })}\n data-hasicon={icon != null ? true : undefined}\n {...(mode === \"treeview\" && {\n role: \"treeitem\",\n \"aria-selected\": ariaSelected,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-disabled\": disabled ? true : undefined,\n })}\n {...others}\n >\n {renderedContent}\n <DescendantProvider id={nodeId} level={level + 1}>\n {renderedChildren}\n </DescendantProvider>\n </li>\n );\n});\n\nTreeViewItem.propTypes = {\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied to the Radio button.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root of the component.\n */\n node: PropTypes.string,\n /**\n * Style applied to the content.\n */\n content: PropTypes.string,\n /**\n * Style applied to the group.\n */\n group: PropTypes.string,\n /**\n * Style applied when item is disabled.\n */\n disabled: PropTypes.string,\n /**\n * Style applied when item is expandable.\n */\n expandable: PropTypes.string,\n /**\n * Style applied when item is collapsed.\n */\n collapsed: PropTypes.string,\n /**\n * Style applied when item is expanded.\n */\n expanded: PropTypes.string,\n /**\n * Style applied when item is selectable.\n */\n selectable: PropTypes.string,\n /**\n * Style applied when item is unselectable.\n */\n unselectable: PropTypes.string,\n /**\n * Style applied when item is selected.\n */\n selected: PropTypes.string,\n /**\n * Style applied when item is unselectable.\n */\n unselected: PropTypes.string,\n /**\n * Style applied when item is focused.\n */\n focused: PropTypes.string,\n }).isRequired,\n /**\n * Is the node disabled.\n */\n disabled: PropTypes.bool,\n /**\n * Can the node be selected.\n */\n selectable: PropTypes.bool,\n /**\n * The id of the node.\n */\n nodeId: PropTypes.string.isRequired,\n /**\n * The icon to display next to the node's label.\n */\n icon: PropTypes.node,\n /**\n * The item label.\n */\n label: PropTypes.node.isRequired,\n /**\n * The node payload.\n */\n // eslint-disable-next-line react/forbid-prop-types\n payload: PropTypes.any,\n /**\n * @ignore\n */\n onClick: PropTypes.func,\n /**\n * @ignore\n */\n onMouseDown: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n};\n\nexport default withStyles(styles, {\n name: \"HvVerticalNavigationTreeViewItem\",\n})(TreeViewItem);\n"],"mappings":"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"}
1
+ {"version":3,"file":"TreeViewItem.js","names":["React","useCallback","useContext","useEffect","useMemo","useRef","useState","clsx","PropTypes","withStyles","DropDownXS","DropUpXS","HvTypography","TreeViewControlContext","TreeViewStateContext","setId","useForkRef","DescendantProvider","useDescendant","styles","preventSelection","event","disabled","shiftKey","ctrlKey","metaKey","preventDefault","TreeViewItem","forwardRef","props","ref","id","idProp","className","classes","disabledProp","selectable","selectableProp","nodeId","icon","label","payload","onClick","onMouseDown","onFocus","children","others","treeViewControlContext","isExpanded","isSelected","isFocused","isDisabled","treeId","mode","collapsible","toggleExpansion","multiSelect","selectNode","selectRange","disabledItemsFocusable","registerNode","unregisterNode","mapFirstChar","unMapFirstChar","focus","treeviewMode","treeitemElement","setTreeitemElement","contentRef","handleRef","descendant","element","index","parentId","level","expandable","Boolean","Array","isArray","length","expanded","focused","selected","idAttribute","undefined","current","textContent","substring","toLowerCase","ariaSelected","handleFocus","target","currentTarget","ownerDocument","document","getElementById","preventScroll","unfocusable","handleExpansion","multiple","handleSelection","end","handleMouseDown","handleClick","handleKeyDown","isEventHandled","key","altKey","stopPropagation","renderedContent","content","paddingLeft","role","tabIndex","onKeyDown","renderedChildren","group","node","unselected","unselectable","collapsed","propTypes","string","shape","isRequired","bool","any","func","name"],"sources":["../../../../src/VerticalNavigation/TreeView/TreeViewItem.js"],"sourcesContent":["import React, { useCallback, useContext, useEffect, useMemo, useRef, useState } from \"react\";\nimport clsx from \"clsx\";\nimport PropTypes from \"prop-types\";\nimport { withStyles } from \"@material-ui/core\";\n\nimport { DropDownXS, DropUpXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport HvTypography from \"../../Typography\";\n\nimport { TreeViewControlContext, TreeViewStateContext } from \"./TreeViewContexts\";\n\nimport { setId, useForkRef } from \"../../utils\";\n\nimport { DescendantProvider, useDescendant } from \"./descendants\";\n\nimport styles from \"./styles\";\n\nconst preventSelection = (event, disabled) => {\n if (event.shiftKey || event.ctrlKey || event.metaKey || disabled) {\n // Prevent text selection\n event.preventDefault();\n }\n};\n\nconst TreeViewItem = React.forwardRef((props, ref) => {\n const {\n id: idProp,\n className,\n classes,\n\n disabled: disabledProp = false,\n\n selectable: selectableProp,\n\n nodeId,\n icon = null,\n label,\n payload,\n\n onClick,\n onMouseDown,\n onFocus,\n\n children,\n\n ...others\n } = props;\n\n const treeViewControlContext = useContext(TreeViewControlContext);\n const { isExpanded, isSelected, isFocused, isDisabled } = useContext(TreeViewStateContext);\n\n const {\n treeId,\n mode,\n collapsible,\n toggleExpansion,\n multiSelect,\n selectNode,\n selectRange,\n disabledItemsFocusable,\n registerNode,\n unregisterNode,\n mapFirstChar,\n unMapFirstChar,\n focus,\n } = treeViewControlContext;\n\n const treeviewMode = mode === \"treeview\";\n\n let id = null;\n\n if (idProp != null) {\n id = idProp;\n } else if (treeId && nodeId) {\n id = `${treeId}-${nodeId}`;\n }\n\n const [treeitemElement, setTreeitemElement] = useState(null);\n const contentRef = useRef(null);\n const handleRef = useForkRef(setTreeitemElement, ref);\n\n const descendant = useMemo(\n () => ({\n element: treeitemElement,\n id: nodeId,\n }),\n [nodeId, treeitemElement]\n );\n\n const { index, parentId, level } = useDescendant(descendant);\n\n const expandable = collapsible && Boolean(Array.isArray(children) ? children.length : children);\n const expanded = isExpanded ? isExpanded(nodeId) : false;\n const focused = isFocused ? isFocused(nodeId) : false;\n const selected = isSelected ? isSelected(nodeId) : false;\n const disabled = isDisabled ? isDisabled(nodeId) : false;\n\n const selectable = selectableProp != null ? selectableProp : !collapsible || !expandable;\n\n useEffect(() => {\n // On the first render a node's index will be -1. We want to wait for the real index.\n if (registerNode && unregisterNode && index !== -1) {\n registerNode({\n id: nodeId,\n idAttribute: id,\n index,\n parentId,\n selectable,\n expandable,\n disabled: disabledProp,\n onFocus,\n payload,\n });\n\n return () => {\n unregisterNode(nodeId);\n };\n }\n\n return undefined;\n }, [\n registerNode,\n unregisterNode,\n parentId,\n index,\n nodeId,\n expandable,\n disabledProp,\n id,\n selectable,\n onFocus,\n payload,\n ]);\n\n useEffect(() => {\n if (mapFirstChar && unMapFirstChar && label) {\n mapFirstChar(nodeId, contentRef.current?.textContent.substring(0, 1).toLowerCase());\n\n return () => {\n unMapFirstChar(nodeId);\n };\n }\n return undefined;\n }, [mapFirstChar, unMapFirstChar, nodeId, label]);\n\n let ariaSelected;\n if (multiSelect) {\n ariaSelected = selected;\n } else if (selected) {\n /* single-selection trees unset aria-selected on un-selected items.\n *\n * If the tree does not support multiple selection, aria-selected\n * is set to true for the selected node and it is not present on any other node in the tree.\n * Source: https://www.w3.org/TR/wai-aria-practices/#TreeView\n */\n ariaSelected = true;\n }\n\n const handleFocus = useCallback(\n (event) => {\n // DOM focus stays on the tree which manages focus with aria-activedescendant\n if (event.target === event.currentTarget) {\n (event.target.ownerDocument || document)\n .getElementById(treeId)\n .focus({ preventScroll: true });\n }\n\n const unfocusable = !disabledItemsFocusable && disabled;\n if (!focused && event.currentTarget === event.target && !unfocusable) {\n focus(event, nodeId);\n }\n },\n [disabled, disabledItemsFocusable, focus, focused, nodeId, treeId]\n );\n\n const handleExpansion = useCallback(\n (event) => {\n if (!disabled) {\n if (treeviewMode && !focused) {\n focus(event, nodeId);\n }\n\n const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n // If already expanded and trying to toggle selection don't close\n if (expandable && !(multiple && isExpanded(nodeId))) {\n toggleExpansion(event, nodeId);\n }\n }\n },\n [\n disabled,\n expandable,\n focus,\n focused,\n isExpanded,\n multiSelect,\n nodeId,\n toggleExpansion,\n treeviewMode,\n ]\n );\n\n const handleSelection = useCallback(\n (event) => {\n if (selectable && !disabled) {\n if (treeviewMode && !focused) {\n focus(event, nodeId);\n }\n\n const multiple = multiSelect && (event.shiftKey || event.ctrlKey || event.metaKey);\n\n if (multiple) {\n if (event.shiftKey) {\n selectRange(event, { end: nodeId });\n } else {\n selectNode(event, nodeId, true);\n }\n } else {\n selectNode(event, nodeId);\n }\n }\n },\n [\n disabled,\n focus,\n focused,\n multiSelect,\n nodeId,\n selectNode,\n selectRange,\n selectable,\n treeviewMode,\n ]\n );\n\n const handleMouseDown = useCallback(\n (event) => {\n preventSelection(event, disabled);\n\n if (onMouseDown) {\n onMouseDown(event);\n }\n },\n [disabled, onMouseDown]\n );\n\n const handleClick = useCallback(\n (event) => {\n if (!disabled) {\n if (expandable) {\n handleExpansion(event);\n }\n\n if (selectable) {\n handleSelection(event);\n }\n }\n\n if (onClick) {\n onClick(event);\n }\n },\n [disabled, expandable, handleExpansion, handleSelection, onClick, selectable]\n );\n\n const handleKeyDown = useCallback(\n (event) => {\n let isEventHandled = false;\n const { key } = event;\n\n if (event.altKey || event.ctrlKey || event.metaKey || event.currentTarget !== event.target) {\n return;\n }\n if (contentRef.current === event.currentTarget) {\n if (key === \"Enter\" || key === \" \") {\n if (expandable) {\n isEventHandled = handleExpansion(event);\n }\n\n if (selectable) {\n isEventHandled = handleSelection(event);\n }\n }\n\n if (isEventHandled) {\n event.preventDefault();\n event.stopPropagation();\n }\n }\n },\n [expandable, handleExpansion, handleSelection, selectable]\n );\n\n const renderedContent = useMemo(\n () => (\n <HvTypography\n id={setId(id, \"button\")}\n component=\"div\"\n innerRef={contentRef}\n className={classes.content}\n onClick={handleClick}\n onMouseDown={handleMouseDown}\n style={{\n paddingLeft: (expandable || icon != null ? 0 : 10) + level * (collapsible ? 32 : 10),\n }}\n {...(treeviewMode\n ? {\n role: \"button\",\n tabIndex: -1,\n onFocus: handleFocus,\n }\n : {\n role: \"button\",\n tabIndex: selectable || expandable ? 0 : -1,\n onKeyDown: handleKeyDown,\n \"aria-current\": selectable && selected ? \"page\" : undefined,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-controls\": expandable ? setId(id, \"group\") : undefined,\n })}\n >\n {expandable && (expanded ? <DropUpXS /> : <DropDownXS />)}\n {icon}\n {label}\n </HvTypography>\n ),\n [\n id,\n classes.content,\n handleClick,\n handleMouseDown,\n expandable,\n level,\n collapsible,\n treeviewMode,\n handleFocus,\n handleKeyDown,\n selectable,\n selected,\n expanded,\n icon,\n label,\n ]\n );\n\n const renderedChildren = useMemo(\n () =>\n children && (\n <ul\n id={setId(id, \"group\")}\n className={classes.group}\n role={treeviewMode ? \"group\" : undefined}\n >\n {children}\n </ul>\n ),\n [children, classes.group, id, treeviewMode]\n );\n\n return (\n <li\n ref={handleRef}\n id={id}\n className={clsx(classes.node, className, {\n [classes.disabled]: disabled,\n [classes.expandable]: expandable,\n [classes.collapsed]: expandable && !expanded,\n [classes.expanded]: expandable && expanded,\n [classes.selectable]: !disabled && selectable,\n [classes.unselectable]: !disabled && !selectable,\n [classes.selected]: !disabled && selectable && selected,\n [classes.unselected]: !disabled && selectable && !selected,\n [classes.focused]: focused,\n })}\n data-hasicon={icon != null ? true : undefined}\n {...(mode === \"treeview\" && {\n role: \"treeitem\",\n \"aria-selected\": ariaSelected,\n \"aria-expanded\": expandable ? expanded : undefined,\n \"aria-disabled\": disabled ? true : undefined,\n })}\n {...others}\n >\n {renderedContent}\n <DescendantProvider id={nodeId} level={level + 1}>\n {renderedChildren}\n </DescendantProvider>\n </li>\n );\n});\n\nTreeViewItem.propTypes = {\n /**\n * Id to be applied to the root node.\n */\n id: PropTypes.string,\n /**\n * Class names to be applied.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied to the Radio button.\n */\n classes: PropTypes.shape({\n /**\n * Style applied to the root of the component.\n */\n node: PropTypes.string,\n /**\n * Style applied to the content.\n */\n content: PropTypes.string,\n /**\n * Style applied to the group.\n */\n group: PropTypes.string,\n /**\n * Style applied when item is disabled.\n */\n disabled: PropTypes.string,\n /**\n * Style applied when item is expandable.\n */\n expandable: PropTypes.string,\n /**\n * Style applied when item is collapsed.\n */\n collapsed: PropTypes.string,\n /**\n * Style applied when item is expanded.\n */\n expanded: PropTypes.string,\n /**\n * Style applied when item is selectable.\n */\n selectable: PropTypes.string,\n /**\n * Style applied when item is unselectable.\n */\n unselectable: PropTypes.string,\n /**\n * Style applied when item is selected.\n */\n selected: PropTypes.string,\n /**\n * Style applied when item is unselectable.\n */\n unselected: PropTypes.string,\n /**\n * Style applied when item is focused.\n */\n focused: PropTypes.string,\n }).isRequired,\n /**\n * Is the node disabled.\n */\n disabled: PropTypes.bool,\n /**\n * Can the node be selected.\n */\n selectable: PropTypes.bool,\n /**\n * The id of the node.\n */\n nodeId: PropTypes.string.isRequired,\n /**\n * The icon to display next to the node's label.\n */\n icon: PropTypes.node,\n /**\n * The item label.\n */\n label: PropTypes.node.isRequired,\n /**\n * The node payload.\n */\n // eslint-disable-next-line react/forbid-prop-types\n payload: PropTypes.any,\n /**\n * @ignore\n */\n onClick: PropTypes.func,\n /**\n * @ignore\n */\n onMouseDown: PropTypes.func,\n /**\n * @ignore\n */\n onFocus: PropTypes.func,\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n};\n\nexport default withStyles(styles, {\n name: \"HvVerticalNavigationTreeViewItem\",\n})(TreeViewItem);\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.67.5",
3
+ "version": "3.67.6",
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",
@@ -105,5 +105,5 @@
105
105
  "publishConfig": {
106
106
  "access": "public"
107
107
  },
108
- "gitHead": "a62afdd2d80c42fb6a60aeebf16f8b38c496fc94"
108
+ "gitHead": "452304a1dde2687c11937c0b78213275109934a4"
109
109
  }