@atlaskit/navigation-system 7.3.0 → 8.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 (347) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/constellation/layout/custom-theming.mdx +1 -1
  3. package/dist/cjs/context/skip-links/skip-links-context.js +2 -54
  4. package/dist/cjs/context/skip-links/use-skip-link-internal.js +45 -0
  5. package/dist/cjs/context/skip-links/use-skip-link.js +17 -0
  6. package/dist/cjs/context/top-nav-start/top-nav-start-attach-ref.js +10 -0
  7. package/dist/cjs/context/top-nav-start/top-nav-start-context-provider.js +4 -3
  8. package/dist/cjs/context/top-nav-start/top-nav-start-element.js +8 -0
  9. package/dist/cjs/entry-points/experimental/top-nav-button.js +8 -5
  10. package/dist/cjs/entry-points/layout/skip-links.js +4 -4
  11. package/dist/cjs/ui/page-layout/aside.js +6 -6
  12. package/dist/cjs/ui/page-layout/banner.js +8 -7
  13. package/dist/cjs/ui/page-layout/{hoist-utils.js → dangerously-hoist-css-var-to-document-root.js} +6 -25
  14. package/dist/cjs/ui/page-layout/hoist-css-var-to-local-grid.js +22 -0
  15. package/dist/cjs/ui/page-layout/main/main.js +4 -4
  16. package/dist/cjs/ui/page-layout/panel-splitter/get-pixel-width.js +13 -0
  17. package/dist/cjs/ui/page-layout/panel-splitter/{get-width.js → get-width-from-drag-location.js} +1 -12
  18. package/dist/cjs/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.js +10 -0
  19. package/dist/cjs/ui/page-layout/panel-splitter/{context.js → on-double-click-context.js} +1 -9
  20. package/dist/cjs/ui/page-layout/panel-splitter/panel-splitter-context.js +14 -0
  21. package/dist/cjs/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.js +7 -0
  22. package/dist/cjs/ui/page-layout/panel-splitter/panel-splitter.js +17 -19
  23. package/dist/cjs/ui/page-layout/panel-splitter/provider.js +2 -2
  24. package/dist/cjs/ui/page-layout/panel-splitter/side-nav-panel-splitter.js +4 -3
  25. package/dist/cjs/ui/page-layout/panel.js +8 -8
  26. package/dist/cjs/ui/page-layout/ribbon.js +4 -4
  27. package/dist/cjs/ui/page-layout/root.js +3 -3
  28. package/dist/cjs/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.js +3 -25
  29. package/dist/cjs/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.js +16 -0
  30. package/dist/cjs/ui/page-layout/side-nav/set-side-nav-visibility-state.js +10 -0
  31. package/dist/cjs/ui/page-layout/side-nav/{element-context.js → side-nav-element-provider.js} +2 -14
  32. package/dist/cjs/ui/page-layout/side-nav/side-nav-ref-context.js +10 -0
  33. package/dist/cjs/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.js +10 -0
  34. package/dist/cjs/ui/page-layout/side-nav/side-nav-toggle-button-element.js +12 -0
  35. package/dist/cjs/ui/page-layout/side-nav/side-nav-visibility-state.js +12 -0
  36. package/dist/cjs/ui/page-layout/side-nav/side-nav.js +19 -18
  37. package/dist/cjs/ui/page-layout/side-nav/toggle-button-provider.js +4 -3
  38. package/dist/cjs/ui/page-layout/side-nav/toggle-button.js +8 -8
  39. package/dist/cjs/ui/page-layout/side-nav/use-expand-side-nav.js +2 -2
  40. package/dist/cjs/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.js +15 -0
  41. package/dist/cjs/ui/page-layout/side-nav/use-side-nav-ref.js +16 -0
  42. package/dist/cjs/ui/page-layout/side-nav/use-side-nav-toggle-keyboard-shortcut.js +2 -2
  43. package/dist/cjs/ui/page-layout/side-nav/use-side-nav-visibility.js +2 -2
  44. package/dist/cjs/ui/page-layout/side-nav/use-toggle-side-nav.js +2 -2
  45. package/dist/cjs/ui/page-layout/side-nav/visibility-provider.js +4 -3
  46. package/dist/cjs/ui/page-layout/top-nav/top-nav-end.js +2 -2
  47. package/dist/cjs/ui/page-layout/top-nav/top-nav-start.js +5 -5
  48. package/dist/cjs/ui/page-layout/top-nav/top-nav.js +17 -15
  49. package/dist/cjs/ui/page-layout/{id-utils.js → use-layout-id.js} +2 -14
  50. package/dist/cjs/ui/page-layout/use-resizing-width-css-var-on-root-element.js +2 -2
  51. package/dist/cjs/ui/page-layout/use-skip-link-id.js +17 -0
  52. package/dist/cjs/ui/top-nav-items/app-switcher.js +2 -2
  53. package/dist/cjs/ui/top-nav-items/chat-button.js +2 -2
  54. package/dist/cjs/ui/top-nav-items/create-button.js +2 -2
  55. package/dist/cjs/ui/top-nav-items/end-item.js +2 -2
  56. package/dist/cjs/ui/top-nav-items/log-in.js +2 -2
  57. package/dist/cjs/ui/top-nav-items/search.js +2 -2
  58. package/dist/cjs/ui/top-nav-items/themed/button.js +12 -358
  59. package/dist/cjs/ui/top-nav-items/themed/get-custom-theme-styles.js +10 -10
  60. package/dist/cjs/ui/top-nav-items/themed/get-primitives-spread-props.js +39 -0
  61. package/dist/cjs/ui/top-nav-items/themed/icon-button.js +21 -0
  62. package/dist/cjs/ui/top-nav-items/themed/link-button.js +21 -0
  63. package/dist/cjs/ui/top-nav-items/themed/link-icon-button.js +21 -0
  64. package/dist/cjs/ui/top-nav-items/themed/palette-rgba.js +20 -0
  65. package/dist/cjs/ui/top-nav-items/themed/palette.js +1 -21
  66. package/dist/cjs/ui/top-nav-items/themed/search.js +1 -2
  67. package/dist/cjs/ui/top-nav-items/themed/{button.compiled.css → themed-anchor.compiled.css} +0 -1
  68. package/dist/cjs/ui/top-nav-items/themed/themed-anchor.js +76 -0
  69. package/dist/cjs/ui/top-nav-items/themed/themed-button.compiled.css +2 -0
  70. package/dist/cjs/ui/top-nav-items/themed/themed-button.js +40 -0
  71. package/dist/cjs/ui/top-nav-items/themed/themed-icon-button.js +85 -0
  72. package/dist/cjs/ui/top-nav-items/themed/themed-link-button.compiled.css +2 -0
  73. package/dist/cjs/ui/top-nav-items/themed/themed-link-button.js +45 -0
  74. package/dist/cjs/ui/top-nav-items/themed/themed-link-icon-button.js +83 -0
  75. package/dist/{esm/ui/top-nav-items/themed/button.compiled.css → cjs/ui/top-nav-items/themed/themed-pressable.compiled.css} +0 -1
  76. package/dist/cjs/ui/top-nav-items/themed/themed-pressable.js +64 -0
  77. package/dist/cjs/ui/top-nav-items/themed/types.js +5 -0
  78. package/dist/cjs/ui/top-nav-items/themed/use-custom-theme-new.js +53 -0
  79. package/dist/cjs/ui/top-nav-items/themed/use-custom-theme.js +0 -41
  80. package/dist/es2019/context/skip-links/skip-links-context.js +2 -54
  81. package/dist/es2019/context/skip-links/use-skip-link-internal.js +41 -0
  82. package/dist/es2019/context/skip-links/use-skip-link.js +12 -0
  83. package/dist/es2019/context/top-nav-start/top-nav-start-attach-ref.js +3 -0
  84. package/dist/es2019/context/top-nav-start/top-nav-start-context-provider.js +2 -1
  85. package/dist/es2019/context/top-nav-start/top-nav-start-element.js +2 -0
  86. package/dist/es2019/entry-points/experimental/top-nav-button.js +4 -1
  87. package/dist/es2019/entry-points/layout/skip-links.js +2 -2
  88. package/dist/es2019/ui/page-layout/aside.js +3 -3
  89. package/dist/es2019/ui/page-layout/banner.js +4 -3
  90. package/dist/es2019/ui/page-layout/{hoist-utils.js → dangerously-hoist-css-var-to-document-root.js} +0 -19
  91. package/dist/es2019/ui/page-layout/hoist-css-var-to-local-grid.js +15 -0
  92. package/dist/es2019/ui/page-layout/main/main.js +2 -2
  93. package/dist/es2019/ui/page-layout/panel-splitter/get-pixel-width.js +7 -0
  94. package/dist/es2019/ui/page-layout/panel-splitter/{get-width.js → get-width-from-drag-location.js} +0 -11
  95. package/dist/es2019/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.js +4 -0
  96. package/dist/es2019/ui/page-layout/panel-splitter/{context.js → on-double-click-context.js} +0 -8
  97. package/dist/es2019/ui/page-layout/panel-splitter/panel-splitter-context.js +9 -0
  98. package/dist/es2019/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.js +1 -0
  99. package/dist/es2019/ui/page-layout/panel-splitter/panel-splitter.js +12 -13
  100. package/dist/es2019/ui/page-layout/panel-splitter/provider.js +1 -1
  101. package/dist/es2019/ui/page-layout/panel-splitter/side-nav-panel-splitter.js +2 -1
  102. package/dist/es2019/ui/page-layout/panel.js +4 -4
  103. package/dist/es2019/ui/page-layout/ribbon.js +2 -2
  104. package/dist/es2019/ui/page-layout/root.js +2 -2
  105. package/dist/es2019/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.js +2 -22
  106. package/dist/es2019/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.js +10 -0
  107. package/dist/es2019/ui/page-layout/side-nav/set-side-nav-visibility-state.js +3 -0
  108. package/dist/es2019/ui/page-layout/side-nav/side-nav-element-provider.js +10 -0
  109. package/dist/es2019/ui/page-layout/side-nav/side-nav-ref-context.js +4 -0
  110. package/dist/es2019/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.js +3 -0
  111. package/dist/es2019/ui/page-layout/side-nav/side-nav-toggle-button-element.js +7 -0
  112. package/dist/es2019/ui/page-layout/side-nav/{visibility-context.js → side-nav-visibility-state.js} +1 -7
  113. package/dist/es2019/ui/page-layout/side-nav/side-nav.js +9 -8
  114. package/dist/es2019/ui/page-layout/side-nav/toggle-button-provider.js +2 -1
  115. package/dist/es2019/ui/page-layout/side-nav/toggle-button.js +4 -4
  116. package/dist/es2019/ui/page-layout/side-nav/use-expand-side-nav.js +1 -1
  117. package/dist/es2019/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.js +10 -0
  118. package/dist/es2019/ui/page-layout/side-nav/use-side-nav-ref.js +11 -0
  119. package/dist/es2019/ui/page-layout/side-nav/use-side-nav-toggle-keyboard-shortcut.js +1 -1
  120. package/dist/es2019/ui/page-layout/side-nav/use-side-nav-visibility.js +1 -1
  121. package/dist/es2019/ui/page-layout/side-nav/use-toggle-side-nav.js +1 -1
  122. package/dist/es2019/ui/page-layout/side-nav/visibility-provider.js +2 -2
  123. package/dist/es2019/ui/page-layout/top-nav/top-nav-end.js +1 -1
  124. package/dist/es2019/ui/page-layout/top-nav/top-nav-start.js +2 -2
  125. package/dist/es2019/ui/page-layout/top-nav/top-nav.js +11 -8
  126. package/dist/es2019/ui/page-layout/use-layout-id.js +15 -0
  127. package/dist/es2019/ui/page-layout/use-resizing-width-css-var-on-root-element.js +1 -1
  128. package/dist/es2019/ui/page-layout/{id-utils.js → use-skip-link-id.js} +0 -14
  129. package/dist/es2019/ui/top-nav-items/app-switcher.js +1 -1
  130. package/dist/es2019/ui/top-nav-items/chat-button.js +1 -1
  131. package/dist/es2019/ui/top-nav-items/create-button.js +1 -1
  132. package/dist/es2019/ui/top-nav-items/end-item.js +1 -1
  133. package/dist/es2019/ui/top-nav-items/log-in.js +1 -1
  134. package/dist/es2019/ui/top-nav-items/search.js +1 -1
  135. package/dist/es2019/ui/top-nav-items/themed/button.js +11 -347
  136. package/dist/es2019/ui/top-nav-items/themed/get-custom-theme-styles.js +28 -28
  137. package/dist/es2019/ui/top-nav-items/themed/get-primitives-spread-props.js +31 -0
  138. package/dist/es2019/ui/top-nav-items/themed/icon-button.js +12 -0
  139. package/dist/es2019/ui/top-nav-items/themed/link-button.js +12 -0
  140. package/dist/es2019/ui/top-nav-items/themed/link-icon-button.js +12 -0
  141. package/dist/es2019/ui/top-nav-items/themed/palette-rgba.js +14 -0
  142. package/dist/es2019/ui/top-nav-items/themed/palette.js +0 -20
  143. package/dist/es2019/ui/top-nav-items/themed/search.js +1 -2
  144. package/dist/es2019/ui/top-nav-items/themed/{button.compiled.css → themed-anchor.compiled.css} +0 -1
  145. package/dist/es2019/ui/top-nav-items/themed/themed-anchor.js +66 -0
  146. package/dist/es2019/ui/top-nav-items/themed/themed-button.compiled.css +2 -0
  147. package/dist/es2019/ui/top-nav-items/themed/themed-button.js +30 -0
  148. package/dist/es2019/ui/top-nav-items/themed/themed-icon-button.js +72 -0
  149. package/dist/es2019/ui/top-nav-items/themed/themed-link-button.compiled.css +2 -0
  150. package/dist/es2019/ui/top-nav-items/themed/themed-link-button.js +37 -0
  151. package/dist/es2019/ui/top-nav-items/themed/themed-link-icon-button.js +73 -0
  152. package/dist/es2019/ui/top-nav-items/themed/themed-pressable.compiled.css +68 -0
  153. package/dist/es2019/ui/top-nav-items/themed/themed-pressable.js +52 -0
  154. package/dist/es2019/ui/top-nav-items/themed/types.js +1 -0
  155. package/dist/es2019/ui/top-nav-items/themed/use-custom-theme-new.js +45 -0
  156. package/dist/es2019/ui/top-nav-items/themed/use-custom-theme.js +0 -38
  157. package/dist/esm/context/skip-links/skip-links-context.js +2 -54
  158. package/dist/esm/context/skip-links/use-skip-link-internal.js +39 -0
  159. package/dist/esm/context/skip-links/use-skip-link.js +12 -0
  160. package/dist/esm/context/top-nav-start/top-nav-start-attach-ref.js +3 -0
  161. package/dist/esm/context/top-nav-start/top-nav-start-context-provider.js +2 -1
  162. package/dist/esm/context/top-nav-start/top-nav-start-element.js +2 -0
  163. package/dist/esm/entry-points/experimental/top-nav-button.js +4 -1
  164. package/dist/esm/entry-points/layout/skip-links.js +2 -2
  165. package/dist/esm/ui/page-layout/aside.js +3 -3
  166. package/dist/esm/ui/page-layout/banner.js +4 -3
  167. package/dist/esm/ui/page-layout/dangerously-hoist-css-var-to-document-root.js +31 -0
  168. package/dist/esm/ui/page-layout/hoist-css-var-to-local-grid.js +16 -0
  169. package/dist/esm/ui/page-layout/main/main.js +2 -2
  170. package/dist/esm/ui/page-layout/panel-splitter/get-pixel-width.js +7 -0
  171. package/dist/esm/ui/page-layout/panel-splitter/{get-width.js → get-width-from-drag-location.js} +0 -11
  172. package/dist/esm/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.js +4 -0
  173. package/dist/esm/ui/page-layout/panel-splitter/{context.js → on-double-click-context.js} +0 -8
  174. package/dist/esm/ui/page-layout/panel-splitter/panel-splitter-context.js +9 -0
  175. package/dist/esm/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.js +1 -0
  176. package/dist/esm/ui/page-layout/panel-splitter/panel-splitter.js +9 -10
  177. package/dist/esm/ui/page-layout/panel-splitter/provider.js +1 -1
  178. package/dist/esm/ui/page-layout/panel-splitter/side-nav-panel-splitter.js +2 -1
  179. package/dist/esm/ui/page-layout/panel.js +4 -4
  180. package/dist/esm/ui/page-layout/ribbon.js +2 -2
  181. package/dist/esm/ui/page-layout/root.js +2 -2
  182. package/dist/esm/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.js +2 -21
  183. package/dist/esm/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.js +9 -0
  184. package/dist/esm/ui/page-layout/side-nav/set-side-nav-visibility-state.js +3 -0
  185. package/dist/esm/ui/page-layout/side-nav/side-nav-element-provider.js +9 -0
  186. package/dist/esm/ui/page-layout/side-nav/side-nav-ref-context.js +4 -0
  187. package/dist/esm/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.js +3 -0
  188. package/dist/esm/ui/page-layout/side-nav/side-nav-toggle-button-element.js +7 -0
  189. package/dist/esm/ui/page-layout/side-nav/{visibility-context.js → side-nav-visibility-state.js} +1 -7
  190. package/dist/esm/ui/page-layout/side-nav/side-nav.js +9 -8
  191. package/dist/esm/ui/page-layout/side-nav/toggle-button-provider.js +2 -1
  192. package/dist/esm/ui/page-layout/side-nav/toggle-button.js +4 -4
  193. package/dist/esm/ui/page-layout/side-nav/use-expand-side-nav.js +1 -1
  194. package/dist/esm/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.js +10 -0
  195. package/dist/esm/ui/page-layout/side-nav/use-side-nav-ref.js +11 -0
  196. package/dist/esm/ui/page-layout/side-nav/use-side-nav-toggle-keyboard-shortcut.js +1 -1
  197. package/dist/esm/ui/page-layout/side-nav/use-side-nav-visibility.js +1 -1
  198. package/dist/esm/ui/page-layout/side-nav/use-toggle-side-nav.js +1 -1
  199. package/dist/esm/ui/page-layout/side-nav/visibility-provider.js +2 -2
  200. package/dist/esm/ui/page-layout/top-nav/top-nav-end.js +1 -1
  201. package/dist/esm/ui/page-layout/top-nav/top-nav-start.js +2 -2
  202. package/dist/esm/ui/page-layout/top-nav/top-nav.js +11 -8
  203. package/dist/esm/ui/page-layout/{id-utils.js → use-layout-id.js} +1 -12
  204. package/dist/esm/ui/page-layout/use-resizing-width-css-var-on-root-element.js +1 -1
  205. package/dist/esm/ui/page-layout/use-skip-link-id.js +12 -0
  206. package/dist/esm/ui/top-nav-items/app-switcher.js +1 -1
  207. package/dist/esm/ui/top-nav-items/chat-button.js +1 -1
  208. package/dist/esm/ui/top-nav-items/create-button.js +1 -1
  209. package/dist/esm/ui/top-nav-items/end-item.js +1 -1
  210. package/dist/esm/ui/top-nav-items/log-in.js +1 -1
  211. package/dist/esm/ui/top-nav-items/search.js +1 -1
  212. package/dist/esm/ui/top-nav-items/themed/button.js +11 -358
  213. package/dist/esm/ui/top-nav-items/themed/get-custom-theme-styles.js +9 -9
  214. package/dist/esm/ui/top-nav-items/themed/get-primitives-spread-props.js +32 -0
  215. package/dist/esm/ui/top-nav-items/themed/icon-button.js +12 -0
  216. package/dist/esm/ui/top-nav-items/themed/link-button.js +12 -0
  217. package/dist/esm/ui/top-nav-items/themed/link-icon-button.js +12 -0
  218. package/dist/esm/ui/top-nav-items/themed/palette-rgba.js +14 -0
  219. package/dist/esm/ui/top-nav-items/themed/palette.js +0 -20
  220. package/dist/esm/ui/top-nav-items/themed/search.js +1 -2
  221. package/dist/esm/ui/top-nav-items/themed/themed-anchor.compiled.css +68 -0
  222. package/dist/esm/ui/top-nav-items/themed/themed-anchor.js +69 -0
  223. package/dist/esm/ui/top-nav-items/themed/themed-button.compiled.css +2 -0
  224. package/dist/esm/ui/top-nav-items/themed/themed-button.js +31 -0
  225. package/dist/esm/ui/top-nav-items/themed/themed-icon-button.js +76 -0
  226. package/dist/esm/ui/top-nav-items/themed/themed-link-button.compiled.css +2 -0
  227. package/dist/esm/ui/top-nav-items/themed/themed-link-button.js +38 -0
  228. package/dist/esm/ui/top-nav-items/themed/themed-link-icon-button.js +77 -0
  229. package/dist/esm/ui/top-nav-items/themed/themed-pressable.compiled.css +68 -0
  230. package/dist/esm/ui/top-nav-items/themed/themed-pressable.js +55 -0
  231. package/dist/esm/ui/top-nav-items/themed/types.js +1 -0
  232. package/dist/esm/ui/top-nav-items/themed/use-custom-theme-new.js +46 -0
  233. package/dist/esm/ui/top-nav-items/themed/use-custom-theme.js +0 -39
  234. package/dist/types/context/skip-links/skip-links-context.d.ts +0 -27
  235. package/dist/types/context/skip-links/use-skip-link-internal.d.ts +10 -0
  236. package/dist/types/context/skip-links/use-skip-link.d.ts +18 -0
  237. package/dist/types/context/top-nav-start/top-nav-start-attach-ref.d.ts +1 -0
  238. package/dist/types/context/top-nav-start/top-nav-start-element.d.ts +1 -0
  239. package/dist/types/entry-points/experimental/top-nav-button.d.ts +4 -1
  240. package/dist/types/entry-points/layout/skip-links.d.ts +2 -2
  241. package/dist/types/ui/page-layout/dangerously-hoist-css-var-to-document-root.d.ts +8 -0
  242. package/dist/{types-ts4.5/ui/page-layout/hoist-utils.d.ts → types/ui/page-layout/hoist-css-var-to-local-grid.d.ts} +0 -11
  243. package/dist/types/ui/page-layout/panel-splitter/get-pixel-width.d.ts +4 -0
  244. package/dist/types/ui/page-layout/panel-splitter/get-width-from-drag-location.d.ts +8 -0
  245. package/dist/types/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.d.ts +9 -0
  246. package/dist/types/ui/page-layout/panel-splitter/on-double-click-context.d.ts +8 -0
  247. package/dist/{types-ts4.5/ui/page-layout/panel-splitter/context.d.ts → types/ui/page-layout/panel-splitter/panel-splitter-context.d.ts} +0 -8
  248. package/dist/types/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.d.ts +1 -0
  249. package/dist/types/ui/page-layout/panel-splitter/panel-splitter.d.ts +1 -10
  250. package/dist/types/ui/page-layout/panel-splitter/provider.d.ts +1 -1
  251. package/dist/types/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.d.ts +6 -11
  252. package/dist/types/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.d.ts +5 -0
  253. package/dist/types/ui/page-layout/side-nav/set-side-nav-visibility-state.d.ts +3 -0
  254. package/dist/types/ui/page-layout/side-nav/side-nav-element-provider.d.ts +4 -0
  255. package/dist/types/ui/page-layout/side-nav/side-nav-ref-context.d.ts +2 -0
  256. package/dist/types/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.d.ts +1 -0
  257. package/dist/types/ui/page-layout/side-nav/side-nav-toggle-button-element.d.ts +5 -0
  258. package/dist/{types-ts4.5/ui/page-layout/side-nav/visibility-context.d.ts → types/ui/page-layout/side-nav/side-nav-visibility-state.d.ts} +0 -5
  259. package/dist/types/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.d.ts +5 -0
  260. package/dist/{types-ts4.5/ui/page-layout/side-nav/element-context.d.ts → types/ui/page-layout/side-nav/use-side-nav-ref.d.ts} +1 -4
  261. package/dist/types/ui/page-layout/top-nav/top-nav.d.ts +3 -4
  262. package/dist/{types-ts4.5/ui/page-layout/id-utils.d.ts → types/ui/page-layout/use-layout-id.d.ts} +0 -5
  263. package/dist/types/ui/page-layout/use-skip-link-id.d.ts +5 -0
  264. package/dist/types/ui/top-nav-items/themed/button.d.ts +5 -126
  265. package/dist/types/ui/top-nav-items/themed/get-primitives-spread-props.d.ts +16 -0
  266. package/dist/types/ui/top-nav-items/themed/icon-button.d.ts +7 -0
  267. package/dist/types/ui/top-nav-items/themed/link-button.d.ts +3 -0
  268. package/dist/types/ui/top-nav-items/themed/link-icon-button.d.ts +7 -0
  269. package/dist/types/ui/top-nav-items/themed/palette-rgba.d.ts +14 -0
  270. package/dist/types/ui/top-nav-items/themed/palette.d.ts +0 -20
  271. package/dist/types/ui/top-nav-items/themed/themed-anchor.d.ts +32 -0
  272. package/dist/types/ui/top-nav-items/themed/themed-button.d.ts +10 -0
  273. package/dist/types/ui/top-nav-items/themed/themed-icon-button.d.ts +10 -0
  274. package/dist/types/ui/top-nav-items/themed/themed-link-button.d.ts +16 -0
  275. package/dist/types/ui/top-nav-items/themed/themed-link-icon-button.d.ts +13 -0
  276. package/dist/types/ui/top-nav-items/themed/themed-pressable.d.ts +18 -0
  277. package/dist/types/ui/top-nav-items/themed/types.d.ts +54 -0
  278. package/dist/types/ui/top-nav-items/themed/use-custom-theme-new.d.ts +20 -0
  279. package/dist/types/ui/top-nav-items/themed/use-custom-theme.d.ts +0 -11
  280. package/dist/types-ts4.5/context/skip-links/skip-links-context.d.ts +0 -27
  281. package/dist/types-ts4.5/context/skip-links/use-skip-link-internal.d.ts +10 -0
  282. package/dist/types-ts4.5/context/skip-links/use-skip-link.d.ts +18 -0
  283. package/dist/types-ts4.5/context/top-nav-start/top-nav-start-attach-ref.d.ts +1 -0
  284. package/dist/types-ts4.5/context/top-nav-start/top-nav-start-element.d.ts +1 -0
  285. package/dist/types-ts4.5/entry-points/experimental/top-nav-button.d.ts +4 -1
  286. package/dist/types-ts4.5/entry-points/layout/skip-links.d.ts +2 -2
  287. package/dist/types-ts4.5/ui/page-layout/dangerously-hoist-css-var-to-document-root.d.ts +8 -0
  288. package/dist/{types/ui/page-layout/hoist-utils.d.ts → types-ts4.5/ui/page-layout/hoist-css-var-to-local-grid.d.ts} +0 -11
  289. package/dist/types-ts4.5/ui/page-layout/panel-splitter/get-pixel-width.d.ts +4 -0
  290. package/dist/types-ts4.5/ui/page-layout/panel-splitter/get-width-from-drag-location.d.ts +8 -0
  291. package/dist/types-ts4.5/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.d.ts +9 -0
  292. package/dist/types-ts4.5/ui/page-layout/panel-splitter/on-double-click-context.d.ts +8 -0
  293. package/dist/{types/ui/page-layout/panel-splitter/context.d.ts → types-ts4.5/ui/page-layout/panel-splitter/panel-splitter-context.d.ts} +0 -8
  294. package/dist/types-ts4.5/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.d.ts +1 -0
  295. package/dist/types-ts4.5/ui/page-layout/panel-splitter/panel-splitter.d.ts +1 -10
  296. package/dist/types-ts4.5/ui/page-layout/panel-splitter/provider.d.ts +1 -1
  297. package/dist/types-ts4.5/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.d.ts +6 -11
  298. package/dist/types-ts4.5/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.d.ts +5 -0
  299. package/dist/types-ts4.5/ui/page-layout/side-nav/set-side-nav-visibility-state.d.ts +3 -0
  300. package/dist/types-ts4.5/ui/page-layout/side-nav/side-nav-element-provider.d.ts +4 -0
  301. package/dist/types-ts4.5/ui/page-layout/side-nav/side-nav-ref-context.d.ts +2 -0
  302. package/dist/types-ts4.5/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.d.ts +1 -0
  303. package/dist/types-ts4.5/ui/page-layout/side-nav/side-nav-toggle-button-element.d.ts +5 -0
  304. package/dist/{types/ui/page-layout/side-nav/visibility-context.d.ts → types-ts4.5/ui/page-layout/side-nav/side-nav-visibility-state.d.ts} +0 -5
  305. package/dist/types-ts4.5/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.d.ts +5 -0
  306. package/dist/{types/ui/page-layout/side-nav/element-context.d.ts → types-ts4.5/ui/page-layout/side-nav/use-side-nav-ref.d.ts} +1 -4
  307. package/dist/types-ts4.5/ui/page-layout/top-nav/top-nav.d.ts +3 -4
  308. package/dist/{types/ui/page-layout/id-utils.d.ts → types-ts4.5/ui/page-layout/use-layout-id.d.ts} +0 -5
  309. package/dist/types-ts4.5/ui/page-layout/use-skip-link-id.d.ts +5 -0
  310. package/dist/types-ts4.5/ui/top-nav-items/themed/button.d.ts +5 -126
  311. package/dist/types-ts4.5/ui/top-nav-items/themed/get-primitives-spread-props.d.ts +16 -0
  312. package/dist/types-ts4.5/ui/top-nav-items/themed/icon-button.d.ts +7 -0
  313. package/dist/types-ts4.5/ui/top-nav-items/themed/link-button.d.ts +3 -0
  314. package/dist/types-ts4.5/ui/top-nav-items/themed/link-icon-button.d.ts +7 -0
  315. package/dist/types-ts4.5/ui/top-nav-items/themed/palette-rgba.d.ts +14 -0
  316. package/dist/types-ts4.5/ui/top-nav-items/themed/palette.d.ts +0 -20
  317. package/dist/types-ts4.5/ui/top-nav-items/themed/themed-anchor.d.ts +32 -0
  318. package/dist/types-ts4.5/ui/top-nav-items/themed/themed-button.d.ts +10 -0
  319. package/dist/types-ts4.5/ui/top-nav-items/themed/themed-icon-button.d.ts +10 -0
  320. package/dist/types-ts4.5/ui/top-nav-items/themed/themed-link-button.d.ts +16 -0
  321. package/dist/types-ts4.5/ui/top-nav-items/themed/themed-link-icon-button.d.ts +13 -0
  322. package/dist/types-ts4.5/ui/top-nav-items/themed/themed-pressable.d.ts +18 -0
  323. package/dist/types-ts4.5/ui/top-nav-items/themed/types.d.ts +54 -0
  324. package/dist/types-ts4.5/ui/top-nav-items/themed/use-custom-theme-new.d.ts +20 -0
  325. package/dist/types-ts4.5/ui/top-nav-items/themed/use-custom-theme.d.ts +0 -11
  326. package/package.json +13 -13
  327. package/dist/cjs/context/top-nav-start/top-nav-start-context.js +0 -26
  328. package/dist/cjs/ui/page-layout/side-nav/toggle-button-context.js +0 -26
  329. package/dist/cjs/ui/page-layout/side-nav/visibility-context.js +0 -19
  330. package/dist/cjs/ui/top-nav-items/themed/migration.js +0 -53
  331. package/dist/es2019/context/top-nav-start/top-nav-start-context.js +0 -20
  332. package/dist/es2019/ui/page-layout/side-nav/element-context.js +0 -21
  333. package/dist/es2019/ui/page-layout/side-nav/toggle-button-context.js +0 -19
  334. package/dist/es2019/ui/top-nav-items/themed/migration.js +0 -45
  335. package/dist/esm/context/top-nav-start/top-nav-start-context.js +0 -20
  336. package/dist/esm/ui/page-layout/hoist-utils.js +0 -51
  337. package/dist/esm/ui/page-layout/side-nav/element-context.js +0 -20
  338. package/dist/esm/ui/page-layout/side-nav/toggle-button-context.js +0 -19
  339. package/dist/esm/ui/top-nav-items/themed/migration.js +0 -45
  340. package/dist/types/context/top-nav-start/top-nav-start-context.d.ts +0 -16
  341. package/dist/types/ui/page-layout/panel-splitter/get-width.d.ts +0 -16
  342. package/dist/types/ui/page-layout/side-nav/toggle-button-context.d.ts +0 -16
  343. package/dist/types/ui/top-nav-items/themed/migration.d.ts +0 -10
  344. package/dist/types-ts4.5/context/top-nav-start/top-nav-start-context.d.ts +0 -16
  345. package/dist/types-ts4.5/ui/page-layout/panel-splitter/get-width.d.ts +0 -16
  346. package/dist/types-ts4.5/ui/page-layout/side-nav/toggle-button-context.d.ts +0 -16
  347. package/dist/types-ts4.5/ui/top-nav-items/themed/migration.d.ts +0 -10
@@ -1,5 +1,6 @@
1
1
  import React, { useState } from 'react';
2
- import { TopNavStartAttachRef, TopNavStartElement } from './top-nav-start-context';
2
+ import { TopNavStartAttachRef } from './top-nav-start-attach-ref';
3
+ import { TopNavStartElement } from './top-nav-start-element';
3
4
 
4
5
  /**
5
6
  * Provider for the TopNavStart container element contexts.
@@ -0,0 +1,2 @@
1
+ import { createContext } from 'react';
2
+ export const TopNavStartElement = /*#__PURE__*/createContext(null);
@@ -1 +1,4 @@
1
- export { Button as TopNavButton, LinkButton as TopNavLinkButton, IconButton as TopNavIconButton, LinkIconButton as TopNavLinkIconButton } from '../../ui/top-nav-items/themed/migration';
1
+ export { Button as TopNavButton } from '../../ui/top-nav-items/themed/button';
2
+ export { LinkButton as TopNavLinkButton } from '../../ui/top-nav-items/themed/link-button';
3
+ export { IconButton as TopNavIconButton } from '../../ui/top-nav-items/themed/icon-button';
4
+ export { LinkIconButton as TopNavLinkIconButton } from '../../ui/top-nav-items/themed/link-icon-button';
@@ -1,2 +1,2 @@
1
- export { useSkipLinkId } from '../../ui/page-layout/id-utils';
2
- export { useSkipLink } from '../../context/skip-links/skip-links-context';
1
+ export { useSkipLinkId } from '../../ui/page-layout/use-skip-link-id';
2
+ export { useSkipLink } from '../../context/skip-links/use-skip-link';
@@ -5,12 +5,12 @@ import { ax, ix } from "@compiled/react/runtime";
5
5
  import { useContext, useEffect, useRef, useState } from 'react';
6
6
  import usePreviousValue from '@atlaskit/ds-lib/use-previous-value';
7
7
  import { media } from '@atlaskit/primitives/responsive';
8
- import { useSkipLinkInternal } from '../../context/skip-links/skip-links-context';
8
+ import { useSkipLinkInternal } from '../../context/skip-links/use-skip-link-internal';
9
9
  import { asidePanelSplitterId, asideVar, contentHeightWhenFixed, contentInsetBlockStart, UNSAFE_asideLayoutVar } from './constants';
10
+ import { DangerouslyHoistCssVarToDocumentRoot } from './dangerously-hoist-css-var-to-document-root';
10
11
  import { DangerouslyHoistSlotSizes } from './hoist-slot-sizes-context';
11
- import { DangerouslyHoistCssVarToDocumentRoot } from './hoist-utils';
12
- import { useLayoutId } from './id-utils';
13
12
  import { PanelSplitterProvider } from './panel-splitter/provider';
13
+ import { useLayoutId } from './use-layout-id';
14
14
  import { useResizingWidthCssVarOnRootElement } from './use-resizing-width-css-var-on-root-element';
15
15
  import { useSafeDefaultWidth } from './use-safe-default-width';
16
16
  const panelSplitterResizingVar = '--n_asdRsz';
@@ -3,12 +3,13 @@ import "./banner.compiled.css";
3
3
  import * as React from 'react';
4
4
  import { ax, ix } from "@compiled/react/runtime";
5
5
  import { useContext } from 'react';
6
- import { useSkipLinkInternal } from '../../context/skip-links/skip-links-context';
6
+ import { useSkipLinkInternal } from '../../context/skip-links/use-skip-link-internal';
7
7
  import { useIsFhsEnabled } from '../fhs-rollout/use-is-fhs-enabled';
8
8
  import { bannerMountedVar, localSlotLayers, UNSAFE_bannerVar } from './constants';
9
+ import { DangerouslyHoistCssVarToDocumentRoot } from './dangerously-hoist-css-var-to-document-root';
10
+ import { HoistCssVarToLocalGrid } from './hoist-css-var-to-local-grid';
9
11
  import { DangerouslyHoistSlotSizes } from './hoist-slot-sizes-context';
10
- import { DangerouslyHoistCssVarToDocumentRoot, HoistCssVarToLocalGrid } from './hoist-utils';
11
- import { useLayoutId } from './id-utils';
12
+ import { useLayoutId } from './use-layout-id';
12
13
  const styles = {
13
14
  root: "_nd5ldkfm _1reo15vq _18m915vq _4t3iutvi _152tidpf _kqsw1if8 _1pbyegat",
14
15
  fullHeightSidebar: "_1pby11wp"
@@ -1,24 +1,5 @@
1
1
  import React from 'react';
2
- import { gridRootId } from './root';
3
-
4
- /**
5
- * This is not ideal and shouldn't be used by anything outside of `<Banner>` and `<TopNav>`.
6
- *
7
- * This makes the other page layout elements aware that the banner and top bar have been mounted, provides them
8
- * with their heights. This is needed to power the stick points of page layout elements like SideNav and Panel.
9
- *
10
- * We should clean this up once we have a better solution, such as moving the size props for banner and top bar into `Root`.
11
- */
12
- export const HoistCssVarToLocalGrid = ({
13
- variableName,
14
- value
15
- }) => /*#__PURE__*/React.createElement("style", null, `#${gridRootId} { ${variableName}: ${value}px }`);
16
2
  const getCssStringValue = value => typeof value === 'number' ? `${value}px` : value;
17
-
18
- /**
19
- * Hoists CSS variables to the document root. This is support the legacy edge case of monolith pages being injected as a
20
- * sibling to the page layout, as opposed to within the `Main` slot.
21
- */
22
3
  export const DangerouslyHoistCssVarToDocumentRoot = ({
23
4
  variableName,
24
5
  value,
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import { gridRootId } from './root';
3
+
4
+ /**
5
+ * This is not ideal and shouldn't be used by anything outside of `<Banner>` and `<TopNav>`.
6
+ *
7
+ * This makes the other page layout elements aware that the banner and top bar have been mounted, provides them
8
+ * with their heights. This is needed to power the stick points of page layout elements like SideNav and Panel.
9
+ *
10
+ * We should clean this up once we have a better solution, such as moving the size props for banner and top bar into `Root`.
11
+ */
12
+ export const HoistCssVarToLocalGrid = ({
13
+ variableName,
14
+ value
15
+ }) => /*#__PURE__*/React.createElement("style", null, `#${gridRootId} { ${variableName}: ${value}px }`);
@@ -3,9 +3,9 @@ import "./main.compiled.css";
3
3
  import * as React from 'react';
4
4
  import { ax, ix } from "@compiled/react/runtime";
5
5
  import { Fragment } from 'react';
6
- import { useSkipLink } from '../../../context/skip-links/skip-links-context';
6
+ import { useSkipLink } from '../../../context/skip-links/use-skip-link';
7
7
  import { contentHeightWhenFixed, contentInsetBlockStart } from '../constants';
8
- import { useLayoutId } from '../id-utils';
8
+ import { useLayoutId } from '../use-layout-id';
9
9
  const mainElementStyles = {
10
10
  root: "_nd5l1gzg _1reo1wug _18m91wug _19121cl4 _152timx3 _qwfh1wug _165teqxy _13wn1if8"
11
11
  };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Returns the computed width of an element in pixels.
3
+ */
4
+ export const getPixelWidth = element => {
5
+ // Always returns an integer. Returns 0 if element is hidden / removed.
6
+ return element.offsetWidth;
7
+ };
@@ -1,7 +1,3 @@
1
- /**
2
- * ⚠️ Note: We are using the initial client location captured from the mousedown event, not from the dragstart event.
3
- * Some browser extensions can cause the client locations (e.g. clientX) in the `dragstart` event to incorrectly return 0.
4
- */
5
1
  export const getWidthFromDragLocation = ({
6
2
  initialWidth,
7
3
  location,
@@ -20,11 +16,4 @@ export const getWidthFromDragLocation = ({
20
16
  // Resize line is positioned at the inline-start (left) of the element.
21
17
  // If the direction is left-to-right, the width will decrease when the mouse is moved to the right, and vice versa.
22
18
  return direction === 'ltr' ? initialWidth - diffX : initialWidth + diffX;
23
- };
24
- /**
25
- * Returns the computed width of an element in pixels.
26
- */
27
- export const getPixelWidth = element => {
28
- // Always returns an integer. Returns 0 if element is hidden / removed.
29
- return element.offsetWidth;
30
19
  };
@@ -0,0 +1,4 @@
1
+ import { panelSplitterDragDataSymbol } from './panel-splitter-drag-symbol';
2
+ export function isPanelSplitterDragData(data) {
3
+ return data[panelSplitterDragDataSymbol] === true;
4
+ }
@@ -1,13 +1,5 @@
1
1
  import { createContext } from 'react';
2
2
 
3
- // Disabling the rule to allow for `Type` suffix, to differentiate from the Context object.
4
- // eslint-disable-next-line @repo/internal/react/consistent-types-definitions
5
-
6
- /**
7
- * Context for the panel splitter. Only internally exported.
8
- */
9
- export const PanelSplitterContext = /*#__PURE__*/createContext(null);
10
-
11
3
  /**
12
4
  * Context for the panel splitter's double click handler. Only internally exported.
13
5
  *
@@ -0,0 +1,9 @@
1
+ import { createContext } from 'react';
2
+
3
+ // Disabling the rule to allow for `Type` suffix, to differentiate from the Context object.
4
+ // eslint-disable-next-line @repo/internal/react/consistent-types-definitions
5
+
6
+ /**
7
+ * Context for the panel splitter. Only internally exported.
8
+ */
9
+ export const PanelSplitterContext = /*#__PURE__*/createContext(null);
@@ -0,0 +1 @@
1
+ export const panelSplitterDragDataSymbol = Symbol('panel-splitter-drag-data');
@@ -21,11 +21,21 @@ import TooltipContainer from '@atlaskit/tooltip/TooltipContainer';
21
21
  import VisuallyHidden from '@atlaskit/visually-hidden';
22
22
  import { useIsFhsEnabled } from '../../fhs-rollout/use-is-fhs-enabled';
23
23
  import { contentInsetBlockStart } from '../constants';
24
- import { OnDoubleClickContext, PanelSplitterContext } from './context';
25
24
  import { convertResizeBoundToPixels } from './convert-resize-bound-to-pixels';
26
25
  import { getPercentageWithinPixelBounds } from './get-percentage-within-pixel-bounds';
27
- import { getPixelWidth, getWidthFromDragLocation } from './get-width';
26
+ import { getPixelWidth } from './get-pixel-width';
27
+ import { getWidthFromDragLocation } from './get-width-from-drag-location';
28
+ import { isPanelSplitterDragData } from './is-panel-splitter-drag-data';
28
29
  import { createKeyboardResizeManager } from './keyboard-resize-manager';
30
+ import { OnDoubleClickContext } from './on-double-click-context';
31
+ import { PanelSplitterContext } from './panel-splitter-context';
32
+ import { panelSplitterDragDataSymbol } from './panel-splitter-drag-symbol';
33
+ function signPanelSplitterDragData(data) {
34
+ return {
35
+ ...data,
36
+ [panelSplitterDragDataSymbol]: true
37
+ };
38
+ }
29
39
  const containerStyles = {
30
40
  root: "_12ji1r31 _1qu2glyw _12y31o36 _1e0cglyw _kqswstnw _u7coidpf _152tidpf _1pbykb7n _181n1ule",
31
41
  positionEnd: "_rjxpftgi",
@@ -43,13 +53,6 @@ const lineStyles = {
43
53
  const tooltipStyles = {
44
54
  root: "_ahbq196n _1bsb1ris"
45
55
  };
46
- const panelSplitterDragDataSymbol = Symbol('panel-splitter-drag-data');
47
- function signPanelSplitterDragData(data) {
48
- return {
49
- ...data,
50
- [panelSplitterDragDataSymbol]: true
51
- };
52
- }
53
56
  const PanelSplitterTooltip = /*#__PURE__*/forwardRef(({
54
57
  children,
55
58
  className,
@@ -119,9 +122,6 @@ const MaybeTooltip = ({
119
122
  }
120
123
  return children;
121
124
  };
122
- export function isPanelSplitterDragData(data) {
123
- return data[panelSplitterDragDataSymbol] === true;
124
- }
125
125
  function getTextDirection(element) {
126
126
  const {
127
127
  direction
@@ -402,7 +402,6 @@ const PortaledPanelSplitter = ({
402
402
  className: ax([lineStyles.root])
403
403
  })))), portal);
404
404
  };
405
-
406
405
  /**
407
406
  * _PanelSplitter_
408
407
  *
@@ -1,5 +1,5 @@
1
1
  import React, { Fragment, useMemo, useRef } from 'react';
2
- import { PanelSplitterContext } from './context';
2
+ import { PanelSplitterContext } from './panel-splitter-context';
3
3
  /**
4
4
  * Provides the context required for the panel splitter to work within a page layout slot.
5
5
  *
@@ -4,8 +4,9 @@ import { useOpenLayerObserver } from '@atlaskit/layering/experimental/open-layer
4
4
  import { useIsFhsEnabled } from '../../fhs-rollout/use-is-fhs-enabled';
5
5
  import { openLayerObserverSideNavNamespace, openLayerObserverTopNavEndNamespace, openLayerObserverTopNavMiddleNamespace, openLayerObserverTopNavStartNamespace, sideNavPanelSplitterId } from '../constants';
6
6
  import { useToggleSideNav } from '../side-nav/use-toggle-side-nav';
7
- import { OnDoubleClickContext, PanelSplitterContext } from './context';
7
+ import { OnDoubleClickContext } from './on-double-click-context';
8
8
  import { PanelSplitter } from './panel-splitter';
9
+ import { PanelSplitterContext } from './panel-splitter-context';
9
10
 
10
11
  /**
11
12
  * Namespaces to check for open layers that would interfere with the panel splitter.
@@ -4,13 +4,13 @@ import * as React from 'react';
4
4
  import { ax, ix } from "@compiled/react/runtime";
5
5
  import { useCallback, useContext, useEffect, useRef, useState } from 'react';
6
6
  import { media } from '@atlaskit/primitives/responsive';
7
- import { useSkipLinkInternal } from '../../context/skip-links/skip-links-context';
7
+ import { useSkipLinkInternal } from '../../context/skip-links/use-skip-link-internal';
8
8
  import { contentHeightWhenFixed, contentInsetBlockStart, localSlotLayers, panelPanelSplitterId, panelVar, sideNavLiveWidthVar, UNSAFE_panelLayoutVar } from './constants';
9
+ import { DangerouslyHoistCssVarToDocumentRoot } from './dangerously-hoist-css-var-to-document-root';
9
10
  import { DangerouslyHoistSlotSizes } from './hoist-slot-sizes-context';
10
- import { DangerouslyHoistCssVarToDocumentRoot } from './hoist-utils';
11
- import { useLayoutId } from './id-utils';
12
11
  import { PanelSplitterProvider } from './panel-splitter/provider';
13
- import { useSideNavRef } from './side-nav/element-context';
12
+ import { useSideNavRef } from './side-nav/use-side-nav-ref';
13
+ import { useLayoutId } from './use-layout-id';
14
14
  import { useResizingWidthCssVarOnRootElement } from './use-resizing-width-css-var-on-root-element';
15
15
  import { useSafeDefaultWidth } from './use-safe-default-width';
16
16
  const panelSplitterResizingVar = '--n_pnlRsz';
@@ -5,9 +5,9 @@ import { ax, ix } from "@compiled/react/runtime";
5
5
  import { useContext } from 'react';
6
6
  import { media } from '@atlaskit/primitives/responsive';
7
7
  import { localSlotLayers, UNSAFE_ribbonVar } from './constants';
8
+ import { DangerouslyHoistCssVarToDocumentRoot } from './dangerously-hoist-css-var-to-document-root';
8
9
  import { DangerouslyHoistSlotSizes } from './hoist-slot-sizes-context';
9
- import { DangerouslyHoistCssVarToDocumentRoot } from './hoist-utils';
10
- import { useLayoutId } from './id-utils';
10
+ import { useLayoutId } from './use-layout-id';
11
11
  const styles = {
12
12
  root: "_nd5l1c99 _1reo15vq _18m915vq _4t3i1osq _152tidpf _kqsw1if8 _vchhusvi _1pbyegat _1e0cglyw _dm2518uv"
13
13
  };
@@ -6,8 +6,8 @@ import { OpenLayerObserver } from '@atlaskit/layering/experimental/open-layer-ob
6
6
  import { SkipLinksProvider } from '../../context/skip-links/skip-links-provider';
7
7
  import { TopNavStartProvider } from '../../context/top-nav-start/top-nav-start-context-provider';
8
8
  import { DangerouslyHoistSlotSizes } from './hoist-slot-sizes-context';
9
- import { SideNavElementProvider } from './side-nav/element-context';
10
- import { IsSideNavShortcutEnabledProvider } from './side-nav/is-side-nav-shortcut-enabled-context';
9
+ import { IsSideNavShortcutEnabledProvider } from './side-nav/is-side-nav-shortcut-enabled-provider';
10
+ import { SideNavElementProvider } from './side-nav/side-nav-element-provider';
11
11
  import { SideNavToggleButtonProvider } from './side-nav/toggle-button-provider';
12
12
  import { SideNavVisibilityProvider } from './side-nav/visibility-provider';
13
13
 
@@ -1,4 +1,4 @@
1
- import React, { createContext, useContext } from 'react';
1
+ import { createContext } from 'react';
2
2
 
3
3
  /**
4
4
  * Context for whether the side nav toggle shortcut is enabled.
@@ -6,24 +6,4 @@ import React, { createContext, useContext } from 'react';
6
6
  * Used to share the `isSideNavShortcutEnabled` prop value from `Root` with other components,
7
7
  * so the visual keyboard shortcut in tooltips can be conditionally displayed.
8
8
  */
9
- const IsSideNavShortcutEnabledContext = /*#__PURE__*/createContext(false);
10
-
11
- /**
12
- * Provider for the `IsSideNavShortcutEnabledContext`.
13
- */
14
- export function IsSideNavShortcutEnabledProvider({
15
- children,
16
- isSideNavShortcutEnabled
17
- }) {
18
- return /*#__PURE__*/React.createElement(IsSideNavShortcutEnabledContext.Provider, {
19
- value: isSideNavShortcutEnabled
20
- }, children);
21
- }
22
-
23
- /**
24
- * Returns the value of the `isSideNavShortcutEnabled` prop from the `Root` component, which
25
- * is shared through context.
26
- */
27
- export function useIsSideNavShortcutEnabled() {
28
- return useContext(IsSideNavShortcutEnabledContext);
29
- }
9
+ export const IsSideNavShortcutEnabledContext = /*#__PURE__*/createContext(false);
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { IsSideNavShortcutEnabledContext } from './is-side-nav-shortcut-enabled-context';
3
+ export function IsSideNavShortcutEnabledProvider({
4
+ children,
5
+ isSideNavShortcutEnabled
6
+ }) {
7
+ return /*#__PURE__*/React.createElement(IsSideNavShortcutEnabledContext.Provider, {
8
+ value: isSideNavShortcutEnabled
9
+ }, children);
10
+ }
@@ -0,0 +1,3 @@
1
+ import { createContext } from 'react';
2
+ import __noop from '@atlaskit/ds-lib/noop';
3
+ export const SetSideNavVisibilityState = /*#__PURE__*/createContext(__noop);
@@ -0,0 +1,10 @@
1
+ import React, { useRef } from 'react';
2
+ import { SideNavRefContext } from './side-nav-ref-context';
3
+ export function SideNavElementProvider({
4
+ children
5
+ }) {
6
+ const sideNavRef = useRef(null);
7
+ return /*#__PURE__*/React.createElement(SideNavRefContext.Provider, {
8
+ value: sideNavRef
9
+ }, children);
10
+ }
@@ -0,0 +1,4 @@
1
+ import { createContext } from 'react';
2
+ export const SideNavRefContext = /*#__PURE__*/createContext({
3
+ current: null
4
+ });
@@ -0,0 +1,3 @@
1
+ import { createContext } from 'react';
2
+ import __noop from '@atlaskit/ds-lib/noop';
3
+ export const SideNavToggleButtonAttachRef = /*#__PURE__*/createContext(__noop);
@@ -0,0 +1,7 @@
1
+ import { createContext } from 'react';
2
+
3
+ /**
4
+ * Context for the side nav toggle button element.
5
+ * Used to power the side nav flyout by allowing the side nav to bind event listeners to the button element.
6
+ */
7
+ export const SideNavToggleButtonElement = /*#__PURE__*/createContext(null);
@@ -1,12 +1,6 @@
1
1
  import { createContext } from 'react';
2
- import __noop from '@atlaskit/ds-lib/noop';
3
2
  /**
4
3
  * Context for the visibility of the side nav.
5
4
  * State is initialised as null. This is used when the value has not been set yet - which is important to know for SSR.
6
5
  */
7
- export const SideNavVisibilityState = /*#__PURE__*/createContext(null);
8
-
9
- /**
10
- * Sets the visibility of the side nav.
11
- */
12
- export const SetSideNavVisibilityState = /*#__PURE__*/createContext(__noop);
6
+ export const SideNavVisibilityState = /*#__PURE__*/createContext(null);
@@ -12,27 +12,28 @@ import { OpenLayerObserverNamespaceProvider, useOpenLayerObserver } from '@atlas
12
12
  import { fg } from '@atlaskit/platform-feature-flags';
13
13
  import { monitorForElements } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
14
14
  import { media } from '@atlaskit/primitives/responsive';
15
- import { useSkipLinkInternal } from '../../../context/skip-links/skip-links-context';
16
- import { TopNavStartElement } from '../../../context/top-nav-start/top-nav-start-context';
15
+ import { useSkipLinkInternal } from '../../../context/skip-links/use-skip-link-internal';
16
+ import { TopNavStartElement } from '../../../context/top-nav-start/top-nav-start-element';
17
17
  import { useIsFhsEnabled } from '../../fhs-rollout/use-is-fhs-enabled';
18
18
  import { bannerMountedVar, contentHeightWhenFixed, contentInsetBlockStart, localSlotLayers, openLayerObserverSideNavNamespace, openLayerObserverTopNavStartNamespace, sideNavLiveWidthVar, sideNavPanelSplitterId, sideNavVar, UNSAFE_sideNavLayoutVar } from '../constants';
19
+ import { DangerouslyHoistCssVarToDocumentRoot } from '../dangerously-hoist-css-var-to-document-root';
19
20
  import { DangerouslyHoistSlotSizes } from '../hoist-slot-sizes-context';
20
- import { DangerouslyHoistCssVarToDocumentRoot } from '../hoist-utils';
21
- import { useLayoutId } from '../id-utils';
22
21
  import { PanelSplitterProvider } from '../panel-splitter/provider';
22
+ import { useLayoutId } from '../use-layout-id';
23
23
  import { useResizingWidthCssVarOnRootElement } from '../use-resizing-width-css-var-on-root-element';
24
24
  import { useSafeDefaultWidth } from '../use-safe-default-width';
25
- import { useSideNavRef } from './element-context';
26
25
  import { sideNavFlyoutCloseDelayMs } from './flyout-close-delay-ms';
27
- import { useIsSideNavShortcutEnabled } from './is-side-nav-shortcut-enabled-context';
26
+ import { SetSideNavVisibilityState } from './set-side-nav-visibility-state';
27
+ import { SideNavToggleButtonElement } from './side-nav-toggle-button-element';
28
28
  import { sideNavToggleTooltipKeyboardShortcut } from './side-nav-toggle-tooltip-keyboard-shortcut';
29
- import { SideNavToggleButtonElement } from './toggle-button-context';
29
+ import { SideNavVisibilityState } from './side-nav-visibility-state';
30
30
  import { useExpandSideNav } from './use-expand-side-nav';
31
+ import { useIsSideNavShortcutEnabled } from './use-is-side-nav-shortcut-enabled';
32
+ import { useSideNavRef } from './use-side-nav-ref';
31
33
  import { useSideNavToggleKeyboardShortcut } from './use-side-nav-toggle-keyboard-shortcut';
32
34
  import { useSideNavVisibility } from './use-side-nav-visibility';
33
35
  import { useSideNavVisibilityCallbacks } from './use-side-nav-visibility-callbacks';
34
36
  import { useToggleSideNav } from './use-toggle-side-nav';
35
- import { SetSideNavVisibilityState, SideNavVisibilityState } from './visibility-context';
36
37
  const panelSplitterResizingVar = '--n_snvRsz';
37
38
  // Used to share the side nav width with the panel splitter, which is rendered outside the side nav element
38
39
  // but positioned to stay at its right edge.
@@ -1,5 +1,6 @@
1
1
  import React, { useState } from 'react';
2
- import { SideNavToggleButtonAttachRef, SideNavToggleButtonElement } from './toggle-button-context';
2
+ import { SideNavToggleButtonAttachRef } from './side-nav-toggle-button-attach-ref';
3
+ import { SideNavToggleButtonElement } from './side-nav-toggle-button-element';
3
4
 
4
5
  /**
5
6
  * Provider for the side nav toggle button contexts.
@@ -8,13 +8,13 @@ import SidebarCollapseIcon from '@atlaskit/icon/core/sidebar-collapse';
8
8
  import SidebarExpandIcon from '@atlaskit/icon/core/sidebar-expand';
9
9
  import { useOpenLayerObserver } from '@atlaskit/layering/experimental/open-layer-observer';
10
10
  import { useIsFhsEnabled } from '../../fhs-rollout/use-is-fhs-enabled';
11
- import { IconButton } from '../../top-nav-items/themed/migration';
12
- import { useIsSideNavShortcutEnabled } from './is-side-nav-shortcut-enabled-context';
11
+ import { IconButton } from '../../top-nav-items/themed/icon-button';
12
+ import { SideNavToggleButtonAttachRef } from './side-nav-toggle-button-attach-ref';
13
13
  import { sideNavToggleTooltipKeyboardShortcut } from './side-nav-toggle-tooltip-keyboard-shortcut';
14
- import { SideNavToggleButtonAttachRef } from './toggle-button-context';
14
+ import { SideNavVisibilityState } from './side-nav-visibility-state';
15
+ import { useIsSideNavShortcutEnabled } from './use-is-side-nav-shortcut-enabled';
15
16
  import { useSideNavVisibility } from './use-side-nav-visibility';
16
17
  import { useToggleSideNav } from './use-toggle-side-nav';
17
- import { SideNavVisibilityState } from './visibility-context';
18
18
  const toggleButtonTooltipOptions = {
19
19
  // We're disabling pointer events on the tooltip to prevent it from blocking mouse events, so that the side nav flyout stays open
20
20
  // when moving the mouse from the top bar to the side nav.
@@ -1,5 +1,5 @@
1
1
  import { useCallback, useContext } from 'react';
2
- import { SetSideNavVisibilityState } from './visibility-context';
2
+ import { SetSideNavVisibilityState } from './set-side-nav-visibility-state';
3
3
  /**
4
4
  * __useExpandSideNav__
5
5
  *
@@ -0,0 +1,10 @@
1
+ import { useContext } from 'react';
2
+ import { IsSideNavShortcutEnabledContext } from './is-side-nav-shortcut-enabled-context';
3
+
4
+ /**
5
+ * Returns the value of the `isSideNavShortcutEnabled` prop from the `Root` component, which
6
+ * is shared through context.
7
+ */
8
+ export function useIsSideNavShortcutEnabled() {
9
+ return useContext(IsSideNavShortcutEnabledContext);
10
+ }
@@ -0,0 +1,11 @@
1
+ import { useContext } from 'react';
2
+ import { SideNavRefContext } from './side-nav-ref-context';
3
+
4
+ /**
5
+ * Returns a ref for the side navigation that is accessible to other Page Layout slots.
6
+ *
7
+ * Used by the Panel to measure the SideNav when it is calculating its resize bounds.
8
+ */
9
+ export function useSideNavRef() {
10
+ return useContext(SideNavRefContext);
11
+ }
@@ -3,7 +3,7 @@ import { bind } from 'bind-event-listener';
3
3
  import useStableRef from '@atlaskit/ds-lib/use-stable-ref';
4
4
  import { useOpenLayerObserver } from '@atlaskit/layering/experimental/open-layer-observer';
5
5
  import { useIsFhsEnabled } from '../../fhs-rollout/use-is-fhs-enabled';
6
- import { useIsSideNavShortcutEnabled } from './is-side-nav-shortcut-enabled-context';
6
+ import { useIsSideNavShortcutEnabled } from './use-is-side-nav-shortcut-enabled';
7
7
  import { useToggleSideNav } from './use-toggle-side-nav';
8
8
 
9
9
  /**
@@ -1,5 +1,5 @@
1
1
  import { useContext } from 'react';
2
- import { SideNavVisibilityState } from './visibility-context';
2
+ import { SideNavVisibilityState } from './side-nav-visibility-state';
3
3
  /**
4
4
  * This hook is intended to be used internally within the `@atlaskit/navigation-system` package.
5
5
  *
@@ -1,5 +1,5 @@
1
1
  import { useCallback, useContext } from 'react';
2
- import { SetSideNavVisibilityState } from './visibility-context';
2
+ import { SetSideNavVisibilityState } from './set-side-nav-visibility-state';
3
3
  /**
4
4
  * __useToggleSideNav__
5
5
  *
@@ -1,6 +1,6 @@
1
1
  import React, { useState } from 'react';
2
- import { SetSideNavVisibilityState, SideNavVisibilityState } from './visibility-context';
3
-
2
+ import { SetSideNavVisibilityState } from './set-side-nav-visibility-state';
3
+ import { SideNavVisibilityState } from './side-nav-visibility-state';
4
4
  /**
5
5
  * Manages the side nav visibility state and provides the context.
6
6
  */
@@ -12,7 +12,7 @@ import { UNSAFE_useMediaQuery as useMediaQuery } from '@atlaskit/primitives/comp
12
12
  import { List } from '../../../components/list';
13
13
  import { useIsFhsEnabled } from '../../fhs-rollout/use-is-fhs-enabled';
14
14
  import { HasCustomThemeContext } from '../../top-nav-items/themed/has-custom-theme-context';
15
- import { IconButton } from '../../top-nav-items/themed/migration';
15
+ import { IconButton } from '../../top-nav-items/themed/icon-button';
16
16
  import { openLayerObserverTopNavEndNamespace } from '../constants';
17
17
  const containerStyles = {
18
18
  root: "_yyhy11wp _1e0c1txw _1bahh9n0 _1ul9zwfg _1d2y1ris _glte1ris _15rip2n4 _1gs5usvi _ndwch9n0",
@@ -6,13 +6,13 @@ import useStableRef from '@atlaskit/ds-lib/use-stable-ref';
6
6
  import { OpenLayerObserverNamespaceProvider } from '@atlaskit/layering/experimental/open-layer-observer';
7
7
  import { fg } from '@atlaskit/platform-feature-flags';
8
8
  import { UNSAFE_useMediaQuery } from '@atlaskit/primitives/compiled';
9
- import { TopNavStartAttachRef } from '../../../context/top-nav-start/top-nav-start-context';
9
+ import { TopNavStartAttachRef } from '../../../context/top-nav-start/top-nav-start-attach-ref';
10
10
  import { useIsFhsEnabled } from '../../fhs-rollout/use-is-fhs-enabled';
11
11
  import { useHasCustomTheme } from '../../top-nav-items/themed/has-custom-theme-context';
12
12
  import { HasDefaultBackgroundColorContext } from '../../top-nav-items/themed/has-default-background-color-context';
13
13
  import { openLayerObserverTopNavStartNamespace } from '../constants';
14
+ import { SideNavVisibilityState } from '../side-nav/side-nav-visibility-state';
14
15
  import { useSideNavVisibility } from '../side-nav/use-side-nav-visibility';
15
- import { SideNavVisibilityState } from '../side-nav/visibility-context';
16
16
 
17
17
  /**
18
18
  * Firefox does support these reorder animations, but only partially enabling layout animations would look odd.