(values: string[], opts?: {textDirection: 'ltr' | 'rtl'})
| 63 | } |
| 64 | |
| 65 | function getMenuBarPattern(values: string[], opts?: {textDirection: 'ltr' | 'rtl'}) { |
| 66 | const items = signal<TestMenuItem[]>([]); |
| 67 | |
| 68 | const menubar = new MenuBarPattern<string>({ |
| 69 | items: items, |
| 70 | activeItem: signal(undefined), |
| 71 | orientation: signal('horizontal'), |
| 72 | textDirection: signal(opts?.textDirection || 'ltr'), |
| 73 | multi: signal(false), |
| 74 | selectionMode: signal('explicit'), |
| 75 | value: signal([]), |
| 76 | wrap: signal(true), |
| 77 | typeaheadDelay: signal(500), |
| 78 | softDisabled: signal(true), |
| 79 | focusMode: signal('activedescendant'), |
| 80 | element: signal(document.createElement('div')), |
| 81 | disabled: signal(false), |
| 82 | }); |
| 83 | |
| 84 | items.set( |
| 85 | values.map((v, index) => { |
| 86 | const element = document.createElement('div'); |
| 87 | element.role = 'menuitem'; |
| 88 | return new MenuItemPattern({ |
| 89 | value: signal(v), |
| 90 | id: signal(`menuitem-${index}`), |
| 91 | disabled: signal(false), |
| 92 | searchTerm: signal(v), |
| 93 | parent: signal(menubar), |
| 94 | element: signal(element), |
| 95 | submenu: signal(undefined), |
| 96 | role: signal('menuitem'), |
| 97 | }) as TestMenuItem; |
| 98 | }), |
| 99 | ); |
| 100 | |
| 101 | return menubar; |
| 102 | } |
| 103 | |
| 104 | function getMenuPattern( |
| 105 | parent: undefined | MenuItemPattern<string> | MenuTriggerPattern<string>, |
no test coverage detected