|
1 | 1 | import { FASTElement, observable, Updates } from '@microsoft/fast-element'; |
2 | 2 | import { isHTMLElement } from '@microsoft/fast-web-utilities'; |
3 | | -import { polyfill as focusgroupPolyfill } from '@microsoft/focusgroup-polyfill'; |
4 | 3 | import type { MenuItemColumnCount } from '../menu-item/menu-item.js'; |
5 | 4 | import type { MenuItem } from '../menu-item/menu-item.js'; |
6 | 5 | import { isMenuItem, MenuItemRole } from '../menu-item/menu-item.options.js'; |
7 | 6 |
|
8 | 7 | /** |
9 | | - * A Menu Custom HTML Element. |
| 8 | + * A Base MenuList Custom HTML Element. |
10 | 9 | * Implements the {@link https://www.w3.org/TR/wai-aria-1.1/#menu | ARIA menu }. |
11 | 10 | * |
12 | | - * @tag fluent-menu-list |
13 | | - * |
14 | | - * @slot - The default slot for the menu items |
15 | | - * |
16 | 11 | * @public |
17 | 12 | */ |
18 | | -export class MenuList extends FASTElement { |
| 13 | +export class BaseMenuList extends FASTElement { |
19 | 14 | /** |
20 | 15 | * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component. |
21 | 16 | * |
@@ -58,10 +53,6 @@ export class MenuList extends FASTElement { |
58 | 53 | this.setItems(); |
59 | 54 | }); |
60 | 55 |
|
61 | | - Updates.enqueue(() => { |
62 | | - focusgroupPolyfill(this); |
63 | | - }); |
64 | | - |
65 | 56 | this.addEventListener('change', this.changedMenuItemHandler); |
66 | 57 | } |
67 | 58 |
|
@@ -117,7 +108,7 @@ export class MenuList extends FASTElement { |
117 | 108 | */ |
118 | 109 | const filteredMenuItems = this.menuItems?.filter(this.isMenuItemElement); |
119 | 110 | const indent: MenuItemColumnCount = filteredMenuItems?.reduce<MenuItemColumnCount>((accum, current) => { |
120 | | - const elementValue = MenuList.elementIndent(current as HTMLElement); |
| 111 | + const elementValue = BaseMenuList.elementIndent(current as HTMLElement); |
121 | 112 |
|
122 | 113 | return Math.max(accum, elementValue as number) as MenuItemColumnCount; |
123 | 114 | }, 0); |
@@ -180,6 +171,6 @@ export class MenuList extends FASTElement { |
180 | 171 | * check if the item is a menu item |
181 | 172 | */ |
182 | 173 | protected isMenuItemElement = (el: Element): el is HTMLElement => { |
183 | | - return isMenuItem(el) || (isHTMLElement(el) && !!el.role && el.role in MenuList.focusableElementRoles); |
| 174 | + return isMenuItem(el) || (isHTMLElement(el) && !!el.role && el.role in BaseMenuList.focusableElementRoles); |
184 | 175 | }; |
185 | 176 | } |
0 commit comments