@hitachivantara/uikit-react-lab 4.3.3 → 4.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/NavigationSlider/Header/Header.js +79 -0
- package/dist/NavigationSlider/Header/Header.js.map +1 -0
- package/dist/NavigationSlider/Header/index.js +14 -0
- package/dist/NavigationSlider/Header/index.js.map +1 -0
- package/dist/NavigationSlider/Header/styles.js +36 -0
- package/dist/NavigationSlider/Header/styles.js.map +1 -0
- package/dist/NavigationSlider/Navigation/Navigation.js +102 -0
- package/dist/NavigationSlider/Navigation/Navigation.js.map +1 -0
- package/dist/NavigationSlider/Navigation/index.js +14 -0
- package/dist/NavigationSlider/Navigation/index.js.map +1 -0
- package/dist/NavigationSlider/Navigation/styles.js +30 -0
- package/dist/NavigationSlider/Navigation/styles.js.map +1 -0
- package/dist/NavigationSlider/NavigationSlider.d.ts +30 -0
- package/dist/NavigationSlider/NavigationSlider.js +139 -0
- package/dist/NavigationSlider/NavigationSlider.js.map +1 -0
- package/dist/NavigationSlider/index.d.ts +2 -0
- package/dist/NavigationSlider/index.js +14 -0
- package/dist/NavigationSlider/index.js.map +1 -0
- package/dist/NavigationSlider/styles.js +29 -0
- package/dist/NavigationSlider/styles.js.map +1 -0
- package/dist/NavigationSlider/utils.js +87 -0
- package/dist/NavigationSlider/utils.js.map +1 -0
- package/dist/VerticalNavigation/VerticalNavigation.d.ts +12 -8
- package/dist/VerticalNavigation/VerticalNavigation.js +71 -41
- package/dist/VerticalNavigation/VerticalNavigation.js.map +1 -1
- package/dist/VerticalNavigation/styles.js +11 -36
- package/dist/VerticalNavigation/styles.js.map +1 -1
- package/dist/VerticalNavigation/utils.js +88 -0
- package/dist/VerticalNavigation/utils.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +9 -1
- package/dist/index.js.map +1 -1
- package/dist/legacy/NavigationSlider/Header/Header.js +72 -0
- package/dist/legacy/NavigationSlider/Header/Header.js.map +1 -0
- package/dist/legacy/NavigationSlider/Header/index.js +2 -0
- package/dist/legacy/NavigationSlider/Header/index.js.map +1 -0
- package/dist/legacy/NavigationSlider/Header/styles.js +29 -0
- package/dist/legacy/NavigationSlider/Header/styles.js.map +1 -0
- package/dist/legacy/NavigationSlider/Navigation/Navigation.js +94 -0
- package/dist/legacy/NavigationSlider/Navigation/Navigation.js.map +1 -0
- package/dist/legacy/NavigationSlider/Navigation/index.js +2 -0
- package/dist/legacy/NavigationSlider/Navigation/index.js.map +1 -0
- package/dist/legacy/NavigationSlider/Navigation/styles.js +23 -0
- package/dist/legacy/NavigationSlider/Navigation/styles.js.map +1 -0
- package/dist/legacy/NavigationSlider/NavigationSlider.d.ts +30 -0
- package/dist/legacy/NavigationSlider/NavigationSlider.js +123 -0
- package/dist/legacy/NavigationSlider/NavigationSlider.js.map +1 -0
- package/dist/legacy/NavigationSlider/index.d.ts +2 -0
- package/dist/legacy/NavigationSlider/index.js +2 -0
- package/dist/legacy/NavigationSlider/index.js.map +1 -0
- package/dist/legacy/NavigationSlider/styles.js +22 -0
- package/dist/legacy/NavigationSlider/styles.js.map +1 -0
- package/dist/legacy/NavigationSlider/utils.js +78 -0
- package/dist/legacy/NavigationSlider/utils.js.map +1 -0
- package/dist/legacy/VerticalNavigation/VerticalNavigation.d.ts +12 -8
- package/dist/legacy/VerticalNavigation/VerticalNavigation.js +72 -40
- package/dist/legacy/VerticalNavigation/VerticalNavigation.js.map +1 -1
- package/dist/legacy/VerticalNavigation/styles.js +11 -35
- package/dist/legacy/VerticalNavigation/styles.js.map +1 -1
- package/dist/legacy/VerticalNavigation/utils.js +79 -0
- package/dist/legacy/VerticalNavigation/utils.js.map +1 -0
- package/dist/legacy/index.d.ts +3 -0
- package/dist/legacy/index.js +1 -0
- package/dist/legacy/index.js.map +1 -1
- package/dist/modern/NavigationSlider/Header/Header.js +72 -0
- package/dist/modern/NavigationSlider/Header/Header.js.map +1 -0
- package/dist/modern/NavigationSlider/Header/index.js +2 -0
- package/dist/modern/NavigationSlider/Header/index.js.map +1 -0
- package/dist/modern/NavigationSlider/Header/styles.js +25 -0
- package/dist/modern/NavigationSlider/Header/styles.js.map +1 -0
- package/dist/modern/NavigationSlider/Navigation/Navigation.js +88 -0
- package/dist/modern/NavigationSlider/Navigation/Navigation.js.map +1 -0
- package/dist/modern/NavigationSlider/Navigation/index.js +2 -0
- package/dist/modern/NavigationSlider/Navigation/index.js.map +1 -0
- package/dist/modern/NavigationSlider/Navigation/styles.js +21 -0
- package/dist/modern/NavigationSlider/Navigation/styles.js.map +1 -0
- package/dist/modern/NavigationSlider/NavigationSlider.d.ts +30 -0
- package/dist/modern/NavigationSlider/NavigationSlider.js +116 -0
- package/dist/modern/NavigationSlider/NavigationSlider.js.map +1 -0
- package/dist/modern/NavigationSlider/index.d.ts +2 -0
- package/dist/modern/NavigationSlider/index.js +2 -0
- package/dist/modern/NavigationSlider/index.js.map +1 -0
- package/dist/modern/NavigationSlider/styles.js +18 -0
- package/dist/modern/NavigationSlider/styles.js.map +1 -0
- package/dist/modern/NavigationSlider/utils.js +70 -0
- package/dist/modern/NavigationSlider/utils.js.map +1 -0
- package/dist/modern/VerticalNavigation/VerticalNavigation.d.ts +12 -8
- package/dist/modern/VerticalNavigation/VerticalNavigation.js +68 -43
- package/dist/modern/VerticalNavigation/VerticalNavigation.js.map +1 -1
- package/dist/modern/VerticalNavigation/styles.js +11 -28
- package/dist/modern/VerticalNavigation/styles.js.map +1 -1
- package/dist/modern/VerticalNavigation/utils.js +76 -0
- package/dist/modern/VerticalNavigation/utils.js.map +1 -0
- package/dist/modern/index.d.ts +3 -0
- package/dist/modern/index.js +1 -0
- package/dist/modern/index.js.map +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
require("core-js/modules/es.array.concat.js");
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _styles = require("@mui/styles");
|
|
11
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
12
|
+
var _uikitReactCore = require("@hitachivantara/uikit-react-core");
|
|
13
|
+
var _uikitReactIcons = require("@hitachivantara/uikit-react-icons");
|
|
14
|
+
var _styles2 = _interopRequireDefault(require("./styles"));
|
|
15
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
|
+
var _Backwards;
|
|
17
|
+
var Header = function Header(_ref) {
|
|
18
|
+
var id = _ref.id,
|
|
19
|
+
title = _ref.title,
|
|
20
|
+
showBackButton = _ref.showBackButton,
|
|
21
|
+
headerHeight = _ref.headerHeight,
|
|
22
|
+
onBackButtonClick = _ref.onBackButtonClick;
|
|
23
|
+
var classes = (0, _styles2.default)({
|
|
24
|
+
headerHeight: headerHeight
|
|
25
|
+
})();
|
|
26
|
+
var backButtonClickHandler = function backButtonClickHandler() {
|
|
27
|
+
onBackButtonClick();
|
|
28
|
+
};
|
|
29
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
30
|
+
id: id,
|
|
31
|
+
className: classes.menuContainer,
|
|
32
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
33
|
+
className: classes.button,
|
|
34
|
+
children: showBackButton && /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactCore.HvButton, {
|
|
35
|
+
icon: true,
|
|
36
|
+
onClick: backButtonClickHandler,
|
|
37
|
+
children: _Backwards || (_Backwards = /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactIcons.Backwards, {
|
|
38
|
+
iconSize: "XS"
|
|
39
|
+
}))
|
|
40
|
+
})
|
|
41
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
42
|
+
className: "".concat(classes.title, " ").concat(classes.justifyContentCenter),
|
|
43
|
+
children: title && /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactCore.HvTypography, {
|
|
44
|
+
variant: "highlightText",
|
|
45
|
+
children: title
|
|
46
|
+
})
|
|
47
|
+
})]
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
process.env.NODE_ENV !== "production" ? Header.propTypes = {
|
|
51
|
+
/**
|
|
52
|
+
* Id to be applied to the root node of the panel.
|
|
53
|
+
*/
|
|
54
|
+
id: _propTypes.default.string,
|
|
55
|
+
/**
|
|
56
|
+
* The text to be displayed on the header.
|
|
57
|
+
*/
|
|
58
|
+
title: _propTypes.default.string,
|
|
59
|
+
/**
|
|
60
|
+
* Flag to show / hide the back button.
|
|
61
|
+
*/
|
|
62
|
+
showBackButton: _propTypes.default.bool,
|
|
63
|
+
/**
|
|
64
|
+
* The header height.
|
|
65
|
+
*/
|
|
66
|
+
headerHeight: _propTypes.default.number,
|
|
67
|
+
/**
|
|
68
|
+
* Callback function triggered when the back button is clicked.
|
|
69
|
+
*/
|
|
70
|
+
onBackButtonClick: _propTypes.default.func
|
|
71
|
+
} : void 0;
|
|
72
|
+
Header.defaultProps = {
|
|
73
|
+
headerHeight: 80
|
|
74
|
+
};
|
|
75
|
+
var _default = (0, _styles.withStyles)(_styles2.default, {
|
|
76
|
+
name: "Header"
|
|
77
|
+
})(Header);
|
|
78
|
+
exports.default = _default;
|
|
79
|
+
//# sourceMappingURL=Header.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Header.js","names":["Header","id","title","showBackButton","headerHeight","onBackButtonClick","classes","useStyles","backButtonClickHandler","menuContainer","button","justifyContentCenter","propTypes","PropTypes","string","bool","number","func","defaultProps","withStyles","name"],"sources":["../../../src/NavigationSlider/Header/Header.js"],"sourcesContent":["import React from \"react\";\nimport { withStyles } from \"@mui/styles\";\nimport PropTypes from \"prop-types\";\n\nimport { HvButton, HvTypography } from \"@hitachivantara/uikit-react-core\";\nimport { Backwards } from \"@hitachivantara/uikit-react-icons\";\n\nimport useStyles from \"./styles\";\n\nconst Header = ({ id, title, showBackButton, headerHeight, onBackButtonClick }) => {\n const classes = useStyles({ headerHeight })();\n\n const backButtonClickHandler = () => {\n onBackButtonClick();\n };\n\n return (\n <div id={id} className={classes.menuContainer}>\n <div className={classes.button}>\n {showBackButton && (\n <HvButton icon onClick={backButtonClickHandler}>\n <Backwards iconSize=\"XS\" />\n </HvButton>\n )}\n </div>\n\n <div className={`${classes.title} ${classes.justifyContentCenter}`}>\n {title && <HvTypography variant=\"highlightText\">{title}</HvTypography>}\n </div>\n </div>\n );\n};\n\nHeader.propTypes = {\n /**\n * Id to be applied to the root node of the panel.\n */\n id: PropTypes.string,\n /**\n * The text to be displayed on the header.\n */\n title: PropTypes.string,\n /**\n * Flag to show / hide the back button.\n */\n showBackButton: PropTypes.bool,\n /**\n * The header height.\n */\n headerHeight: PropTypes.number,\n /**\n * Callback function triggered when the back button is clicked.\n */\n onBackButtonClick: PropTypes.func,\n};\n\nHeader.defaultProps = {\n headerHeight: 80,\n};\n\nexport default withStyles(useStyles, { name: \"Header\" })(Header);\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;AAEA;AACA;AAEA;AAAiC;AAAA;AAEjC,IAAMA,MAAM,GAAG,SAATA,MAAM,OAAuE;EAAA,IAAjEC,EAAE,QAAFA,EAAE;IAAEC,KAAK,QAALA,KAAK;IAAEC,cAAc,QAAdA,cAAc;IAAEC,YAAY,QAAZA,YAAY;IAAEC,iBAAiB,QAAjBA,iBAAiB;EAC1E,IAAMC,OAAO,GAAG,IAAAC,gBAAS,EAAC;IAAEH,YAAY,EAAZA;EAAa,CAAC,CAAC,EAAE;EAE7C,IAAMI,sBAAsB,GAAG,SAAzBA,sBAAsB,GAAS;IACnCH,iBAAiB,EAAE;EACrB,CAAC;EAED,oBACE;IAAK,EAAE,EAAEJ,EAAG;IAAC,SAAS,EAAEK,OAAO,CAACG,aAAc;IAAA,wBAC5C;MAAK,SAAS,EAAEH,OAAO,CAACI,MAAO;MAAA,UAC5BP,cAAc,iBACb,qBAAC,wBAAQ;QAAC,IAAI;QAAC,OAAO,EAAEK,sBAAuB;QAAA,mDAC7C,qBAAC,0BAAS;UAAC,QAAQ,EAAC;QAAI,EAAG;MAAA;IAE9B,EACG,eAEN;MAAK,SAAS,YAAKF,OAAO,CAACJ,KAAK,cAAII,OAAO,CAACK,oBAAoB,CAAG;MAAA,UAChET,KAAK,iBAAI,qBAAC,4BAAY;QAAC,OAAO,EAAC,eAAe;QAAA,UAAEA;MAAK;IAAgB,EAClE;EAAA,EACF;AAEV,CAAC;AAED,wCAAAF,MAAM,CAACY,SAAS,GAAG;EACjB;AACF;AACA;EACEX,EAAE,EAAEY,kBAAS,CAACC,MAAM;EACpB;AACF;AACA;EACEZ,KAAK,EAAEW,kBAAS,CAACC,MAAM;EACvB;AACF;AACA;EACEX,cAAc,EAAEU,kBAAS,CAACE,IAAI;EAC9B;AACF;AACA;EACEX,YAAY,EAAES,kBAAS,CAACG,MAAM;EAC9B;AACF;AACA;EACEX,iBAAiB,EAAEQ,kBAAS,CAACI;AAC/B,CAAC;AAEDjB,MAAM,CAACkB,YAAY,GAAG;EACpBd,YAAY,EAAE;AAChB,CAAC;AAAC,eAEa,IAAAe,kBAAU,EAACZ,gBAAS,EAAE;EAAEa,IAAI,EAAE;AAAS,CAAC,CAAC,CAACpB,MAAM,CAAC;AAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
Object.defineProperty(exports, "default", {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: function get() {
|
|
10
|
+
return _Header.default;
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
var _Header = _interopRequireDefault(require("./Header"));
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/NavigationSlider/Header/index.js"],"sourcesContent":["export { default } from \"./Header\";\n"],"mappings":";;;;;;;;;;;;AAAA"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _styles = require("@mui/styles");
|
|
8
|
+
var styles = function styles(props) {
|
|
9
|
+
return (0, _styles.makeStyles)(function (theme) {
|
|
10
|
+
return {
|
|
11
|
+
menuContainer: {
|
|
12
|
+
display: "grid",
|
|
13
|
+
gridTemplateColumns: "min-content auto",
|
|
14
|
+
minHeight: props.headerHeight,
|
|
15
|
+
boxShadow: "inset 0 5px 5px -3px rgb(65 65 65 / 12%)"
|
|
16
|
+
},
|
|
17
|
+
button: {
|
|
18
|
+
display: "flex",
|
|
19
|
+
alignItems: "center"
|
|
20
|
+
},
|
|
21
|
+
title: {
|
|
22
|
+
display: "flex",
|
|
23
|
+
alignItems: "center",
|
|
24
|
+
justifyContent: "center",
|
|
25
|
+
minHeight: theme.hv.spacing.sm,
|
|
26
|
+
padding: theme.hvSpacing(0, "xs")
|
|
27
|
+
},
|
|
28
|
+
justifyContentCenter: {
|
|
29
|
+
justifyContent: "center"
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
var _default = styles;
|
|
35
|
+
exports.default = _default;
|
|
36
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","names":["styles","props","makeStyles","theme","menuContainer","display","gridTemplateColumns","minHeight","headerHeight","boxShadow","button","alignItems","title","justifyContent","hv","spacing","sm","padding","hvSpacing","justifyContentCenter"],"sources":["../../../src/NavigationSlider/Header/styles.js"],"sourcesContent":["import { makeStyles } from \"@mui/styles\";\n\nconst styles = (props) =>\n makeStyles((theme) => ({\n menuContainer: {\n display: \"grid\",\n gridTemplateColumns: \"min-content auto\",\n minHeight: props.headerHeight,\n boxShadow: \"inset 0 5px 5px -3px rgb(65 65 65 / 12%)\",\n },\n button: {\n display: \"flex\",\n alignItems: \"center\",\n },\n title: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n minHeight: theme.hv.spacing.sm,\n padding: theme.hvSpacing(0, \"xs\"),\n },\n justifyContentCenter: { justifyContent: \"center\" },\n }));\n\nexport default styles;\n"],"mappings":";;;;;;AAAA;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAM,CAAIC,KAAK;EAAA,OACnB,IAAAC,kBAAU,EAAC,UAACC,KAAK;IAAA,OAAM;MACrBC,aAAa,EAAE;QACbC,OAAO,EAAE,MAAM;QACfC,mBAAmB,EAAE,kBAAkB;QACvCC,SAAS,EAAEN,KAAK,CAACO,YAAY;QAC7BC,SAAS,EAAE;MACb,CAAC;MACDC,MAAM,EAAE;QACNL,OAAO,EAAE,MAAM;QACfM,UAAU,EAAE;MACd,CAAC;MACDC,KAAK,EAAE;QACLP,OAAO,EAAE,MAAM;QACfM,UAAU,EAAE,QAAQ;QACpBE,cAAc,EAAE,QAAQ;QACxBN,SAAS,EAAEJ,KAAK,CAACW,EAAE,CAACC,OAAO,CAACC,EAAE;QAC9BC,OAAO,EAAEd,KAAK,CAACe,SAAS,CAAC,CAAC,EAAE,IAAI;MAClC,CAAC;MACDC,oBAAoB,EAAE;QAAEN,cAAc,EAAE;MAAS;IACnD,CAAC;EAAA,CAAC,CAAC;AAAA;AAAC,eAESb,MAAM;AAAA"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
require("core-js/modules/es.array.map.js");
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
var _styles = require("@mui/styles");
|
|
11
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
12
|
+
var _uikitReactCore = require("@hitachivantara/uikit-react-core");
|
|
13
|
+
var _uikitReactIcons = require("@hitachivantara/uikit-react-icons");
|
|
14
|
+
var _styles2 = _interopRequireDefault(require("./styles"));
|
|
15
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
|
+
var _DropRightXS, _div;
|
|
17
|
+
var Navigation = function Navigation(_ref) {
|
|
18
|
+
var id = _ref.id,
|
|
19
|
+
classes = _ref.classes,
|
|
20
|
+
data = _ref.data,
|
|
21
|
+
selected = _ref.selected,
|
|
22
|
+
onNavigateToTarget = _ref.onNavigateToTarget,
|
|
23
|
+
onNavigateToChild = _ref.onNavigateToChild;
|
|
24
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactCore.HvListContainer, {
|
|
25
|
+
interactive: true,
|
|
26
|
+
id: id,
|
|
27
|
+
children: data.map(function (item) {
|
|
28
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactCore.HvListItem, {
|
|
29
|
+
classes: {
|
|
30
|
+
root: classes.listItemRoot,
|
|
31
|
+
selected: classes.listItemSelected
|
|
32
|
+
},
|
|
33
|
+
onClick: function onClick(event) {
|
|
34
|
+
return onNavigateToTarget(event, item);
|
|
35
|
+
},
|
|
36
|
+
selected: selected === item.id,
|
|
37
|
+
startAdornment: item.icon,
|
|
38
|
+
endAdornment: item.data && item.data.length > 0 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactCore.HvButton, {
|
|
39
|
+
icon: true,
|
|
40
|
+
onClick: function onClick(event) {
|
|
41
|
+
return onNavigateToChild(event, item);
|
|
42
|
+
},
|
|
43
|
+
children: _DropRightXS || (_DropRightXS = /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactIcons.DropRightXS, {}))
|
|
44
|
+
}) : _div || (_div = /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {})),
|
|
45
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
46
|
+
children: item.label
|
|
47
|
+
})
|
|
48
|
+
}, item.id);
|
|
49
|
+
})
|
|
50
|
+
});
|
|
51
|
+
};
|
|
52
|
+
process.env.NODE_ENV !== "production" ? Navigation.propTypes = {
|
|
53
|
+
/**
|
|
54
|
+
* Id to be applied to the root node of the panel.
|
|
55
|
+
*/
|
|
56
|
+
id: _propTypes.default.string,
|
|
57
|
+
/**
|
|
58
|
+
* A Jss Object used to override or extend the styles applied.
|
|
59
|
+
*/
|
|
60
|
+
classes: _propTypes.default.shape({
|
|
61
|
+
/**
|
|
62
|
+
* styles object applied to the root
|
|
63
|
+
*/
|
|
64
|
+
listItemRoot: _propTypes.default.string,
|
|
65
|
+
listItemSelected: _propTypes.default.string
|
|
66
|
+
}).isRequired,
|
|
67
|
+
/**
|
|
68
|
+
* An array containing the data for each menu item.
|
|
69
|
+
*
|
|
70
|
+
* id - the id to be applied to the root element.
|
|
71
|
+
* label - the label to be rendered on the menu item.
|
|
72
|
+
* icon - the icon react element
|
|
73
|
+
* data - sub-menu items
|
|
74
|
+
* href - the url used for navigation.
|
|
75
|
+
* target - the behavior when opening an url.
|
|
76
|
+
*/
|
|
77
|
+
data: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
78
|
+
id: _propTypes.default.string.isRequired,
|
|
79
|
+
label: _propTypes.default.string.isRequired,
|
|
80
|
+
icon: _propTypes.default.node,
|
|
81
|
+
data: _propTypes.default.array,
|
|
82
|
+
href: _propTypes.default.string,
|
|
83
|
+
target: _propTypes.default.string
|
|
84
|
+
})).isRequired,
|
|
85
|
+
/**
|
|
86
|
+
* The selected item id.
|
|
87
|
+
*/
|
|
88
|
+
selected: _propTypes.default.string,
|
|
89
|
+
/**
|
|
90
|
+
* Triggered when the item is clicked.
|
|
91
|
+
*/
|
|
92
|
+
onNavigateToTarget: _propTypes.default.func,
|
|
93
|
+
/**
|
|
94
|
+
* Triggered when the navigate to child button is clicked.
|
|
95
|
+
*/
|
|
96
|
+
onNavigateToChild: _propTypes.default.func
|
|
97
|
+
} : void 0;
|
|
98
|
+
var _default = (0, _styles.withStyles)(_styles2.default, {
|
|
99
|
+
name: "Navigation"
|
|
100
|
+
})(Navigation);
|
|
101
|
+
exports.default = _default;
|
|
102
|
+
//# sourceMappingURL=Navigation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Navigation.js","names":["Navigation","id","classes","data","selected","onNavigateToTarget","onNavigateToChild","map","item","root","listItemRoot","listItemSelected","event","icon","length","label","propTypes","PropTypes","string","shape","isRequired","arrayOf","node","array","href","target","func","withStyles","styles","name"],"sources":["../../../src/NavigationSlider/Navigation/Navigation.js"],"sourcesContent":["import React from \"react\";\nimport { withStyles } from \"@mui/styles\";\nimport PropTypes from \"prop-types\";\n\nimport { HvListContainer, HvListItem, HvButton } from \"@hitachivantara/uikit-react-core\";\nimport { DropRightXS } from \"@hitachivantara/uikit-react-icons\";\n\nimport styles from \"./styles\";\n\nconst Navigation = ({ id, classes, data, selected, onNavigateToTarget, onNavigateToChild }) => {\n return (\n <HvListContainer interactive id={id}>\n {data.map((item) => (\n <HvListItem\n key={item.id}\n classes={{\n root: classes.listItemRoot,\n selected: classes.listItemSelected,\n }}\n onClick={(event) => onNavigateToTarget(event, item)}\n selected={selected === item.id}\n startAdornment={item.icon}\n endAdornment={\n item.data && item.data.length > 0 ? (\n <HvButton icon onClick={(event) => onNavigateToChild(event, item)}>\n <DropRightXS />\n </HvButton>\n ) : (\n <div />\n )\n }\n >\n <span>{item.label}</span>\n </HvListItem>\n ))}\n </HvListContainer>\n );\n};\n\nNavigation.propTypes = {\n /**\n * Id to be applied to the root node of the panel.\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n /**\n * styles object applied to the root\n */\n listItemRoot: PropTypes.string,\n listItemSelected: PropTypes.string,\n }).isRequired,\n /**\n * An array containing the data for each menu item.\n *\n * id - the id to be applied to the root element.\n * label - the label to be rendered on the menu item.\n * icon - the icon react element\n * data - sub-menu items\n * href - the url used for navigation.\n * target - the behavior when opening an url.\n */\n data: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n icon: PropTypes.node,\n data: PropTypes.array,\n href: PropTypes.string,\n target: PropTypes.string,\n })\n ).isRequired,\n /**\n * The selected item id.\n */\n selected: PropTypes.string,\n /**\n * Triggered when the item is clicked.\n */\n onNavigateToTarget: PropTypes.func,\n /**\n * Triggered when the navigate to child button is clicked.\n */\n onNavigateToChild: PropTypes.func,\n};\n\nexport default withStyles(styles, { name: \"Navigation\" })(Navigation);\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;AAEA;AACA;AAEA;AAA8B;AAAA;AAE9B,IAAMA,UAAU,GAAG,SAAbA,UAAU,OAA+E;EAAA,IAAzEC,EAAE,QAAFA,EAAE;IAAEC,OAAO,QAAPA,OAAO;IAAEC,IAAI,QAAJA,IAAI;IAAEC,QAAQ,QAARA,QAAQ;IAAEC,kBAAkB,QAAlBA,kBAAkB;IAAEC,iBAAiB,QAAjBA,iBAAiB;EACtF,oBACE,qBAAC,+BAAe;IAAC,WAAW;IAAC,EAAE,EAAEL,EAAG;IAAA,UACjCE,IAAI,CAACI,GAAG,CAAC,UAACC,IAAI;MAAA,oBACb,qBAAC,0BAAU;QAET,OAAO,EAAE;UACPC,IAAI,EAAEP,OAAO,CAACQ,YAAY;UAC1BN,QAAQ,EAAEF,OAAO,CAACS;QACpB,CAAE;QACF,OAAO,EAAE,iBAACC,KAAK;UAAA,OAAKP,kBAAkB,CAACO,KAAK,EAAEJ,IAAI,CAAC;QAAA,CAAC;QACpD,QAAQ,EAAEJ,QAAQ,KAAKI,IAAI,CAACP,EAAG;QAC/B,cAAc,EAAEO,IAAI,CAACK,IAAK;QAC1B,YAAY,EACVL,IAAI,CAACL,IAAI,IAAIK,IAAI,CAACL,IAAI,CAACW,MAAM,GAAG,CAAC,gBAC/B,qBAAC,wBAAQ;UAAC,IAAI;UAAC,OAAO,EAAE,iBAACF,KAAK;YAAA,OAAKN,iBAAiB,CAACM,KAAK,EAAEJ,IAAI,CAAC;UAAA,CAAC;UAAA,uDAChE,qBAAC,4BAAW,KAAG;QAAA,EACN,gCAEX,+BAAO,CAEV;QAAA,uBAED;UAAA,UAAOA,IAAI,CAACO;QAAK;MAAQ,GAlBpBP,IAAI,CAACP,EAAE,CAmBD;IAAA,CACd;EAAC,EACc;AAEtB,CAAC;AAED,wCAAAD,UAAU,CAACgB,SAAS,GAAG;EACrB;AACF;AACA;EACEf,EAAE,EAAEgB,kBAAS,CAACC,MAAM;EACpB;AACF;AACA;EACEhB,OAAO,EAAEe,kBAAS,CAACE,KAAK,CAAC;IACvB;AACJ;AACA;IACIT,YAAY,EAAEO,kBAAS,CAACC,MAAM;IAC9BP,gBAAgB,EAAEM,kBAAS,CAACC;EAC9B,CAAC,CAAC,CAACE,UAAU;EACb;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEjB,IAAI,EAAEc,kBAAS,CAACI,OAAO,CACrBJ,kBAAS,CAACE,KAAK,CAAC;IACdlB,EAAE,EAAEgB,kBAAS,CAACC,MAAM,CAACE,UAAU;IAC/BL,KAAK,EAAEE,kBAAS,CAACC,MAAM,CAACE,UAAU;IAClCP,IAAI,EAAEI,kBAAS,CAACK,IAAI;IACpBnB,IAAI,EAAEc,kBAAS,CAACM,KAAK;IACrBC,IAAI,EAAEP,kBAAS,CAACC,MAAM;IACtBO,MAAM,EAAER,kBAAS,CAACC;EACpB,CAAC,CAAC,CACH,CAACE,UAAU;EACZ;AACF;AACA;EACEhB,QAAQ,EAAEa,kBAAS,CAACC,MAAM;EAC1B;AACF;AACA;EACEb,kBAAkB,EAAEY,kBAAS,CAACS,IAAI;EAClC;AACF;AACA;EACEpB,iBAAiB,EAAEW,kBAAS,CAACS;AAC/B,CAAC;AAAC,eAEa,IAAAC,kBAAU,EAACC,gBAAM,EAAE;EAAEC,IAAI,EAAE;AAAa,CAAC,CAAC,CAAC7B,UAAU,CAAC;AAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
Object.defineProperty(exports, "default", {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: function get() {
|
|
10
|
+
return _Navigation.default;
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
var _Navigation = _interopRequireDefault(require("./Navigation"));
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/NavigationSlider/Navigation/index.js"],"sourcesContent":["export { default } from \"./Navigation\";\n"],"mappings":";;;;;;;;;;;;AAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var styles = function styles(theme) {
|
|
8
|
+
return {
|
|
9
|
+
listItemRoot: {
|
|
10
|
+
display: "flex",
|
|
11
|
+
alignItems: "center",
|
|
12
|
+
borderLeft: "2px solid transparent",
|
|
13
|
+
minHeight: "52px",
|
|
14
|
+
marginBottom: "8px",
|
|
15
|
+
"& > button": {
|
|
16
|
+
marginLeft: "auto"
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
listItemSelected: {
|
|
20
|
+
background: theme.hv.palette.atmosphere.atmo3,
|
|
21
|
+
borderLeft: "2px solid ".concat(theme.hv.palette.accent.acce3),
|
|
22
|
+
"& *": {
|
|
23
|
+
background: theme.hv.palette.atmosphere.atmo3
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
var _default = styles;
|
|
29
|
+
exports.default = _default;
|
|
30
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","names":["styles","theme","listItemRoot","display","alignItems","borderLeft","minHeight","marginBottom","marginLeft","listItemSelected","background","hv","palette","atmosphere","atmo3","accent","acce3"],"sources":["../../../src/NavigationSlider/Navigation/styles.js"],"sourcesContent":["const styles = (theme) => ({\n listItemRoot: {\n display: \"flex\",\n alignItems: \"center\",\n borderLeft: `2px solid transparent`,\n minHeight: \"52px\",\n marginBottom: \"8px\",\n \"& > button\": {\n marginLeft: \"auto\",\n },\n },\n listItemSelected: {\n background: theme.hv.palette.atmosphere.atmo3,\n borderLeft: `2px solid ${theme.hv.palette.accent.acce3}`,\n \"& *\": {\n background: theme.hv.palette.atmosphere.atmo3,\n },\n },\n});\n\nexport default styles;\n"],"mappings":";;;;;;AAAA,IAAMA,MAAM,GAAG,SAATA,MAAM,CAAIC,KAAK;EAAA,OAAM;IACzBC,YAAY,EAAE;MACZC,OAAO,EAAE,MAAM;MACfC,UAAU,EAAE,QAAQ;MACpBC,UAAU,yBAAyB;MACnCC,SAAS,EAAE,MAAM;MACjBC,YAAY,EAAE,KAAK;MACnB,YAAY,EAAE;QACZC,UAAU,EAAE;MACd;IACF,CAAC;IACDC,gBAAgB,EAAE;MAChBC,UAAU,EAAET,KAAK,CAACU,EAAE,CAACC,OAAO,CAACC,UAAU,CAACC,KAAK;MAC7CT,UAAU,sBAAeJ,KAAK,CAACU,EAAE,CAACC,OAAO,CAACG,MAAM,CAACC,KAAK,CAAE;MACxD,KAAK,EAAE;QACLN,UAAU,EAAET,KAAK,CAACU,EAAE,CAACC,OAAO,CAACC,UAAU,CAACC;MAC1C;IACF;EACF,CAAC;AAAA,CAAC;AAAC,eAEYd,MAAM;AAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { NavigationData } from "@hitachivantara/uikit-react-core";
|
|
2
|
+
|
|
3
|
+
export interface HvVerticalNavigationProps {
|
|
4
|
+
/**
|
|
5
|
+
* Id to be applied to the root node of the panel.
|
|
6
|
+
*/
|
|
7
|
+
id?: string;
|
|
8
|
+
/**
|
|
9
|
+
* Called when a menu item is clicked.
|
|
10
|
+
*/
|
|
11
|
+
onNavigationChange?: Function;
|
|
12
|
+
/**
|
|
13
|
+
* An array containing the data for each menu item.
|
|
14
|
+
*/
|
|
15
|
+
data: NavigationData[];
|
|
16
|
+
/**
|
|
17
|
+
* The ID of the selected page.
|
|
18
|
+
*/
|
|
19
|
+
selected?: string;
|
|
20
|
+
/**
|
|
21
|
+
* The top value where the panel will be rendered. Default is 44 as it is the height of the Header component.
|
|
22
|
+
*/
|
|
23
|
+
topPosition?: number;
|
|
24
|
+
/**
|
|
25
|
+
* The width of the panel. Default value is 300.
|
|
26
|
+
*/
|
|
27
|
+
panelWidth?: number;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export default function HvVerticalNavigation(props: HvVerticalNavigationProps): JSX.Element | null;
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.array.iterator.js");
|
|
4
|
+
require("core-js/modules/es.object.to-string.js");
|
|
5
|
+
require("core-js/modules/es.string.iterator.js");
|
|
6
|
+
require("core-js/modules/es.weak-map.js");
|
|
7
|
+
require("core-js/modules/web.dom-collections.iterator.js");
|
|
8
|
+
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
9
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
10
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
11
|
+
Object.defineProperty(exports, "__esModule", {
|
|
12
|
+
value: true
|
|
13
|
+
});
|
|
14
|
+
exports.default = void 0;
|
|
15
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
16
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
17
|
+
var _styles = require("@mui/styles");
|
|
18
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
19
|
+
var _uikitReactCore = require("@hitachivantara/uikit-react-core");
|
|
20
|
+
var _Header = _interopRequireDefault(require("./Header"));
|
|
21
|
+
var _Navigation = _interopRequireDefault(require("./Navigation"));
|
|
22
|
+
var _utils = require("./utils");
|
|
23
|
+
var _styles2 = _interopRequireDefault(require("./styles"));
|
|
24
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
25
|
+
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); }
|
|
26
|
+
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; }
|
|
27
|
+
var HvNavigationSlider = function HvNavigationSlider(_ref) {
|
|
28
|
+
var id = _ref.id,
|
|
29
|
+
onNavigationChange = _ref.onNavigationChange,
|
|
30
|
+
data = _ref.data,
|
|
31
|
+
title = _ref.title,
|
|
32
|
+
selected = _ref.selected,
|
|
33
|
+
topPosition = _ref.topPosition,
|
|
34
|
+
panelWidth = _ref.panelWidth;
|
|
35
|
+
var classes = (0, _styles2.default)({
|
|
36
|
+
topPosition: topPosition,
|
|
37
|
+
panelWidth: panelWidth
|
|
38
|
+
})();
|
|
39
|
+
var withParentData = (0, _react.useMemo)(function () {
|
|
40
|
+
return (0, _utils.fillDataWithParentId)(data);
|
|
41
|
+
}, [data]);
|
|
42
|
+
var initialParentItem = (0, _react.useMemo)(function () {
|
|
43
|
+
return (0, _utils.getParentItemById)(withParentData, selected);
|
|
44
|
+
}, [withParentData, selected]);
|
|
45
|
+
var _useState = (0, _react.useState)(initialParentItem),
|
|
46
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
47
|
+
parentItem = _useState2[0],
|
|
48
|
+
setParentItem = _useState2[1];
|
|
49
|
+
var navigateToParentHandler = function navigateToParentHandler() {
|
|
50
|
+
setParentItem((0, _utils.getParentItemById)(withParentData, parentItem.id));
|
|
51
|
+
};
|
|
52
|
+
var navigateToTargetHandler = function navigateToTargetHandler(event, selectedItem) {
|
|
53
|
+
onNavigationChange(event, selectedItem);
|
|
54
|
+
};
|
|
55
|
+
var navigateToChildHandler = function navigateToChildHandler(event, item) {
|
|
56
|
+
setParentItem((0, _utils.getNavigationItemById)(withParentData, item.id));
|
|
57
|
+
event.stopPropagation();
|
|
58
|
+
};
|
|
59
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
60
|
+
id: id,
|
|
61
|
+
className: classes.container,
|
|
62
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_uikitReactCore.HvVerticalNavigation, {
|
|
63
|
+
className: classes.root,
|
|
64
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Header.default, {
|
|
65
|
+
onBackButtonClick: navigateToParentHandler,
|
|
66
|
+
showBackButton: !!(parentItem !== null && parentItem !== void 0 && parentItem.label),
|
|
67
|
+
title: (parentItem === null || parentItem === void 0 ? void 0 : parentItem.label) || title
|
|
68
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Navigation.default, {
|
|
69
|
+
data: parentItem.data || withParentData,
|
|
70
|
+
selected: selected,
|
|
71
|
+
onNavigateToTarget: navigateToTargetHandler,
|
|
72
|
+
onNavigateToChild: navigateToChildHandler
|
|
73
|
+
})]
|
|
74
|
+
})
|
|
75
|
+
});
|
|
76
|
+
};
|
|
77
|
+
process.env.NODE_ENV !== "production" ? HvNavigationSlider.propTypes = {
|
|
78
|
+
/**
|
|
79
|
+
* Id to be applied to the root node of the panel.
|
|
80
|
+
*/
|
|
81
|
+
id: _propTypes.default.string,
|
|
82
|
+
/**
|
|
83
|
+
* A Jss Object used to override or extend the styles applied.
|
|
84
|
+
*/
|
|
85
|
+
classes: _propTypes.default.shape({
|
|
86
|
+
/**
|
|
87
|
+
* styles object applied to the root
|
|
88
|
+
*/
|
|
89
|
+
container: _propTypes.default.string,
|
|
90
|
+
root: _propTypes.default.string,
|
|
91
|
+
footer: _propTypes.default.string
|
|
92
|
+
}).isRequired,
|
|
93
|
+
/**
|
|
94
|
+
* Called when a menu item is clicked.
|
|
95
|
+
*/
|
|
96
|
+
onNavigationChange: _propTypes.default.func,
|
|
97
|
+
/**
|
|
98
|
+
* An array containing the data for each menu item.
|
|
99
|
+
*
|
|
100
|
+
* id - the id to be applied to the root element.
|
|
101
|
+
* label - the label to be rendered on the menu item.
|
|
102
|
+
* data - sub-menu items
|
|
103
|
+
* href - the url used for navigation.
|
|
104
|
+
* target - the behavior when opening an url.
|
|
105
|
+
*/
|
|
106
|
+
data: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
107
|
+
id: _propTypes.default.string.isRequired,
|
|
108
|
+
label: _propTypes.default.string.isRequired,
|
|
109
|
+
icon: _propTypes.default.node,
|
|
110
|
+
data: _propTypes.default.array,
|
|
111
|
+
href: _propTypes.default.string,
|
|
112
|
+
target: _propTypes.default.string
|
|
113
|
+
})).isRequired,
|
|
114
|
+
/**
|
|
115
|
+
* The text to be displayed when at the root of the structure.
|
|
116
|
+
*/
|
|
117
|
+
title: _propTypes.default.string,
|
|
118
|
+
/**
|
|
119
|
+
* The ID of the selected page.
|
|
120
|
+
*/
|
|
121
|
+
selected: _propTypes.default.string,
|
|
122
|
+
/**
|
|
123
|
+
* The top value where the panel will be rendered. Default is 44 as it is the height of the Header component.
|
|
124
|
+
*/
|
|
125
|
+
topPosition: _propTypes.default.number,
|
|
126
|
+
/**
|
|
127
|
+
* The width of the panel when expanded. Default value is 300.
|
|
128
|
+
*/
|
|
129
|
+
panelWidth: _propTypes.default.number
|
|
130
|
+
} : void 0;
|
|
131
|
+
HvNavigationSlider.defaultProps = {
|
|
132
|
+
topPosition: 44,
|
|
133
|
+
panelWidth: 300
|
|
134
|
+
};
|
|
135
|
+
var _default = (0, _styles.withStyles)(_styles2.default, {
|
|
136
|
+
name: "HvNavigationSlider"
|
|
137
|
+
})(HvNavigationSlider);
|
|
138
|
+
exports.default = _default;
|
|
139
|
+
//# sourceMappingURL=NavigationSlider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavigationSlider.js","names":["HvNavigationSlider","id","onNavigationChange","data","title","selected","topPosition","panelWidth","classes","useStyles","withParentData","useMemo","fillDataWithParentId","initialParentItem","getParentItemById","useState","parentItem","setParentItem","navigateToParentHandler","navigateToTargetHandler","event","selectedItem","navigateToChildHandler","item","getNavigationItemById","stopPropagation","container","root","label","propTypes","PropTypes","string","shape","footer","isRequired","func","arrayOf","icon","node","array","href","target","number","defaultProps","withStyles","name"],"sources":["../../src/NavigationSlider/NavigationSlider.js"],"sourcesContent":["import React, { useState, useMemo } from \"react\";\nimport { withStyles } from \"@mui/styles\";\nimport PropTypes from \"prop-types\";\n\nimport { HvVerticalNavigation as HvVerticalNavigationCore } from \"@hitachivantara/uikit-react-core\";\n\nimport Header from \"./Header\";\nimport Navigation from \"./Navigation\";\nimport { fillDataWithParentId, getNavigationItemById, getParentItemById } from \"./utils\";\n\nimport useStyles from \"./styles\";\n\nconst HvNavigationSlider = ({\n id,\n onNavigationChange,\n data,\n title,\n selected,\n topPosition,\n panelWidth,\n}) => {\n const classes = useStyles({ topPosition, panelWidth })();\n\n const withParentData = useMemo(() => fillDataWithParentId(data), [data]);\n\n const initialParentItem = useMemo(\n () => getParentItemById(withParentData, selected),\n [withParentData, selected]\n );\n\n const [parentItem, setParentItem] = useState(initialParentItem);\n\n const navigateToParentHandler = () => {\n setParentItem(getParentItemById(withParentData, parentItem.id));\n };\n\n const navigateToTargetHandler = (event, selectedItem) => {\n onNavigationChange(event, selectedItem);\n };\n\n const navigateToChildHandler = (event, item) => {\n setParentItem(getNavigationItemById(withParentData, item.id));\n\n event.stopPropagation();\n };\n\n return (\n <div id={id} className={classes.container}>\n <HvVerticalNavigationCore className={classes.root}>\n <Header\n onBackButtonClick={navigateToParentHandler}\n showBackButton={!!parentItem?.label}\n title={parentItem?.label || title}\n />\n\n <Navigation\n data={parentItem.data || withParentData}\n selected={selected}\n onNavigateToTarget={navigateToTargetHandler}\n onNavigateToChild={navigateToChildHandler}\n />\n </HvVerticalNavigationCore>\n </div>\n );\n};\n\nHvNavigationSlider.propTypes = {\n /**\n * Id to be applied to the root node of the panel.\n */\n id: PropTypes.string,\n /**\n * A Jss Object used to override or extend the styles applied.\n */\n classes: PropTypes.shape({\n /**\n * styles object applied to the root\n */\n container: PropTypes.string,\n root: PropTypes.string,\n footer: PropTypes.string,\n }).isRequired,\n /**\n * Called when a menu item is clicked.\n */\n onNavigationChange: PropTypes.func,\n /**\n * An array containing the data for each menu item.\n *\n * id - the id to be applied to the root element.\n * label - the label to be rendered on the menu item.\n * data - sub-menu items\n * href - the url used for navigation.\n * target - the behavior when opening an url.\n */\n data: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n label: PropTypes.string.isRequired,\n icon: PropTypes.node,\n data: PropTypes.array,\n href: PropTypes.string,\n target: PropTypes.string,\n })\n ).isRequired,\n /**\n * The text to be displayed when at the root of the structure.\n */\n title: PropTypes.string,\n /**\n * The ID of the selected page.\n */\n selected: PropTypes.string,\n /**\n * The top value where the panel will be rendered. Default is 44 as it is the height of the Header component.\n */\n topPosition: PropTypes.number,\n /**\n * The width of the panel when expanded. Default value is 300.\n */\n panelWidth: PropTypes.number,\n};\n\nHvNavigationSlider.defaultProps = {\n topPosition: 44,\n panelWidth: 300,\n};\n\nexport default withStyles(useStyles, { name: \"HvNavigationSlider\" })(HvNavigationSlider);\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AACA;AACA;AAEA;AAEA;AACA;AACA;AAEA;AAAiC;AAAA;AAAA;AAEjC,IAAMA,kBAAkB,GAAG,SAArBA,kBAAkB,OAQlB;EAAA,IAPJC,EAAE,QAAFA,EAAE;IACFC,kBAAkB,QAAlBA,kBAAkB;IAClBC,IAAI,QAAJA,IAAI;IACJC,KAAK,QAALA,KAAK;IACLC,QAAQ,QAARA,QAAQ;IACRC,WAAW,QAAXA,WAAW;IACXC,UAAU,QAAVA,UAAU;EAEV,IAAMC,OAAO,GAAG,IAAAC,gBAAS,EAAC;IAAEH,WAAW,EAAXA,WAAW;IAAEC,UAAU,EAAVA;EAAW,CAAC,CAAC,EAAE;EAExD,IAAMG,cAAc,GAAG,IAAAC,cAAO,EAAC;IAAA,OAAM,IAAAC,2BAAoB,EAACT,IAAI,CAAC;EAAA,GAAE,CAACA,IAAI,CAAC,CAAC;EAExE,IAAMU,iBAAiB,GAAG,IAAAF,cAAO,EAC/B;IAAA,OAAM,IAAAG,wBAAiB,EAACJ,cAAc,EAAEL,QAAQ,CAAC;EAAA,GACjD,CAACK,cAAc,EAAEL,QAAQ,CAAC,CAC3B;EAED,gBAAoC,IAAAU,eAAQ,EAACF,iBAAiB,CAAC;IAAA;IAAxDG,UAAU;IAAEC,aAAa;EAEhC,IAAMC,uBAAuB,GAAG,SAA1BA,uBAAuB,GAAS;IACpCD,aAAa,CAAC,IAAAH,wBAAiB,EAACJ,cAAc,EAAEM,UAAU,CAACf,EAAE,CAAC,CAAC;EACjE,CAAC;EAED,IAAMkB,uBAAuB,GAAG,SAA1BA,uBAAuB,CAAIC,KAAK,EAAEC,YAAY,EAAK;IACvDnB,kBAAkB,CAACkB,KAAK,EAAEC,YAAY,CAAC;EACzC,CAAC;EAED,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAsB,CAAIF,KAAK,EAAEG,IAAI,EAAK;IAC9CN,aAAa,CAAC,IAAAO,4BAAqB,EAACd,cAAc,EAAEa,IAAI,CAACtB,EAAE,CAAC,CAAC;IAE7DmB,KAAK,CAACK,eAAe,EAAE;EACzB,CAAC;EAED,oBACE;IAAK,EAAE,EAAExB,EAAG;IAAC,SAAS,EAAEO,OAAO,CAACkB,SAAU;IAAA,uBACxC,sBAAC,oCAAwB;MAAC,SAAS,EAAElB,OAAO,CAACmB,IAAK;MAAA,wBAChD,qBAAC,eAAM;QACL,iBAAiB,EAAET,uBAAwB;QAC3C,cAAc,EAAE,CAAC,EAACF,UAAU,aAAVA,UAAU,eAAVA,UAAU,CAAEY,KAAK,CAAC;QACpC,KAAK,EAAE,CAAAZ,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEY,KAAK,KAAIxB;MAAM,EAClC,eAEF,qBAAC,mBAAU;QACT,IAAI,EAAEY,UAAU,CAACb,IAAI,IAAIO,cAAe;QACxC,QAAQ,EAAEL,QAAS;QACnB,kBAAkB,EAAEc,uBAAwB;QAC5C,iBAAiB,EAAEG;MAAuB,EAC1C;IAAA;EACuB,EACvB;AAEV,CAAC;AAED,wCAAAtB,kBAAkB,CAAC6B,SAAS,GAAG;EAC7B;AACF;AACA;EACE5B,EAAE,EAAE6B,kBAAS,CAACC,MAAM;EACpB;AACF;AACA;EACEvB,OAAO,EAAEsB,kBAAS,CAACE,KAAK,CAAC;IACvB;AACJ;AACA;IACIN,SAAS,EAAEI,kBAAS,CAACC,MAAM;IAC3BJ,IAAI,EAAEG,kBAAS,CAACC,MAAM;IACtBE,MAAM,EAAEH,kBAAS,CAACC;EACpB,CAAC,CAAC,CAACG,UAAU;EACb;AACF;AACA;EACEhC,kBAAkB,EAAE4B,kBAAS,CAACK,IAAI;EAClC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEhC,IAAI,EAAE2B,kBAAS,CAACM,OAAO,CACrBN,kBAAS,CAACE,KAAK,CAAC;IACd/B,EAAE,EAAE6B,kBAAS,CAACC,MAAM,CAACG,UAAU;IAC/BN,KAAK,EAAEE,kBAAS,CAACC,MAAM,CAACG,UAAU;IAClCG,IAAI,EAAEP,kBAAS,CAACQ,IAAI;IACpBnC,IAAI,EAAE2B,kBAAS,CAACS,KAAK;IACrBC,IAAI,EAAEV,kBAAS,CAACC,MAAM;IACtBU,MAAM,EAAEX,kBAAS,CAACC;EACpB,CAAC,CAAC,CACH,CAACG,UAAU;EACZ;AACF;AACA;EACE9B,KAAK,EAAE0B,kBAAS,CAACC,MAAM;EACvB;AACF;AACA;EACE1B,QAAQ,EAAEyB,kBAAS,CAACC,MAAM;EAC1B;AACF;AACA;EACEzB,WAAW,EAAEwB,kBAAS,CAACY,MAAM;EAC7B;AACF;AACA;EACEnC,UAAU,EAAEuB,kBAAS,CAACY;AACxB,CAAC;AAED1C,kBAAkB,CAAC2C,YAAY,GAAG;EAChCrC,WAAW,EAAE,EAAE;EACfC,UAAU,EAAE;AACd,CAAC;AAAC,eAEa,IAAAqC,kBAAU,EAACnC,gBAAS,EAAE;EAAEoC,IAAI,EAAE;AAAqB,CAAC,CAAC,CAAC7C,kBAAkB,CAAC;AAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
Object.defineProperty(exports, "default", {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: function get() {
|
|
10
|
+
return _NavigationSlider.default;
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
var _NavigationSlider = _interopRequireDefault(require("./NavigationSlider"));
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/NavigationSlider/index.js"],"sourcesContent":["export { default } from \"./NavigationSlider\";\n"],"mappings":";;;;;;;;;;;;AAAA"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _styles = require("@mui/styles");
|
|
8
|
+
var styles = function styles(props) {
|
|
9
|
+
return (0, _styles.makeStyles)(function () {
|
|
10
|
+
return {
|
|
11
|
+
container: {
|
|
12
|
+
position: "fixed",
|
|
13
|
+
left: 0,
|
|
14
|
+
top: props.topPosition
|
|
15
|
+
},
|
|
16
|
+
root: {
|
|
17
|
+
width: props.panelWidth,
|
|
18
|
+
height: "calc(100vh - ".concat(props.topPosition, "px)"),
|
|
19
|
+
justifyContent: "flex-start"
|
|
20
|
+
},
|
|
21
|
+
footer: {
|
|
22
|
+
marginTop: "auto"
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
var _default = styles;
|
|
28
|
+
exports.default = _default;
|
|
29
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","names":["styles","props","makeStyles","container","position","left","top","topPosition","root","width","panelWidth","height","justifyContent","footer","marginTop"],"sources":["../../src/NavigationSlider/styles.js"],"sourcesContent":["import { makeStyles } from \"@mui/styles\";\n\nconst styles = (props) =>\n makeStyles(() => ({\n container: {\n position: \"fixed\",\n left: 0,\n top: props.topPosition,\n },\n root: {\n width: props.panelWidth,\n height: `calc(100vh - ${props.topPosition}px)`,\n justifyContent: \"flex-start\",\n },\n footer: {\n marginTop: \"auto\",\n },\n }));\n\nexport default styles;\n"],"mappings":";;;;;;AAAA;AAEA,IAAMA,MAAM,GAAG,SAATA,MAAM,CAAIC,KAAK;EAAA,OACnB,IAAAC,kBAAU,EAAC;IAAA,OAAO;MAChBC,SAAS,EAAE;QACTC,QAAQ,EAAE,OAAO;QACjBC,IAAI,EAAE,CAAC;QACPC,GAAG,EAAEL,KAAK,CAACM;MACb,CAAC;MACDC,IAAI,EAAE;QACJC,KAAK,EAAER,KAAK,CAACS,UAAU;QACvBC,MAAM,yBAAkBV,KAAK,CAACM,WAAW,QAAK;QAC9CK,cAAc,EAAE;MAClB,CAAC;MACDC,MAAM,EAAE;QACNC,SAAS,EAAE;MACb;IACF,CAAC;EAAA,CAAC,CAAC;AAAA;AAAC,eAESd,MAAM;AAAA"}
|