@hitachivantara/uikit-react-lab 3.41.12 → 3.42.2

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 (29) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/dist/AppSwitcherPanel/AppSwitcherPanel.js +1 -0
  3. package/dist/AppSwitcherPanel/AppSwitcherPanel.js.map +1 -1
  4. package/dist/ProgressBar/ProgressBar.d.ts +34 -5
  5. package/dist/ProgressBar/ProgressBar.js +15 -12
  6. package/dist/ProgressBar/ProgressBar.js.map +1 -1
  7. package/dist/ProgressBar/ProgressBarSimulator.js +112 -0
  8. package/dist/ProgressBar/ProgressBarSimulator.js.map +1 -0
  9. package/dist/ProgressBar/index.d.ts +2 -33
  10. package/dist/QueryBuilder/index.d.ts +1 -0
  11. package/dist/legacy/AppSwitcherPanel/AppSwitcherPanel.js +2 -1
  12. package/dist/legacy/AppSwitcherPanel/AppSwitcherPanel.js.map +1 -1
  13. package/dist/legacy/ProgressBar/ProgressBar.d.ts +34 -5
  14. package/dist/legacy/ProgressBar/ProgressBar.js +13 -11
  15. package/dist/legacy/ProgressBar/ProgressBar.js.map +1 -1
  16. package/dist/legacy/ProgressBar/ProgressBarSimulator.js +80 -0
  17. package/dist/legacy/ProgressBar/ProgressBarSimulator.js.map +1 -0
  18. package/dist/legacy/ProgressBar/index.d.ts +2 -33
  19. package/dist/legacy/QueryBuilder/index.d.ts +1 -0
  20. package/dist/modern/AppSwitcherPanel/AppSwitcherPanel.js +2 -1
  21. package/dist/modern/AppSwitcherPanel/AppSwitcherPanel.js.map +1 -1
  22. package/dist/modern/ProgressBar/ProgressBar.d.ts +34 -5
  23. package/dist/modern/ProgressBar/ProgressBar.js +11 -11
  24. package/dist/modern/ProgressBar/ProgressBar.js.map +1 -1
  25. package/dist/modern/ProgressBar/ProgressBarSimulator.js +66 -0
  26. package/dist/modern/ProgressBar/ProgressBarSimulator.js.map +1 -0
  27. package/dist/modern/ProgressBar/index.d.ts +2 -33
  28. package/dist/modern/QueryBuilder/index.d.ts +1 -0
  29. package/package.json +3 -3
package/CHANGELOG.md CHANGED
@@ -3,6 +3,37 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [3.42.2](https://github.com/lumada-design/hv-uikit-react/compare/@hitachivantara/uikit-react-lab@3.42.1...@hitachivantara/uikit-react-lab@3.42.2) (2022-04-30)
7
+
8
+ **Note:** Version bump only for package @hitachivantara/uikit-react-lab
9
+
10
+
11
+
12
+
13
+
14
+ ## [3.42.1](https://github.com/lumada-design/hv-uikit-react/compare/@hitachivantara/uikit-react-lab@3.42.0...@hitachivantara/uikit-react-lab@3.42.1) (2022-04-27)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * **dotPagination:** added missing typescript definition and description ([38dcda3](https://github.com/lumada-design/hv-uikit-react/commit/38dcda3029c23fbb9ac95b62c02f7db66da16bef))
20
+ * **ProgressBar:** corrected typescript definition HVUIKIT-5670 ([d5c0da0](https://github.com/lumada-design/hv-uikit-react/commit/d5c0da04a1b160cf283b7e4bf6644cf89d4f711f))
21
+
22
+
23
+
24
+
25
+
26
+ # [3.42.0](https://github.com/lumada-design/hv-uikit-react/compare/@hitachivantara/uikit-react-lab@3.41.12...@hitachivantara/uikit-react-lab@3.42.0) (2022-04-24)
27
+
28
+
29
+ ### Features
30
+
31
+ * **AppSwitcherPanel:** promote component to core ([#2729](https://github.com/lumada-design/hv-uikit-react/issues/2729)) ([4c27f28](https://github.com/lumada-design/hv-uikit-react/commit/4c27f28097fce81fc0b48b82aab093f7674a77f8))
32
+
33
+
34
+
35
+
36
+
6
37
  ## [3.41.12](https://github.com/lumada-design/hv-uikit-react/compare/@hitachivantara/uikit-react-lab@3.41.11...@hitachivantara/uikit-react-lab@3.41.12) (2022-04-22)
7
38
 
8
39
  **Note:** Version bump only for package @hitachivantara/uikit-react-lab
@@ -46,6 +46,7 @@ var AppSwitcherPanel = function AppSwitcherPanel(props) {
46
46
  header = props.header,
47
47
  footer = props.footer,
48
48
  isOpen = props.isOpen;
49
+ (0, _uikitReactCore.useDeprecated)("AppSwitcherPanel", "Please use the AppSwitcherPanel component in Core");
49
50
 
50
51
  var actionClicked = function actionClicked(event, application) {
51
52
  onActionClickedCallback === null || onActionClickedCallback === void 0 ? void 0 : onActionClickedCallback(event, application);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/AppSwitcherPanel/AppSwitcherPanel.js"],"names":["AppSwitcherPanel","props","id","className","classes","layout","title","applications","onActionClickedCallback","isActionSelectedCallback","header","footer","isOpen","actionClicked","event","application","panelActions","map","name","url","root","item","selected","itemSelected","disabled","itemDisabled","typography","itemTrigger","icon","itemIcon","itemTitle","iconInfo","itemInfoIcon","undefined","closed","open","actionsContainer","footerContainer","propTypes","PropTypes","string","shape","single","dual","fluid","isRequired","oneOf","arrayOf","iconUrl","iconElement","element","description","target","bool","isSelected","func","oneOfType","node","styles"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport clsx from \"clsx\";\nimport { deprecatedPropType, withStyles } from \"@material-ui/core\";\n\nimport { HvListContainer } from \"@hitachivantara/uikit-react-core\";\n\nimport styles from \"./styles\";\n\nimport TitleWithTooltip from \"./TitleWithTooltip\";\nimport Action from \"./Action\";\n\nconst AppSwitcherPanel = (props) => {\n const {\n id,\n\n className,\n classes,\n\n layout = \"single\",\n\n title,\n applications,\n\n onActionClickedCallback = () => {},\n isActionSelectedCallback = () => false,\n\n header,\n footer,\n\n isOpen,\n } = props;\n\n const actionClicked = (event, application) => {\n onActionClickedCallback?.(event, application);\n };\n\n const panelActions = applications.map((application) => {\n if (application.name) {\n return (\n <Action\n key={application.id || `${application.name}_${application.url}`}\n application={application}\n onClickCallback={actionClicked}\n isSelectedCallback={isActionSelectedCallback}\n classes={{\n root: classes.item,\n selected: classes.itemSelected,\n disabled: classes.itemDisabled,\n typography: classes.itemTrigger,\n icon: classes.itemIcon,\n title: classes.itemTitle,\n iconInfo: classes.itemInfoIcon,\n }}\n />\n );\n }\n\n return undefined;\n });\n\n return (\n <div\n id={id}\n className={clsx(className, classes.root, classes[layout], {\n [classes.closed]: isOpen === false,\n [classes.open]: isOpen,\n })}\n >\n {(header && <div className={classes.title}>{header}</div>) ||\n (title && <TitleWithTooltip className={classes.title} title={title} />)}\n <HvListContainer disableGutters className={classes.actionsContainer}>\n {panelActions}\n </HvListContainer>\n {footer && <div className={classes.footerContainer}>{footer}</div>}\n </div>\n );\n};\n\nAppSwitcherPanel.propTypes = {\n /**\n * Identifier to be applied to the root element.\n */\n id: PropTypes.string,\n\n /**\n * Class names to be applied to the root element.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n root: PropTypes.string,\n single: PropTypes.string,\n dual: PropTypes.string,\n fluid: PropTypes.string,\n title: PropTypes.string,\n actionsContainer: PropTypes.string,\n footerContainer: PropTypes.string,\n closed: PropTypes.string,\n open: PropTypes.string,\n\n item: PropTypes.string,\n itemSelected: PropTypes.string,\n itemDisabled: PropTypes.string,\n itemTrigger: PropTypes.string,\n itemIcon: PropTypes.string,\n itemTitle: PropTypes.string,\n itemInfoIcon: PropTypes.string,\n }).isRequired,\n\n /**\n * Number of columns to render. One, two, or whatever fits the component's width.\n */\n layout: PropTypes.oneOf([\"single\", \"dual\", \"fluid\"]),\n\n /**\n * Title to be displayed on the header of the component.\n */\n title: PropTypes.string,\n /**\n * The list of applications to be used to render the actions on the component.\n */\n applications: PropTypes.arrayOf(\n PropTypes.shape({\n /**\n * Id of the application.\n */\n id: PropTypes.string,\n /**\n * Name of the application, this is the value that will be displayed on the component.\n */\n name: PropTypes.string.isRequired,\n /**\n * URL with the icon location to be used to represent the application.\n * iconUrl will only be used if no iconElement is provided.\n */\n iconUrl: PropTypes.string,\n /**\n * Element to be added as the icon representing the application.\n * The iconElement will be the primary option to be displayed.\n */\n iconElement: PropTypes.element,\n /**\n * Small description of the application.\n */\n description: PropTypes.string,\n /**\n * URL where the application is accesible.\n */\n url: PropTypes.string,\n /**\n * Defines if the application should be opened in the same tab or in a new one.\n */\n target: PropTypes.oneOf([\"_top\", \"_blank\"]),\n /**\n * If true, the item will be disabled.\n */\n disabled: PropTypes.bool,\n /**\n * True when the application is selected, false otherwise.\n */\n isSelected: PropTypes.bool,\n })\n ).isRequired,\n\n /**\n * Triggered when an action is clicked.\n */\n onActionClickedCallback: PropTypes.func,\n /**\n * Must return a boolean stating if the action element is selected or not.\n */\n isActionSelectedCallback: PropTypes.func,\n\n /**\n * Element to be added to the header container, if none is provided a label with the title will be added.\n */\n header: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n /**\n * Element to be added to the footer container.\n */\n footer: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n\n /**\n * Flag stating if the panel is opened or closed.\n *\n * @deprecated This logic should be external, i.e. using the HvAppSwitcherPanel inside a Drawer component.\n */\n isOpen: deprecatedPropType(PropTypes.bool),\n};\n\nexport default withStyles(styles, { name: \"HvAppSwitcherPanel\" })(AppSwitcherPanel);\n"],"file":"AppSwitcherPanel.js"}
1
+ {"version":3,"sources":["../../src/AppSwitcherPanel/AppSwitcherPanel.js"],"names":["AppSwitcherPanel","props","id","className","classes","layout","title","applications","onActionClickedCallback","isActionSelectedCallback","header","footer","isOpen","actionClicked","event","application","panelActions","map","name","url","root","item","selected","itemSelected","disabled","itemDisabled","typography","itemTrigger","icon","itemIcon","itemTitle","iconInfo","itemInfoIcon","undefined","closed","open","actionsContainer","footerContainer","propTypes","PropTypes","string","shape","single","dual","fluid","isRequired","oneOf","arrayOf","iconUrl","iconElement","element","description","target","bool","isSelected","func","oneOfType","node","styles"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport clsx from \"clsx\";\nimport { deprecatedPropType, withStyles } from \"@material-ui/core\";\n\nimport { HvListContainer, useDeprecated } from \"@hitachivantara/uikit-react-core\";\n\nimport styles from \"./styles\";\n\nimport TitleWithTooltip from \"./TitleWithTooltip\";\nimport Action from \"./Action\";\n\nconst AppSwitcherPanel = (props) => {\n const {\n id,\n\n className,\n classes,\n\n layout = \"single\",\n\n title,\n applications,\n\n onActionClickedCallback = () => {},\n isActionSelectedCallback = () => false,\n\n header,\n footer,\n\n isOpen,\n } = props;\n\n useDeprecated(\"AppSwitcherPanel\", \"Please use the AppSwitcherPanel component in Core\");\n\n const actionClicked = (event, application) => {\n onActionClickedCallback?.(event, application);\n };\n\n const panelActions = applications.map((application) => {\n if (application.name) {\n return (\n <Action\n key={application.id || `${application.name}_${application.url}`}\n application={application}\n onClickCallback={actionClicked}\n isSelectedCallback={isActionSelectedCallback}\n classes={{\n root: classes.item,\n selected: classes.itemSelected,\n disabled: classes.itemDisabled,\n typography: classes.itemTrigger,\n icon: classes.itemIcon,\n title: classes.itemTitle,\n iconInfo: classes.itemInfoIcon,\n }}\n />\n );\n }\n\n return undefined;\n });\n\n return (\n <div\n id={id}\n className={clsx(className, classes.root, classes[layout], {\n [classes.closed]: isOpen === false,\n [classes.open]: isOpen,\n })}\n >\n {(header && <div className={classes.title}>{header}</div>) ||\n (title && <TitleWithTooltip className={classes.title} title={title} />)}\n <HvListContainer disableGutters className={classes.actionsContainer}>\n {panelActions}\n </HvListContainer>\n {footer && <div className={classes.footerContainer}>{footer}</div>}\n </div>\n );\n};\n\nAppSwitcherPanel.propTypes = {\n /**\n * Identifier to be applied to the root element.\n */\n id: PropTypes.string,\n\n /**\n * Class names to be applied to the root element.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n root: PropTypes.string,\n single: PropTypes.string,\n dual: PropTypes.string,\n fluid: PropTypes.string,\n title: PropTypes.string,\n actionsContainer: PropTypes.string,\n footerContainer: PropTypes.string,\n closed: PropTypes.string,\n open: PropTypes.string,\n\n item: PropTypes.string,\n itemSelected: PropTypes.string,\n itemDisabled: PropTypes.string,\n itemTrigger: PropTypes.string,\n itemIcon: PropTypes.string,\n itemTitle: PropTypes.string,\n itemInfoIcon: PropTypes.string,\n }).isRequired,\n\n /**\n * Number of columns to render. One, two, or whatever fits the component's width.\n */\n layout: PropTypes.oneOf([\"single\", \"dual\", \"fluid\"]),\n\n /**\n * Title to be displayed on the header of the component.\n */\n title: PropTypes.string,\n /**\n * The list of applications to be used to render the actions on the component.\n */\n applications: PropTypes.arrayOf(\n PropTypes.shape({\n /**\n * Id of the application.\n */\n id: PropTypes.string,\n /**\n * Name of the application, this is the value that will be displayed on the component.\n */\n name: PropTypes.string.isRequired,\n /**\n * URL with the icon location to be used to represent the application.\n * iconUrl will only be used if no iconElement is provided.\n */\n iconUrl: PropTypes.string,\n /**\n * Element to be added as the icon representing the application.\n * The iconElement will be the primary option to be displayed.\n */\n iconElement: PropTypes.element,\n /**\n * Small description of the application.\n */\n description: PropTypes.string,\n /**\n * URL where the application is accesible.\n */\n url: PropTypes.string,\n /**\n * Defines if the application should be opened in the same tab or in a new one.\n */\n target: PropTypes.oneOf([\"_top\", \"_blank\"]),\n /**\n * If true, the item will be disabled.\n */\n disabled: PropTypes.bool,\n /**\n * True when the application is selected, false otherwise.\n */\n isSelected: PropTypes.bool,\n })\n ).isRequired,\n\n /**\n * Triggered when an action is clicked.\n */\n onActionClickedCallback: PropTypes.func,\n /**\n * Must return a boolean stating if the action element is selected or not.\n */\n isActionSelectedCallback: PropTypes.func,\n\n /**\n * Element to be added to the header container, if none is provided a label with the title will be added.\n */\n header: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n /**\n * Element to be added to the footer container.\n */\n footer: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n\n /**\n * Flag stating if the panel is opened or closed.\n *\n * @deprecated This logic should be external, i.e. using the HvAppSwitcherPanel inside a Drawer component.\n */\n isOpen: deprecatedPropType(PropTypes.bool),\n};\n\nexport default withStyles(styles, { name: \"HvAppSwitcherPanel\" })(AppSwitcherPanel);\n"],"file":"AppSwitcherPanel.js"}
@@ -1,11 +1,40 @@
1
1
  import * as React from "react";
2
2
  import { StandardProps } from "@material-ui/core";
3
3
 
4
- export type HvProgressBarClassKey = "root";
4
+ export type HvProgressBarClassKey =
5
+ | "root"
6
+ | "progress"
7
+ | "progressContainer"
8
+ | "progressBarContainer"
9
+ | "progressBar"
10
+ | "progressDone"
11
+ | "progressError"
12
+ | "progressBarLabel"
13
+ | "progressBarLabelHidden";
5
14
 
6
- export type HvProgressBarProps = StandardProps<
7
- React.HTMLAttributes<HTMLDivElement>,
8
- HvProgressBarClassKey
9
- >;
15
+ export interface HvProgressBarProps
16
+ extends StandardProps<React.HTMLAttributes<HTMLDivElement>, HvProgressBarClassKey>,
17
+ HvProgressBarProps {
18
+ /**
19
+ * The value of the progress bar.
20
+ */
21
+ value?: number;
22
+ /**
23
+ * The status of the progress bar.
24
+ *
25
+ * inProgress is black, error is red and completed is green.
26
+ *
27
+ * When uncontrolled and unspecified it will default to "inProgress".
28
+ */
29
+ status?: string;
30
+ /**
31
+ * If `true` the progress bar will not show the percentage label.
32
+ */
33
+ undeterminate?: boolean;
34
+ /**
35
+ * Aria Properties passed on to the progress bar.
36
+ */
37
+ labelProps?: object;
38
+ }
10
39
 
11
40
  export default function HvProgressBar(props: HvProgressBarProps): JSX.Element | null;
@@ -11,6 +11,8 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
11
11
 
12
12
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
13
 
14
+ require("core-js/modules/es.object.freeze.js");
15
+
14
16
  var _react = _interopRequireDefault(require("react"));
15
17
 
16
18
  var _propTypes = _interopRequireDefault(require("prop-types"));
@@ -26,16 +28,22 @@ var _core = require("@material-ui/core");
26
28
  var _styles = _interopRequireDefault(require("./styles"));
27
29
 
28
30
  var _excluded = ["className", "classes", "value", "status", "undeterminate", "labelProps"];
29
-
31
+ var statusCategories = Object.freeze({
32
+ inProgress: "inProgress",
33
+ completed: "completed",
34
+ error: "error"
35
+ });
30
36
  /**
31
37
  * ProgressBar provides feedback about a process that is taking place in the application.
32
38
  */
39
+
33
40
  var HvProgressBar = function HvProgressBar(props) {
34
41
  var className = props.className,
35
42
  classes = props.classes,
36
43
  _props$value = props.value,
37
44
  value = _props$value === void 0 ? 0 : _props$value,
38
- status = props.status,
45
+ _props$status = props.status,
46
+ status = _props$status === void 0 ? statusCategories.inProgress : _props$status,
39
47
  _props$undeterminate = props.undeterminate,
40
48
  undeterminate = _props$undeterminate === void 0 ? false : _props$undeterminate,
41
49
  labelProps = props.labelProps,
@@ -44,11 +52,9 @@ var HvProgressBar = function HvProgressBar(props) {
44
52
  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
45
53
  className: (0, _clsx.default)(className, classes.root, classes.progress),
46
54
  role: "progressbar",
47
- status: "inProgress",
48
- "aria-valuenow": clampedValue // it only makes sense to put this in ariaProps if the min and max values of the progress bar are intended to be changed by the user
49
- ,
50
55
  "aria-valuemin": "0",
51
- "aria-valuemax": "100"
56
+ "aria-valuemax": "100",
57
+ "aria-valuenow": clampedValue
52
58
  }, others), /*#__PURE__*/_react.default.createElement("div", {
53
59
  className: classes.progressContainer
54
60
  }, /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvTypography, (0, _extends2.default)({
@@ -56,17 +62,14 @@ var HvProgressBar = function HvProgressBar(props) {
56
62
  style: {
57
63
  width: "".concat(clampedValue, "%")
58
64
  },
59
- className: (0, _clsx.default)(classes.progressBarLabel, undeterminate && classes.progressBarLabelHidden, status === "completed" && classes.progressDone)
65
+ className: (0, _clsx.default)(classes.progressBarLabel, status === statusCategories.completed && classes.progressDone, undeterminate && classes.progressBarLabelHidden)
60
66
  }, labelProps), "".concat(clampedValue, "%")), /*#__PURE__*/_react.default.createElement("div", {
61
67
  className: classes.progressBarContainer
62
68
  }, /*#__PURE__*/_react.default.createElement("div", {
63
69
  style: {
64
70
  width: "".concat(clampedValue, "%")
65
71
  },
66
- className: (0, _clsx.default)(classes.progressBar, {
67
- "completed": classes.progressDone,
68
- "error": classes.progressError
69
- }[status])
72
+ className: (0, _clsx.default)(classes.progressBar, status === statusCategories.completed && classes.progressDone, status === statusCategories.error && classes.progressError)
70
73
  }))));
71
74
  };
72
75
 
@@ -138,7 +141,7 @@ process.env.NODE_ENV !== "production" ? HvProgressBar.propTypes = {
138
141
  *
139
142
  * When uncontrolled and unspecified it will default to "inProgress".
140
143
  */
141
- status: _propTypes.default.oneOf(["inProgress", "completed", "error"]),
144
+ status: _propTypes.default.oneOf([statusCategories.inProgress, statusCategories.completed, statusCategories.error]),
142
145
 
143
146
  /**
144
147
  * If `true` the progress bar will not show the percentage label.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/ProgressBar/ProgressBar.js"],"names":["HvProgressBar","props","className","classes","value","status","undeterminate","labelProps","others","clampedValue","root","progress","progressContainer","width","progressBarLabel","progressBarLabelHidden","progressDone","progressBarContainer","progressBar","progressError","propTypes","PropTypes","string","shape","isRequired","number","oneOf","bool","instanceOf","Object","styles","name"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\n\nimport clamp from \"lodash/clamp\";\nimport { HvTypography } from \"@hitachivantara/uikit-react-core\";\n\nimport { withStyles } from \"@material-ui/core\";\n\nimport styles from \"./styles\";\n\n/**\n * ProgressBar provides feedback about a process that is taking place in the application.\n */\nconst HvProgressBar = (props) => {\n const {\n className,\n classes,\n value = 0,\n status,\n undeterminate = false,\n labelProps,\n ...others\n } = props;\n\n const clampedValue = clamp(value, 0, 100);\n\n return (\n <div\n className={clsx(className, classes.root, classes.progress)}\n role=\"progressbar\"\n status=\"inProgress\"\n aria-valuenow={clampedValue} // it only makes sense to put this in ariaProps if the min and max values of the progress bar are intended to be changed by the user\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n {...others}\n >\n <div className={classes.progressContainer}>\n <HvTypography\n variant=\"vizText\"\n style={{ width: `${clampedValue}%` }}\n className={clsx(\n classes.progressBarLabel,\n status === \"completed\" && classes.progressDone,\n undeterminate && classes.progressBarLabelHidden\n )}\n {...labelProps}\n >\n {`${clampedValue}%`}\n </HvTypography>\n <div className={classes.progressBarContainer}>\n <div\n style={{ width: `${clampedValue}%` }}\n className={clsx(\n classes.progressBar,\n status === \"completed\" && classes.progressDone,\n status === \"error\" && classes.progressError\n )}\n />\n </div>\n </div>\n </div>\n );\n};\n\nHvProgressBar.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 * Styles applied to the component root class.\n */\n root: PropTypes.string,\n\n /**\n * Style applied to the overall container when in progress mode.\n */\n progress: PropTypes.string,\n /**\n * Style applied to the specifc container when in progress mode.\n */\n progressContainer: PropTypes.string,\n /**\n * Style applied to progress bar container.\n */\n progressBarContainer: PropTypes.string,\n /**\n * Style applied to the progress bar.\n */\n progressBar: PropTypes.string,\n /**\n * Style applied to the progress bar when the loading is done.\n */\n progressDone: PropTypes.string,\n /**\n * Style applied to the progress bar when an error occurs.\n */\n progressError: PropTypes.string,\n /**\n * Style applied to the progress bar label.\n */\n progressBarLabel: PropTypes.string,\n /**\n * Style applied to the progress bar label.\n */\n progressBarLabelHidden: PropTypes.string,\n }).isRequired,\n\n /**\n * The value of the progress bar.\n */\n value: PropTypes.number,\n /**\n * The status of the progress bar.\n *\n * inProgress is black, error is red and completed is green.\n *\n * When uncontrolled and unspecified it will default to \"inProgress\".\n */\n status: PropTypes.oneOf([\"inProgress\", \"completed\", \"error\"]),\n /**\n * If `true` the progress bar will not show the percentage label.\n */\n undeterminate: PropTypes.bool,\n /**\n * Aria Properties passed on to the progress bar.\n */\n labelProps: PropTypes.instanceOf(Object),\n};\n\nexport default withStyles(styles, { name: \"HvProgressBar\" })(HvProgressBar);\n"],"file":"ProgressBar.js"}
1
+ {"version":3,"sources":["../../src/ProgressBar/ProgressBar.js"],"names":["statusCategories","Object","freeze","inProgress","completed","error","HvProgressBar","props","className","classes","value","status","undeterminate","labelProps","others","clampedValue","root","progress","progressContainer","width","progressBarLabel","progressDone","progressBarLabelHidden","progressBarContainer","progressBar","progressError","propTypes","PropTypes","string","shape","isRequired","number","oneOf","bool","instanceOf","styles","name"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\n\nimport clamp from \"lodash/clamp\";\nimport { HvTypography } from \"@hitachivantara/uikit-react-core\";\n\nimport { withStyles } from \"@material-ui/core\";\n\nimport styles from \"./styles\";\n\nconst statusCategories = Object.freeze({\n inProgress: \"inProgress\",\n completed: \"completed\",\n error: \"error\",\n});\n\n/**\n * ProgressBar provides feedback about a process that is taking place in the application.\n */\nconst HvProgressBar = (props) => {\n const {\n className,\n classes,\n value = 0,\n status = statusCategories.inProgress,\n undeterminate = false,\n labelProps,\n ...others\n } = props;\n\n const clampedValue = clamp(value, 0, 100);\n\n return (\n <div\n className={clsx(className, classes.root, classes.progress)}\n role=\"progressbar\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n aria-valuenow={clampedValue}\n {...others}\n >\n <div className={classes.progressContainer}>\n <HvTypography\n variant=\"vizText\"\n style={{ width: `${clampedValue}%` }}\n className={clsx(\n classes.progressBarLabel,\n status === statusCategories.completed && classes.progressDone,\n undeterminate && classes.progressBarLabelHidden\n )}\n {...labelProps}\n >\n {`${clampedValue}%`}\n </HvTypography>\n <div className={classes.progressBarContainer}>\n <div\n style={{ width: `${clampedValue}%` }}\n className={clsx(\n classes.progressBar,\n status === statusCategories.completed && classes.progressDone,\n status === statusCategories.error && classes.progressError\n )}\n />\n </div>\n </div>\n </div>\n );\n};\n\nHvProgressBar.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 * Styles applied to the component root class.\n */\n root: PropTypes.string,\n\n /**\n * Style applied to the overall container when in progress mode.\n */\n progress: PropTypes.string,\n /**\n * Style applied to the specifc container when in progress mode.\n */\n progressContainer: PropTypes.string,\n /**\n * Style applied to progress bar container.\n */\n progressBarContainer: PropTypes.string,\n /**\n * Style applied to the progress bar.\n */\n progressBar: PropTypes.string,\n /**\n * Style applied to the progress bar when the loading is done.\n */\n progressDone: PropTypes.string,\n /**\n * Style applied to the progress bar when an error occurs.\n */\n progressError: PropTypes.string,\n /**\n * Style applied to the progress bar label.\n */\n progressBarLabel: PropTypes.string,\n /**\n * Style applied to the progress bar label.\n */\n progressBarLabelHidden: PropTypes.string,\n }).isRequired,\n /**\n * The value of the progress bar.\n */\n value: PropTypes.number,\n /**\n * The status of the progress bar.\n *\n * inProgress is black, error is red and completed is green.\n *\n * When uncontrolled and unspecified it will default to \"inProgress\".\n */\n status: PropTypes.oneOf([\n statusCategories.inProgress,\n statusCategories.completed,\n statusCategories.error,\n ]),\n /**\n * If `true` the progress bar will not show the percentage label.\n */\n undeterminate: PropTypes.bool,\n /**\n * Aria Properties passed on to the progress bar.\n */\n labelProps: PropTypes.instanceOf(Object),\n};\n\nexport default withStyles(styles, { name: \"HvProgressBar\" })(HvProgressBar);\n"],"file":"ProgressBar.js"}
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.array.iterator.js");
4
+
5
+ require("core-js/modules/es.object.to-string.js");
6
+
7
+ require("core-js/modules/es.string.iterator.js");
8
+
9
+ require("core-js/modules/es.weak-map.js");
10
+
11
+ require("core-js/modules/web.dom-collections.iterator.js");
12
+
13
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
14
+
15
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
16
+
17
+ var _typeof = require("@babel/runtime/helpers/typeof");
18
+
19
+ Object.defineProperty(exports, "__esModule", {
20
+ value: true
21
+ });
22
+ exports.default = exports.ProgressBarSimulator = void 0;
23
+
24
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
25
+
26
+ var _react = _interopRequireWildcard(require("react"));
27
+
28
+ var _uikitReactCore = require("@hitachivantara/uikit-react-core");
29
+
30
+ var _ = require("..");
31
+
32
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
33
+
34
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
35
+
36
+ // eslint-disable-next-line react/prop-types
37
+ var ProgressBarSimulator = function ProgressBarSimulator(_ref) {
38
+ var inc = _ref.inc,
39
+ error = _ref.error,
40
+ undeterminate = _ref.undeterminate,
41
+ ariaLabel = _ref.ariaLabel,
42
+ ariaLive = _ref.ariaLive;
43
+
44
+ var _useState = (0, _react.useState)("inProgress"),
45
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
46
+ status = _useState2[0],
47
+ setStatus = _useState2[1];
48
+
49
+ var _useState3 = (0, _react.useState)(0),
50
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
51
+ value = _useState4[0],
52
+ setValue = _useState4[1];
53
+
54
+ var _useState5 = (0, _react.useState)(false),
55
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
56
+ run = _useState6[0],
57
+ setRun = _useState6[1];
58
+
59
+ (0, _react.useEffect)(function () {
60
+ var interval = setInterval(function () {
61
+ if (value === 100) {
62
+ setRun(false);
63
+ clearInterval(interval);
64
+ setStatus("completed");
65
+ } else if (error && value === error) {
66
+ clearInterval(interval);
67
+ setStatus("error");
68
+ } else if (run) setValue(inc);
69
+ }, 150);
70
+ return function () {
71
+ return clearInterval(interval);
72
+ };
73
+ }, [inc, value, run, error]);
74
+
75
+ var reset = function reset() {
76
+ setValue(0);
77
+ setStatus("inProgress");
78
+ };
79
+
80
+ var start = function start() {
81
+ setRun(true);
82
+ };
83
+
84
+ return /*#__PURE__*/_react.default.createElement("div", {
85
+ style: {
86
+ width: 400
87
+ }
88
+ }, /*#__PURE__*/_react.default.createElement(_.HvProgressBar, {
89
+ value: value,
90
+ status: status,
91
+ undeterminate: undeterminate,
92
+ labelProps: {
93
+ "aria-label": ariaLabel,
94
+ "aria-busy": false,
95
+ "aria-live": ariaLive
96
+ }
97
+ }), /*#__PURE__*/_react.default.createElement("div", {
98
+ style: {
99
+ marginTop: 10
100
+ }
101
+ }, /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvButton, {
102
+ onClick: start
103
+ }, "Start"), /*#__PURE__*/_react.default.createElement(_uikitReactCore.HvButton, {
104
+ style: {
105
+ marginLeft: 10
106
+ },
107
+ onClick: reset
108
+ }, "Reset")));
109
+ };
110
+
111
+ exports.default = exports.ProgressBarSimulator = ProgressBarSimulator;
112
+ //# sourceMappingURL=ProgressBarSimulator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/ProgressBar/ProgressBarSimulator.js"],"names":["ProgressBarSimulator","inc","error","undeterminate","ariaLabel","ariaLive","status","setStatus","value","setValue","run","setRun","interval","setInterval","clearInterval","reset","start","width","marginTop","marginLeft"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;AAEA;;;;;;AAEA;AACO,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,OAAwD;AAAA,MAArDC,GAAqD,QAArDA,GAAqD;AAAA,MAAhDC,KAAgD,QAAhDA,KAAgD;AAAA,MAAzCC,aAAyC,QAAzCA,aAAyC;AAAA,MAA1BC,SAA0B,QAA1BA,SAA0B;AAAA,MAAfC,QAAe,QAAfA,QAAe;;AAC1F,kBAA4B,qBAAS,YAAT,CAA5B;AAAA;AAAA,MAAOC,MAAP;AAAA,MAAeC,SAAf;;AACA,mBAA0B,qBAAS,CAAT,CAA1B;AAAA;AAAA,MAAOC,KAAP;AAAA,MAAcC,QAAd;;AACA,mBAAsB,qBAAS,KAAT,CAAtB;AAAA;AAAA,MAAOC,GAAP;AAAA,MAAYC,MAAZ;;AAEA,wBAAU,YAAM;AACd,QAAMC,QAAQ,GAAGC,WAAW,CAAC,YAAM;AACjC,UAAIL,KAAK,KAAK,GAAd,EAAmB;AACjBG,QAAAA,MAAM,CAAC,KAAD,CAAN;AACAG,QAAAA,aAAa,CAACF,QAAD,CAAb;AACAL,QAAAA,SAAS,CAAC,WAAD,CAAT;AACD,OAJD,MAIO,IAAIL,KAAK,IAAIM,KAAK,KAAKN,KAAvB,EAA8B;AACnCY,QAAAA,aAAa,CAACF,QAAD,CAAb;AACAL,QAAAA,SAAS,CAAC,OAAD,CAAT;AACD,OAHM,MAGA,IAAIG,GAAJ,EAASD,QAAQ,CAACR,GAAD,CAAR;AACjB,KAT2B,EASzB,GATyB,CAA5B;AAUA,WAAO;AAAA,aAAMa,aAAa,CAACF,QAAD,CAAnB;AAAA,KAAP;AACD,GAZD,EAYG,CAACX,GAAD,EAAMO,KAAN,EAAaE,GAAb,EAAkBR,KAAlB,CAZH;;AAcA,MAAMa,KAAK,GAAG,SAARA,KAAQ,GAAM;AAClBN,IAAAA,QAAQ,CAAC,CAAD,CAAR;AACAF,IAAAA,SAAS,CAAC,YAAD,CAAT;AACD,GAHD;;AAKA,MAAMS,KAAK,GAAG,SAARA,KAAQ,GAAM;AAClBL,IAAAA,MAAM,CAAC,IAAD,CAAN;AACD,GAFD;;AAIA,sBACE;AAAK,IAAA,KAAK,EAAE;AAAEM,MAAAA,KAAK,EAAE;AAAT;AAAZ,kBACE,6BAAC,eAAD;AACE,IAAA,KAAK,EAAET,KADT;AAEE,IAAA,MAAM,EAAEF,MAFV;AAGE,IAAA,aAAa,EAAEH,aAHjB;AAIE,IAAA,UAAU,EAAE;AACV,oBAAcC,SADJ;AAEV,mBAAa,KAFH;AAGV,mBAAaC;AAHH;AAJd,IADF,eAWE;AAAK,IAAA,KAAK,EAAE;AAAEa,MAAAA,SAAS,EAAE;AAAb;AAAZ,kBACE,6BAAC,wBAAD;AAAU,IAAA,OAAO,EAAEF;AAAnB,aADF,eAEE,6BAAC,wBAAD;AAAU,IAAA,KAAK,EAAE;AAAEG,MAAAA,UAAU,EAAE;AAAd,KAAjB;AAAqC,IAAA,OAAO,EAAEJ;AAA9C,aAFF,CAXF,CADF;AAoBD,CAhDM","sourcesContent":["import React, { useEffect, useState } from \"react\";\n\nimport { HvButton } from \"@hitachivantara/uikit-react-core\";\n\nimport { HvProgressBar } from \"..\";\n\n// eslint-disable-next-line react/prop-types\nexport const ProgressBarSimulator = ({ inc, error, undeterminate, ariaLabel, ariaLive }) => {\n const [status, setStatus] = useState(\"inProgress\");\n const [value, setValue] = useState(0);\n const [run, setRun] = useState(false);\n\n useEffect(() => {\n const interval = setInterval(() => {\n if (value === 100) {\n setRun(false);\n clearInterval(interval);\n setStatus(\"completed\");\n } else if (error && value === error) {\n clearInterval(interval);\n setStatus(\"error\");\n } else if (run) setValue(inc);\n }, 150);\n return () => clearInterval(interval);\n }, [inc, value, run, error]);\n\n const reset = () => {\n setValue(0);\n setStatus(\"inProgress\");\n };\n\n const start = () => {\n setRun(true);\n };\n\n return (\n <div style={{ width: 400 }}>\n <HvProgressBar\n value={value}\n status={status}\n undeterminate={undeterminate}\n labelProps={{\n \"aria-label\": ariaLabel,\n \"aria-busy\": false,\n \"aria-live\": ariaLive,\n }}\n />\n <div style={{ marginTop: 10 }}>\n <HvButton onClick={start}>Start</HvButton>\n <HvButton style={{ marginLeft: 10 }} onClick={reset}>\n Reset\n </HvButton>\n </div>\n </div>\n );\n};\n\nexport { ProgressBarSimulator as default };\n"],"file":"ProgressBarSimulator.js"}
@@ -1,33 +1,2 @@
1
- import * as React from "react";
2
- import { StandardProps } from "@material-ui/core";
3
-
4
- export type HvProgressClassKey =
5
- | "root"
6
- | "progress"
7
- | "progressContainer"
8
- | "progressBarContainer"
9
- | "progressBar"
10
- | "progressDone"
11
- | "progressError"
12
- | "progressBarLabel"
13
- | "progressAriaAlert";
14
-
15
- export interface HvProgressBarProps
16
- extends StandardProps<React.HTMLAttributes<HTMLDivElement>, HvProgressClassKey> {
17
- /**
18
- * The value of the progress bar.
19
- */
20
- value?: number;
21
- /**
22
- * Indicates current status of the progress bar represented by the color.
23
- */
24
- status?: boolean;
25
- /**
26
- * If `true` the progress bar will not show the percentage label.
27
- */
28
- undeterminate?: boolean;
29
- /**
30
- * Aria Properties passed on to the progress bar.
31
- */
32
- labelProps?: object;
33
- }
1
+ export { default } from "./ProgressBar";
2
+ export * from "./ProgressBar";
@@ -1,3 +1,4 @@
1
1
  export { default } from "./QueryBuilder";
2
2
 
3
3
  export * from "./QueryBuilder";
4
+ export * from "./types";
@@ -5,7 +5,7 @@ import React from "react";
5
5
  import PropTypes from "prop-types";
6
6
  import clsx from "clsx";
7
7
  import { deprecatedPropType, withStyles } from "@material-ui/core";
8
- import { HvListContainer } from "@hitachivantara/uikit-react-core";
8
+ import { HvListContainer, useDeprecated } from "@hitachivantara/uikit-react-core";
9
9
  import styles from "./styles";
10
10
  import TitleWithTooltip from "./TitleWithTooltip";
11
11
  import Action from "./Action";
@@ -27,6 +27,7 @@ var AppSwitcherPanel = function AppSwitcherPanel(props) {
27
27
  header = props.header,
28
28
  footer = props.footer,
29
29
  isOpen = props.isOpen;
30
+ useDeprecated("AppSwitcherPanel", "Please use the AppSwitcherPanel component in Core");
30
31
 
31
32
  var actionClicked = function actionClicked(event, application) {
32
33
  onActionClickedCallback === null || onActionClickedCallback === void 0 ? void 0 : onActionClickedCallback(event, application);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/AppSwitcherPanel/AppSwitcherPanel.js"],"names":["React","PropTypes","clsx","deprecatedPropType","withStyles","HvListContainer","styles","TitleWithTooltip","Action","AppSwitcherPanel","props","id","className","classes","layout","title","applications","onActionClickedCallback","isActionSelectedCallback","header","footer","isOpen","actionClicked","event","application","panelActions","map","name","url","root","item","selected","itemSelected","disabled","itemDisabled","typography","itemTrigger","icon","itemIcon","itemTitle","iconInfo","itemInfoIcon","undefined","closed","open","actionsContainer","footerContainer","propTypes","string","shape","single","dual","fluid","isRequired","oneOf","arrayOf","iconUrl","iconElement","element","description","target","bool","isSelected","func","oneOfType","node"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport clsx from \"clsx\";\nimport { deprecatedPropType, withStyles } from \"@material-ui/core\";\n\nimport { HvListContainer } from \"@hitachivantara/uikit-react-core\";\n\nimport styles from \"./styles\";\n\nimport TitleWithTooltip from \"./TitleWithTooltip\";\nimport Action from \"./Action\";\n\nconst AppSwitcherPanel = (props) => {\n const {\n id,\n\n className,\n classes,\n\n layout = \"single\",\n\n title,\n applications,\n\n onActionClickedCallback = () => {},\n isActionSelectedCallback = () => false,\n\n header,\n footer,\n\n isOpen,\n } = props;\n\n const actionClicked = (event, application) => {\n onActionClickedCallback?.(event, application);\n };\n\n const panelActions = applications.map((application) => {\n if (application.name) {\n return (\n <Action\n key={application.id || `${application.name}_${application.url}`}\n application={application}\n onClickCallback={actionClicked}\n isSelectedCallback={isActionSelectedCallback}\n classes={{\n root: classes.item,\n selected: classes.itemSelected,\n disabled: classes.itemDisabled,\n typography: classes.itemTrigger,\n icon: classes.itemIcon,\n title: classes.itemTitle,\n iconInfo: classes.itemInfoIcon,\n }}\n />\n );\n }\n\n return undefined;\n });\n\n return (\n <div\n id={id}\n className={clsx(className, classes.root, classes[layout], {\n [classes.closed]: isOpen === false,\n [classes.open]: isOpen,\n })}\n >\n {(header && <div className={classes.title}>{header}</div>) ||\n (title && <TitleWithTooltip className={classes.title} title={title} />)}\n <HvListContainer disableGutters className={classes.actionsContainer}>\n {panelActions}\n </HvListContainer>\n {footer && <div className={classes.footerContainer}>{footer}</div>}\n </div>\n );\n};\n\nAppSwitcherPanel.propTypes = {\n /**\n * Identifier to be applied to the root element.\n */\n id: PropTypes.string,\n\n /**\n * Class names to be applied to the root element.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n root: PropTypes.string,\n single: PropTypes.string,\n dual: PropTypes.string,\n fluid: PropTypes.string,\n title: PropTypes.string,\n actionsContainer: PropTypes.string,\n footerContainer: PropTypes.string,\n closed: PropTypes.string,\n open: PropTypes.string,\n\n item: PropTypes.string,\n itemSelected: PropTypes.string,\n itemDisabled: PropTypes.string,\n itemTrigger: PropTypes.string,\n itemIcon: PropTypes.string,\n itemTitle: PropTypes.string,\n itemInfoIcon: PropTypes.string,\n }).isRequired,\n\n /**\n * Number of columns to render. One, two, or whatever fits the component's width.\n */\n layout: PropTypes.oneOf([\"single\", \"dual\", \"fluid\"]),\n\n /**\n * Title to be displayed on the header of the component.\n */\n title: PropTypes.string,\n /**\n * The list of applications to be used to render the actions on the component.\n */\n applications: PropTypes.arrayOf(\n PropTypes.shape({\n /**\n * Id of the application.\n */\n id: PropTypes.string,\n /**\n * Name of the application, this is the value that will be displayed on the component.\n */\n name: PropTypes.string.isRequired,\n /**\n * URL with the icon location to be used to represent the application.\n * iconUrl will only be used if no iconElement is provided.\n */\n iconUrl: PropTypes.string,\n /**\n * Element to be added as the icon representing the application.\n * The iconElement will be the primary option to be displayed.\n */\n iconElement: PropTypes.element,\n /**\n * Small description of the application.\n */\n description: PropTypes.string,\n /**\n * URL where the application is accesible.\n */\n url: PropTypes.string,\n /**\n * Defines if the application should be opened in the same tab or in a new one.\n */\n target: PropTypes.oneOf([\"_top\", \"_blank\"]),\n /**\n * If true, the item will be disabled.\n */\n disabled: PropTypes.bool,\n /**\n * True when the application is selected, false otherwise.\n */\n isSelected: PropTypes.bool,\n })\n ).isRequired,\n\n /**\n * Triggered when an action is clicked.\n */\n onActionClickedCallback: PropTypes.func,\n /**\n * Must return a boolean stating if the action element is selected or not.\n */\n isActionSelectedCallback: PropTypes.func,\n\n /**\n * Element to be added to the header container, if none is provided a label with the title will be added.\n */\n header: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n /**\n * Element to be added to the footer container.\n */\n footer: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n\n /**\n * Flag stating if the panel is opened or closed.\n *\n * @deprecated This logic should be external, i.e. using the HvAppSwitcherPanel inside a Drawer component.\n */\n isOpen: deprecatedPropType(PropTypes.bool),\n};\n\nexport default withStyles(styles, { name: \"HvAppSwitcherPanel\" })(AppSwitcherPanel);\n"],"file":"AppSwitcherPanel.js"}
1
+ {"version":3,"sources":["../../../src/AppSwitcherPanel/AppSwitcherPanel.js"],"names":["React","PropTypes","clsx","deprecatedPropType","withStyles","HvListContainer","useDeprecated","styles","TitleWithTooltip","Action","AppSwitcherPanel","props","id","className","classes","layout","title","applications","onActionClickedCallback","isActionSelectedCallback","header","footer","isOpen","actionClicked","event","application","panelActions","map","name","url","root","item","selected","itemSelected","disabled","itemDisabled","typography","itemTrigger","icon","itemIcon","itemTitle","iconInfo","itemInfoIcon","undefined","closed","open","actionsContainer","footerContainer","propTypes","string","shape","single","dual","fluid","isRequired","oneOf","arrayOf","iconUrl","iconElement","element","description","target","bool","isSelected","func","oneOfType","node"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport clsx from \"clsx\";\nimport { deprecatedPropType, withStyles } from \"@material-ui/core\";\n\nimport { HvListContainer, useDeprecated } from \"@hitachivantara/uikit-react-core\";\n\nimport styles from \"./styles\";\n\nimport TitleWithTooltip from \"./TitleWithTooltip\";\nimport Action from \"./Action\";\n\nconst AppSwitcherPanel = (props) => {\n const {\n id,\n\n className,\n classes,\n\n layout = \"single\",\n\n title,\n applications,\n\n onActionClickedCallback = () => {},\n isActionSelectedCallback = () => false,\n\n header,\n footer,\n\n isOpen,\n } = props;\n\n useDeprecated(\"AppSwitcherPanel\", \"Please use the AppSwitcherPanel component in Core\");\n\n const actionClicked = (event, application) => {\n onActionClickedCallback?.(event, application);\n };\n\n const panelActions = applications.map((application) => {\n if (application.name) {\n return (\n <Action\n key={application.id || `${application.name}_${application.url}`}\n application={application}\n onClickCallback={actionClicked}\n isSelectedCallback={isActionSelectedCallback}\n classes={{\n root: classes.item,\n selected: classes.itemSelected,\n disabled: classes.itemDisabled,\n typography: classes.itemTrigger,\n icon: classes.itemIcon,\n title: classes.itemTitle,\n iconInfo: classes.itemInfoIcon,\n }}\n />\n );\n }\n\n return undefined;\n });\n\n return (\n <div\n id={id}\n className={clsx(className, classes.root, classes[layout], {\n [classes.closed]: isOpen === false,\n [classes.open]: isOpen,\n })}\n >\n {(header && <div className={classes.title}>{header}</div>) ||\n (title && <TitleWithTooltip className={classes.title} title={title} />)}\n <HvListContainer disableGutters className={classes.actionsContainer}>\n {panelActions}\n </HvListContainer>\n {footer && <div className={classes.footerContainer}>{footer}</div>}\n </div>\n );\n};\n\nAppSwitcherPanel.propTypes = {\n /**\n * Identifier to be applied to the root element.\n */\n id: PropTypes.string,\n\n /**\n * Class names to be applied to the root element.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n root: PropTypes.string,\n single: PropTypes.string,\n dual: PropTypes.string,\n fluid: PropTypes.string,\n title: PropTypes.string,\n actionsContainer: PropTypes.string,\n footerContainer: PropTypes.string,\n closed: PropTypes.string,\n open: PropTypes.string,\n\n item: PropTypes.string,\n itemSelected: PropTypes.string,\n itemDisabled: PropTypes.string,\n itemTrigger: PropTypes.string,\n itemIcon: PropTypes.string,\n itemTitle: PropTypes.string,\n itemInfoIcon: PropTypes.string,\n }).isRequired,\n\n /**\n * Number of columns to render. One, two, or whatever fits the component's width.\n */\n layout: PropTypes.oneOf([\"single\", \"dual\", \"fluid\"]),\n\n /**\n * Title to be displayed on the header of the component.\n */\n title: PropTypes.string,\n /**\n * The list of applications to be used to render the actions on the component.\n */\n applications: PropTypes.arrayOf(\n PropTypes.shape({\n /**\n * Id of the application.\n */\n id: PropTypes.string,\n /**\n * Name of the application, this is the value that will be displayed on the component.\n */\n name: PropTypes.string.isRequired,\n /**\n * URL with the icon location to be used to represent the application.\n * iconUrl will only be used if no iconElement is provided.\n */\n iconUrl: PropTypes.string,\n /**\n * Element to be added as the icon representing the application.\n * The iconElement will be the primary option to be displayed.\n */\n iconElement: PropTypes.element,\n /**\n * Small description of the application.\n */\n description: PropTypes.string,\n /**\n * URL where the application is accesible.\n */\n url: PropTypes.string,\n /**\n * Defines if the application should be opened in the same tab or in a new one.\n */\n target: PropTypes.oneOf([\"_top\", \"_blank\"]),\n /**\n * If true, the item will be disabled.\n */\n disabled: PropTypes.bool,\n /**\n * True when the application is selected, false otherwise.\n */\n isSelected: PropTypes.bool,\n })\n ).isRequired,\n\n /**\n * Triggered when an action is clicked.\n */\n onActionClickedCallback: PropTypes.func,\n /**\n * Must return a boolean stating if the action element is selected or not.\n */\n isActionSelectedCallback: PropTypes.func,\n\n /**\n * Element to be added to the header container, if none is provided a label with the title will be added.\n */\n header: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n /**\n * Element to be added to the footer container.\n */\n footer: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n\n /**\n * Flag stating if the panel is opened or closed.\n *\n * @deprecated This logic should be external, i.e. using the HvAppSwitcherPanel inside a Drawer component.\n */\n isOpen: deprecatedPropType(PropTypes.bool),\n};\n\nexport default withStyles(styles, { name: \"HvAppSwitcherPanel\" })(AppSwitcherPanel);\n"],"file":"AppSwitcherPanel.js"}
@@ -1,11 +1,40 @@
1
1
  import * as React from "react";
2
2
  import { StandardProps } from "@material-ui/core";
3
3
 
4
- export type HvProgressBarClassKey = "root";
4
+ export type HvProgressBarClassKey =
5
+ | "root"
6
+ | "progress"
7
+ | "progressContainer"
8
+ | "progressBarContainer"
9
+ | "progressBar"
10
+ | "progressDone"
11
+ | "progressError"
12
+ | "progressBarLabel"
13
+ | "progressBarLabelHidden";
5
14
 
6
- export type HvProgressBarProps = StandardProps<
7
- React.HTMLAttributes<HTMLDivElement>,
8
- HvProgressBarClassKey
9
- >;
15
+ export interface HvProgressBarProps
16
+ extends StandardProps<React.HTMLAttributes<HTMLDivElement>, HvProgressBarClassKey>,
17
+ HvProgressBarProps {
18
+ /**
19
+ * The value of the progress bar.
20
+ */
21
+ value?: number;
22
+ /**
23
+ * The status of the progress bar.
24
+ *
25
+ * inProgress is black, error is red and completed is green.
26
+ *
27
+ * When uncontrolled and unspecified it will default to "inProgress".
28
+ */
29
+ status?: string;
30
+ /**
31
+ * If `true` the progress bar will not show the percentage label.
32
+ */
33
+ undeterminate?: boolean;
34
+ /**
35
+ * Aria Properties passed on to the progress bar.
36
+ */
37
+ labelProps?: object;
38
+ }
10
39
 
11
40
  export default function HvProgressBar(props: HvProgressBarProps): JSX.Element | null;
@@ -1,6 +1,7 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
3
  var _excluded = ["className", "classes", "value", "status", "undeterminate", "labelProps"];
4
+ import "core-js/modules/es.object.freeze.js";
4
5
  import React from "react";
5
6
  import PropTypes from "prop-types";
6
7
  import clsx from "clsx";
@@ -8,6 +9,11 @@ import clamp from "lodash/clamp";
8
9
  import { HvTypography } from "@hitachivantara/uikit-react-core";
9
10
  import { withStyles } from "@material-ui/core";
10
11
  import styles from "./styles";
12
+ var statusCategories = Object.freeze({
13
+ inProgress: "inProgress",
14
+ completed: "completed",
15
+ error: "error"
16
+ });
11
17
  /**
12
18
  * ProgressBar provides feedback about a process that is taking place in the application.
13
19
  */
@@ -17,7 +23,8 @@ var HvProgressBar = function HvProgressBar(props) {
17
23
  classes = props.classes,
18
24
  _props$value = props.value,
19
25
  value = _props$value === void 0 ? 0 : _props$value,
20
- status = props.status,
26
+ _props$status = props.status,
27
+ status = _props$status === void 0 ? statusCategories.inProgress : _props$status,
21
28
  _props$undeterminate = props.undeterminate,
22
29
  undeterminate = _props$undeterminate === void 0 ? false : _props$undeterminate,
23
30
  labelProps = props.labelProps,
@@ -27,11 +34,9 @@ var HvProgressBar = function HvProgressBar(props) {
27
34
  return /*#__PURE__*/React.createElement("div", _extends({
28
35
  className: clsx(className, classes.root, classes.progress),
29
36
  role: "progressbar",
30
- status: "inProgress",
31
- "aria-valuenow": clampedValue // it only makes sense to put this in ariaProps if the min and max values of the progress bar are intended to be changed by the user
32
- ,
33
37
  "aria-valuemin": "0",
34
- "aria-valuemax": "100"
38
+ "aria-valuemax": "100",
39
+ "aria-valuenow": clampedValue
35
40
  }, others), /*#__PURE__*/React.createElement("div", {
36
41
  className: classes.progressContainer
37
42
  }, /*#__PURE__*/React.createElement(HvTypography, _extends({
@@ -39,17 +44,14 @@ var HvProgressBar = function HvProgressBar(props) {
39
44
  style: {
40
45
  width: "".concat(clampedValue, "%")
41
46
  },
42
- className: clsx(classes.progressBarLabel, undeterminate && classes.progressBarLabelHidden, status === "completed" && classes.progressDone)
47
+ className: clsx(classes.progressBarLabel, status === statusCategories.completed && classes.progressDone, undeterminate && classes.progressBarLabelHidden)
43
48
  }, labelProps), "".concat(clampedValue, "%")), /*#__PURE__*/React.createElement("div", {
44
49
  className: classes.progressBarContainer
45
50
  }, /*#__PURE__*/React.createElement("div", {
46
51
  style: {
47
52
  width: "".concat(clampedValue, "%")
48
53
  },
49
- className: clsx(classes.progressBar, {
50
- "completed": classes.progressDone,
51
- "error": classes.progressError
52
- }[status])
54
+ className: clsx(classes.progressBar, status === statusCategories.completed && classes.progressDone, status === statusCategories.error && classes.progressError)
53
55
  }))));
54
56
  };
55
57
 
@@ -121,7 +123,7 @@ process.env.NODE_ENV !== "production" ? HvProgressBar.propTypes = {
121
123
  *
122
124
  * When uncontrolled and unspecified it will default to "inProgress".
123
125
  */
124
- status: PropTypes.oneOf(["inProgress", "completed", "error"]),
126
+ status: PropTypes.oneOf([statusCategories.inProgress, statusCategories.completed, statusCategories.error]),
125
127
 
126
128
  /**
127
129
  * If `true` the progress bar will not show the percentage label.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/ProgressBar/ProgressBar.js"],"names":["React","PropTypes","clsx","clamp","HvTypography","withStyles","styles","HvProgressBar","props","className","classes","value","status","undeterminate","labelProps","others","clampedValue","root","progress","progressContainer","width","progressBarLabel","progressBarLabelHidden","progressDone","progressBarContainer","progressBar","progressError","propTypes","string","shape","isRequired","number","oneOf","bool","instanceOf","Object","name"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\n\nimport clamp from \"lodash/clamp\";\nimport { HvTypography } from \"@hitachivantara/uikit-react-core\";\n\nimport { withStyles } from \"@material-ui/core\";\n\nimport styles from \"./styles\";\n\n/**\n * ProgressBar provides feedback about a process that is taking place in the application.\n */\nconst HvProgressBar = (props) => {\n const {\n className,\n classes,\n value = 0,\n status,\n undeterminate = false,\n labelProps,\n ...others\n } = props;\n\n const clampedValue = clamp(value, 0, 100);\n\n return (\n <div\n className={clsx(className, classes.root, classes.progress)}\n role=\"progressbar\"\n status=\"inProgress\"\n aria-valuenow={clampedValue} // it only makes sense to put this in ariaProps if the min and max values of the progress bar are intended to be changed by the user\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n {...others}\n >\n <div className={classes.progressContainer}>\n <HvTypography\n variant=\"vizText\"\n style={{ width: `${clampedValue}%` }}\n className={clsx(\n classes.progressBarLabel,\n status === \"completed\" && classes.progressDone,\n undeterminate && classes.progressBarLabelHidden\n )}\n {...labelProps}\n >\n {`${clampedValue}%`}\n </HvTypography>\n <div className={classes.progressBarContainer}>\n <div\n style={{ width: `${clampedValue}%` }}\n className={clsx(\n classes.progressBar,\n status === \"completed\" && classes.progressDone,\n status === \"error\" && classes.progressError\n )}\n />\n </div>\n </div>\n </div>\n );\n};\n\nHvProgressBar.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 * Styles applied to the component root class.\n */\n root: PropTypes.string,\n\n /**\n * Style applied to the overall container when in progress mode.\n */\n progress: PropTypes.string,\n /**\n * Style applied to the specifc container when in progress mode.\n */\n progressContainer: PropTypes.string,\n /**\n * Style applied to progress bar container.\n */\n progressBarContainer: PropTypes.string,\n /**\n * Style applied to the progress bar.\n */\n progressBar: PropTypes.string,\n /**\n * Style applied to the progress bar when the loading is done.\n */\n progressDone: PropTypes.string,\n /**\n * Style applied to the progress bar when an error occurs.\n */\n progressError: PropTypes.string,\n /**\n * Style applied to the progress bar label.\n */\n progressBarLabel: PropTypes.string,\n /**\n * Style applied to the progress bar label.\n */\n progressBarLabelHidden: PropTypes.string,\n }).isRequired,\n\n /**\n * The value of the progress bar.\n */\n value: PropTypes.number,\n /**\n * The status of the progress bar.\n *\n * inProgress is black, error is red and completed is green.\n *\n * When uncontrolled and unspecified it will default to \"inProgress\".\n */\n status: PropTypes.oneOf([\"inProgress\", \"completed\", \"error\"]),\n /**\n * If `true` the progress bar will not show the percentage label.\n */\n undeterminate: PropTypes.bool,\n /**\n * Aria Properties passed on to the progress bar.\n */\n labelProps: PropTypes.instanceOf(Object),\n};\n\nexport default withStyles(styles, { name: \"HvProgressBar\" })(HvProgressBar);\n"],"file":"ProgressBar.js"}
1
+ {"version":3,"sources":["../../../src/ProgressBar/ProgressBar.js"],"names":["React","PropTypes","clsx","clamp","HvTypography","withStyles","styles","statusCategories","Object","freeze","inProgress","completed","error","HvProgressBar","props","className","classes","value","status","undeterminate","labelProps","others","clampedValue","root","progress","progressContainer","width","progressBarLabel","progressDone","progressBarLabelHidden","progressBarContainer","progressBar","progressError","propTypes","string","shape","isRequired","number","oneOf","bool","instanceOf","name"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\n\nimport clamp from \"lodash/clamp\";\nimport { HvTypography } from \"@hitachivantara/uikit-react-core\";\n\nimport { withStyles } from \"@material-ui/core\";\n\nimport styles from \"./styles\";\n\nconst statusCategories = Object.freeze({\n inProgress: \"inProgress\",\n completed: \"completed\",\n error: \"error\",\n});\n\n/**\n * ProgressBar provides feedback about a process that is taking place in the application.\n */\nconst HvProgressBar = (props) => {\n const {\n className,\n classes,\n value = 0,\n status = statusCategories.inProgress,\n undeterminate = false,\n labelProps,\n ...others\n } = props;\n\n const clampedValue = clamp(value, 0, 100);\n\n return (\n <div\n className={clsx(className, classes.root, classes.progress)}\n role=\"progressbar\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n aria-valuenow={clampedValue}\n {...others}\n >\n <div className={classes.progressContainer}>\n <HvTypography\n variant=\"vizText\"\n style={{ width: `${clampedValue}%` }}\n className={clsx(\n classes.progressBarLabel,\n status === statusCategories.completed && classes.progressDone,\n undeterminate && classes.progressBarLabelHidden\n )}\n {...labelProps}\n >\n {`${clampedValue}%`}\n </HvTypography>\n <div className={classes.progressBarContainer}>\n <div\n style={{ width: `${clampedValue}%` }}\n className={clsx(\n classes.progressBar,\n status === statusCategories.completed && classes.progressDone,\n status === statusCategories.error && classes.progressError\n )}\n />\n </div>\n </div>\n </div>\n );\n};\n\nHvProgressBar.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 * Styles applied to the component root class.\n */\n root: PropTypes.string,\n\n /**\n * Style applied to the overall container when in progress mode.\n */\n progress: PropTypes.string,\n /**\n * Style applied to the specifc container when in progress mode.\n */\n progressContainer: PropTypes.string,\n /**\n * Style applied to progress bar container.\n */\n progressBarContainer: PropTypes.string,\n /**\n * Style applied to the progress bar.\n */\n progressBar: PropTypes.string,\n /**\n * Style applied to the progress bar when the loading is done.\n */\n progressDone: PropTypes.string,\n /**\n * Style applied to the progress bar when an error occurs.\n */\n progressError: PropTypes.string,\n /**\n * Style applied to the progress bar label.\n */\n progressBarLabel: PropTypes.string,\n /**\n * Style applied to the progress bar label.\n */\n progressBarLabelHidden: PropTypes.string,\n }).isRequired,\n /**\n * The value of the progress bar.\n */\n value: PropTypes.number,\n /**\n * The status of the progress bar.\n *\n * inProgress is black, error is red and completed is green.\n *\n * When uncontrolled and unspecified it will default to \"inProgress\".\n */\n status: PropTypes.oneOf([\n statusCategories.inProgress,\n statusCategories.completed,\n statusCategories.error,\n ]),\n /**\n * If `true` the progress bar will not show the percentage label.\n */\n undeterminate: PropTypes.bool,\n /**\n * Aria Properties passed on to the progress bar.\n */\n labelProps: PropTypes.instanceOf(Object),\n};\n\nexport default withStyles(styles, { name: \"HvProgressBar\" })(HvProgressBar);\n"],"file":"ProgressBar.js"}
@@ -0,0 +1,80 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
+ import React, { useEffect, useState } from "react";
3
+ import { HvButton } from "@hitachivantara/uikit-react-core";
4
+ import { HvProgressBar } from ".."; // eslint-disable-next-line react/prop-types
5
+
6
+ export var ProgressBarSimulator = function ProgressBarSimulator(_ref) {
7
+ var inc = _ref.inc,
8
+ error = _ref.error,
9
+ undeterminate = _ref.undeterminate,
10
+ ariaLabel = _ref.ariaLabel,
11
+ ariaLive = _ref.ariaLive;
12
+
13
+ var _useState = useState("inProgress"),
14
+ _useState2 = _slicedToArray(_useState, 2),
15
+ status = _useState2[0],
16
+ setStatus = _useState2[1];
17
+
18
+ var _useState3 = useState(0),
19
+ _useState4 = _slicedToArray(_useState3, 2),
20
+ value = _useState4[0],
21
+ setValue = _useState4[1];
22
+
23
+ var _useState5 = useState(false),
24
+ _useState6 = _slicedToArray(_useState5, 2),
25
+ run = _useState6[0],
26
+ setRun = _useState6[1];
27
+
28
+ useEffect(function () {
29
+ var interval = setInterval(function () {
30
+ if (value === 100) {
31
+ setRun(false);
32
+ clearInterval(interval);
33
+ setStatus("completed");
34
+ } else if (error && value === error) {
35
+ clearInterval(interval);
36
+ setStatus("error");
37
+ } else if (run) setValue(inc);
38
+ }, 150);
39
+ return function () {
40
+ return clearInterval(interval);
41
+ };
42
+ }, [inc, value, run, error]);
43
+
44
+ var reset = function reset() {
45
+ setValue(0);
46
+ setStatus("inProgress");
47
+ };
48
+
49
+ var start = function start() {
50
+ setRun(true);
51
+ };
52
+
53
+ return /*#__PURE__*/React.createElement("div", {
54
+ style: {
55
+ width: 400
56
+ }
57
+ }, /*#__PURE__*/React.createElement(HvProgressBar, {
58
+ value: value,
59
+ status: status,
60
+ undeterminate: undeterminate,
61
+ labelProps: {
62
+ "aria-label": ariaLabel,
63
+ "aria-busy": false,
64
+ "aria-live": ariaLive
65
+ }
66
+ }), /*#__PURE__*/React.createElement("div", {
67
+ style: {
68
+ marginTop: 10
69
+ }
70
+ }, /*#__PURE__*/React.createElement(HvButton, {
71
+ onClick: start
72
+ }, "Start"), /*#__PURE__*/React.createElement(HvButton, {
73
+ style: {
74
+ marginLeft: 10
75
+ },
76
+ onClick: reset
77
+ }, "Reset")));
78
+ };
79
+ export { ProgressBarSimulator as default };
80
+ //# sourceMappingURL=ProgressBarSimulator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/ProgressBar/ProgressBarSimulator.js"],"names":["React","useEffect","useState","HvButton","HvProgressBar","ProgressBarSimulator","inc","error","undeterminate","ariaLabel","ariaLive","status","setStatus","value","setValue","run","setRun","interval","setInterval","clearInterval","reset","start","width","marginTop","marginLeft","default"],"mappings":";AAAA,OAAOA,KAAP,IAAgBC,SAAhB,EAA2BC,QAA3B,QAA2C,OAA3C;AAEA,SAASC,QAAT,QAAyB,kCAAzB;AAEA,SAASC,aAAT,QAA8B,IAA9B,C,CAEA;;AACA,OAAO,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB,OAAwD;AAAA,MAArDC,GAAqD,QAArDA,GAAqD;AAAA,MAAhDC,KAAgD,QAAhDA,KAAgD;AAAA,MAAzCC,aAAyC,QAAzCA,aAAyC;AAAA,MAA1BC,SAA0B,QAA1BA,SAA0B;AAAA,MAAfC,QAAe,QAAfA,QAAe;;AAC1F,kBAA4BR,QAAQ,CAAC,YAAD,CAApC;AAAA;AAAA,MAAOS,MAAP;AAAA,MAAeC,SAAf;;AACA,mBAA0BV,QAAQ,CAAC,CAAD,CAAlC;AAAA;AAAA,MAAOW,KAAP;AAAA,MAAcC,QAAd;;AACA,mBAAsBZ,QAAQ,CAAC,KAAD,CAA9B;AAAA;AAAA,MAAOa,GAAP;AAAA,MAAYC,MAAZ;;AAEAf,EAAAA,SAAS,CAAC,YAAM;AACd,QAAMgB,QAAQ,GAAGC,WAAW,CAAC,YAAM;AACjC,UAAIL,KAAK,KAAK,GAAd,EAAmB;AACjBG,QAAAA,MAAM,CAAC,KAAD,CAAN;AACAG,QAAAA,aAAa,CAACF,QAAD,CAAb;AACAL,QAAAA,SAAS,CAAC,WAAD,CAAT;AACD,OAJD,MAIO,IAAIL,KAAK,IAAIM,KAAK,KAAKN,KAAvB,EAA8B;AACnCY,QAAAA,aAAa,CAACF,QAAD,CAAb;AACAL,QAAAA,SAAS,CAAC,OAAD,CAAT;AACD,OAHM,MAGA,IAAIG,GAAJ,EAASD,QAAQ,CAACR,GAAD,CAAR;AACjB,KAT2B,EASzB,GATyB,CAA5B;AAUA,WAAO;AAAA,aAAMa,aAAa,CAACF,QAAD,CAAnB;AAAA,KAAP;AACD,GAZQ,EAYN,CAACX,GAAD,EAAMO,KAAN,EAAaE,GAAb,EAAkBR,KAAlB,CAZM,CAAT;;AAcA,MAAMa,KAAK,GAAG,SAARA,KAAQ,GAAM;AAClBN,IAAAA,QAAQ,CAAC,CAAD,CAAR;AACAF,IAAAA,SAAS,CAAC,YAAD,CAAT;AACD,GAHD;;AAKA,MAAMS,KAAK,GAAG,SAARA,KAAQ,GAAM;AAClBL,IAAAA,MAAM,CAAC,IAAD,CAAN;AACD,GAFD;;AAIA,sBACE;AAAK,IAAA,KAAK,EAAE;AAAEM,MAAAA,KAAK,EAAE;AAAT;AAAZ,kBACE,oBAAC,aAAD;AACE,IAAA,KAAK,EAAET,KADT;AAEE,IAAA,MAAM,EAAEF,MAFV;AAGE,IAAA,aAAa,EAAEH,aAHjB;AAIE,IAAA,UAAU,EAAE;AACV,oBAAcC,SADJ;AAEV,mBAAa,KAFH;AAGV,mBAAaC;AAHH;AAJd,IADF,eAWE;AAAK,IAAA,KAAK,EAAE;AAAEa,MAAAA,SAAS,EAAE;AAAb;AAAZ,kBACE,oBAAC,QAAD;AAAU,IAAA,OAAO,EAAEF;AAAnB,aADF,eAEE,oBAAC,QAAD;AAAU,IAAA,KAAK,EAAE;AAAEG,MAAAA,UAAU,EAAE;AAAd,KAAjB;AAAqC,IAAA,OAAO,EAAEJ;AAA9C,aAFF,CAXF,CADF;AAoBD,CAhDM;AAkDP,SAASf,oBAAoB,IAAIoB,OAAjC","sourcesContent":["import React, { useEffect, useState } from \"react\";\n\nimport { HvButton } from \"@hitachivantara/uikit-react-core\";\n\nimport { HvProgressBar } from \"..\";\n\n// eslint-disable-next-line react/prop-types\nexport const ProgressBarSimulator = ({ inc, error, undeterminate, ariaLabel, ariaLive }) => {\n const [status, setStatus] = useState(\"inProgress\");\n const [value, setValue] = useState(0);\n const [run, setRun] = useState(false);\n\n useEffect(() => {\n const interval = setInterval(() => {\n if (value === 100) {\n setRun(false);\n clearInterval(interval);\n setStatus(\"completed\");\n } else if (error && value === error) {\n clearInterval(interval);\n setStatus(\"error\");\n } else if (run) setValue(inc);\n }, 150);\n return () => clearInterval(interval);\n }, [inc, value, run, error]);\n\n const reset = () => {\n setValue(0);\n setStatus(\"inProgress\");\n };\n\n const start = () => {\n setRun(true);\n };\n\n return (\n <div style={{ width: 400 }}>\n <HvProgressBar\n value={value}\n status={status}\n undeterminate={undeterminate}\n labelProps={{\n \"aria-label\": ariaLabel,\n \"aria-busy\": false,\n \"aria-live\": ariaLive,\n }}\n />\n <div style={{ marginTop: 10 }}>\n <HvButton onClick={start}>Start</HvButton>\n <HvButton style={{ marginLeft: 10 }} onClick={reset}>\n Reset\n </HvButton>\n </div>\n </div>\n );\n};\n\nexport { ProgressBarSimulator as default };\n"],"file":"ProgressBarSimulator.js"}
@@ -1,33 +1,2 @@
1
- import * as React from "react";
2
- import { StandardProps } from "@material-ui/core";
3
-
4
- export type HvProgressClassKey =
5
- | "root"
6
- | "progress"
7
- | "progressContainer"
8
- | "progressBarContainer"
9
- | "progressBar"
10
- | "progressDone"
11
- | "progressError"
12
- | "progressBarLabel"
13
- | "progressAriaAlert";
14
-
15
- export interface HvProgressBarProps
16
- extends StandardProps<React.HTMLAttributes<HTMLDivElement>, HvProgressClassKey> {
17
- /**
18
- * The value of the progress bar.
19
- */
20
- value?: number;
21
- /**
22
- * Indicates current status of the progress bar represented by the color.
23
- */
24
- status?: boolean;
25
- /**
26
- * If `true` the progress bar will not show the percentage label.
27
- */
28
- undeterminate?: boolean;
29
- /**
30
- * Aria Properties passed on to the progress bar.
31
- */
32
- labelProps?: object;
33
- }
1
+ export { default } from "./ProgressBar";
2
+ export * from "./ProgressBar";
@@ -1,3 +1,4 @@
1
1
  export { default } from "./QueryBuilder";
2
2
 
3
3
  export * from "./QueryBuilder";
4
+ export * from "./types";
@@ -2,7 +2,7 @@ import React from "react";
2
2
  import PropTypes from "prop-types";
3
3
  import clsx from "clsx";
4
4
  import { deprecatedPropType, withStyles } from "@material-ui/core";
5
- import { HvListContainer } from "@hitachivantara/uikit-react-core";
5
+ import { HvListContainer, useDeprecated } from "@hitachivantara/uikit-react-core";
6
6
  import styles from "./styles";
7
7
  import TitleWithTooltip from "./TitleWithTooltip";
8
8
  import Action from "./Action";
@@ -21,6 +21,7 @@ const AppSwitcherPanel = props => {
21
21
  footer,
22
22
  isOpen
23
23
  } = props;
24
+ useDeprecated("AppSwitcherPanel", "Please use the AppSwitcherPanel component in Core");
24
25
 
25
26
  const actionClicked = (event, application) => {
26
27
  onActionClickedCallback === null || onActionClickedCallback === void 0 ? void 0 : onActionClickedCallback(event, application);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/AppSwitcherPanel/AppSwitcherPanel.js"],"names":["React","PropTypes","clsx","deprecatedPropType","withStyles","HvListContainer","styles","TitleWithTooltip","Action","AppSwitcherPanel","props","id","className","classes","layout","title","applications","onActionClickedCallback","isActionSelectedCallback","header","footer","isOpen","actionClicked","event","application","panelActions","map","name","url","root","item","selected","itemSelected","disabled","itemDisabled","typography","itemTrigger","icon","itemIcon","itemTitle","iconInfo","itemInfoIcon","undefined","closed","open","actionsContainer","footerContainer","propTypes","string","shape","single","dual","fluid","isRequired","oneOf","arrayOf","iconUrl","iconElement","element","description","target","bool","isSelected","func","oneOfType","node"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport clsx from \"clsx\";\nimport { deprecatedPropType, withStyles } from \"@material-ui/core\";\n\nimport { HvListContainer } from \"@hitachivantara/uikit-react-core\";\n\nimport styles from \"./styles\";\n\nimport TitleWithTooltip from \"./TitleWithTooltip\";\nimport Action from \"./Action\";\n\nconst AppSwitcherPanel = (props) => {\n const {\n id,\n\n className,\n classes,\n\n layout = \"single\",\n\n title,\n applications,\n\n onActionClickedCallback = () => {},\n isActionSelectedCallback = () => false,\n\n header,\n footer,\n\n isOpen,\n } = props;\n\n const actionClicked = (event, application) => {\n onActionClickedCallback?.(event, application);\n };\n\n const panelActions = applications.map((application) => {\n if (application.name) {\n return (\n <Action\n key={application.id || `${application.name}_${application.url}`}\n application={application}\n onClickCallback={actionClicked}\n isSelectedCallback={isActionSelectedCallback}\n classes={{\n root: classes.item,\n selected: classes.itemSelected,\n disabled: classes.itemDisabled,\n typography: classes.itemTrigger,\n icon: classes.itemIcon,\n title: classes.itemTitle,\n iconInfo: classes.itemInfoIcon,\n }}\n />\n );\n }\n\n return undefined;\n });\n\n return (\n <div\n id={id}\n className={clsx(className, classes.root, classes[layout], {\n [classes.closed]: isOpen === false,\n [classes.open]: isOpen,\n })}\n >\n {(header && <div className={classes.title}>{header}</div>) ||\n (title && <TitleWithTooltip className={classes.title} title={title} />)}\n <HvListContainer disableGutters className={classes.actionsContainer}>\n {panelActions}\n </HvListContainer>\n {footer && <div className={classes.footerContainer}>{footer}</div>}\n </div>\n );\n};\n\nAppSwitcherPanel.propTypes = {\n /**\n * Identifier to be applied to the root element.\n */\n id: PropTypes.string,\n\n /**\n * Class names to be applied to the root element.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n root: PropTypes.string,\n single: PropTypes.string,\n dual: PropTypes.string,\n fluid: PropTypes.string,\n title: PropTypes.string,\n actionsContainer: PropTypes.string,\n footerContainer: PropTypes.string,\n closed: PropTypes.string,\n open: PropTypes.string,\n\n item: PropTypes.string,\n itemSelected: PropTypes.string,\n itemDisabled: PropTypes.string,\n itemTrigger: PropTypes.string,\n itemIcon: PropTypes.string,\n itemTitle: PropTypes.string,\n itemInfoIcon: PropTypes.string,\n }).isRequired,\n\n /**\n * Number of columns to render. One, two, or whatever fits the component's width.\n */\n layout: PropTypes.oneOf([\"single\", \"dual\", \"fluid\"]),\n\n /**\n * Title to be displayed on the header of the component.\n */\n title: PropTypes.string,\n /**\n * The list of applications to be used to render the actions on the component.\n */\n applications: PropTypes.arrayOf(\n PropTypes.shape({\n /**\n * Id of the application.\n */\n id: PropTypes.string,\n /**\n * Name of the application, this is the value that will be displayed on the component.\n */\n name: PropTypes.string.isRequired,\n /**\n * URL with the icon location to be used to represent the application.\n * iconUrl will only be used if no iconElement is provided.\n */\n iconUrl: PropTypes.string,\n /**\n * Element to be added as the icon representing the application.\n * The iconElement will be the primary option to be displayed.\n */\n iconElement: PropTypes.element,\n /**\n * Small description of the application.\n */\n description: PropTypes.string,\n /**\n * URL where the application is accesible.\n */\n url: PropTypes.string,\n /**\n * Defines if the application should be opened in the same tab or in a new one.\n */\n target: PropTypes.oneOf([\"_top\", \"_blank\"]),\n /**\n * If true, the item will be disabled.\n */\n disabled: PropTypes.bool,\n /**\n * True when the application is selected, false otherwise.\n */\n isSelected: PropTypes.bool,\n })\n ).isRequired,\n\n /**\n * Triggered when an action is clicked.\n */\n onActionClickedCallback: PropTypes.func,\n /**\n * Must return a boolean stating if the action element is selected or not.\n */\n isActionSelectedCallback: PropTypes.func,\n\n /**\n * Element to be added to the header container, if none is provided a label with the title will be added.\n */\n header: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n /**\n * Element to be added to the footer container.\n */\n footer: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n\n /**\n * Flag stating if the panel is opened or closed.\n *\n * @deprecated This logic should be external, i.e. using the HvAppSwitcherPanel inside a Drawer component.\n */\n isOpen: deprecatedPropType(PropTypes.bool),\n};\n\nexport default withStyles(styles, { name: \"HvAppSwitcherPanel\" })(AppSwitcherPanel);\n"],"file":"AppSwitcherPanel.js"}
1
+ {"version":3,"sources":["../../../src/AppSwitcherPanel/AppSwitcherPanel.js"],"names":["React","PropTypes","clsx","deprecatedPropType","withStyles","HvListContainer","useDeprecated","styles","TitleWithTooltip","Action","AppSwitcherPanel","props","id","className","classes","layout","title","applications","onActionClickedCallback","isActionSelectedCallback","header","footer","isOpen","actionClicked","event","application","panelActions","map","name","url","root","item","selected","itemSelected","disabled","itemDisabled","typography","itemTrigger","icon","itemIcon","itemTitle","iconInfo","itemInfoIcon","undefined","closed","open","actionsContainer","footerContainer","propTypes","string","shape","single","dual","fluid","isRequired","oneOf","arrayOf","iconUrl","iconElement","element","description","target","bool","isSelected","func","oneOfType","node"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,SAAP,MAAsB,YAAtB;AAEA,OAAOC,IAAP,MAAiB,MAAjB;AACA,SAASC,kBAAT,EAA6BC,UAA7B,QAA+C,mBAA/C;AAEA,SAASC,eAAT,EAA0BC,aAA1B,QAA+C,kCAA/C;AAEA,OAAOC,MAAP,MAAmB,UAAnB;AAEA,OAAOC,gBAAP,MAA6B,oBAA7B;AACA,OAAOC,MAAP,MAAmB,UAAnB;;AAEA,MAAMC,gBAAgB,GAAIC,KAAD,IAAW;AAClC,QAAM;AACJC,IAAAA,EADI;AAGJC,IAAAA,SAHI;AAIJC,IAAAA,OAJI;AAMJC,IAAAA,MAAM,GAAG,QANL;AAQJC,IAAAA,KARI;AASJC,IAAAA,YATI;AAWJC,IAAAA,uBAAuB,GAAG,MAAM,CAAE,CAX9B;AAYJC,IAAAA,wBAAwB,GAAG,MAAM,KAZ7B;AAcJC,IAAAA,MAdI;AAeJC,IAAAA,MAfI;AAiBJC,IAAAA;AAjBI,MAkBFX,KAlBJ;AAoBAL,EAAAA,aAAa,CAAC,kBAAD,EAAqB,mDAArB,CAAb;;AAEA,QAAMiB,aAAa,GAAG,CAACC,KAAD,EAAQC,WAAR,KAAwB;AAC5CP,IAAAA,uBAAuB,SAAvB,IAAAA,uBAAuB,WAAvB,YAAAA,uBAAuB,CAAGM,KAAH,EAAUC,WAAV,CAAvB;AACD,GAFD;;AAIA,QAAMC,YAAY,GAAGT,YAAY,CAACU,GAAb,CAAkBF,WAAD,IAAiB;AACrD,QAAIA,WAAW,CAACG,IAAhB,EAAsB;AACpB,0BACE,oBAAC,MAAD;AACE,QAAA,GAAG,EAAEH,WAAW,CAACb,EAAZ,IAAmB,GAAEa,WAAW,CAACG,IAAK,IAAGH,WAAW,CAACI,GAAI,EADhE;AAEE,QAAA,WAAW,EAAEJ,WAFf;AAGE,QAAA,eAAe,EAAEF,aAHnB;AAIE,QAAA,kBAAkB,EAAEJ,wBAJtB;AAKE,QAAA,OAAO,EAAE;AACPW,UAAAA,IAAI,EAAEhB,OAAO,CAACiB,IADP;AAEPC,UAAAA,QAAQ,EAAElB,OAAO,CAACmB,YAFX;AAGPC,UAAAA,QAAQ,EAAEpB,OAAO,CAACqB,YAHX;AAIPC,UAAAA,UAAU,EAAEtB,OAAO,CAACuB,WAJb;AAKPC,UAAAA,IAAI,EAAExB,OAAO,CAACyB,QALP;AAMPvB,UAAAA,KAAK,EAAEF,OAAO,CAAC0B,SANR;AAOPC,UAAAA,QAAQ,EAAE3B,OAAO,CAAC4B;AAPX;AALX,QADF;AAiBD;;AAED,WAAOC,SAAP;AACD,GAtBoB,CAArB;AAwBA,sBACE;AACE,IAAA,EAAE,EAAE/B,EADN;AAEE,IAAA,SAAS,EAAEV,IAAI,CAACW,SAAD,EAAYC,OAAO,CAACgB,IAApB,EAA0BhB,OAAO,CAACC,MAAD,CAAjC,EACKO,MAAM,KAAK,KADhB,IACZR,OAAO,CAAC8B,MADI,EAEGtB,MAFH,IAEZR,OAAO,CAAC+B,IAFI;AAFjB,KAOIzB,MAAM,iBAAI;AAAK,IAAA,SAAS,EAAEN,OAAO,CAACE;AAAxB,KAAgCI,MAAhC,CAAX,IACEJ,KAAK,iBAAI,oBAAC,gBAAD;AAAkB,IAAA,SAAS,EAAEF,OAAO,CAACE,KAArC;AAA4C,IAAA,KAAK,EAAEA;AAAnD,IARd,eASE,oBAAC,eAAD;AAAiB,IAAA,cAAc,MAA/B;AAAgC,IAAA,SAAS,EAAEF,OAAO,CAACgC;AAAnD,KACGpB,YADH,CATF,EAYGL,MAAM,iBAAI;AAAK,IAAA,SAAS,EAAEP,OAAO,CAACiC;AAAxB,KAA0C1B,MAA1C,CAZb,CADF;AAgBD,CAnED;;AAqEA,wCAAAX,gBAAgB,CAACsC,SAAjB,GAA6B;AAC3B;AACF;AACA;AACEpC,EAAAA,EAAE,EAAEX,SAAS,CAACgD,MAJa;;AAM3B;AACF;AACA;AACEpC,EAAAA,SAAS,EAAEZ,SAAS,CAACgD,MATM;;AAU3B;AACF;AACA;AACEnC,EAAAA,OAAO,EAAEb,SAAS,CAACiD,KAAV,CAAgB;AACvBpB,IAAAA,IAAI,EAAE7B,SAAS,CAACgD,MADO;AAEvBE,IAAAA,MAAM,EAAElD,SAAS,CAACgD,MAFK;AAGvBG,IAAAA,IAAI,EAAEnD,SAAS,CAACgD,MAHO;AAIvBI,IAAAA,KAAK,EAAEpD,SAAS,CAACgD,MAJM;AAKvBjC,IAAAA,KAAK,EAAEf,SAAS,CAACgD,MALM;AAMvBH,IAAAA,gBAAgB,EAAE7C,SAAS,CAACgD,MANL;AAOvBF,IAAAA,eAAe,EAAE9C,SAAS,CAACgD,MAPJ;AAQvBL,IAAAA,MAAM,EAAE3C,SAAS,CAACgD,MARK;AASvBJ,IAAAA,IAAI,EAAE5C,SAAS,CAACgD,MATO;AAWvBlB,IAAAA,IAAI,EAAE9B,SAAS,CAACgD,MAXO;AAYvBhB,IAAAA,YAAY,EAAEhC,SAAS,CAACgD,MAZD;AAavBd,IAAAA,YAAY,EAAElC,SAAS,CAACgD,MAbD;AAcvBZ,IAAAA,WAAW,EAAEpC,SAAS,CAACgD,MAdA;AAevBV,IAAAA,QAAQ,EAAEtC,SAAS,CAACgD,MAfG;AAgBvBT,IAAAA,SAAS,EAAEvC,SAAS,CAACgD,MAhBE;AAiBvBP,IAAAA,YAAY,EAAEzC,SAAS,CAACgD;AAjBD,GAAhB,EAkBNK,UA/BwB;;AAiC3B;AACF;AACA;AACEvC,EAAAA,MAAM,EAAEd,SAAS,CAACsD,KAAV,CAAgB,CAAC,QAAD,EAAW,MAAX,EAAmB,OAAnB,CAAhB,CApCmB;;AAsC3B;AACF;AACA;AACEvC,EAAAA,KAAK,EAAEf,SAAS,CAACgD,MAzCU;;AA0C3B;AACF;AACA;AACEhC,EAAAA,YAAY,EAAEhB,SAAS,CAACuD,OAAV,CACZvD,SAAS,CAACiD,KAAV,CAAgB;AACd;AACN;AACA;AACMtC,IAAAA,EAAE,EAAEX,SAAS,CAACgD,MAJA;;AAKd;AACN;AACA;AACMrB,IAAAA,IAAI,EAAE3B,SAAS,CAACgD,MAAV,CAAiBK,UART;;AASd;AACN;AACA;AACA;AACMG,IAAAA,OAAO,EAAExD,SAAS,CAACgD,MAbL;;AAcd;AACN;AACA;AACA;AACMS,IAAAA,WAAW,EAAEzD,SAAS,CAAC0D,OAlBT;;AAmBd;AACN;AACA;AACMC,IAAAA,WAAW,EAAE3D,SAAS,CAACgD,MAtBT;;AAuBd;AACN;AACA;AACMpB,IAAAA,GAAG,EAAE5B,SAAS,CAACgD,MA1BD;;AA2Bd;AACN;AACA;AACMY,IAAAA,MAAM,EAAE5D,SAAS,CAACsD,KAAV,CAAgB,CAAC,MAAD,EAAS,QAAT,CAAhB,CA9BM;;AA+Bd;AACN;AACA;AACMrB,IAAAA,QAAQ,EAAEjC,SAAS,CAAC6D,IAlCN;;AAmCd;AACN;AACA;AACMC,IAAAA,UAAU,EAAE9D,SAAS,CAAC6D;AAtCR,GAAhB,CADY,EAyCZR,UAtFyB;;AAwF3B;AACF;AACA;AACEpC,EAAAA,uBAAuB,EAAEjB,SAAS,CAAC+D,IA3FR;;AA4F3B;AACF;AACA;AACE7C,EAAAA,wBAAwB,EAAElB,SAAS,CAAC+D,IA/FT;;AAiG3B;AACF;AACA;AACE5C,EAAAA,MAAM,EAAEnB,SAAS,CAACgE,SAAV,CAAoB,CAAChE,SAAS,CAACgD,MAAX,EAAmBhD,SAAS,CAACiE,IAA7B,CAApB,CApGmB;;AAqG3B;AACF;AACA;AACE7C,EAAAA,MAAM,EAAEpB,SAAS,CAACgE,SAAV,CAAoB,CAAChE,SAAS,CAACgD,MAAX,EAAmBhD,SAAS,CAACiE,IAA7B,CAApB,CAxGmB;;AA0G3B;AACF;AACA;AACA;AACA;AACE5C,EAAAA,MAAM,EAAEnB,kBAAkB,CAACF,SAAS,CAAC6D,IAAX;AA/GC,CAA7B;AAkHA,eAAe1D,UAAU,CAACG,MAAD,EAAS;AAAEqB,EAAAA,IAAI,EAAE;AAAR,CAAT,CAAV,CAAmDlB,gBAAnD,CAAf","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport clsx from \"clsx\";\nimport { deprecatedPropType, withStyles } from \"@material-ui/core\";\n\nimport { HvListContainer, useDeprecated } from \"@hitachivantara/uikit-react-core\";\n\nimport styles from \"./styles\";\n\nimport TitleWithTooltip from \"./TitleWithTooltip\";\nimport Action from \"./Action\";\n\nconst AppSwitcherPanel = (props) => {\n const {\n id,\n\n className,\n classes,\n\n layout = \"single\",\n\n title,\n applications,\n\n onActionClickedCallback = () => {},\n isActionSelectedCallback = () => false,\n\n header,\n footer,\n\n isOpen,\n } = props;\n\n useDeprecated(\"AppSwitcherPanel\", \"Please use the AppSwitcherPanel component in Core\");\n\n const actionClicked = (event, application) => {\n onActionClickedCallback?.(event, application);\n };\n\n const panelActions = applications.map((application) => {\n if (application.name) {\n return (\n <Action\n key={application.id || `${application.name}_${application.url}`}\n application={application}\n onClickCallback={actionClicked}\n isSelectedCallback={isActionSelectedCallback}\n classes={{\n root: classes.item,\n selected: classes.itemSelected,\n disabled: classes.itemDisabled,\n typography: classes.itemTrigger,\n icon: classes.itemIcon,\n title: classes.itemTitle,\n iconInfo: classes.itemInfoIcon,\n }}\n />\n );\n }\n\n return undefined;\n });\n\n return (\n <div\n id={id}\n className={clsx(className, classes.root, classes[layout], {\n [classes.closed]: isOpen === false,\n [classes.open]: isOpen,\n })}\n >\n {(header && <div className={classes.title}>{header}</div>) ||\n (title && <TitleWithTooltip className={classes.title} title={title} />)}\n <HvListContainer disableGutters className={classes.actionsContainer}>\n {panelActions}\n </HvListContainer>\n {footer && <div className={classes.footerContainer}>{footer}</div>}\n </div>\n );\n};\n\nAppSwitcherPanel.propTypes = {\n /**\n * Identifier to be applied to the root element.\n */\n id: PropTypes.string,\n\n /**\n * Class names to be applied to the root element.\n */\n className: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n root: PropTypes.string,\n single: PropTypes.string,\n dual: PropTypes.string,\n fluid: PropTypes.string,\n title: PropTypes.string,\n actionsContainer: PropTypes.string,\n footerContainer: PropTypes.string,\n closed: PropTypes.string,\n open: PropTypes.string,\n\n item: PropTypes.string,\n itemSelected: PropTypes.string,\n itemDisabled: PropTypes.string,\n itemTrigger: PropTypes.string,\n itemIcon: PropTypes.string,\n itemTitle: PropTypes.string,\n itemInfoIcon: PropTypes.string,\n }).isRequired,\n\n /**\n * Number of columns to render. One, two, or whatever fits the component's width.\n */\n layout: PropTypes.oneOf([\"single\", \"dual\", \"fluid\"]),\n\n /**\n * Title to be displayed on the header of the component.\n */\n title: PropTypes.string,\n /**\n * The list of applications to be used to render the actions on the component.\n */\n applications: PropTypes.arrayOf(\n PropTypes.shape({\n /**\n * Id of the application.\n */\n id: PropTypes.string,\n /**\n * Name of the application, this is the value that will be displayed on the component.\n */\n name: PropTypes.string.isRequired,\n /**\n * URL with the icon location to be used to represent the application.\n * iconUrl will only be used if no iconElement is provided.\n */\n iconUrl: PropTypes.string,\n /**\n * Element to be added as the icon representing the application.\n * The iconElement will be the primary option to be displayed.\n */\n iconElement: PropTypes.element,\n /**\n * Small description of the application.\n */\n description: PropTypes.string,\n /**\n * URL where the application is accesible.\n */\n url: PropTypes.string,\n /**\n * Defines if the application should be opened in the same tab or in a new one.\n */\n target: PropTypes.oneOf([\"_top\", \"_blank\"]),\n /**\n * If true, the item will be disabled.\n */\n disabled: PropTypes.bool,\n /**\n * True when the application is selected, false otherwise.\n */\n isSelected: PropTypes.bool,\n })\n ).isRequired,\n\n /**\n * Triggered when an action is clicked.\n */\n onActionClickedCallback: PropTypes.func,\n /**\n * Must return a boolean stating if the action element is selected or not.\n */\n isActionSelectedCallback: PropTypes.func,\n\n /**\n * Element to be added to the header container, if none is provided a label with the title will be added.\n */\n header: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n /**\n * Element to be added to the footer container.\n */\n footer: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n\n /**\n * Flag stating if the panel is opened or closed.\n *\n * @deprecated This logic should be external, i.e. using the HvAppSwitcherPanel inside a Drawer component.\n */\n isOpen: deprecatedPropType(PropTypes.bool),\n};\n\nexport default withStyles(styles, { name: \"HvAppSwitcherPanel\" })(AppSwitcherPanel);\n"],"file":"AppSwitcherPanel.js"}
@@ -1,11 +1,40 @@
1
1
  import * as React from "react";
2
2
  import { StandardProps } from "@material-ui/core";
3
3
 
4
- export type HvProgressBarClassKey = "root";
4
+ export type HvProgressBarClassKey =
5
+ | "root"
6
+ | "progress"
7
+ | "progressContainer"
8
+ | "progressBarContainer"
9
+ | "progressBar"
10
+ | "progressDone"
11
+ | "progressError"
12
+ | "progressBarLabel"
13
+ | "progressBarLabelHidden";
5
14
 
6
- export type HvProgressBarProps = StandardProps<
7
- React.HTMLAttributes<HTMLDivElement>,
8
- HvProgressBarClassKey
9
- >;
15
+ export interface HvProgressBarProps
16
+ extends StandardProps<React.HTMLAttributes<HTMLDivElement>, HvProgressBarClassKey>,
17
+ HvProgressBarProps {
18
+ /**
19
+ * The value of the progress bar.
20
+ */
21
+ value?: number;
22
+ /**
23
+ * The status of the progress bar.
24
+ *
25
+ * inProgress is black, error is red and completed is green.
26
+ *
27
+ * When uncontrolled and unspecified it will default to "inProgress".
28
+ */
29
+ status?: string;
30
+ /**
31
+ * If `true` the progress bar will not show the percentage label.
32
+ */
33
+ undeterminate?: boolean;
34
+ /**
35
+ * Aria Properties passed on to the progress bar.
36
+ */
37
+ labelProps?: object;
38
+ }
10
39
 
11
40
  export default function HvProgressBar(props: HvProgressBarProps): JSX.Element | null;
@@ -8,6 +8,11 @@ import clamp from "lodash/clamp";
8
8
  import { HvTypography } from "@hitachivantara/uikit-react-core";
9
9
  import { withStyles } from "@material-ui/core";
10
10
  import styles from "./styles";
11
+ const statusCategories = Object.freeze({
12
+ inProgress: "inProgress",
13
+ completed: "completed",
14
+ error: "error"
15
+ });
11
16
  /**
12
17
  * ProgressBar provides feedback about a process that is taking place in the application.
13
18
  */
@@ -17,7 +22,7 @@ const HvProgressBar = props => {
17
22
  className,
18
23
  classes,
19
24
  value = 0,
20
- status,
25
+ status = statusCategories.inProgress,
21
26
  undeterminate = false,
22
27
  labelProps
23
28
  } = props,
@@ -27,11 +32,9 @@ const HvProgressBar = props => {
27
32
  return /*#__PURE__*/React.createElement("div", _extends({
28
33
  className: clsx(className, classes.root, classes.progress),
29
34
  role: "progressbar",
30
- status: "inProgress",
31
- "aria-valuenow": clampedValue // it only makes sense to put this in ariaProps if the min and max values of the progress bar are intended to be changed by the user
32
- ,
33
35
  "aria-valuemin": "0",
34
- "aria-valuemax": "100"
36
+ "aria-valuemax": "100",
37
+ "aria-valuenow": clampedValue
35
38
  }, others), /*#__PURE__*/React.createElement("div", {
36
39
  className: classes.progressContainer
37
40
  }, /*#__PURE__*/React.createElement(HvTypography, _extends({
@@ -39,17 +42,14 @@ const HvProgressBar = props => {
39
42
  style: {
40
43
  width: `${clampedValue}%`
41
44
  },
42
- className: clsx(classes.progressBarLabel, undeterminate && classes.progressBarLabelHidden, status === "completed" && classes.progressDone)
45
+ className: clsx(classes.progressBarLabel, status === statusCategories.completed && classes.progressDone, undeterminate && classes.progressBarLabelHidden)
43
46
  }, labelProps), `${clampedValue}%`), /*#__PURE__*/React.createElement("div", {
44
47
  className: classes.progressBarContainer
45
48
  }, /*#__PURE__*/React.createElement("div", {
46
49
  style: {
47
50
  width: `${clampedValue}%`
48
51
  },
49
- className: clsx(classes.progressBar, {
50
- "completed": classes.progressDone,
51
- "error": classes.progressError
52
- }[status])
52
+ className: clsx(classes.progressBar, status === statusCategories.completed && classes.progressDone, status === statusCategories.error && classes.progressError)
53
53
  }))));
54
54
  };
55
55
 
@@ -121,7 +121,7 @@ process.env.NODE_ENV !== "production" ? HvProgressBar.propTypes = {
121
121
  *
122
122
  * When uncontrolled and unspecified it will default to "inProgress".
123
123
  */
124
- status: PropTypes.oneOf(["inProgress", "completed", "error"]),
124
+ status: PropTypes.oneOf([statusCategories.inProgress, statusCategories.completed, statusCategories.error]),
125
125
 
126
126
  /**
127
127
  * If `true` the progress bar will not show the percentage label.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/ProgressBar/ProgressBar.js"],"names":["React","PropTypes","clsx","clamp","HvTypography","withStyles","styles","HvProgressBar","props","className","classes","value","status","undeterminate","labelProps","others","clampedValue","root","progress","progressContainer","width","progressBarLabel","progressBarLabelHidden","progressDone","progressBarContainer","progressBar","progressError","propTypes","string","shape","isRequired","number","oneOf","bool","instanceOf","Object","name"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\n\nimport clamp from \"lodash/clamp\";\nimport { HvTypography } from \"@hitachivantara/uikit-react-core\";\n\nimport { withStyles } from \"@material-ui/core\";\n\nimport styles from \"./styles\";\n\n/**\n * ProgressBar provides feedback about a process that is taking place in the application.\n */\nconst HvProgressBar = (props) => {\n const {\n className,\n classes,\n value = 0,\n status,\n undeterminate = false,\n labelProps,\n ...others\n } = props;\n\n const clampedValue = clamp(value, 0, 100);\n\n return (\n <div\n className={clsx(className, classes.root, classes.progress)}\n role=\"progressbar\"\n status=\"inProgress\"\n aria-valuenow={clampedValue} // it only makes sense to put this in ariaProps if the min and max values of the progress bar are intended to be changed by the user\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n {...others}\n >\n <div className={classes.progressContainer}>\n <HvTypography\n variant=\"vizText\"\n style={{ width: `${clampedValue}%` }}\n className={clsx(\n classes.progressBarLabel,\n status === \"completed\" && classes.progressDone,\n undeterminate && classes.progressBarLabelHidden\n )}\n {...labelProps}\n >\n {`${clampedValue}%`}\n </HvTypography>\n <div className={classes.progressBarContainer}>\n <div\n style={{ width: `${clampedValue}%` }}\n className={clsx(\n classes.progressBar,\n status === \"completed\" && classes.progressDone,\n status === \"error\" && classes.progressError\n )}\n />\n </div>\n </div>\n </div>\n );\n};\n\nHvProgressBar.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 * Styles applied to the component root class.\n */\n root: PropTypes.string,\n\n /**\n * Style applied to the overall container when in progress mode.\n */\n progress: PropTypes.string,\n /**\n * Style applied to the specifc container when in progress mode.\n */\n progressContainer: PropTypes.string,\n /**\n * Style applied to progress bar container.\n */\n progressBarContainer: PropTypes.string,\n /**\n * Style applied to the progress bar.\n */\n progressBar: PropTypes.string,\n /**\n * Style applied to the progress bar when the loading is done.\n */\n progressDone: PropTypes.string,\n /**\n * Style applied to the progress bar when an error occurs.\n */\n progressError: PropTypes.string,\n /**\n * Style applied to the progress bar label.\n */\n progressBarLabel: PropTypes.string,\n /**\n * Style applied to the progress bar label.\n */\n progressBarLabelHidden: PropTypes.string,\n }).isRequired,\n\n /**\n * The value of the progress bar.\n */\n value: PropTypes.number,\n /**\n * The status of the progress bar.\n *\n * inProgress is black, error is red and completed is green.\n *\n * When uncontrolled and unspecified it will default to \"inProgress\".\n */\n status: PropTypes.oneOf([\"inProgress\", \"completed\", \"error\"]),\n /**\n * If `true` the progress bar will not show the percentage label.\n */\n undeterminate: PropTypes.bool,\n /**\n * Aria Properties passed on to the progress bar.\n */\n labelProps: PropTypes.instanceOf(Object),\n};\n\nexport default withStyles(styles, { name: \"HvProgressBar\" })(HvProgressBar);\n"],"file":"ProgressBar.js"}
1
+ {"version":3,"sources":["../../../src/ProgressBar/ProgressBar.js"],"names":["React","PropTypes","clsx","clamp","HvTypography","withStyles","styles","statusCategories","Object","freeze","inProgress","completed","error","HvProgressBar","props","className","classes","value","status","undeterminate","labelProps","others","clampedValue","root","progress","progressContainer","width","progressBarLabel","progressDone","progressBarLabelHidden","progressBarContainer","progressBar","progressError","propTypes","string","shape","isRequired","number","oneOf","bool","instanceOf","name"],"mappings":"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","sourcesContent":["import React from \"react\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\n\nimport clamp from \"lodash/clamp\";\nimport { HvTypography } from \"@hitachivantara/uikit-react-core\";\n\nimport { withStyles } from \"@material-ui/core\";\n\nimport styles from \"./styles\";\n\nconst statusCategories = Object.freeze({\n inProgress: \"inProgress\",\n completed: \"completed\",\n error: \"error\",\n});\n\n/**\n * ProgressBar provides feedback about a process that is taking place in the application.\n */\nconst HvProgressBar = (props) => {\n const {\n className,\n classes,\n value = 0,\n status = statusCategories.inProgress,\n undeterminate = false,\n labelProps,\n ...others\n } = props;\n\n const clampedValue = clamp(value, 0, 100);\n\n return (\n <div\n className={clsx(className, classes.root, classes.progress)}\n role=\"progressbar\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n aria-valuenow={clampedValue}\n {...others}\n >\n <div className={classes.progressContainer}>\n <HvTypography\n variant=\"vizText\"\n style={{ width: `${clampedValue}%` }}\n className={clsx(\n classes.progressBarLabel,\n status === statusCategories.completed && classes.progressDone,\n undeterminate && classes.progressBarLabelHidden\n )}\n {...labelProps}\n >\n {`${clampedValue}%`}\n </HvTypography>\n <div className={classes.progressBarContainer}>\n <div\n style={{ width: `${clampedValue}%` }}\n className={clsx(\n classes.progressBar,\n status === statusCategories.completed && classes.progressDone,\n status === statusCategories.error && classes.progressError\n )}\n />\n </div>\n </div>\n </div>\n );\n};\n\nHvProgressBar.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 * Styles applied to the component root class.\n */\n root: PropTypes.string,\n\n /**\n * Style applied to the overall container when in progress mode.\n */\n progress: PropTypes.string,\n /**\n * Style applied to the specifc container when in progress mode.\n */\n progressContainer: PropTypes.string,\n /**\n * Style applied to progress bar container.\n */\n progressBarContainer: PropTypes.string,\n /**\n * Style applied to the progress bar.\n */\n progressBar: PropTypes.string,\n /**\n * Style applied to the progress bar when the loading is done.\n */\n progressDone: PropTypes.string,\n /**\n * Style applied to the progress bar when an error occurs.\n */\n progressError: PropTypes.string,\n /**\n * Style applied to the progress bar label.\n */\n progressBarLabel: PropTypes.string,\n /**\n * Style applied to the progress bar label.\n */\n progressBarLabelHidden: PropTypes.string,\n }).isRequired,\n /**\n * The value of the progress bar.\n */\n value: PropTypes.number,\n /**\n * The status of the progress bar.\n *\n * inProgress is black, error is red and completed is green.\n *\n * When uncontrolled and unspecified it will default to \"inProgress\".\n */\n status: PropTypes.oneOf([\n statusCategories.inProgress,\n statusCategories.completed,\n statusCategories.error,\n ]),\n /**\n * If `true` the progress bar will not show the percentage label.\n */\n undeterminate: PropTypes.bool,\n /**\n * Aria Properties passed on to the progress bar.\n */\n labelProps: PropTypes.instanceOf(Object),\n};\n\nexport default withStyles(styles, { name: \"HvProgressBar\" })(HvProgressBar);\n"],"file":"ProgressBar.js"}
@@ -0,0 +1,66 @@
1
+ import "core-js/modules/web.dom-collections.iterator.js";
2
+ import React, { useEffect, useState } from "react";
3
+ import { HvButton } from "@hitachivantara/uikit-react-core";
4
+ import { HvProgressBar } from ".."; // eslint-disable-next-line react/prop-types
5
+
6
+ export const ProgressBarSimulator = ({
7
+ inc,
8
+ error,
9
+ undeterminate,
10
+ ariaLabel,
11
+ ariaLive
12
+ }) => {
13
+ const [status, setStatus] = useState("inProgress");
14
+ const [value, setValue] = useState(0);
15
+ const [run, setRun] = useState(false);
16
+ useEffect(() => {
17
+ const interval = setInterval(() => {
18
+ if (value === 100) {
19
+ setRun(false);
20
+ clearInterval(interval);
21
+ setStatus("completed");
22
+ } else if (error && value === error) {
23
+ clearInterval(interval);
24
+ setStatus("error");
25
+ } else if (run) setValue(inc);
26
+ }, 150);
27
+ return () => clearInterval(interval);
28
+ }, [inc, value, run, error]);
29
+
30
+ const reset = () => {
31
+ setValue(0);
32
+ setStatus("inProgress");
33
+ };
34
+
35
+ const start = () => {
36
+ setRun(true);
37
+ };
38
+
39
+ return /*#__PURE__*/React.createElement("div", {
40
+ style: {
41
+ width: 400
42
+ }
43
+ }, /*#__PURE__*/React.createElement(HvProgressBar, {
44
+ value: value,
45
+ status: status,
46
+ undeterminate: undeterminate,
47
+ labelProps: {
48
+ "aria-label": ariaLabel,
49
+ "aria-busy": false,
50
+ "aria-live": ariaLive
51
+ }
52
+ }), /*#__PURE__*/React.createElement("div", {
53
+ style: {
54
+ marginTop: 10
55
+ }
56
+ }, /*#__PURE__*/React.createElement(HvButton, {
57
+ onClick: start
58
+ }, "Start"), /*#__PURE__*/React.createElement(HvButton, {
59
+ style: {
60
+ marginLeft: 10
61
+ },
62
+ onClick: reset
63
+ }, "Reset")));
64
+ };
65
+ export { ProgressBarSimulator as default };
66
+ //# sourceMappingURL=ProgressBarSimulator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/ProgressBar/ProgressBarSimulator.js"],"names":["React","useEffect","useState","HvButton","HvProgressBar","ProgressBarSimulator","inc","error","undeterminate","ariaLabel","ariaLive","status","setStatus","value","setValue","run","setRun","interval","setInterval","clearInterval","reset","start","width","marginTop","marginLeft","default"],"mappings":";AAAA,OAAOA,KAAP,IAAgBC,SAAhB,EAA2BC,QAA3B,QAA2C,OAA3C;AAEA,SAASC,QAAT,QAAyB,kCAAzB;AAEA,SAASC,aAAT,QAA8B,IAA9B,C,CAEA;;AACA,OAAO,MAAMC,oBAAoB,GAAG,CAAC;AAAEC,EAAAA,GAAF;AAAOC,EAAAA,KAAP;AAAcC,EAAAA,aAAd;AAA6BC,EAAAA,SAA7B;AAAwCC,EAAAA;AAAxC,CAAD,KAAwD;AAC1F,QAAM,CAACC,MAAD,EAASC,SAAT,IAAsBV,QAAQ,CAAC,YAAD,CAApC;AACA,QAAM,CAACW,KAAD,EAAQC,QAAR,IAAoBZ,QAAQ,CAAC,CAAD,CAAlC;AACA,QAAM,CAACa,GAAD,EAAMC,MAAN,IAAgBd,QAAQ,CAAC,KAAD,CAA9B;AAEAD,EAAAA,SAAS,CAAC,MAAM;AACd,UAAMgB,QAAQ,GAAGC,WAAW,CAAC,MAAM;AACjC,UAAIL,KAAK,KAAK,GAAd,EAAmB;AACjBG,QAAAA,MAAM,CAAC,KAAD,CAAN;AACAG,QAAAA,aAAa,CAACF,QAAD,CAAb;AACAL,QAAAA,SAAS,CAAC,WAAD,CAAT;AACD,OAJD,MAIO,IAAIL,KAAK,IAAIM,KAAK,KAAKN,KAAvB,EAA8B;AACnCY,QAAAA,aAAa,CAACF,QAAD,CAAb;AACAL,QAAAA,SAAS,CAAC,OAAD,CAAT;AACD,OAHM,MAGA,IAAIG,GAAJ,EAASD,QAAQ,CAACR,GAAD,CAAR;AACjB,KAT2B,EASzB,GATyB,CAA5B;AAUA,WAAO,MAAMa,aAAa,CAACF,QAAD,CAA1B;AACD,GAZQ,EAYN,CAACX,GAAD,EAAMO,KAAN,EAAaE,GAAb,EAAkBR,KAAlB,CAZM,CAAT;;AAcA,QAAMa,KAAK,GAAG,MAAM;AAClBN,IAAAA,QAAQ,CAAC,CAAD,CAAR;AACAF,IAAAA,SAAS,CAAC,YAAD,CAAT;AACD,GAHD;;AAKA,QAAMS,KAAK,GAAG,MAAM;AAClBL,IAAAA,MAAM,CAAC,IAAD,CAAN;AACD,GAFD;;AAIA,sBACE;AAAK,IAAA,KAAK,EAAE;AAAEM,MAAAA,KAAK,EAAE;AAAT;AAAZ,kBACE,oBAAC,aAAD;AACE,IAAA,KAAK,EAAET,KADT;AAEE,IAAA,MAAM,EAAEF,MAFV;AAGE,IAAA,aAAa,EAAEH,aAHjB;AAIE,IAAA,UAAU,EAAE;AACV,oBAAcC,SADJ;AAEV,mBAAa,KAFH;AAGV,mBAAaC;AAHH;AAJd,IADF,eAWE;AAAK,IAAA,KAAK,EAAE;AAAEa,MAAAA,SAAS,EAAE;AAAb;AAAZ,kBACE,oBAAC,QAAD;AAAU,IAAA,OAAO,EAAEF;AAAnB,aADF,eAEE,oBAAC,QAAD;AAAU,IAAA,KAAK,EAAE;AAAEG,MAAAA,UAAU,EAAE;AAAd,KAAjB;AAAqC,IAAA,OAAO,EAAEJ;AAA9C,aAFF,CAXF,CADF;AAoBD,CAhDM;AAkDP,SAASf,oBAAoB,IAAIoB,OAAjC","sourcesContent":["import React, { useEffect, useState } from \"react\";\n\nimport { HvButton } from \"@hitachivantara/uikit-react-core\";\n\nimport { HvProgressBar } from \"..\";\n\n// eslint-disable-next-line react/prop-types\nexport const ProgressBarSimulator = ({ inc, error, undeterminate, ariaLabel, ariaLive }) => {\n const [status, setStatus] = useState(\"inProgress\");\n const [value, setValue] = useState(0);\n const [run, setRun] = useState(false);\n\n useEffect(() => {\n const interval = setInterval(() => {\n if (value === 100) {\n setRun(false);\n clearInterval(interval);\n setStatus(\"completed\");\n } else if (error && value === error) {\n clearInterval(interval);\n setStatus(\"error\");\n } else if (run) setValue(inc);\n }, 150);\n return () => clearInterval(interval);\n }, [inc, value, run, error]);\n\n const reset = () => {\n setValue(0);\n setStatus(\"inProgress\");\n };\n\n const start = () => {\n setRun(true);\n };\n\n return (\n <div style={{ width: 400 }}>\n <HvProgressBar\n value={value}\n status={status}\n undeterminate={undeterminate}\n labelProps={{\n \"aria-label\": ariaLabel,\n \"aria-busy\": false,\n \"aria-live\": ariaLive,\n }}\n />\n <div style={{ marginTop: 10 }}>\n <HvButton onClick={start}>Start</HvButton>\n <HvButton style={{ marginLeft: 10 }} onClick={reset}>\n Reset\n </HvButton>\n </div>\n </div>\n );\n};\n\nexport { ProgressBarSimulator as default };\n"],"file":"ProgressBarSimulator.js"}
@@ -1,33 +1,2 @@
1
- import * as React from "react";
2
- import { StandardProps } from "@material-ui/core";
3
-
4
- export type HvProgressClassKey =
5
- | "root"
6
- | "progress"
7
- | "progressContainer"
8
- | "progressBarContainer"
9
- | "progressBar"
10
- | "progressDone"
11
- | "progressError"
12
- | "progressBarLabel"
13
- | "progressAriaAlert";
14
-
15
- export interface HvProgressBarProps
16
- extends StandardProps<React.HTMLAttributes<HTMLDivElement>, HvProgressClassKey> {
17
- /**
18
- * The value of the progress bar.
19
- */
20
- value?: number;
21
- /**
22
- * Indicates current status of the progress bar represented by the color.
23
- */
24
- status?: boolean;
25
- /**
26
- * If `true` the progress bar will not show the percentage label.
27
- */
28
- undeterminate?: boolean;
29
- /**
30
- * Aria Properties passed on to the progress bar.
31
- */
32
- labelProps?: object;
33
- }
1
+ export { default } from "./ProgressBar";
2
+ export * from "./ProgressBar";
@@ -1,3 +1,4 @@
1
1
  export { default } from "./QueryBuilder";
2
2
 
3
3
  export * from "./QueryBuilder";
4
+ export * from "./types";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hitachivantara/uikit-react-lab",
3
- "version": "3.41.12",
3
+ "version": "3.42.2",
4
4
  "description": "A collection of contributed 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",
@@ -46,7 +46,7 @@
46
46
  },
47
47
  "dependencies": {
48
48
  "@babel/runtime": "^7.16.3",
49
- "@hitachivantara/uikit-react-core": "^3.62.7",
49
+ "@hitachivantara/uikit-react-core": "^3.63.0",
50
50
  "@hitachivantara/uikit-react-icons": "^3.8.4",
51
51
  "@types/react-table": "^7.7.8",
52
52
  "clsx": "^1.1.1",
@@ -83,5 +83,5 @@
83
83
  "publishConfig": {
84
84
  "access": "public"
85
85
  },
86
- "gitHead": "f433513f3bfc9c9dfce07f1bde9d4e6c027b4b85"
86
+ "gitHead": "0afdf8b3f12d4192bcc2a4082227c0e5ce1febf1"
87
87
  }