@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.
Files changed (97) hide show
  1. package/dist/NavigationSlider/Header/Header.js +79 -0
  2. package/dist/NavigationSlider/Header/Header.js.map +1 -0
  3. package/dist/NavigationSlider/Header/index.js +14 -0
  4. package/dist/NavigationSlider/Header/index.js.map +1 -0
  5. package/dist/NavigationSlider/Header/styles.js +36 -0
  6. package/dist/NavigationSlider/Header/styles.js.map +1 -0
  7. package/dist/NavigationSlider/Navigation/Navigation.js +102 -0
  8. package/dist/NavigationSlider/Navigation/Navigation.js.map +1 -0
  9. package/dist/NavigationSlider/Navigation/index.js +14 -0
  10. package/dist/NavigationSlider/Navigation/index.js.map +1 -0
  11. package/dist/NavigationSlider/Navigation/styles.js +30 -0
  12. package/dist/NavigationSlider/Navigation/styles.js.map +1 -0
  13. package/dist/NavigationSlider/NavigationSlider.d.ts +30 -0
  14. package/dist/NavigationSlider/NavigationSlider.js +139 -0
  15. package/dist/NavigationSlider/NavigationSlider.js.map +1 -0
  16. package/dist/NavigationSlider/index.d.ts +2 -0
  17. package/dist/NavigationSlider/index.js +14 -0
  18. package/dist/NavigationSlider/index.js.map +1 -0
  19. package/dist/NavigationSlider/styles.js +29 -0
  20. package/dist/NavigationSlider/styles.js.map +1 -0
  21. package/dist/NavigationSlider/utils.js +87 -0
  22. package/dist/NavigationSlider/utils.js.map +1 -0
  23. package/dist/VerticalNavigation/VerticalNavigation.d.ts +12 -8
  24. package/dist/VerticalNavigation/VerticalNavigation.js +71 -41
  25. package/dist/VerticalNavigation/VerticalNavigation.js.map +1 -1
  26. package/dist/VerticalNavigation/styles.js +11 -36
  27. package/dist/VerticalNavigation/styles.js.map +1 -1
  28. package/dist/VerticalNavigation/utils.js +88 -0
  29. package/dist/VerticalNavigation/utils.js.map +1 -0
  30. package/dist/index.d.ts +3 -0
  31. package/dist/index.js +9 -1
  32. package/dist/index.js.map +1 -1
  33. package/dist/legacy/NavigationSlider/Header/Header.js +72 -0
  34. package/dist/legacy/NavigationSlider/Header/Header.js.map +1 -0
  35. package/dist/legacy/NavigationSlider/Header/index.js +2 -0
  36. package/dist/legacy/NavigationSlider/Header/index.js.map +1 -0
  37. package/dist/legacy/NavigationSlider/Header/styles.js +29 -0
  38. package/dist/legacy/NavigationSlider/Header/styles.js.map +1 -0
  39. package/dist/legacy/NavigationSlider/Navigation/Navigation.js +94 -0
  40. package/dist/legacy/NavigationSlider/Navigation/Navigation.js.map +1 -0
  41. package/dist/legacy/NavigationSlider/Navigation/index.js +2 -0
  42. package/dist/legacy/NavigationSlider/Navigation/index.js.map +1 -0
  43. package/dist/legacy/NavigationSlider/Navigation/styles.js +23 -0
  44. package/dist/legacy/NavigationSlider/Navigation/styles.js.map +1 -0
  45. package/dist/legacy/NavigationSlider/NavigationSlider.d.ts +30 -0
  46. package/dist/legacy/NavigationSlider/NavigationSlider.js +123 -0
  47. package/dist/legacy/NavigationSlider/NavigationSlider.js.map +1 -0
  48. package/dist/legacy/NavigationSlider/index.d.ts +2 -0
  49. package/dist/legacy/NavigationSlider/index.js +2 -0
  50. package/dist/legacy/NavigationSlider/index.js.map +1 -0
  51. package/dist/legacy/NavigationSlider/styles.js +22 -0
  52. package/dist/legacy/NavigationSlider/styles.js.map +1 -0
  53. package/dist/legacy/NavigationSlider/utils.js +78 -0
  54. package/dist/legacy/NavigationSlider/utils.js.map +1 -0
  55. package/dist/legacy/VerticalNavigation/VerticalNavigation.d.ts +12 -8
  56. package/dist/legacy/VerticalNavigation/VerticalNavigation.js +72 -40
  57. package/dist/legacy/VerticalNavigation/VerticalNavigation.js.map +1 -1
  58. package/dist/legacy/VerticalNavigation/styles.js +11 -35
  59. package/dist/legacy/VerticalNavigation/styles.js.map +1 -1
  60. package/dist/legacy/VerticalNavigation/utils.js +79 -0
  61. package/dist/legacy/VerticalNavigation/utils.js.map +1 -0
  62. package/dist/legacy/index.d.ts +3 -0
  63. package/dist/legacy/index.js +1 -0
  64. package/dist/legacy/index.js.map +1 -1
  65. package/dist/modern/NavigationSlider/Header/Header.js +72 -0
  66. package/dist/modern/NavigationSlider/Header/Header.js.map +1 -0
  67. package/dist/modern/NavigationSlider/Header/index.js +2 -0
  68. package/dist/modern/NavigationSlider/Header/index.js.map +1 -0
  69. package/dist/modern/NavigationSlider/Header/styles.js +25 -0
  70. package/dist/modern/NavigationSlider/Header/styles.js.map +1 -0
  71. package/dist/modern/NavigationSlider/Navigation/Navigation.js +88 -0
  72. package/dist/modern/NavigationSlider/Navigation/Navigation.js.map +1 -0
  73. package/dist/modern/NavigationSlider/Navigation/index.js +2 -0
  74. package/dist/modern/NavigationSlider/Navigation/index.js.map +1 -0
  75. package/dist/modern/NavigationSlider/Navigation/styles.js +21 -0
  76. package/dist/modern/NavigationSlider/Navigation/styles.js.map +1 -0
  77. package/dist/modern/NavigationSlider/NavigationSlider.d.ts +30 -0
  78. package/dist/modern/NavigationSlider/NavigationSlider.js +116 -0
  79. package/dist/modern/NavigationSlider/NavigationSlider.js.map +1 -0
  80. package/dist/modern/NavigationSlider/index.d.ts +2 -0
  81. package/dist/modern/NavigationSlider/index.js +2 -0
  82. package/dist/modern/NavigationSlider/index.js.map +1 -0
  83. package/dist/modern/NavigationSlider/styles.js +18 -0
  84. package/dist/modern/NavigationSlider/styles.js.map +1 -0
  85. package/dist/modern/NavigationSlider/utils.js +70 -0
  86. package/dist/modern/NavigationSlider/utils.js.map +1 -0
  87. package/dist/modern/VerticalNavigation/VerticalNavigation.d.ts +12 -8
  88. package/dist/modern/VerticalNavigation/VerticalNavigation.js +68 -43
  89. package/dist/modern/VerticalNavigation/VerticalNavigation.js.map +1 -1
  90. package/dist/modern/VerticalNavigation/styles.js +11 -28
  91. package/dist/modern/VerticalNavigation/styles.js.map +1 -1
  92. package/dist/modern/VerticalNavigation/utils.js +76 -0
  93. package/dist/modern/VerticalNavigation/utils.js.map +1 -0
  94. package/dist/modern/index.d.ts +3 -0
  95. package/dist/modern/index.js +1 -0
  96. package/dist/modern/index.js.map +1 -1
  97. package/package.json +4 -4
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.keys.js");
4
+ require("core-js/modules/es.symbol.js");
5
+ require("core-js/modules/es.array.filter.js");
6
+ require("core-js/modules/es.object.to-string.js");
7
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
8
+ require("core-js/modules/web.dom-collections.for-each.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
10
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
11
+ Object.defineProperty(exports, "__esModule", {
12
+ value: true
13
+ });
14
+ exports.getParentItemById = exports.getNavigationItemById = exports.fillDataWithParentId = void 0;
15
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
+ require("core-js/modules/es.array.map.js");
17
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
18
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
+ /**
20
+ * Recursively searches in a collection the first element where the property matches the specified value.
21
+ *
22
+ * @param collection - Collection where the search will be performed
23
+ * @param childrenPropName - The children property name where the recursive search will be performed
24
+ * @param propName - The name of the property to be used on the search
25
+ * @param propValue - The value of the property to be used on the search
26
+ * @returns The element that matches the requirement or null if none is found
27
+ */
28
+ var searchInCollection = function searchInCollection(collection, childrenPropName, propName, propValue) {
29
+ if (collection[propName] === propValue) {
30
+ return collection;
31
+ }
32
+ var items = collection[childrenPropName] || collection;
33
+ var foundItem = null;
34
+ for (var index = 0; foundItem === null && index < items.length; index += 1) {
35
+ foundItem = searchInCollection(items[index], childrenPropName, propName, propValue);
36
+ }
37
+ return foundItem;
38
+ };
39
+
40
+ /**
41
+ * Returns the navigation item with the specified id.
42
+ *
43
+ * @param navigationItems - The collection of navigation items.
44
+ * @param navigationItemId - The id to be used on the search
45
+ * @returns The navigation item with the specified id.
46
+ */
47
+ var getNavigationItemById = function getNavigationItemById(navigationItems, navigationItemId) {
48
+ return searchInCollection(navigationItems, "data", "id", navigationItemId);
49
+ };
50
+
51
+ /**
52
+ * Returns the parent item for the received item id.
53
+ *
54
+ * @param navigationItems - The collection of navigation items.
55
+ * @param navigationItemId - The id to be used on the search
56
+ * @returns The parent navigation item.
57
+ */
58
+ exports.getNavigationItemById = getNavigationItemById;
59
+ var getParentItemById = function getParentItemById(navigationItems, navigationItemId) {
60
+ var parentId = getNavigationItemById(navigationItems, navigationItemId).parent;
61
+ return getNavigationItemById(navigationItems, parentId);
62
+ };
63
+
64
+ /**
65
+ * Fills the data structure with the parent id on each one of the nodes.
66
+ *
67
+ * @param navigationItems - The collection of navigation items.
68
+ * @param parentItemId - The parent id to be added.
69
+ * @returns The structure now filled with the parent id.
70
+ */
71
+ exports.getParentItemById = getParentItemById;
72
+ var fillDataWithParentId = function fillDataWithParentId(navigationItems, parentItemId) {
73
+ return navigationItems.map(function (item) {
74
+ var _item$data;
75
+ if ((item === null || item === void 0 ? void 0 : (_item$data = item.data) === null || _item$data === void 0 ? void 0 : _item$data.length) > 0) {
76
+ return _objectSpread(_objectSpread({}, item), {}, {
77
+ parent: parentItemId,
78
+ data: fillDataWithParentId(item.data, item.id)
79
+ });
80
+ }
81
+ return _objectSpread(_objectSpread({}, item), {}, {
82
+ parent: parentItemId
83
+ });
84
+ });
85
+ };
86
+ exports.fillDataWithParentId = fillDataWithParentId;
87
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","names":["searchInCollection","collection","childrenPropName","propName","propValue","items","foundItem","index","length","getNavigationItemById","navigationItems","navigationItemId","getParentItemById","parentId","parent","fillDataWithParentId","parentItemId","map","item","data","id"],"sources":["../../src/NavigationSlider/utils.js"],"sourcesContent":["/**\n * Recursively searches in a collection the first element where the property matches the specified value.\n *\n * @param collection - Collection where the search will be performed\n * @param childrenPropName - The children property name where the recursive search will be performed\n * @param propName - The name of the property to be used on the search\n * @param propValue - The value of the property to be used on the search\n * @returns The element that matches the requirement or null if none is found\n */\nconst searchInCollection = (collection, childrenPropName, propName, propValue) => {\n if (collection[propName] === propValue) {\n return collection;\n }\n\n const items = collection[childrenPropName] || collection;\n\n let foundItem = null;\n for (let index = 0; foundItem === null && index < items.length; index += 1) {\n foundItem = searchInCollection(items[index], childrenPropName, propName, propValue);\n }\n return foundItem;\n};\n\n/**\n * Returns the navigation item with the specified id.\n *\n * @param navigationItems - The collection of navigation items.\n * @param navigationItemId - The id to be used on the search\n * @returns The navigation item with the specified id.\n */\nconst getNavigationItemById = (navigationItems, navigationItemId) => {\n return searchInCollection(navigationItems, \"data\", \"id\", navigationItemId);\n};\n\n/**\n * Returns the parent item for the received item id.\n *\n * @param navigationItems - The collection of navigation items.\n * @param navigationItemId - The id to be used on the search\n * @returns The parent navigation item.\n */\nconst getParentItemById = (navigationItems, navigationItemId) => {\n const parentId = getNavigationItemById(navigationItems, navigationItemId).parent;\n return getNavigationItemById(navigationItems, parentId);\n};\n\n/**\n * Fills the data structure with the parent id on each one of the nodes.\n *\n * @param navigationItems - The collection of navigation items.\n * @param parentItemId - The parent id to be added.\n * @returns The structure now filled with the parent id.\n */\nconst fillDataWithParentId = (navigationItems, parentItemId) => {\n return navigationItems.map((item) => {\n if (item?.data?.length > 0) {\n return { ...item, parent: parentItemId, data: fillDataWithParentId(item.data, item.id) };\n }\n return { ...item, parent: parentItemId };\n });\n};\n\nexport { getNavigationItemById, getParentItemById, fillDataWithParentId };\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAkB,CAAIC,UAAU,EAAEC,gBAAgB,EAAEC,QAAQ,EAAEC,SAAS,EAAK;EAChF,IAAIH,UAAU,CAACE,QAAQ,CAAC,KAAKC,SAAS,EAAE;IACtC,OAAOH,UAAU;EACnB;EAEA,IAAMI,KAAK,GAAGJ,UAAU,CAACC,gBAAgB,CAAC,IAAID,UAAU;EAExD,IAAIK,SAAS,GAAG,IAAI;EACpB,KAAK,IAAIC,KAAK,GAAG,CAAC,EAAED,SAAS,KAAK,IAAI,IAAIC,KAAK,GAAGF,KAAK,CAACG,MAAM,EAAED,KAAK,IAAI,CAAC,EAAE;IAC1ED,SAAS,GAAGN,kBAAkB,CAACK,KAAK,CAACE,KAAK,CAAC,EAAEL,gBAAgB,EAAEC,QAAQ,EAAEC,SAAS,CAAC;EACrF;EACA,OAAOE,SAAS;AAClB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMG,qBAAqB,GAAG,SAAxBA,qBAAqB,CAAIC,eAAe,EAAEC,gBAAgB,EAAK;EACnE,OAAOX,kBAAkB,CAACU,eAAe,EAAE,MAAM,EAAE,IAAI,EAAEC,gBAAgB,CAAC;AAC5E,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAOA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiB,CAAIF,eAAe,EAAEC,gBAAgB,EAAK;EAC/D,IAAME,QAAQ,GAAGJ,qBAAqB,CAACC,eAAe,EAAEC,gBAAgB,CAAC,CAACG,MAAM;EAChF,OAAOL,qBAAqB,CAACC,eAAe,EAAEG,QAAQ,CAAC;AACzD,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAOA,IAAME,oBAAoB,GAAG,SAAvBA,oBAAoB,CAAIL,eAAe,EAAEM,YAAY,EAAK;EAC9D,OAAON,eAAe,CAACO,GAAG,CAAC,UAACC,IAAI,EAAK;IAAA;IACnC,IAAI,CAAAA,IAAI,aAAJA,IAAI,qCAAJA,IAAI,CAAEC,IAAI,+CAAV,WAAYX,MAAM,IAAG,CAAC,EAAE;MAC1B,uCAAYU,IAAI;QAAEJ,MAAM,EAAEE,YAAY;QAAEG,IAAI,EAAEJ,oBAAoB,CAACG,IAAI,CAACC,IAAI,EAAED,IAAI,CAACE,EAAE;MAAC;IACxF;IACA,uCAAYF,IAAI;MAAEJ,MAAM,EAAEE;IAAY;EACxC,CAAC,CAAC;AACJ,CAAC;AAAC"}
@@ -1,26 +1,26 @@
1
1
  import { NavigationData } from "@hitachivantara/uikit-react-core";
2
2
 
3
3
  export interface HvVerticalNavigationProps {
4
- /**
5
- * Id to be applied to the root node of the panel.
6
- */
7
- id?: string;
8
4
  /**
9
5
  * Called when a menu item is clicked.
10
6
  */
11
7
  onNavigationChange?: Function;
12
8
  /**
13
- * An array containing the data for each menu item.
9
+ * Called the collpase / expand button is clicked.
14
10
  */
15
- data: NavigationData[];
11
+ onToggleExpanded?: Function;
16
12
  /**
17
- * Text to be displayed in the collpase area when the panel is expanded.
13
+ * An array containing the data for each menu item.
18
14
  */
19
- collapseLabel?: string;
15
+ data: NavigationData[];
20
16
  /**
21
17
  * The ID of the selected page.
22
18
  */
23
19
  selected?: string;
20
+ /**
21
+ * Flag that sets the panel to expanded / collapsed.
22
+ */
23
+ expanded: boolean;
24
24
  /**
25
25
  * The top value where the panel will be rendered. Default is 44 as it is the height of the Header component.
26
26
  */
@@ -33,6 +33,10 @@ export interface HvVerticalNavigationProps {
33
33
  * The width of the panel when collapsed. Default vlaue is 52.
34
34
  */
35
35
  collapsedPanelWidth?: number;
36
+ /**
37
+ * Sets the Css position of the panel. Default value is `sticked`
38
+ */
39
+ position?: "static" | "relative" | "fixed" | "absolute" | "sticky";
36
40
  }
37
41
 
38
42
  export default function HvVerticalNavigation(props: HvVerticalNavigationProps): JSX.Element | null;
@@ -1,18 +1,28 @@
1
1
  "use strict";
2
2
 
3
- require("core-js/modules/es.array.iterator.js");
3
+ require("core-js/modules/es.object.keys.js");
4
+ require("core-js/modules/es.symbol.js");
5
+ require("core-js/modules/es.array.filter.js");
4
6
  require("core-js/modules/es.object.to-string.js");
7
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
8
+ require("core-js/modules/web.dom-collections.for-each.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
10
+ require("core-js/modules/es.array.iterator.js");
5
11
  require("core-js/modules/es.string.iterator.js");
6
12
  require("core-js/modules/es.weak-map.js");
7
13
  require("core-js/modules/web.dom-collections.iterator.js");
8
- require("core-js/modules/es.object.get-own-property-descriptor.js");
9
14
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
10
15
  var _typeof = require("@babel/runtime/helpers/typeof");
11
16
  Object.defineProperty(exports, "__esModule", {
12
17
  value: true
13
18
  });
14
19
  exports.default = void 0;
20
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
+ require("core-js/modules/es.array.map.js");
22
+ require("core-js/modules/es.array.concat.js");
23
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
15
24
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
25
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
16
26
  var _react = _interopRequireWildcard(require("react"));
17
27
  var _styles = require("@mui/styles");
18
28
  var _propTypes = _interopRequireDefault(require("prop-types"));
@@ -20,73 +30,94 @@ var _clsx = _interopRequireDefault(require("clsx"));
20
30
  var _uikitReactCore = require("@hitachivantara/uikit-react-core");
21
31
  var _uikitReactIcons = require("@hitachivantara/uikit-react-icons");
22
32
  var _styles2 = _interopRequireDefault(require("./styles"));
33
+ var _utils = require("./utils");
23
34
  var _jsxRuntime = require("react/jsx-runtime");
24
35
  var _Backwards, _Forwards;
36
+ var _excluded = ["onNavigationChange", "onToggleExpanded", "data", "selected", "expanded", "topPosition", "expandedPanelWidth", "collapsedPanelWidth", "position"],
37
+ _excluded2 = ["data"];
25
38
  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
39
  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; }
40
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
41
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
27
42
  var HvVerticalNavigation = function HvVerticalNavigation(_ref) {
28
- var id = _ref.id,
29
- onNavigationChange = _ref.onNavigationChange,
43
+ var _findRootParentById;
44
+ var onNavigationChange = _ref.onNavigationChange,
45
+ onToggleExpanded = _ref.onToggleExpanded,
30
46
  data = _ref.data,
31
47
  selected = _ref.selected,
32
- collapseLabel = _ref.collapseLabel,
48
+ expanded = _ref.expanded,
33
49
  topPosition = _ref.topPosition,
34
50
  expandedPanelWidth = _ref.expandedPanelWidth,
35
51
  collapsedPanelWidth = _ref.collapsedPanelWidth,
36
- position = _ref.position;
52
+ position = _ref.position,
53
+ others = (0, _objectWithoutProperties2.default)(_ref, _excluded);
37
54
  var classes = (0, _styles2.default)({
38
55
  topPosition: topPosition,
39
56
  expandedPanelWidth: expandedPanelWidth,
40
57
  collapsedPanelWidth: collapsedPanelWidth,
41
58
  position: position
42
59
  })();
43
- var _useState = (0, _react.useState)(true),
60
+ var noSubData = data.map(function (_ref2) {
61
+ var dataToRemove = _ref2.data,
62
+ rest = (0, _objectWithoutProperties2.default)(_ref2, _excluded2);
63
+ return rest;
64
+ });
65
+ var _useState = (0, _react.useState)((0, _utils.pathToItem)(data, selected)),
44
66
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
45
- isExpanded = _useState2[0],
46
- setIsExpanded = _useState2[1];
67
+ expandedItems = _useState2[0],
68
+ setExpandedItems = _useState2[1];
69
+ var selectedTopParent = (_findRootParentById = (0, _utils.findRootParentById)(data, selected)) === null || _findRootParentById === void 0 ? void 0 : _findRootParentById.id;
47
70
  var handleVerticalNavigationChange = function handleVerticalNavigationChange(event, item) {
48
- onNavigationChange === null || onNavigationChange === void 0 ? void 0 : onNavigationChange(event, item);
71
+ // This need to be done because the item recieved on the callback is missing the original data object
72
+ var fullItem = (0, _utils.findItemById)(data, item.id);
73
+ if (!expanded && fullItem.data && fullItem.data.length > 0) {
74
+ setExpandedItems(function (prevState) {
75
+ return [].concat((0, _toConsumableArray2.default)(prevState), [item.id]);
76
+ });
77
+ onToggleExpanded(true);
78
+ } else {
79
+ onNavigationChange === null || onNavigationChange === void 0 ? void 0 : onNavigationChange(event, item);
80
+ }
81
+ };
82
+ var handleVerticalNavigationToggle = function handleVerticalNavigationToggle(event, currentExpandedItems) {
83
+ setExpandedItems(currentExpandedItems);
49
84
  };
50
85
  var handleExpandToggle = function handleExpandToggle() {
51
- setIsExpanded(function (prevState) {
52
- return !prevState;
53
- });
86
+ onToggleExpanded(!expanded);
54
87
  };
55
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_uikitReactCore.HvVerticalNavigation, {
56
- className: (0, _clsx.default)(classes.panel, isExpanded ? classes.panelExpanded : classes.panelCollapsed),
57
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactCore.HvVerticalNavigationTree, {
58
- collapsible: true,
59
- data: data,
60
- selected: selected,
61
- onChange: handleVerticalNavigationChange
62
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactCore.HvVerticalNavigationActions, {
88
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_uikitReactCore.HvVerticalNavigation, _objectSpread(_objectSpread({
89
+ className: (0, _clsx.default)(classes.panel, expanded ? classes.panelExpanded : classes.panelCollapsed)
90
+ }, others), {}, {
91
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactCore.HvContainer, {
92
+ className: "".concat(classes.toggleCollapsePanel),
63
93
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactCore.HvButton, {
64
- id: (0, _uikitReactCore.setId)(id, "button-toggle"),
65
- className: (0, _clsx.default)(isExpanded ? classes.collapseButton : classes.expandButton),
66
- category: "ghost",
67
- startIcon: isExpanded ? _Backwards || (_Backwards = /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactIcons.Backwards, {
94
+ icon: true,
95
+ onClick: handleExpandToggle,
96
+ children: expanded ? _Backwards || (_Backwards = /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactIcons.Backwards, {
68
97
  iconSize: "XS"
69
98
  })) : _Forwards || (_Forwards = /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactIcons.Forwards, {
70
99
  iconSize: "XS"
71
- })),
72
- onClick: handleExpandToggle,
73
- children: isExpanded && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
74
- className: classes.collapseTextContainer,
75
- children: collapseLabel
76
- })
100
+ }))
77
101
  })
102
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_uikitReactCore.HvVerticalNavigationTree, {
103
+ collapsible: true,
104
+ expanded: expandedItems,
105
+ data: expanded ? data : noSubData,
106
+ selected: expanded ? selected : selectedTopParent,
107
+ onChange: handleVerticalNavigationChange,
108
+ onToggle: handleVerticalNavigationToggle
78
109
  })]
79
- });
110
+ }));
80
111
  };
81
112
  process.env.NODE_ENV !== "production" ? HvVerticalNavigation.propTypes = {
82
- /**
83
- * Id to be applied to the root node of the panel.
84
- */
85
- id: _propTypes.default.string,
86
113
  /**
87
114
  * Called when a menu item is clicked.
88
115
  */
89
116
  onNavigationChange: _propTypes.default.func,
117
+ /**
118
+ * Called when the collapse / expand button is clicked.
119
+ */
120
+ onToggleExpanded: _propTypes.default.func,
90
121
  /**
91
122
  * An array containing the data for each menu item.
92
123
  *
@@ -105,14 +136,14 @@ process.env.NODE_ENV !== "production" ? HvVerticalNavigation.propTypes = {
105
136
  href: _propTypes.default.string,
106
137
  target: _propTypes.default.string
107
138
  })).isRequired,
108
- /**
109
- * Text to be displayed in the collpase area when the panel is expanded.
110
- */
111
- collapseLabel: _propTypes.default.string,
112
139
  /**
113
140
  * The ID of the selected page.
114
141
  */
115
142
  selected: _propTypes.default.string,
143
+ /**
144
+ * Boolean value stating if the panel should be collapsed or expanded.
145
+ */
146
+ expanded: _propTypes.default.bool,
116
147
  /**
117
148
  * The top value where the panel will be rendered. Default is 44 as it is the height of the Header component.
118
149
  */
@@ -131,7 +162,6 @@ process.env.NODE_ENV !== "production" ? HvVerticalNavigation.propTypes = {
131
162
  position: _propTypes.default.oneOf(["static", "relative", "fixed", "absolute", "sticky"])
132
163
  } : void 0;
133
164
  HvVerticalNavigation.defaultProps = {
134
- collapseLabel: "Collapse",
135
165
  topPosition: 44,
136
166
  expandedPanelWidth: 300,
137
167
  collapsedPanelWidth: 52,
@@ -1 +1 @@
1
- {"version":3,"file":"VerticalNavigation.js","names":["HvVerticalNavigation","id","onNavigationChange","data","selected","collapseLabel","topPosition","expandedPanelWidth","collapsedPanelWidth","position","classes","useStyles","useState","isExpanded","setIsExpanded","handleVerticalNavigationChange","event","item","handleExpandToggle","prevState","clsx","panel","panelExpanded","panelCollapsed","setId","collapseButton","expandButton","collapseTextContainer","propTypes","PropTypes","string","func","arrayOf","shape","isRequired","label","icon","node","array","href","target","number","oneOf","defaultProps","withStyles","name"],"sources":["../../src/VerticalNavigation/VerticalNavigation.js"],"sourcesContent":["import React, { useState } from \"react\";\nimport { withStyles } from \"@mui/styles\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\n\nimport {\n HvVerticalNavigation as HvVerticalNavigationCore,\n HvVerticalNavigationTree,\n HvVerticalNavigationActions,\n HvButton,\n setId,\n} from \"@hitachivantara/uikit-react-core\";\nimport { Backwards, Forwards } from \"@hitachivantara/uikit-react-icons\";\n\nimport useStyles from \"./styles\";\n\nconst HvVerticalNavigation = ({\n id,\n onNavigationChange,\n data,\n selected,\n collapseLabel,\n\n topPosition,\n expandedPanelWidth,\n collapsedPanelWidth,\n position,\n}) => {\n const classes = useStyles({ topPosition, expandedPanelWidth, collapsedPanelWidth, position })();\n\n const [isExpanded, setIsExpanded] = useState(true);\n\n const handleVerticalNavigationChange = (event, item) => {\n onNavigationChange?.(event, item);\n };\n\n const handleExpandToggle = () => {\n setIsExpanded((prevState) => !prevState);\n };\n\n return (\n <HvVerticalNavigationCore\n className={clsx(classes.panel, {\n [classes.panelExpanded]: isExpanded,\n [classes.panelCollapsed]: !isExpanded,\n })}\n >\n <HvVerticalNavigationTree\n collapsible\n data={data}\n selected={selected}\n onChange={handleVerticalNavigationChange}\n />\n\n <HvVerticalNavigationActions>\n <HvButton\n id={setId(id, \"button-toggle\")}\n className={clsx({\n [classes.collapseButton]: isExpanded,\n [classes.expandButton]: !isExpanded,\n })}\n category=\"ghost\"\n startIcon={isExpanded ? <Backwards iconSize=\"XS\" /> : <Forwards iconSize=\"XS\" />}\n onClick={handleExpandToggle}\n >\n {isExpanded && <span className={classes.collapseTextContainer}>{collapseLabel}</span>}\n </HvButton>\n </HvVerticalNavigationActions>\n </HvVerticalNavigationCore>\n );\n};\n\nHvVerticalNavigation.propTypes = {\n /**\n * Id to be applied to the root node of the panel.\n */\n id: PropTypes.string,\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 * icon - the icon component.\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 * Text to be displayed in the collpase area when the panel is expanded.\n */\n collapseLabel: 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 expandedPanelWidth: PropTypes.number,\n /**\n * The width of the panel when collapsed. Default vlaue is 52.\n */\n collapsedPanelWidth: PropTypes.number,\n /**\n * Position of the component.\n */\n position: PropTypes.oneOf([\"static\", \"relative\", \"fixed\", \"absolute\", \"sticky\"]),\n};\n\nHvVerticalNavigation.defaultProps = {\n collapseLabel: \"Collapse\",\n topPosition: 44,\n expandedPanelWidth: 300,\n collapsedPanelWidth: 52,\n position: \"fixed\",\n};\n\nexport default withStyles(useStyles, { name: \"HvVerticalNavigation\" })(HvVerticalNavigation);\n"],"mappings":"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"}
1
+ {"version":3,"file":"VerticalNavigation.js","names":["HvVerticalNavigation","onNavigationChange","onToggleExpanded","data","selected","expanded","topPosition","expandedPanelWidth","collapsedPanelWidth","position","others","classes","useStyles","noSubData","map","dataToRemove","rest","useState","pathToItem","expandedItems","setExpandedItems","selectedTopParent","findRootParentById","id","handleVerticalNavigationChange","event","item","fullItem","findItemById","length","prevState","handleVerticalNavigationToggle","currentExpandedItems","handleExpandToggle","clsx","panel","panelExpanded","panelCollapsed","toggleCollapsePanel","propTypes","PropTypes","func","arrayOf","shape","string","isRequired","label","icon","node","array","href","target","bool","number","oneOf","defaultProps","withStyles","name"],"sources":["../../src/VerticalNavigation/VerticalNavigation.js"],"sourcesContent":["import React, { useState } from \"react\";\nimport { withStyles } from \"@mui/styles\";\nimport PropTypes from \"prop-types\";\nimport clsx from \"clsx\";\n\nimport {\n HvVerticalNavigation as HvVerticalNavigationCore,\n HvVerticalNavigationTree,\n HvButton,\n HvContainer,\n} from \"@hitachivantara/uikit-react-core\";\nimport { Backwards, Forwards } from \"@hitachivantara/uikit-react-icons\";\n\nimport useStyles from \"./styles\";\nimport { findRootParentById, findItemById, pathToItem } from \"./utils\";\n\nconst HvVerticalNavigation = ({\n onNavigationChange,\n onToggleExpanded,\n data,\n selected,\n expanded,\n topPosition,\n expandedPanelWidth,\n collapsedPanelWidth,\n position,\n\n ...others\n}) => {\n const classes = useStyles({ topPosition, expandedPanelWidth, collapsedPanelWidth, position })();\n\n const noSubData = data.map(({ data: dataToRemove, ...rest }) => rest);\n\n const [expandedItems, setExpandedItems] = useState(pathToItem(data, selected));\n\n const selectedTopParent = findRootParentById(data, selected)?.id;\n\n const handleVerticalNavigationChange = (event, item) => {\n // This need to be done because the item recieved on the callback is missing the original data object\n const fullItem = findItemById(data, item.id);\n\n if (!expanded && fullItem.data && fullItem.data.length > 0) {\n setExpandedItems((prevState) => [...prevState, item.id]);\n onToggleExpanded(true);\n } else {\n onNavigationChange?.(event, item);\n }\n };\n\n const handleVerticalNavigationToggle = (event, currentExpandedItems) => {\n setExpandedItems(currentExpandedItems);\n };\n\n const handleExpandToggle = () => {\n onToggleExpanded(!expanded);\n };\n\n return (\n <HvVerticalNavigationCore\n className={clsx(classes.panel, {\n [classes.panelExpanded]: expanded,\n [classes.panelCollapsed]: !expanded,\n })}\n {...others}\n >\n <HvContainer className={`${classes.toggleCollapsePanel}`}>\n <HvButton icon onClick={handleExpandToggle}>\n {expanded ? <Backwards iconSize=\"XS\" /> : <Forwards iconSize=\"XS\" />}\n </HvButton>\n </HvContainer>\n\n <HvVerticalNavigationTree\n collapsible\n expanded={expandedItems}\n data={expanded ? data : noSubData}\n selected={expanded ? selected : selectedTopParent}\n onChange={handleVerticalNavigationChange}\n onToggle={handleVerticalNavigationToggle}\n />\n </HvVerticalNavigationCore>\n );\n};\n\nHvVerticalNavigation.propTypes = {\n /**\n * Called when a menu item is clicked.\n */\n onNavigationChange: PropTypes.func,\n /**\n * Called when the collapse / expand button is clicked.\n */\n onToggleExpanded: 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 * icon - the icon component.\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 ID of the selected page.\n */\n selected: PropTypes.string,\n /**\n * Boolean value stating if the panel should be collapsed or expanded.\n */\n expanded: PropTypes.bool,\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 expandedPanelWidth: PropTypes.number,\n /**\n * The width of the panel when collapsed. Default vlaue is 52.\n */\n collapsedPanelWidth: PropTypes.number,\n /**\n * Position of the component.\n */\n position: PropTypes.oneOf([\"static\", \"relative\", \"fixed\", \"absolute\", \"sticky\"]),\n};\n\nHvVerticalNavigation.defaultProps = {\n topPosition: 44,\n expandedPanelWidth: 300,\n collapsedPanelWidth: 52,\n position: \"fixed\",\n};\n\nexport default withStyles(useStyles, { name: \"HvVerticalNavigation\" })(HvVerticalNavigation);\n"],"mappings":"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"}
@@ -1,25 +1,15 @@
1
1
  "use strict";
2
2
 
3
- require("core-js/modules/es.object.keys.js");
4
- require("core-js/modules/es.symbol.js");
5
- require("core-js/modules/es.array.filter.js");
6
- require("core-js/modules/es.object.to-string.js");
7
- require("core-js/modules/es.object.get-own-property-descriptor.js");
8
- require("core-js/modules/web.dom-collections.for-each.js");
9
- require("core-js/modules/es.object.get-own-property-descriptors.js");
10
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
11
3
  Object.defineProperty(exports, "__esModule", {
12
4
  value: true
13
5
  });
14
6
  exports.default = void 0;
15
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
16
7
  var _styles = require("@mui/styles");
17
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
18
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
8
  var styles = function styles(props) {
20
9
  return (0, _styles.makeStyles)(function (theme) {
21
10
  return {
22
11
  panel: {
12
+ justifyContent: "flex-start",
23
13
  position: props.position,
24
14
  top: props.topPosition,
25
15
  left: 0,
@@ -28,22 +18,20 @@ var styles = function styles(props) {
28
18
  panelExpanded: {
29
19
  width: props.expandedPanelWidth,
30
20
  height: "calc(100vh - ".concat(props.topPosition, "px)"),
31
- // This is for the bottom actions
32
- "& > :not(:first-child) > button > span": {
33
- marginBottom: 0
21
+ // To remove the top border of the navigation section
22
+ "& > :not(:first-child)": {
23
+ borderTop: "none"
34
24
  }
35
25
  },
36
26
  panelCollapsed: {
37
27
  width: props.collapsedPanelWidth,
38
28
  height: "calc(100vh - ".concat(props.topPosition, "px)"),
39
- // This is for the bottom actions
29
+ // Customize the navigation section
40
30
  "& > :not(:first-child)": {
41
- padding: theme.hvSpacing("xs", "xs", "sm", "xs"),
42
- "& > button > span": {
43
- marginLeft: 0
44
- }
31
+ borderTop: "none",
32
+ padding: theme.hvSpacing("xs", "xs", "sm", "xs")
45
33
  },
46
- // This is for the top menu items
34
+ // Customize the collapse / expand
47
35
  "& > :first-child:not(:last-child)": {
48
36
  padding: theme.hvSpacing("sm", "xs", "xs", "xs")
49
37
  },
@@ -51,22 +39,9 @@ var styles = function styles(props) {
51
39
  marginLeft: "6px"
52
40
  }
53
41
  },
54
- collapseButton: _objectSpread(_objectSpread({}, theme.hv.typography.normalText), {}, {
55
- width: "100%",
56
- "& > span": {
57
- justifyContent: "flex-start"
58
- }
59
- }),
60
- expandButton: {
61
- width: "100%",
62
- minWidth: "unset",
63
- "& > span > span": {
64
- marginLeft: "unset"
65
- }
66
- },
67
- collapseTextContainer: {
68
- width: "100%",
69
- textAlign: "left"
42
+ toggleCollapsePanel: {
43
+ display: "flex",
44
+ justifyContent: "flex-end"
70
45
  }
71
46
  };
72
47
  });
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","names":["styles","props","makeStyles","theme","panel","position","top","topPosition","left","zIndex","panelExpanded","width","expandedPanelWidth","height","marginBottom","panelCollapsed","collapsedPanelWidth","padding","hvSpacing","marginLeft","collapseButton","hv","typography","normalText","justifyContent","expandButton","minWidth","collapseTextContainer","textAlign"],"sources":["../../src/VerticalNavigation/styles.js"],"sourcesContent":["import { makeStyles } from \"@mui/styles\";\n\nconst styles = (props) =>\n makeStyles((theme) => ({\n panel: {\n position: props.position,\n top: props.topPosition,\n left: 0,\n zIndex: 1100,\n },\n panelExpanded: {\n width: props.expandedPanelWidth,\n height: `calc(100vh - ${props.topPosition}px)`,\n\n // This is for the bottom actions\n \"& > :not(:first-child) > button > span\": {\n marginBottom: 0,\n },\n },\n panelCollapsed: {\n width: props.collapsedPanelWidth,\n height: `calc(100vh - ${props.topPosition}px)`,\n\n // This is for the bottom actions\n \"& > :not(:first-child)\": {\n padding: theme.hvSpacing(\"xs\", \"xs\", \"sm\", \"xs\"),\n\n \"& > button > span\": {\n marginLeft: 0,\n },\n },\n // This is for the top menu items\n \"& > :first-child:not(:last-child)\": {\n padding: theme.hvSpacing(\"sm\", \"xs\", \"xs\", \"xs\"),\n },\n\n \"& > nav > ul > li > div > div\": {\n marginLeft: \"6px\",\n },\n },\n collapseButton: {\n ...theme.hv.typography.normalText,\n width: \"100%\",\n\n \"& > span\": {\n justifyContent: \"flex-start\",\n },\n },\n expandButton: {\n width: \"100%\",\n minWidth: \"unset\",\n\n \"& > span > span\": {\n marginLeft: \"unset\",\n },\n },\n collapseTextContainer: {\n width: \"100%\",\n textAlign: \"left\",\n },\n }));\n\nexport default styles;\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAyC;AAAA;AAEzC,IAAMA,MAAM,GAAG,SAATA,MAAM,CAAIC,KAAK;EAAA,OACnB,IAAAC,kBAAU,EAAC,UAACC,KAAK;IAAA,OAAM;MACrBC,KAAK,EAAE;QACLC,QAAQ,EAAEJ,KAAK,CAACI,QAAQ;QACxBC,GAAG,EAAEL,KAAK,CAACM,WAAW;QACtBC,IAAI,EAAE,CAAC;QACPC,MAAM,EAAE;MACV,CAAC;MACDC,aAAa,EAAE;QACbC,KAAK,EAAEV,KAAK,CAACW,kBAAkB;QAC/BC,MAAM,yBAAkBZ,KAAK,CAACM,WAAW,QAAK;QAE9C;QACA,wCAAwC,EAAE;UACxCO,YAAY,EAAE;QAChB;MACF,CAAC;MACDC,cAAc,EAAE;QACdJ,KAAK,EAAEV,KAAK,CAACe,mBAAmB;QAChCH,MAAM,yBAAkBZ,KAAK,CAACM,WAAW,QAAK;QAE9C;QACA,wBAAwB,EAAE;UACxBU,OAAO,EAAEd,KAAK,CAACe,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;UAEhD,mBAAmB,EAAE;YACnBC,UAAU,EAAE;UACd;QACF,CAAC;QACD;QACA,mCAAmC,EAAE;UACnCF,OAAO,EAAEd,KAAK,CAACe,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;QACjD,CAAC;QAED,+BAA+B,EAAE;UAC/BC,UAAU,EAAE;QACd;MACF,CAAC;MACDC,cAAc,kCACTjB,KAAK,CAACkB,EAAE,CAACC,UAAU,CAACC,UAAU;QACjCZ,KAAK,EAAE,MAAM;QAEb,UAAU,EAAE;UACVa,cAAc,EAAE;QAClB;MAAC,EACF;MACDC,YAAY,EAAE;QACZd,KAAK,EAAE,MAAM;QACbe,QAAQ,EAAE,OAAO;QAEjB,iBAAiB,EAAE;UACjBP,UAAU,EAAE;QACd;MACF,CAAC;MACDQ,qBAAqB,EAAE;QACrBhB,KAAK,EAAE,MAAM;QACbiB,SAAS,EAAE;MACb;IACF,CAAC;EAAA,CAAC,CAAC;AAAA;AAAC,eAES5B,MAAM;AAAA"}
1
+ {"version":3,"file":"styles.js","names":["styles","props","makeStyles","theme","panel","justifyContent","position","top","topPosition","left","zIndex","panelExpanded","width","expandedPanelWidth","height","borderTop","panelCollapsed","collapsedPanelWidth","padding","hvSpacing","marginLeft","toggleCollapsePanel","display"],"sources":["../../src/VerticalNavigation/styles.js"],"sourcesContent":["import { makeStyles } from \"@mui/styles\";\n\nconst styles = (props) =>\n makeStyles((theme) => ({\n panel: {\n justifyContent: \"flex-start\",\n position: props.position,\n top: props.topPosition,\n left: 0,\n zIndex: 1100,\n },\n panelExpanded: {\n width: props.expandedPanelWidth,\n height: `calc(100vh - ${props.topPosition}px)`,\n\n // To remove the top border of the navigation section\n \"& > :not(:first-child)\": {\n borderTop: \"none\",\n },\n },\n panelCollapsed: {\n width: props.collapsedPanelWidth,\n height: `calc(100vh - ${props.topPosition}px)`,\n\n // Customize the navigation section\n \"& > :not(:first-child)\": {\n borderTop: \"none\",\n padding: theme.hvSpacing(\"xs\", \"xs\", \"sm\", \"xs\"),\n },\n\n // Customize the collapse / expand\n \"& > :first-child:not(:last-child)\": {\n padding: theme.hvSpacing(\"sm\", \"xs\", \"xs\", \"xs\"),\n },\n\n \"& > nav > ul > li > div > div\": {\n marginLeft: \"6px\",\n },\n },\n\n toggleCollapsePanel: {\n display: \"flex\",\n justifyContent: \"flex-end\",\n },\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,KAAK,EAAE;QACLC,cAAc,EAAE,YAAY;QAC5BC,QAAQ,EAAEL,KAAK,CAACK,QAAQ;QACxBC,GAAG,EAAEN,KAAK,CAACO,WAAW;QACtBC,IAAI,EAAE,CAAC;QACPC,MAAM,EAAE;MACV,CAAC;MACDC,aAAa,EAAE;QACbC,KAAK,EAAEX,KAAK,CAACY,kBAAkB;QAC/BC,MAAM,yBAAkBb,KAAK,CAACO,WAAW,QAAK;QAE9C;QACA,wBAAwB,EAAE;UACxBO,SAAS,EAAE;QACb;MACF,CAAC;MACDC,cAAc,EAAE;QACdJ,KAAK,EAAEX,KAAK,CAACgB,mBAAmB;QAChCH,MAAM,yBAAkBb,KAAK,CAACO,WAAW,QAAK;QAE9C;QACA,wBAAwB,EAAE;UACxBO,SAAS,EAAE,MAAM;UACjBG,OAAO,EAAEf,KAAK,CAACgB,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;QACjD,CAAC;QAED;QACA,mCAAmC,EAAE;UACnCD,OAAO,EAAEf,KAAK,CAACgB,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;QACjD,CAAC;QAED,+BAA+B,EAAE;UAC/BC,UAAU,EAAE;QACd;MACF,CAAC;MAEDC,mBAAmB,EAAE;QACnBC,OAAO,EAAE,MAAM;QACfjB,cAAc,EAAE;MAClB;IACF,CAAC;EAAA,CAAC,CAAC;AAAA;AAAC,eAESL,MAAM;AAAA"}
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.pathToItem = exports.findRootParentById = exports.findItemById = void 0;
8
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
+ require("core-js/modules/es.object.to-string.js");
10
+ require("core-js/modules/es.array.find.js");
11
+ /**
12
+ * Receives the navigation data and the id of the item from which we want to get the root parent.
13
+ *
14
+ * @param {NavigationItem[]} data - The navigation data structure.
15
+ * @param {string} itemId - The item id.
16
+ * @returns The item that is the root parent of the received item.
17
+ */
18
+ var findRootParentById = function findRootParentById(data, itemId) {
19
+ return data.reduce(function (parent, item) {
20
+ if (parent) {
21
+ return parent;
22
+ }
23
+ if (item.id === itemId) {
24
+ return item;
25
+ }
26
+ if (item.data) {
27
+ var found = findRootParentById(item.data, itemId);
28
+ if (found) {
29
+ return item;
30
+ }
31
+ }
32
+ return null;
33
+ }, null);
34
+ };
35
+
36
+ /**
37
+ * Returns the complete item object from the data structure using the item id.
38
+ *
39
+ * @param {NavigationItem[]} data - The navigation data structure.
40
+ * @param {string} itemId - The item id.
41
+ * @returns The complete item object matching the received id.
42
+ */
43
+ exports.findRootParentById = findRootParentById;
44
+ var findItemById = function findItemById(data, itemId) {
45
+ return data.find(function (item) {
46
+ if (item.id === itemId) {
47
+ return true;
48
+ }
49
+ if (item.data && item.data.length > 0) {
50
+ var foundItem = findItemById(item.data, itemId);
51
+ if (foundItem) {
52
+ return true;
53
+ }
54
+ }
55
+ return false;
56
+ });
57
+ };
58
+
59
+ /**
60
+ * Returns an array with all the parent item ids up until the target item is reached.
61
+ *
62
+ * @param {NavigationItem[]} data - The navigation data structure.
63
+ * @param {string} itemId - The item id.
64
+ * @returns An array with all the parent item ids
65
+ */
66
+ exports.findItemById = findItemById;
67
+ var pathToItem = function pathToItem(data, itemId) {
68
+ var path = [];
69
+ if (data != null && data.length > 0) {
70
+ // eslint-disable-next-line no-plusplus
71
+ for (var i = 0; i < data.length; ++i) {
72
+ var item = data[i];
73
+ if (item.id === itemId) {
74
+ path.push(item.id);
75
+ break;
76
+ }
77
+ var subPaths = pathToItem(item.data, itemId);
78
+ if (subPaths.length > 0) {
79
+ path.push(item.id);
80
+ path.push.apply(path, (0, _toConsumableArray2.default)(subPaths));
81
+ break;
82
+ }
83
+ }
84
+ }
85
+ return path;
86
+ };
87
+ exports.pathToItem = pathToItem;
88
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","names":["findRootParentById","data","itemId","reduce","parent","item","id","found","findItemById","find","length","foundItem","pathToItem","path","i","push","subPaths"],"sources":["../../src/VerticalNavigation/utils.js"],"sourcesContent":["/**\n * Receives the navigation data and the id of the item from which we want to get the root parent.\n *\n * @param {NavigationItem[]} data - The navigation data structure.\n * @param {string} itemId - The item id.\n * @returns The item that is the root parent of the received item.\n */\nconst findRootParentById = (data, itemId) => {\n return data.reduce((parent, item) => {\n if (parent) {\n return parent;\n }\n\n if (item.id === itemId) {\n return item;\n }\n\n if (item.data) {\n const found = findRootParentById(item.data, itemId);\n if (found) {\n return item;\n }\n }\n return null;\n }, null);\n};\n\n/**\n * Returns the complete item object from the data structure using the item id.\n *\n * @param {NavigationItem[]} data - The navigation data structure.\n * @param {string} itemId - The item id.\n * @returns The complete item object matching the received id.\n */\nconst findItemById = (data, itemId) => {\n return data.find((item) => {\n if (item.id === itemId) {\n return true;\n }\n\n if (item.data && item.data.length > 0) {\n const foundItem = findItemById(item.data, itemId);\n if (foundItem) {\n return true;\n }\n }\n return false;\n });\n};\n\n/**\n * Returns an array with all the parent item ids up until the target item is reached.\n *\n * @param {NavigationItem[]} data - The navigation data structure.\n * @param {string} itemId - The item id.\n * @returns An array with all the parent item ids\n */\nconst pathToItem = (data, itemId) => {\n const path = [];\n\n if (data != null && data.length > 0) {\n // eslint-disable-next-line no-plusplus\n for (let i = 0; i < data.length; ++i) {\n const item = data[i];\n if (item.id === itemId) {\n path.push(item.id);\n break;\n }\n\n const subPaths = pathToItem(item.data, itemId);\n if (subPaths.length > 0) {\n path.push(item.id);\n path.push(...subPaths);\n break;\n }\n }\n }\n\n return path;\n};\n\nexport { findRootParentById, findItemById, pathToItem };\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAkB,CAAIC,IAAI,EAAEC,MAAM,EAAK;EAC3C,OAAOD,IAAI,CAACE,MAAM,CAAC,UAACC,MAAM,EAAEC,IAAI,EAAK;IACnC,IAAID,MAAM,EAAE;MACV,OAAOA,MAAM;IACf;IAEA,IAAIC,IAAI,CAACC,EAAE,KAAKJ,MAAM,EAAE;MACtB,OAAOG,IAAI;IACb;IAEA,IAAIA,IAAI,CAACJ,IAAI,EAAE;MACb,IAAMM,KAAK,GAAGP,kBAAkB,CAACK,IAAI,CAACJ,IAAI,EAAEC,MAAM,CAAC;MACnD,IAAIK,KAAK,EAAE;QACT,OAAOF,IAAI;MACb;IACF;IACA,OAAO,IAAI;EACb,CAAC,EAAE,IAAI,CAAC;AACV,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAOA,IAAMG,YAAY,GAAG,SAAfA,YAAY,CAAIP,IAAI,EAAEC,MAAM,EAAK;EACrC,OAAOD,IAAI,CAACQ,IAAI,CAAC,UAACJ,IAAI,EAAK;IACzB,IAAIA,IAAI,CAACC,EAAE,KAAKJ,MAAM,EAAE;MACtB,OAAO,IAAI;IACb;IAEA,IAAIG,IAAI,CAACJ,IAAI,IAAII,IAAI,CAACJ,IAAI,CAACS,MAAM,GAAG,CAAC,EAAE;MACrC,IAAMC,SAAS,GAAGH,YAAY,CAACH,IAAI,CAACJ,IAAI,EAAEC,MAAM,CAAC;MACjD,IAAIS,SAAS,EAAE;QACb,OAAO,IAAI;MACb;IACF;IACA,OAAO,KAAK;EACd,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AANA;AAOA,IAAMC,UAAU,GAAG,SAAbA,UAAU,CAAIX,IAAI,EAAEC,MAAM,EAAK;EACnC,IAAMW,IAAI,GAAG,EAAE;EAEf,IAAIZ,IAAI,IAAI,IAAI,IAAIA,IAAI,CAACS,MAAM,GAAG,CAAC,EAAE;IACnC;IACA,KAAK,IAAII,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGb,IAAI,CAACS,MAAM,EAAE,EAAEI,CAAC,EAAE;MACpC,IAAMT,IAAI,GAAGJ,IAAI,CAACa,CAAC,CAAC;MACpB,IAAIT,IAAI,CAACC,EAAE,KAAKJ,MAAM,EAAE;QACtBW,IAAI,CAACE,IAAI,CAACV,IAAI,CAACC,EAAE,CAAC;QAClB;MACF;MAEA,IAAMU,QAAQ,GAAGJ,UAAU,CAACP,IAAI,CAACJ,IAAI,EAAEC,MAAM,CAAC;MAC9C,IAAIc,QAAQ,CAACN,MAAM,GAAG,CAAC,EAAE;QACvBG,IAAI,CAACE,IAAI,CAACV,IAAI,CAACC,EAAE,CAAC;QAClBO,IAAI,CAACE,IAAI,OAATF,IAAI,mCAASG,QAAQ,EAAC;QACtB;MACF;IACF;EACF;EAEA,OAAOH,IAAI;AACb,CAAC;AAAC"}
package/dist/index.d.ts CHANGED
@@ -27,3 +27,6 @@ export * from "./Wizard";
27
27
 
28
28
  export { default as HvVerticalNavigation } from "./VerticalNavigation";
29
29
  export * from "./VerticalNavigation";
30
+
31
+ export { default as HvNavigationSlider } from "./NavigationSlider";
32
+ export * from "./NavigationSlider";
package/dist/index.js CHANGED
@@ -23,7 +23,8 @@ var _exportNames = {
23
23
  HvStepNavigation: true,
24
24
  HvTimeAgo: true,
25
25
  HvWizard: true,
26
- HvVerticalNavigation: true
26
+ HvVerticalNavigation: true,
27
+ HvNavigationSlider: true
27
28
  };
28
29
  Object.defineProperty(exports, "HvColorPicker", {
29
30
  enumerable: true,
@@ -55,6 +56,12 @@ Object.defineProperty(exports, "HvNavigationAnchors", {
55
56
  return _NavigationAnchors.default;
56
57
  }
57
58
  });
59
+ Object.defineProperty(exports, "HvNavigationSlider", {
60
+ enumerable: true,
61
+ get: function get() {
62
+ return _NavigationSlider.default;
63
+ }
64
+ });
58
65
  Object.defineProperty(exports, "HvNotificationPanel", {
59
66
  enumerable: true,
60
67
  get: function get() {
@@ -117,6 +124,7 @@ Object.keys(_Wizard).forEach(function (key) {
117
124
  });
118
125
  });
119
126
  var _VerticalNavigation = _interopRequireDefault(require("./VerticalNavigation"));
127
+ var _NavigationSlider = _interopRequireDefault(require("./NavigationSlider"));
120
128
  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); }
121
129
  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; }
122
130
  //# sourceMappingURL=index.js.map