@sproutsocial/seeds-react-menu 1.2.3 → 1.3.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/index.js CHANGED
@@ -169,7 +169,8 @@ var defaultMenuContext = {
169
169
  items: [],
170
170
  itemsMap: {},
171
171
  isItemSelected: () => false,
172
- getInputComponentProps: () => ({})
172
+ getInputComponentProps: () => ({}),
173
+ hasVisibleItems: false
173
174
  };
174
175
  var getSelectedItemIds = (selectedItems) => selectedItems?.reduce(
175
176
  (selected, item) => ({ ...selected, [item.id]: true }),
@@ -190,6 +191,8 @@ var useMenu = ({
190
191
  selectedItems,
191
192
  getInputProps,
192
193
  contentRef: contentRefFromProps,
194
+ autoCloseOnEmpty,
195
+ hiddenItemsCount,
193
196
  ...rest
194
197
  } = {}) => {
195
198
  const contentRef = contentRefFromProps || import_react.default.createRef();
@@ -244,6 +247,9 @@ var useMenu = ({
244
247
  },
245
248
  [getInputProps]
246
249
  );
250
+ const hasVisibleItems = (0, import_react.useMemo)(() => {
251
+ return (hiddenItemsCount ?? 0) < items.length;
252
+ }, [items, hiddenItemsCount]);
247
253
  return {
248
254
  isOpen,
249
255
  isListbox,
@@ -256,6 +262,8 @@ var useMenu = ({
256
262
  getInputProps,
257
263
  getInputComponentProps,
258
264
  contentRef,
265
+ hasVisibleItems,
266
+ autoCloseOnEmpty,
259
267
  ...menuProps
260
268
  };
261
269
  };
@@ -2362,7 +2370,23 @@ var useMenuChildren = ({
2362
2370
 
2363
2371
  // src/MenuContent/MenuContent.tsx
2364
2372
  var import_react5 = require("react");
2373
+
2374
+ // src/MenuContent/DefaultMenuEmptyState.tsx
2375
+ var import_styled_components6 = __toESM(require("styled-components"));
2365
2376
  var import_jsx_runtime6 = require("react/jsx-runtime");
2377
+ var StyledEmptyState = import_styled_components6.default.div`
2378
+ padding: ${({ theme: theme2 }) => theme2.space[350]};
2379
+ text-align: center;
2380
+ font-size: ${({ theme: theme2 }) => theme2.typography[200].fontSize};
2381
+ `;
2382
+ var DefaultMenuEmptyState = ({
2383
+ children
2384
+ }) => {
2385
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(StyledEmptyState, { children: children || "No results found." });
2386
+ };
2387
+
2388
+ // src/MenuContent/MenuContent.tsx
2389
+ var import_jsx_runtime7 = require("react/jsx-runtime");
2366
2390
  var MenuContent = ({
2367
2391
  id = "menu_content",
2368
2392
  children: childrenProp,
@@ -2370,11 +2394,21 @@ var MenuContent = ({
2370
2394
  MenuItemComponent,
2371
2395
  onKeyDown,
2372
2396
  innerRef = null,
2397
+ emptyStateElement,
2373
2398
  ...rest
2374
2399
  }) => {
2375
- const { getToggleButtonProps, getMenuProps, isListbox } = useMenuContentContext();
2400
+ const {
2401
+ getToggleButtonProps,
2402
+ getMenuProps,
2403
+ isListbox,
2404
+ hasVisibleItems,
2405
+ autoCloseOnEmpty
2406
+ } = useMenuContentContext();
2376
2407
  const toggleButtonProps = getToggleButtonProps?.();
2377
2408
  const children = childrenProp || !menuItems || !menuItems.length ? childrenProp : mapMenuItems({ menuItems, MenuItemComponent });
2409
+ if (!hasVisibleItems && !autoCloseOnEmpty) {
2410
+ return emptyStateElement ?? /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(DefaultMenuEmptyState, {});
2411
+ }
2378
2412
  if (!children) {
2379
2413
  return null;
2380
2414
  }
@@ -2385,7 +2419,7 @@ var MenuContent = ({
2385
2419
  },
2386
2420
  [onKeyDown, toggleButtonProps?.["onKeyDown"]]
2387
2421
  );
2388
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
2422
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
2389
2423
  StyledMenuContent,
2390
2424
  {
2391
2425
  autoFocus: true,
@@ -2411,47 +2445,47 @@ MenuContent.__MENU_PRIMITIVE_TYPE = "MenuContent";
2411
2445
  var import_react6 = require("react");
2412
2446
 
2413
2447
  // src/MenuFooter/styles.tsx
2414
- var import_styled_components6 = __toESM(require("styled-components"));
2448
+ var import_styled_components7 = __toESM(require("styled-components"));
2415
2449
  var import_seeds_react_box2 = require("@sproutsocial/seeds-react-box");
2416
- var StyledMenuFooterBox = (0, import_styled_components6.default)(import_seeds_react_box2.Box)`
2450
+ var StyledMenuFooterBox = (0, import_styled_components7.default)(import_seeds_react_box2.Box)`
2417
2451
  padding: ${({ theme: theme2 }) => theme2.space[350]} ${({ theme: theme2 }) => theme2.space[400]};
2418
2452
  border-top: 1px solid ${(p) => p.theme.colors.container.border.base};
2419
2453
  `;
2420
2454
 
2421
2455
  // src/MenuFooter/MenuFooter.tsx
2422
- var import_jsx_runtime7 = require("react/jsx-runtime");
2456
+ var import_jsx_runtime8 = require("react/jsx-runtime");
2423
2457
  var MenuFooter = ({ children, ...rest }) => {
2424
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(StyledMenuFooterBox, { ...rest, children });
2458
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(StyledMenuFooterBox, { ...rest, children });
2425
2459
  };
2426
2460
 
2427
2461
  // src/MenuGroup/MenuGroup.tsx
2428
2462
  var import_react9 = require("react");
2429
2463
 
2430
2464
  // src/MenuGroup/styles.tsx
2431
- var import_styled_components9 = __toESM(require("styled-components"));
2465
+ var import_styled_components10 = __toESM(require("styled-components"));
2432
2466
 
2433
2467
  // ../seeds-react-text/dist/esm/index.js
2434
2468
  var import_react7 = require("react");
2435
- var import_styled_components7 = __toESM(require("styled-components"));
2436
2469
  var import_styled_components8 = __toESM(require("styled-components"));
2470
+ var import_styled_components9 = __toESM(require("styled-components"));
2437
2471
  var import_seeds_react_system_props = require("@sproutsocial/seeds-react-system-props");
2438
- var import_jsx_runtime8 = require("react/jsx-runtime");
2472
+ var import_jsx_runtime9 = require("react/jsx-runtime");
2439
2473
  var import_react8 = require("react");
2440
- var Container = import_styled_components8.default.span`
2474
+ var Container = import_styled_components9.default.span`
2441
2475
  margin: 0;
2442
2476
  padding-left: 0;
2443
2477
  padding-right: 0;
2444
2478
  font-family: ${(props) => props.theme.fontFamily};
2445
2479
  font-style: ${(props) => props.isItalicized && "italic"};
2446
2480
 
2447
- ${(props) => props.truncated && import_styled_components8.css`
2481
+ ${(props) => props.truncated && import_styled_components9.css`
2448
2482
  display: block;
2449
2483
  overflow: hidden;
2450
2484
  white-space: nowrap;
2451
2485
  text-overflow: ellipsis;
2452
2486
  `}
2453
2487
 
2454
- ${(props) => props.breakWord && import_styled_components8.css`
2488
+ ${(props) => props.breakWord && import_styled_components9.css`
2455
2489
  word-break: break-word;
2456
2490
  hyphens: auto;
2457
2491
  `}
@@ -2463,40 +2497,40 @@ var Container = import_styled_components8.default.span`
2463
2497
  ${import_seeds_react_system_props.TYPOGRAPHY}
2464
2498
  `;
2465
2499
  var styles_default = Container;
2466
- var Headline = (0, import_styled_components7.default)(styles_default)`
2500
+ var Headline = (0, import_styled_components8.default)(styles_default)`
2467
2501
  color: ${(props) => props.theme.colors.text.headline};
2468
2502
  font-weight: ${(props) => props.theme.fontWeights.bold};
2469
2503
  ${(props) => props.theme.typography[400]}
2470
2504
  `;
2471
- var SubHeadline = (0, import_styled_components7.default)(styles_default)`
2505
+ var SubHeadline = (0, import_styled_components8.default)(styles_default)`
2472
2506
  color: ${(props) => props.theme.colors.text.headline};
2473
2507
  font-weight: ${(props) => props.theme.fontWeights.bold};
2474
2508
  ${(props) => props.theme.typography[300]}
2475
2509
  `;
2476
- var SmallSubHeadline = (0, import_styled_components7.default)(styles_default)`
2510
+ var SmallSubHeadline = (0, import_styled_components8.default)(styles_default)`
2477
2511
  color: ${(props) => props.theme.colors.text.headline};
2478
2512
  font-weight: ${(props) => props.theme.fontWeights.bold};
2479
2513
  ${(props) => props.theme.typography[200]}
2480
2514
  `;
2481
- var Byline = (0, import_styled_components7.default)(styles_default)`
2515
+ var Byline = (0, import_styled_components8.default)(styles_default)`
2482
2516
  color: ${(props) => props.theme.colors.text.subtext};
2483
2517
  ${(props) => props.theme.typography[200]}
2484
2518
  `;
2485
- var SmallByline = (0, import_styled_components7.default)(styles_default)`
2519
+ var SmallByline = (0, import_styled_components8.default)(styles_default)`
2486
2520
  color: ${(props) => props.theme.colors.text.subtext};
2487
2521
  ${(props) => props.theme.typography[100]}
2488
2522
  `;
2489
- var BodyCopy = (0, import_styled_components7.default)(styles_default)`
2523
+ var BodyCopy = (0, import_styled_components8.default)(styles_default)`
2490
2524
  color: ${(props) => props.theme.colors.text.body};
2491
2525
  ${(props) => props.theme.typography[300]}
2492
2526
  `;
2493
- var SmallBodyCopy = (0, import_styled_components7.default)(styles_default)`
2527
+ var SmallBodyCopy = (0, import_styled_components8.default)(styles_default)`
2494
2528
  color: ${(props) => props.theme.colors.text.body};
2495
2529
  ${(props) => props.theme.typography[200]}
2496
2530
  `;
2497
2531
  var Text = ({ fontSize: fontSize2, children, qa, color: color2, ...rest }) => {
2498
2532
  const qaText = typeof children === "string" ? children : void 0;
2499
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
2533
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
2500
2534
  styles_default,
2501
2535
  {
2502
2536
  typeScale: fontSize2,
@@ -2511,7 +2545,7 @@ var Text = ({ fontSize: fontSize2, children, qa, color: color2, ...rest }) => {
2511
2545
  var withTextLogic = (Component) => {
2512
2546
  return ({ children, ...props }) => {
2513
2547
  const qaText = typeof children === "string" ? children : void 0;
2514
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Component, { "data-qa-text": qaText, ...props, children });
2548
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(Component, { "data-qa-text": qaText, ...props, children });
2515
2549
  };
2516
2550
  };
2517
2551
  var HeadlineWithLogic = withTextLogic(Headline);
@@ -2539,7 +2573,7 @@ var Text_default = Text;
2539
2573
  var index_default = Text_default;
2540
2574
 
2541
2575
  // src/MenuGroup/styles.tsx
2542
- var StyledMenuGroup = import_styled_components9.default.li`
2576
+ var StyledMenuGroup = import_styled_components10.default.li`
2543
2577
  &:not(:last-child) {
2544
2578
  border-bottom: 1px solid
2545
2579
  ${({ theme: theme2 }) => theme2.colors.container.border.base};
@@ -2555,18 +2589,18 @@ var StyledMenuGroup = import_styled_components9.default.li`
2555
2589
  ${layout}
2556
2590
  ${space}
2557
2591
  `;
2558
- var StyledTitle = (0, import_styled_components9.default)(index_default.SmallSubHeadline)`
2592
+ var StyledTitle = (0, import_styled_components10.default)(index_default.SmallSubHeadline)`
2559
2593
  font-size: ${({ theme: theme2 }) => theme2.typography[100].fontSize};
2560
2594
  margin: ${({ theme: theme2 }) => theme2.space[400]} ${({ theme: theme2 }) => theme2.space[400]}
2561
2595
  0px ${({ theme: theme2 }) => theme2.space[400]};
2562
2596
  `;
2563
- var StyledMenuGroupUl = import_styled_components9.default.ul`
2597
+ var StyledMenuGroupUl = import_styled_components10.default.ul`
2564
2598
  margin: 0;
2565
2599
  padding: 0;
2566
2600
  `;
2567
2601
 
2568
2602
  // src/MenuGroup/MenuGroup.tsx
2569
- var import_jsx_runtime9 = require("react/jsx-runtime");
2603
+ var import_jsx_runtime10 = require("react/jsx-runtime");
2570
2604
  var MenuGroup = ({
2571
2605
  titleAs = "h3",
2572
2606
  children: childrenProp,
@@ -2583,7 +2617,7 @@ var MenuGroup = ({
2583
2617
  if (!children) {
2584
2618
  return null;
2585
2619
  }
2586
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
2620
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)(
2587
2621
  StyledMenuGroup,
2588
2622
  {
2589
2623
  role: "group",
@@ -2593,8 +2627,8 @@ var MenuGroup = ({
2593
2627
  color: color2,
2594
2628
  ...rest,
2595
2629
  children: [
2596
- title && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(StyledTitle, { role: "heading", as: titleAs, id: titleId, children: title }),
2597
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(StyledMenuGroupUl, { children })
2630
+ title && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(StyledTitle, { role: "heading", as: titleAs, id: titleId, children: title }),
2631
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(StyledMenuGroupUl, { children })
2598
2632
  ]
2599
2633
  }
2600
2634
  );
@@ -2603,7 +2637,7 @@ MenuGroup.__MENU_PRIMITIVE_TYPE = "MenuGroup";
2603
2637
 
2604
2638
  // src/MenuRoot/MenuRoot.tsx
2605
2639
  var import_react10 = __toESM(require("react"));
2606
- var import_styled_components10 = __toESM(require("styled-components"));
2640
+ var import_styled_components11 = __toESM(require("styled-components"));
2607
2641
  var import_seeds_react_popout = require("@sproutsocial/seeds-react-popout");
2608
2642
  var import_seeds_react_utilities = require("@sproutsocial/seeds-react-utilities");
2609
2643
 
@@ -2611,8 +2645,8 @@ var import_seeds_react_utilities = require("@sproutsocial/seeds-react-utilities"
2611
2645
  var MOTION_DURATION_FAST = 0.15;
2612
2646
 
2613
2647
  // src/MenuRoot/MenuRoot.tsx
2614
- var import_jsx_runtime10 = require("react/jsx-runtime");
2615
- var CustomPopoutContent = (0, import_styled_components10.default)(import_seeds_react_popout.Popout.Content)`
2648
+ var import_jsx_runtime11 = require("react/jsx-runtime");
2649
+ var CustomPopoutContent = (0, import_styled_components11.default)(import_seeds_react_popout.Popout.Content)`
2616
2650
  padding: 0;
2617
2651
  margin-left: 0;
2618
2652
  margin-right: 0;
@@ -2660,12 +2694,12 @@ var MenuPopout = ({
2660
2694
  },
2661
2695
  [openMenu, closeMenu]
2662
2696
  );
2663
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
2697
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2664
2698
  import_seeds_react_popout.Popout,
2665
2699
  {
2666
2700
  isOpen: !!isOpen,
2667
2701
  setIsOpen,
2668
- content: (props) => /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(CustomPopoutContent, { width: popoutProps.fullWidth ? "initial" : width2, children: typeof content === "function" ? content(props) : content }),
2702
+ content: (props) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(CustomPopoutContent, { width: popoutProps.fullWidth ? "initial" : width2, children: typeof content === "function" ? content(props) : content }),
2669
2703
  focusLockProps: {
2670
2704
  // correct jerking motion when scrolling while the Popout is open
2671
2705
  // returnFocus: false,
@@ -2690,9 +2724,8 @@ var MenuRoot = ({
2690
2724
  openMenu,
2691
2725
  closeMenu,
2692
2726
  inputValue,
2693
- hiddenItemsCount = 0,
2694
- items,
2695
- getMenuProps
2727
+ getMenuProps,
2728
+ autoCloseOnEmpty = false
2696
2729
  } = contextProps;
2697
2730
  const toggleElementRef = import_react10.default.useRef(null);
2698
2731
  const [finalWidth, setFinalWidth] = import_react10.default.useState();
@@ -2709,17 +2742,23 @@ var MenuRoot = ({
2709
2742
  }, [width2, toggleElementRef.current?.offsetWidth]);
2710
2743
  const menuContext = useMenu(contextProps);
2711
2744
  getMenuProps?.({}, { suppressRefError: true });
2712
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
2745
+ (0, import_react10.useEffect)(() => {
2746
+ if (!inputValue || !autoCloseOnEmpty) return;
2747
+ if (!menuContext.hasVisibleItems && isOpen) {
2748
+ closeMenu?.();
2749
+ }
2750
+ }, [menuContext.hasVisibleItems, isOpen, inputValue, autoCloseOnEmpty]);
2751
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2713
2752
  MenuPopout,
2714
2753
  {
2715
2754
  placement,
2716
2755
  isOpen: !!isOpen,
2717
2756
  openMenu,
2718
2757
  closeMenu,
2719
- content: /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(MenuContentProvider, { menuContext, children }),
2758
+ content: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(MenuContentProvider, { menuContext, children }),
2720
2759
  width: finalWidth,
2721
2760
  ...popoutProps,
2722
- children: (toggleProps) => /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
2761
+ children: (toggleProps) => /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2723
2762
  MenuToggleProvider,
2724
2763
  {
2725
2764
  menuContext: {
@@ -2740,7 +2779,7 @@ var MenuRoot = ({
2740
2779
  // src/MenuLabel.tsx
2741
2780
  var import_react11 = require("react");
2742
2781
  var import_seeds_react_label = require("@sproutsocial/seeds-react-label");
2743
- var import_jsx_runtime11 = (
2782
+ var import_jsx_runtime12 = (
2744
2783
  // This fallback id should never be used, but it is here to satisfy TypeScript since getLabelProps could be undefined.
2745
2784
  require("react/jsx-runtime")
2746
2785
  );
@@ -2750,7 +2789,7 @@ var MenuLabel = ({
2750
2789
  ...rest
2751
2790
  }) => {
2752
2791
  const { getLabelProps } = useMenuToggleContext();
2753
- return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
2792
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2754
2793
  import_seeds_react_label.Label,
2755
2794
  {
2756
2795
  htmlFor: "fallback_menu_label",
@@ -2764,10 +2803,10 @@ var MenuLabel = ({
2764
2803
 
2765
2804
  // src/MenuToggleButton/MenuToggleButton.tsx
2766
2805
  var import_seeds_react_button = require("@sproutsocial/seeds-react-button");
2767
- var import_jsx_runtime12 = require("react/jsx-runtime");
2806
+ var import_jsx_runtime13 = require("react/jsx-runtime");
2768
2807
  var MenuToggleButton = (props) => {
2769
2808
  const { getToggleButtonProps, isListbox, getDropdownProps, ref, ariaProps } = useMenuToggleContext();
2770
- return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
2809
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2771
2810
  import_seeds_react_button.Button,
2772
2811
  {
2773
2812
  appearance: "secondary",
@@ -2827,7 +2866,7 @@ var useItemFiltering = ({
2827
2866
  };
2828
2867
 
2829
2868
  // src/MenuSearchInput/MenuSearchInput.tsx
2830
- var import_jsx_runtime13 = require("react/jsx-runtime");
2869
+ var import_jsx_runtime14 = require("react/jsx-runtime");
2831
2870
  var MenuSearchInput = ({
2832
2871
  getIsItemVisible,
2833
2872
  inputProps,
@@ -2857,7 +2896,7 @@ var MenuSearchInput = ({
2857
2896
  },
2858
2897
  [toggleButtonProps.onKeyDown]
2859
2898
  );
2860
- return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
2899
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
2861
2900
  import_seeds_react_input.Input,
2862
2901
  {
2863
2902
  onChange: (e, value) => {
@@ -2878,10 +2917,10 @@ var MenuSearchInput = ({
2878
2917
 
2879
2918
  // src/MenuTokenInput.tsx
2880
2919
  var import_react14 = __toESM(require("react"));
2881
- var import_styled_components11 = __toESM(require("styled-components"));
2920
+ var import_styled_components12 = __toESM(require("styled-components"));
2882
2921
  var import_seeds_react_token_input = require("@sproutsocial/seeds-react-token-input");
2883
- var import_jsx_runtime14 = require("react/jsx-runtime");
2884
- var StyledTokenInputWrapper = import_styled_components11.default.div`
2922
+ var import_jsx_runtime15 = require("react/jsx-runtime");
2923
+ var StyledTokenInputWrapper = import_styled_components12.default.div`
2885
2924
  > div {
2886
2925
  padding: 4px;
2887
2926
  }
@@ -2915,7 +2954,7 @@ var MenuTokenInput = ({
2915
2954
  const tokenToRemove = selectedItems?.find((item) => item.id === tokenId);
2916
2955
  tokenToRemove && removeSelectedItem?.(tokenToRemove);
2917
2956
  };
2918
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(StyledTokenInputWrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
2957
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(StyledTokenInputWrapper, { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
2919
2958
  import_seeds_react_token_input.TokenInput,
2920
2959
  {
2921
2960
  onKeyDown: (e, value) => {
@@ -2965,7 +3004,7 @@ var MenuTokenInput = ({
2965
3004
 
2966
3005
  // src/MenuSearchTokenInput/MenuSearchTokenInput.tsx
2967
3006
  var import_react15 = __toESM(require("react"));
2968
- var import_jsx_runtime15 = require("react/jsx-runtime");
3007
+ var import_jsx_runtime16 = require("react/jsx-runtime");
2969
3008
  var MenuSearchTokenInput = ({
2970
3009
  getIsItemVisible,
2971
3010
  getTokenProps,
@@ -3013,7 +3052,7 @@ var MenuSearchTokenInput = ({
3013
3052
  },
3014
3053
  [toggleButtonProps.onKeyDown]
3015
3054
  );
3016
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
3055
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3017
3056
  MenuTokenInput,
3018
3057
  {
3019
3058
  onChange: (e, value2) => {
@@ -3038,7 +3077,7 @@ var import_react16 = __toESM(require("react"));
3038
3077
  var import_seeds_react_icon2 = require("@sproutsocial/seeds-react-icon");
3039
3078
  var import_seeds_react_box3 = require("@sproutsocial/seeds-react-box");
3040
3079
  var import_seeds_react_utilities2 = require("@sproutsocial/seeds-react-utilities");
3041
- var import_jsx_runtime16 = require("react/jsx-runtime");
3080
+ var import_jsx_runtime17 = require("react/jsx-runtime");
3042
3081
  var SubmenuItemTrigger = ({
3043
3082
  id,
3044
3083
  children,
@@ -3047,7 +3086,7 @@ var SubmenuItemTrigger = ({
3047
3086
  }) => {
3048
3087
  const { getToggleButtonProps, getDropdownProps, ref, ariaProps } = useMenuToggleContext();
3049
3088
  const toggleRef = ref && innerRef ? (0, import_seeds_react_utilities2.mergeRefs)([ref, innerRef].filter(Boolean)) : ref || innerRef;
3050
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3089
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3051
3090
  MenuItem,
3052
3091
  {
3053
3092
  ...rest,
@@ -3064,9 +3103,9 @@ var SubmenuItemTrigger = ({
3064
3103
  { suppressRefError: true }
3065
3104
  ),
3066
3105
  id,
3067
- children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(import_seeds_react_box3.Box, { display: "flex", justifyContent: "space-between", children: [
3106
+ children: /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_seeds_react_box3.Box, { display: "flex", justifyContent: "space-between", children: [
3068
3107
  children,
3069
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(MenuItemActionRight, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_seeds_react_icon2.Icon, { name: "chevron-right-outline" }) })
3108
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(MenuItemActionRight, { children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_seeds_react_icon2.Icon, { name: "chevron-right-outline" }) })
3070
3109
  ] })
3071
3110
  }
3072
3111
  );
@@ -3176,7 +3215,7 @@ var SubmenuItem = ({
3176
3215
  };
3177
3216
  }
3178
3217
  }, [document, onSubmenuKeydown]);
3179
- const subMenuContent = /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3218
+ const subMenuContent = /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3180
3219
  "div",
3181
3220
  {
3182
3221
  ref: submenuRef,
@@ -3187,13 +3226,13 @@ var SubmenuItem = ({
3187
3226
  children: menuContent
3188
3227
  }
3189
3228
  );
3190
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3229
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3191
3230
  MenuComponent,
3192
3231
  {
3193
3232
  ...{
3194
3233
  ...menuProps,
3195
3234
  children: subMenuContent,
3196
- menuToggleElement: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
3235
+ menuToggleElement: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
3197
3236
  SubmenuItemTrigger,
3198
3237
  {
3199
3238
  innerRef: submenuItemRef,
@@ -3225,28 +3264,28 @@ var SubmenuItem = ({
3225
3264
  SubmenuItem.__MENU_PRIMITIVE_TYPE = "MenuItem";
3226
3265
 
3227
3266
  // src/ListboxToggleButton.tsx
3228
- var import_styled_components12 = __toESM(require("styled-components"));
3267
+ var import_styled_components13 = __toESM(require("styled-components"));
3229
3268
  var import_seeds_react_icon3 = require("@sproutsocial/seeds-react-icon");
3230
- var import_jsx_runtime17 = require("react/jsx-runtime");
3231
- var StyledListboxToggleButton = (0, import_styled_components12.default)(
3269
+ var import_jsx_runtime18 = require("react/jsx-runtime");
3270
+ var StyledListboxToggleButton = (0, import_styled_components13.default)(
3232
3271
  MenuToggleButton
3233
3272
  )`
3234
- ${(props) => props.invalid && import_styled_components12.css`
3273
+ ${(props) => props.invalid && import_styled_components13.css`
3235
3274
  border-color: ${(props2) => props2.theme.colors.form.border.error};
3236
3275
  `}
3237
3276
  `;
3238
- var StyledChevron = import_styled_components12.default.div`
3277
+ var StyledChevron = import_styled_components13.default.div`
3239
3278
  margin-left: ${({ theme: theme2 }) => theme2.space[300]};
3240
3279
  ${({ $isOpen }) => $isOpen && `
3241
3280
  transform: rotate(-180deg);
3242
3281
  `}
3243
3282
  transition: transform 0.15s;
3244
3283
 
3245
- ${({ invalid }) => invalid && import_styled_components12.css`
3284
+ ${({ invalid }) => invalid && import_styled_components13.css`
3246
3285
  color: ${(props) => props.theme.colors.icon.error};
3247
3286
  `}
3248
3287
  `;
3249
- var StyledInnerButton = import_styled_components12.default.div`
3288
+ var StyledInnerButton = import_styled_components13.default.div`
3250
3289
  display: flex;
3251
3290
  justify-content: space-between;
3252
3291
  `;
@@ -3255,9 +3294,9 @@ var ListboxToggleButton = ({
3255
3294
  ...buttonProps
3256
3295
  }) => {
3257
3296
  const { isOpen } = useMenuToggleContext();
3258
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(StyledListboxToggleButton, { appearance: "secondary", ...buttonProps, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(StyledInnerButton, { children: [
3297
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(StyledListboxToggleButton, { appearance: "secondary", ...buttonProps, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(StyledInnerButton, { children: [
3259
3298
  children,
3260
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(StyledChevron, { $isOpen: isOpen, invalid: buttonProps.invalid, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_seeds_react_icon3.Icon, { name: "chevron-down-outline", fixedWidth: true, "aria-hidden": true }) })
3299
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(StyledChevron, { $isOpen: isOpen, invalid: buttonProps.invalid, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_seeds_react_icon3.Icon, { name: "chevron-down-outline", fixedWidth: true, "aria-hidden": true }) })
3261
3300
  ] }) });
3262
3301
  };
3263
3302
 
@@ -3426,7 +3465,7 @@ var useDownshiftDefaults = ({
3426
3465
  };
3427
3466
 
3428
3467
  // src/ActionMenu/ActionMenu.tsx
3429
- var import_jsx_runtime18 = require("react/jsx-runtime");
3468
+ var import_jsx_runtime19 = require("react/jsx-runtime");
3430
3469
  var handleStateChange = (changes, currentSelectedItem) => {
3431
3470
  if (!(changes.type === import_downshift3.useSelect.stateChangeTypes.ToggleButtonKeyDownEnter || changes.type === import_downshift3.useSelect.stateChangeTypes.ToggleButtonKeyDownSpaceButton)) {
3432
3471
  return;
@@ -3489,7 +3528,7 @@ var ActionMenu = ({
3489
3528
  (0, import_react18.useEffect)(() => {
3490
3529
  setCurrentSelectedItem(useSelectReturnProps.selectedItem);
3491
3530
  }, [useSelectReturnProps.selectedItem]);
3492
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
3531
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3493
3532
  MenuRootComponent,
3494
3533
  {
3495
3534
  ...{
@@ -3510,7 +3549,7 @@ var ActionMenu = ({
3510
3549
  // src/SingleSelectMenu/SingleSelectMenu.tsx
3511
3550
  var import_react19 = require("react");
3512
3551
  var import_downshift4 = require("downshift");
3513
- var import_jsx_runtime19 = require("react/jsx-runtime");
3552
+ var import_jsx_runtime20 = require("react/jsx-runtime");
3514
3553
  var SingleSelectMenu = ({
3515
3554
  children: childrenProp,
3516
3555
  stateReducer: externalStateReducer,
@@ -3537,7 +3576,7 @@ var SingleSelectMenu = ({
3537
3576
  ),
3538
3577
  ...useSelectProps
3539
3578
  });
3540
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
3579
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3541
3580
  MenuRootComponent,
3542
3581
  {
3543
3582
  ...{
@@ -3558,7 +3597,7 @@ var SingleSelectMenu = ({
3558
3597
  // src/MultiSelectMenu/MultiSelectMenu.tsx
3559
3598
  var import_react20 = require("react");
3560
3599
  var import_downshift5 = require("downshift");
3561
- var import_jsx_runtime20 = require("react/jsx-runtime");
3600
+ var import_jsx_runtime21 = require("react/jsx-runtime");
3562
3601
  var MultiSelectMenu = ({
3563
3602
  children: childrenProp,
3564
3603
  menuItems,
@@ -3631,7 +3670,7 @@ var MultiSelectMenu = ({
3631
3670
  },
3632
3671
  ...useSelectProps
3633
3672
  });
3634
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
3673
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3635
3674
  MenuRootComponent,
3636
3675
  {
3637
3676
  ...{
@@ -3662,9 +3701,9 @@ var MultiSelectMenu = ({
3662
3701
  var import_react23 = require("react");
3663
3702
 
3664
3703
  // src/Autocomplete/SingleAutocomplete.tsx
3665
- var import_react21 = __toESM(require("react"));
3704
+ var import_react21 = require("react");
3666
3705
  var import_downshift6 = require("downshift");
3667
- var import_jsx_runtime21 = require("react/jsx-runtime");
3706
+ var import_jsx_runtime22 = require("react/jsx-runtime");
3668
3707
  var SingleAutocomplete = ({
3669
3708
  children: childrenProp,
3670
3709
  stateReducer: externalStateReducer,
@@ -3700,13 +3739,8 @@ var SingleAutocomplete = ({
3700
3739
  ...useComboboxProps
3701
3740
  });
3702
3741
  const { isOpen, closeMenu, inputValue } = useComboboxReturnProps;
3703
- import_react21.default.useEffect(() => {
3704
- if (!inputValue) return;
3705
- if (allMenuItems && hiddenItemsCount >= allMenuItems.length && isOpen) {
3706
- closeMenu?.();
3707
- }
3708
- }, [hiddenItemsCount, allMenuItems?.length, isOpen, inputValue]);
3709
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
3742
+ const { popoutProps: userPopoutProps } = useComboboxProps;
3743
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3710
3744
  MenuRootComponent,
3711
3745
  {
3712
3746
  ...{
@@ -3718,8 +3752,10 @@ var SingleAutocomplete = ({
3718
3752
  ...downshiftDefaults
3719
3753
  },
3720
3754
  popoutProps: {
3721
- focusOnContent: false
3755
+ focusOnContent: false,
3756
+ ...userPopoutProps
3722
3757
  },
3758
+ autoCloseOnEmpty: true,
3723
3759
  children
3724
3760
  }
3725
3761
  );
@@ -3728,7 +3764,7 @@ var SingleAutocomplete = ({
3728
3764
  // src/Autocomplete/MultiAutocomplete.tsx
3729
3765
  var import_react22 = __toESM(require("react"));
3730
3766
  var import_downshift7 = require("downshift");
3731
- var import_jsx_runtime22 = require("react/jsx-runtime");
3767
+ var import_jsx_runtime23 = require("react/jsx-runtime");
3732
3768
  var MultiAutocomplete = ({
3733
3769
  children: childrenProp,
3734
3770
  stateReducer: externalStateReducer,
@@ -3835,13 +3871,14 @@ var MultiAutocomplete = ({
3835
3871
  ...useComboboxProps
3836
3872
  });
3837
3873
  const { isOpen, closeMenu, inputValue } = useComboboxReturnProps;
3874
+ const { popoutProps: userPopoutProps } = useComboboxProps;
3838
3875
  import_react22.default.useEffect(() => {
3839
3876
  if (!inputValue) return;
3840
3877
  if (allMenuItems && hiddenItemsCount >= allMenuItems.length && isOpen) {
3841
3878
  closeMenu?.();
3842
3879
  }
3843
3880
  }, [hiddenItemsCount, allMenuItems?.length, isOpen, inputValue]);
3844
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
3881
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
3845
3882
  MenuRootComponent,
3846
3883
  {
3847
3884
  ...{
@@ -3860,29 +3897,31 @@ var MultiAutocomplete = ({
3860
3897
  ...downshiftDefaults
3861
3898
  },
3862
3899
  popoutProps: {
3863
- focusOnContent: false
3900
+ focusOnContent: false,
3901
+ ...userPopoutProps
3864
3902
  },
3903
+ autoCloseOnEmpty: true,
3865
3904
  children
3866
3905
  }
3867
3906
  );
3868
3907
  };
3869
3908
 
3870
3909
  // src/Autocomplete/Autocomplete.tsx
3871
- var import_jsx_runtime23 = require("react/jsx-runtime");
3910
+ var import_jsx_runtime24 = require("react/jsx-runtime");
3872
3911
  var Autocomplete = ({
3873
3912
  multiSelect = false,
3874
3913
  ...rest
3875
3914
  }) => {
3876
3915
  if (multiSelect) {
3877
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(MultiAutocomplete, { ...rest });
3916
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(MultiAutocomplete, { ...rest });
3878
3917
  }
3879
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(SingleAutocomplete, { ...rest });
3918
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(SingleAutocomplete, { ...rest });
3880
3919
  };
3881
3920
 
3882
3921
  // src/Autocomplete/AutocompleteInput.tsx
3883
3922
  var import_react24 = require("react");
3884
3923
  var import_seeds_react_input2 = require("@sproutsocial/seeds-react-input");
3885
- var import_jsx_runtime24 = require("react/jsx-runtime");
3924
+ var import_jsx_runtime25 = require("react/jsx-runtime");
3886
3925
  var AutocompleteInput = ({
3887
3926
  onKeyDown,
3888
3927
  onChange,
@@ -3893,7 +3932,7 @@ var AutocompleteInput = ({
3893
3932
  ...rest
3894
3933
  }) => {
3895
3934
  const { getInputComponentProps, inputValue, ref, ariaProps } = useMenuToggleContext();
3896
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
3935
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
3897
3936
  import_seeds_react_input2.Input,
3898
3937
  {
3899
3938
  id: "autocomplete_input",
@@ -3919,7 +3958,7 @@ var AutocompleteInput = ({
3919
3958
 
3920
3959
  // src/Autocomplete/AutocompleteTokenInput.tsx
3921
3960
  var import_react25 = require("react");
3922
- var import_jsx_runtime25 = require("react/jsx-runtime");
3961
+ var import_jsx_runtime26 = require("react/jsx-runtime");
3923
3962
  var AutocompleteTokenInput = ({
3924
3963
  onKeyDown,
3925
3964
  onChange,
@@ -3938,7 +3977,7 @@ var AutocompleteTokenInput = ({
3938
3977
  ref,
3939
3978
  ariaProps
3940
3979
  } = useMenuToggleContext();
3941
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
3980
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
3942
3981
  MenuTokenInput,
3943
3982
  {
3944
3983
  id: "autocomplete_input",
@@ -3963,19 +4002,19 @@ var AutocompleteTokenInput = ({
3963
4002
  // src/Autocomplete/AutocompleteSelect.tsx
3964
4003
  var import_seeds_react_icon4 = __toESM(require("@sproutsocial/seeds-react-icon"));
3965
4004
  var import_react26 = require("react");
3966
- var import_styled_components13 = __toESM(require("styled-components"));
4005
+ var import_styled_components14 = __toESM(require("styled-components"));
3967
4006
  var import_seeds_react_input3 = require("@sproutsocial/seeds-react-input");
3968
- var import_jsx_runtime26 = require("react/jsx-runtime");
3969
- var StyledAutocompleteInput = (0, import_styled_components13.default)(AutocompleteInput)`
4007
+ var import_jsx_runtime27 = require("react/jsx-runtime");
4008
+ var StyledAutocompleteInput = (0, import_styled_components14.default)(AutocompleteInput)`
3970
4009
  ${import_seeds_react_input3.Accessory} {
3971
4010
  pointer-events: none;
3972
4011
  }
3973
4012
  `;
3974
4013
  var AutocompleteSelect = (props) => {
3975
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
4014
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
3976
4015
  StyledAutocompleteInput,
3977
4016
  {
3978
- elemAfter: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_seeds_react_icon4.default, { name: "chevron-down" }),
4017
+ elemAfter: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_seeds_react_icon4.default, { name: "chevron-down" }),
3979
4018
  ...props
3980
4019
  }
3981
4020
  );
@@ -4012,7 +4051,7 @@ var nestedMenuStateReducer = (_state, actionAndChanges) => {
4012
4051
 
4013
4052
  // src/NestedMenu/NestedMenuContext.tsx
4014
4053
  var import_react27 = require("react");
4015
- var import_jsx_runtime27 = require("react/jsx-runtime");
4054
+ var import_jsx_runtime28 = require("react/jsx-runtime");
4016
4055
  var defaultNestedMenuContext = {
4017
4056
  selectedMenuPath: [],
4018
4057
  setSelectedMenuId: () => {
@@ -4036,7 +4075,7 @@ var NestedMenuProvider = ({
4036
4075
  children,
4037
4076
  ...nestedMenuProps
4038
4077
  }) => {
4039
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(NestedMenuContext.Provider, { value: nestedMenuProps, children });
4078
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(NestedMenuContext.Provider, { value: nestedMenuProps, children });
4040
4079
  };
4041
4080
  var useNestedMenuContext = () => {
4042
4081
  const nestedMenuContextValue = (0, import_react27.useContext)(NestedMenuContext);
@@ -4055,7 +4094,7 @@ var import_seeds_react_utilities3 = require("@sproutsocial/seeds-react-utilities
4055
4094
  // src/NestedMenu/NestedMenuItem.tsx
4056
4095
  var import_seeds_react_icon5 = require("@sproutsocial/seeds-react-icon");
4057
4096
  var import_seeds_react_box4 = require("@sproutsocial/seeds-react-box");
4058
- var import_jsx_runtime28 = require("react/jsx-runtime");
4097
+ var import_jsx_runtime29 = require("react/jsx-runtime");
4059
4098
  var NestedMenuItem = ({
4060
4099
  children,
4061
4100
  childMenuId,
@@ -4071,15 +4110,15 @@ var NestedMenuItem = ({
4071
4110
  }
4072
4111
  }
4073
4112
  } : {};
4074
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(MenuItem, { ...onClickProps, ...rest, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_seeds_react_box4.Box, { display: "flex", justifyContent: "space-between", children: [
4113
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(MenuItem, { ...onClickProps, ...rest, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(import_seeds_react_box4.Box, { display: "flex", justifyContent: "space-between", children: [
4075
4114
  children,
4076
- childMenuId && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(MenuItemActionRight, { children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_seeds_react_icon5.Icon, { name: "arrow-right-outline" }) })
4115
+ childMenuId && /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(MenuItemActionRight, { children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_seeds_react_icon5.Icon, { name: "arrow-right-outline" }) })
4077
4116
  ] }) });
4078
4117
  };
4079
4118
  NestedMenuItem.__MENU_PRIMITIVE_TYPE = "MenuItem";
4080
4119
 
4081
4120
  // src/NestedMenu/NestedMenuContent.tsx
4082
- var import_jsx_runtime29 = require("react/jsx-runtime");
4121
+ var import_jsx_runtime30 = require("react/jsx-runtime");
4083
4122
  var NestedMenuContent = ({
4084
4123
  innerRef: innerRefProp = null,
4085
4124
  onKeyDown: onKeyDownProp,
@@ -4116,7 +4155,7 @@ var NestedMenuContent = ({
4116
4155
  break;
4117
4156
  }
4118
4157
  };
4119
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
4158
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
4120
4159
  MenuContent,
4121
4160
  {
4122
4161
  onKeyDown,
@@ -4132,17 +4171,17 @@ NestedMenuContent.__MENU_PRIMITIVE_TYPE = "MenuContent";
4132
4171
  var import_seeds_react_button2 = require("@sproutsocial/seeds-react-button");
4133
4172
  var import_seeds_react_icon6 = require("@sproutsocial/seeds-react-icon");
4134
4173
  var import_react29 = require("motion/react");
4135
- var import_jsx_runtime30 = require("react/jsx-runtime");
4174
+ var import_jsx_runtime31 = require("react/jsx-runtime");
4136
4175
  var NestedMenuHeader = ({
4137
4176
  backArrowLabel,
4138
4177
  ...props
4139
4178
  }) => {
4140
4179
  const { goBack, selectedMenuPath, animationSpeed } = useNestedMenuContext();
4141
4180
  const showBackArrow = selectedMenuPath.length > 1;
4142
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
4181
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4143
4182
  MenuHeader,
4144
4183
  {
4145
- leftAction: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react29.AnimatePresence, { mode: "wait", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
4184
+ leftAction: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_react29.AnimatePresence, { mode: "wait", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
4146
4185
  import_react29.motion.div,
4147
4186
  {
4148
4187
  initial: { opacity: 0 },
@@ -4151,7 +4190,7 @@ var NestedMenuHeader = ({
4151
4190
  opacity: 0,
4152
4191
  transition: { duration: animationSpeed }
4153
4192
  },
4154
- children: showBackArrow ? /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_seeds_react_button2.Button, { onClick: goBack, ariaLabel: backArrowLabel, children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_seeds_react_icon6.Icon, { name: "arrow-left" }) }) : void 0
4193
+ children: showBackArrow ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_seeds_react_button2.Button, { onClick: goBack, ariaLabel: backArrowLabel, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_seeds_react_icon6.Icon, { name: "arrow-left" }) }) : void 0
4155
4194
  },
4156
4195
  `${selectedMenuPath}-header--button`
4157
4196
  ) }),
@@ -4162,7 +4201,7 @@ var NestedMenuHeader = ({
4162
4201
 
4163
4202
  // src/NestedMenu/NestedMenuRoot.tsx
4164
4203
  var import_react30 = __toESM(require("react"));
4165
- var import_jsx_runtime31 = require("react/jsx-runtime");
4204
+ var import_jsx_runtime32 = require("react/jsx-runtime");
4166
4205
  var NestedMenuRoot = ({
4167
4206
  children,
4168
4207
  menuToggleElement,
@@ -4177,14 +4216,14 @@ var NestedMenuRoot = ({
4177
4216
  menuContext.selectedItem,
4178
4217
  menuContext.selectedItems?.length
4179
4218
  ]);
4180
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(MenuContentProvider, { menuContext, children });
4219
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(MenuContentProvider, { menuContext, children });
4181
4220
  };
4182
4221
 
4183
4222
  // src/NestedMenu/NestedMenuPopout.tsx
4184
4223
  var import_react31 = require("motion/react");
4185
- var import_styled_components14 = __toESM(require("styled-components"));
4186
- var import_jsx_runtime32 = require("react/jsx-runtime");
4187
- var StyledDiv = (0, import_styled_components14.default)(import_react31.motion.div)`
4224
+ var import_styled_components15 = __toESM(require("styled-components"));
4225
+ var import_jsx_runtime33 = require("react/jsx-runtime");
4226
+ var StyledDiv = (0, import_styled_components15.default)(import_react31.motion.div)`
4188
4227
  overflow: hidden;
4189
4228
  `;
4190
4229
  var NestedMenuPopout = ({
@@ -4194,7 +4233,7 @@ var NestedMenuPopout = ({
4194
4233
  ...popoutProps
4195
4234
  }) => {
4196
4235
  const { activeMenuContext, rootMenuContextProps, resetSelectedMenuPath } = useNestedMenuContext();
4197
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
4236
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4198
4237
  MenuPopout,
4199
4238
  {
4200
4239
  ...popoutProps,
@@ -4203,8 +4242,8 @@ var NestedMenuPopout = ({
4203
4242
  openMenu: rootMenuContextProps.openMenu,
4204
4243
  closeMenu: rootMenuContextProps.closeMenu,
4205
4244
  width: width2,
4206
- content: (props) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(StyledDiv, { layout: "position", children: typeof content === "function" ? content(props) : content }),
4207
- children: (toggleProps) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
4245
+ content: (props) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(StyledDiv, { layout: "position", children: typeof content === "function" ? content(props) : content }),
4246
+ children: (toggleProps) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4208
4247
  MenuToggleProvider,
4209
4248
  {
4210
4249
  menuContext: {
@@ -4220,7 +4259,7 @@ var NestedMenuPopout = ({
4220
4259
  };
4221
4260
 
4222
4261
  // src/NestedMenu/NestedMenu.tsx
4223
- var import_jsx_runtime33 = require("react/jsx-runtime");
4262
+ var import_jsx_runtime34 = require("react/jsx-runtime");
4224
4263
  var NestedMenu = ({
4225
4264
  initialMenuId,
4226
4265
  menus,
@@ -4374,7 +4413,7 @@ var NestedMenu = ({
4374
4413
  initialIsOpen: true,
4375
4414
  children: (
4376
4415
  // Handles the smooth animating of the content
4377
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_react33.AnimatePresence, { mode: "wait", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
4416
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_react33.AnimatePresence, { mode: "wait", children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
4378
4417
  import_react33.motion.div,
4379
4418
  {
4380
4419
  variants: contentVariants,
@@ -4383,7 +4422,7 @@ var NestedMenu = ({
4383
4422
  exit: "leave",
4384
4423
  custom: { isAdding, hasLoadedOnce },
4385
4424
  children: [
4386
- MenuHeaderComponent && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4425
+ MenuHeaderComponent && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
4387
4426
  MenuHeaderComponent,
4388
4427
  {
4389
4428
  backArrowLabel,
@@ -4391,7 +4430,7 @@ var NestedMenu = ({
4391
4430
  }
4392
4431
  ),
4393
4432
  children && children,
4394
- menuItems && !children && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4433
+ menuItems && !children && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
4395
4434
  NestedMenuContent,
4396
4435
  {
4397
4436
  menuItems,
@@ -4405,7 +4444,7 @@ var NestedMenu = ({
4405
4444
  ),
4406
4445
  ...restMenuProps
4407
4446
  };
4408
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4447
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
4409
4448
  NestedMenuProvider,
4410
4449
  {
4411
4450
  ...{
@@ -4419,11 +4458,11 @@ var NestedMenu = ({
4419
4458
  setActiveMenuContext,
4420
4459
  animationSpeed
4421
4460
  },
4422
- children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4461
+ children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
4423
4462
  NestedMenuPopout,
4424
4463
  {
4425
4464
  content: MenuComponent && // Handles the rerender of the component
4426
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_react33.AnimatePresence, { mode: "wait", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
4465
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_react33.AnimatePresence, { mode: "wait", children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
4427
4466
  import_react33.motion.div,
4428
4467
  {
4429
4468
  variants: menuVariants,
@@ -4431,7 +4470,7 @@ var NestedMenu = ({
4431
4470
  animate: "enter",
4432
4471
  exit: "leave",
4433
4472
  custom: { isAdding, hasLoadedOnce },
4434
- children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(MenuComponent, { ...nestedMenuProps })
4473
+ children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(MenuComponent, { ...nestedMenuProps })
4435
4474
  },
4436
4475
  `${currentMenuId}-content`
4437
4476
  ) }),