@gooddata/sdk-ui-kit 10.27.0-alpha.23 → 10.27.0-alpha.25

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.
Files changed (47) hide show
  1. package/esm/@ui/UiMenu/UiMenu.d.ts +2 -2
  2. package/esm/@ui/UiMenu/UiMenu.d.ts.map +1 -1
  3. package/esm/@ui/UiMenu/UiMenu.js +16 -74
  4. package/esm/@ui/UiMenu/UiMenu.js.map +1 -1
  5. package/esm/@ui/UiMenu/context.d.ts +11 -0
  6. package/esm/@ui/UiMenu/context.d.ts.map +1 -0
  7. package/esm/@ui/UiMenu/context.js +11 -0
  8. package/esm/@ui/UiMenu/context.js.map +1 -0
  9. package/esm/@ui/UiMenu/defaults/DefaultUiMenuGroupItemComponent.d.ts +7 -0
  10. package/esm/@ui/UiMenu/defaults/DefaultUiMenuGroupItemComponent.d.ts.map +1 -0
  11. package/esm/@ui/UiMenu/defaults/DefaultUiMenuGroupItemComponent.js +21 -0
  12. package/esm/@ui/UiMenu/defaults/DefaultUiMenuGroupItemComponent.js.map +1 -0
  13. package/esm/@ui/UiMenu/defaults/DefaultUiMenuHeaderComponent.d.ts +2 -2
  14. package/esm/@ui/UiMenu/defaults/DefaultUiMenuHeaderComponent.d.ts.map +1 -1
  15. package/esm/@ui/UiMenu/defaults/DefaultUiMenuHeaderComponent.js +19 -3
  16. package/esm/@ui/UiMenu/defaults/DefaultUiMenuHeaderComponent.js.map +1 -1
  17. package/esm/@ui/UiMenu/defaults/DefaultUiMenuInteractiveItemComponent.d.ts +6 -2
  18. package/esm/@ui/UiMenu/defaults/DefaultUiMenuInteractiveItemComponent.d.ts.map +1 -1
  19. package/esm/@ui/UiMenu/defaults/DefaultUiMenuInteractiveItemComponent.js +45 -2
  20. package/esm/@ui/UiMenu/defaults/DefaultUiMenuInteractiveItemComponent.js.map +1 -1
  21. package/esm/@ui/UiMenu/defaults/DefaultUiMenuStaticItemComponent.d.ts +2 -2
  22. package/esm/@ui/UiMenu/defaults/DefaultUiMenuStaticItemComponent.d.ts.map +1 -1
  23. package/esm/@ui/UiMenu/defaults/DefaultUiMenuStaticItemComponent.js +8 -3
  24. package/esm/@ui/UiMenu/defaults/DefaultUiMenuStaticItemComponent.js.map +1 -1
  25. package/esm/@ui/UiMenu/hooks.d.ts +11 -11
  26. package/esm/@ui/UiMenu/hooks.d.ts.map +1 -1
  27. package/esm/@ui/UiMenu/hooks.js +101 -15
  28. package/esm/@ui/UiMenu/hooks.js.map +1 -1
  29. package/esm/@ui/UiMenu/itemUtils.d.ts +15 -14
  30. package/esm/@ui/UiMenu/itemUtils.d.ts.map +1 -1
  31. package/esm/@ui/UiMenu/itemUtils.js +39 -11
  32. package/esm/@ui/UiMenu/itemUtils.js.map +1 -1
  33. package/esm/@ui/UiMenu/types.d.ts +70 -32
  34. package/esm/@ui/UiMenu/types.d.ts.map +1 -1
  35. package/esm/List/ListItem.js +2 -2
  36. package/esm/List/ListItem.js.map +1 -1
  37. package/esm/index.d.ts +1 -1
  38. package/esm/index.d.ts.map +1 -1
  39. package/esm/index.js.map +1 -1
  40. package/esm/sdk-ui-kit.d.ts +83 -35
  41. package/esm/typings/accessibility.d.ts +1 -1
  42. package/package.json +8 -8
  43. package/src/@ui/UiListbox/UiListbox.scss +2 -4
  44. package/src/@ui/UiMenu/UiMenu.scss +23 -7
  45. package/styles/css/main.css +23 -7
  46. package/styles/css/main.css.map +1 -1
  47. package/styles/scss/mixins.scss +6 -0
@@ -1,25 +1,106 @@
1
1
  // (C) 2022-2025 GoodData Corporation
2
- import React from "react";
3
2
  import { makeMenuKeyboardNavigation } from "../@utils/keyboardNavigation.js";
4
- import { getClosestFocusableSibling, getItemParent, getSiblingItems } from "./itemUtils.js";
5
- export function useItemRefs(focusedId) {
6
- const itemsContainerRef = React.useRef(null);
7
- const itemRefs = React.useRef({});
8
- const setItemRef = React.useCallback((id) => (element) => {
3
+ import { getClosestFocusableSibling, getInteractiveItem, getItemInteractiveParent, getItemsByInteractiveParent, getSiblingItems, unwrapGroupItems, } from "./itemUtils.js";
4
+ import { useAutoupdateRef } from "@gooddata/sdk-ui";
5
+ import React from "react";
6
+ import { DefaultUiMenuInteractiveItemComponent, DefaultUiMenuInteractiveItemWrapperComponent, } from "./defaults/DefaultUiMenuInteractiveItemComponent.js";
7
+ import { DefaultUiMenuStaticItemComponent } from "./defaults/DefaultUiMenuStaticItemComponent.js";
8
+ import { DefaultUiMenuGroupItemComponent } from "./defaults/DefaultUiMenuGroupItemComponent.js";
9
+ import { DefaultUiMenuHeaderComponent } from "./defaults/DefaultUiMenuHeaderComponent.js";
10
+ import { v4 as uuid } from "uuid";
11
+ import { typedUiMenuContextStore } from "./context.js";
12
+ /**
13
+ * @internal
14
+ */
15
+ export function useUiMenuContextValue(props, menuComponentRef, itemsContainerRef) {
16
+ const { items, itemClassName, onSelect, onClose, InteractiveItemComponent = DefaultUiMenuInteractiveItemComponent, InteractiveItemWrapperComponent = DefaultUiMenuInteractiveItemWrapperComponent, StaticItemComponent = DefaultUiMenuStaticItemComponent, GroupItemComponent = DefaultUiMenuGroupItemComponent, MenuHeaderComponent = DefaultUiMenuHeaderComponent, shouldCloseOnSelect = true, isDisabledFocusable = true, ariaAttributes, } = props;
17
+ const [controlType, setControlType] = React.useState("unknown");
18
+ const isItemFocusable = React.useCallback((item) => {
19
+ if (!item || item.type !== "interactive") {
20
+ return false;
21
+ }
22
+ return isDisabledFocusable || !item.isDisabled;
23
+ }, [isDisabledFocusable]);
24
+ const [focusedId, setFocusedId_internal] = React.useState(() => items.find(isItemFocusable)?.id);
25
+ const setFocusedId = React.useCallback((...args) => {
26
+ setFocusedId_internal(...args);
27
+ // Focus is lost when clicking on an item that opens a submenu. We need to refocus the menu.
28
+ menuComponentRef.current?.focus();
29
+ }, [menuComponentRef]);
30
+ const focusedItem = focusedId === undefined ? undefined : getInteractiveItem(items, focusedId);
31
+ const handleSelectItem = React.useCallback((item) => {
32
+ if (!item || item.isDisabled) {
33
+ return;
34
+ }
35
+ // If there is no submenu, select the item
36
+ if (!item.subItems) {
37
+ onSelect?.(item);
38
+ shouldCloseOnSelect && onClose?.();
39
+ return;
40
+ }
41
+ // Otherwise focus the first focusable child
42
+ const itemToFocus = getItemsByInteractiveParent(items, item.id)?.filter(isItemFocusable)[0];
43
+ if (!itemToFocus) {
44
+ return;
45
+ }
46
+ setFocusedId(itemToFocus.id);
47
+ menuComponentRef.current?.focus();
48
+ }, [isItemFocusable, items, menuComponentRef, onClose, onSelect, setFocusedId, shouldCloseOnSelect]);
49
+ const makeItemId = React.useCallback((item) => (item && item.type === "interactive" ? `item-${ariaAttributes.id}-${item.id}` : uuid()), [ariaAttributes.id]);
50
+ const scrollToView = React.useCallback((element) => {
9
51
  if (!element) {
10
- delete itemRefs.current[id];
11
52
  return;
12
53
  }
13
- if (focusedId === id &&
54
+ if (controlType === "keyboard" &&
14
55
  itemsContainerRef.current &&
15
56
  itemsContainerRef.current.scrollHeight > itemsContainerRef.current.clientHeight) {
16
57
  element.scrollIntoView({ block: "nearest", behavior: "smooth" });
17
58
  }
18
- itemRefs.current[id] = element;
19
- }, [focusedId]);
20
- return { itemRefs, setItemRef, itemsContainerRef };
59
+ }, [controlType, itemsContainerRef]);
60
+ return {
61
+ controlType,
62
+ setControlType,
63
+ setFocusedId,
64
+ focusedItem,
65
+ onClose,
66
+ items,
67
+ onSelect: handleSelectItem,
68
+ itemClassName,
69
+ isItemFocusable,
70
+ makeItemId,
71
+ scrollToView,
72
+ menuComponentRef,
73
+ itemsContainerRef,
74
+ InteractiveItemWrapperComponent,
75
+ InteractiveItemComponent,
76
+ StaticItemComponent,
77
+ GroupItemComponent,
78
+ MenuHeaderComponent,
79
+ ItemComponent,
80
+ };
21
81
  }
22
- export function useKeyNavigation({ menuContextRef, shouldKeyboardActionPreventDefault, shouldKeyboardActionStopPropagation, onUnhandledKeyDown, }) {
82
+ const ItemComponent = React.memo(function ItemComponent({ item, }) {
83
+ const { InteractiveItemWrapperComponent, StaticItemComponent, GroupItemComponent } = typedUiMenuContextStore().useContextStore((ctx) => ({
84
+ InteractiveItemWrapperComponent: ctx.InteractiveItemWrapperComponent,
85
+ StaticItemComponent: ctx.StaticItemComponent,
86
+ GroupItemComponent: ctx.GroupItemComponent,
87
+ }));
88
+ if (item.type === "interactive") {
89
+ return React.createElement(InteractiveItemWrapperComponent, { item: item });
90
+ }
91
+ if (item.type === "static") {
92
+ return React.createElement(StaticItemComponent, { item: item });
93
+ }
94
+ if (item.type === "group") {
95
+ return React.createElement(GroupItemComponent, { item: item });
96
+ }
97
+ return null;
98
+ });
99
+ /**
100
+ * @internal
101
+ */
102
+ export function useKeyNavigation({ menuContextValue, shouldKeyboardActionPreventDefault, shouldKeyboardActionStopPropagation, onUnhandledKeyDown, }) {
103
+ const menuContextRef = useAutoupdateRef(menuContextValue);
23
104
  return makeMenuKeyboardNavigation({
24
105
  shouldPreventDefault: shouldKeyboardActionPreventDefault,
25
106
  shouldStopPropagation: shouldKeyboardActionStopPropagation,
@@ -47,7 +128,7 @@ export function useKeyNavigation({ menuContextRef, shouldKeyboardActionPreventDe
47
128
  if (prevId === undefined) {
48
129
  return items.find(isItemFocusable)?.id;
49
130
  }
50
- return getSiblingItems(items, prevId)?.find(isItemFocusable)?.id;
131
+ return unwrapGroupItems(getSiblingItems(items, prevId) ?? []).find(isItemFocusable)?.id;
51
132
  });
52
133
  },
53
134
  onFocusLast: () => {
@@ -56,7 +137,9 @@ export function useKeyNavigation({ menuContextRef, shouldKeyboardActionPreventDe
56
137
  if (prevId === undefined) {
57
138
  return [...items].reverse().find(isItemFocusable)?.id;
58
139
  }
59
- return [...(getSiblingItems(items, prevId) ?? [])].reverse().find(isItemFocusable)?.id;
140
+ return [...unwrapGroupItems(getSiblingItems(items, prevId) ?? [])]
141
+ .reverse()
142
+ .find(isItemFocusable)?.id;
60
143
  });
61
144
  },
62
145
  onSelect: () => {
@@ -65,6 +148,9 @@ export function useKeyNavigation({ menuContextRef, shouldKeyboardActionPreventDe
65
148
  },
66
149
  onEnterLevel: () => {
67
150
  const { onSelect, focusedItem } = menuContextRef.current;
151
+ if (focusedItem?.type !== "interactive" || !focusedItem.subItems) {
152
+ return;
153
+ }
68
154
  onSelect(focusedItem);
69
155
  },
70
156
  onLeaveLevel: () => {
@@ -73,7 +159,7 @@ export function useKeyNavigation({ menuContextRef, shouldKeyboardActionPreventDe
73
159
  if (prevId === undefined) {
74
160
  return prevId;
75
161
  }
76
- return getItemParent(items, prevId)?.id ?? prevId;
162
+ return getItemInteractiveParent(items, prevId)?.id ?? prevId;
77
163
  });
78
164
  },
79
165
  onClose: () => {
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/@ui/UiMenu/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/@ui/UiMenu/hooks.tsx"],"names":[],"mappings":"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"}
@@ -1,17 +1,18 @@
1
- import { IUiMenuInteractiveItem, IUiMenuItem } from "./types.js";
2
- export declare const findItem: <InteractiveItemData, StaticItemData>(items: IUiMenuItem<InteractiveItemData, StaticItemData>[], predicate: (item: IUiMenuItem<InteractiveItemData, StaticItemData>) => boolean) => IUiMenuItem<InteractiveItemData, StaticItemData>;
3
- export declare const getItem: <InteractiveItemData, StaticItemData>(items: IUiMenuItem<InteractiveItemData, StaticItemData>[], itemId: string) => IUiMenuItem<InteractiveItemData, StaticItemData>;
4
- export declare const findInteractiveItem: <InteractiveItemData, StaticItemData>(items: IUiMenuItem<InteractiveItemData, StaticItemData>[], predicate: (item: IUiMenuInteractiveItem<InteractiveItemData, StaticItemData>) => boolean) => IUiMenuInteractiveItem<InteractiveItemData, StaticItemData>;
5
- export declare const getInteractiveItem: <InteractiveItemData, StaticItemData>(items: IUiMenuItem<InteractiveItemData, StaticItemData>[], itemId: string) => IUiMenuInteractiveItem<InteractiveItemData, StaticItemData>;
6
- export declare const getItemsByParent: <InteractiveItemData, StaticItemData>(items: IUiMenuItem<InteractiveItemData, StaticItemData>[], parentId?: string) => IUiMenuItem<InteractiveItemData, StaticItemData>[];
7
- export declare const getItemParent: <InteractiveItemData, StaticItemData>(items: IUiMenuItem<InteractiveItemData, StaticItemData>[], itemId: string) => IUiMenuInteractiveItem<InteractiveItemData, StaticItemData>;
8
- export declare const getSiblingItems: <InteractiveItemData, StaticItemData>(items: IUiMenuItem<InteractiveItemData, StaticItemData>[], itemId: string) => IUiMenuItem<InteractiveItemData, StaticItemData>[];
9
- export declare const getNextSiblings: <InteractiveItemData, StaticItemData>(items: IUiMenuItem<InteractiveItemData, StaticItemData>[], itemId: string) => IUiMenuItem<InteractiveItemData, StaticItemData>[];
10
- export declare const getPreviousSiblings: <InteractiveItemData, StaticItemData>(items: IUiMenuItem<InteractiveItemData, StaticItemData>[], itemId: string) => IUiMenuItem<InteractiveItemData, StaticItemData>[];
11
- export declare const getClosestFocusableSibling: <InteractiveItemData, StaticItemData>(args: {
12
- items: IUiMenuItem<InteractiveItemData, StaticItemData>[];
13
- isItemFocusable: (item: IUiMenuItem<InteractiveItemData, StaticItemData>) => boolean;
1
+ import { IUiMenuInteractiveItem, IUiMenuItem, IUiMenuItemData } from "./types.js";
2
+ export declare const findItem: <T extends IUiMenuItemData = object>(items: IUiMenuItem<T>[], predicate: (item: IUiMenuItem<T>) => boolean) => IUiMenuItem<T>;
3
+ export declare const getItem: <T extends IUiMenuItemData = object>(items: IUiMenuItem<T>[], itemId: string) => IUiMenuItem<T>;
4
+ export declare const findInteractiveItem: <T extends IUiMenuItemData = object>(items: IUiMenuItem<T>[], predicate: (item: IUiMenuInteractiveItem<T>) => boolean) => IUiMenuInteractiveItem<T>;
5
+ export declare const getInteractiveItem: <T extends IUiMenuItemData = object>(items: IUiMenuItem<T>[], itemId: string) => IUiMenuInteractiveItem<T>;
6
+ export declare const getItemsByInteractiveParent: <T extends IUiMenuItemData = object>(items: IUiMenuItem<T>[], parentId?: string) => IUiMenuItem<T>[];
7
+ export declare const getItemInteractiveParent: <T extends IUiMenuItemData = object>(items: IUiMenuItem<T>[], itemId: string) => IUiMenuInteractiveItem<T>;
8
+ export declare const getSiblingItems: <T extends IUiMenuItemData = object>(items: IUiMenuItem<T>[], itemId: string) => IUiMenuItem<T>[];
9
+ export declare const getNextSiblings: <T extends IUiMenuItemData = object>(items: IUiMenuItem<T>[], itemId: string) => IUiMenuItem<T>[];
10
+ export declare const getPreviousSiblings: <T extends IUiMenuItemData = object>(items: IUiMenuItem<T>[], itemId: string) => IUiMenuItem<T>[];
11
+ export declare const getClosestFocusableSibling: <T extends IUiMenuItemData = object>(args: {
12
+ items: IUiMenuItem<T>[];
13
+ isItemFocusable: (item: IUiMenuItem<T>) => boolean;
14
14
  itemId?: string;
15
15
  direction: "forward" | "backward";
16
- }) => IUiMenuItem<InteractiveItemData, StaticItemData>;
16
+ }) => IUiMenuItem<T>;
17
+ export declare function unwrapGroupItems<T extends IUiMenuItemData = object>(items: IUiMenuItem<T>[]): IUiMenuItem<T>[];
17
18
  //# sourceMappingURL=itemUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"itemUtils.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiMenu/itemUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEjE,eAAO,MAAM,QAAQ,0KAEsD,OAAO,qDAgBjF,CAAC;AAEF,eAAO,MAAM,OAAO,2GAER,MAAM,qDAGjB,CAAC;AAEF,eAAO,MAAM,mBAAmB,qLAEsD,OAAO,gEAK5F,CAAC;AAEF,eAAO,MAAM,kBAAkB,2GAEnB,MAAM,gEAGjB,CAAC;AAEF,eAAO,MAAM,gBAAgB,8GAEd,MAAM,uDAKpB,CAAC;AAEF,eAAO,MAAM,aAAa,2GAEd,MAAM,gEAMjB,CAAC;AAEF,eAAO,MAAM,eAAe,2GAEhB,MAAM,uDAQjB,CAAC;AAEF,eAAO,MAAM,eAAe,2GAEhB,MAAM,uDAWjB,CAAC;AAEF,eAAO,MAAM,mBAAmB,2GAEpB,MAAM,uDAWjB,CAAC;AAEF,eAAO,MAAM,0BAA0B;;iFAE0C,OAAO;aAC3E,MAAM;eACJ,SAAS,GAAG,UAAU;sDAgBpC,CAAC"}
1
+ {"version":3,"file":"itemUtils.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiMenu/itemUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElF,eAAO,MAAM,QAAQ,qGAEoB,OAAO,mBAgB/C,CAAC;AAEF,eAAO,MAAM,OAAO,wEAER,MAAM,mBAGjB,CAAC;AAEF,eAAO,MAAM,mBAAmB,gHAEoB,OAAO,8BAK1D,CAAC;AAEF,eAAO,MAAM,kBAAkB,wEAEnB,MAAM,8BAGjB,CAAC;AAEF,eAAO,MAAM,2BAA2B,2EAEzB,MAAM,qBAKpB,CAAC;AAEF,eAAO,MAAM,wBAAwB,wEAEzB,MAAM,8BAmBjB,CAAC;AAEF,eAAO,MAAM,eAAe,wEAEhB,MAAM,qBAQjB,CAAC;AAEF,eAAO,MAAM,eAAe,wEAEhB,MAAM,qBAWjB,CAAC;AAEF,eAAO,MAAM,mBAAmB,wEAEpB,MAAM,qBAWjB,CAAC;AAEF,eAAO,MAAM,0BAA0B;;+CAEQ,OAAO;aACzC,MAAM;eACJ,SAAS,GAAG,UAAU;oBAkBpC,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,eAAe,GAAG,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,oBAkB3F"}
@@ -4,8 +4,8 @@ export const findItem = (items, predicate) => {
4
4
  if (predicate(item)) {
5
5
  return item;
6
6
  }
7
- if (item.type === "interactive" && item.subMenu) {
8
- const foundItemInSubMenu = findItem(item.subMenu, predicate);
7
+ if ((item.type === "interactive" || item.type === "group") && item.subItems !== undefined) {
8
+ const foundItemInSubMenu = findItem(item.subItems, predicate);
9
9
  if (foundItemInSubMenu) {
10
10
  return foundItemInSubMenu;
11
11
  }
@@ -23,19 +23,31 @@ export const findInteractiveItem = (items, predicate) => {
23
23
  export const getInteractiveItem = (items, itemId) => {
24
24
  return findInteractiveItem(items, (item) => item.id === itemId);
25
25
  };
26
- export const getItemsByParent = (items, parentId) => {
26
+ export const getItemsByInteractiveParent = (items, parentId) => {
27
27
  const isRootLevel = parentId === undefined;
28
- return isRootLevel ? items : findInteractiveItem(items, (item) => item.id === parentId)?.subMenu;
28
+ return isRootLevel ? items : findInteractiveItem(items, (item) => item.id === parentId)?.subItems;
29
29
  };
30
- export const getItemParent = (items, itemId) => {
31
- return findInteractiveItem(items, (item) => !!item.subMenu?.some((subMenuItem) => subMenuItem.id === itemId));
30
+ export const getItemInteractiveParent = (items, itemId) => {
31
+ const parent = findItem(items, (item) => {
32
+ if (item.type === "static" || item.subItems === undefined) {
33
+ return false;
34
+ }
35
+ return item.subItems.some((subMenuItem) => subMenuItem.id === itemId);
36
+ });
37
+ if (parent?.type === "interactive") {
38
+ return parent;
39
+ }
40
+ if (parent?.type === "group") {
41
+ return getItemInteractiveParent(items, parent.id);
42
+ }
43
+ return undefined;
32
44
  };
33
45
  export const getSiblingItems = (items, itemId) => {
34
46
  // If itemId is provided but the item doesn't exist, return undefined
35
47
  if (!getItem(items, itemId)) {
36
48
  return undefined;
37
49
  }
38
- return getItemsByParent(items, getItemParent(items, itemId)?.id);
50
+ return getItemsByInteractiveParent(items, getItemInteractiveParent(items, itemId)?.id);
39
51
  };
40
52
  export const getNextSiblings = (items, itemId) => {
41
53
  const siblingItems = getSiblingItems(items, itemId);
@@ -57,17 +69,33 @@ export const getPreviousSiblings = (items, itemId) => {
57
69
  };
58
70
  export const getClosestFocusableSibling = (args) => {
59
71
  const { items, isItemFocusable, itemId, direction } = args;
72
+ const unwrappedItems = unwrapGroupItems(items);
60
73
  switch (direction) {
61
74
  case "forward":
62
75
  if (itemId === undefined) {
63
- return items.find(isItemFocusable);
76
+ return unwrappedItems.find(isItemFocusable);
64
77
  }
65
- return getNextSiblings(items, itemId).find(isItemFocusable);
78
+ return getNextSiblings(unwrappedItems, itemId).find(isItemFocusable);
66
79
  case "backward":
67
80
  if (itemId === undefined) {
68
- return [...items].reverse().find(isItemFocusable);
81
+ return [...unwrappedItems].reverse().find(isItemFocusable);
69
82
  }
70
- return getPreviousSiblings(items, itemId).find(isItemFocusable);
83
+ return getPreviousSiblings(unwrappedItems, itemId).find(isItemFocusable);
71
84
  }
72
85
  };
86
+ export function unwrapGroupItems(items) {
87
+ const result = [];
88
+ for (const item of items) {
89
+ if (item.type === "group") {
90
+ result.push(...unwrapGroupItems(item.subItems));
91
+ continue;
92
+ }
93
+ if (item.type === "interactive" && item.subItems !== undefined) {
94
+ result.push({ ...item, subItems: unwrapGroupItems(item.subItems) });
95
+ continue;
96
+ }
97
+ result.push(item);
98
+ }
99
+ return result;
100
+ }
73
101
  //# sourceMappingURL=itemUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"itemUtils.js","sourceRoot":"","sources":["../../../src/@ui/UiMenu/itemUtils.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAIhC,MAAM,CAAC,MAAM,QAAQ,GAAG,CACpB,KAAyD,EACzD,SAA8E,EAClB,EAAE;IAC9D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC9C,MAAM,kBAAkB,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAE7D,IAAI,kBAAkB,EAAE,CAAC;gBACrB,OAAO,kBAAkB,CAAC;YAC9B,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,CACnB,KAAyD,EACzD,MAAc,EAC8C,EAAE;IAC9D,OAAO,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;AACzD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAC/B,KAAyD,EACzD,SAAyF,EAClB,EAAE;IACzE,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAE5F,OAAO,SAAS,EAAE,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;AACrE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAC9B,KAAyD,EACzD,MAAc,EACyD,EAAE;IACzE,OAAO,mBAAmB,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,KAAyD,EACzD,QAAiB,EAC6C,EAAE;IAChE,MAAM,WAAW,GAAG,QAAQ,KAAK,SAAS,CAAC;IAE3C,OAAO,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,OAAO,CAAC;AACrG,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CACzB,KAAyD,EACzD,MAAc,EACyD,EAAE;IACzE,OAAO,mBAAmB,CACtB,KAAK,EACL,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,KAAK,MAAM,CAAC,CAC7E,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAC3B,KAAyD,EACzD,MAAc,EACgD,EAAE;IAChE,qEAAqE;IACrE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,OAAO,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;AACrE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAC3B,KAAyD,EACzD,MAAc,EACoC,EAAE;IACpD,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,YAAY,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAE9E,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QACpC,OAAO,EAAE,CAAC;IACd,CAAC;IAED,aAAa;IACb,OAAO,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;AACvF,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAC/B,KAAyD,EACzD,MAAc,EACoC,EAAE;IACpD,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,YAAY,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAE9E,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QACpC,OAAO,EAAE,CAAC;IACd,CAAC;IAED,aAAa;IACb,OAAO,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;AAC3G,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAsC,IAK/E,EAAgE,EAAE;IAC/D,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAE3D,QAAQ,SAAS,EAAE,CAAC;QAChB,KAAK,SAAS;YACV,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACvB,OAAO,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAChE,KAAK,UAAU;YACX,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACtD,CAAC;YACD,OAAO,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACxE,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"itemUtils.js","sourceRoot":"","sources":["../../../src/@ui/UiMenu/itemUtils.ts"],"names":[],"mappings":"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"}
@@ -3,80 +3,118 @@ import { IDropdownBodyRenderProps } from "../../Dropdown/index.js";
3
3
  /**
4
4
  * @internal
5
5
  */
6
- export interface IUiMenuStaticItem<T> {
6
+ export type IUiMenuItemData = {
7
+ [type in IUiMenuItem<any>["type"]]?: unknown;
8
+ };
9
+ /**
10
+ * @internal
11
+ */
12
+ export type IUiMenuStaticItem<T extends IUiMenuItemData = object> = {
7
13
  type: "static";
8
14
  id?: string;
9
- data: T;
10
- }
15
+ data: T["static"];
16
+ };
11
17
  /**
12
18
  * @internal
13
19
  */
14
- export interface IUiMenuInteractiveItem<InteractiveItemData, StaticItemData = React.ReactNode> {
20
+ export type IUiMenuInteractiveItem<T extends IUiMenuItemData = object> = {
15
21
  type: "interactive";
16
22
  id: string;
17
23
  stringTitle: string;
18
24
  isDisabled?: boolean;
19
- data: InteractiveItemData;
20
- subMenu?: IUiMenuItem<InteractiveItemData, StaticItemData>[];
25
+ data: T["interactive"];
26
+ subItems?: IUiMenuItem<T>[];
27
+ };
28
+ /**
29
+ * @internal
30
+ */
31
+ export type IUiMenuGroupItem<T extends IUiMenuItemData = object> = {
32
+ type: "group";
33
+ id: string;
34
+ stringTitle: string;
35
+ data: T["group"];
36
+ subItems: IUiMenuItem<T>[];
37
+ };
38
+ /**
39
+ * @internal
40
+ */
41
+ export type IUiMenuItem<T extends IUiMenuItemData = object> = IUiMenuStaticItem<T> | IUiMenuInteractiveItem<T> | IUiMenuGroupItem<T>;
42
+ /**
43
+ * @internal
44
+ */
45
+ export interface UiMenuItemProps<T extends IUiMenuItemData = object> {
46
+ item: IUiMenuItem<T>;
21
47
  }
22
48
  /**
23
49
  * @internal
24
50
  */
25
- export type IUiMenuItem<InteractiveItemData, StaticItemData = React.ReactNode> = IUiMenuStaticItem<StaticItemData> | IUiMenuInteractiveItem<InteractiveItemData, StaticItemData>;
51
+ export interface UiMenuInteractiveItemWrapperProps<T extends IUiMenuItemData = object> {
52
+ item: IUiMenuInteractiveItem<T>;
53
+ }
26
54
  /**
27
55
  * @internal
28
56
  */
29
- export interface UiMenuInteractiveItemProps<InteractiveItemData, StaticItemData = React.ReactNode> {
30
- item: IUiMenuInteractiveItem<InteractiveItemData, StaticItemData>;
57
+ export interface UiMenuInteractiveItemProps<T extends IUiMenuItemData = object> {
58
+ item: IUiMenuInteractiveItem<T>;
31
59
  isFocused: boolean;
32
60
  onSelect: () => void;
33
61
  }
34
62
  /**
35
63
  * @internal
36
64
  */
37
- export interface UiMenuStaticItemProps<T> {
38
- item: IUiMenuStaticItem<T>;
65
+ export interface UiMenuGroupItemProps<T extends IUiMenuItemData = object> {
66
+ item: IUiMenuGroupItem<T>;
39
67
  }
40
68
  /**
41
69
  * @internal
42
70
  */
43
- export interface UiMenuHeaderProps<InteractiveItemData, StaticItemData = React.ReactNode> {
44
- onBack?: () => void;
45
- onClose?: () => void;
46
- parentItem?: IUiMenuInteractiveItem<InteractiveItemData, StaticItemData>;
71
+ export interface UiMenuStaticItemProps<T extends IUiMenuItemData = object> {
72
+ item: IUiMenuStaticItem<T>;
47
73
  }
48
74
  /**
49
75
  * @internal
50
76
  */
51
- export type ControlType = "keyboard" | "mouse" | "unknown";
77
+ export type IUiMenuControlType = "keyboard" | "mouse" | "unknown";
78
+ /**
79
+ * @internal
80
+ */
81
+ export interface IUiMenuPluggableComponents<T extends IUiMenuItemData = object> {
82
+ InteractiveItemComponent: React.ComponentType<UiMenuInteractiveItemProps<T>>;
83
+ InteractiveItemWrapperComponent: React.ComponentType<UiMenuInteractiveItemWrapperProps<T>>;
84
+ GroupItemComponent: React.ComponentType<UiMenuGroupItemProps<T>>;
85
+ StaticItemComponent: React.ComponentType<UiMenuStaticItemProps<T>>;
86
+ MenuHeaderComponent: React.ComponentType;
87
+ }
52
88
  /**
53
89
  * @internal
54
90
  */
55
- export interface IUiMenuContext<InteractiveItemData, StaticItemData = React.ReactNode> {
56
- items: IUiMenuItem<InteractiveItemData, StaticItemData>[];
57
- focusedItem: IUiMenuInteractiveItem<InteractiveItemData, StaticItemData> | undefined;
58
- itemRefs: React.MutableRefObject<{
59
- [id: string]: HTMLElement;
60
- }>;
61
- onSelect: (item: IUiMenuInteractiveItem<InteractiveItemData, StaticItemData> | undefined) => void;
91
+ export interface IUiMenuContext<T extends IUiMenuItemData = object> extends IUiMenuPluggableComponents<T> {
92
+ items: IUiMenuItem<T>[];
93
+ focusedItem: IUiMenuInteractiveItem<T> | undefined;
94
+ onSelect: (item: IUiMenuInteractiveItem<T> | undefined) => void;
62
95
  onClose?: () => void;
63
96
  setFocusedId: React.Dispatch<React.SetStateAction<string | undefined>>;
64
- isItemFocusable: (item: IUiMenuItem<InteractiveItemData, StaticItemData>) => boolean;
97
+ isItemFocusable: (item: IUiMenuItem<T>) => boolean;
98
+ controlType: IUiMenuControlType;
99
+ setControlType: React.Dispatch<React.SetStateAction<IUiMenuControlType>>;
100
+ scrollToView: (element: HTMLElement | null) => void;
101
+ makeItemId: (item: IUiMenuItem<T>) => string;
102
+ itemClassName?: ((item: IUiMenuItem<T>) => string | undefined) | string;
103
+ ItemComponent: React.ComponentType<UiMenuItemProps<T>>;
104
+ menuComponentRef: React.RefObject<HTMLElement>;
105
+ itemsContainerRef: React.RefObject<HTMLElement>;
65
106
  }
66
107
  /**
67
108
  * @internal
68
109
  */
69
- export interface UiMenuProps<InteractiveItemData, StaticItemData = React.ReactNode> {
70
- items: IUiMenuItem<InteractiveItemData, StaticItemData>[];
110
+ export interface UiMenuProps<T extends IUiMenuItemData = object> extends Partial<IUiMenuPluggableComponents<T>> {
111
+ items: IUiMenuItem<T>[];
71
112
  className?: string;
72
- itemClassName?: ((item: IUiMenuItem<InteractiveItemData, StaticItemData>) => string | undefined) | string;
113
+ itemClassName?: ((item: IUiMenuItem<T>) => string | undefined) | string;
73
114
  maxWidth?: number;
74
- onSelect?: (item: IUiMenuInteractiveItem<InteractiveItemData, StaticItemData>) => void;
115
+ onSelect?: (item: IUiMenuInteractiveItem<T>) => void;
75
116
  onClose?: () => void;
76
- onUnhandledKeyDown?: (event: React.KeyboardEvent, context: IUiMenuContext<InteractiveItemData, StaticItemData>) => void;
77
- InteractiveItemComponent?: React.ComponentType<UiMenuInteractiveItemProps<InteractiveItemData, StaticItemData>>;
78
- StaticItemComponent?: React.ComponentType<UiMenuStaticItemProps<StaticItemData>>;
79
- MenuHeaderComponent?: React.ComponentType<UiMenuHeaderProps<InteractiveItemData, StaticItemData>>;
117
+ onUnhandledKeyDown?: (event: React.KeyboardEvent, context: IUiMenuContext<T>) => void;
80
118
  shouldKeyboardActionPreventDefault?: boolean;
81
119
  shouldKeyboardActionStopPropagation?: boolean;
82
120
  shouldCloseOnSelect?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiMenu/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/@ui/UiMenu/types.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ const BUBBLE_OFFSET_X = 16;
8
8
  * @internal
9
9
  */
10
10
  const DivElement = forwardRef(function DivElement({ children, ...props }, ref) {
11
- return (React.createElement("div", { ref: ref, className: props.className, onClick: props.onClick, onMouseOver: props.onMouseOver, onMouseOut: props.onMouseOut, role: props.accessibilityConfig?.role, "aria-disabled": props.accessibilityConfig?.ariaDisabled, "aria-haspopup": props.accessibilityConfig?.ariaHaspopup, "aria-expanded": props.accessibilityConfig?.ariaExpanded, tabIndex: props.tabIndex, "data-testid": props.type === "separator"
11
+ return (React.createElement("div", { ref: ref, className: props.className, onClick: props.onClick, onMouseOver: props.onMouseOver, onMouseOut: props.onMouseOut, role: props.accessibilityConfig?.role, "aria-disabled": props.accessibilityConfig?.ariaDisabled ? "true" : undefined, "aria-haspopup": props.accessibilityConfig?.ariaHasPopup, "aria-expanded": props.accessibilityConfig?.ariaExpanded, tabIndex: props.tabIndex, "data-testid": props.type === "separator"
12
12
  ? "item-separator"
13
13
  : props.type === "header"
14
14
  ? "item-header"
@@ -18,7 +18,7 @@ const DivElement = forwardRef(function DivElement({ children, ...props }, ref) {
18
18
  * @internal
19
19
  */
20
20
  const ButtonElement = forwardRef(function ButtonElement({ children, ...props }, ref) {
21
- return (React.createElement("button", { ref: ref, type: "button", className: props.className, onClick: props.onClick, onMouseOver: props.onMouseOver, onMouseOut: props.onMouseOut, role: props.accessibilityConfig?.role, "aria-disabled": props.accessibilityConfig?.ariaDisabled, "aria-haspopup": props.accessibilityConfig?.ariaHaspopup, "aria-expanded": props.accessibilityConfig?.ariaExpanded, tabIndex: props.tabIndex }, children));
21
+ return (React.createElement("button", { ref: ref, type: "button", className: props.className, onClick: props.onClick, onMouseOver: props.onMouseOver, onMouseOut: props.onMouseOut, role: props.accessibilityConfig?.role, "aria-disabled": props.accessibilityConfig?.ariaDisabled ? "true" : undefined, "aria-haspopup": props.accessibilityConfig?.ariaHasPopup, "aria-expanded": props.accessibilityConfig?.ariaExpanded, tabIndex: props.tabIndex }, children));
22
22
  });
23
23
  /**
24
24
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"ListItem.js","sourceRoot":"","sources":["../../src/List/ListItem.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ListItem.js","sourceRoot":"","sources":["../../src/List/ListItem.tsx"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAa,WAAW,EAAE,MAAM,OAAO,CAAC;AAC/F,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAEhE,MAAM,eAAe,GAAG,EAAE,CAAC;AAgC3B;;GAEG;AACH,MAAM,UAAU,GAAG,UAAU,CACzB,SAAS,UAAU,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG;IAC3C,OAAO,CACH,6BACI,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,IAAI,EAAE,KAAK,CAAC,mBAAmB,EAAE,IAAI,mBACtB,KAAK,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,mBAC5D,KAAK,CAAC,mBAAmB,EAAE,YAAY,mBACvC,KAAK,CAAC,mBAAmB,EAAE,YAAY,EACtD,QAAQ,EAAE,KAAK,CAAC,QAAQ,iBAEpB,KAAK,CAAC,IAAI,KAAK,WAAW;YACtB,CAAC,CAAC,gBAAgB;YAClB,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ;gBACzB,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,SAAS,IAGlB,QAAQ,CACP,CACT,CAAC;AACN,CAAC,CACJ,CAAC;AAEF;;GAEG;AACH,MAAM,aAAa,GAAG,UAAU,CAG9B,SAAS,aAAa,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG;IAChD,OAAO,CACH,gCACI,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,WAAW,EAAE,KAAK,CAAC,WAAW,EAC9B,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,IAAI,EAAE,KAAK,CAAC,mBAAmB,EAAE,IAAI,mBACtB,KAAK,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,mBAC5D,KAAK,CAAC,mBAAmB,EAAE,YAAY,mBACvC,KAAK,CAAC,mBAAmB,EAAE,YAAY,EACtD,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAEvB,QAAQ,CACJ,CACZ,CAAC;AACN,CAAC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,UAAU,CAG5C,SAAS,oBAAoB,CAAC,KAAK,EAAE,GAAG;IACtC,MAAM,EACF,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,IAAI,EACJ,cAAc,GAAG,KAAK,EACtB,eAAe,EACf,UAAU,EACV,MAAM,EACN,WAAW,GAAG,KAAK,EACnB,YAAY,EACZ,YAAY,GACf,GAAG,KAAK,CAAC;IAEV,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAC;IAE/C,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;QACnC,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC;YAChF,eAAe,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACX,aAAa,EAAE,CAAC;QAEhB,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAEjD,IAAI,cAAc,GAA0B,IAAI,CAAC;QACjD,IAAI,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YAC5C,cAAc,GAAG,IAAI,cAAc,CAAC,aAAa,CAAC,CAAC;YACnD,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,GAAG,EAAE;YACR,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YACpD,IAAI,cAAc,EAAE,CAAC;gBACjB,cAAc,CAAC,UAAU,EAAE,CAAC;YAChC,CAAC;QACL,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC;IAE3B,MAAM,aAAa,GAAG,GAAG,EAAE;QACvB,MAAM,aAAa,GAAG,KAAK,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7D,OAAO,EAAE,CAAC,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE;YAChD,aAAa,EAAE,UAAU;YACzB,YAAY,EAAE,MAAM;SACvB,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,QAAmB,EAAE,EAAE;QACvC,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE3B,MAAM,WAAW,GAAG,EAAE,CAAC,cAAc,EAAE,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC5F,OAAO,CACH,8BAAM,IAAI,EAAC,MAAM,iBAAa,MAAM,iBAAc,IAAI,EAAE,SAAS,EAAE,WAAW,IACzE,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAC5C,CACV,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,GAAG,EAAE;QACrB,MAAM,YAAY,GAAG,8BAAM,GAAG,EAAE,QAAQ,IAAG,KAAK,CAAQ,CAAC;QAEzD,IAAI,YAAY,EAAE,CAAC;YACf,OAAO,CACH,oBAAC,kBAAkB;gBACd,YAAY;gBACb,oBAAC,MAAM,IACH,SAAS,EAAC,gBAAgB,EAC1B,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EACrD,YAAY,EAAE;wBACV,OAAO,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC;wBAC7B,OAAO,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;qBACjC,IAEA,KAAK,CACD,CACQ,CACxB,CAAC;QACN,CAAC;QACD,OAAO,YAAY,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACpB,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,CACH,4CAAiB,WAAW,EAAC,SAAS,EAAC,sCAAsC;YACzE,oBAAC,kBAAkB,IACf,OAAO,EAAC,KAAK,EACb,SAAS,EAAE,GAAG,EACd,SAAS,EAAE,eAAe,IAAI,CAAC,EAC/B,cAAc,EAAE,cAAc;gBAE9B,6BAAK,SAAS,EAAC,kBAAkB,GAAG;gBACpC,oBAAC,MAAM,IACH,SAAS,EAAC,gBAAgB,EAC1B,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EACjC,YAAY,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAEjC,IAAI,CACA,CACQ,CACnB,CACT,CAAC;IACN,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,CACb;QACK,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;QACpD,WAAW,EAAE;QACb,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAClD,CACN,CAAC;IAEF,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC5C,OAAO,CACH,oBAAC,UAAU,IACP,GAAG,EAAE,GAAgC,KACjC,KAAK,EACT,SAAS,EAAE,EAAE,CACT,cAAc,EACd;gBACI,yCAAyC,EAAE,IAAI,KAAK,WAAW;gBAC/D,mCAAmC,EAAE,IAAI,KAAK,QAAQ;aACzD,EACD,SAAS,CACZ,IAEA,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAC3B,CAChB,CAAC;IACN,CAAC;IAED,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,CAC9B,oBAAC,aAAa,IAAC,GAAG,EAAE,GAAmC,KAAM,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,IACzF,QAAQ,CACG,CACnB,CAAC,CAAC,CAAC,CACA,oBAAC,UAAU,IAAC,GAAG,EAAE,GAAgC,KAAM,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,IACnF,QAAQ,CACA,CAChB,CAAC;AACN,CAAC,CAAC,CAAC"}
package/esm/index.d.ts CHANGED
@@ -102,6 +102,6 @@ export type { UiListboxProps, IUiListboxContext, IUiListboxItem, IUiListboxStati
102
102
  export { UiMenu } from "./@ui/UiMenu/UiMenu.js";
103
103
  export { DefaultUiMenuInteractiveItemComponent } from "./@ui/UiMenu/defaults/DefaultUiMenuInteractiveItemComponent.js";
104
104
  export { DefaultUiMenuStaticItemComponent } from "./@ui/UiMenu/defaults/DefaultUiMenuStaticItemComponent.js";
105
- export type { UiMenuProps, IUiMenuContext, IUiMenuItem, IUiMenuStaticItem, UiMenuStaticItemProps, IUiMenuInteractiveItem, UiMenuInteractiveItemProps, UiMenuHeaderProps, } from "./@ui/UiMenu/types.js";
105
+ export type { UiMenuProps, IUiMenuContext, IUiMenuItem, IUiMenuStaticItem, UiMenuStaticItemProps, IUiMenuInteractiveItem, UiMenuInteractiveItemProps, IUiMenuGroupItem, UiMenuGroupItemProps, UiMenuInteractiveItemWrapperProps, UiMenuItemProps, IUiMenuControlType, IUiMenuPluggableComponents, IUiMenuItemData, } from "./@ui/UiMenu/types.js";
106
106
  export { makeMenuKeyboardNavigation } from "./@ui/@utils/keyboardNavigation.js";
107
107
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC;;;;;;;;GAQG;AACH,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oCAAoC,CAAC;AACnD,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAGnF,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAUtD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAElE,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAE5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAKpF,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAO/D,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,wCAAwC,EAAE,MAAM,sEAAsE,CAAC;AAChI,OAAO,EACH,mBAAmB,EACnB,mCAAmC,GACtC,MAAM,iEAAiE,CAAC;AAUzE,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,qCAAqC,EAAE,MAAM,gEAAgE,CAAC;AACvH,OAAO,EAAE,gCAAgC,EAAE,MAAM,2DAA2D,CAAC;AAkB7G,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC"}