@atlaskit/navigation-system 7.2.1 → 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 (350) hide show
  1. package/CHANGELOG.md +24 -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 -8
  27. package/dist/cjs/ui/page-layout/root.compiled.css +2 -2
  28. package/dist/cjs/ui/page-layout/root.js +5 -7
  29. package/dist/cjs/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.js +3 -25
  30. package/dist/cjs/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.js +16 -0
  31. package/dist/cjs/ui/page-layout/side-nav/set-side-nav-visibility-state.js +10 -0
  32. package/dist/cjs/ui/page-layout/side-nav/{element-context.js → side-nav-element-provider.js} +2 -14
  33. package/dist/cjs/ui/page-layout/side-nav/side-nav-ref-context.js +10 -0
  34. package/dist/cjs/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.js +10 -0
  35. package/dist/cjs/ui/page-layout/side-nav/side-nav-toggle-button-element.js +12 -0
  36. package/dist/cjs/ui/page-layout/side-nav/side-nav-visibility-state.js +12 -0
  37. package/dist/cjs/ui/page-layout/side-nav/side-nav.js +19 -18
  38. package/dist/cjs/ui/page-layout/side-nav/toggle-button-provider.js +4 -3
  39. package/dist/cjs/ui/page-layout/side-nav/toggle-button.js +8 -8
  40. package/dist/cjs/ui/page-layout/side-nav/use-expand-side-nav.js +2 -2
  41. package/dist/cjs/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.js +15 -0
  42. package/dist/cjs/ui/page-layout/side-nav/use-side-nav-ref.js +16 -0
  43. package/dist/cjs/ui/page-layout/side-nav/use-side-nav-toggle-keyboard-shortcut.js +2 -2
  44. package/dist/cjs/ui/page-layout/side-nav/use-side-nav-visibility.js +2 -2
  45. package/dist/cjs/ui/page-layout/side-nav/use-toggle-side-nav.js +2 -2
  46. package/dist/cjs/ui/page-layout/side-nav/visibility-provider.js +4 -3
  47. package/dist/cjs/ui/page-layout/top-nav/top-nav-end.js +2 -2
  48. package/dist/cjs/ui/page-layout/top-nav/top-nav-start.js +5 -5
  49. package/dist/cjs/ui/page-layout/top-nav/top-nav.js +17 -15
  50. package/dist/cjs/ui/page-layout/{id-utils.js → use-layout-id.js} +2 -14
  51. package/dist/cjs/ui/page-layout/use-resizing-width-css-var-on-root-element.js +2 -2
  52. package/dist/cjs/ui/page-layout/use-skip-link-id.js +17 -0
  53. package/dist/cjs/ui/top-nav-items/app-switcher.js +2 -2
  54. package/dist/cjs/ui/top-nav-items/chat-button.js +2 -2
  55. package/dist/cjs/ui/top-nav-items/create-button.js +2 -2
  56. package/dist/cjs/ui/top-nav-items/end-item.js +2 -2
  57. package/dist/cjs/ui/top-nav-items/log-in.js +2 -2
  58. package/dist/cjs/ui/top-nav-items/search.js +2 -2
  59. package/dist/cjs/ui/top-nav-items/themed/button.js +12 -358
  60. package/dist/cjs/ui/top-nav-items/themed/get-custom-theme-styles.js +10 -10
  61. package/dist/cjs/ui/top-nav-items/themed/get-primitives-spread-props.js +39 -0
  62. package/dist/cjs/ui/top-nav-items/themed/icon-button.js +21 -0
  63. package/dist/cjs/ui/top-nav-items/themed/link-button.js +21 -0
  64. package/dist/cjs/ui/top-nav-items/themed/link-icon-button.js +21 -0
  65. package/dist/cjs/ui/top-nav-items/themed/palette-rgba.js +20 -0
  66. package/dist/cjs/ui/top-nav-items/themed/palette.js +1 -21
  67. package/dist/cjs/ui/top-nav-items/themed/search.js +1 -2
  68. package/dist/cjs/ui/top-nav-items/themed/{button.compiled.css → themed-anchor.compiled.css} +0 -1
  69. package/dist/cjs/ui/top-nav-items/themed/themed-anchor.js +76 -0
  70. package/dist/cjs/ui/top-nav-items/themed/themed-button.compiled.css +2 -0
  71. package/dist/cjs/ui/top-nav-items/themed/themed-button.js +40 -0
  72. package/dist/cjs/ui/top-nav-items/themed/themed-icon-button.js +85 -0
  73. package/dist/cjs/ui/top-nav-items/themed/themed-link-button.compiled.css +2 -0
  74. package/dist/cjs/ui/top-nav-items/themed/themed-link-button.js +45 -0
  75. package/dist/cjs/ui/top-nav-items/themed/themed-link-icon-button.js +83 -0
  76. package/dist/{esm/ui/top-nav-items/themed/button.compiled.css → cjs/ui/top-nav-items/themed/themed-pressable.compiled.css} +0 -1
  77. package/dist/cjs/ui/top-nav-items/themed/themed-pressable.js +64 -0
  78. package/dist/cjs/ui/top-nav-items/themed/types.js +5 -0
  79. package/dist/cjs/ui/top-nav-items/themed/use-custom-theme-new.js +53 -0
  80. package/dist/cjs/ui/top-nav-items/themed/use-custom-theme.js +0 -41
  81. package/dist/es2019/context/skip-links/skip-links-context.js +2 -54
  82. package/dist/es2019/context/skip-links/use-skip-link-internal.js +41 -0
  83. package/dist/es2019/context/skip-links/use-skip-link.js +12 -0
  84. package/dist/es2019/context/top-nav-start/top-nav-start-attach-ref.js +3 -0
  85. package/dist/es2019/context/top-nav-start/top-nav-start-context-provider.js +2 -1
  86. package/dist/es2019/context/top-nav-start/top-nav-start-element.js +2 -0
  87. package/dist/es2019/entry-points/experimental/top-nav-button.js +4 -1
  88. package/dist/es2019/entry-points/layout/skip-links.js +2 -2
  89. package/dist/es2019/ui/page-layout/aside.js +3 -3
  90. package/dist/es2019/ui/page-layout/banner.js +4 -3
  91. package/dist/es2019/ui/page-layout/{hoist-utils.js → dangerously-hoist-css-var-to-document-root.js} +0 -19
  92. package/dist/es2019/ui/page-layout/hoist-css-var-to-local-grid.js +15 -0
  93. package/dist/es2019/ui/page-layout/main/main.js +2 -2
  94. package/dist/es2019/ui/page-layout/panel-splitter/get-pixel-width.js +7 -0
  95. package/dist/es2019/ui/page-layout/panel-splitter/{get-width.js → get-width-from-drag-location.js} +0 -11
  96. package/dist/es2019/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.js +4 -0
  97. package/dist/es2019/ui/page-layout/panel-splitter/{context.js → on-double-click-context.js} +0 -8
  98. package/dist/es2019/ui/page-layout/panel-splitter/panel-splitter-context.js +9 -0
  99. package/dist/es2019/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.js +1 -0
  100. package/dist/es2019/ui/page-layout/panel-splitter/panel-splitter.js +12 -13
  101. package/dist/es2019/ui/page-layout/panel-splitter/provider.js +1 -1
  102. package/dist/es2019/ui/page-layout/panel-splitter/side-nav-panel-splitter.js +2 -1
  103. package/dist/es2019/ui/page-layout/panel.js +4 -4
  104. package/dist/es2019/ui/page-layout/ribbon.js +2 -6
  105. package/dist/es2019/ui/page-layout/root.compiled.css +2 -2
  106. package/dist/es2019/ui/page-layout/root.js +4 -6
  107. package/dist/es2019/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.js +2 -22
  108. package/dist/es2019/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.js +10 -0
  109. package/dist/es2019/ui/page-layout/side-nav/set-side-nav-visibility-state.js +3 -0
  110. package/dist/es2019/ui/page-layout/side-nav/side-nav-element-provider.js +10 -0
  111. package/dist/es2019/ui/page-layout/side-nav/side-nav-ref-context.js +4 -0
  112. package/dist/es2019/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.js +3 -0
  113. package/dist/es2019/ui/page-layout/side-nav/side-nav-toggle-button-element.js +7 -0
  114. package/dist/es2019/ui/page-layout/side-nav/{visibility-context.js → side-nav-visibility-state.js} +1 -7
  115. package/dist/es2019/ui/page-layout/side-nav/side-nav.js +9 -8
  116. package/dist/es2019/ui/page-layout/side-nav/toggle-button-provider.js +2 -1
  117. package/dist/es2019/ui/page-layout/side-nav/toggle-button.js +4 -4
  118. package/dist/es2019/ui/page-layout/side-nav/use-expand-side-nav.js +1 -1
  119. package/dist/es2019/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.js +10 -0
  120. package/dist/es2019/ui/page-layout/side-nav/use-side-nav-ref.js +11 -0
  121. package/dist/es2019/ui/page-layout/side-nav/use-side-nav-toggle-keyboard-shortcut.js +1 -1
  122. package/dist/es2019/ui/page-layout/side-nav/use-side-nav-visibility.js +1 -1
  123. package/dist/es2019/ui/page-layout/side-nav/use-toggle-side-nav.js +1 -1
  124. package/dist/es2019/ui/page-layout/side-nav/visibility-provider.js +2 -2
  125. package/dist/es2019/ui/page-layout/top-nav/top-nav-end.js +1 -1
  126. package/dist/es2019/ui/page-layout/top-nav/top-nav-start.js +2 -2
  127. package/dist/es2019/ui/page-layout/top-nav/top-nav.js +11 -8
  128. package/dist/es2019/ui/page-layout/use-layout-id.js +15 -0
  129. package/dist/es2019/ui/page-layout/use-resizing-width-css-var-on-root-element.js +1 -1
  130. package/dist/es2019/ui/page-layout/{id-utils.js → use-skip-link-id.js} +0 -14
  131. package/dist/es2019/ui/top-nav-items/app-switcher.js +1 -1
  132. package/dist/es2019/ui/top-nav-items/chat-button.js +1 -1
  133. package/dist/es2019/ui/top-nav-items/create-button.js +1 -1
  134. package/dist/es2019/ui/top-nav-items/end-item.js +1 -1
  135. package/dist/es2019/ui/top-nav-items/log-in.js +1 -1
  136. package/dist/es2019/ui/top-nav-items/search.js +1 -1
  137. package/dist/es2019/ui/top-nav-items/themed/button.js +11 -347
  138. package/dist/es2019/ui/top-nav-items/themed/get-custom-theme-styles.js +28 -28
  139. package/dist/es2019/ui/top-nav-items/themed/get-primitives-spread-props.js +31 -0
  140. package/dist/es2019/ui/top-nav-items/themed/icon-button.js +12 -0
  141. package/dist/es2019/ui/top-nav-items/themed/link-button.js +12 -0
  142. package/dist/es2019/ui/top-nav-items/themed/link-icon-button.js +12 -0
  143. package/dist/es2019/ui/top-nav-items/themed/palette-rgba.js +14 -0
  144. package/dist/es2019/ui/top-nav-items/themed/palette.js +0 -20
  145. package/dist/es2019/ui/top-nav-items/themed/search.js +1 -2
  146. package/dist/es2019/ui/top-nav-items/themed/{button.compiled.css → themed-anchor.compiled.css} +0 -1
  147. package/dist/es2019/ui/top-nav-items/themed/themed-anchor.js +66 -0
  148. package/dist/es2019/ui/top-nav-items/themed/themed-button.compiled.css +2 -0
  149. package/dist/es2019/ui/top-nav-items/themed/themed-button.js +30 -0
  150. package/dist/es2019/ui/top-nav-items/themed/themed-icon-button.js +72 -0
  151. package/dist/es2019/ui/top-nav-items/themed/themed-link-button.compiled.css +2 -0
  152. package/dist/es2019/ui/top-nav-items/themed/themed-link-button.js +37 -0
  153. package/dist/es2019/ui/top-nav-items/themed/themed-link-icon-button.js +73 -0
  154. package/dist/es2019/ui/top-nav-items/themed/themed-pressable.compiled.css +68 -0
  155. package/dist/es2019/ui/top-nav-items/themed/themed-pressable.js +52 -0
  156. package/dist/es2019/ui/top-nav-items/themed/types.js +1 -0
  157. package/dist/es2019/ui/top-nav-items/themed/use-custom-theme-new.js +45 -0
  158. package/dist/es2019/ui/top-nav-items/themed/use-custom-theme.js +0 -38
  159. package/dist/esm/context/skip-links/skip-links-context.js +2 -54
  160. package/dist/esm/context/skip-links/use-skip-link-internal.js +39 -0
  161. package/dist/esm/context/skip-links/use-skip-link.js +12 -0
  162. package/dist/esm/context/top-nav-start/top-nav-start-attach-ref.js +3 -0
  163. package/dist/esm/context/top-nav-start/top-nav-start-context-provider.js +2 -1
  164. package/dist/esm/context/top-nav-start/top-nav-start-element.js +2 -0
  165. package/dist/esm/entry-points/experimental/top-nav-button.js +4 -1
  166. package/dist/esm/entry-points/layout/skip-links.js +2 -2
  167. package/dist/esm/ui/page-layout/aside.js +3 -3
  168. package/dist/esm/ui/page-layout/banner.js +4 -3
  169. package/dist/esm/ui/page-layout/dangerously-hoist-css-var-to-document-root.js +31 -0
  170. package/dist/esm/ui/page-layout/hoist-css-var-to-local-grid.js +16 -0
  171. package/dist/esm/ui/page-layout/main/main.js +2 -2
  172. package/dist/esm/ui/page-layout/panel-splitter/get-pixel-width.js +7 -0
  173. package/dist/esm/ui/page-layout/panel-splitter/{get-width.js → get-width-from-drag-location.js} +0 -11
  174. package/dist/esm/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.js +4 -0
  175. package/dist/esm/ui/page-layout/panel-splitter/{context.js → on-double-click-context.js} +0 -8
  176. package/dist/esm/ui/page-layout/panel-splitter/panel-splitter-context.js +9 -0
  177. package/dist/esm/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.js +1 -0
  178. package/dist/esm/ui/page-layout/panel-splitter/panel-splitter.js +9 -10
  179. package/dist/esm/ui/page-layout/panel-splitter/provider.js +1 -1
  180. package/dist/esm/ui/page-layout/panel-splitter/side-nav-panel-splitter.js +2 -1
  181. package/dist/esm/ui/page-layout/panel.js +4 -4
  182. package/dist/esm/ui/page-layout/ribbon.js +2 -6
  183. package/dist/esm/ui/page-layout/root.compiled.css +2 -2
  184. package/dist/esm/ui/page-layout/root.js +4 -6
  185. package/dist/esm/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.js +2 -21
  186. package/dist/esm/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.js +9 -0
  187. package/dist/esm/ui/page-layout/side-nav/set-side-nav-visibility-state.js +3 -0
  188. package/dist/esm/ui/page-layout/side-nav/side-nav-element-provider.js +9 -0
  189. package/dist/esm/ui/page-layout/side-nav/side-nav-ref-context.js +4 -0
  190. package/dist/esm/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.js +3 -0
  191. package/dist/esm/ui/page-layout/side-nav/side-nav-toggle-button-element.js +7 -0
  192. package/dist/esm/ui/page-layout/side-nav/{visibility-context.js → side-nav-visibility-state.js} +1 -7
  193. package/dist/esm/ui/page-layout/side-nav/side-nav.js +9 -8
  194. package/dist/esm/ui/page-layout/side-nav/toggle-button-provider.js +2 -1
  195. package/dist/esm/ui/page-layout/side-nav/toggle-button.js +4 -4
  196. package/dist/esm/ui/page-layout/side-nav/use-expand-side-nav.js +1 -1
  197. package/dist/esm/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.js +10 -0
  198. package/dist/esm/ui/page-layout/side-nav/use-side-nav-ref.js +11 -0
  199. package/dist/esm/ui/page-layout/side-nav/use-side-nav-toggle-keyboard-shortcut.js +1 -1
  200. package/dist/esm/ui/page-layout/side-nav/use-side-nav-visibility.js +1 -1
  201. package/dist/esm/ui/page-layout/side-nav/use-toggle-side-nav.js +1 -1
  202. package/dist/esm/ui/page-layout/side-nav/visibility-provider.js +2 -2
  203. package/dist/esm/ui/page-layout/top-nav/top-nav-end.js +1 -1
  204. package/dist/esm/ui/page-layout/top-nav/top-nav-start.js +2 -2
  205. package/dist/esm/ui/page-layout/top-nav/top-nav.js +11 -8
  206. package/dist/esm/ui/page-layout/{id-utils.js → use-layout-id.js} +1 -12
  207. package/dist/esm/ui/page-layout/use-resizing-width-css-var-on-root-element.js +1 -1
  208. package/dist/esm/ui/page-layout/use-skip-link-id.js +12 -0
  209. package/dist/esm/ui/top-nav-items/app-switcher.js +1 -1
  210. package/dist/esm/ui/top-nav-items/chat-button.js +1 -1
  211. package/dist/esm/ui/top-nav-items/create-button.js +1 -1
  212. package/dist/esm/ui/top-nav-items/end-item.js +1 -1
  213. package/dist/esm/ui/top-nav-items/log-in.js +1 -1
  214. package/dist/esm/ui/top-nav-items/search.js +1 -1
  215. package/dist/esm/ui/top-nav-items/themed/button.js +11 -358
  216. package/dist/esm/ui/top-nav-items/themed/get-custom-theme-styles.js +9 -9
  217. package/dist/esm/ui/top-nav-items/themed/get-primitives-spread-props.js +32 -0
  218. package/dist/esm/ui/top-nav-items/themed/icon-button.js +12 -0
  219. package/dist/esm/ui/top-nav-items/themed/link-button.js +12 -0
  220. package/dist/esm/ui/top-nav-items/themed/link-icon-button.js +12 -0
  221. package/dist/esm/ui/top-nav-items/themed/palette-rgba.js +14 -0
  222. package/dist/esm/ui/top-nav-items/themed/palette.js +0 -20
  223. package/dist/esm/ui/top-nav-items/themed/search.js +1 -2
  224. package/dist/esm/ui/top-nav-items/themed/themed-anchor.compiled.css +68 -0
  225. package/dist/esm/ui/top-nav-items/themed/themed-anchor.js +69 -0
  226. package/dist/esm/ui/top-nav-items/themed/themed-button.compiled.css +2 -0
  227. package/dist/esm/ui/top-nav-items/themed/themed-button.js +31 -0
  228. package/dist/esm/ui/top-nav-items/themed/themed-icon-button.js +76 -0
  229. package/dist/esm/ui/top-nav-items/themed/themed-link-button.compiled.css +2 -0
  230. package/dist/esm/ui/top-nav-items/themed/themed-link-button.js +38 -0
  231. package/dist/esm/ui/top-nav-items/themed/themed-link-icon-button.js +77 -0
  232. package/dist/esm/ui/top-nav-items/themed/themed-pressable.compiled.css +68 -0
  233. package/dist/esm/ui/top-nav-items/themed/themed-pressable.js +55 -0
  234. package/dist/esm/ui/top-nav-items/themed/types.js +1 -0
  235. package/dist/esm/ui/top-nav-items/themed/use-custom-theme-new.js +46 -0
  236. package/dist/esm/ui/top-nav-items/themed/use-custom-theme.js +0 -39
  237. package/dist/types/context/skip-links/skip-links-context.d.ts +0 -27
  238. package/dist/types/context/skip-links/use-skip-link-internal.d.ts +10 -0
  239. package/dist/types/context/skip-links/use-skip-link.d.ts +18 -0
  240. package/dist/types/context/top-nav-start/top-nav-start-attach-ref.d.ts +1 -0
  241. package/dist/types/context/top-nav-start/top-nav-start-element.d.ts +1 -0
  242. package/dist/types/entry-points/experimental/top-nav-button.d.ts +4 -1
  243. package/dist/types/entry-points/layout/skip-links.d.ts +2 -2
  244. package/dist/types/ui/page-layout/dangerously-hoist-css-var-to-document-root.d.ts +8 -0
  245. 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
  246. package/dist/types/ui/page-layout/panel-splitter/get-pixel-width.d.ts +4 -0
  247. package/dist/types/ui/page-layout/panel-splitter/get-width-from-drag-location.d.ts +8 -0
  248. package/dist/types/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.d.ts +9 -0
  249. package/dist/types/ui/page-layout/panel-splitter/on-double-click-context.d.ts +8 -0
  250. 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
  251. package/dist/types/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.d.ts +1 -0
  252. package/dist/types/ui/page-layout/panel-splitter/panel-splitter.d.ts +1 -10
  253. package/dist/types/ui/page-layout/panel-splitter/provider.d.ts +1 -1
  254. package/dist/types/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.d.ts +6 -11
  255. package/dist/types/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.d.ts +5 -0
  256. package/dist/types/ui/page-layout/side-nav/set-side-nav-visibility-state.d.ts +3 -0
  257. package/dist/types/ui/page-layout/side-nav/side-nav-element-provider.d.ts +4 -0
  258. package/dist/types/ui/page-layout/side-nav/side-nav-ref-context.d.ts +2 -0
  259. package/dist/types/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.d.ts +1 -0
  260. package/dist/types/ui/page-layout/side-nav/side-nav-toggle-button-element.d.ts +5 -0
  261. 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
  262. package/dist/types/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.d.ts +5 -0
  263. 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
  264. package/dist/types/ui/page-layout/top-nav/top-nav.d.ts +3 -4
  265. package/dist/{types-ts4.5/ui/page-layout/id-utils.d.ts → types/ui/page-layout/use-layout-id.d.ts} +0 -5
  266. package/dist/types/ui/page-layout/use-skip-link-id.d.ts +5 -0
  267. package/dist/types/ui/top-nav-items/themed/button.d.ts +5 -126
  268. package/dist/types/ui/top-nav-items/themed/get-primitives-spread-props.d.ts +16 -0
  269. package/dist/types/ui/top-nav-items/themed/icon-button.d.ts +7 -0
  270. package/dist/types/ui/top-nav-items/themed/link-button.d.ts +3 -0
  271. package/dist/types/ui/top-nav-items/themed/link-icon-button.d.ts +7 -0
  272. package/dist/types/ui/top-nav-items/themed/palette-rgba.d.ts +14 -0
  273. package/dist/types/ui/top-nav-items/themed/palette.d.ts +0 -20
  274. package/dist/types/ui/top-nav-items/themed/themed-anchor.d.ts +32 -0
  275. package/dist/types/ui/top-nav-items/themed/themed-button.d.ts +10 -0
  276. package/dist/types/ui/top-nav-items/themed/themed-icon-button.d.ts +10 -0
  277. package/dist/types/ui/top-nav-items/themed/themed-link-button.d.ts +16 -0
  278. package/dist/types/ui/top-nav-items/themed/themed-link-icon-button.d.ts +13 -0
  279. package/dist/types/ui/top-nav-items/themed/themed-pressable.d.ts +18 -0
  280. package/dist/types/ui/top-nav-items/themed/types.d.ts +54 -0
  281. package/dist/types/ui/top-nav-items/themed/use-custom-theme-new.d.ts +20 -0
  282. package/dist/types/ui/top-nav-items/themed/use-custom-theme.d.ts +0 -11
  283. package/dist/types-ts4.5/context/skip-links/skip-links-context.d.ts +0 -27
  284. package/dist/types-ts4.5/context/skip-links/use-skip-link-internal.d.ts +10 -0
  285. package/dist/types-ts4.5/context/skip-links/use-skip-link.d.ts +18 -0
  286. package/dist/types-ts4.5/context/top-nav-start/top-nav-start-attach-ref.d.ts +1 -0
  287. package/dist/types-ts4.5/context/top-nav-start/top-nav-start-element.d.ts +1 -0
  288. package/dist/types-ts4.5/entry-points/experimental/top-nav-button.d.ts +4 -1
  289. package/dist/types-ts4.5/entry-points/layout/skip-links.d.ts +2 -2
  290. package/dist/types-ts4.5/ui/page-layout/dangerously-hoist-css-var-to-document-root.d.ts +8 -0
  291. 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
  292. package/dist/types-ts4.5/ui/page-layout/panel-splitter/get-pixel-width.d.ts +4 -0
  293. package/dist/types-ts4.5/ui/page-layout/panel-splitter/get-width-from-drag-location.d.ts +8 -0
  294. package/dist/types-ts4.5/ui/page-layout/panel-splitter/is-panel-splitter-drag-data.d.ts +9 -0
  295. package/dist/types-ts4.5/ui/page-layout/panel-splitter/on-double-click-context.d.ts +8 -0
  296. 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
  297. package/dist/types-ts4.5/ui/page-layout/panel-splitter/panel-splitter-drag-symbol.d.ts +1 -0
  298. package/dist/types-ts4.5/ui/page-layout/panel-splitter/panel-splitter.d.ts +1 -10
  299. package/dist/types-ts4.5/ui/page-layout/panel-splitter/provider.d.ts +1 -1
  300. package/dist/types-ts4.5/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-context.d.ts +6 -11
  301. package/dist/types-ts4.5/ui/page-layout/side-nav/is-side-nav-shortcut-enabled-provider.d.ts +5 -0
  302. package/dist/types-ts4.5/ui/page-layout/side-nav/set-side-nav-visibility-state.d.ts +3 -0
  303. package/dist/types-ts4.5/ui/page-layout/side-nav/side-nav-element-provider.d.ts +4 -0
  304. package/dist/types-ts4.5/ui/page-layout/side-nav/side-nav-ref-context.d.ts +2 -0
  305. package/dist/types-ts4.5/ui/page-layout/side-nav/side-nav-toggle-button-attach-ref.d.ts +1 -0
  306. package/dist/types-ts4.5/ui/page-layout/side-nav/side-nav-toggle-button-element.d.ts +5 -0
  307. 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
  308. package/dist/types-ts4.5/ui/page-layout/side-nav/use-is-side-nav-shortcut-enabled.d.ts +5 -0
  309. 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
  310. package/dist/types-ts4.5/ui/page-layout/top-nav/top-nav.d.ts +3 -4
  311. package/dist/{types/ui/page-layout/id-utils.d.ts → types-ts4.5/ui/page-layout/use-layout-id.d.ts} +0 -5
  312. package/dist/types-ts4.5/ui/page-layout/use-skip-link-id.d.ts +5 -0
  313. package/dist/types-ts4.5/ui/top-nav-items/themed/button.d.ts +5 -126
  314. package/dist/types-ts4.5/ui/top-nav-items/themed/get-primitives-spread-props.d.ts +16 -0
  315. package/dist/types-ts4.5/ui/top-nav-items/themed/icon-button.d.ts +7 -0
  316. package/dist/types-ts4.5/ui/top-nav-items/themed/link-button.d.ts +3 -0
  317. package/dist/types-ts4.5/ui/top-nav-items/themed/link-icon-button.d.ts +7 -0
  318. package/dist/types-ts4.5/ui/top-nav-items/themed/palette-rgba.d.ts +14 -0
  319. package/dist/types-ts4.5/ui/top-nav-items/themed/palette.d.ts +0 -20
  320. package/dist/types-ts4.5/ui/top-nav-items/themed/themed-anchor.d.ts +32 -0
  321. package/dist/types-ts4.5/ui/top-nav-items/themed/themed-button.d.ts +10 -0
  322. package/dist/types-ts4.5/ui/top-nav-items/themed/themed-icon-button.d.ts +10 -0
  323. package/dist/types-ts4.5/ui/top-nav-items/themed/themed-link-button.d.ts +16 -0
  324. package/dist/types-ts4.5/ui/top-nav-items/themed/themed-link-icon-button.d.ts +13 -0
  325. package/dist/types-ts4.5/ui/top-nav-items/themed/themed-pressable.d.ts +18 -0
  326. package/dist/types-ts4.5/ui/top-nav-items/themed/types.d.ts +54 -0
  327. package/dist/types-ts4.5/ui/top-nav-items/themed/use-custom-theme-new.d.ts +20 -0
  328. package/dist/types-ts4.5/ui/top-nav-items/themed/use-custom-theme.d.ts +0 -11
  329. package/package.json +13 -16
  330. package/dist/cjs/context/top-nav-start/top-nav-start-context.js +0 -26
  331. package/dist/cjs/ui/page-layout/side-nav/toggle-button-context.js +0 -26
  332. package/dist/cjs/ui/page-layout/side-nav/visibility-context.js +0 -19
  333. package/dist/cjs/ui/top-nav-items/themed/migration.js +0 -53
  334. package/dist/es2019/context/top-nav-start/top-nav-start-context.js +0 -20
  335. package/dist/es2019/ui/page-layout/side-nav/element-context.js +0 -21
  336. package/dist/es2019/ui/page-layout/side-nav/toggle-button-context.js +0 -19
  337. package/dist/es2019/ui/top-nav-items/themed/migration.js +0 -45
  338. package/dist/esm/context/top-nav-start/top-nav-start-context.js +0 -20
  339. package/dist/esm/ui/page-layout/hoist-utils.js +0 -51
  340. package/dist/esm/ui/page-layout/side-nav/element-context.js +0 -20
  341. package/dist/esm/ui/page-layout/side-nav/toggle-button-context.js +0 -19
  342. package/dist/esm/ui/top-nav-items/themed/migration.js +0 -45
  343. package/dist/types/context/top-nav-start/top-nav-start-context.d.ts +0 -16
  344. package/dist/types/ui/page-layout/panel-splitter/get-width.d.ts +0 -16
  345. package/dist/types/ui/page-layout/side-nav/toggle-button-context.d.ts +0 -16
  346. package/dist/types/ui/top-nav-items/themed/migration.d.ts +0 -10
  347. package/dist/types-ts4.5/context/top-nav-start/top-nav-start-context.d.ts +0 -16
  348. package/dist/types-ts4.5/ui/page-layout/panel-splitter/get-width.d.ts +0 -16
  349. package/dist/types-ts4.5/ui/page-layout/side-nav/toggle-button-context.d.ts +0 -16
  350. package/dist/types-ts4.5/ui/top-nav-items/themed/migration.d.ts +0 -10
@@ -1,4 +1,4 @@
1
- import { createContext, useContext, useEffect } from 'react';
1
+ import { createContext } from 'react';
2
2
  import noop from '@atlaskit/ds-lib/noop';
3
3
  /**
4
4
  * Provides a way to register and unregister skip links
@@ -6,56 +6,4 @@ import noop from '@atlaskit/ds-lib/noop';
6
6
  export var SkipLinksContext = /*#__PURE__*/createContext({
7
7
  registerSkipLink: noop,
8
8
  unregisterSkipLink: noop
9
- });
10
- var useSkipLinks = function useSkipLinks() {
11
- return useContext(SkipLinksContext);
12
- };
13
-
14
- /**
15
- * Internal-only hook for registering skip links.
16
- *
17
- * `useSkipLink` is the public API wrapper of this.
18
- *
19
- * This private version exists for us to support `onBeforeNavigate` for the side nav use case,
20
- * where we might need to expand it before moving focus, without having to support `onBeforeNavigate` publicly.
21
- */
22
- export var useSkipLinkInternal = function useSkipLinkInternal(_ref) {
23
- var id = _ref.id,
24
- label = _ref.label,
25
- listIndex = _ref.listIndex,
26
- onBeforeNavigate = _ref.onBeforeNavigate,
27
- isHidden = _ref.isHidden;
28
- var _useSkipLinks = useSkipLinks(),
29
- registerSkipLink = _useSkipLinks.registerSkipLink,
30
- unregisterSkipLink = _useSkipLinks.unregisterSkipLink;
31
- useEffect(function () {
32
- if (isHidden) {
33
- /**
34
- * Skip links are hidden for slots with 0 height or width.
35
- * They should not be registered.
36
- */
37
- return;
38
- }
39
- registerSkipLink({
40
- id: id,
41
- label: label,
42
- listIndex: listIndex,
43
- onBeforeNavigate: onBeforeNavigate,
44
- isHidden: isHidden
45
- });
46
- return function () {
47
- unregisterSkipLink(id);
48
- };
49
- }, [id, isHidden, label, listIndex, onBeforeNavigate, registerSkipLink, unregisterSkipLink]);
50
- };
51
-
52
- /**
53
- * Call `useSkipLink` to register a skip link for important elements on the page.
54
- */
55
- export var useSkipLink = function useSkipLink(id, label, listIndex) {
56
- useSkipLinkInternal({
57
- id: id,
58
- label: label,
59
- listIndex: listIndex
60
- });
61
- };
9
+ });
@@ -0,0 +1,39 @@
1
+ import { useContext, useEffect } from 'react';
2
+ import { SkipLinksContext } from './skip-links-context';
3
+ /**
4
+ * Internal-only hook for registering skip links.
5
+ *
6
+ * `useSkipLink` is the public API wrapper of this.
7
+ *
8
+ * This private version exists for us to support `onBeforeNavigate` for the side nav use case,
9
+ * where we might need to expand it before moving focus, without having to support `onBeforeNavigate` publicly.
10
+ */
11
+ export var useSkipLinkInternal = function useSkipLinkInternal(_ref) {
12
+ var id = _ref.id,
13
+ label = _ref.label,
14
+ listIndex = _ref.listIndex,
15
+ onBeforeNavigate = _ref.onBeforeNavigate,
16
+ isHidden = _ref.isHidden;
17
+ var _useContext = useContext(SkipLinksContext),
18
+ registerSkipLink = _useContext.registerSkipLink,
19
+ unregisterSkipLink = _useContext.unregisterSkipLink;
20
+ useEffect(function () {
21
+ if (isHidden) {
22
+ /**
23
+ * Skip links are hidden for slots with 0 height or width.
24
+ * They should not be registered.
25
+ */
26
+ return;
27
+ }
28
+ registerSkipLink({
29
+ id: id,
30
+ label: label,
31
+ listIndex: listIndex,
32
+ onBeforeNavigate: onBeforeNavigate,
33
+ isHidden: isHidden
34
+ });
35
+ return function () {
36
+ unregisterSkipLink(id);
37
+ };
38
+ }, [id, isHidden, label, listIndex, onBeforeNavigate, registerSkipLink, unregisterSkipLink]);
39
+ };
@@ -0,0 +1,12 @@
1
+ import { useSkipLinkInternal } from './use-skip-link-internal';
2
+
3
+ /**
4
+ * Call `useSkipLink` to register a skip link for important elements on the page.
5
+ */
6
+ export var useSkipLink = function useSkipLink(id, label, listIndex) {
7
+ useSkipLinkInternal({
8
+ id: id,
9
+ label: label,
10
+ listIndex: listIndex
11
+ });
12
+ };
@@ -0,0 +1,3 @@
1
+ import { createContext } from 'react';
2
+ import __noop from '@atlaskit/ds-lib/noop';
3
+ export var TopNavStartAttachRef = /*#__PURE__*/createContext(__noop);
@@ -1,6 +1,7 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
2
  import React, { useState } from 'react';
3
- import { TopNavStartAttachRef, TopNavStartElement } from './top-nav-start-context';
3
+ import { TopNavStartAttachRef } from './top-nav-start-attach-ref';
4
+ import { TopNavStartElement } from './top-nav-start-element';
4
5
 
5
6
  /**
6
7
  * Provider for the TopNavStart container element contexts.
@@ -0,0 +1,2 @@
1
+ import { createContext } from 'react';
2
+ export var 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';
@@ -7,12 +7,12 @@ import { ax, ix } from "@compiled/react/runtime";
7
7
  import { useContext, useEffect, useRef, useState } from 'react';
8
8
  import usePreviousValue from '@atlaskit/ds-lib/use-previous-value';
9
9
  import { media } from '@atlaskit/primitives/responsive';
10
- import { useSkipLinkInternal } from '../../context/skip-links/skip-links-context';
10
+ import { useSkipLinkInternal } from '../../context/skip-links/use-skip-link-internal';
11
11
  import { asidePanelSplitterId, asideVar, contentHeightWhenFixed, contentInsetBlockStart, UNSAFE_asideLayoutVar } from './constants';
12
+ import { DangerouslyHoistCssVarToDocumentRoot } from './dangerously-hoist-css-var-to-document-root';
12
13
  import { DangerouslyHoistSlotSizes } from './hoist-slot-sizes-context';
13
- import { DangerouslyHoistCssVarToDocumentRoot } from './hoist-utils';
14
- import { useLayoutId } from './id-utils';
15
14
  import { PanelSplitterProvider } from './panel-splitter/provider';
15
+ import { useLayoutId } from './use-layout-id';
16
16
  import { useResizingWidthCssVarOnRootElement } from './use-resizing-width-css-var-on-root-element';
17
17
  import { useSafeDefaultWidth } from './use-safe-default-width';
18
18
  var 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
  var styles = {
13
14
  root: "_nd5ldkfm _1reo15vq _18m915vq _4t3iutvi _152tidpf _kqsw1if8 _1pbyegat",
14
15
  fullHeightSidebar: "_1pby11wp"
@@ -0,0 +1,31 @@
1
+ import React from 'react';
2
+ var getCssStringValue = function getCssStringValue(value) {
3
+ return typeof value === 'number' ? "".concat(value, "px") : value;
4
+ };
5
+ export var DangerouslyHoistCssVarToDocumentRoot = function DangerouslyHoistCssVarToDocumentRoot(_ref) {
6
+ var variableName = _ref.variableName,
7
+ value = _ref.value,
8
+ mediaQuery = _ref.mediaQuery,
9
+ responsiveValue = _ref.responsiveValue;
10
+ /**
11
+ * Note don't put multiple variables in multiple lines. eg
12
+ * <style>
13
+ * {css1}
14
+ * {css2}
15
+ * </style>
16
+ *
17
+ * React will insert an empty HTML comment in between the text in SSR.
18
+ * This is not a valid tag and will break the page.
19
+ * <style>foo<!-- -->bar</style>
20
+ */
21
+ var style = ":root { ".concat(variableName, ": ").concat(getCssStringValue(value), " }");
22
+ if (mediaQuery && responsiveValue) {
23
+ style += " ".concat(mediaQuery, " { :root { ").concat(variableName, ": ").concat(getCssStringValue(responsiveValue), " } }");
24
+ }
25
+ return (
26
+ /*#__PURE__*/
27
+ // Using a global style is required for SSR, as we can't use React hooks
28
+ // eslint-disable-next-line @atlaskit/ui-styling-standard/no-global-styles
29
+ React.createElement("style", null, style)
30
+ );
31
+ };
@@ -0,0 +1,16 @@
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 var HoistCssVarToLocalGrid = function HoistCssVarToLocalGrid(_ref) {
13
+ var variableName = _ref.variableName,
14
+ value = _ref.value;
15
+ return /*#__PURE__*/React.createElement("style", null, "#".concat(gridRootId, " { ").concat(variableName, ": ").concat(value, "px }"));
16
+ };
@@ -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
  var 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 var getPixelWidth = function 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 var getWidthFromDragLocation = function getWidthFromDragLocation(_ref) {
6
2
  var initialWidth = _ref.initialWidth,
7
3
  location = _ref.location,
@@ -19,11 +15,4 @@ export var getWidthFromDragLocation = function getWidthFromDragLocation(_ref) {
19
15
  // Resize line is positioned at the inline-start (left) of the element.
20
16
  // If the direction is left-to-right, the width will decrease when the mouse is moved to the right, and vice versa.
21
17
  return direction === 'ltr' ? initialWidth - diffX : initialWidth + diffX;
22
- };
23
- /**
24
- * Returns the computed width of an element in pixels.
25
- */
26
- export var getPixelWidth = function getPixelWidth(element) {
27
- // Always returns an integer. Returns 0 if element is hidden / removed.
28
- return element.offsetWidth;
29
18
  };
@@ -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 var 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 var PanelSplitterContext = /*#__PURE__*/createContext(null);
@@ -0,0 +1 @@
1
+ export var panelSplitterDragDataSymbol = Symbol('panel-splitter-drag-data');
@@ -27,11 +27,18 @@ import TooltipContainer from '@atlaskit/tooltip/TooltipContainer';
27
27
  import VisuallyHidden from '@atlaskit/visually-hidden';
28
28
  import { useIsFhsEnabled } from '../../fhs-rollout/use-is-fhs-enabled';
29
29
  import { contentInsetBlockStart } from '../constants';
30
- import { OnDoubleClickContext, PanelSplitterContext } from './context';
31
30
  import { convertResizeBoundToPixels } from './convert-resize-bound-to-pixels';
32
31
  import { getPercentageWithinPixelBounds } from './get-percentage-within-pixel-bounds';
33
- import { getPixelWidth, getWidthFromDragLocation } from './get-width';
32
+ import { getPixelWidth } from './get-pixel-width';
33
+ import { getWidthFromDragLocation } from './get-width-from-drag-location';
34
+ import { isPanelSplitterDragData } from './is-panel-splitter-drag-data';
34
35
  import { createKeyboardResizeManager } from './keyboard-resize-manager';
36
+ import { OnDoubleClickContext } from './on-double-click-context';
37
+ import { PanelSplitterContext } from './panel-splitter-context';
38
+ import { panelSplitterDragDataSymbol } from './panel-splitter-drag-symbol';
39
+ function signPanelSplitterDragData(data) {
40
+ return _objectSpread(_objectSpread({}, data), {}, _defineProperty({}, panelSplitterDragDataSymbol, true));
41
+ }
35
42
  var containerStyles = {
36
43
  root: "_12ji1r31 _1qu2glyw _12y31o36 _1e0cglyw _kqswstnw _u7coidpf _152tidpf _1pbykb7n _181n1ule",
37
44
  positionEnd: "_rjxpftgi",
@@ -49,10 +56,6 @@ var lineStyles = {
49
56
  var tooltipStyles = {
50
57
  root: "_ahbq196n _1bsb1ris"
51
58
  };
52
- var panelSplitterDragDataSymbol = Symbol('panel-splitter-drag-data');
53
- function signPanelSplitterDragData(data) {
54
- return _objectSpread(_objectSpread({}, data), {}, _defineProperty({}, panelSplitterDragDataSymbol, true));
55
- }
56
59
  var PanelSplitterTooltip = /*#__PURE__*/forwardRef(function (_ref, ref) {
57
60
  var children = _ref.children,
58
61
  className = _ref.className,
@@ -122,9 +125,6 @@ var MaybeTooltip = function MaybeTooltip(_ref2) {
122
125
  }
123
126
  return children;
124
127
  };
125
- export function isPanelSplitterDragData(data) {
126
- return data[panelSplitterDragDataSymbol] === true;
127
- }
128
128
  function getTextDirection(element) {
129
129
  var _window$getComputedSt = window.getComputedStyle(element),
130
130
  direction = _window$getComputedSt.direction;
@@ -416,7 +416,6 @@ var PortaledPanelSplitter = function PortaledPanelSplitter(_ref3) {
416
416
  className: ax([lineStyles.root])
417
417
  })))), portal);
418
418
  };
419
-
420
419
  /**
421
420
  * _PanelSplitter_
422
421
  *
@@ -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
  *
@@ -5,8 +5,9 @@ import { useOpenLayerObserver } from '@atlaskit/layering/experimental/open-layer
5
5
  import { useIsFhsEnabled } from '../../fhs-rollout/use-is-fhs-enabled';
6
6
  import { openLayerObserverSideNavNamespace, openLayerObserverTopNavEndNamespace, openLayerObserverTopNavMiddleNamespace, openLayerObserverTopNavStartNamespace, sideNavPanelSplitterId } from '../constants';
7
7
  import { useToggleSideNav } from '../side-nav/use-toggle-side-nav';
8
- import { OnDoubleClickContext, PanelSplitterContext } from './context';
8
+ import { OnDoubleClickContext } from './on-double-click-context';
9
9
  import { PanelSplitter } from './panel-splitter';
10
+ import { PanelSplitterContext } from './panel-splitter-context';
10
11
 
11
12
  /**
12
13
  * Namespaces to check for open layers that would interfere with the panel splitter.
@@ -6,13 +6,13 @@ import * as React from 'react';
6
6
  import { ax, ix } from "@compiled/react/runtime";
7
7
  import { useCallback, useContext, useEffect, useRef, useState } from 'react';
8
8
  import { media } from '@atlaskit/primitives/responsive';
9
- import { useSkipLinkInternal } from '../../context/skip-links/skip-links-context';
9
+ import { useSkipLinkInternal } from '../../context/skip-links/use-skip-link-internal';
10
10
  import { contentHeightWhenFixed, contentInsetBlockStart, localSlotLayers, panelPanelSplitterId, panelVar, sideNavLiveWidthVar, UNSAFE_panelLayoutVar } from './constants';
11
+ import { DangerouslyHoistCssVarToDocumentRoot } from './dangerously-hoist-css-var-to-document-root';
11
12
  import { DangerouslyHoistSlotSizes } from './hoist-slot-sizes-context';
12
- import { DangerouslyHoistCssVarToDocumentRoot } from './hoist-utils';
13
- import { useLayoutId } from './id-utils';
14
13
  import { PanelSplitterProvider } from './panel-splitter/provider';
15
- import { useSideNavRef } from './side-nav/element-context';
14
+ import { useSideNavRef } from './side-nav/use-side-nav-ref';
15
+ import { useLayoutId } from './use-layout-id';
16
16
  import { useResizingWidthCssVarOnRootElement } from './use-resizing-width-css-var-on-root-element';
17
17
  import { useSafeDefaultWidth } from './use-safe-default-width';
18
18
  var panelSplitterResizingVar = '--n_pnlRsz';
@@ -3,12 +3,11 @@ import "./ribbon.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 { fg } from '@atlaskit/platform-feature-flags';
7
6
  import { media } from '@atlaskit/primitives/responsive';
8
7
  import { localSlotLayers, UNSAFE_ribbonVar } from './constants';
8
+ import { DangerouslyHoistCssVarToDocumentRoot } from './dangerously-hoist-css-var-to-document-root';
9
9
  import { DangerouslyHoistSlotSizes } from './hoist-slot-sizes-context';
10
- import { DangerouslyHoistCssVarToDocumentRoot } from './hoist-utils';
11
- import { useLayoutId } from './id-utils';
10
+ import { useLayoutId } from './use-layout-id';
12
11
  var styles = {
13
12
  root: "_nd5l1c99 _1reo15vq _18m915vq _4t3i1osq _152tidpf _kqsw1if8 _vchhusvi _1pbyegat _1e0cglyw _dm2518uv"
14
13
  };
@@ -22,9 +21,6 @@ export function UNSAFE_Ribbon(_ref) {
22
21
  providedId: providedId
23
22
  });
24
23
  var dangerouslyHoistSlotSizes = useContext(DangerouslyHoistSlotSizes);
25
- if (!fg('platform_dst_nav4_ribbon_slot')) {
26
- return null;
27
- }
28
24
  return /*#__PURE__*/React.createElement("div", {
29
25
  id: id,
30
26
  "data-layout-slot": true,
@@ -4,5 +4,5 @@
4
4
  ._1tke1kxc{min-height:100vh}
5
5
  ._2z0516ab{grid-template-rows:auto auto 1fr auto}
6
6
  ._yv0ei47z{grid-template-columns:minmax(0,1fr)}
7
- @media (min-width:64rem){._12fk1aio{grid-template-areas:"banner banner banner banner" "ribbon top-bar top-bar top-bar" "ribbon side-nav main aside"}._12qzrxre{grid-template-rows:auto auto 3fr}._1rqteala{grid-template-columns:auto auto minmax(0,1fr) auto}._12fkuz0r{grid-template-areas:"banner banner banner" "top-bar top-bar top-bar" "side-nav main aside"}._1rqt70if{grid-template-columns:auto minmax(0,1fr) auto}}
8
- @media (min-width:90rem){._xkmgbaui{grid-template-areas:"banner banner banner banner" "top-bar top-bar top-bar top-bar" "side-nav main aside panel"}._jbc7rxre{grid-template-rows:auto auto 3fr}._tyve1jg8{grid-template-columns:auto minmax(0,1fr) auto auto}._xkmgks3h{grid-template-areas:"banner banner banner banner banner" "ribbon top-bar top-bar top-bar top-bar" "ribbon side-nav main aside panel"}._tyve1nco{grid-template-columns:auto auto minmax(0,1fr) auto auto}}
7
+ @media (min-width:64rem){._12fk1aio{grid-template-areas:"banner banner banner banner" "ribbon top-bar top-bar top-bar" "ribbon side-nav main aside"}._12qzrxre{grid-template-rows:auto auto 3fr}._1rqteala{grid-template-columns:auto auto minmax(0,1fr) auto}}
8
+ @media (min-width:90rem){._xkmgks3h{grid-template-areas:"banner banner banner banner banner" "ribbon top-bar top-bar top-bar top-bar" "ribbon side-nav main aside panel"}._jbc7rxre{grid-template-rows:auto auto 3fr}._tyve1nco{grid-template-columns:auto auto minmax(0,1fr) auto auto}}
@@ -3,20 +3,18 @@ import "./root.compiled.css";
3
3
  import { ax, ix } from "@compiled/react/runtime";
4
4
  import React, { useEffect, useRef } from 'react';
5
5
  import { OpenLayerObserver } from '@atlaskit/layering/experimental/open-layer-observer';
6
- import { fg } from '@atlaskit/platform-feature-flags';
7
6
  import { SkipLinksProvider } from '../../context/skip-links/skip-links-provider';
8
7
  import { TopNavStartProvider } from '../../context/top-nav-start/top-nav-start-context-provider';
9
8
  import { DangerouslyHoistSlotSizes } from './hoist-slot-sizes-context';
10
- import { SideNavElementProvider } from './side-nav/element-context';
11
- 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';
12
11
  import { SideNavToggleButtonProvider } from './side-nav/toggle-button-provider';
13
12
  import { SideNavVisibilityProvider } from './side-nav/visibility-provider';
14
13
 
15
14
  // ID of the root element that the banner and top bar slots hoist their sizes to. Only internally exported.
16
15
  export var gridRootId = 'unsafe-design-system-page-layout-root';
17
16
  var styles = {
18
- root: "_1e0c11p5 _1tke1kxc _1lmcq9em _yv0ei47z _2z0516ab _1ciragmp _12fkuz0r _12qzrxre _1rqt70if _xkmgbaui _jbc7rxre _tyve1jg8",
19
- ribbon: "_12fk1aio _12qzrxre _1rqteala _xkmgks3h _jbc7rxre _tyve1nco"
17
+ root: "_1e0c11p5 _1tke1kxc _1lmcq9em _yv0ei47z _2z0516ab _1ciragmp _12fk1aio _12qzrxre _1rqteala _xkmgks3h _jbc7rxre _tyve1nco"
20
18
  };
21
19
 
22
20
  /**
@@ -59,7 +57,7 @@ export function Root(_ref) {
59
57
  testId: testId
60
58
  }, /*#__PURE__*/React.createElement("div", {
61
59
  ref: ref,
62
- className: ax([styles.root, fg('platform_dst_nav4_ribbon_slot') && styles.ribbon, xcss]),
60
+ className: ax([styles.root, xcss]),
63
61
  id: gridRootId,
64
62
  "data-testid": testId
65
63
  }, children)))))))));
@@ -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,23 +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
- var IsSideNavShortcutEnabledContext = /*#__PURE__*/createContext(false);
10
-
11
- /**
12
- * Provider for the `IsSideNavShortcutEnabledContext`.
13
- */
14
- export function IsSideNavShortcutEnabledProvider(_ref) {
15
- var children = _ref.children,
16
- isSideNavShortcutEnabled = _ref.isSideNavShortcutEnabled;
17
- return /*#__PURE__*/React.createElement(IsSideNavShortcutEnabledContext.Provider, {
18
- value: isSideNavShortcutEnabled
19
- }, children);
20
- }
21
-
22
- /**
23
- * Returns the value of the `isSideNavShortcutEnabled` prop from the `Root` component, which
24
- * is shared through context.
25
- */
26
- export function useIsSideNavShortcutEnabled() {
27
- return useContext(IsSideNavShortcutEnabledContext);
28
- }
9
+ export var IsSideNavShortcutEnabledContext = /*#__PURE__*/createContext(false);
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { IsSideNavShortcutEnabledContext } from './is-side-nav-shortcut-enabled-context';
3
+ export function IsSideNavShortcutEnabledProvider(_ref) {
4
+ var children = _ref.children,
5
+ isSideNavShortcutEnabled = _ref.isSideNavShortcutEnabled;
6
+ return /*#__PURE__*/React.createElement(IsSideNavShortcutEnabledContext.Provider, {
7
+ value: isSideNavShortcutEnabled
8
+ }, children);
9
+ }
@@ -0,0 +1,3 @@
1
+ import { createContext } from 'react';
2
+ import __noop from '@atlaskit/ds-lib/noop';
3
+ export var SetSideNavVisibilityState = /*#__PURE__*/createContext(__noop);
@@ -0,0 +1,9 @@
1
+ import React, { useRef } from 'react';
2
+ import { SideNavRefContext } from './side-nav-ref-context';
3
+ export function SideNavElementProvider(_ref) {
4
+ var children = _ref.children;
5
+ var sideNavRef = useRef(null);
6
+ return /*#__PURE__*/React.createElement(SideNavRefContext.Provider, {
7
+ value: sideNavRef
8
+ }, children);
9
+ }
@@ -0,0 +1,4 @@
1
+ import { createContext } from 'react';
2
+ export var 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 var 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 var 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 var SideNavVisibilityState = /*#__PURE__*/createContext(null);
8
-
9
- /**
10
- * Sets the visibility of the side nav.
11
- */
12
- export var SetSideNavVisibilityState = /*#__PURE__*/createContext(__noop);
6
+ export var SideNavVisibilityState = /*#__PURE__*/createContext(null);
@@ -16,27 +16,28 @@ import { OpenLayerObserverNamespaceProvider, useOpenLayerObserver } from '@atlas
16
16
  import { fg } from '@atlaskit/platform-feature-flags';
17
17
  import { monitorForElements } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
18
18
  import { media } from '@atlaskit/primitives/responsive';
19
- import { useSkipLinkInternal } from '../../../context/skip-links/skip-links-context';
20
- import { TopNavStartElement } from '../../../context/top-nav-start/top-nav-start-context';
19
+ import { useSkipLinkInternal } from '../../../context/skip-links/use-skip-link-internal';
20
+ import { TopNavStartElement } from '../../../context/top-nav-start/top-nav-start-element';
21
21
  import { useIsFhsEnabled } from '../../fhs-rollout/use-is-fhs-enabled';
22
22
  import { bannerMountedVar, contentHeightWhenFixed, contentInsetBlockStart, localSlotLayers, openLayerObserverSideNavNamespace, openLayerObserverTopNavStartNamespace, sideNavLiveWidthVar, sideNavPanelSplitterId, sideNavVar, UNSAFE_sideNavLayoutVar } from '../constants';
23
+ import { DangerouslyHoistCssVarToDocumentRoot } from '../dangerously-hoist-css-var-to-document-root';
23
24
  import { DangerouslyHoistSlotSizes } from '../hoist-slot-sizes-context';
24
- import { DangerouslyHoistCssVarToDocumentRoot } from '../hoist-utils';
25
- import { useLayoutId } from '../id-utils';
26
25
  import { PanelSplitterProvider } from '../panel-splitter/provider';
26
+ import { useLayoutId } from '../use-layout-id';
27
27
  import { useResizingWidthCssVarOnRootElement } from '../use-resizing-width-css-var-on-root-element';
28
28
  import { useSafeDefaultWidth } from '../use-safe-default-width';
29
- import { useSideNavRef } from './element-context';
30
29
  import { sideNavFlyoutCloseDelayMs } from './flyout-close-delay-ms';
31
- import { useIsSideNavShortcutEnabled } from './is-side-nav-shortcut-enabled-context';
30
+ import { SetSideNavVisibilityState } from './set-side-nav-visibility-state';
31
+ import { SideNavToggleButtonElement } from './side-nav-toggle-button-element';
32
32
  import { sideNavToggleTooltipKeyboardShortcut } from './side-nav-toggle-tooltip-keyboard-shortcut';
33
- import { SideNavToggleButtonElement } from './toggle-button-context';
33
+ import { SideNavVisibilityState } from './side-nav-visibility-state';
34
34
  import { useExpandSideNav } from './use-expand-side-nav';
35
+ import { useIsSideNavShortcutEnabled } from './use-is-side-nav-shortcut-enabled';
36
+ import { useSideNavRef } from './use-side-nav-ref';
35
37
  import { useSideNavToggleKeyboardShortcut } from './use-side-nav-toggle-keyboard-shortcut';
36
38
  import { useSideNavVisibility } from './use-side-nav-visibility';
37
39
  import { useSideNavVisibilityCallbacks } from './use-side-nav-visibility-callbacks';
38
40
  import { useToggleSideNav } from './use-toggle-side-nav';
39
- import { SetSideNavVisibilityState, SideNavVisibilityState } from './visibility-context';
40
41
  var panelSplitterResizingVar = '--n_snvRsz';
41
42
  // Used to share the side nav width with the panel splitter, which is rendered outside the side nav element
42
43
  // but positioned to stay at its right edge.
@@ -1,6 +1,7 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
2
2
  import React, { useState } from 'react';
3
- import { SideNavToggleButtonAttachRef, SideNavToggleButtonElement } from './toggle-button-context';
3
+ import { SideNavToggleButtonAttachRef } from './side-nav-toggle-button-attach-ref';
4
+ import { SideNavToggleButtonElement } from './side-nav-toggle-button-element';
4
5
 
5
6
  /**
6
7
  * Provider for the side nav toggle button contexts.