Page layout

A collection of components which let you compose an application's page layout.

Deprecated

This package is deprecated. Use our new navigation system.

5.5.6

Patch Changes

5.5.5

Patch Changes

  • Updated dependencies

5.5.4

Patch Changes

  • Updated dependencies

5.5.3

Patch Changes

  • 1715d48a722a2, (opens new window) - Migrate responsive styling to typed canonical CSS media-query keys. Allow those keys in the UI Styling Standard and report non-canonical queries used with satisfies.
  • Updated dependencies

5.5.2

Patch Changes

  • Updated dependencies

5.5.1

Patch Changes

  • Updated dependencies

5.5.0

Minor Changes

Patch Changes

  • Updated dependencies

5.4.0

Minor Changes

  • d82e6f76528ab, (opens new window) - Add direct subpath package exports as part of the linking-platform, search, media, and design-system barrel-removal (de-barrel) migration.

    These packages now expose their individual modules via explicit package.json exports subpaths so that consumers can import directly from the leaf module (e.g. @atlaskit/pkg/thing) instead of the package barrel/index. This adds new public entry points without changing or removing any existing exports, so it is a backwards-compatible additive change.

    No runtime behaviour changes; this is an API-surface (entry-point) addition to support tree-shaking and to unblock removal of the barrel index files.

Patch Changes

  • Updated dependencies

5.3.0

Minor Changes

Patch Changes

  • Updated dependencies

5.2.7

Patch Changes

5.2.6

Patch Changes

  • Updated dependencies

5.2.5

Patch Changes

  • Updated dependencies

5.2.4

Patch Changes

  • Updated dependencies

5.2.3

Patch Changes

  • Updated dependencies

5.2.2

Patch Changes

  • Updated dependencies

5.2.1

Patch Changes

  • Updated dependencies

5.2.0

Minor Changes

  • 015a98b324278, (opens new window) - Adopt motion.button.hovered / motion.button.pressed tokens for hover/press background transitions in custom button-like components (inline-edit read view, navigation-system top-nav pressable, and page-layout resize control grab area), gated behind the platform-dst-motion-uplift-button feature flag.

Patch Changes

  • Updated dependencies

5.1.0

Minor Changes

  • cd097a2111788, (opens new window) - Republish packages depending on @atlaskit/react-compiler-gating so their published dependency reference is updated to the renamed @atlaskit/react-compiler-gating scope.

    The earlier rename of @atlassian/react-compiler-gating to @atlaskit/react-compiler-gating only bumped the renamed package itself, so dependent packages were never republished and their published versions still referenced the old @atlassian/react-compiler-gating name, which is not available in the public npm registry. This minor bump republishes all affected packages with the corrected dependency.

Patch Changes

  • Updated dependencies

5.0.1

Patch Changes

5.0.0

Major Changes

  • f2dc9097319f0, (opens new window) - ### Dropped support for legacy Typescript 4 types. Typescript 5 is now the new minimum.

    Removes the typesVersions property and dist/types-ts4.5 directory from the dist.

    Types are now exclusively via the "types": "dist/types/index.d.ts" property.

    - "typesVersions": { - ">=4.5 <4.9": { - "*": [ - "dist/types-ts4.5/*", - "dist/types-ts4.5/index.d.ts" - ] - } - },

Patch Changes

  • Updated dependencies

4.3.3

Patch Changes

  • Updated dependencies

4.3.2

Patch Changes

4.3.1

Patch Changes

  • Updated dependencies

4.3.0

Minor Changes

4.2.40

Patch Changes

  • Updated dependencies

4.2.39

Patch Changes

4.2.38

Patch Changes

  • Updated dependencies

4.2.37

Patch Changes

  • Updated dependencies

4.2.36

Patch Changes

4.2.35

Patch Changes

4.2.34

Patch Changes

4.2.33

Patch Changes

  • Updated dependencies

4.2.32

Patch Changes

  • Updated dependencies

4.2.31

Patch Changes

  • Updated dependencies

4.2.30

Patch Changes

4.2.29

Patch Changes

  • Updated dependencies

4.2.28

Patch Changes

  • Updated dependencies

4.2.27

Patch Changes

  • Updated dependencies

4.2.26

Patch Changes

  • Updated dependencies

4.2.25

Patch Changes

  • Updated dependencies

4.2.24

Patch Changes

4.2.23

Patch Changes

  • Updated dependencies

4.2.22

Patch Changes

4.2.21

Patch Changes

4.2.20

Patch Changes

  • Updated dependencies

4.2.19

Patch Changes

  • Updated dependencies

4.2.18

Patch Changes

4.2.17

Patch Changes

  • Updated dependencies

4.2.16

Patch Changes

  • Updated dependencies

4.2.15

Patch Changes

  • Updated dependencies

4.2.14

Patch Changes

4.2.13

Patch Changes

4.2.12

Patch Changes

4.2.11

Patch Changes

  • Updated dependencies

4.2.10

Patch Changes

4.2.9

Patch Changes

  • Updated dependencies

4.2.8

Patch Changes

  • Updated dependencies

4.2.7

Patch Changes

  • Updated dependencies

4.2.6

Patch Changes

  • Updated dependencies

4.2.5

Patch Changes

4.2.4

Patch Changes

  • Updated dependencies

4.2.3

Patch Changes

  • Updated dependencies

4.2.2

Patch Changes

4.2.1

Patch Changes

  • Updated dependencies

4.2.0

Minor Changes

  • #147520, (opens new window) 88b9a0365fd5a, (opens new window) - Fixes the Left Sidebar with React 18 concurrent rendering turned on as client-side initialization animates the width of the left sidebar causing massive repaints and performance issues due to non-concurrent-safe logic. This delays the animation until that initialization has happened.

    This has no expected breaking changes, only a possible fix with concurrency.

Patch Changes

  • Updated dependencies

4.1.0

Minor Changes

4.0.4

Patch Changes

  • Updated dependencies

4.0.3

Patch Changes

  • Updated dependencies

4.0.2

Patch Changes

4.0.1

Patch Changes

  • Updated dependencies

4.0.0

Major Changes

Patch Changes

  • Updated dependencies

3.12.5

Patch Changes

  • Updated dependencies

3.12.4

Patch Changes

  • Updated dependencies

3.12.3

Patch Changes

  • Updated dependencies

3.12.2

Patch Changes

  • Updated dependencies

3.12.1

Patch Changes

  • Updated dependencies

3.12.0

Minor Changes

Patch Changes

  • Updated dependencies

3.11.8

Patch Changes

3.11.7

Patch Changes

3.11.6

Patch Changes

  • Updated dependencies

3.11.5

Patch Changes

  • Updated dependencies

3.11.4

Patch Changes

3.11.3

Patch Changes

  • Updated dependencies

3.11.2

Patch Changes

3.11.1

Patch Changes

  • Updated dependencies

3.11.0

Minor Changes

Patch Changes

  • Updated dependencies

3.10.4

Patch Changes

  • Updated dependencies

3.10.3

Patch Changes

  • Updated dependencies

3.10.2

Patch Changes

  • Updated dependencies

3.10.1

Patch Changes

  • Updated dependencies

3.10.0

Minor Changes

  • #127511, (opens new window) db30e29344013, (opens new window) - Widening range of react and react-dom peer dependencies from ^16.8.0 || ^17.0.0 || ~18.2.0 to the wider range of ``^16.8.0 || ^17.0.0 || ^18.0.0` (where applicable).

    This change has been done to enable usage of react@18.3 as well as to have a consistent peer dependency range for react and react-dom for /platform packages.

Patch Changes

  • Updated dependencies

3.9.1

Patch Changes

  • Updated dependencies

3.9.0

Minor Changes

3.8.0

Minor Changes

Patch Changes

  • Updated dependencies

3.7.0

Minor Changes

3.6.0

Minor Changes

3.5.1

Patch Changes

3.5.0

Minor Changes

Patch Changes

  • Updated dependencies

3.4.7

Patch Changes

3.4.6

Patch Changes

  • Updated dependencies

3.4.5

Patch Changes

3.4.4

Patch Changes

3.4.3

Patch Changes

  • Updated dependencies

3.4.2

Patch Changes

  • Updated dependencies

3.4.1

Patch Changes

  • Updated dependencies

3.4.0

Minor Changes

Patch Changes

  • Updated dependencies

3.3.3

Patch Changes

  • Updated dependencies

3.3.2

Patch Changes

3.3.1

Patch Changes

3.3.0

Minor Changes

3.2.2

Patch Changes

3.2.1

Patch Changes

  • Updated dependencies

3.2.0

Minor Changes

3.1.6

Patch Changes

3.1.5

Patch Changes

3.1.4

Patch Changes

3.1.3

Patch Changes

3.1.2

Patch Changes

3.1.1

Patch Changes

  • Updated dependencies

3.1.0

Minor Changes

3.0.0

Major Changes

  • #80897, (opens new window) 8ce3bb563079, (opens new window) - [ux] If you view a product in a small window or at higher zoom levels, the sidebar now changes sizes to keep all controls in view. In these smaller windows, the sidebar no longer opens on hover to avoid accidental opening.

    The sidebar is unchanged in views wider than 768 pixels.

    When viewing a product in a window narrower than 768px or zoomed in at 200%, you'll notice that hovering your cursor over the sidebar no longer expands the sidebar.

    To open the sidebar, select the expand sidebar button ( > icon). Select the button again to collapse the sidebar. You can also select the edge of the sidebar itself to expand and collapse it.

2.1.4

Patch Changes

  • Updated dependencies

2.1.3

Patch Changes

  • Updated dependencies

2.1.2

Patch Changes

  • Updated dependencies

2.1.1

Patch Changes

2.1.0

Minor Changes

2.0.2

Patch Changes

2.0.1

Patch Changes

2.0.0

Major Changes

1.8.4

Patch Changes

  • Updated dependencies

1.8.3

Patch Changes

1.8.2

Patch Changes

1.8.1

Patch Changes

1.8.0

Minor Changes

1.7.13

Patch Changes

1.7.12

Patch Changes

1.7.11

Patch Changes

1.7.10

Patch Changes

1.7.9

Patch Changes

1.7.8

Patch Changes

1.7.7

Patch Changes

  • Updated dependencies

1.7.6

Patch Changes

  • Updated dependencies

1.7.5

Patch Changes

1.7.4

Patch Changes

  • Updated dependencies

1.7.3

Patch Changes

  • Updated dependencies

1.7.2

Patch Changes

1.7.1

Patch Changes

1.7.0

Minor Changes

  • #35270, (opens new window) 7be6f82bb0d, (opens new window) - [ux] Behind tested behind a feature flag, we're testing new mobile functionality to keep our left sidebar in a "flyout" mode in mobile so navigation or content sits ontop of the main page content rather than crushing it.

    This is designed to be SSR-compatible as it's primarily CSS-based with some user-event driven logic around mobile breakpoints that should not be inmpacted by SSR rendering (and should return the default desktop experience if such a state is achieved).

1.6.5

Patch Changes

1.6.4

Patch Changes

1.6.3

Patch Changes

  • #34408, (opens new window) 4bbc131de00, (opens new window) - #### Fix: Resizing pages with <iframe>s

    Pages that contain <iframe> elements will now have a smoother resizing experience. <iframe> elements consume user events (eg mousemove) when the user is over the top of them. This is problematic for resizing as we need to have the latest user pointer movements to resize the sidebar. Now, while a resize is happening, pointer-events are blocked on <iframe> elements to prevent the <iframe> consuming user events.

    Fix: User cursor while resizing

    While resizing the users cursor will now always be ew-resize. Previously the cursor could change depending on what element the users pointer was over

    Fix: Resizing will no longer change user selection

    A user can select parts of a page (eg select a paragraph of text). Previously, in some cases, a user's selection could change due to a resizing operation. This has been fixed so that a resizing operation will no longer change a user's selection

    Fix: onResizeEnd

    onResizeEnd will no longer incorrectly get an empty object {} if the user resized into the collapsed state

1.6.2

Patch Changes

1.6.1

Patch Changes

1.6.0

Minor Changes

Patch Changes

  • Updated dependencies

1.5.0

Minor Changes

  • #32575, (opens new window) 2a9f6f800ef, (opens new window) - Fixes

    • onLeftSidebarExpand is no longer called when the sidebar is already open. onLeftSidebarExpand oculd previously be incorrectly called if a user resized an expanded sidebar to slightly smaller than the default sidebar width, or when the user cancelled a sidebar resizing operation with the "Escape" key
    • the latest provided onLeftSidebarCollapse and onLeftSidebarExpand functions are now called when collapsing / expanding respectively. Previously, only the initial onLeftSidebarCollapse and onLeftSidebarExpand were called (due to a stale closure)
    • onLeftSidebarCollapse and onLeftSidebarExpand are now called with the latest state values. Previously there were only ever called with the initial left sidebar state value (due to a stale closure)

    Improvements

    • no longer possible to trigger the collapse of the sidebar when it is already collapsed
    • no longer possible to trigger an expand of the sidebar when it is already expanded
    • triggering an expand while the sidebar is collapsing will now flush the pending onLeftSidebarExpand
    • triggering an collapse while the sidebar is expanding will now flush the pending onLeftSidebarCollapse
    • only adding the event listener for "transitionend" when the sidebar is expanding or collapsing.
    • removing "transitionend" event listener when <LeftSidebar /> is unmounted
    • explicitly aborting pending collapse / expand actions when <LeftSidebar /> is unmounted while collapsing / expanding.

1.4.0

Minor Changes

  • #32516, (opens new window) 955ee3ea8fe, (opens new window) - [ux] fix: if a "mousedown", "click", "resize" or "visibilitychange" event occurs while the sidebar is being resized, then the resizing operation will end

    [ux] new: if a user presses the "Escape" key while the sidebar is being resized, then the resizing operation will end

1.3.10

Patch Changes

1.3.9

Patch Changes

  • Updated dependencies

1.3.8

Patch Changes

1.3.7

Patch Changes

1.3.6

Patch Changes

  • Updated dependencies

1.3.5

Patch Changes

  • Updated dependencies

1.3.4

Patch Changes

  • Updated dependencies

1.3.3

Patch Changes

1.3.2

Patch Changes

1.3.1

Patch Changes

1.3.0

Minor Changes

Patch Changes

  • Updated dependencies

1.2.8

Patch Changes

1.2.7

Patch Changes

1.2.6

Patch Changes

1.2.5

Patch Changes

1.2.4

Patch Changes

1.2.3

Patch Changes

  • Updated dependencies

1.2.2

Patch Changes

1.2.1

Patch Changes

  • Updated dependencies

1.2.0

Minor Changes

Patch Changes

  • ac9343c3ed4, (opens new window) - Replaces usage of deprecated design tokens. No visual or functional changes
  • ad0e912661a, (opens new window) - Styles have been rewritten to be static, in preparation for compiled adoption.
  • 8940901481d, (opens new window) - [ux] The width of right sidebars with fixed positioning (<RightSidebar isFixed />) has been fixed. Previously they had automatic sizing, which led to inconsistencies in appearance between static and fixed positioning.
  • 62edf20ab1e, (opens new window) - Migrates all usage of brand tokens to either selected or information tokens. This change is purely for semantic reasons, there are no visual or behavioural changes.
  • Updated dependencies

1.1.0

Minor Changes

  • #19019, (opens new window) 567a96da90e, (opens new window) - [ux] Instrumented page-layout with the new theming package, @atlaskit/tokens. New tokens will be visible only in applications configured to use the new Tokens API (currently in alpha).These changes are intended to be interoperable with the legacy theme implementation. Legacy dark mode users should expect no visual or breaking changes.

Patch Changes

  • Updated dependencies

1.0.7

Patch Changes

1.0.6

Patch Changes

1.0.5

Patch Changes

  • Updated dependencies

1.0.4

Patch Changes

1.0.3

Patch Changes

1.0.2

Patch Changes

1.0.1

Patch Changes

1.0.0

Major Changes

Patch Changes

  • Updated dependencies

0.11.0

Minor Changes

Patch Changes

0.10.14

Patch Changes

0.10.13

Patch Changes

0.10.12

Patch Changes

0.10.11

Patch Changes

0.10.10

Patch Changes

0.10.9

Patch Changes

0.10.8

Patch Changes

0.10.7

Patch Changes

0.10.6

Patch Changes

0.10.5

Patch Changes

0.10.4

Patch Changes

0.10.3

Patch Changes

  • Updated dependencies

0.10.2

Patch Changes

  • #4765, (opens new window) 4cf354b500, (opens new window) - Adds the ability to register custom skip links to be displayed in the PageLayout skip link menu. Now if you have an element that isn't a slot of the PageLayout component, you can still provide a helpful and accessible way to jump straight to it!

    Import the new useCustomSkipLink hook and pass in the taget id and a skipLinkTitle and it will add a new link to the element with a matching id, no matter where it is in the document. You can also choose what position the link will show up in the menu by using the optional listIndex prop.

0.10.1

Patch Changes

0.10.0

Minor Changes

0.9.4

Patch Changes

0.9.3

Patch Changes

0.9.2

Patch Changes

0.9.1

Patch Changes

0.9.0

Minor Changes

0.8.6

Patch Changes

0.8.5

Patch Changes

0.8.4

Patch Changes

0.8.3

Patch Changes

0.8.2

Patch Changes

0.8.1

Patch Changes

0.8.0

Minor Changes

Patch Changes

  • Updated dependencies

0.7.0

Minor Changes

Patch Changes

0.6.1

Patch Changes

  • Updated dependencies

0.6.0

Minor Changes

0.5.2

Patch Changes

0.5.1

Patch Changes

0.5.0

Minor Changes

0.4.2

Patch Changes

0.4.1

Patch Changes

0.4.0

Minor Changes

Patch Changes

0.3.3

Patch Changes

0.3.2

Patch Changes

0.3.1

Patch Changes

0.3.0

Minor Changes

0.2.0

Minor Changes

  • [minor]278f466be0, (opens new window):

    Split page layout to allow tree shaking, allow resize button to have an override and add the required resizeButtonLabel prop to ResizeControl

0.1.3

Patch Changes

0.1.2

Patch Changes

0.1.1

Patch Changes

0.1.0

Minor Changes

  • [minor]9015d5614a, (opens new window):

    BREAKING

    • Make ResizeControl composable. If it's not passed as a child to LeftSidebar, it will not be resizable.

    NON-BREAKING

    • Fix a bug with flyout behaviour in non-fixed mode. It no longer pushes body content to the side.
    • Fix a bug where Main couldn't handle wide content without breaking the layout.
    • Fixed the bug where expanding the LeftSidebar always set the width to 240px instead of users' cached width.

0.0.4

Patch Changes

0.0.3

Patch Changes

0.0.2

Patch Changes

Was this page helpful?
We use this feedback to improve our documentation.
© 2026 AtlassianTrademark, (opens new window)Privacy, (opens new window)License