@axiom-lattice/react-sdk 2.1.124 → 2.1.125

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.mjs CHANGED
@@ -6409,6 +6409,24 @@ var Menu = ({
6409
6409
  const handleCloseDrawer = useCallback19((itemId) => {
6410
6410
  setDrawerStates((prev) => ({ ...prev, [itemId]: false }));
6411
6411
  }, []);
6412
+ const openDrawerIds = useMemo6(
6413
+ () => items.filter((item) => item.type === "drawer" && drawerStates[item.id]).map((item) => item.id),
6414
+ [items, drawerStates]
6415
+ );
6416
+ useEffect20(() => {
6417
+ if (openDrawerIds.length === 0) return;
6418
+ const handlePointerDown = (e) => {
6419
+ const target = e.target;
6420
+ if (!target || typeof target.closest !== "function") return;
6421
+ openDrawerIds.forEach((id) => {
6422
+ if (!target.closest(`.menu-drawer-${id}`)) {
6423
+ handleCloseDrawer(id);
6424
+ }
6425
+ });
6426
+ };
6427
+ document.addEventListener("mousedown", handlePointerDown);
6428
+ return () => document.removeEventListener("mousedown", handlePointerDown);
6429
+ }, [openDrawerIds, handleCloseDrawer]);
6412
6430
  const handleToggleExpand = useCallback19(() => {
6413
6431
  if (!forceIconMode) {
6414
6432
  const newValue = !isIconView;
@@ -6553,6 +6571,7 @@ var Menu = ({
6553
6571
  items.filter((item) => item.type === "drawer").map((item) => /* @__PURE__ */ jsx20(
6554
6572
  Drawer,
6555
6573
  {
6574
+ rootClassName: `menu-drawer-${item.id}`,
6556
6575
  title: /* @__PURE__ */ jsxs9(
6557
6576
  "div",
6558
6577
  {