Tabs
Tabs are used to organize content by grouping similar information on the same page.Neutral selected states
When the platform-dst-tokens-finesse feature flag is enabled, this component uses the new neutral treatment for selected states.
21.2.1
Patch Changes
- Updated dependencies
21.2.0
Minor Changes
bd2c5b0112185, (opens new window) - Remove stale API report artifacts from published Platform packages.
Patch Changes
- Updated dependencies
21.1.1
Patch Changes
61154354c90e2, (opens new window) - Experimental React 19 support: widen the peer dependency range, use React 19 in development, and replace the React 16-only lorem helper in the overflow example while preserving its generated content. Test coverage remains partial.
21.1.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.jsonexportssubpaths 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
21.0.1
Patch Changes
46b479a38ec17, (opens new window) - Fix selected tab text colour on hover.
21.0.0
Major Changes
-
f0bf5f838abd5, (opens new window) - Apply Volt entry-point and barrel-removal standards across these packages. Publicexportsnow resolve directly to./src/*implementations instead of intermediate./src/entry-points/*re-exports.Migration
Prefer published subpaths over the package root or internal entry-point paths:
import Calendar from '@atlaskit/calendar/calendar'; import Drawer from '@atlaskit/drawer/drawer'; import { WidthObserver } from '@atlaskit/width-detector/width-observer'; import { DocumentViewer } from '@atlaskit/media-document-viewer/document-viewer';If you imported through internal entry-point modules, switch to the public subpath:
-import Calendar from '@atlaskit/calendar/entry-points/calendar'; +import Calendar from '@atlaskit/calendar/calendar'; -import WidthObserver from '@atlaskit/width-detector/src/WidthObserver'; +import { WidthObserver } from '@atlaskit/width-detector/width-observer';
Patch Changes
- Updated dependencies
20.1.3
Patch Changes
- Updated dependencies
20.1.2
Patch Changes
- Updated dependencies
20.1.1
Patch Changes
- Updated dependencies
20.1.0
Minor Changes
-
cd097a2111788, (opens new window) - Republish packages depending on@atlaskit/react-compiler-gatingso their published dependency reference is updated to the renamed@atlaskit/react-compiler-gatingscope.The earlier rename of
@atlassian/react-compiler-gatingto@atlaskit/react-compiler-gatingonly bumped the renamed package itself, so dependent packages were never republished and their published versions still referenced the old@atlassian/react-compiler-gatingname, which is not available in the public npm registry. This minor bump republishes all affected packages with the corrected dependency.
Patch Changes
- Updated dependencies
20.0.1
Patch Changes
ee28cf33718b0, (opens new window) - Add @atlaskit/react-compiler-gating as a runtime dependency to enable React Compiler platform gating.- Updated dependencies
20.0.0
Major Changes
-
f2dc9097319f0, (opens new window) - ### Dropped support for legacy Typescript 4 types. Typescript 5 is now the new minimum.Removes the
typesVersionsproperty anddist/types-ts4.5directory 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
19.1.0
Minor Changes
7d6e9b5e6e7c6, (opens new window) - Autofix: add explicit package exports (barrel removal)
19.0.5
Patch Changes
- Updated dependencies
19.0.4
Patch Changes
- Updated dependencies
19.0.3
Patch Changes
02483200273ec, (opens new window) - Enrol all Design System UI packages into the React Compiler with platform gating via isReactCompilerActivePlatform.- Updated dependencies
19.0.2
Patch Changes
e2085d35701ca, (opens new window) - Internal changes to remove unnecessary token fallbacks and imports from@atlaskit/theme- Updated dependencies
19.0.1
Patch Changes
7aef1e49e90ea, (opens new window) - Removes redundant fallback color values via @atlaskit/theme
19.0.0
Major Changes
-
38f89455de21d, (opens new window) - Removes@atlaskit/tabs/hooksentrypoint from public API. Use the hook exports from@atlaskit/tabsdirectly.Removes redundant utility files, split-out multi-export modules and restructures internal files.
Patch Changes
- Updated dependencies
18.3.5
Patch Changes
- Updated dependencies
18.3.4
Patch Changes
- Updated dependencies
18.3.3
Patch Changes
- Updated dependencies
18.3.2
Patch Changes
d989cffb3cf35, (opens new window) - Updated tab indicator height to align with new border styles.
18.3.1
Patch Changes
- Updated dependencies
18.3.0
Minor Changes
b867e641d818d, (opens new window) - Updated border radius values behind a feature gateplatform-dst-shape-theme-default.
18.2.5
Patch Changes
a60a82196851a, (opens new window) - Internal refactors to remove unused variables. No functional or public changes.- Updated dependencies
18.2.4
Patch Changes
- Updated dependencies
18.2.3
Patch Changes
- Updated dependencies
18.2.2
Patch Changes
- Updated dependencies
18.2.1
Patch Changes
- Updated dependencies
18.2.0
Minor Changes
2d90078a9d301, (opens new window) - [ux] Updates tabs styles to reflect our new visual design language. These changes were previously behind a feature flag and are now fully rolled out.
18.1.12
Patch Changes
39e543109ec09, (opens new window) - add type info to forwardRef components- Updated dependencies
18.1.11
Patch Changes
248faa32d4835, (opens new window) - Internal changes to how borders are applied.- Updated dependencies
18.1.10
Patch Changes
f0662cd7a143e, (opens new window) - Internal changes to how borders are applied.- Updated dependencies
18.1.9
Patch Changes
255837cfba315, (opens new window) - Internal changes to how border radius is applied.- Updated dependencies
18.1.8
Patch Changes
23bcc5bbc9cee, (opens new window) - Internal changes to how border radius is applied.- Updated dependencies
18.1.7
Patch Changes
- Updated dependencies
18.1.6
Patch Changes
4f9c3d070e96f, (opens new window) - Add support for tab-based Atlaskit documentation
18.1.5
Patch Changes
- Updated dependencies
18.1.4
Patch Changes
- Updated dependencies
18.1.3
Patch Changes
- #182316, (opens new window)
3e3e11916be69, (opens new window) - Migrated the internal usage of @atlaskit/focus-ring which uses Emotion for styling, to the new version built with Compiled CSS-in-JS.
18.1.2
Patch Changes
- Updated dependencies
18.1.1
Patch Changes
- #164146, (opens new window)
cb9fe0058ed87, (opens new window) - Updates package.json direct dependencies to align with actual usage.
18.1.0
Minor Changes
- #157071, (opens new window)
a149a0b1559ec, (opens new window) - We are testing the migration to the ADS Link component behind a feature flag. If this fix is successful it will be available in a later release.
Patch Changes
- Updated dependencies
18.0.3
Patch Changes
- #129972, (opens new window)
b2d69a39e6687, (opens new window) - Update@compiled/reactdependency for improved type checking support. - Updated dependencies
18.0.2
Patch Changes
- #125721, (opens new window)
a7e8de3d7b87f, (opens new window) - Update dependencies and remove unused files.
18.0.1
Patch Changes
- Updated dependencies
18.0.0
Major Changes
-
#117363, (opens new window)
10a0f7f6c2027, (opens new window) - This package'speerDependencieshave been adjusted forreactand/orreact-domto reflect the status of only supporting React 18 going forward. No explicit breaking change to React support has been made in this release, but this is to signify going forward, breaking changes for React 16 or React 17 may come via non-major semver releases.Please refer this community post for more details: https://community.developer.atlassian.com/t/rfc-78-dropping-support-for-react-16-and-rendering-in-a-react-18-concurrent-root-in-jira-and-confluence/87026, (opens new window)
Patch Changes
- Updated dependencies
17.3.0
Minor Changes
- #116138, (opens new window)
b50c5d5d65ae2, (opens new window) - Bump to the latest version of @compiled/react
Patch Changes
- Updated dependencies
17.2.4
Patch Changes
- Updated dependencies
17.2.3
Patch Changes
- Updated dependencies
17.2.2
Patch Changes
- #110415, (opens new window)
f082418019174, (opens new window) - Remove old codemods from package.
17.2.1
Patch Changes
- Updated dependencies
17.2.0
Minor Changes
- #109060, (opens new window)
4660ec858a305, (opens new window) - UpdateReactfrom v16 to v18
Patch Changes
- Updated dependencies
17.1.0
Minor Changes
- #104842, (opens new window)
72f5b10de1847, (opens new window) - Migrated from primitives components to primitives/compiled components
17.0.2
Patch Changes
- #103999, (opens new window)
9f62ecec4d422, (opens new window) - Update dependencies.
17.0.1
Patch Changes
- Updated dependencies
17.0.0
Major Changes
-
#168353, (opens new window)
cbd859b752028, (opens new window) - Migrated from@emotion/reactto@compiled/reactin order to improve performance, align with the rest of the Atlaskit techstack, and support React 18 Streaming SSR.Please note, in order to use this version of
@atlaskit/tabs, you will need to ensure that your bundler is configured to handle.cssimports correctly. Most bundlers come with built-in support for.cssimports, so you may not need to do anything. If you are using a different bundler, please refer to the documentation for that bundler to understand how to handle.cssimports.For more information on the migration, please refer to RFC-73 Migrating our components to Compiled CSS-in-JS, (opens new window).
16.5.4
Patch Changes
- Updated dependencies
16.5.3
Patch Changes
- #165531, (opens new window)
57f451bda8919, (opens new window) - Adds side-effect config to support Compiled css extraction in third-party apps
16.5.2
Patch Changes
- Updated dependencies
16.5.1
Patch Changes
- Updated dependencies
16.5.0
Minor Changes
- #149420, (opens new window)
e775dd3c93d14, (opens new window) - Added ref forwarding to Tab component
16.4.2
Patch Changes
- Updated dependencies
16.4.1
Patch Changes
- Updated dependencies
16.4.0
Minor Changes
-
#127511, (opens new window)
db30e29344013, (opens new window) - Widening range ofreactandreact-dompeer dependencies from^16.8.0 || ^17.0.0 || ~18.2.0to 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.3as well as to have a consistent peer dependency range forreactandreact-domfor/platformpackages.
Patch Changes
- Updated dependencies
16.3.2
Patch Changes
- Updated dependencies
16.3.1
Patch Changes
- Updated dependencies
16.3.0
Minor Changes
- #119832, (opens new window)
0ed60e0ebfbeb, (opens new window) - apply styling to tabs behind a ff
16.2.4
Patch Changes
- Updated dependencies
16.2.3
Patch Changes
- Updated dependencies
16.2.2
Patch Changes
- Updated dependencies
16.2.1
Patch Changes
- Updated dependencies
16.2.0
Minor Changes
- #111016, (opens new window)
d131599730792, (opens new window) - Explicitly set jsxRuntime to classic via pragma comments in order to avoid issues where jsxRuntime is implicitly set to automatic.
Patch Changes
- Updated dependencies
16.1.2
Patch Changes
- Updated dependencies
16.1.1
Patch Changes
- Updated dependencies
16.1.0
Minor Changes
- #96791, (opens new window)
d85b0f65d608, (opens new window) - Add support for React 18 in non-strict mode.
16.0.0
Major Changes
- #92009, (opens new window)
ef3d43779d3a, (opens new window) - RemovedonMouseDownprop fromTabandTabPanel.
15.0.0
Major Changes
- #91586, (opens new window)
e229d87eecd0, (opens new window) - - [ux] Removed horizontal padding from Tab container to ensure Tab labels and panel content align with other elements on the page. Tab label hit-boxes remain the same.- Adjusted line height and overall Tab label height to be consistent with the Atlassian Design System.
14.1.0
Minor Changes
- #90584, (opens new window)
fccb64237f6c, (opens new window) - [ux] Internal changes to focus styles
14.0.5
Patch Changes
- #83116, (opens new window)
8d4e99057fe0, (opens new window) - Upgrade Typescript from4.9.5to5.4.2
14.0.4
Patch Changes
- Updated dependencies
14.0.3
Patch Changes
- Updated dependencies
14.0.2
Patch Changes
- Updated dependencies
14.0.1
Patch Changes
- Updated dependencies
14.0.0
Major Changes
- #41866, (opens new window)
ed8b6957789, (opens new window) - Removes any usage of deprecated legacy theming APIs. These have been superseeded by design tokens.
13.4.9
Patch Changes
- #40650, (opens new window)
07aa588c8a4, (opens new window) - Reverts the fix to text descender cut-off, due to incompatibilities with Firefox and Safari.
13.4.8
Patch Changes
- Updated dependencies
13.4.7
Patch Changes
- #40919, (opens new window)
0cd2364f0ec, (opens new window) - This package is now onboarded onto the product push model.
13.4.6
Patch Changes
- #39749, (opens new window)
e6b69f455c3, (opens new window) - Connect yarn changeset to packages, upgrade adf-schema
13.4.5
Patch Changes
- #38753, (opens new window)
e7f99a81404, (opens new window) - Update to usexcsswhere possible. There should be no difference in behaviour. - Updated dependencies
13.4.4
Patch Changes
- #38209, (opens new window)
56b444b56a8, (opens new window) - Fix a bug where text descenders were cut off at high zoom levels on Windows
13.4.3
Patch Changes
- #35441, (opens new window)
599bfe90ee3, (opens new window) - Internal change to use shape tokens. There is no expected visual change.
13.4.2
Patch Changes
- #33793, (opens new window)
9d00501a414, (opens new window) - Ensure legacy types are published for TS 4.5-4.8
13.4.1
Patch Changes
- #33649, (opens new window)
41fae2c6f68, (opens new window) - Upgrade Typescript from4.5.5to4.9.5
13.4.0
Minor Changes
- #33258, (opens new window)
56507598609, (opens new window) - Skip minor dependency bump
Patch Changes
- Updated dependencies
13.3.13
Patch Changes
- #30849, (opens new window)
7156bd737b4, (opens new window) - Internal changes to some tokens. Should be a no-op.
13.3.12
Patch Changes
- Updated dependencies
13.3.11
Patch Changes
- Updated dependencies
13.3.10
Patch Changes
- #27891, (opens new window)
eadbf13d8c0, (opens new window) - Updated usages ofText,Box,Stack, andInlineprimitives to reflect their updated APIs. There are no visual or behaviour changes. - Updated dependencies
13.3.9
Patch Changes
- #28064, (opens new window)
b0f6dd0bc35, (opens new window) - Updated to use typography tokens. There is no expected behaviour or visual change.
13.3.8
Patch Changes
- Updated dependencies
13.3.7
Patch Changes
- Updated dependencies
13.3.6
Patch Changes
- Updated dependencies
13.3.5
Patch Changes
- #25984, (opens new window)
0637c50e226, (opens new window) - Updated Tabs compnent to prefer to use focus-visible over focus css selectors.
13.3.4
Patch Changes
- #25860, (opens new window)
e35fc41dc33, (opens new window) - Internal change to use updated primtive spacing prop values. No expected behaviour change. - Updated dependencies
13.3.3
Patch Changes
- #26303, (opens new window)
9827dcb82b8, (opens new window) - No-op change to introduce spacing tokens to design system components.
13.3.2
Patch Changes
- #24710, (opens new window)
0d42cd1c926, (opens new window) - Internal changes to the way styles are applied. There should be no noticeable changes to consumers.
13.3.1
Patch Changes
- #24874, (opens new window)
8cc2f888c83, (opens new window) - Upgrade Typescript from4.3.5to4.5.5
13.3.0
Minor Changes
- #24004, (opens new window)
7ec1c1a023f, (opens new window) - Updates@emotion/coreto@emotion/react; v10 to v11. There is no expected behavior change.
Patch Changes
- Updated dependencies
13.2.13
Patch Changes
- #24492, (opens new window)
8d4228767b0, (opens new window) - Upgrade Typescript from4.2.4to4.3.5.
13.2.12
Patch Changes
- #23381, (opens new window)
f0056770cce, (opens new window) - Internal code change turning on new linting rules.
13.2.11
Patch Changes
- Updated dependencies
13.2.10
Patch Changes
- #20650, (opens new window)
cb2392f6d33, (opens new window) - Upgrade to TypeScript 4.2.4
13.2.9
Patch Changes
- Updated dependencies
13.2.8
Patch Changes
- #19618, (opens new window)
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
13.2.7
Patch Changes
- Updated dependencies
13.2.6
Patch Changes
- #16752, (opens new window)
19d72473dfb, (opens new window) - The no-unsafe-design-token-usage eslint rule now respects the new token naming conventions when auto-fixing by correctly formatting token ids. - Updated dependencies
13.2.5
Patch Changes
- Updated dependencies
13.2.4
Patch Changes
- #15998, (opens new window)
f460cc7c411, (opens new window) - Builds for this package now pass through a tokens babel plugin, removing runtime invocations of the tokens() function and improving bundle size. - Updated dependencies
13.2.3
Patch Changes
- Updated dependencies
13.2.2
Patch Changes
- Updated dependencies
13.2.1
Patch Changes
- Updated dependencies
13.2.0
Minor Changes
-
#13302, (opens new window)
cc54bf994d6, (opens new window) - Instrumented Tabs 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
af4bca32ad4, (opens new window) - Internal changes to supress eslint rules.- Updated dependencies
13.1.4
Patch Changes
- #12837, (opens new window)
9a84a3ceb82, (opens new window) - Internal code changes. - Updated dependencies
13.1.3
Patch Changes
- #12880, (opens new window)
378d1cef00f, (opens new window) - Bump@atlaskit/themeto version^11.3.0.
13.1.2
Patch Changes
- #12328, (opens new window)
ecbf4a3267f, (opens new window) - [ux] Fix tabs focus ring in the windows high contrast mode - Updated dependencies
13.1.1
Patch Changes
- #12167, (opens new window)
d6f7ff383cf, (opens new window) - Updates to development dependencystorybook-addon-performance
13.1.0
Minor Changes
- #10569, (opens new window)
4f40ecb4471, (opens new window) - [ux] AddedHomeandEndkeys handlers for tablist. Changed arrow keys handlers to make tabs cycled. Now when you press the left arrow key on the first tab the last tab will be selected and when you press right arrow key on the last tab the first tab will be selected
Patch Changes
- Updated dependencies
13.0.1
Patch Changes
- Updated dependencies
13.0.0
Major Changes
-
#9756, (opens new window)
c17fe6144f8, (opens new window) - ### Major ChangesIn this version,
Tabshas had a pretty substantial rewrite. As well as now being dramatically faster and more lightweight, it has a brand new flexible composable API and a bunch of accessibility improvements.Composable API
The old version of
Tabshad atabsprop that would map toTabItem's andTabContent's.import Tabs from '@atlaskit/tabs'; const ComponentUsingTabs = () => ( <Tabs tabs={ { label: 'Tab 1', content: 'One' }, { label: 'Tab 2', content: 'Two' }, { label: 'Tab 3', content: 'Three' }, ]} /> );We've changed the language to match the W3 spec so a
TabItemis now aTaband aTabContentis aTabPanel. We now export these components as well as aTabListso consumers use a composable API that matches the DOM structure.import Tabs, { Tab, TabList, TabPanel } from '@atlaskit/tabs'; const ComponentUsingTabs = () => ( <Tabs id="component-using-tabs" > <TabList> <Tab>Tab 1</Tab> <Tab>Tab 2</Tab> <Tab>Tab 3</Tab> </TabList> <TabPanel> One </TabPanel> <TabPanel> Two </TabPanel> <TabPanel> Three </TabPanel> </Tabs> );This allows you to easily customise your usage, for example if you want to add a tooltip.
import Tabs, { Tab, TabList, TabPanel } from '@atlaskit/tabs'; import Tooltip from '@atlaskit/tooltip'; const TooltipTab = ({ label, tooltip }: { label: string; tooltip: string }) => ( <Tooltip content={tooltip}> <Tab>{label}</Tab> </Tooltip> ); const ComponentUsingTabs = () => ( <Tabs id="component-using-tabs" > <TabList> <TooltipTab label="Tab 1" tooltip="Tooltip for tab 1" /> <TooltipTab label="Tab 2" tooltip="Tooltip for tab 2" /> <TooltipTab label="Tab 3" tooltip="Tooltip for tab 3" /> </TabList> <TabPanel> One </TabPanel> <TabPanel> Two </TabPanel> <TabPanel> Three </TabPanel> </Tabs> );Hooks replacing Component prop
The
componentprop allowed you to customise theTabandTabPanel. This approach seemed counter-intuitive and had a performance impact regardless of whether you were using it. Instead with composability we have have added two hooks,useTabanduseTabPanel.To create a custom
Tab, calluseTaband spread those attributes onto the custom tab. From there you can use it in place of aTab. For example if you want to change the font size you would do so like this.import { useTab } from '@atlaskit/tabs'; const CustomTab = ({ label }: { label: string }) => { const tabAttributes = useTab(); return ( <div css={css` font-size: 16px; `} {...tabAttributes} > {label} </div> ); };Likewise, to create a custom
TabPanel, calluseTabPaneland spread those attributes onto the custom tab panel.import { useTabPanel } from '@atlaskit/tabs'; const CustomTabPanel = ({ body }: { body: string }) => { const tabPanelAttributes = useTabPanel(); return ( <div css={css` margin: 12px; `} {...tabPanelAttributes} > {body} </div> ); };onSelect -> onChange
The
onSelectprop has been renamed toonChangeto be consistent with other design system components. Internal state has now changed to keep track of the selected index. Previously the object in thetabsprop array of typeTabDatawas passed as well as the index. If you were using this object you will have to change to use the index.The type has changed from
(selected: TabData, selectedIndex: number, analyticsEvent: UIAnalyticsEvent) => void;to(index: number, analyticsEvent: UIAnalyticsEvent) => void;This also means if you are using the
selectedprop you will have to ensure you are using the index of the selected tab instead of the object of typeTabData.isSelectedTest
Previously you could provide the prop
isSelectedTesttoTabsand it would determine what tab is selected by seeing what tab returns true whenisSelectedTestis called. This is a messy API that effectively means there were two ways of makingTabscontrolled. If you are usingisSelectedTestyou should swap to using theselectedprop to indicate that a tab is selected.Accessibility and required ID
According to the w3 spec each tab should be linked to its corresponding tab panel. We have added the
aria-controlsattribute to tabs and thearia-labelledbyattribute to tab panels. In order to do this we needed to generate a unique id for each tab and tab panel. To ensure these id's are unique if there are multipleTabscomponents on the same page there is now a requiredidprop.shouldUnmountTabPanelOnChange
There was previously a prop
isContentPersistedwhich defaults to false. When true it would render all tab panels. The new default behaviour ofTabsis to leave each tab panel mounted on the page after it has been selected. This means that tab panels will only mount if selected and will not unmount and remount when changing tabs. In light of this change,isContentPersistedhas been removed andshouldUnmountTabPanelOnChangehas been introduced. It defaults to false and if it is set to true it will unmount aTabPanelwhen it is not selected. EffectivelyshouldUnmountTabPanelOnChangeis the inverse ofisContentPersisted.Other changes
- Remove
TabItemandTabContentexport. - Remove the types:
TabItemElementProps,TabItemComponentProvided,TabContentComponentProvided,TabItemType,TabContentType,SelectedProp,IsSelectedTestFunction,OnSelectCallback,TabsState,TabsNavigationPropsandMode.
- Remove
Patch Changes
4a969d5c40f, (opens new window) - Fix a bug where the active element is blurred instead of the current element when clicked.1adf9a493f5, (opens new window) - Fix codemod issue- Updated dependencies
12.1.3
Patch Changes
- #8644, (opens new window)
79c23df6340, (opens new window) - Use injected package name and version for analytics instead of version.json.
12.1.2
Patch Changes
- #6930, (opens new window)
e795d0a849, (opens new window) - TheTabscomponent now uses emotion instead of styled-components for it's internal styling.
12.1.1
Patch Changes
- #5857, (opens new window)
d3265f19be, (opens new window) - Transpile packages using babel rather than tsc
12.1.0
Minor Changes
- #6228, (opens new window)
98c957d889, (opens new window) - [ux] Content of tabs will be preserved on the DOM while switching between tabs
12.0.6
Patch Changes
- #5497, (opens new window)
5f58283e1f, (opens new window) - Export types using Typescript's new "export type" syntax to satisfy Typescript's --isolatedModules compiler option. This requires version 3.8 of Typescript, read more about how we handle Typescript versions here: https://atlaskit.atlassian.com/get-started, (opens new window) Also addtypescripttodevDependenciesto denote version that the package was built with.
12.0.5
Patch Changes
- Updated dependencies
12.0.4
Patch Changes
- #4707, (opens new window)
6360c46009, (opens new window) - Reenable integration tests for Edge browser
12.0.3
Patch Changes
-
#3885, (opens new window)
6c525a8229, (opens new window) - Upgraded to TypeScript 3.9.6 and tslib to 2.0.0Since tslib is a dependency for all our packages we recommend that products also follow this tslib upgrade to prevent duplicates of tslib being bundled.
12.0.2
Patch Changes
- #3293, (opens new window)
954cc87b62, (opens new window) - The readme and package information has been updated to point to the new design system website.
12.0.1
Patch Changes
- #3428, (opens new window)
db053b24d8, (opens new window) - Update all the theme imports to be tree-shakable
12.0.0
Major Changes
- #3335, (opens new window)
87f4720f27, (opens new window) - Officially dropping IE11 support, from this version onwards there are no warranties of the package working in IE11. For more information see: https://community.developer.atlassian.com/t/atlaskit-to-drop-support-for-internet-explorer-11-from-1st-july-2020/39534, (opens new window)
Patch Changes
- Updated dependencies
11.2.11
Patch Changes
- #2866, (opens new window)
54a9514fcf, (opens new window) - Build and supporting files will no longer be published to npm
11.2.10
Patch Changes
- #2137, (opens new window)
54d82b49f0, (opens new window) - Remove unused dependencies
11.2.9
Patch Changes
- Updated dependencies
11.2.8
Patch Changes
-
[patch]b41c0887cd, (opens new window):
Change imports to comply with Atlassian conventions- Updated dependencies 3940bd71f1, (opens new window):
-
Updated dependencies fd41d77c29, (opens new window):
- @atlaskit/tooltip@15.2.6
- @atlaskit/webdriver-runner@0.3.4
11.2.7
Patch Changes
- Updated dependencies 66dcced7a0, (opens new window):
- Updated dependencies 64fb94fb1e, (opens new window):
- Updated dependencies eea5e9bd8c, (opens new window):
- Updated dependencies 109c1a2c0a, (opens new window):
- Updated dependencies
c57bb32f6d, (opens new window):
- @atlaskit/docs@8.4.0
- @atlaskit/webdriver-runner@0.3.0
- @atlaskit/spinner@12.1.6
- @atlaskit/tooltip@15.2.5
11.2.6
Patch Changes
- Updated dependencies
e3f01787dd, (opens new window):
- @atlaskit/webdriver-runner@0.2.0
- @atlaskit/spinner@12.1.5
- @atlaskit/tooltip@15.2.4
11.2.5
Patch Changes
-
[patch]6548261c9a, (opens new window):
Remove namespace imports from React, ReactDom, and PropTypes- Updated dependencies 6548261c9a, (opens new window):
- @atlaskit/docs@8.3.2
- @atlaskit/visual-regression@0.1.9
- @atlaskit/analytics-next@6.3.5
- @atlaskit/spinner@12.1.4
- @atlaskit/theme@9.5.1
- @atlaskit/tooltip@15.2.3
11.2.4
Patch Changes
-
[patch]4a223473c5, (opens new window):
Removes babel/runtime from dependencies. Users should see a smaller bundlesize as a result- Updated dependencies 82747f2922, (opens new window):
-
Updated dependencies 4a223473c5, (opens new window):
- @atlaskit/theme@9.5.0
- @atlaskit/spinner@12.1.3
- @atlaskit/tooltip@15.2.1
11.2.3
Patch Changes
-
[patch]36f6e99c5b, (opens new window):
Fix type errors caused when generating declaration files
11.2.2
Patch Changes
-
[patch]d222c2b987, (opens new window):
Theme has been converted to Typescript. Typescript consumers will now get static type safety. Flow types are no longer provided.
Breaking
** getTokens props changes ** When defining the value function passed into a ThemeProvider, the getTokens parameter cannot be called without props; if no props are provided an empty object
{}must be passed in:<CustomTheme.Provider value={t => ({ ...t(), backgroundColor: '#333'})} >becomes:
<CustomTheme.Provider value={t => ({ ...t({}), backgroundColor: '#333'})} >** Color palette changes ** Color palettes have been moved into their own file. Users will need to update imports from this:
import { colors } from '@atlaskit/theme'; colors.colorPalette('8');to this:
import { colorPalette } from '@atlaskit/theme'; colorPalette.colorPalette('8');or for multi entry-point users:
import * as colors from '@atlaskit/theme/colors'; colors.colorPalette('8');to this:
import * as colorPalettes from '@atlaskit/theme/color-palette'; colorPalettes.colorPalette('8');
11.2.1
Patch Changes
-
[patch]35d2229b2a, (opens new window):
Adding missing license to packages and update to Copyright 2019 Atlassian Pty Ltd.
11.2.0
Minor Changes
-
[minor]99957d4a20, (opens new window):
Adding an optional prop
testIdthat will set the attribute valuedata-testid. It will help products to write better integration and end to end tests.
11.1.1
Patch Changes
-
[patch]a2d0043716, (opens new window):
Updated version of analytics-next to fix potential incompatibilities with TS 3.6
11.1.0
Minor Changes
-
[minor]c6efb2f5b6, (opens new window):
Prefix the legacy lifecycle methods with UNSAFE_* to avoid warning in React 16.9+
More information about the deprecation of lifecycles methods can be found here: https://reactjs.org/blog/2018/03/29/react-v-16-3.html#component-lifecycle-changes, (opens new window)
11.0.9
Patch Changes
-
[patch]097b696613, (opens new window):
Components now depend on TS 3.6 internally, in order to fix an issue with TS resolving non-relative imports as relative imports
11.0.8
Patch Changes
-
[patch]ecca4d1dbb, (opens new window):
Upgraded Typescript to 3.3.x
11.0.7
Patch Changes
-
[patch]708028db86, (opens new window):
Change all the imports to theme in Core to use multi entry points
11.0.6
Patch Changes
-
[patch]de35ce8c67, (opens new window):
Updates component maintainers
11.0.5
Patch Changes
-
[patch]926b43142b, (opens new window):
Analytics-next has been converted to Typescript. Typescript consumers will now get static type safety. Flow types are no longer provided. No behavioural changes.
Breaking changes
withAnalyticsForSumTypePropsalias has been removed, please usewithAnalyticsEventsAnalyticsContextWrappedCompalias has been removed, please usewithAnalyticsContext
Breaking changes to TypeScript annotations
withAnalyticsEventsnow infers proptypes automatically, consumers no longer need to provide props as a generic type.withAnalyticsContextnow infers proptypes automatically, consumers no longer need to provide props as a generic type.- Type
WithAnalyticsEventPropshas been renamed toWithAnalyticsEventsPropsto match source code - Type
CreateUIAnalyticsEventSignaturehas been renamed toCreateUIAnalyticsEventto match source code - Type
UIAnalyticsEventHandlerSignaturehas been renamed toUIAnalyticsEventHandlerto match source code - Type
AnalyticsEventsPayloadhas been renamed toAnalyticsEventPayload - Type
ObjectTypehas been removed, please useRecord<string, any>or[key: string]: any - Type
UIAnalyticsEventInterfacehas been removed, please useUIAnalyticsEvent - Type
AnalyticsEventInterfacehas been removed, please useAnalyticsEvent - Type
CreateAndFireEventFunctionremoved and should now be inferred by TypeScript - Type
AnalyticsEventUpdaterremoved and should now be inferred by TypeScript
11.0.4
Patch Changes
-
[patch]3342f64d5e, (opens new window):
Removed unused dependencies from package.json for tabs: keycode was unused.
11.0.3
Patch Changes
-
[patch]f34776be97, (opens new window):
Type definition files are now referenced in package.json
11.0.2
Patch Changes
-
[patch]9f8ab1084b, (opens new window):
Consume analytics-next ts type definitions as an ambient declaration.
11.0.1
Patch Changes
-
[patch]d0db01b410, (opens new window):
TypeScript users of withAnalyticsEvents and withAnalyticsContext are now required to provide props as a generic type. This is so that TypeScript can correctly calculate the props and defaultProps of the returned component.
Before:
withAnalyticsEvents()(Button) as ComponentClass<Props>;After:
withAnalyticsEvents<Props>()(Button);
11.0.0
Major Changes
-
[major]61a919319a, (opens new window):
@atlaskit/tabs has been converted to Typescript. Typescript consumers will now get static type safety. Flow types are no longer provided. No API or behavioural changes. tabIndex now only accepts type number.
10.0.4
Patch Changes
-
[patch]4615439434, (opens new window):
index.ts will now be ignored when publishing to npm
10.0.3
- Updated dependencies
67f06f58dd, (opens new window):
- @atlaskit/tooltip@15.0.0
10.0.2
- [patch]b0ef06c685, (opens new window):
- This is just a safety release in case anything strange happened in in the previous one. See Pull Request #5942 for details
10.0.1
- Updated dependencies
215688984e, (opens new window):
- @atlaskit/spinner@12.0.0
10.0.0
- [major]7c17b35107, (opens new window):
- Updates react and react-dom peer dependencies to react@^16.8.0 and react-dom@^16.8.0. To use this package, please ensure you use at least this version of react and react-dom.
9.0.1
- Updated dependencies
9c0b4744be, (opens new window):
- @atlaskit/docs@7.0.3
- @atlaskit/spinner@10.0.7
- @atlaskit/tooltip@13.0.4
- @atlaskit/theme@8.1.7
9.0.0
-
[major]76299208e6, (opens new window):
- Drop ES5 from all the flow modules
Dropping CJS support in all @atlaskit packages
As a breaking change, all @atlaskit packages will be dropping cjs distributions and will only distribute esm. This means all distributed code will be transpiled, but will still contain
importandexportdeclarations.The major reason for doing this is to allow us to support multiple entry points in packages, e.g:
import colors from `@atlaskit/theme/colors`;Previously this was sort of possible for consumers by doing something like:
import colors from `@atlaskit/theme/dist/esm/colors`;This has a couple of issues. 1, it treats the file system as API making internal refactors harder, we have to worry about how consumers might be using things that aren't actually supposed to be used. 2. We are unable to do this internally in @atlaskit packages. This leads to lots of packages bundling all of theme, just to use a single color, especially in situations where tree shaking fails.
To support being able to use multiple entrypoints internally, we unfortunately cannot have multiple distributions as they would need to have very different imports from of their own internal dependencies.
ES Modules are widely supported by all modern bundlers and can be worked around in node environments.
We may choose to revisit this solution in the future if we find any unintended condequences, but we see this as a pretty sane path forward which should lead to some major bundle size decreases, saner API's and simpler package architecture.
Please reach out to #fabric-build (if in Atlassian) or create an issue in Design System Support, (opens new window) (for external) if you have any questions or queries about this.
8.0.11
- Updated dependencies 58b84fa, (opens new window):
- @atlaskit/analytics-next@3.1.2
- @atlaskit/spinner@9.0.13
- @atlaskit/theme@7.0.1
- @atlaskit/tooltip@12.1.13
- @atlaskit/docs@6.0.0
8.0.10
- Updated dependencies d13242d, (opens new window):
- @atlaskit/docs@5.2.3
- @atlaskit/spinner@9.0.12
- @atlaskit/tooltip@12.1.12
- @atlaskit/theme@7.0.0
8.0.9
- [patch] Adds missing implicit @babel/runtime dependency b71751b, (opens new window)
8.0.8
- [patch] Adds sideEffects: false to allow proper tree shaking b5d6d04, (opens new window)
8.0.6
- [patch] Updated dependencies
df22ad8, (opens new window)
- @atlaskit/theme@6.0.0
- @atlaskit/tooltip@12.0.9
- @atlaskit/spinner@9.0.6
- @atlaskit/docs@5.0.6
8.0.5
- [patch] update the dependency of react-dom to 16.4.2 due to vulnerability in previous versions read https://reactjs.org/blog/2018/08/01/react-v-16-4-2.html, (opens new window) for details a4bd557, (opens new window)
- [none] Updated dependencies
a4bd557, (opens new window)
- @atlaskit/tooltip@12.0.5
- @atlaskit/analytics-next@3.0.4
- @atlaskit/theme@5.1.3
- @atlaskit/spinner@9.0.5
8.0.4
- [patch] Updated dependencies
acd86a1, (opens new window)
- @atlaskit/tooltip@12.0.4
- @atlaskit/theme@5.1.2
- @atlaskit/spinner@9.0.4
- @atlaskit/analytics-next@3.0.3
- @atlaskit/docs@5.0.2
8.0.3
- [patch] Add a SSR test for every package, add react-dom and build-utils in devDependencies 7e331b5, (opens new window)
- [none] Updated dependencies
7e331b5, (opens new window)
- @atlaskit/tooltip@12.0.3
- @atlaskit/analytics-next@3.0.2
- @atlaskit/theme@5.1.1
- @atlaskit/spinner@9.0.3
8.0.2
- [patch] Move analytics tests and replace elements to core 49d4ab4, (opens new window)
- [none] Updated dependencies
49d4ab4, (opens new window)
- @atlaskit/tooltip@12.0.1
- @atlaskit/analytics-next@3.0.1
- @atlaskit/spinner@9.0.2
- @atlaskit/docs@5.0.1
8.0.1
- [patch] Updated dependencies
e6b1985, (opens new window)
- @atlaskit/tooltip@12.0.0
8.0.0
- [major] Provides analytics for common component interations. See the Instrumented Components, (opens new window) section for more details. If you are using enzyme for testing you will have to use our forked version of the library, (opens new window). 563a7eb, (opens new window)
- [major] Updates to React ^16.4.0 7edb866, (opens new window)
- [major] Updated dependencies
563a7eb, (opens new window)
- @atlaskit/tooltip@11.0.0
- @atlaskit/analytics-next@3.0.0
- @atlaskit/theme@5.0.0
- @atlaskit/spinner@9.0.0
- @atlaskit/docs@5.0.0
- [major] Updated dependencies
7edb866, (opens new window)
- @atlaskit/tooltip@11.0.0
- @atlaskit/analytics-next@3.0.0
- @atlaskit/theme@5.0.0
- @atlaskit/spinner@9.0.0
- @atlaskit/docs@5.0.0
7.1.3
- [patch] Updated dependencies
cdba8b3, (opens new window)
- @atlaskit/spinner@8.0.0
7.1.2
- [patch] Clean Changelogs - remove duplicates and empty entries e7756cd, (opens new window)
- [none] Updated dependencies
e7756cd, (opens new window)
- @atlaskit/tooltip@10.2.1
- @atlaskit/theme@4.0.4
- @atlaskit/spinner@7.0.2
7.1.1
- [patch] Update changelogs to remove duplicate cc58e17, (opens new window)
- [none] Updated dependencies
cc58e17, (opens new window)
- @atlaskit/theme@4.0.3
- @atlaskit/spinner@7.0.1
- @atlaskit/docs@4.1.1
7.1.0
- [patch] Updated dependencies
9d20f54, (opens new window)
- @atlaskit/spinner@7.0.0
- @atlaskit/tooltip@10.2.0
- @atlaskit/docs@4.1.0
- @atlaskit/theme@4.0.2
7.0.1
- [patch] Update readme's 223cd67, (opens new window)
- [patch] Updated dependencies
223cd67, (opens new window)
- @atlaskit/tooltip@10.0.1
- @atlaskit/theme@4.0.1
- @atlaskit/spinner@6.0.1
- @atlaskit/docs@4.0.1
7.0.0
- [major] makes styled-components a peer dependency and upgrades version range from 1.4.6 - 3 to ^3.2.6 1e80619, (opens new window)
- [patch] Updated dependencies
1e80619, (opens new window)
- @atlaskit/tooltip@10.0.0
- @atlaskit/theme@4.0.0
- @atlaskit/spinner@6.0.0
- @atlaskit/docs@4.0.0
6.0.3
- [patch] Updated dependencies
d662caa, (opens new window)
- @atlaskit/tooltip@9.2.1
- @atlaskit/theme@3.2.2
- @atlaskit/spinner@5.0.2
- @atlaskit/docs@3.0.4
6.0.1
- [patch] Update types 0073768, (opens new window)
6.0.0
- [major] Bump to React 16.3. 4251858, (opens new window)
5.2.1
- [patch] Re-releasing due to potentially broken babel release 9ed0bba, (opens new window)
5.2.0
- [minor] Update styled-components dependency to support versions 1.4.6 - 3 ceccf30, (opens new window)
5.1.3
- [patch] updated the repository url to https://bitbucket.org/atlassian/atlaskit-mk-2, (opens new window) 1e57e5a, (opens new window)
5.1.2
- [patch] Tabs now abide by selected prop when tabs and selected props both change, instead of using internal selected state 3facabc, (opens new window)
5.1.1
- [patch] Packages Flow types for elements components 3111e74, (opens new window)
5.1.0
- [minor] Add React 16 support. 12ea6e4, (opens new window)
5.0.1
- [patch] fix tabs so that it re-renders when content props update 9b039dd, (opens new window)
5.0.0
- [major] Re-write tabs to provide a more flexible API. Breaking changes: 1) The package no longer exports TabsStateless. The Tabs component manages its own state by default, but will behave as a controlled component if the selectedTab prop is set. 2) The component no longer recognises the defaultSelected property on individual tab objects. Tabs now takes a defaultSelectedTab prop which accepts either a tab object or tab index. 3) The tabs prop is now required - the component will not render if this prop is not set. 4) It is no longer possible to render Tabs without a tab being selected. If the defaultSelectedTab and selectedTab props are not set the first tab will be selected by default. 10a5a5a, (opens new window)
4.1.0
- [minor] Update type for label to accept string 0d0ca5f, (opens new window)
4.0.5
- [patch] Migrate to ak-mk-2 4c679a0, (opens new window)
4.0.4 (2017-11-17)
- bug fix; bumping internal dependencies to latest version (f87bb04, (opens new window))
4.0.3 (2017-10-26)
- bug fix; fix to rebuild stories (793b2a7, (opens new window))
4.0.2 (2017-10-22)
- bug fix; update styled-components dep and react peerDep (6a67bf8, (opens new window))
4.0.1 (2017-10-04)
- bug fix; tabs now hide overflow, and ellipsis text-overflow (issues closed: #ak3519) (aa91734, (opens new window))
4.0.0 (2017-08-11)
- bug fix; fix the theme-dependency (db90333, (opens new window))
- breaking; affects internal styled-components implementation (d14522a, (opens new window))
- breaking; implement dark mode theme (d14522a, (opens new window))
- bug fix; fix prop types (8abfd3c, (opens new window))
- bug fix; make tab types clearer (3071418, (opens new window))
- bug fix; move babel-plugin-react-flow-props-to-prop-types to devDep (e1cd3aa, (opens new window))
- feature; dark mode for Tabs, plus a bunch of cleanup for the component and its docs (a111cf2, (opens new window))
3.0.0 (2017-08-11)
- breaking; affects internal styled-components implementation (d14522a, (opens new window))
- breaking; implement dark mode theme (d14522a, (opens new window))
- bug fix; fix prop types (8abfd3c, (opens new window))
- bug fix; make tab types clearer (3071418, (opens new window))
- bug fix; move babel-plugin-react-flow-props-to-prop-types to devDep (e1cd3aa, (opens new window))
- feature; dark mode for Tabs, plus a bunch of cleanup for the component and its docs (a111cf2, (opens new window))
2.4.2 (2017-07-27)
- fix; rename jsnext:main to jsnext:experimental:main temporarily (c7508e0, (opens new window))
2.4.1 (2017-07-25)
- fix; use class transform in loose mode in babel to improve load performance in apps (fde719a, (opens new window))
2.1.0 (2017-07-17)
- fix; rerelease, failed prepublish scripts (5fd82f8, (opens new window))
2.1.0 (2017-07-17)
- feature; added ES module builds to dist and add jsnext:main to most ADG packages (ea76507, (opens new window))
2.0.0 (2017-05-30)
- refactor tabs to styled-components. Rename StatelessTabs named export to TabsSta (b77172d, (opens new window))
- breaking; Rename StatelessTabs named export to TabsStateless for consistency.
- ISSUES CLOSED: #AK-2396
1.3.3 (2017-05-26)
- fix; add prop-types as a dependency to avoid React 15.x warnings (92598eb, (opens new window))
- fix; pin react-lorem-component version to avoid newly released broken version (6f3d9c6, (opens new window))
1.3.2 (2017-04-27)
- fix; update legal copy to be more clear. Not all modules include ADG license. (f3a945e, (opens new window))
1.3.1 (2017-04-26)
- fix; update legal copy and fix broken links for component README on npm. New contribution and (0b3e454, (opens new window))
1.3.0 (2017-04-20)
- feature; removed explicit style! imports, set style-loader in webpack config (891fc3c, (opens new window))
1.2.8 (2017-03-23)
- fix; empty commit to force release of tabs (47d958e, (opens new window))
1.2.6 (2017-03-21)
- fix; maintainers for all the packages were added (261d00a, (opens new window))
1.2.5 (2017-02-22)
- fix; trigger onSelect prop on keyboard nav (71bb315, (opens new window))
1.2.4 (2017-02-10)
- fix; render tabs with flex content correctly in FF and IE11 (dc181da, (opens new window))
1.2.2 (2017-02-07)
- fix; Updates docs to use https to load demo image (0468d4d, (opens new window))
- fix; small design fixes for tabs (d3a6666, (opens new window))
1.2.0 (2017-02-03)
- fix; support centering of tab flex children (87fe198, (opens new window))
- feature; support fitting tabs inside a flex box container (4158cd8, (opens new window))