@open-mercato/ui 0.6.8-develop.7072.1.19c2a8bbe0 → 0.6.8-develop.7076.1.13d0af067b

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.
@@ -267,6 +267,12 @@ function resolveItemKey(item) {
267
267
  if (candidate && candidate.length > 0) return candidate;
268
268
  return item.href;
269
269
  }
270
+ function sidebarBlockPadding(compact) {
271
+ return `${compact ? "px-2" : "px-3"} transition-[padding] duration-200 ease-out`;
272
+ }
273
+ function sidebarInjectionWrapper(compact) {
274
+ return `${sidebarBlockPadding(compact)} empty:hidden`;
275
+ }
270
276
  function SerializedIcon({ markup }) {
271
277
  return /* @__PURE__ */ jsx("span", { "aria-hidden": "true", dangerouslySetInnerHTML: { __html: markup } });
272
278
  }
@@ -546,8 +552,9 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
546
552
  function renderSectionSidebar(sections, title, compact, hideHeader, hideSearch) {
547
553
  const sortedSections = [...sections].sort((a, b) => (a.order ?? 0) - (b.order ?? 0));
548
554
  const lastVisibleIndex = sortedSections.length - 1;
555
+ const blockPadding = sidebarBlockPadding(compact);
549
556
  return /* @__PURE__ */ jsxs("div", { className: "flex h-full flex-col gap-3", children: [
550
- !hideHeader && /* @__PURE__ */ jsx("div", { className: "mb-2", children: /* @__PURE__ */ jsxs(
557
+ !hideHeader && /* @__PURE__ */ jsx("div", { className: `mb-2 ${blockPadding}`, children: /* @__PURE__ */ jsxs(
551
558
  Link,
552
559
  {
553
560
  href: "/backend",
@@ -559,7 +566,7 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
559
566
  ]
560
567
  }
561
568
  ) }),
562
- !compact && !hideSearch && /* @__PURE__ */ jsx(
569
+ !compact && !hideSearch && /* @__PURE__ */ jsx("div", { className: blockPadding, children: /* @__PURE__ */ jsx(
563
570
  SearchInput,
564
571
  {
565
572
  value: navQuery,
@@ -569,8 +576,8 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
569
576
  clearLabel: t("appShell.searchNavClear", "Clear search"),
570
577
  className: "mb-2"
571
578
  }
572
- ),
573
- /* @__PURE__ */ jsx("div", { "data-sidebar-scroll": "true", className: `flex flex-1 flex-col gap-3 overflow-y-auto scrollbar-hide pr-1 ${compact ? "-ml-2 pl-2" : "-ml-3 pl-3"}`, children: /* @__PURE__ */ jsx("nav", { className: "flex flex-col gap-2", children: sortedSections.map((section, sectionIndex) => {
579
+ ) }),
580
+ /* @__PURE__ */ jsx("div", { "data-sidebar-scroll": "true", className: "flex flex-1 flex-col gap-3 overflow-x-hidden overflow-y-auto scrollbar-hide", children: /* @__PURE__ */ jsx("nav", { className: "flex flex-col gap-2", children: sortedSections.map((section, sectionIndex) => {
574
581
  const sectionNavQueryActive = hideSearch ? false : navQueryActive;
575
582
  const matchesItemQuery = (item) => {
576
583
  if (!sectionNavQueryActive) return true;
@@ -627,29 +634,38 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
627
634
  showChildren ? childItems.map((child) => renderSectionItem(child, depth + 1)) : null
628
635
  ] }, item.id);
629
636
  };
630
- return /* @__PURE__ */ jsxs("div", { children: [
631
- !compact && /* @__PURE__ */ jsxs(
632
- Button,
633
- {
634
- variant: "muted",
635
- onClick: () => toggleGroup(sectionKey),
636
- className: "w-full px-1 justify-between flex text-xs font-medium uppercase tracking-wider text-muted-foreground/70 py-1",
637
- "aria-expanded": open,
638
- children: [
639
- /* @__PURE__ */ jsx("span", { children: sectionLabel }),
640
- /* @__PURE__ */ jsx(Chevron, { open })
641
- ]
642
- }
643
- ),
644
- (open || compact) && /* @__PURE__ */ jsx("div", { className: `flex flex-col ${compact ? "items-center" : ""} gap-1`, children: sortedItems.map((item) => renderSectionItem(item)) }),
645
- sectionIndex !== lastVisibleIndex && /* @__PURE__ */ jsx("div", { className: `my-2 border-t ${compact ? "-ml-2 -mr-3" : "-ml-3 -mr-4"}` })
646
- ] }, section.id);
637
+ return /* @__PURE__ */ jsxs(
638
+ "div",
639
+ {
640
+ className: `${blockPadding} ${sectionIndex !== lastVisibleIndex ? "border-b pb-2" : ""}`,
641
+ "data-sidebar-group": "true",
642
+ children: [
643
+ !compact && /* @__PURE__ */ jsxs(
644
+ Button,
645
+ {
646
+ variant: "muted",
647
+ onClick: () => toggleGroup(sectionKey),
648
+ className: "w-full px-1 justify-between flex text-xs font-medium uppercase tracking-wider text-muted-foreground/70 py-1",
649
+ "aria-expanded": open,
650
+ children: [
651
+ /* @__PURE__ */ jsx("span", { children: sectionLabel }),
652
+ /* @__PURE__ */ jsx(Chevron, { open })
653
+ ]
654
+ }
655
+ ),
656
+ (open || compact) && /* @__PURE__ */ jsx("div", { className: `flex flex-col ${compact ? "items-center" : ""} gap-1`, children: sortedItems.map((item) => renderSectionItem(item)) })
657
+ ]
658
+ },
659
+ section.id
660
+ );
647
661
  }) }) })
648
662
  ] });
649
663
  }
650
664
  function renderSidebar(compact, hideHeader, forceMainOnly) {
665
+ const blockPadding = sidebarBlockPadding(compact);
666
+ const injectionWrapper = sidebarInjectionWrapper(compact);
651
667
  if (!isChromeReady && isChromeLoading) {
652
- return /* @__PURE__ */ jsxs("div", { className: "flex flex-col min-h-full gap-3", "data-testid": "backend-chrome-loading", children: [
668
+ return /* @__PURE__ */ jsxs("div", { className: `flex min-h-full flex-col gap-3 ${blockPadding}`, "data-testid": "backend-chrome-loading", children: [
653
669
  !hideHeader ? /* @__PURE__ */ jsx("div", { className: "mb-2", children: /* @__PURE__ */ jsxs(
654
670
  Link,
655
671
  {
@@ -662,7 +678,7 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
662
678
  ]
663
679
  }
664
680
  ) }) : null,
665
- /* @__PURE__ */ jsxs("div", { className: "flex flex-1 flex-col gap-3 pr-1", children: [
681
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-1 flex-col gap-3", children: [
666
682
  /* @__PURE__ */ jsxs("div", { className: "space-y-3", children: [
667
683
  /* @__PURE__ */ jsx("div", { className: "h-8 rounded bg-muted/50" }),
668
684
  /* @__PURE__ */ jsxs("div", { className: "space-y-2 pl-1", children: [
@@ -710,7 +726,7 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
710
726
  const isMobileVariant = !!hideHeader;
711
727
  const shouldRenderSidebarInjectionSpots = !isMobileVariant;
712
728
  return /* @__PURE__ */ jsxs("div", { className: "flex h-full flex-col gap-3", children: [
713
- !hideHeader && /* @__PURE__ */ jsx("div", { className: "mb-2", children: /* @__PURE__ */ jsxs(
729
+ !hideHeader && /* @__PURE__ */ jsx("div", { className: `mb-2 ${blockPadding}`, children: /* @__PURE__ */ jsxs(
714
730
  Link,
715
731
  {
716
732
  href: "/backend",
@@ -722,14 +738,14 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
722
738
  ]
723
739
  }
724
740
  ) }),
725
- shouldRenderSidebarInjectionSpots ? /* @__PURE__ */ jsx(
741
+ shouldRenderSidebarInjectionSpots ? /* @__PURE__ */ jsx("div", { className: injectionWrapper, "data-sidebar-injection-wrapper": "true", children: /* @__PURE__ */ jsx(
726
742
  InjectionSpot,
727
743
  {
728
744
  spotId: BACKEND_SIDEBAR_TOP_INJECTION_SPOT_ID,
729
745
  context: injectionContext
730
746
  }
731
- ) : null,
732
- !compact && /* @__PURE__ */ jsx(
747
+ ) }) : null,
748
+ !compact && /* @__PURE__ */ jsx("div", { className: blockPadding, children: /* @__PURE__ */ jsx(
733
749
  SearchInput,
734
750
  {
735
751
  value: navQuery,
@@ -739,8 +755,8 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
739
755
  clearLabel: t("appShell.searchNavClear", "Clear search"),
740
756
  className: "mb-2"
741
757
  }
742
- ),
743
- /* @__PURE__ */ jsx("div", { "data-sidebar-scroll": "true", className: `flex flex-1 flex-col gap-3 overflow-y-auto scrollbar-hide pr-1 ${compact ? "-ml-2 pl-2" : "-ml-3 pl-3"}`, children: (() => {
758
+ ) }),
759
+ /* @__PURE__ */ jsx("div", { "data-sidebar-scroll": "true", className: "flex flex-1 flex-col gap-3 overflow-x-hidden overflow-y-auto scrollbar-hide", children: (() => {
744
760
  const isSettingsPath = (href) => {
745
761
  if (href === "/backend/settings") return true;
746
762
  return resolvedSettingsPathPrefixes.some((prefix) => href.startsWith(prefix));
@@ -761,13 +777,13 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
761
777
  return -1;
762
778
  })();
763
779
  return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs("nav", { className: "flex flex-col gap-2", "data-testid": "sidebar", children: [
764
- shouldRenderSidebarInjectionSpots ? /* @__PURE__ */ jsx(
780
+ shouldRenderSidebarInjectionSpots ? /* @__PURE__ */ jsx("div", { className: injectionWrapper, "data-sidebar-injection-wrapper": "true", children: /* @__PURE__ */ jsx(
765
781
  InjectionSpot,
766
782
  {
767
783
  spotId: BACKEND_SIDEBAR_NAV_INJECTION_SPOT_ID,
768
784
  context: injectionContext
769
785
  }
770
- ) : null,
786
+ ) }) : null,
771
787
  mainGroups.map((g, gi) => {
772
788
  const groupId = resolveGroupKey(g);
773
789
  const open = navQueryActive ? true : openGroups[groupId] !== false;
@@ -779,87 +795,94 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
779
795
  return itemChildren.some((c) => matchesQuery(c.title));
780
796
  });
781
797
  if (visibleItems.length === 0) return null;
782
- return /* @__PURE__ */ jsxs("div", { children: [
783
- !compact && /* @__PURE__ */ jsxs(
784
- Button,
785
- {
786
- variant: "muted",
787
- onClick: () => toggleGroup(groupId),
788
- className: "w-full px-1 justify-between flex text-xs font-medium uppercase tracking-wider text-muted-foreground/70 py-1",
789
- "aria-expanded": open,
790
- children: [
791
- /* @__PURE__ */ jsx("span", { children: g.name }),
792
- /* @__PURE__ */ jsx(Chevron, { open })
793
- ]
794
- }
795
- ),
796
- (open || compact) && /* @__PURE__ */ jsx("div", { className: `flex flex-col ${compact ? "items-center" : ""} gap-1`, children: visibleItems.map((i) => {
797
- const allChildItems = (i.children ?? []).filter((child) => child.hidden !== true);
798
- const matchingChildItems = navQueryActive ? allChildItems.filter((c) => matchesQuery(c.title)) : allChildItems;
799
- const childItems = navQueryActive ? matchingChildItems : allChildItems;
800
- const showChildren = navQueryActive ? matchingChildItems.length > 0 : !!pathname && allChildItems.length > 0 && pathname.startsWith(i.href);
801
- const hasActiveChild = !!(pathname && allChildItems.some((c) => pathname.startsWith(c.href)));
802
- const isParentActive = pathname === i.href || !navQueryActive && showChildren && !hasActiveChild;
803
- const base = compact ? "w-10 h-10 justify-center" : "w-full px-3 py-2 gap-2";
804
- return /* @__PURE__ */ jsxs(React.Fragment, { children: [
805
- /* @__PURE__ */ jsxs(
806
- Link,
798
+ return /* @__PURE__ */ jsxs(
799
+ "div",
800
+ {
801
+ className: `${blockPadding} ${gi !== mainLastVisibleGroupIndex ? "border-b pb-2" : ""}`,
802
+ "data-sidebar-group": "true",
803
+ children: [
804
+ !compact && /* @__PURE__ */ jsxs(
805
+ Button,
807
806
  {
808
- href: i.href,
809
- className: `relative text-sm font-medium rounded-lg inline-flex items-center ${base} ${isParentActive ? "bg-muted text-foreground" : "text-muted-foreground hover:bg-muted"} ${i.enabled === false ? "pointer-events-none opacity-50" : ""}`,
810
- "aria-disabled": i.enabled === false,
811
- title: compact ? i.title : void 0,
812
- "data-menu-item-id": i.id ?? i.href,
813
- onClick: () => setMobileOpen(false),
807
+ variant: "muted",
808
+ onClick: () => toggleGroup(groupId),
809
+ className: "w-full px-1 justify-between flex text-xs font-medium uppercase tracking-wider text-muted-foreground/70 py-1",
810
+ "aria-expanded": open,
814
811
  children: [
815
- isParentActive ? /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: `absolute ${compact ? "left-[-20px]" : "left-[-12px]"} top-2 w-1 h-5 rounded-r bg-foreground` }) : null,
816
- /* @__PURE__ */ jsx("span", { className: "flex items-center justify-center shrink-0", children: renderIcon(
817
- i.icon,
818
- i.iconName,
819
- i.iconMarkup,
820
- DefaultIcon
821
- ) }),
822
- !compact && /* @__PURE__ */ jsx("span", { children: i.title })
812
+ /* @__PURE__ */ jsx("span", { children: g.name }),
813
+ /* @__PURE__ */ jsx(Chevron, { open })
823
814
  ]
824
815
  }
825
816
  ),
826
- showChildren ? /* @__PURE__ */ jsxs("div", { className: `relative flex flex-col ${compact ? "items-center" : ""} gap-1`, children: [
827
- !compact && /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: "pointer-events-none absolute left-1.5 top-1 bottom-1 w-px bg-border" }),
828
- childItems.map((c) => {
829
- const childActive = pathname?.startsWith(c.href);
830
- const childBase = compact ? "w-10 h-8 justify-center" : "w-full pl-5 pr-3 py-2 gap-2";
831
- return /* @__PURE__ */ jsxs(
817
+ (open || compact) && /* @__PURE__ */ jsx("div", { className: `flex flex-col ${compact ? "items-center" : ""} gap-1`, children: visibleItems.map((i) => {
818
+ const allChildItems = (i.children ?? []).filter((child) => child.hidden !== true);
819
+ const matchingChildItems = navQueryActive ? allChildItems.filter((c) => matchesQuery(c.title)) : allChildItems;
820
+ const childItems = navQueryActive ? matchingChildItems : allChildItems;
821
+ const showChildren = navQueryActive ? matchingChildItems.length > 0 : !!pathname && allChildItems.length > 0 && pathname.startsWith(i.href);
822
+ const hasActiveChild = !!(pathname && allChildItems.some((c) => pathname.startsWith(c.href)));
823
+ const isParentActive = pathname === i.href || !navQueryActive && showChildren && !hasActiveChild;
824
+ const base = compact ? "w-10 h-10 justify-center" : "w-full px-3 py-2 gap-2";
825
+ return /* @__PURE__ */ jsxs(React.Fragment, { children: [
826
+ /* @__PURE__ */ jsxs(
832
827
  Link,
833
828
  {
834
- href: c.href,
835
- className: `relative text-sm font-medium rounded-lg inline-flex items-center ${childBase} ${childActive ? "bg-muted text-foreground" : "text-muted-foreground hover:bg-muted"} ${c.enabled === false ? "pointer-events-none opacity-50" : ""}`,
836
- "aria-disabled": c.enabled === false,
837
- title: compact ? c.title : void 0,
838
- "data-menu-item-id": c.id ?? c.href,
829
+ href: i.href,
830
+ className: `relative text-sm font-medium rounded-lg inline-flex items-center ${base} ${isParentActive ? "bg-muted text-foreground" : "text-muted-foreground hover:bg-muted"} ${i.enabled === false ? "pointer-events-none opacity-50" : ""}`,
831
+ "aria-disabled": i.enabled === false,
832
+ title: compact ? i.title : void 0,
833
+ "data-menu-item-id": i.id ?? i.href,
839
834
  onClick: () => setMobileOpen(false),
840
835
  children: [
841
- childActive ? /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: `absolute ${compact ? "left-[-20px]" : "left-[-12px]"} top-2 w-1 h-5 rounded-r bg-foreground` }) : null,
836
+ isParentActive ? /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: `absolute ${compact ? "left-[-20px]" : "left-[-12px]"} top-2 w-1 h-5 rounded-r bg-foreground` }) : null,
842
837
  /* @__PURE__ */ jsx("span", { className: "flex items-center justify-center shrink-0", children: renderIcon(
843
- c.icon,
844
- c.iconName,
845
- c.iconMarkup,
846
- c.href.includes("/backend/entities/user/") && c.href.endsWith("/records") ? DataTableIcon : DefaultIcon
838
+ i.icon,
839
+ i.iconName,
840
+ i.iconMarkup,
841
+ DefaultIcon
847
842
  ) }),
848
- !compact && /* @__PURE__ */ jsx("span", { children: c.title })
843
+ !compact && /* @__PURE__ */ jsx("span", { children: i.title })
849
844
  ]
850
- },
851
- c.href
852
- );
853
- })
854
- ] }) : null
855
- ] }, i.href);
856
- }) }),
857
- gi !== mainLastVisibleGroupIndex && /* @__PURE__ */ jsx("div", { className: `my-2 border-t ${compact ? "-ml-2 -mr-3" : "-ml-3 -mr-4"}` })
858
- ] }, groupId);
845
+ }
846
+ ),
847
+ showChildren ? /* @__PURE__ */ jsxs("div", { className: `relative flex flex-col ${compact ? "items-center" : ""} gap-1`, children: [
848
+ !compact && /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: "pointer-events-none absolute left-1.5 top-1 bottom-1 w-px bg-border" }),
849
+ childItems.map((c) => {
850
+ const childActive = pathname?.startsWith(c.href);
851
+ const childBase = compact ? "w-10 h-8 justify-center" : "w-full pl-5 pr-3 py-2 gap-2";
852
+ return /* @__PURE__ */ jsxs(
853
+ Link,
854
+ {
855
+ href: c.href,
856
+ className: `relative text-sm font-medium rounded-lg inline-flex items-center ${childBase} ${childActive ? "bg-muted text-foreground" : "text-muted-foreground hover:bg-muted"} ${c.enabled === false ? "pointer-events-none opacity-50" : ""}`,
857
+ "aria-disabled": c.enabled === false,
858
+ title: compact ? c.title : void 0,
859
+ "data-menu-item-id": c.id ?? c.href,
860
+ onClick: () => setMobileOpen(false),
861
+ children: [
862
+ childActive ? /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: `absolute ${compact ? "left-[-20px]" : "left-[-12px]"} top-2 w-1 h-5 rounded-r bg-foreground` }) : null,
863
+ /* @__PURE__ */ jsx("span", { className: "flex items-center justify-center shrink-0", children: renderIcon(
864
+ c.icon,
865
+ c.iconName,
866
+ c.iconMarkup,
867
+ c.href.includes("/backend/entities/user/") && c.href.endsWith("/records") ? DataTableIcon : DefaultIcon
868
+ ) }),
869
+ !compact && /* @__PURE__ */ jsx("span", { children: c.title })
870
+ ]
871
+ },
872
+ c.href
873
+ );
874
+ })
875
+ ] }) : null
876
+ ] }, i.href);
877
+ }) })
878
+ ]
879
+ },
880
+ groupId
881
+ );
859
882
  })
860
883
  ] }) });
861
884
  })() }),
862
- /* @__PURE__ */ jsxs("div", { className: "sticky bottom-0 bg-background pb-1", children: [
885
+ /* @__PURE__ */ jsxs("div", { className: `sticky bottom-0 bg-background pb-1 ${injectionWrapper}`, "data-sidebar-injection-wrapper": "true", children: [
863
886
  shouldRenderSidebarInjectionSpots ? /* @__PURE__ */ jsx(
864
887
  InjectionSpot,
865
888
  {
@@ -904,7 +927,7 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
904
927
  }
905
928
  if (!sections) return null;
906
929
  return /* @__PURE__ */ jsxs("div", { className: "flex h-full flex-col gap-2", children: [
907
- /* @__PURE__ */ jsxs(
930
+ /* @__PURE__ */ jsx("div", { className: sidebarBlockPadding(false), children: /* @__PURE__ */ jsxs(
908
931
  Link,
909
932
  {
910
933
  href: "/backend",
@@ -916,7 +939,7 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
916
939
  /* @__PURE__ */ jsx("span", { className: "truncate", children: title })
917
940
  ]
918
941
  }
919
- ),
942
+ ) }),
920
943
  /* @__PURE__ */ jsx("div", { className: "min-h-0 flex-1", children: renderSectionSidebar(sections, title, false, true, true) })
921
944
  ] });
922
945
  }
@@ -974,7 +997,7 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
974
997
  children: effectiveCollapsed ? /* @__PURE__ */ jsx(PanelLeftOpen, { className: "size-4" }) : /* @__PURE__ */ jsx(PanelLeftClose, { className: "size-4" })
975
998
  }
976
999
  ),
977
- /* @__PURE__ */ jsxs("aside", { ref: sidebarAsideRef, className: `${asideClassesBase} ${effectiveCollapsed ? "px-2" : "px-3"} hidden lg:block lg:sticky lg:top-0 lg:h-svh lg:self-start lg:overflow-hidden lg:relative transition-[width,padding] duration-200 ease-out`, style: { width: asideWidth }, children: [
1000
+ /* @__PURE__ */ jsxs("aside", { ref: sidebarAsideRef, className: `${asideClassesBase} px-0 hidden lg:block lg:sticky lg:top-0 lg:h-svh lg:self-start lg:overflow-hidden lg:relative transition-[width] duration-200 ease-out`, style: { width: asideWidth }, children: [
978
1001
  renderSidebar(effectiveCollapsed, false, isSectionView),
979
1002
  sidebarScrollState !== "none" ? /* @__PURE__ */ jsx(
980
1003
  "div",
@@ -1006,7 +1029,7 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
1006
1029
  isSectionView ? /* @__PURE__ */ jsxs(
1007
1030
  "aside",
1008
1031
  {
1009
- className: `${asideClassesBase} px-3 hidden lg:block lg:sticky lg:top-0 lg:h-svh lg:self-start lg:overflow-hidden lg:relative`,
1032
+ className: `${asideClassesBase} px-0 hidden lg:block lg:sticky lg:top-0 lg:h-svh lg:self-start lg:overflow-hidden lg:relative`,
1010
1033
  style: { width: "240px" },
1011
1034
  "data-testid": "appshell-section-sidebar",
1012
1035
  children: [
@@ -1166,7 +1189,7 @@ function AppShellBody({ productName, logo, email, canManageUpgradeActions = fals
1166
1189
  id: "mobile-drawer-tabpanel",
1167
1190
  role: sidebarMode !== "main" ? "tabpanel" : void 0,
1168
1191
  "aria-labelledby": sidebarMode !== "main" ? `mobile-drawer-tab-${mobileDrawerView === "main" ? "main" : "section"}` : void 0,
1169
- className: "min-h-0 flex-1 overflow-y-auto overflow-x-hidden p-3",
1192
+ className: "min-h-0 flex-1 overflow-y-auto overflow-x-hidden py-3",
1170
1193
  children: renderSidebar(false, true, mobileDrawerView === "main")
1171
1194
  }
1172
1195
  )