@apexcura/ui-components 0.0.16-Beta50 → 0.0.16-Beta52

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/index.js CHANGED
@@ -778,21 +778,22 @@ var import_antd11 = require("antd");
778
778
  var { Sider } = import_antd11.Layout;
779
779
  var Sidebar = (props) => {
780
780
  const [collapsed, setCollapsed] = (0, import_react16.useState)(false);
781
- const [selectedIndex, setSelectedIndex] = (0, import_react16.useState)(null);
782
- const handleChange = (item, index) => {
783
- setSelectedIndex(index);
781
+ const [selectedPath, setSelectedPath] = (0, import_react16.useState)([]);
782
+ const handleChange = (item, keyPath) => {
783
+ setSelectedPath(keyPath);
784
784
  if (props.onChange) {
785
785
  props.onChange(item);
786
786
  }
787
787
  };
788
788
  function getItem(label, key, icon, children, item) {
789
+ const isSelected = selectedPath.includes(key.toString());
789
790
  return {
790
791
  key,
791
792
  icon: icon ? /* @__PURE__ */ import_react16.default.createElement(
792
793
  "span",
793
794
  {
794
795
  className: props.iconsClassName,
795
- style: selectedIndex === key ? {
796
+ style: isSelected ? {
796
797
  filter: "brightness(0) saturate(100%) invert(22%) sepia(87%) saturate(7476%) hue-rotate(209deg) brightness(97%) contrast(107%)"
797
798
  } : {}
798
799
  },
@@ -800,8 +801,7 @@ var Sidebar = (props) => {
800
801
  ) : null,
801
802
  children,
802
803
  label,
803
- onClick: children ? void 0 : () => handleChange(item, key.toString())
804
- // Only set onClick for leaf nodes
804
+ onClick: children ? void 0 : () => handleChange(item, key.toString().split("-"))
805
805
  };
806
806
  }
807
807
  function mapItems(items2, parentKey = "") {
@@ -828,7 +828,7 @@ var Sidebar = (props) => {
828
828
  },
829
829
  /* @__PURE__ */ import_react16.default.createElement("div", { className: "demo-logo-vertical" }),
830
830
  /* @__PURE__ */ import_react16.default.createElement("img", { src: props.img, alt: "", className: props.imgClassName }),
831
- /* @__PURE__ */ import_react16.default.createElement(import_antd11.Menu, { mode: "inline", items, selectedKeys: [selectedIndex] })
831
+ /* @__PURE__ */ import_react16.default.createElement(import_antd11.Menu, { mode: "inline", items, selectedKeys: [selectedPath[selectedPath.length - 1] || ""] })
832
832
  ));
833
833
  };
834
834
 
package/dist/index.mjs CHANGED
@@ -707,21 +707,22 @@ import { Layout, Menu } from "antd";
707
707
  var { Sider } = Layout;
708
708
  var Sidebar = (props) => {
709
709
  const [collapsed, setCollapsed] = useState5(false);
710
- const [selectedIndex, setSelectedIndex] = useState5(null);
711
- const handleChange = (item, index) => {
712
- setSelectedIndex(index);
710
+ const [selectedPath, setSelectedPath] = useState5([]);
711
+ const handleChange = (item, keyPath) => {
712
+ setSelectedPath(keyPath);
713
713
  if (props.onChange) {
714
714
  props.onChange(item);
715
715
  }
716
716
  };
717
717
  function getItem(label, key, icon, children, item) {
718
+ const isSelected = selectedPath.includes(key.toString());
718
719
  return {
719
720
  key,
720
721
  icon: icon ? /* @__PURE__ */ React15.createElement(
721
722
  "span",
722
723
  {
723
724
  className: props.iconsClassName,
724
- style: selectedIndex === key ? {
725
+ style: isSelected ? {
725
726
  filter: "brightness(0) saturate(100%) invert(22%) sepia(87%) saturate(7476%) hue-rotate(209deg) brightness(97%) contrast(107%)"
726
727
  } : {}
727
728
  },
@@ -729,8 +730,7 @@ var Sidebar = (props) => {
729
730
  ) : null,
730
731
  children,
731
732
  label,
732
- onClick: children ? void 0 : () => handleChange(item, key.toString())
733
- // Only set onClick for leaf nodes
733
+ onClick: children ? void 0 : () => handleChange(item, key.toString().split("-"))
734
734
  };
735
735
  }
736
736
  function mapItems(items2, parentKey = "") {
@@ -757,7 +757,7 @@ var Sidebar = (props) => {
757
757
  },
758
758
  /* @__PURE__ */ React15.createElement("div", { className: "demo-logo-vertical" }),
759
759
  /* @__PURE__ */ React15.createElement("img", { src: props.img, alt: "", className: props.imgClassName }),
760
- /* @__PURE__ */ React15.createElement(Menu, { mode: "inline", items, selectedKeys: [selectedIndex] })
760
+ /* @__PURE__ */ React15.createElement(Menu, { mode: "inline", items, selectedKeys: [selectedPath[selectedPath.length - 1] || ""] })
761
761
  ));
762
762
  };
763
763
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apexcura/ui-components",
3
- "version": "0.0.16-Beta50",
3
+ "version": "0.0.16-Beta52",
4
4
  "description": "Apex cura React components library",
5
5
  "keywords": [
6
6
  "apex cura",