@atlaskit/navigation-system 0.182.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (790) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/dist/cjs/components/skip-links/skip-links-container.js +25 -17
  3. package/dist/cjs/context/skip-links/skip-links-data-context.js +28 -10
  4. package/dist/cjs/context/skip-links/skip-links-provider.js +17 -6
  5. package/dist/cjs/ui/menu-item/menu-item.js +1 -1
  6. package/dist/cjs/ui/page-layout/root.js +11 -1
  7. package/dist/es2019/components/skip-links/skip-links-container.js +24 -16
  8. package/dist/es2019/context/skip-links/skip-links-data-context.js +25 -8
  9. package/dist/es2019/context/skip-links/skip-links-provider.js +17 -6
  10. package/dist/es2019/ui/menu-item/menu-item.js +1 -1
  11. package/dist/es2019/ui/page-layout/root.js +11 -1
  12. package/dist/esm/components/skip-links/skip-links-container.js +23 -15
  13. package/dist/esm/context/skip-links/skip-links-data-context.js +26 -9
  14. package/dist/esm/context/skip-links/skip-links-provider.js +16 -5
  15. package/dist/esm/ui/menu-item/menu-item.js +1 -1
  16. package/dist/esm/ui/page-layout/root.js +11 -1
  17. package/dist/types/components/skip-links/skip-links-container.d.ts +13 -8
  18. package/dist/types/context/skip-links/skip-links-data-context.d.ts +15 -1
  19. package/dist/types/context/skip-links/skip-links-provider.d.ts +9 -4
  20. package/dist/types-ts4.5/components/skip-links/skip-links-container.d.ts +13 -8
  21. package/dist/types-ts4.5/context/skip-links/skip-links-data-context.d.ts +15 -1
  22. package/dist/types-ts4.5/context/skip-links/skip-links-provider.d.ts +9 -4
  23. package/package.json +9 -10
  24. package/afm-cc/tsconfig.json +0 -78
  25. package/afm-dev-agents/tsconfig.json +0 -78
  26. package/afm-jira/tsconfig.json +0 -78
  27. package/afm-passionfruit/tsconfig.json +0 -78
  28. package/afm-post-office/tsconfig.json +0 -78
  29. package/afm-rovo-extension/tsconfig.json +0 -78
  30. package/afm-townsquare/tsconfig.json +0 -78
  31. package/afm-volt/tsconfig.json +0 -78
  32. package/build/tsconfig.json +0 -23
  33. package/docs/00-intro.tsx +0 -14
  34. package/examples/advanced-layout.tsx +0 -144
  35. package/examples/button-menu-item.tsx +0 -426
  36. package/examples/company-hub-mock.tsx +0 -219
  37. package/examples/composition.tsx +0 -424
  38. package/examples/confluence-mock.tsx +0 -381
  39. package/examples/constellation/common/mock-content.tsx +0 -39
  40. package/examples/constellation/common/mock-top-bar.tsx +0 -20
  41. package/examples/constellation/layout/custom-skip-links.tsx +0 -12
  42. package/examples/constellation/layout/custom-theming--parse-hex.tsx +0 -19
  43. package/examples/constellation/layout/custom-theming--parse-hsl.tsx +0 -22
  44. package/examples/constellation/layout/custom-theming--parse-rgb.tsx +0 -22
  45. package/examples/constellation/layout/custom-theming--parse-user-color.tsx +0 -22
  46. package/examples/constellation/layout/custom-theming--rgb-object.tsx +0 -21
  47. package/examples/constellation/layout/expand-side-nav.tsx +0 -17
  48. package/examples/constellation/layout/toggle-side-nav-keyboard-shortcut.tsx +0 -25
  49. package/examples/constellation/side-nav-items/actions-and-actions-on-hover.tsx +0 -153
  50. package/examples/constellation/side-nav-items/button-menu-item.tsx +0 -133
  51. package/examples/constellation/side-nav-items/common/global-app-icon-tile.tsx +0 -43
  52. package/examples/constellation/side-nav-items/common/mock-side-nav.tsx +0 -18
  53. package/examples/constellation/side-nav-items/container-avatar.tsx +0 -32
  54. package/examples/constellation/side-nav-items/elem-after.tsx +0 -60
  55. package/examples/constellation/side-nav-items/elem-before.tsx +0 -116
  56. package/examples/constellation/side-nav-items/expandable-menu-item-default-variant.tsx +0 -219
  57. package/examples/constellation/side-nav-items/expandable-menu-item-link-variant.tsx +0 -278
  58. package/examples/constellation/side-nav-items/flyout-menu-item.tsx +0 -156
  59. package/examples/constellation/side-nav-items/link-menu-item.tsx +0 -161
  60. package/examples/constellation/side-nav-items/menu-divider.tsx +0 -114
  61. package/examples/constellation/side-nav-items/menu-section.tsx +0 -177
  62. package/examples/constellation/side-nav-items/right-to-left.tsx +0 -144
  63. package/examples/constellation/side-nav-items/top-level-spacer.tsx +0 -82
  64. package/examples/constellation/side-nav-items/truncation.tsx +0 -58
  65. package/examples/constellation/top-nav-items/app-logo.tsx +0 -19
  66. package/examples/constellation/top-nav-items/custom-logo.tsx +0 -28
  67. package/examples/constellation/top-nav-items/custom-theming--buttons.tsx +0 -27
  68. package/examples/constellation/top-nav-items/custom-theming--logo.tsx +0 -27
  69. package/examples/constellation/top-nav-items/custom-theming--search.tsx +0 -28
  70. package/examples/constellation/top-nav-items/custom-title.tsx +0 -20
  71. package/examples/constellation/top-nav-items/end-item.tsx +0 -23
  72. package/examples/constellation/top-nav-items/top-nav-button.tsx +0 -34
  73. package/examples/constellation/top-nav-items/top-nav-end.tsx +0 -25
  74. package/examples/constellation/top-nav-items/top-nav-middle.tsx +0 -19
  75. package/examples/constellation/top-nav-items/top-nav-start.tsx +0 -31
  76. package/examples/drag-and-drop/jira/data.tsx +0 -320
  77. package/examples/drag-and-drop/jira/entry.tsx +0 -89
  78. package/examples/drag-and-drop/jira/filters/filter-move-modal.tsx +0 -171
  79. package/examples/drag-and-drop/jira/filters/filter-tree-utils.tsx +0 -134
  80. package/examples/drag-and-drop/jira/filters/filters-menu-item.tsx +0 -470
  81. package/examples/drag-and-drop/jira/for-you/for-you-menu-item.tsx +0 -74
  82. package/examples/drag-and-drop/jira/projects/project-tile.tsx +0 -37
  83. package/examples/drag-and-drop/jira/projects/project.tsx +0 -257
  84. package/examples/drag-and-drop/jira/projects/projects-menu-item.tsx +0 -120
  85. package/examples/drag-and-drop/jira/recent/recent-menu-item.tsx +0 -30
  86. package/examples/drag-and-drop/jira/reducer.tsx +0 -78
  87. package/examples/drag-and-drop/jira/registry.tsx +0 -52
  88. package/examples/drag-and-drop/jira/reorder-actions.tsx +0 -75
  89. package/examples/drag-and-drop/jira/shared-top-level-flyout.tsx +0 -144
  90. package/examples/drag-and-drop/jira/sidebar.tsx +0 -361
  91. package/examples/drag-and-drop/jira/starred/starred-menu-item.tsx +0 -29
  92. package/examples/drag-and-drop/jira/state-context.tsx +0 -34
  93. package/examples/drag-and-drop/jira/top-level-shared-more-menu.tsx +0 -99
  94. package/examples/drag-and-drop/sidebar-example-container.tsx +0 -38
  95. package/examples/drag-and-drop/simple.tsx +0 -653
  96. package/examples/drag-and-drop/standalone-jira-sidebar-centered.tsx +0 -27
  97. package/examples/drag-and-drop/standalone-jira-sidebar.tsx +0 -18
  98. package/examples/drag-and-drop-in-the-sidebar-flyout.tsx +0 -161
  99. package/examples/drag-and-drop-jira-scaling-vr.tsx +0 -25
  100. package/examples/drag-and-drop-jira-sidebar-centered.tsx +0 -1
  101. package/examples/drag-and-drop-jira-sidebar-standalone.tsx +0 -1
  102. package/examples/drag-and-drop-jira.tsx +0 -1
  103. package/examples/drag-and-drop.tsx +0 -1
  104. package/examples/expandable-menu-item.tsx +0 -775
  105. package/examples/flyout-menu-item-async-content.tsx +0 -118
  106. package/examples/flyout-menu-item-multiple.tsx +0 -180
  107. package/examples/flyout-menu-item.tsx +0 -269
  108. package/examples/images/200x20.png +0 -0
  109. package/examples/images/200x200.png +0 -0
  110. package/examples/images/20x20.png +0 -0
  111. package/examples/images/20x200.png +0 -0
  112. package/examples/images/cd.svg +0 -9
  113. package/examples/images/koala.png +0 -0
  114. package/examples/images/koala.svg +0 -9
  115. package/examples/images/money.svg +0 -9
  116. package/examples/images/science.svg +0 -20
  117. package/examples/interactive-layout.tsx +0 -286
  118. package/examples/layers-in-main.tsx +0 -294
  119. package/examples/legacy-var-testing.tsx +0 -173
  120. package/examples/link-menu-item.tsx +0 -383
  121. package/examples/main-content-border.tsx +0 -148
  122. package/examples/menu-item-avatar.tsx +0 -41
  123. package/examples/menu-item-conditional-tooltip.tsx +0 -304
  124. package/examples/menu-item-focus-ring-bleed.tsx +0 -50
  125. package/examples/menu-item-integration.tsx +0 -207
  126. package/examples/menu-item-narrow.tsx +0 -290
  127. package/examples/menu-item-scroll-into-view.tsx +0 -283
  128. package/examples/menu-items-deeply-nested.tsx +0 -330
  129. package/examples/menu-list.tsx +0 -62
  130. package/examples/menu-section.tsx +0 -78
  131. package/examples/page-layout-all-slots-banner-height-zero.tsx +0 -3
  132. package/examples/page-layout-all-slots-custom-sizes.tsx +0 -3
  133. package/examples/page-layout-all-slots-rtl.tsx +0 -3
  134. package/examples/page-layout-all-slots-scrollable.tsx +0 -3
  135. package/examples/page-layout-all-slots.tsx +0 -3
  136. package/examples/page-layout-aside-border.tsx +0 -149
  137. package/examples/page-layout-content-is-iframes.tsx +0 -3
  138. package/examples/page-layout-edge-case-absolute-positioned-collapsed-custom-sizes.tsx +0 -3
  139. package/examples/page-layout-edge-case-absolute-positioned-collapsed.tsx +0 -3
  140. package/examples/page-layout-edge-case-absolute-positioned-panel-visible.tsx +0 -3
  141. package/examples/page-layout-edge-case-absolute-positioned-resizable.tsx +0 -3
  142. package/examples/page-layout-edge-case-absolute-positioned.tsx +0 -3
  143. package/examples/page-layout-edge-case-using-legacy-vars.tsx +0 -3
  144. package/examples/page-layout-full-screen.tsx +0 -251
  145. package/examples/page-layout-implicit-rows.tsx +0 -33
  146. package/examples/page-layout-main-aside-scrollable.tsx +0 -3
  147. package/examples/page-layout-main-aside.tsx +0 -3
  148. package/examples/page-layout-panel-aside-default-widths.tsx +0 -241
  149. package/examples/page-layout-resizable-rtl.tsx +0 -3
  150. package/examples/page-layout-resizable.tsx +0 -3
  151. package/examples/page-layout-side-nav-collapse-shortcut.tsx +0 -47
  152. package/examples/page-layout-side-nav-content-scroll-with-sticky.tsx +0 -135
  153. package/examples/page-layout-side-nav-custom-width-greater-than-max.tsx +0 -3
  154. package/examples/page-layout-side-nav-custom-width-smaller-than-min.tsx +0 -3
  155. package/examples/page-layout-side-nav-main-aside-scrollable.tsx +0 -3
  156. package/examples/page-layout-side-nav-main-aside.tsx +0 -3
  157. package/examples/page-layout-side-nav-onboarding.tsx +0 -155
  158. package/examples/page-layout-side-nav-overflowing-children.tsx +0 -3
  159. package/examples/page-layout-side-nav-slots.tsx +0 -173
  160. package/examples/page-layout-side-nav-with-menu-items.tsx +0 -3
  161. package/examples/page-layout-top-bar-side-nav-main-aside-scrollable.tsx +0 -3
  162. package/examples/page-layout-top-bar-side-nav-main-aside.tsx +0 -3
  163. package/examples/page-layout-top-bar-side-nav-main-scrollable.tsx +0 -3
  164. package/examples/page-layout-top-bar-side-nav-main.tsx +0 -3
  165. package/examples/page-layout.tsx +0 -941
  166. package/examples/panel-splitter.tsx +0 -199
  167. package/examples/resizable-slots.tsx +0 -357
  168. package/examples/side-nav-flyout.tsx +0 -256
  169. package/examples/stand-alone-iframe.tsx +0 -23
  170. package/examples/temp-icons/app-switcher-legacy.tsx +0 -14
  171. package/examples/temp-icons/atlassian-intelligence.tsx +0 -14
  172. package/examples/temp-icons/help.tsx +0 -18
  173. package/examples/temp-icons/menu.tsx +0 -14
  174. package/examples/temp-icons/settings.tsx +0 -14
  175. package/examples/top-level-spacer.tsx +0 -55
  176. package/examples/top-nav-custom-profile-image.tsx +0 -71
  177. package/examples/top-nav-side-nav-collapsed.tsx +0 -74
  178. package/examples/top-nav-with-long-name.tsx +0 -63
  179. package/examples/top-nav-with-temp-nav-app-icon-app-logo.tsx +0 -65
  180. package/examples/top-nav-with-temp-nav-app-icon-custom-logo.tsx +0 -63
  181. package/examples/top-navigation-custom-logo.tsx +0 -108
  182. package/examples/top-navigation-stress.tsx +0 -244
  183. package/examples/top-navigation-themed-buttons.tsx +0 -63
  184. package/examples/top-navigation-theming-logged-out.tsx +0 -75
  185. package/examples/top-navigation-theming-with-picker.tsx +0 -128
  186. package/examples/top-navigation-theming.tsx +0 -197
  187. package/examples/top-navigation.tsx +0 -126
  188. package/examples/utils/example-utils.tsx +0 -14
  189. package/examples/utils/long-placeholder-content.tsx +0 -161
  190. package/examples/utils/mock-root.tsx +0 -19
  191. package/examples/utils/mock-search.tsx +0 -67
  192. package/src/__tests__/informational-vr-tests/__snapshots__/layering/layers-in-main-slot--desktop--platform-dst-nav4-layering-in-main-slot-fixes-false.png +0 -0
  193. package/src/__tests__/informational-vr-tests/__snapshots__/layering/layers-in-main-slot--desktop--platform-dst-nav4-layering-in-main-slot-fixes-true.png +0 -0
  194. package/src/__tests__/informational-vr-tests/__snapshots__/layering/layers-in-main-slot-short-viewport--desktop--platform-dst-nav4-layering-in-main-slot-fixes-false.png +0 -0
  195. package/src/__tests__/informational-vr-tests/__snapshots__/layering/layers-in-main-slot-short-viewport--desktop--platform-dst-nav4-layering-in-main-slot-fixes-true.png +0 -0
  196. package/src/__tests__/informational-vr-tests/__snapshots__/layering/side-nav-expanded-on-mobile--mobile.png +0 -0
  197. package/src/__tests__/informational-vr-tests/__snapshots__/layering/side-nav-expanded-on-mobile-without-panel--mobile.png +0 -0
  198. package/src/__tests__/informational-vr-tests/__snapshots__/menu-items-deeply-nested/side-nav-with-deeply-nested-menu-items---nested-menu-item-selected--default.png +0 -0
  199. package/src/__tests__/informational-vr-tests/__snapshots__/menu-items-deeply-nested/side-nav-with-deeply-nested-menu-items---scrolled-to-the-end--default.png +0 -0
  200. package/src/__tests__/informational-vr-tests/__snapshots__/menu-items-deeply-nested/side-nav-with-deeply-nested-menu-items--default.png +0 -0
  201. package/src/__tests__/informational-vr-tests/__snapshots__/sidebar-drag-and-drop/sidebar-drag-and-drop---hover-bug--desktop-chrome.png +0 -0
  202. package/src/__tests__/informational-vr-tests/__snapshots__/sidebar-drag-and-drop/sidebar-drag-and-drop---hover-bug--desktop-firefox.png +0 -0
  203. package/src/__tests__/informational-vr-tests/__snapshots__/sidebar-drag-and-drop/sidebar-drag-and-drop---hover-bug--desktop-webkit.png +0 -0
  204. package/src/__tests__/informational-vr-tests/__snapshots__/sidebar-drag-and-drop/sidebar-drag-and-drop--desktop-chrome.png +0 -0
  205. package/src/__tests__/informational-vr-tests/__snapshots__/sidebar-drag-and-drop/sidebar-drag-and-drop--desktop-firefox.png +0 -0
  206. package/src/__tests__/informational-vr-tests/__snapshots__/sidebar-drag-and-drop/sidebar-drag-and-drop--desktop-webkit.png +0 -0
  207. package/src/__tests__/informational-vr-tests/layering.vr.tsx +0 -76
  208. package/src/__tests__/informational-vr-tests/menu-items-deeply-nested.vr.tsx +0 -33
  209. package/src/__tests__/informational-vr-tests/sidebar-drag-and-drop.vr.tsx +0 -100
  210. package/src/__tests__/playwright/drag-and-drop-in-the-sidebar-flyout.spec.tsx +0 -235
  211. package/src/__tests__/playwright/expandable-menu-item.spec.tsx +0 -20
  212. package/src/__tests__/playwright/flyout-menu-item.spec.tsx +0 -22
  213. package/src/__tests__/playwright/legacy-vars.spec.tsx +0 -298
  214. package/src/__tests__/playwright/menu-item-in-sidebar-drag-and-drop.spec.tsx +0 -70
  215. package/src/__tests__/playwright/page-layout.spec.tsx +0 -23
  216. package/src/__tests__/playwright/panel.spec.tsx +0 -241
  217. package/src/__tests__/playwright/resizing.spec.tsx +0 -541
  218. package/src/__tests__/playwright/side-nav-flyout.spec.tsx +0 -223
  219. package/src/__tests__/playwright/side-nav-responsiveness.spec.tsx +0 -208
  220. package/src/__tests__/playwright/skip-links.spec.tsx +0 -111
  221. package/src/__tests__/playwright/top-nav-end.spec.tsx +0 -96
  222. package/src/__tests__/vr-tests/__snapshots__/a11y-scaling/app--desktop.png +0 -0
  223. package/src/__tests__/vr-tests/__snapshots__/layering/scrollable-no-panel-vr--desktop-large.png +0 -0
  224. package/src/__tests__/vr-tests/__snapshots__/layering/scrollable-no-panel-vr--desktop.png +0 -0
  225. package/src/__tests__/vr-tests/__snapshots__/layering/scrollable-no-panel-vr--mobile.png +0 -0
  226. package/src/__tests__/vr-tests/__snapshots__/layering/scrollable-scrolled-vr--desktop-large.png +0 -0
  227. package/src/__tests__/vr-tests/__snapshots__/layering/scrollable-scrolled-vr--desktop.png +0 -0
  228. package/src/__tests__/vr-tests/__snapshots__/layering/scrollable-scrolled-vr--mobile.png +0 -0
  229. package/src/__tests__/vr-tests/__snapshots__/layering/scrollable-vr--desktop-large-splitter.png +0 -0
  230. package/src/__tests__/vr-tests/__snapshots__/layering/scrollable-vr--desktop-large.png +0 -0
  231. package/src/__tests__/vr-tests/__snapshots__/layering/scrollable-vr--desktop.png +0 -0
  232. package/src/__tests__/vr-tests/__snapshots__/layering/scrollable-vr--mobile.png +0 -0
  233. package/src/__tests__/vr-tests/__snapshots__/layering/unscrollable-no-panel-vr--desktop-large.png +0 -0
  234. package/src/__tests__/vr-tests/__snapshots__/layering/unscrollable-no-panel-vr--desktop.png +0 -0
  235. package/src/__tests__/vr-tests/__snapshots__/layering/unscrollable-no-panel-vr--mobile.png +0 -0
  236. package/src/__tests__/vr-tests/__snapshots__/layering/unscrollable-vr--desktop-large.png +0 -0
  237. package/src/__tests__/vr-tests/__snapshots__/layering/unscrollable-vr--desktop.png +0 -0
  238. package/src/__tests__/vr-tests/__snapshots__/layering/unscrollable-vr--mobile.png +0 -0
  239. package/src/__tests__/vr-tests/__snapshots__/skip-links/skip-links--light-mode.png +0 -0
  240. package/src/__tests__/vr-tests/a11y-scaling.vr.tsx +0 -12
  241. package/src/__tests__/vr-tests/layering.vr.tsx +0 -82
  242. package/src/__tests__/vr-tests/skip-links.vr.tsx +0 -14
  243. package/src/components/__tests__/unit/badge-container.test.tsx +0 -62
  244. package/src/components/__tests__/unit/list.test.tsx +0 -74
  245. package/src/components/badge-container.tsx +0 -72
  246. package/src/components/forward-ref-with-generic.tsx +0 -8
  247. package/src/components/list-item.tsx +0 -39
  248. package/src/components/list.tsx +0 -44
  249. package/src/components/skip-links/__tests__/unit/skip-links-container.test.tsx +0 -411
  250. package/src/components/skip-links/skip-link.tsx +0 -140
  251. package/src/components/skip-links/skip-links-container.tsx +0 -112
  252. package/src/context/skip-links/skip-links-context.tsx +0 -74
  253. package/src/context/skip-links/skip-links-data-context.tsx +0 -41
  254. package/src/context/skip-links/skip-links-provider.tsx +0 -74
  255. package/src/context/skip-links/types.tsx +0 -29
  256. package/src/context/top-nav-start/top-nav-start-context-provider.tsx +0 -26
  257. package/src/context/top-nav-start/top-nav-start-context.tsx +0 -21
  258. package/src/entry-points/experimental/color-utils/parse-hex.tsx +0 -1
  259. package/src/entry-points/experimental/color-utils/parse-hsl.tsx +0 -1
  260. package/src/entry-points/experimental/color-utils/parse-rgb.tsx +0 -1
  261. package/src/entry-points/experimental/color-utils/parse-user-color.tsx +0 -1
  262. package/src/entry-points/experimental/top-nav-button.tsx +0 -6
  263. package/src/entry-points/experimental/use-has-custom-theme.tsx +0 -1
  264. package/src/entry-points/experimental/use-legacy-search-theme.tsx +0 -1
  265. package/src/entry-points/layout/aside.tsx +0 -1
  266. package/src/entry-points/layout/banner.tsx +0 -1
  267. package/src/entry-points/layout/main.tsx +0 -7
  268. package/src/entry-points/layout/panel-splitter.tsx +0 -3
  269. package/src/entry-points/layout/panel.tsx +0 -1
  270. package/src/entry-points/layout/root.tsx +0 -1
  271. package/src/entry-points/layout/side-nav.tsx +0 -7
  272. package/src/entry-points/layout/skip-links.tsx +0 -2
  273. package/src/entry-points/layout/top-nav.tsx +0 -4
  274. package/src/entry-points/side-nav-items/button-menu-item.tsx +0 -3
  275. package/src/entry-points/side-nav-items/container-avatar.tsx +0 -1
  276. package/src/entry-points/side-nav-items/drag-and-drop/drag-preview.tsx +0 -1
  277. package/src/entry-points/side-nav-items/drag-and-drop/drop-indicator.tsx +0 -5
  278. package/src/entry-points/side-nav-items/drag-and-drop/group-drop-indicator.tsx +0 -1
  279. package/src/entry-points/side-nav-items/drag-and-drop/hitbox.tsx +0 -7
  280. package/src/entry-points/side-nav-items/drag-and-drop/use-menu-item-drag-and-drop.tsx +0 -4
  281. package/src/entry-points/side-nav-items/expandable-menu-item.tsx +0 -13
  282. package/src/entry-points/side-nav-items/flyout-menu-item.tsx +0 -13
  283. package/src/entry-points/side-nav-items/link-menu-item.tsx +0 -3
  284. package/src/entry-points/side-nav-items/menu-list-item.tsx +0 -1
  285. package/src/entry-points/side-nav-items/menu-list.tsx +0 -1
  286. package/src/entry-points/side-nav-items/menu-section.tsx +0 -3
  287. package/src/entry-points/side-nav-items/top-level-spacer.tsx +0 -1
  288. package/src/entry-points/top-nav-items/create-button.tsx +0 -1
  289. package/src/entry-points/top-nav-items/custom-title.tsx +0 -1
  290. package/src/entry-points/top-nav-items/help.tsx +0 -1
  291. package/src/entry-points/top-nav-items/index.tsx +0 -14
  292. package/src/entry-points/top-nav-items/log-in.tsx +0 -1
  293. package/src/entry-points/top-nav-items/notifications.tsx +0 -1
  294. package/src/entry-points/top-nav-items/profile.tsx +0 -1
  295. package/src/entry-points/top-nav-items/settings.tsx +0 -1
  296. package/src/index.tsx +0 -74
  297. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/flyout-menu-item-async-content/long-content-after-short-skeleton--default.png +0 -0
  298. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/flyout-menu-item-async-content/long-skeleton--default.png +0 -0
  299. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/flyout-menu-item-async-content/short-content-after-long-skeleton--default.png +0 -0
  300. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/flyout-menu-item-async-content/short-skeleton--default.png +0 -0
  301. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item/button-menu-item---disabled---pressed--default.png +0 -0
  302. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item/button-menu-item---pressed--default.png +0 -0
  303. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item/expandable-menu-item---not-selectable---pressed--default.png +0 -0
  304. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item/expandable-menu-item---selectable---pressed--default.png +0 -0
  305. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item/expandable-menu-item---selected---pressed--default.png +0 -0
  306. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item/flyout-menu-item---pressed--default.png +0 -0
  307. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item/flyout-menu-item---selected---pressed--default.png +0 -0
  308. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item/link-menu-item---pressed--default.png +0 -0
  309. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item/link-menu-item---scroll-into-view-behavior--desktop-chrome.png +0 -0
  310. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item/link-menu-item---scroll-into-view-behavior--desktop-firefox.png +0 -0
  311. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item/link-menu-item---scroll-into-view-behavior--desktop-safari.png +0 -0
  312. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item/link-menu-item---selected---pressed--default.png +0 -0
  313. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item-increased-hitbox/increasing-hitbox-for-nested-items-click-target---desktop-chrome.png +0 -0
  314. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item-increased-hitbox/increasing-hitbox-for-nested-items-click-target---desktop-firefox.png +0 -0
  315. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item-increased-hitbox/increasing-hitbox-for-nested-items-click-target---desktop-webkit.png +0 -0
  316. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item-increased-hitbox/increasing-hitbox-for-nested-items-hover---desktop-chrome.png +0 -0
  317. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item-increased-hitbox/increasing-hitbox-for-nested-items-hover---desktop-firefox.png +0 -0
  318. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item-increased-hitbox/increasing-hitbox-for-nested-items-hover---desktop-webkit.png +0 -0
  319. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item-increased-hitbox/increasing-hitbox-for-nested-items-too-far-back---desktop-chrome.png +0 -0
  320. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item-increased-hitbox/increasing-hitbox-for-nested-items-too-far-back---desktop-firefox.png +0 -0
  321. package/src/ui/menu-item/__tests__/informational-vr-tests/__snapshots__/menu-item-increased-hitbox/increasing-hitbox-for-nested-items-too-far-back---desktop-webkit.png +0 -0
  322. package/src/ui/menu-item/__tests__/informational-vr-tests/flyout-menu-item-async-content.vr.tsx +0 -33
  323. package/src/ui/menu-item/__tests__/informational-vr-tests/menu-item-increased-hitbox.vr.tsx +0 -79
  324. package/src/ui/menu-item/__tests__/informational-vr-tests/menu-item.vr.tsx +0 -151
  325. package/src/ui/menu-item/__tests__/playwright/flyout-menu-item.spec.tsx +0 -38
  326. package/src/ui/menu-item/__tests__/playwright/scroll-into-view.spec.tsx +0 -91
  327. package/src/ui/menu-item/__tests__/unit/_util.tsx +0 -40
  328. package/src/ui/menu-item/__tests__/unit/expandable-menu-item.test.tsx +0 -1119
  329. package/src/ui/menu-item/__tests__/unit/flyout-menu-item.test.tsx +0 -545
  330. package/src/ui/menu-item/__tests__/unit/menu-item.test.tsx +0 -649
  331. package/src/ui/menu-item/__tests__/unit/top-level-spacer.test.tsx +0 -94
  332. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/button-menu-item--desktop-chrome.png +0 -0
  333. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/button-menu-item--desktop-webkit.png +0 -0
  334. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/button-menu-item-combine--desktop-chrome.png +0 -0
  335. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/button-menu-item-combine--desktop-webkit.png +0 -0
  336. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/button-menu-item-reorder-after--desktop-chrome.png +0 -0
  337. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/button-menu-item-reorder-after--desktop-webkit.png +0 -0
  338. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/button-menu-item-reorder-before--desktop-chrome.png +0 -0
  339. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/button-menu-item-reorder-before--desktop-webkit.png +0 -0
  340. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/expandable-menu-item-combine--desktop-chrome.png +0 -0
  341. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/expandable-menu-item-combine--desktop-webkit.png +0 -0
  342. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/expandable-menu-item-reorder-after--desktop-chrome.png +0 -0
  343. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/expandable-menu-item-reorder-after--desktop-webkit.png +0 -0
  344. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/expandable-menu-item-reorder-before--desktop-chrome.png +0 -0
  345. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/expandable-menu-item-reorder-before--desktop-webkit.png +0 -0
  346. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/expandable-menu-item-trigger--desktop-chrome.png +0 -0
  347. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/expandable-menu-item-trigger--desktop-webkit.png +0 -0
  348. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/flyout-menu-item-combine--desktop-chrome.png +0 -0
  349. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/flyout-menu-item-combine--desktop-webkit.png +0 -0
  350. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/flyout-menu-item-reorder-after--desktop-chrome.png +0 -0
  351. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/flyout-menu-item-reorder-after--desktop-webkit.png +0 -0
  352. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/flyout-menu-item-reorder-before--desktop-chrome.png +0 -0
  353. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/flyout-menu-item-reorder-before--desktop-webkit.png +0 -0
  354. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/flyout-menu-item-trigger--desktop-chrome.png +0 -0
  355. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/flyout-menu-item-trigger--desktop-webkit.png +0 -0
  356. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item--desktop-chrome.png +0 -0
  357. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item--desktop-webkit.png +0 -0
  358. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item-combine--desktop-chrome.png +0 -0
  359. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item-combine--desktop-webkit.png +0 -0
  360. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item-combine-blocked--desktop-chrome.png +0 -0
  361. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item-combine-blocked--desktop-webkit.png +0 -0
  362. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item-reorder-after--desktop-chrome.png +0 -0
  363. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item-reorder-after--desktop-webkit.png +0 -0
  364. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item-reorder-after-blocked--desktop-chrome.png +0 -0
  365. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item-reorder-after-blocked--desktop-webkit.png +0 -0
  366. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item-reorder-before--desktop-chrome.png +0 -0
  367. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item-reorder-before--desktop-webkit.png +0 -0
  368. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item-reorder-before-blocked--desktop-chrome.png +0 -0
  369. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/drag-and-drop/link-menu-item-reorder-before-blocked--desktop-webkit.png +0 -0
  370. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item---custom-elembefore---action-focused--default.png +0 -0
  371. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item---custom-elembefore---action-hovered--default.png +0 -0
  372. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item---custom-elembefore---default-state--default.png +0 -0
  373. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item---custom-elembefore---elembefore-focused--default.png +0 -0
  374. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item---custom-elembefore---elembefore-hovered--default.png +0 -0
  375. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item---custom-elembefore---menu-item-focused--default.png +0 -0
  376. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item---custom-elembefore---menu-item-hovered--default.png +0 -0
  377. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item---selected-with-dropdown-action-open--default.png +0 -0
  378. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item---with-dropdown-action-open--default.png +0 -0
  379. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item---with-dropdown-action-open-and-hovered--default.png +0 -0
  380. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-collapsed-with-selected-child--default.png +0 -0
  381. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-expanded-with-actions-on-hover--default.png +0 -0
  382. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-expanded-with-actions-on-hover-and-elem-after--default.png +0 -0
  383. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-expanded-with-elem-after--default.png +0 -0
  384. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-nested--default.png +0 -0
  385. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-nested-rtl--default.png +0 -0
  386. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-selected--default.png +0 -0
  387. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-selected-with-icon--default.png +0 -0
  388. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-with-actions--default.png +0 -0
  389. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-with-actions-on-hover---hovered--default.png +0 -0
  390. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-with-actions-on-hover---selected-and-hovered--default.png +0 -0
  391. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-with-actions-on-hover--default.png +0 -0
  392. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-with-actions-on-hover-and-elem-after---hovered--default.png +0 -0
  393. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/expandable/expandable-menu-item-with-actions-on-hover-and-elem-after--default.png +0 -0
  394. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/flyout-menu-item/a-flyout-menu-with-a-nested-popup-using-shouldrendertoparent---default.png +0 -0
  395. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/flyout-menu-item/flyout-menu-item-default-open-example--default.png +0 -0
  396. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/flyout-menu-item/flyout-menu-item-default-open-rtl--default.png +0 -0
  397. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/flyout-menu-item/flyout-menu-item-default-open-selected-vr--default.png +0 -0
  398. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/flyout-menu-item/flyout-menu-item-example--default.png +0 -0
  399. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/flyout-menu-item/flyout-menu-item-rtl--default.png +0 -0
  400. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item---disabled---hovered--desktop-chrome.png +0 -0
  401. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item---disabled---hovered--desktop-firefox.png +0 -0
  402. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item---disabled---hovered--desktop-webkit.png +0 -0
  403. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item---disabled--desktop-chrome.png +0 -0
  404. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item---disabled--desktop-firefox.png +0 -0
  405. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item---disabled--desktop-webkit.png +0 -0
  406. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item---disabled-with-actions--desktop-chrome.png +0 -0
  407. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item---disabled-with-actions--desktop-firefox.png +0 -0
  408. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item---disabled-with-actions--desktop-webkit.png +0 -0
  409. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item---with-dropdown-action-open--desktop-chrome.png +0 -0
  410. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item---with-dropdown-action-open--desktop-firefox.png +0 -0
  411. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item---with-dropdown-action-open--desktop-webkit.png +0 -0
  412. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-example--desktop-chrome.png +0 -0
  413. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-example--desktop-firefox.png +0 -0
  414. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-example--desktop-webkit.png +0 -0
  415. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-rtlexample--desktop-chrome.png +0 -0
  416. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-rtlexample--desktop-firefox.png +0 -0
  417. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-rtlexample--desktop-webkit.png +0 -0
  418. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-with-actions-on-hover-appearing-on-focus--desktop-chrome.png +0 -0
  419. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-with-actions-on-hover-appearing-on-focus--desktop-firefox.png +0 -0
  420. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-with-actions-on-hover-appearing-on-focus--desktop-webkit.png +0 -0
  421. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-with-actions-on-hover-appearing-on-hover--desktop-chrome.png +0 -0
  422. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-with-actions-on-hover-appearing-on-hover--desktop-firefox.png +0 -0
  423. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-with-actions-on-hover-appearing-on-hover--desktop-webkit.png +0 -0
  424. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-with-elem-after-and-hovered--desktop-chrome.png +0 -0
  425. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-with-elem-after-and-hovered--desktop-firefox.png +0 -0
  426. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-with-elem-after-and-hovered--desktop-webkit.png +0 -0
  427. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-with-popup--desktop-chrome.png +0 -0
  428. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-with-popup--desktop-firefox.png +0 -0
  429. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/button-menu-item-with-popup--desktop-webkit.png +0 -0
  430. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item---with-dropdown-action-open--desktop-chrome.png +0 -0
  431. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item---with-dropdown-action-open--desktop-firefox.png +0 -0
  432. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item---with-dropdown-action-open--desktop-webkit.png +0 -0
  433. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-bleed--desktop-chrome.png +0 -0
  434. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-bleed--desktop-firefox.png +0 -0
  435. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-bleed--desktop-webkit.png +0 -0
  436. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-example--desktop-chrome.png +0 -0
  437. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-example--desktop-firefox.png +0 -0
  438. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-example--desktop-webkit.png +0 -0
  439. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-rtlexample--desktop-chrome.png +0 -0
  440. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-rtlexample--desktop-firefox.png +0 -0
  441. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-rtlexample--desktop-webkit.png +0 -0
  442. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-with-actions-on-hover-appearing-on-focus--desktop-chrome.png +0 -0
  443. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-with-actions-on-hover-appearing-on-focus--desktop-firefox.png +0 -0
  444. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-with-actions-on-hover-appearing-on-focus--desktop-webkit.png +0 -0
  445. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-with-actions-on-hover-appearing-on-hover--desktop-chrome.png +0 -0
  446. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-with-actions-on-hover-appearing-on-hover--desktop-firefox.png +0 -0
  447. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-with-actions-on-hover-appearing-on-hover--desktop-webkit.png +0 -0
  448. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-with-elem-after-and-hovered--desktop-chrome.png +0 -0
  449. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-with-elem-after-and-hovered--desktop-firefox.png +0 -0
  450. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/link-menu-item-with-elem-after-and-hovered--desktop-webkit.png +0 -0
  451. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/menu-item-avatar-example--desktop-chrome.png +0 -0
  452. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/menu-item-avatar-example--desktop-firefox.png +0 -0
  453. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/menu-item-avatar-example--desktop-webkit.png +0 -0
  454. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/menu-items-in-a-narrow-container--desktop-chrome.png +0 -0
  455. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/menu-items-in-a-narrow-container--desktop-firefox.png +0 -0
  456. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item/menu-items-in-a-narrow-container--desktop-webkit.png +0 -0
  457. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/button-menu-item--content-long---description-long---default.png +0 -0
  458. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/button-menu-item--content-long---description-none---default.png +0 -0
  459. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/button-menu-item--content-long---description-short---default.png +0 -0
  460. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/button-menu-item--content-short---description-long---default.png +0 -0
  461. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/button-menu-item--content-short---description-none---default.png +0 -0
  462. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/button-menu-item--content-short---description-short---default.png +0 -0
  463. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/button-menu-item-add-action-button--default.png +0 -0
  464. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/button-menu-item-with-tooltip-disabled--default.png +0 -0
  465. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/expandable-menu-item--content-long---default.png +0 -0
  466. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/expandable-menu-item--content-short---default.png +0 -0
  467. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/expandable-menu-item-with-tooltip-disabled--default.png +0 -0
  468. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/flyout-menu-item--content-long---default.png +0 -0
  469. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/flyout-menu-item--content-short---default.png +0 -0
  470. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/flyout-menu-item-with-tooltip-disabled--default.png +0 -0
  471. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/link-menu-item--content-long---description-long---default.png +0 -0
  472. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/link-menu-item--content-long---description-none---default.png +0 -0
  473. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/link-menu-item--content-long---description-short---default.png +0 -0
  474. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/link-menu-item--content-short---description-long---default.png +0 -0
  475. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/link-menu-item--content-short---description-none---default.png +0 -0
  476. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/link-menu-item--content-short---description-short---default.png +0 -0
  477. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/link-menu-item-with-tooltip-disabled--default.png +0 -0
  478. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/menu-item-conditional-tooltip/menu-item-button-with-nested-children--default.png +0 -0
  479. package/src/ui/menu-item/__tests__/vr-tests/__snapshots__/top-level-spacer/top-level-spacer-example--default.png +0 -0
  480. package/src/ui/menu-item/__tests__/vr-tests/drag-and-drop.vr.tsx +0 -172
  481. package/src/ui/menu-item/__tests__/vr-tests/expandable.vr.tsx +0 -248
  482. package/src/ui/menu-item/__tests__/vr-tests/flyout-menu-item.vr.tsx +0 -46
  483. package/src/ui/menu-item/__tests__/vr-tests/menu-item-conditional-tooltip.vr.tsx +0 -312
  484. package/src/ui/menu-item/__tests__/vr-tests/menu-item.vr.tsx +0 -210
  485. package/src/ui/menu-item/__tests__/vr-tests/top-level-spacer.vr.tsx +0 -17
  486. package/src/ui/menu-item/button-menu-item.tsx +0 -87
  487. package/src/ui/menu-item/constants.tsx +0 -15
  488. package/src/ui/menu-item/container-avatar.tsx +0 -39
  489. package/src/ui/menu-item/drag-and-drop/drag-preview.tsx +0 -98
  490. package/src/ui/menu-item/drag-and-drop/drop-indicator.tsx +0 -11
  491. package/src/ui/menu-item/drag-and-drop/group-drop-indicator.tsx +0 -7
  492. package/src/ui/menu-item/drag-and-drop/hitbox.tsx +0 -13
  493. package/src/ui/menu-item/drag-and-drop/use-menu-item-drag-and-drop.tsx +0 -243
  494. package/src/ui/menu-item/drag-handle.tsx +0 -42
  495. package/src/ui/menu-item/expandable-menu-item/expandable-menu-item-content.tsx +0 -84
  496. package/src/ui/menu-item/expandable-menu-item/expandable-menu-item-context.tsx +0 -61
  497. package/src/ui/menu-item/expandable-menu-item/expandable-menu-item-level-context.tsx +0 -9
  498. package/src/ui/menu-item/expandable-menu-item/expandable-menu-item-trigger.tsx +0 -334
  499. package/src/ui/menu-item/expandable-menu-item/expandable-menu-item.tsx +0 -114
  500. package/src/ui/menu-item/flyout-menu-item/flyout-menu-item-content.tsx +0 -188
  501. package/src/ui/menu-item/flyout-menu-item/flyout-menu-item-context.tsx +0 -19
  502. package/src/ui/menu-item/flyout-menu-item/flyout-menu-item-trigger.tsx +0 -124
  503. package/src/ui/menu-item/flyout-menu-item/flyout-menu-item.tsx +0 -98
  504. package/src/ui/menu-item/link-menu-item.tsx +0 -119
  505. package/src/ui/menu-item/menu-item-signals.tsx +0 -6
  506. package/src/ui/menu-item/menu-item.tsx +0 -848
  507. package/src/ui/menu-item/menu-list-item.tsx +0 -12
  508. package/src/ui/menu-item/menu-list.tsx +0 -12
  509. package/src/ui/menu-item/top-level-spacer.tsx +0 -49
  510. package/src/ui/menu-item/types.tsx +0 -181
  511. package/src/ui/menu-item/use-scroll-menu-item-into-view.tsx +0 -78
  512. package/src/ui/menu-section/__tests__/unit/menu-section.test.tsx +0 -96
  513. package/src/ui/menu-section/__tests__/vr-tests/__snapshots__/divider/divider--default.png +0 -0
  514. package/src/ui/menu-section/__tests__/vr-tests/__snapshots__/menu-section/menu-section-example--default.png +0 -0
  515. package/src/ui/menu-section/__tests__/vr-tests/divider.vr.tsx +0 -14
  516. package/src/ui/menu-section/__tests__/vr-tests/menu-section.vr.tsx +0 -14
  517. package/src/ui/menu-section/divider.tsx +0 -33
  518. package/src/ui/menu-section/menu-section-context.tsx +0 -15
  519. package/src/ui/menu-section/menu-section-heading.tsx +0 -43
  520. package/src/ui/menu-section/menu-section.tsx +0 -70
  521. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/page-layout/large-panel-default-width-on-mobile--desktop--platform-design-system-nav4-panel-mobile-width-fix-false.png +0 -0
  522. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/page-layout/large-panel-default-width-on-mobile--desktop--platform-design-system-nav4-panel-mobile-width-fix-true.png +0 -0
  523. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/page-layout/small-panel-default-width-on-mobile--desktop--platform-design-system-nav4-panel-mobile-width-fix-false.png +0 -0
  524. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/page-layout/small-panel-default-width-on-mobile--desktop--platform-design-system-nav4-panel-mobile-width-fix-true.png +0 -0
  525. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/slot-borders/above-md-breakpoint---side-nav-expanded--default--platform-design-system-nav4-panel-default-border-false-platform-design-system-nav4-sidenav-border-false.png +0 -0
  526. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/slot-borders/above-md-breakpoint---side-nav-expanded--default--platform-design-system-nav4-panel-default-border-false-platform-design-system-nav4-sidenav-border-true.png +0 -0
  527. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/slot-borders/above-md-breakpoint---side-nav-expanded--default--platform-design-system-nav4-panel-default-border-true-platform-design-system-nav4-sidenav-border-false.png +0 -0
  528. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/slot-borders/above-md-breakpoint---side-nav-expanded--default--platform-design-system-nav4-panel-default-border-true-platform-design-system-nav4-sidenav-border-true.png +0 -0
  529. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/slot-borders/above-md-breakpoint---side-nav-flyout--default--platform-design-system-nav4-panel-default-border-false-platform-design-system-nav4-sidenav-border-false.png +0 -0
  530. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/slot-borders/above-md-breakpoint---side-nav-flyout--default--platform-design-system-nav4-panel-default-border-false-platform-design-system-nav4-sidenav-border-true.png +0 -0
  531. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/slot-borders/above-md-breakpoint---side-nav-flyout--default--platform-design-system-nav4-panel-default-border-true-platform-design-system-nav4-sidenav-border-false.png +0 -0
  532. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/slot-borders/above-md-breakpoint---side-nav-flyout--default--platform-design-system-nav4-panel-default-border-true-platform-design-system-nav4-sidenav-border-true.png +0 -0
  533. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/slot-borders/below-md-breakpoint---side-nav-expanded--default--platform-design-system-nav4-panel-default-border-false-platform-design-system-nav4-sidenav-border-false.png +0 -0
  534. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/slot-borders/below-md-breakpoint---side-nav-expanded--default--platform-design-system-nav4-panel-default-border-false-platform-design-system-nav4-sidenav-border-true.png +0 -0
  535. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/slot-borders/below-md-breakpoint---side-nav-expanded--default--platform-design-system-nav4-panel-default-border-true-platform-design-system-nav4-sidenav-border-false.png +0 -0
  536. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/slot-borders/below-md-breakpoint---side-nav-expanded--default--platform-design-system-nav4-panel-default-border-true-platform-design-system-nav4-sidenav-border-true.png +0 -0
  537. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/top-nav/breakpoint-lg---composition--firefox.png +0 -0
  538. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/top-nav/breakpoint-lg---with-min-widths--firefox.png +0 -0
  539. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/top-nav/breakpoint-lg--firefox.png +0 -0
  540. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/top-nav/breakpoint-md---composition--firefox.png +0 -0
  541. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/top-nav/breakpoint-md---with-min-widths--firefox.png +0 -0
  542. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/top-nav/breakpoint-md--firefox.png +0 -0
  543. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/top-nav/breakpoint-sm---with-min-widths--firefox.png +0 -0
  544. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/top-nav/breakpoint-sm--firefox.png +0 -0
  545. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/top-nav/breakpoint-xl---composition--firefox.png +0 -0
  546. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/top-nav/breakpoint-xl---with-min-widths--firefox.png +0 -0
  547. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/top-nav/breakpoint-xl--firefox.png +0 -0
  548. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/top-nav/breakpoint-xs---with-min-widths--firefox.png +0 -0
  549. package/src/ui/page-layout/__tests__/informational-vr-tests/__snapshots__/top-nav/breakpoint-xs--firefox.png +0 -0
  550. package/src/ui/page-layout/__tests__/informational-vr-tests/page-layout.vr.tsx +0 -53
  551. package/src/ui/page-layout/__tests__/informational-vr-tests/slot-borders.vr.tsx +0 -54
  552. package/src/ui/page-layout/__tests__/informational-vr-tests/top-nav.vr.tsx +0 -170
  553. package/src/ui/page-layout/__tests__/unit/_test-utils.tsx +0 -185
  554. package/src/ui/page-layout/__tests__/unit/aside.test.tsx +0 -21
  555. package/src/ui/page-layout/__tests__/unit/banner.test.tsx +0 -31
  556. package/src/ui/page-layout/__tests__/unit/get-width.test.tsx +0 -12
  557. package/src/ui/page-layout/__tests__/unit/hoist-utils.test.tsx +0 -85
  558. package/src/ui/page-layout/__tests__/unit/page-layout.test.tsx +0 -300
  559. package/src/ui/page-layout/__tests__/unit/panel-splitter-and-suspense.test.tsx +0 -43
  560. package/src/ui/page-layout/__tests__/unit/panel-splitter.test.tsx +0 -885
  561. package/src/ui/page-layout/__tests__/unit/panel.test.tsx +0 -63
  562. package/src/ui/page-layout/__tests__/unit/react-safety.test.tsx +0 -30
  563. package/src/ui/page-layout/__tests__/unit/resizing.test.tsx +0 -714
  564. package/src/ui/page-layout/__tests__/unit/side-nav-flyout.test.tsx +0 -1154
  565. package/src/ui/page-layout/__tests__/unit/side-nav.test.tsx +0 -771
  566. package/src/ui/page-layout/__tests__/unit/sticky-header.test.tsx +0 -43
  567. package/src/ui/page-layout/__tests__/unit/top-nav-end.test.tsx +0 -132
  568. package/src/ui/page-layout/__tests__/unit/top-nav.test.tsx +0 -28
  569. package/src/ui/page-layout/__tests__/unit/use-expand-side-nav.test.tsx +0 -278
  570. package/src/ui/page-layout/__tests__/unit/use-toggle-side-nav.test.tsx +0 -233
  571. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/main-content-border/main-content-border---theming-disabled--desktop.png +0 -0
  572. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/main-content-border/main-content-border---theming-disabled--mobile.png +0 -0
  573. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/main-content-border/main-content-border---theming-disabled-side-nav-collapsed--desktop.png +0 -0
  574. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/main-content-border/main-content-border---theming-disabled-side-nav-collapsed--mobile.png +0 -0
  575. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/main-content-border/main-content-border---theming-enabled--desktop.png +0 -0
  576. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/main-content-border/main-content-border---theming-enabled--mobile.png +0 -0
  577. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/main-content-border/main-content-border---theming-enabled-full-screen-mode--desktop.png +0 -0
  578. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/main-content-border/main-content-border---theming-enabled-full-screen-mode--mobile.png +0 -0
  579. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/main-content-border/main-content-border---theming-enabled-side-nav-collapsed--desktop.png +0 -0
  580. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/main-content-border/main-content-border---theming-enabled-side-nav-collapsed--mobile.png +0 -0
  581. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/all-slots--desktop.png +0 -0
  582. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/all-slots--mobile.png +0 -0
  583. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/all-slots-banner-height-zero--desktop.png +0 -0
  584. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/all-slots-banner-height-zero--mobile.png +0 -0
  585. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/all-slots-custom-sizes--desktop.png +0 -0
  586. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/all-slots-custom-sizes--mobile.png +0 -0
  587. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/all-slots-rtl--desktop.png +0 -0
  588. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/all-slots-rtl--mobile.png +0 -0
  589. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/all-slots-scrollable--desktop.png +0 -0
  590. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/all-slots-scrollable--mobile.png +0 -0
  591. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/aside-composed-with-border--desktop.png +0 -0
  592. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/aside-composed-with-border--mobile.png +0 -0
  593. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/edge-case-sibling-absolute-positioned--desktop.png +0 -0
  594. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/edge-case-sibling-absolute-positioned--mobile.png +0 -0
  595. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/edge-case-sibling-absolute-positioned-collapsed--desktop.png +0 -0
  596. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/edge-case-sibling-absolute-positioned-collapsed--mobile.png +0 -0
  597. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/edge-case-sibling-absolute-positioned-custom-sizes--desktop.png +0 -0
  598. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/edge-case-sibling-absolute-positioned-custom-sizes--mobile.png +0 -0
  599. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/edge-case-sibling-absolute-positioned-panel-visible--desktop.png +0 -0
  600. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/edge-case-sibling-absolute-positioned-panel-visible--mobile.png +0 -0
  601. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/edge-case-sibling-absolute-positioned-resizable--desktop.png +0 -0
  602. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/edge-case-sibling-absolute-positioned-resizable--mobile.png +0 -0
  603. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/edge-case-using-legacy-vars--desktop.png +0 -0
  604. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/edge-case-using-legacy-vars--mobile.png +0 -0
  605. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/main-aside--desktop.png +0 -0
  606. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/main-aside--mobile.png +0 -0
  607. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/main-aside-scrollable--desktop.png +0 -0
  608. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/main-aside-scrollable--mobile.png +0 -0
  609. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/page-layout-implicit-rows--desktop.png +0 -0
  610. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/page-layout-implicit-rows--mobile.png +0 -0
  611. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/panel-and-aside---default-widths--desktop.png +0 -0
  612. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/panel-and-aside---default-widths--mobile.png +0 -0
  613. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/panel-and-aside---zero-widths--desktop.png +0 -0
  614. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/panel-and-aside---zero-widths--mobile.png +0 -0
  615. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/panel-default-background-color--desktop.png +0 -0
  616. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/panel-default-background-color--mobile.png +0 -0
  617. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/panel-should-have-correct-width-when-there-is-no-sidenav-mounted--desktop.png +0 -0
  618. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/resizable--desktop.png +0 -0
  619. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/side-nav-content-slot---scroll-with-sticky-child--desktop.png +0 -0
  620. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/side-nav-custom-width-greater-than-max-width--desktop.png +0 -0
  621. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/side-nav-custom-width-smaller-than-min-width--desktop.png +0 -0
  622. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/side-nav-main-aside--desktop.png +0 -0
  623. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/side-nav-main-aside--mobile.png +0 -0
  624. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/side-nav-main-aside-scrollable--desktop.png +0 -0
  625. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/side-nav-main-aside-scrollable--mobile.png +0 -0
  626. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/side-nav-overflowing-children--desktop.png +0 -0
  627. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/side-nav-slots--desktop.png +0 -0
  628. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/side-nav-with-menu-items--desktop.png +0 -0
  629. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/side-nav-with-menu-items--mobile.png +0 -0
  630. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/top-bar-side-nav-main--desktop.png +0 -0
  631. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/top-bar-side-nav-main--mobile.png +0 -0
  632. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/top-bar-side-nav-main-aside--desktop.png +0 -0
  633. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/top-bar-side-nav-main-aside--mobile.png +0 -0
  634. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/top-bar-side-nav-main-aside-scrollable--desktop.png +0 -0
  635. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/top-bar-side-nav-main-aside-scrollable--mobile.png +0 -0
  636. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/top-bar-side-nav-main-scrollable--desktop.png +0 -0
  637. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/page-layout/top-bar-side-nav-main-scrollable--mobile.png +0 -0
  638. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/panel-splitter/focused-panel-splitter-with-position-end--default.png +0 -0
  639. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/panel-splitter/focused-panel-splitter-with-position-start--default.png +0 -0
  640. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/panel-splitter/hovered-panel-splitter-with-position-end--default--platform-nav4-panel-splitter-keyboard-a11y-false.png +0 -0
  641. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/panel-splitter/hovered-panel-splitter-with-position-end--default--platform-nav4-panel-splitter-keyboard-a11y-true.png +0 -0
  642. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/panel-splitter/hovered-panel-splitter-with-position-start--default--platform-nav4-panel-splitter-keyboard-a11y-false.png +0 -0
  643. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/panel-splitter/hovered-panel-splitter-with-position-start--default--platform-nav4-panel-splitter-keyboard-a11y-true.png +0 -0
  644. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-collapsed--desktop.png +0 -0
  645. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-collapsed--mobile.png +0 -0
  646. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-collapsed-toggle-button-hovered--desktop.png +0 -0
  647. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-collapsed-toggle-button-hovered--mobile.png +0 -0
  648. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-collapsed-with-open-child-layer--desktop.png +0 -0
  649. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-collapsed-with-open-child-layer--mobile.png +0 -0
  650. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-collapsed-with-open-child-layer-toggle-button-hovered--desktop.png +0 -0
  651. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-collapsed-with-open-child-layer-toggle-button-hovered--mobile.png +0 -0
  652. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-expanded--desktop.png +0 -0
  653. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-expanded--mobile.png +0 -0
  654. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-expanded-toggle-button-hovered--desktop.png +0 -0
  655. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-expanded-toggle-button-hovered--mobile.png +0 -0
  656. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-expanded-with-open-child-layer--desktop.png +0 -0
  657. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-expanded-with-open-child-layer--mobile.png +0 -0
  658. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-expanded-with-open-child-layer-toggle-button-hovered--desktop.png +0 -0
  659. package/src/ui/page-layout/__tests__/vr-tests/__snapshots__/side-nav-flyout/side-nav-default-expanded-with-open-child-layer-toggle-button-hovered--mobile.png +0 -0
  660. package/src/ui/page-layout/__tests__/vr-tests/main-content-border.vr.tsx +0 -47
  661. package/src/ui/page-layout/__tests__/vr-tests/page-layout.vr.tsx +0 -266
  662. package/src/ui/page-layout/__tests__/vr-tests/panel-splitter.vr.tsx +0 -72
  663. package/src/ui/page-layout/__tests__/vr-tests/side-nav-flyout.vr.tsx +0 -170
  664. package/src/ui/page-layout/aside.tsx +0 -210
  665. package/src/ui/page-layout/banner.tsx +0 -91
  666. package/src/ui/page-layout/constants.tsx +0 -56
  667. package/src/ui/page-layout/hoist-slot-sizes-context.tsx +0 -7
  668. package/src/ui/page-layout/hoist-utils.tsx +0 -64
  669. package/src/ui/page-layout/id-utils.tsx +0 -33
  670. package/src/ui/page-layout/main/main-sticky-header.tsx +0 -45
  671. package/src/ui/page-layout/main/main.tsx +0 -93
  672. package/src/ui/page-layout/panel-splitter/context.tsx +0 -60
  673. package/src/ui/page-layout/panel-splitter/convert-resize-bound-to-pixels.tsx +0 -20
  674. package/src/ui/page-layout/panel-splitter/get-percentage-within-pixel-bounds.tsx +0 -35
  675. package/src/ui/page-layout/panel-splitter/get-width.tsx +0 -33
  676. package/src/ui/page-layout/panel-splitter/keyboard-resize-manager.tsx +0 -89
  677. package/src/ui/page-layout/panel-splitter/panel-splitter.tsx +0 -560
  678. package/src/ui/page-layout/panel-splitter/provider.tsx +0 -66
  679. package/src/ui/page-layout/panel-splitter/types.tsx +0 -25
  680. package/src/ui/page-layout/panel.tsx +0 -308
  681. package/src/ui/page-layout/root.tsx +0 -162
  682. package/src/ui/page-layout/side-nav/element-context.tsx +0 -18
  683. package/src/ui/page-layout/side-nav/flyout-close-delay-ms.tsx +0 -12
  684. package/src/ui/page-layout/side-nav/side-nav-content.tsx +0 -57
  685. package/src/ui/page-layout/side-nav/side-nav-footer.tsx +0 -48
  686. package/src/ui/page-layout/side-nav/side-nav-header.tsx +0 -32
  687. package/src/ui/page-layout/side-nav/side-nav.tsx +0 -876
  688. package/src/ui/page-layout/side-nav/toggle-button-context.tsx +0 -21
  689. package/src/ui/page-layout/side-nav/toggle-button-provider.tsx +0 -28
  690. package/src/ui/page-layout/side-nav/toggle-button.tsx +0 -166
  691. package/src/ui/page-layout/side-nav/types.tsx +0 -18
  692. package/src/ui/page-layout/side-nav/use-expand-side-nav.tsx +0 -57
  693. package/src/ui/page-layout/side-nav/use-side-nav-visibility-callbacks.tsx +0 -75
  694. package/src/ui/page-layout/side-nav/use-side-nav-visibility.tsx +0 -43
  695. package/src/ui/page-layout/side-nav/use-toggle-side-nav.tsx +0 -47
  696. package/src/ui/page-layout/side-nav/visibility-context.tsx +0 -17
  697. package/src/ui/page-layout/side-nav/visibility-provider.tsx +0 -20
  698. package/src/ui/page-layout/top-nav/top-nav-end.tsx +0 -155
  699. package/src/ui/page-layout/top-nav/top-nav-middle.tsx +0 -90
  700. package/src/ui/page-layout/top-nav/top-nav-start.tsx +0 -82
  701. package/src/ui/page-layout/top-nav/top-nav.tsx +0 -127
  702. package/src/ui/page-layout/types.tsx +0 -20
  703. package/src/ui/page-layout/use-resizing-width-css-var-on-root-element.tsx +0 -70
  704. package/src/ui/top-nav-items/__tests__/informational-vr-tests/__snapshots__/top-navigation/long-product-name-tooltip--default.png +0 -0
  705. package/src/ui/top-nav-items/__tests__/informational-vr-tests/__snapshots__/top-navigation/nav-logo-hover---custom-theming--desktop.png +0 -0
  706. package/src/ui/top-nav-items/__tests__/informational-vr-tests/__snapshots__/top-navigation/nav-logo-hover---custom-theming--mobile.png +0 -0
  707. package/src/ui/top-nav-items/__tests__/informational-vr-tests/__snapshots__/top-navigation/nav-logo-hover--desktop.png +0 -0
  708. package/src/ui/top-nav-items/__tests__/informational-vr-tests/__snapshots__/top-navigation/nav-logo-hover--mobile.png +0 -0
  709. package/src/ui/top-nav-items/__tests__/informational-vr-tests/__snapshots__/top-navigation/nav-logo-pressed---custom-theming--desktop.png +0 -0
  710. package/src/ui/top-nav-items/__tests__/informational-vr-tests/__snapshots__/top-navigation/nav-logo-pressed---custom-theming--mobile.png +0 -0
  711. package/src/ui/top-nav-items/__tests__/informational-vr-tests/__snapshots__/top-navigation/nav-logo-pressed--desktop.png +0 -0
  712. package/src/ui/top-nav-items/__tests__/informational-vr-tests/__snapshots__/top-navigation/nav-logo-pressed--mobile.png +0 -0
  713. package/src/ui/top-nav-items/__tests__/informational-vr-tests/__snapshots__/top-navigation/responsive-menu-items--mobile.png +0 -0
  714. package/src/ui/top-nav-items/__tests__/informational-vr-tests/__snapshots__/top-navigation/responsive-menu-items-on-click--mobile.png +0 -0
  715. package/src/ui/top-nav-items/__tests__/informational-vr-tests/top-navigation.vr.tsx +0 -120
  716. package/src/ui/top-nav-items/__tests__/playwright/theming.spec.tsx +0 -21
  717. package/src/ui/top-nav-items/__tests__/unit/chat-button.test.tsx +0 -40
  718. package/src/ui/top-nav-items/__tests__/unit/create-button.test.tsx +0 -34
  719. package/src/ui/top-nav-items/__tests__/unit/end-item.test.tsx +0 -43
  720. package/src/ui/top-nav-items/__tests__/unit/help.test.tsx +0 -101
  721. package/src/ui/top-nav-items/__tests__/unit/notifications.test.tsx +0 -63
  722. package/src/ui/top-nav-items/__tests__/unit/profile.test.tsx +0 -65
  723. package/src/ui/top-nav-items/__tests__/unit/settings.test.tsx +0 -51
  724. package/src/ui/top-nav-items/__tests__/unit/theming.test.tsx +0 -76
  725. package/src/ui/top-nav-items/__tests__/unit/top-nav-items.test.tsx +0 -181
  726. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/log-in-button--desktop.png +0 -0
  727. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/search-right-elem--default.png +0 -0
  728. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/theme-is-applied-with-an-hsl-color--desktop.png +0 -0
  729. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/theme-is-applied-with-an-rgb-color--desktop.png +0 -0
  730. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/theme-is-applied-with-customlogo--desktop.png +0 -0
  731. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/themed-button-focus-state--default.png +0 -0
  732. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/themed-button-hover-state--default.png +0 -0
  733. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/themed-create-button-hover-state--desktop.png +0 -0
  734. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/themed-link-button-focus-state--default.png +0 -0
  735. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/themed-link-button-hover-state--default.png +0 -0
  736. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/themed-search-focus-state--default.png +0 -0
  737. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/theming-is-enabled--desktop.png +0 -0
  738. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-nav-custom-profile-image--default.png +0 -0
  739. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-nav-side-nav-collapsed--desktop.png +0 -0
  740. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-nav-side-nav-collapsed--mobile.png +0 -0
  741. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-navigation-custom-logo-example--desktop.png +0 -0
  742. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-navigation-custom-logo-example--mobile.png +0 -0
  743. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-navigation-custom-logo-image200x200example--desktop.png +0 -0
  744. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-navigation-custom-logo-image200x200example--mobile.png +0 -0
  745. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-navigation-custom-logo-image200x20example--desktop.png +0 -0
  746. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-navigation-custom-logo-image200x20example--mobile.png +0 -0
  747. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-navigation-custom-logo-image20x200example--desktop.png +0 -0
  748. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-navigation-custom-logo-image20x200example--mobile.png +0 -0
  749. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-navigation-custom-logo-image20x20example--desktop.png +0 -0
  750. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-navigation-custom-logo-image20x20example--mobile.png +0 -0
  751. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-navigation-example--desktop.png +0 -0
  752. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-navigation-example--mobile.png +0 -0
  753. package/src/ui/top-nav-items/__tests__/vr-tests/__snapshots__/top-navigation/top-navigation-with-a-large-search-input-in-focus-state--default.png +0 -0
  754. package/src/ui/top-nav-items/__tests__/vr-tests/top-navigation.vr.tsx +0 -160
  755. package/src/ui/top-nav-items/app-switcher.tsx +0 -81
  756. package/src/ui/top-nav-items/chat-button.tsx +0 -49
  757. package/src/ui/top-nav-items/create-button.tsx +0 -51
  758. package/src/ui/top-nav-items/custom-title.tsx +0 -83
  759. package/src/ui/top-nav-items/end-item.tsx +0 -120
  760. package/src/ui/top-nav-items/help.tsx +0 -69
  761. package/src/ui/top-nav-items/log-in.tsx +0 -66
  762. package/src/ui/top-nav-items/nav-logo/app-logo.tsx +0 -203
  763. package/src/ui/top-nav-items/nav-logo/custom-logo.tsx +0 -252
  764. package/src/ui/top-nav-items/nav-logo/logo-renderer.tsx +0 -66
  765. package/src/ui/top-nav-items/notifications.tsx +0 -67
  766. package/src/ui/top-nav-items/profile.tsx +0 -26
  767. package/src/ui/top-nav-items/search.tsx +0 -124
  768. package/src/ui/top-nav-items/settings.tsx +0 -16
  769. package/src/ui/top-nav-items/themed/__tests__/unit/button.test.tsx +0 -57
  770. package/src/ui/top-nav-items/themed/__tests__/unit/use-custom-theme.test.tsx +0 -43
  771. package/src/ui/top-nav-items/themed/button.tsx +0 -576
  772. package/src/ui/top-nav-items/themed/color-utils/__tests__/unit/hex.test.tsx +0 -131
  773. package/src/ui/top-nav-items/themed/color-utils/__tests__/unit/hsl.test.tsx +0 -117
  774. package/src/ui/top-nav-items/themed/color-utils/__tests__/unit/rgb.test.tsx +0 -88
  775. package/src/ui/top-nav-items/themed/color-utils/__tests__/unit/try-parse-user-color.test.tsx +0 -35
  776. package/src/ui/top-nav-items/themed/color-utils/formats/hex.tsx +0 -47
  777. package/src/ui/top-nav-items/themed/color-utils/formats/hsl.tsx +0 -112
  778. package/src/ui/top-nav-items/themed/color-utils/formats/rgb.tsx +0 -41
  779. package/src/ui/top-nav-items/themed/color-utils/index.tsx +0 -111
  780. package/src/ui/top-nav-items/themed/color-utils/parse-user-color.tsx +0 -31
  781. package/src/ui/top-nav-items/themed/color-utils/types.tsx +0 -6
  782. package/src/ui/top-nav-items/themed/get-custom-theme-styles.tsx +0 -186
  783. package/src/ui/top-nav-items/themed/has-custom-theme-context.tsx +0 -13
  784. package/src/ui/top-nav-items/themed/migration.tsx +0 -70
  785. package/src/ui/top-nav-items/themed/palette.tsx +0 -53
  786. package/src/ui/top-nav-items/themed/search.tsx +0 -70
  787. package/src/ui/top-nav-items/themed/use-custom-theme.tsx +0 -51
  788. package/tsconfig.app.json +0 -91
  789. package/tsconfig.dev.json +0 -175
  790. package/tsconfig.json +0 -20
@@ -1,1154 +0,0 @@
1
- import React, { useState } from 'react';
2
-
3
- import { act, render, screen, waitFor } from '@testing-library/react';
4
- import userEvent from '@testing-library/user-event';
5
-
6
- import { skipA11yAudit } from '@af/accessibility-testing';
7
- import DropdownMenu from '@atlaskit/dropdown-menu';
8
- import noop from '@atlaskit/ds-lib/noop';
9
- import { useNotifyOpenLayerObserver } from '@atlaskit/layering/experimental/open-layer-observer';
10
- import { Popup } from '@atlaskit/popup';
11
- import Tooltip from '@atlaskit/tooltip';
12
-
13
- import { FlyoutMenuItem } from '../../../menu-item/flyout-menu-item/flyout-menu-item';
14
- import { FlyoutMenuItemContent } from '../../../menu-item/flyout-menu-item/flyout-menu-item-content';
15
- import { FlyoutMenuItemTrigger } from '../../../menu-item/flyout-menu-item/flyout-menu-item-trigger';
16
- import { Main } from '../../main/main';
17
- import { Root } from '../../root';
18
- import { SideNav } from '../../side-nav/side-nav';
19
- import { SideNavToggleButton } from '../../side-nav/toggle-button';
20
- import { TopNav } from '../../top-nav/top-nav';
21
- import { TopNavStart } from '../../top-nav/top-nav-start';
22
-
23
- import {
24
- filterFromConsoleErrorOutput,
25
- parseCssErrorRegex,
26
- type ResetConsoleErrorFn,
27
- resetMatchMedia,
28
- setMediaQuery,
29
- } from './_test-utils';
30
-
31
- const createUser = () => userEvent.setup({ advanceTimers: jest.advanceTimersByTime });
32
-
33
- const runAllTimers = () => {
34
- act(() => {
35
- jest.runAllTimers();
36
- });
37
- };
38
-
39
- describe('side nav flyout', () => {
40
- beforeEach(() => {
41
- resetMatchMedia();
42
- jest.useFakeTimers();
43
-
44
- // Fails due to fake timers
45
- skipA11yAudit();
46
- setMediaQuery('(min-width: 64rem)', { initial: true });
47
- });
48
-
49
- afterEach(() => {
50
- jest.useRealTimers();
51
- jest.clearAllMocks();
52
- });
53
-
54
- let resetConsoleErrorSpyFn: ResetConsoleErrorFn;
55
- beforeAll(() => {
56
- resetConsoleErrorSpyFn = filterFromConsoleErrorOutput(parseCssErrorRegex);
57
- });
58
-
59
- afterAll(() => {
60
- resetConsoleErrorSpyFn();
61
- });
62
-
63
- it('should not display the side nav flyout by default', () => {
64
- render(
65
- <Root>
66
- <TopNav>
67
- <SideNavToggleButton
68
- collapseLabel="Collapse sidebar"
69
- expandLabel="Expand sidebar"
70
- defaultCollapsed
71
- />
72
- </TopNav>
73
- <SideNav defaultCollapsed testId="sidenav">
74
- sidenav
75
- </SideNav>
76
- <Main>main</Main>
77
- </Root>,
78
- );
79
-
80
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
81
- 'data-visible',
82
- expect.stringContaining('flyout'),
83
- );
84
- });
85
-
86
- describe('small viewports', () => {
87
- beforeEach(() => {
88
- setMediaQuery('(min-width: 64rem)', { initial: false });
89
- });
90
-
91
- it('should not display the side nav flyout when the toggle button is hovered', async () => {
92
- const user = createUser();
93
- render(
94
- <Root>
95
- <TopNav>
96
- <SideNavToggleButton collapseLabel="Collapse sidebar" expandLabel="Expand sidebar" />
97
- </TopNav>
98
- <SideNav testId="sidenav">sidenav</SideNav>
99
- <Main>main</Main>
100
- </Root>,
101
- );
102
-
103
- // Side nav is always collapsed by default on small viewports
104
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
105
- runAllTimers();
106
-
107
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute('data-visible', 'flyout');
108
-
109
- // Expand side nav
110
- await user.click(screen.getByRole('button', { name: 'Expand sidebar' }));
111
- runAllTimers();
112
-
113
- await user.hover(screen.getByRole('button', { name: 'Collapse sidebar' }));
114
- runAllTimers();
115
-
116
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute('data-visible', 'flyout');
117
- });
118
- });
119
-
120
- describe('large viewports', () => {
121
- it('should not display the side nav flyout when the side nav is expanded and the toggle button is hovered', async () => {
122
- const user = createUser();
123
- render(
124
- <Root>
125
- <TopNav>
126
- <SideNavToggleButton collapseLabel="Collapse sidebar" expandLabel="Expand sidebar" />
127
- </TopNav>
128
- <SideNav testId="sidenav">sidenav</SideNav>
129
- <Main>main</Main>
130
- </Root>,
131
- );
132
-
133
- await user.hover(screen.getByRole('button', { name: 'Collapse sidebar' }));
134
- runAllTimers();
135
-
136
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
137
- 'data-visible',
138
- expect.stringContaining('flyout'),
139
- );
140
- });
141
-
142
- it('should display the side nav flyout when the side nav is collapsed and the toggle button is hovered', async () => {
143
- const user = createUser();
144
- render(
145
- <Root>
146
- <TopNav>
147
- <SideNavToggleButton
148
- collapseLabel="Collapse sidebar"
149
- expandLabel="Expand sidebar"
150
- defaultCollapsed
151
- />
152
- </TopNav>
153
- <SideNav defaultCollapsed testId="sidenav">
154
- sidenav
155
- </SideNav>
156
- <Main>main</Main>
157
- </Root>,
158
- );
159
-
160
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
161
- runAllTimers();
162
-
163
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
164
- });
165
-
166
- it('should stop displaying the side nav flyout when hovering from toggle button to something else', async () => {
167
- const user = createUser();
168
- render(
169
- <Root>
170
- <TopNav>
171
- <SideNavToggleButton
172
- collapseLabel="Collapse sidebar"
173
- expandLabel="Expand sidebar"
174
- defaultCollapsed
175
- />
176
- </TopNav>
177
- <SideNav defaultCollapsed testId="sidenav">
178
- sidenav
179
- </SideNav>
180
- <Main>main</Main>
181
- </Root>,
182
- );
183
-
184
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
185
- runAllTimers();
186
-
187
- await user.hover(screen.getByText('main'));
188
- runAllTimers();
189
-
190
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
191
- 'data-visible',
192
- expect.stringContaining('flyout'),
193
- );
194
- });
195
-
196
- it('should keep the side nav flyout displayed when hovering from side nav toggle button to the side nav', async () => {
197
- const user = createUser();
198
- render(
199
- <Root>
200
- <TopNav>
201
- <SideNavToggleButton
202
- collapseLabel="Collapse sidebar"
203
- expandLabel="Expand sidebar"
204
- defaultCollapsed
205
- />
206
- </TopNav>
207
- <SideNav defaultCollapsed testId="sidenav">
208
- sidenav
209
- </SideNav>
210
- <Main>main</Main>
211
- </Root>,
212
- );
213
-
214
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
215
- runAllTimers();
216
-
217
- await user.hover(screen.getByTestId('sidenav'));
218
- runAllTimers();
219
-
220
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
221
- });
222
-
223
- it('should keep the side nav flyout displayed when hovering from side nav toggle button to the TopNavStart element', async () => {
224
- const user = createUser();
225
- render(
226
- <Root>
227
- <TopNav>
228
- <TopNavStart testId="top-nav-start">
229
- <SideNavToggleButton
230
- collapseLabel="Collapse sidebar"
231
- expandLabel="Expand sidebar"
232
- defaultCollapsed
233
- />
234
- </TopNavStart>
235
- </TopNav>
236
- <SideNav defaultCollapsed testId="sidenav">
237
- sidenav
238
- </SideNav>
239
- <Main>main</Main>
240
- </Root>,
241
- );
242
-
243
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
244
- runAllTimers();
245
-
246
- await user.hover(screen.getByTestId('top-nav-start'));
247
- runAllTimers();
248
-
249
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
250
- });
251
-
252
- it('should stop displaying the side nav flyout when hovering from the side nav toggle button to another element in the TopNavStart element', async () => {
253
- const user = createUser();
254
- render(
255
- <Root>
256
- <TopNav>
257
- <TopNavStart testId="top-nav-start">
258
- <SideNavToggleButton
259
- collapseLabel="Collapse sidebar"
260
- expandLabel="Expand sidebar"
261
- defaultCollapsed
262
- />
263
- <button type="button">App switcher</button>
264
- </TopNavStart>
265
- </TopNav>
266
- <SideNav defaultCollapsed testId="sidenav">
267
- sidenav
268
- </SideNav>
269
- <Main>main</Main>
270
- </Root>,
271
- );
272
-
273
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
274
- runAllTimers();
275
-
276
- await user.hover(screen.getByRole('button', { name: 'App switcher' }));
277
- runAllTimers();
278
-
279
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
280
- 'data-visible',
281
- expect.stringContaining('flyout'),
282
- );
283
- });
284
-
285
- it('should stop displaying the side nav flyout when hovering from the side nav to something else', async () => {
286
- const user = createUser();
287
- render(
288
- <Root>
289
- <TopNav>
290
- <SideNavToggleButton
291
- collapseLabel="Collapse sidebar"
292
- expandLabel="Expand sidebar"
293
- defaultCollapsed
294
- />
295
- </TopNav>
296
- <SideNav defaultCollapsed testId="sidenav">
297
- sidenav
298
- </SideNav>
299
- <Main>main</Main>
300
- </Root>,
301
- );
302
-
303
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
304
- runAllTimers();
305
-
306
- await user.hover(screen.getByTestId('sidenav'));
307
- runAllTimers();
308
-
309
- await user.hover(screen.getByText('main'));
310
- runAllTimers();
311
-
312
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
313
- 'data-visible',
314
- expect.stringContaining('flyout'),
315
- );
316
- });
317
-
318
- it('should expand the side nav when clicking on the toggle button while the side nav flyout is visible', async () => {
319
- const user = createUser();
320
- render(
321
- <Root>
322
- <TopNav>
323
- <SideNavToggleButton
324
- collapseLabel="Collapse sidebar"
325
- expandLabel="Expand sidebar"
326
- defaultCollapsed
327
- />
328
- </TopNav>
329
- <SideNav defaultCollapsed testId="sidenav">
330
- sidenav
331
- </SideNav>
332
- <Main>main</Main>
333
- </Root>,
334
- );
335
-
336
- // Hover on side nav toggle button to flyout the side nav
337
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
338
- runAllTimers();
339
-
340
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
341
-
342
- // Click on the toggle button to expand the side nav
343
- await user.click(screen.getByRole('button', { name: 'Expand sidebar' }));
344
- runAllTimers();
345
-
346
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'large');
347
- });
348
-
349
- it('should stop displaying the side nav flyout when the flyout was visible, and the user expands then collapses', async () => {
350
- const user = createUser();
351
- render(
352
- <Root>
353
- <TopNav>
354
- <SideNavToggleButton
355
- collapseLabel="Collapse sidebar"
356
- expandLabel="Expand sidebar"
357
- defaultCollapsed
358
- />
359
- </TopNav>
360
- <SideNav defaultCollapsed testId="sidenav">
361
- sidenav
362
- </SideNav>
363
- <Main>main</Main>
364
- </Root>,
365
- );
366
-
367
- // Hover on side nav toggle button to flyout the side nav
368
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
369
- runAllTimers();
370
-
371
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
372
-
373
- // Click on the toggle button to expand the side nav
374
- await user.click(screen.getByRole('button', { name: 'Expand sidebar' }));
375
- runAllTimers();
376
-
377
- // Click the toggle button again to collapse the side nav
378
- await user.click(screen.getByRole('button', { name: 'Collapse sidebar' }));
379
- runAllTimers();
380
-
381
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
382
- 'data-visible',
383
- expect.stringContaining('flyout'),
384
- );
385
- });
386
-
387
- it('should stop displaying the side nav flyout when the flyout was visible AND there is an open layer component, and the user expands then collapses', async () => {
388
- const LayerComponent = () => {
389
- useNotifyOpenLayerObserver({
390
- isOpen: true,
391
- onClose: noop,
392
- });
393
- return <div>LayerComponent</div>;
394
- };
395
-
396
- const user = createUser();
397
- render(
398
- <Root>
399
- <TopNav>
400
- <SideNavToggleButton
401
- collapseLabel="Collapse sidebar"
402
- expandLabel="Expand sidebar"
403
- defaultCollapsed
404
- />
405
- </TopNav>
406
- <SideNav defaultCollapsed testId="sidenav">
407
- sidenav
408
- <LayerComponent />
409
- </SideNav>
410
- <Main>main</Main>
411
- </Root>,
412
- );
413
-
414
- // Hover on side nav toggle button to flyout the side nav
415
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
416
- runAllTimers();
417
-
418
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
419
-
420
- // Click on the toggle button to expand the side nav
421
- await user.click(screen.getByRole('button', { name: 'Expand sidebar' }));
422
- runAllTimers();
423
-
424
- // Click the toggle button again to collapse the side nav
425
- await user.click(screen.getByRole('button', { name: 'Collapse sidebar' }));
426
- runAllTimers();
427
-
428
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
429
- 'data-visible',
430
- expect.stringContaining('flyout'),
431
- );
432
- });
433
-
434
- it('should keep the side nav flyout displayed when mousing back to the side nav before the flyout timer finishes', async () => {
435
- const user = createUser();
436
- render(
437
- <Root>
438
- <TopNav>
439
- <SideNavToggleButton
440
- collapseLabel="Collapse sidebar"
441
- expandLabel="Expand sidebar"
442
- defaultCollapsed
443
- />
444
- </TopNav>
445
- <SideNav defaultCollapsed testId="sidenav">
446
- sidenav
447
- </SideNav>
448
- <Main>main</Main>
449
- </Root>,
450
- );
451
-
452
- // Hover on side nav toggle button to flyout the side nav
453
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
454
- runAllTimers();
455
-
456
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
457
-
458
- // Hover on another element outside of side nav
459
- await user.hover(screen.getByText('main'));
460
-
461
- // We are specifically _not_ running pending timers here so we can hover back to the side nav before the flyout timer finishes.
462
-
463
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
464
-
465
- // Hover back over side nav
466
- await user.hover(screen.getByTestId('sidenav'));
467
- runAllTimers();
468
-
469
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
470
- });
471
- });
472
-
473
- describe('flyout lock', () => {
474
- const LayerComponent = () => {
475
- useNotifyOpenLayerObserver({
476
- isOpen: true,
477
- onClose: noop,
478
- });
479
-
480
- return <div>LayerComponent</div>;
481
- };
482
-
483
- it('should not lock the flyout open when there are no active layers', () => {
484
- render(
485
- <Root>
486
- <TopNav>
487
- <SideNavToggleButton
488
- collapseLabel="Collapse sidebar"
489
- expandLabel="Expand sidebar"
490
- defaultCollapsed
491
- />
492
- </TopNav>
493
- <SideNav defaultCollapsed testId="sidenav">
494
- sidenav
495
- </SideNav>
496
- <Main>main</Main>
497
- </Root>,
498
- );
499
-
500
- // Assert flyout is not visible
501
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
502
- 'data-visible',
503
- expect.stringContaining('flyout'),
504
- );
505
- });
506
-
507
- it('should not lock the flyout open when there is an open layer but the side nav is not flied out', () => {
508
- render(
509
- <Root>
510
- <TopNav>
511
- <SideNavToggleButton
512
- collapseLabel="Collapse sidebar"
513
- expandLabel="Expand sidebar"
514
- defaultCollapsed
515
- />
516
- </TopNav>
517
- <SideNav defaultCollapsed testId="sidenav">
518
- sidenav
519
- <LayerComponent />
520
- </SideNav>
521
- <Main>main</Main>
522
- </Root>,
523
- );
524
-
525
- // Assert flyout is not visible
526
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
527
- 'data-visible',
528
- expect.stringContaining('flyout'),
529
- );
530
- });
531
-
532
- it('should lock the flyout open when there is an open layer and the side nav is flied out', async () => {
533
- const user = createUser();
534
- render(
535
- <Root>
536
- <TopNav>
537
- <SideNavToggleButton
538
- collapseLabel="Collapse sidebar"
539
- expandLabel="Expand sidebar"
540
- defaultCollapsed
541
- />
542
- </TopNav>
543
- <SideNav defaultCollapsed testId="sidenav">
544
- sidenav
545
- <LayerComponent />
546
- </SideNav>
547
- <Main>main</Main>
548
- </Root>,
549
- );
550
-
551
- // Hover on side nav toggle button to flyout the side nav
552
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
553
- runAllTimers();
554
-
555
- // Assert flyout is visible
556
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
557
-
558
- // Hover on another element outside of side nav to check if lock is working
559
- await user.hover(screen.getByText('main'));
560
- runAllTimers();
561
-
562
- // Assert flyout is still visible
563
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
564
- });
565
-
566
- it('should lock the flyout open when there are multiple layers open and the side nav is flied out', async () => {
567
- const user = createUser();
568
- render(
569
- <Root>
570
- <TopNav>
571
- <SideNavToggleButton
572
- collapseLabel="Collapse sidebar"
573
- expandLabel="Expand sidebar"
574
- defaultCollapsed
575
- />
576
- </TopNav>
577
- <SideNav defaultCollapsed testId="sidenav">
578
- sidenav
579
- <LayerComponent />
580
- <LayerComponent />
581
- </SideNav>
582
- <Main>main</Main>
583
- </Root>,
584
- );
585
-
586
- // Hover on side nav toggle button to flyout the side nav
587
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
588
- runAllTimers();
589
-
590
- // Assert flyout is visible
591
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
592
-
593
- // Hover on another element outside of side nav to check if lock is working
594
- await user.hover(screen.getByText('main'));
595
- runAllTimers();
596
-
597
- // Assert flyout is visible
598
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
599
- });
600
-
601
- it('should keep the side nav flyout locked open when there are multiple layers open and then one is removed', async () => {
602
- const user = createUser();
603
- const TestComponent = () => {
604
- const [isSecondLayerOpen, setIsSecondLayerOpen] = useState(true);
605
-
606
- return (
607
- <Root>
608
- <TopNav>
609
- <SideNavToggleButton
610
- collapseLabel="Collapse sidebar"
611
- expandLabel="Expand sidebar"
612
- defaultCollapsed
613
- />
614
- </TopNav>
615
- <SideNav defaultCollapsed testId="sidenav">
616
- sidenav
617
- <LayerComponent />
618
- {isSecondLayerOpen && <LayerComponent />}
619
- </SideNav>
620
- <Main>
621
- main
622
- <button type="button" onClick={() => setIsSecondLayerOpen(false)}>
623
- test button
624
- </button>
625
- </Main>
626
- </Root>
627
- );
628
- };
629
- render(<TestComponent />);
630
-
631
- // Hover on side nav toggle button to flyout the side nav
632
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
633
- runAllTimers();
634
-
635
- // Hover on another element outside of side nav to check if lock is working
636
- await user.hover(screen.getByText('main'));
637
- runAllTimers();
638
-
639
- // Assert flyout is visible
640
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
641
-
642
- // Click on the button to remove the second layer
643
- await user.click(screen.getByRole('button', { name: 'test button' }));
644
- runAllTimers();
645
-
646
- // Assert flyout is still visible
647
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
648
- });
649
-
650
- it('should no longer lock the side nav flyout when all layers are removed', async () => {
651
- const user = createUser();
652
- const TestComponent = () => {
653
- const [areLayersOpen, setAreLayersOpen] = useState(true);
654
-
655
- return (
656
- <Root>
657
- <TopNav>
658
- <SideNavToggleButton
659
- collapseLabel="Collapse sidebar"
660
- expandLabel="Expand sidebar"
661
- defaultCollapsed
662
- />
663
- </TopNav>
664
- <SideNav defaultCollapsed testId="sidenav">
665
- sidenav
666
- {areLayersOpen && (
667
- <>
668
- <LayerComponent />
669
- <LayerComponent />
670
- </>
671
- )}
672
- </SideNav>
673
- <Main>
674
- main
675
- <button type="button" onClick={() => setAreLayersOpen(false)}>
676
- test button
677
- </button>
678
- </Main>
679
- </Root>
680
- );
681
- };
682
- render(<TestComponent />);
683
-
684
- // Hover on side nav toggle button to flyout the side nav
685
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
686
- runAllTimers();
687
-
688
- // Hover on another element outside of side nav to check if lock is working
689
- await user.hover(screen.getByText('main'));
690
- runAllTimers();
691
-
692
- // Assert flyout is visible
693
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
694
-
695
- // Click on the button to remove all layers
696
- await user.click(screen.getByRole('button', { name: 'test button' }));
697
- runAllTimers();
698
-
699
- // Assert flyout is not visible
700
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
701
- 'data-visible',
702
- expect.stringContaining('flyout'),
703
- );
704
- });
705
-
706
- it('should close the side nav flyout with a delay when the user mouses out of the side nav and then the last open layer is closed', async () => {
707
- const user = createUser();
708
- const TestComponent = () => {
709
- const [isLayerOpen, setIsLayerOpen] = useState(true);
710
-
711
- return (
712
- <Root>
713
- <TopNav>
714
- <TopNavStart testId="top-nav-start">
715
- <SideNavToggleButton
716
- collapseLabel="Collapse sidebar"
717
- expandLabel="Expand sidebar"
718
- defaultCollapsed
719
- />
720
- </TopNavStart>
721
- </TopNav>
722
- <SideNav defaultCollapsed testId="sidenav">
723
- sidenav
724
- {isLayerOpen && <LayerComponent />}
725
- </SideNav>
726
- <Main>
727
- main
728
- <button type="button" onClick={() => setIsLayerOpen(false)}>
729
- test button
730
- </button>
731
- </Main>
732
- </Root>
733
- );
734
- };
735
- render(<TestComponent />);
736
-
737
- // Hover on side nav toggle button to flyout the side nav
738
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
739
- runAllTimers();
740
-
741
- // Hover on another element outside of side nav to check if lock is working
742
- await user.hover(screen.getByText('main'));
743
-
744
- // Assert flyout is visible
745
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
746
-
747
- // Click on the button to remove the second layer
748
- await user.click(screen.getByRole('button', { name: 'test button' }));
749
-
750
- // We are specifically _not_ running pending timers here to make sure the flyout is not closed immediately.
751
-
752
- // Assert flyout is still visible
753
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
754
-
755
- // Wait for the flyout to close
756
- runAllTimers();
757
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
758
- 'data-visible',
759
- expect.stringContaining('flyout'),
760
- );
761
- });
762
-
763
- it('should keep the side nav flyout locked when a layer is opened after the user mouses out of the side nav', async () => {
764
- const user = createUser();
765
- const TestComponent = ({ isLayerOpen }: { isLayerOpen: boolean }) => {
766
- return (
767
- <Root>
768
- <TopNav>
769
- <TopNavStart testId="top-nav-start">
770
- <SideNavToggleButton
771
- collapseLabel="Collapse sidebar"
772
- expandLabel="Expand sidebar"
773
- defaultCollapsed
774
- />
775
- </TopNavStart>
776
- </TopNav>
777
- <SideNav defaultCollapsed testId="sidenav">
778
- sidenav
779
- {isLayerOpen && <LayerComponent />}
780
- </SideNav>
781
- <Main>main</Main>
782
- </Root>
783
- );
784
- };
785
- const { rerender } = render(<TestComponent isLayerOpen={false} />);
786
-
787
- // Hover on side nav toggle button to flyout the side nav
788
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
789
- runAllTimers();
790
-
791
- // Hover on another element outside of side nav to check if lock is working
792
- await user.hover(screen.getByText('main'));
793
-
794
- // We are specifically _not_ running pending timers here to make sure the flyout is not closed immediately.
795
-
796
- // Assert flyout is visible
797
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
798
-
799
- // Open a layer within the side nav
800
- rerender(<TestComponent isLayerOpen={true} />);
801
-
802
- // Assert flyout is still visible
803
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
804
-
805
- // Run the timer and assert it is still visible
806
- runAllTimers();
807
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
808
-
809
- // Close the layer and assert the flyout is closed
810
- rerender(<TestComponent isLayerOpen={false} />);
811
-
812
- runAllTimers();
813
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
814
- 'data-visible',
815
- expect.stringContaining('flyout'),
816
- );
817
- });
818
-
819
- describe('flyout menu item', () => {
820
- it('should keep the side nav flyout locked when a flyout menu item is opened', async () => {
821
- const user = createUser();
822
- render(
823
- <Root>
824
- <TopNav>
825
- <SideNavToggleButton
826
- collapseLabel="Collapse sidebar"
827
- expandLabel="Expand sidebar"
828
- defaultCollapsed
829
- />
830
- </TopNav>
831
- <SideNav defaultCollapsed testId="sidenav">
832
- sidenav
833
- <FlyoutMenuItem>
834
- <FlyoutMenuItemTrigger>Flyout menu item trigger</FlyoutMenuItemTrigger>
835
- <FlyoutMenuItemContent>Flyout menu item content</FlyoutMenuItemContent>
836
- </FlyoutMenuItem>
837
- </SideNav>
838
- <Main>main</Main>
839
- </Root>,
840
- );
841
-
842
- // Hover on side nav toggle button to flyout the side nav
843
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
844
- runAllTimers();
845
-
846
- // Open a flyout menu item to lock the flyout
847
- await user.click(screen.getByText('Flyout menu item trigger'));
848
- runAllTimers();
849
-
850
- // Hover on another element outside of side nav to check if lock is working
851
- await user.hover(screen.getByText('main'));
852
- runAllTimers();
853
-
854
- // Assert flyout is still visible
855
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
856
- });
857
-
858
- it('should stop locking the side nav flyout once a flyout menu item is closed', async () => {
859
- const user = createUser();
860
- render(
861
- <Root>
862
- <TopNav>
863
- <SideNavToggleButton
864
- collapseLabel="Collapse sidebar"
865
- expandLabel="Expand sidebar"
866
- defaultCollapsed
867
- />
868
- </TopNav>
869
- <SideNav defaultCollapsed testId="sidenav">
870
- sidenav
871
- <FlyoutMenuItem>
872
- <FlyoutMenuItemTrigger>Flyout menu item trigger</FlyoutMenuItemTrigger>
873
- <FlyoutMenuItemContent>Flyout menu item content</FlyoutMenuItemContent>
874
- </FlyoutMenuItem>
875
- </SideNav>
876
- <Main>
877
- main
878
- <button type="button">test button</button>
879
- </Main>
880
- </Root>,
881
- );
882
-
883
- // Hover on side nav toggle button to flyout the side nav
884
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
885
- runAllTimers();
886
-
887
- // Open a flyout menu item to lock the flyout
888
- await user.click(screen.getByText('Flyout menu item trigger'));
889
- runAllTimers();
890
-
891
- // Hover on another element outside of side nav to check if lock is working
892
- await user.hover(screen.getByText('main'));
893
- runAllTimers();
894
-
895
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
896
-
897
- // Click on the main slot to close the flyout
898
- await user.click(screen.getByRole('button', { name: 'test button' }));
899
- runAllTimers();
900
-
901
- await waitFor(() =>
902
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
903
- 'data-visible',
904
- expect.stringContaining('flyout'),
905
- ),
906
- );
907
- });
908
- });
909
-
910
- describe('popup', () => {
911
- const TestComponent = () => {
912
- const [isPopupOpen, setIsPopupOpen] = useState(true);
913
-
914
- return (
915
- <Root>
916
- <TopNav>
917
- <SideNavToggleButton
918
- collapseLabel="Collapse sidebar"
919
- expandLabel="Expand sidebar"
920
- defaultCollapsed
921
- />
922
- </TopNav>
923
- <SideNav defaultCollapsed testId="sidenav">
924
- sidenav
925
- <Popup
926
- shouldRenderToParent
927
- isOpen={isPopupOpen}
928
- onClose={() => setIsPopupOpen(false)}
929
- placement="bottom-start"
930
- content={() => <div>Content</div>}
931
- trigger={({ ref }) => (
932
- <button type="button" ref={ref}>
933
- Popup trigger
934
- </button>
935
- )}
936
- />
937
- </SideNav>
938
- <Main>
939
- main
940
- <button type="button" onClick={() => setIsPopupOpen(false)}>
941
- test button
942
- </button>
943
- </Main>
944
- </Root>
945
- );
946
- };
947
-
948
- it('should keep the side nav flyout locked when a popup is opened', async () => {
949
- const user = createUser();
950
- render(<TestComponent />);
951
-
952
- // Hover on side nav toggle button to flyout the side nav
953
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
954
- runAllTimers();
955
-
956
- // Open popup to lock the flyout
957
- await user.click(screen.getByText('Popup trigger'));
958
- runAllTimers();
959
-
960
- // Hover on another element outside of side nav to check if lock is working
961
- await user.hover(screen.getByText('main'));
962
- runAllTimers();
963
-
964
- // Assert flyout is still visible
965
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
966
- });
967
-
968
- it('should stop locking the side nav flyout once a popup is closed', async () => {
969
- const user = createUser();
970
- render(<TestComponent />);
971
-
972
- // Hover on side nav toggle button to flyout the side nav
973
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
974
- runAllTimers();
975
-
976
- // Open popup to lock the flyout
977
- await user.click(screen.getByText('Popup trigger'));
978
- runAllTimers();
979
-
980
- // Hover on another element outside of side nav to check if lock is working
981
- await user.hover(screen.getByText('main'));
982
- runAllTimers();
983
-
984
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
985
-
986
- // Click on the main slot to close the popup
987
- await user.click(screen.getByRole('button', { name: 'test button' }));
988
- runAllTimers();
989
-
990
- await waitFor(() =>
991
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
992
- 'data-visible',
993
- expect.stringContaining('flyout'),
994
- ),
995
- );
996
- });
997
- });
998
-
999
- describe('dropdown menu', () => {
1000
- const TestComponent = () => (
1001
- <Root>
1002
- <TopNav>
1003
- <SideNavToggleButton
1004
- collapseLabel="Collapse sidebar"
1005
- expandLabel="Expand sidebar"
1006
- defaultCollapsed
1007
- />
1008
- </TopNav>
1009
- <SideNav defaultCollapsed testId="sidenav">
1010
- sidenav
1011
- <DropdownMenu<HTMLButtonElement> trigger="Dropdown trigger" shouldRenderToParent>
1012
- Dropdown content
1013
- </DropdownMenu>
1014
- </SideNav>
1015
- <Main>
1016
- main
1017
- <button type="button">test button</button>
1018
- </Main>
1019
- </Root>
1020
- );
1021
-
1022
- it('should keep the side nav flyout locked when a dropdown is opened', async () => {
1023
- const user = createUser();
1024
- render(<TestComponent />);
1025
-
1026
- // Hover on side nav toggle button to flyout the side nav
1027
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
1028
- runAllTimers();
1029
-
1030
- // Open dropdown to lock the flyout
1031
- await user.click(screen.getByText('Dropdown trigger'));
1032
- runAllTimers();
1033
-
1034
- // Hover on another element outside of side nav to check if lock is working
1035
- await user.hover(screen.getByText('main'));
1036
- runAllTimers();
1037
-
1038
- // Assert flyout is still visible
1039
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
1040
- });
1041
-
1042
- it('should stop locking the side nav flyout once a dropdown is closed', async () => {
1043
- const user = createUser();
1044
- render(<TestComponent />);
1045
-
1046
- // Hover on side nav toggle button to flyout the side nav
1047
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
1048
- runAllTimers();
1049
-
1050
- // Open dropdown to lock the flyout
1051
- await user.click(screen.getByText('Dropdown trigger'));
1052
- runAllTimers();
1053
-
1054
- // Hover on another element outside of side nav to check if lock is working
1055
- await user.hover(screen.getByText('main'));
1056
- runAllTimers();
1057
-
1058
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
1059
-
1060
- // Click on the main slot to close the dropdown
1061
- await user.click(screen.getByRole('button', { name: 'test button' }));
1062
- runAllTimers();
1063
-
1064
- await waitFor(() =>
1065
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
1066
- 'data-visible',
1067
- expect.stringContaining('flyout'),
1068
- ),
1069
- );
1070
- });
1071
- });
1072
-
1073
- describe('tooltip', () => {
1074
- const TestComponent = () => (
1075
- <Root>
1076
- <TopNav>
1077
- <SideNavToggleButton
1078
- collapseLabel="Collapse sidebar"
1079
- expandLabel="Expand sidebar"
1080
- defaultCollapsed
1081
- />
1082
- </TopNav>
1083
- <SideNav defaultCollapsed testId="sidenav">
1084
- sidenav
1085
- <Tooltip content="This is a tooltip">
1086
- {(tooltipProps) => (
1087
- <button type="button" {...tooltipProps}>
1088
- Tooltip trigger
1089
- </button>
1090
- )}
1091
- </Tooltip>
1092
- </SideNav>
1093
- <Main>
1094
- main
1095
- <button type="button">test button</button>
1096
- </Main>
1097
- </Root>
1098
- );
1099
-
1100
- it('should keep the side nav flyout locked when a tooltip within the side nav is hovered over', async () => {
1101
- const user = createUser();
1102
- render(<TestComponent />);
1103
-
1104
- // Hover on side nav toggle button to flyout the side nav
1105
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
1106
- runAllTimers();
1107
-
1108
- // Hover over the tooltip trigger to lock the flyout
1109
- await user.hover(screen.getByRole('button', { name: 'Tooltip trigger' }));
1110
- runAllTimers();
1111
-
1112
- // Wait for tooltip to be visible
1113
- await waitFor(() => expect(screen.getByRole('tooltip')).toBeVisible());
1114
-
1115
- // Hover over the tooltip to check if lock is working
1116
- await user.hover(screen.getByRole('tooltip'));
1117
- runAllTimers();
1118
-
1119
- // Assert flyout is still visible
1120
- expect(screen.getByTestId('sidenav')).toHaveAttribute('data-visible', 'flyout');
1121
- });
1122
-
1123
- it('should stop locking the side nav flyout when a tooltip is closed', async () => {
1124
- const user = createUser();
1125
- render(<TestComponent />);
1126
-
1127
- // Hover on side nav toggle button to flyout the side nav
1128
- await user.hover(screen.getByRole('button', { name: 'Expand sidebar' }));
1129
- runAllTimers();
1130
-
1131
- // Hover over the tooltip trigger to lock the flyout
1132
- await user.hover(screen.getByRole('button', { name: 'Tooltip trigger' }));
1133
- runAllTimers();
1134
-
1135
- // Wait for tooltip to be visible
1136
- await waitFor(() => expect(screen.getByRole('tooltip')).toBeVisible());
1137
-
1138
- // Hover on another element outside of side nav to check if lock is working
1139
- await user.hover(screen.getByText('main'));
1140
- runAllTimers();
1141
-
1142
- // Wait for the tooltip to be hidden
1143
- await waitFor(() => expect(screen.queryByRole('tooltip')).not.toBeInTheDocument());
1144
-
1145
- await waitFor(() =>
1146
- expect(screen.getByTestId('sidenav')).not.toHaveAttribute(
1147
- 'data-visible',
1148
- expect.stringContaining('flyout'),
1149
- ),
1150
- );
1151
- });
1152
- });
1153
- });
1154
- });