@sproutsocial/seeds-react-menu 1.2.3 → 1.3.1

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