Honeycomb

Honeycomb React changes by version

All notable changes to Honeycomb React will be reflected in this file.

The format is inspired by Keep a Changelog, and this project adheres to Semantic Versioning.

[16.0.0] - 2026-02-25

Migrating from 13 to 16? Check out the Migration Guide for a smooth experience.

Added

  • wide modifier prop to PagerItem component;
  • ThemeWrapper component:
    • dark and tvm props to toggle modes independently of themes;
    • dark="user-preference" functionality moved from useThemeSwitcher hook to ThemeWrapper prop;
  • Calendar component:
    • New prop: dayProps that will be forwarded to each individual day button in the calendar body;
    • New prop: multiSelectable to allow externally controlling the aria-multiselectable attribute from the grid element;
    • Mew prop: calendarHeader to pass a different calendar header and handle any custom props;
    • New header: CalendarHeaderSimple component and support for monthsAtATime to choose how many months should be sown at a given time;
    • handleSelect called back with the click event that triggered it in addition to the date;
    • Range modifier added when hovering a new start end when it already has a selected end date;
  • DatePicker controller;
  • Helpers styles added to SSR context;

Breaking changes

  • Avatar:
    • size prop now accepts numbers instead of t-shirt sizes;
    • default size has changed to spacing-4;
  • ThemeWrapper themes prop signature changed, and now accepts only an array of the desired themes instead of an object with theme name + tokens;
  • themeFlixDark, themeFlixTvm, themeKamilDark, themeKamilTvm, themeNeptuneDark, themeNeptuneTvm token files removed;
    • The modes tokens have been incorporated into each respective theme file and will be handled by the ThemeWrapper;
  • Calendar:
    • defaultMonth default value changed from new Date() to startDate;
    • endDate default value changed from new Date(2019, 10, 0) to the last day of the same month in startDate;
  • useSmartPosition hook now works with refs differently (use the refs returned from the hook instead of passing them as params);
  • Some input components id prop now no longer accepts numbers (only string), to keep them in line with other Input components and the type definitions from React and HTML attributes:
    • Checkbox
    • ChoiceWrapperItem
    • PhoneInput
    • Quantity
    • Radio
    • Range
    • Select
    • SelectGroup options
    • Switch
    • Textarea
  • Helpers functions are now considered hooks, due to SSR context, and must be called inside of a Component lifecycle;
  • Order, spacing and color of the icons within form inputs and Autocomplete was consistently aligned: these icons now have content-primary-color applied to them;
  • Fieldset default itemSpacing value removed; Honeycomb static library controls it via CSS depending on the layout from now on;

Changed

  • themeFlix, themeKamil, themeNeptune, themeHighContrast exports contain the entire theme object instead of only the design tokens;
  • Removed aria-live from Calendar grid when appearance is birthday or compact;

Deleted

  • dist/scss/honeycomb-themes.scss endpoint removed due to it being redundant. Use dist/scss/themes/all.scss for the similar functionality or, better yet, import only the themes you actually need from dist/scss/themes.
  • checkbox prop on DataTableHead, DataTableFoot and DataTableRow. Move the Checkbox inside of the table cell and control the rows selected state via selected props;
  • Passing plain th and td elements as children. Use the dedicated DataTableCell component that will handle adding the required cell class names;
  • HoneyBem.init function. Use new HoneyBem constructor instead;
  • Passing Legend as children to Fieldset component is no longer supported. Use the legend prop instead.

Deprecated

  • PagerArrow component; You may use Icon components as children of regular PagerItem components instead;
  • contentFit prop in Pager component;
  • useThemeSwitcher hook is not needed anymore, you can achieve the same results easily with new ThemeWrapper dark mode options;
  • Calendar props:
    • dayLabel: Use dayProps to return an aria-label as rest props instead.
    • appearance, compactPrevButton, compactNextButton, compactSelect, birthdaySelectMonth, birthdaySelectYear: Use the newly added calendarHeader prop with one of the newly added CalendarHeader components.

Under the hood

  • Upgrade honeycomb to 16.0.0;
  • Upgrade chromatic to 15.1.1;
  • Upgrade globals to 17.3.0;
  • Upgrade stylelint to 17.3.0 and plugins;
  • Increases eslint max code length from 100 to 120 chars;
  • Added HCInputLabelComponentProps to hc-types to simplify handling inputs with either label or aria-label prop;
  • Added HCInputComponentPropsWithReqId to hc-types to use with input components that have required id;
  • Removed redundant declaration of id prop or replaced with types from hc-types on the following components:
    • Autocomplete
    • ChoiceWrapper
    • Fieldset
    • Input
    • InputField
    • Range quarks
    • SelectGroup
  • Move Injecss constants (HCR_VERSION_SUFFIX, CLIENT_ID_NAMESPACE, IS_BROWSER) to constants.ts file;
  • Updates Storybook to ver. 10.2;
  • Migrates Storybook setup to Vite;
  • Introduces vite-plugin-injecss-loader plugin to handle Injecss specific CSS loading in components with Vite;
  • Moved shared calendar props to newly added CalendarContext and CalendarMonthContext;
  • Added CalendarButton quark and more unit tests for calendar sub components;
  • Added handleAriaErrorMessage to PropsUtils;

[15.0.0] & [14.0.0] - 2026-02-25

Notes

  • As of the release of v16.0.0 we skipped majors 14 and 15 to sync up both Honeycomb libraries major versions.
  • Versions 14 and 15 do not exist and can be safely skipped.
  • We reserve the right to use these versions if there is a pressing need to release a smaller chunk of breaking changes.

[13.11.1] - 2026-02-13

Fixed

  • Panel, NavTabBar and HeaderBurgerMenu not respecting the safe areas on mobile devices.

[13.11.0] - 2026-02-04

Added

  • useSmartPosition hook now returns target and element refs;

Fixed

  • useSmartPosition hook not working properly due to nor tracking the ref updates;

Deprecated

  • targetRef, elementRef props for useSmartPosition hook, please use ref callbacks returned from the hook;

[13.10.0] - 2026-02-02

Added

  • TagGroup component;

Under the hood

  • Updates honeycomb to 15.7.0;
  • Updates honeycomb-icons-react to 10.4.0;

[13.9.0] - 2026-01-12

Added

  • Support for right and left values for divider prop in DataTableCol component;
  • New props divider, collapsed, sticky and hideStickyDivider for DataTableCell component;

Under the hood

  • Updates honeycomb to 15.6.1;

[13.8.0] - 2025-12-17

Changed

  • children prop is now optional for NavItem components if aria-label is provided (allows for icon only NavItem)
  • Updates types for Button to support "children or aria-label" validation on a TS level;

[13.7.1] - 2025-12-01

Documentation

  • Added an example on how to recreate a custom select by using the Autocomplete;

Fixed

  • HeaderBurgerMenu not animating transition when open state changes;
  • HeaderBurgerMenu not blocking page scroll whe open; Added disableBodyStyleModifications to control this behavior;
  • TooltipTarget not adding aria-expanded to handy buttons such as ToggleButton;
  • SideBarBrand missing interaction states;
  • NavTabBarItem not fetching the styles correctly;

Under the hood

  • HeaderBurgerMenu: replace prop conditional with useControllableState hook for controllable open state;

[13.7.0] - 2025-11-26

Added

  • Fieldset props:
    • noWrap to prevent items wrapping to new line on horizontal layout;
    • legend replaces passing legend and children to remove code complexity filtering children;

Changed

  • Fieldset items wrapper added to match new markup from Honeycomb 15.5.0;
  • Fieldset item spacing modifiers applied to component container instead of individual items;

Under the hood

  • Updates honeycomb to 15.5.0;
  • Updates honeycomb-icons-react to 10.3.0;
  • Patch up dev dependencies and updates snapshots to match new jest source url;

[13.6.2] - 2025-11-19

Fixed

  • Autocomplete not aligning the icons placed within buttons passed to icon slot props;

[13.6.1] - 2025-11-03

Fixed

  • SideBarNavItem not attaching the className from the extraClasses prop properly;
  • Prevents listbox position recalculations in Autocomplete to cause infinite re-renders in certain cases;
  • Improves performance for position calculations, reducing the number of calculation calls;

[13.6.0] - 2025-10-21

Added

  • resetKey prop that allows resetting DataTableSorter sorting order;
  • disabled prop to comboboxProps of Autocomplete;

Fixed

  • Autocomplete scrolls listbox to the very bottom in certain cases when the options structure was not followed;
  • HeaderSubNavigation sometimes not closing sub menus when another menu is opened;
  • Pager and Select components not allowing nested arrays as children;

[13.5.1] - 2025-10-13

Fixed

  • Issues with Autocomplete when it's used as a controlled component with react-hook-form in certain cases;
  • Issues with Autocomplete when options were out of sync between the state and the prop due to memoization;

[13.5.0] - 2025-09-29

Added

  • shouldCloseDialog prop to LanguageSwitcherPopupItem.

Documentation

  • Updates developers documentation regarding test setup.

[13.4.1] - 2025-09-08

Documentation

  • Adjusts HeaderUserWidget examples to use smaller avatars.

[13.4.0] - 2025-08-28

Added

  • PhoneInput:
    • useFutureValueBehavior future flag prop to PhoneInput component to enable usage of controllable value prop;
    • defaultValue prop support to replace value prop when useFutureValueBehavior is enabled;

Fixed

  • PhoneInput: height too big due to paddings on selectAddon component;

Under the hood

  • Fixes circular dependency on data table exports;

[13.3.1] - 2025-08-26

Fixed

  • Form input components throwing an error if React memo is passed as a custom label component;

[13.3.0] - 2025-08-12

Added

  • Autocomplete now responds to external options state update;

Changed

  • onDebounce callback in Autocomplete is no more required to return a Promise, it can either act as a simple callback function or return an array of options

[13.2.2] - 2025-08-05

Fixed

  • NavHorizontal, NavSide, NavTabBar and HeaderNavigation not supporting conditional rendering for their children;

Documentation

  • Fixes more broken links in component docs;

Under the hood

  • Adjusts CI configuration to support single number older version deployments;

[13.2.1] - 2025-07-30

Documentation

  • Adjusts component documentation links to a more consistent format;

Fixed

  • Small checkbox border-radius too small due to hardcoded value on TVM themes;

Under the hood

  • Update to honeycomb 15.3.0;
  • Replace deprecated primary-border-radius usage with new border-radius-1;

[13.2.0] - 2025-07-17

Added

  • IconFrame component;

Under the hood

  • Upgrades honeycomb to 15.2.0;

[13.1.1] - 2025-07-17

Fixed

  • NavHorizontal current page indicator overlapping with neighboring components in certain cases;

Under the hood

  • Upgrades honeycomb to 15.1.1;

[13.1.0] - 2025-07-11

Added

  • showCols and columns props for the DataTable;
  • DataTableCell component;
  • DataTableCol component;
  • DataTableHead allows passing header cells wrapped in a DataTableRow as children to allow complex header setup;

Deprecated

  • checkbox prop on DataTableHead, DataTableFoot and DataTableRow due to inability to make it really useful for users;
    • You should move the Checkbox inside of a table cell and normally control the rows selected state via selected props.
  • Passing plain th and td elements as children for DataTableRow components;
    • Please use the DataTableCell component that will handle adding the cell class names which will enable new features and improvements;

Fixed

  • HeaderSkipLinks not allowing conditionals as children;

Under the hood

  • Added table atom: TableCell;
  • Added __row element class names to DataTableFoot and DataTableHead rows;

[13.0.2] - 2025-07-07

Fixed

  • Autocomplete throwing an error when Enter is pressed but there are no options found;

[13.0.1] - 2025-07-03

Fixed

  • Tooltip throwing an error in a SSR environment;

[13.0.0] - 2025-07-01

Migrating from 12 to 13? Check out the Migration Guide for a smooth experience.

Added

  • New prop fixed that enables fixed positioning for Tooltip component;
  • New prop srOnly for NavItem component;
  • New props stretch and innerRef for ProgressTracker component;
  • New prop Component to support the use of ProgressTracker as the underlying component for the Tabs controller;
  • ProgressTrackerItem added more role options and support for button as an element type;

Breaking changes

  • ProgressTrackerItem prop role is now changes the role of the outer li element;
  • DescriptionList, DescriptionTerm and DescriptionDetails components renamed as follows:
    • DescriptionList -> ListDescription
    • DescriptionTerm -> ListDescriptionTerm
    • DescriptionDetails -> ListDescriptionDetails

Changed

  • Autocomplete adds focus outline to list box options when selecting with keyboard arrow keys;
  • Grid children type is more flexible, allowing null, boolean, string and numbers as well as GrdCol components;
  • Tooltip and Dropdown components now align more prominently around the center of the targets;

Deprecated

  • completedSrText prop in ProgressTrackerItem. Please use srOnly prop instead;

Fixed

  • Autocomplete removed double hover layer effect from list box options checkboxes on multiple selection;

Under the hood

  • Upgrade to honeycomb 15;
  • Upgrade to Node.js v22;
  • Finalizes Typescript migration covering all the source code;
  • Refactored ProgressTrackerItem to use NavItem and only handle the completed related props;
  • HeaderUserWidget moved to its own folder;
  • GridCol moved inside of Grid folder and exports adjusted accordingly;
  • GridCol tests rewritten to asserts and not overly reliance on snapshots;
  • Upgrade to storybook and all dependencies from 8 to 9.0.15;
  • Upgrade jest and related dependencies from 29 to 30;
  • Upgrade chromatic to 13;
  • Upgrade lint-staged to 16;
  • Upgrade react-router-dom to 7;

[12.6.0] - 2025-06-19

Added

  • Spinner props: danger, showValue, value, valueMax, valueMin and unit;

Documentation

  • Spinner documentation and examples for making progress and timer spinners;

Fixed

  • Missing types exports for SideBarNavItem and ProgressTrackerItem;
  • Missing toggle class names for SideBar toggle button;

Under the hood

  • Upgrades Honeycomb to 14.5.0;

[12.5.4] - 2025-06-17

Fixed

  • Wrong return type for useSmartPosition hook;

Under the hood

  • Adjusts honeycomb-icons-react peer dependency to support ver. 10 of the package;

[12.5.3] - 2025-06-13

Fixed

  • DataTableSorter callback argument type to limit it only to the sorting keys and not an overly generic string;

Under the hood

  • Upgrades Honeycomb to 14.4.2;

[12.5.2] - 2025-06-05

Fixed

  • Removes mock imports from Autocomplete examples replacing them with local variables;
  • Error state on ChoiceWrapper with radio inputs failing document conformance with ARIA attributes due to deprecation in in ARIA 1.2;
  • Missing ConnectionStop types;

Under the hood

  • ChoiceWrapper implementation refactored to make it easier to follow the data flow and to customize implementation based on multi prop;
  • Renames connection readme files;

[12.5.1] - 2025-06-03

Fixed

  • Incorrect code block attributes in some of the component readme files;
  • Missing imports in Pager examples;
  • Improves developer documentation;
  • Corrects folder structure to be consistent in naming for some components;

[12.5.0] - 2025-05-26

Added

  • The following hooks have been given proper documentation, exported on the library and exposed on the styleguide:
    • useLockBodyScroll;
    • useBrowser;
    • useIsFirstRender;
    • usePortal;
    • useDelayedHidden;

Under the hood

  • Migrates usePortal to TypeScript;
  • Renames useBodyStyleModifications hook to useLockBodyScroll;
  • Makes the following hooks private:
    • useComponentId;
    • useSubMenuInitialFocusManager;
    • useTabTrap;
    • useVisibilityToggler;
    • useScrollableTabIndex;

[12.4.6] - 2025-05-26

Fixed

  • Tags with small modifier set correct relative size for icons, and no longer set a fixed "size="3" for the icons as it's not needed anymore;
  • Calendar prop hidden not working due to styles overriding the default hidden behavior;
  • Pager current items not properly aligned with the other items;

Under the hood

  • Upgrades Honeycomb to 14.4.1;

[12.4.5] - 2025-05-16

Fixed

  • Autocomplete combobox styles colliding with the ones from the Input component;

[12.4.4] - 2025-05-13

Fixed

  • ListBox optionsToDisplay prop not working on production;

[12.4.3] - 2025-04-29

Fixed

  • Tag with close button too big when not using the small modifier;
  • CalendarControl using aria-selected instead of aria-pressed;

Under the hood

  • Adds storybook stories for Honeycomb React exclusive components;
  • Adds support for chromatic visual regression tests;

[12.4.2] - 2025-04-29

Fixed

  • Adjusts .npmignore settings
    • adds component tsx files to the bundle;
    • removes a bunch of test and deployment related configs;
  • Renames some of the component files and folders for consistency;

[12.4.1] - 2025-04-24

Fixed

  • Native onToggle event handler included in Tooltip and Dropdown props, when they are not actually being handled as their native counterparts;
  • ListBox renderOption parameters type wrongfully declared as optional;
  • Types for useSmartPosition refs not matching the refs provided to Tooltip and Dropdown components;

Under the hood

  • Renames and exports ListBoxRenderOptionParams;

[12.4.0] - 2025-04-22

Added

  • controls prop for Calendar component, allowing users to create calendar presets;
  • hoverDayCondition prop for Calendar component, enabling the hover state modifier in a similar fashion to the disableDayCondition;
  • CalendarControl component that wraps the Tag Component and simplifies some of the boilerplate necessary for managing calendar controls;
  • Calendar component support for ...rest props;

Fixed

  • Calendar setting aria-current="date" to all date cells
  • Initializing formatter hooks without arguments throws an error (even though arguments are optional);

Under the hood

  • Upgrades Honeycomb to 14.4.0;
  • Unit tests for CalendarBody;

[12.3.1] - 2025-04-15

Fixed

  • Fixed typing of ChoiceWrapperItemProps, omitting props from base type before creating a union type;

[12.3.0] - 2025-04-04

Added

  • Exposed innerRef and inputFieldRef in the autocomplete combobox props to better the integration with external form management libraries;

Changed

  • When pressing "Enter" on Autocomplete without focusing an option will select the first option of the list;

Documentation

  • Added examples to showcase integrating Autocomplete with React Hook Form and Formik;

Fixed

  • Fixed combobox tags for selected options not expanding when limitSelectedOptions is set and the combobox is expanded;
  • Fixed autocomplete onDebounce being called with the wrong lit of options instead of the one from the prop;

[12.2.1] - 2025-04-02

Fixed

  • Calendar allows for selecting days outside the specified range if its appearance set to birthday;

Under the hood

  • Improves Calendar example covering the case of departure and arrival selection;

[12.2.0] - 2025-04-01

Added

  • Autocomplete list box options call renderOption function with added parameters: { option, highlightQuery, shouldHighlightTitle, shouldHighlightSubtitle };

Changed

  • Autocomplete and ListBox options prop is now optional and has a default value of [];

Fixed

  • Autocomplete onDebounce unnecessary calls whenever the inputValue changed;
  • Autocomplete onChange and onToggle being called on first render unnecessarily;

Under the hood

  • Adds useIsFirstRender hook;
  • Autocomplete optionIdTemplate and handleComboboxKeyDown moved out of Context and into regular props to promote decoupling and prevent unnecessary rerenders of the component tree;
  • Autocomplete onDebounce call moved from effect to Combobox onChange handler;

[12.1.1] - 2025-03-27

Fixed

  • Adjusts multiple examples in readme files to not throw warnings;
  • Readme example test generation script not picking up React fragments wrappers correctly;

Under the hood

  • Adjustments to infrastructure tagging;

[12.1.0] - 2025-03-25

Added

  • New prop for NavHorizontal: wrapper;

Under the hood

  • Upgrades Honeycomb to 14.3.0;
  • Adds testing for code examples within component readme files
    • Auto-generates files with extracting code snippets from markdown code;
    • Runs all the test cases ensuring no errors a being thrown;
  • Adds integration tests for Calendar and Header components;
  • Adjusts code examples to match honeycomb-react code style;

[12.0.0] - 2025-03-18

Migrating from 11 to 12? Check out the Migration Guide for a smooth experience.

Added

  • Types support for data-* attributes to various components;
  • Autocomplete features:
    • Listbox widget prop;
    • Option indent prop;
    • Improved keyboard navigation;
    • Internal default filtering for simple implementations that don't require lazy loading or server-side filtering;
    • reset and toggle button controllers with customizable props;
    • Redesigned multiple selection mode;
    • Ability to disable internal event handlers for further customization;
  • ThemeWrapper now adds styles to InjecssContext for SSR;
  • All individual themes exported with proper HCR config-prefix from the dist/scss/themes/ folder;
  • highlight-text helper function to add <mark> tags around the text that matches a given query;
  • Mark component;
  • delayed and dismiss options for toast notifications giving more control on notification timings;
  • Flag component moved from _atoms and exposed in the docs, has new size prop;

Breaking changes

  • Input prop id no longer accepts number, only string;
  • Autocomplete refactored with new features and major revamp in the API. Check the migration guide for details on how to migrate or rename to LegacyAutocomplete if you're still not ready to do so;
  • Changes default margin for Fieldset to spacing-2;
  • All sass @import rules were replaced with @use or @forward, so mixins and variables are no longer visible in the global namespace and you need to make sure you're importing them properly on every file;
  • There were reports of incompatibility with typescript <= 5.0.2, so if you encounter many type errors please update typescript to the latest version to see if it helps;

Changed

  • Style adjustments to selected states in navigation components and select-group;
  • Updated Flag CDN version from 1 to 2;

Fixed

  • InjecssContext missing from ts exports;
  • HeaderSubMenu not working as expected with shouldCloseDialog NavItem prop;

Deleted

  • honeycomb-icons endpoint removed to rely directly on icons mixins coming from Honeycomb;

Deprecated

  • The old Autocomplete is deprecated and renamed to LegacyAutocomplete:
    • Autocomplete -> LegacyAutocomplete;
    • AutocompleteInput -> LegacyAutocompleteInput;
    • AutocompleteOptions -> LegacyAutocompleteOptions;
    • AutocompleteSelectedOptions -> LegacyAutocompleteSelectedOptions;

Documentation

  • Simplified and fixed examples in Spacing docs;
  • Added documentation for internal handleAriaDescribedBy utility;

Under the hood

  • Upgrades Honeycomb to 14.2.3;
  • Renamed type HCInputComponent to HCInputComponentProps and added HCDataAttributes to it;
  • Refactored PropsUtils.handleAriaDescribedBy to also handle input related ariaDescribedBy ids, and component id concatenation;
  • Added id prop to PropsUtils.handleLabel and Label atomic component;
  • Exports HoneyBemContextProvider and useHoneyBemContext pre-made utilities instead of the entire HoneyBemContext object;
  • Autocomplete quarks and internal functions were also renamed to LegacyAutocomplete;
  • autocomplete-highlighter moved and renamed to helpers/highlight-text;
  • Exports type HCIconComponent from hc-types;
  • Added srOnly prop for InputInfo atom;
  • Upgrades sass related dependencies, notably:
    • sass from 1.79 to 1.83;
    • stylelint fro 16.10 to 16.13.2;
    • stylelint-config-standards-scss from 13.1 to 14;
  • Upgrades jest-axe from 9 to 10;
  • Updates sass-unique-classes-loader to be compatible with the new sass API;
  • Upgrades to eslint 9.22, migrates eslint to flat config and fixes code style issues on files;
  • Upgrades typescript to 5.8.2;

[11.6.5] - 2025-03-12

Under the hood

  • Moves @flixbus/honeycomb-icons-react to package peer dependencies allowing for more major versions of the library to be used;

[11.6.4] - 2025-01-27

Documentation

  • Fixes broken Dropdown on ButtonGroup and added more examples;
  • Replaces placeholder images with static image from our styleguide in Avatar and ImageBox, fixing broken images when the service was down;
  • Added readOnly and error examples for Quantity component;
  • Added more example with more options for DataTable controls and checkbox;

[11.6.3] - 2025-01-06

Under the hood

  • Updates logo assets links in component examples;
  • Updates confluence links in the docs;
  • Updates outdated info in contribution docs;

[11.6.2] - 2024-12-18

Fixed

  • Dropdown target not accepting custom onClick and onKeyDown props;

Under the hood

  • JSX chaining imports to react namespace;
  • Updates react peer dependency to include ver. 19;

[11.6.1] - 2024-12-04

Under the hood

  • HoneyBem deprecating init method in favour of class constructor;

[11.6.0] - 2024-12-04

Added

  • center position variation for the Panel component;

[11.5.0] - 2024-11-28

Added

  • widgetSize prop for Header controlling the size distribution between the navigation and the widget area;
  • Adds version 10 to the version switcher and updates changelog version links;

Fixed

  • FooterNav layout broken on mobile;
  • Sidebar examples showing wrong active states;

[11.4.1] - 2024-11-12

Fixed

  • Input labels overlapping input content for long labels on mobile screens;

Under the hood

  • Updates Honeycomb to 13.2.1;

[11.4.0] - 2024-11-08

Added

  • order prop for LanguageSwitcherPopupRegion allowing ordering items in columns;

Under the hood

  • Corrects Input component examples to be more consistent with icon colors;

[11.3.1] - 2024-10-28

Fixed

  • innerRef props not accepting ref callbacks with TS for some of the components;

[11.3.0] - 2024-10-24

Added

  • Adds extraClasses property to closeProps for Balloon and Tooltip adding custom CSS class;

Fixed

  • Prevents duplicating icons for date input with custom icon in webkit browsers;

[11.2.0] - 2024-10-17

Added

  • Themes for ticket vending machines: flix-tvm, kamil-tvm and neptune-tvm;
  • applyToRoot prop to ThemeWrapper applying theme classes to the root element on the page;

Changed

  • Improves scaling for Autocomplete and PhoneInput components;

Under the hood

  • Adjusts configuration for dev deployments;

[11.1.1] - 2024-10-09

Fixed

  • Autocomplete with multiselect options list blocking the focus on the selected options, making it impossible to delete them;

Under the hood

  • Split Autocomplete contexts into separate files and use createCustomContext to create them;
  • Stop deploy jobs for dev and major environments;
  • Moves NotificationContainer inside Notification folder;

[11.1.0] - 2024-10-08

Added

  • disableDayCondition prop to Calendar to override the default disabled dates;

Under the hood

  • honeycomb updated to version 13.0.5;
  • Split calendar-factory in smaller functions to unit test;
  • Adds separate deploy and test jobs for major and hardcodes dev namespace for branches;

[11.0.1] - 2024-09-26

Fixed

  • Patch update: honeycomb version 13.0.4 with a CSS fix for the Tooltip arrow;

[11.0.0] - 2024-09-23

Migrating from 10 to 11? Check out the Migration Guide for a smooth experience.

Added

  • inlineLabel and icon support for Select component;
  • showCurrentDate prop to Calendar to optionally highlight the current day;

Breaking changes

  • Removed smartPosition related props from Tooltip and Dropdown. Use the useSmartPosition hook instead;
  • Passing a list of links as an array of objects is no longer supported. Use DropdownItem components instead;
  • Passing Header components as children is no longer supported. Use the dedicated Header props instead;
  • Header brand prop is now required;

Fixed

  • Missing TypeScript declaration of hooks: useCurrencyFormatter, useDateFormatter, useDurationFormatter, useSmartPosition and useThemeSwitcher;

Under the hood

  • Major update: honeycomb version 13.0.1;
  • Update sass to 1.92.2
  • Update sass-loader: 14 -> 16.0.1;
  • Replaced many instances of react specific component styles with direct imports of their honeycomb core library styles (mostly related to icon alignment and spacing);

10.9.1 - 2024-09-23

Fixed

  • Adds use-smart-position hook to rollup config file so it's included in the bundle;

[10.9.0] - 2024-09-23

Added

  • useSmartPosition hook that holds extracted smart position calculation logic;
  • menuRef prop for Dropdown to access the menu;
  • innerRef and balloonRef props for Tooltip components to access the respective elements;

Deprecated

  • Props related to smartPosition from Tooltip and Dropdown are deprecated and will be removed in version 11. Use the useSmartPosition hook instead.

[10.8.1] - 2024-09-10

Fixed

  • ThemeWrapper missing dynamic font sizes declaration;
  • Optional header props not accepting false value;
  • HeaderUserWidget button props not accepting data-* attributes;
  • HeaderUserWidget children validation throwing an error when children is a ReactNode;

[10.8.0] - 2024-09-09

Added

  • disableInternalHandlers prop for Tooltip component, allowing to gain full control over Tooltip visibility and bypassing internal handlers;

[10.7.0] - 2024-09-05

Added

  • buttonRest prop for HeaderUserWidget passing the props directly to the button/link element;
  • Props skipLinks, brand, navigation, burgerMenu, widgets for Header component to simplify the header API for the children structure and validation;

Changed

  • SubMenu implements useTabTrap hook with the listener on the component container instead of injecting listeners on the navigation items;
  • HeaderUserWidget now accepts ReactNodes as children;

Deprecated

  • Passing Header components as children. Please use the dedicated props instead;

Fixed

  • Prop error when forwarding innerRef to NavElem when it was a RouterLink;

Under the hood

  • Update honeycomb to version 12.6.0 with dynamic font sizes for mobile apple devices;
  • useTabTrap hook:
    • Add skipInitialFocus to allow sub menus to handle it as a special case (arrow keys can focus first or last element);
    • Change container and target to be HTMLElement instead of RefObject;
    • Return an object containing and first and last interactive elements as well as the keyboard handler;
  • Exports SubMenuContextProvider and useMenuContext hook from the sub menu context file;
  • Migrates children-validator to TypeScript;

[10.6.1] - 2024-08-28

Fixed

  • Module type errors on style imports on space helpers and Injecss baseStyles fixed by moving the spaces types definitions outside of the helpers file and into the helpers/types;

[10.6.0] - 2024-08-19

Merged release-9 updates, adding the following versions to master:

  • [9.12.1]
  • [9.12.0]
  • [9.11.1]

[10.5.0] - 2024-08-14

Added

  • innerRef prop to PopupSection components;
  • Panel and Popup content add tabIndex={0} when they can be scrolled, to allow keyboard users to focus on them and scroll with arrow keys;

Fixed

  • Panel content innerRef wrong element type;
  • tabTraphook not working when the dialog content changed after the hook was initiated;
  • document body "jumping" when a modal dialog (Panel and Popup) is opened;
  • Non-modal panels blocking interaction with document content;

Under the hood

  • honeycomb updated to version 12.5.0;
  • Adds useScrollableTabIndex hook;
  • tabTrap key listener added to dialog container instead of each interactive element;
  • interactive-elements package renamed to focusable-selectors to match the original package name it was imported from;

[10.4.3] - 2024-08-05

Under the hood

  • On useComponentId hook:
    • On React 18: call useId to generate the suffix instead of a time stamp;
    • On React 16 or 17: uses time stamp with increased randomness to avoid duplicates;

[10.4.2] - 2024-08-01

Fixed

  • Hotfix: Type casting to unknown on module type error on style imports on space helpers and Injecss baseStyles;

[10.4.1] - 2024-07-31

Fixed

  • Hotfix: Module type error on style imports on space helpers and Injecss baseStyles;

Under the hood

  • Migrates Injecss to TypeScript;

[10.4.0] - 2024-07-24

Added

  • Honeycomb helpers class names: a11y, alignment, reset, hidden, space;

Under the hood

  • Removed SROnly atom in favor to newly added helper class names;

[10.3.0] - 2024-07-12

Added

  • Props smallIcon and strong to Infobox component;

Under the hood

  • Update honeycomb to version 12.2.0 with fixes for notification container paddings;

[10.2.2] - 2024-07-08

Fixed

  • Calendar selected days not announced properly by "Voice over" on a Mac;

[10.2.1] - 2024-07-03

Documentation

  • Updated Connection example to toggle ConnectionItem with hidden attribute and updated related ARIA attributes on ToggleButton;

Fixed

  • SideBar nav items with wrong font weight;

Under the hood

  • Update honeycomb to version 12.1.1 allowing ConnectionItem to be hidden with hidden attribute;
  • Remove window and document from useEffect dependencies array in useBrowser hook;

[10.2.0] - 2024-07-02

Added

  • TabItem component now also accepts the innerRef prop;

Fixed

  • Arrow key navigation not working properly for Dropdown;

[10.1.1] - 2024-06-28

Fixed

  • DropdownItem rendering item in a element even when it doesn't have a href;
  • Broken links to old migration guides on the changelog;

[10.1.0] - 2024-06-26

Added

  • Exposed DropdownItem component (a NavElem wrapper) to build list of dropdown items;
  • Prop divider to DropdownItem to show dividers between dropdown items;
  • innerRef and ...rest props support for Grid and GridCol components;
  • color-scheme rule on ThemeWrapper generated css;

Deleted

  • Unused InjecssWithForwardRef decorator (React 19 removes forwardRef);

Deprecated

  • List of links as an array of objects. Please use DropdownItem components instead;

Fixed

  • NavItem not calling onClick handler when has sub menu;

Under the hood

[10.0.3] - 2024-06-14

Fixed

  • Patch up to honeycomb@12.0.4 with CSS fixes for FooterNav, DataTable and LanguageSwitcher;

Under the hood

  • Update jest-axe: 8 -> 9.

[10.0.2] - 2024-06-11

Fixed

  • Dropdown and sub-navigation not working as expected in Safari;

[10.0.1] - 2024-06-05

Fixed

  • Missing lib version on FooterIllustration class names;

10.0.0 - 2024-06-04

Migrating from 9 to 10? Check out the Migration Guide for a smooth experience.

Added

  • Themes:
    • themeKamilDark theme file and kamil-dark option for ThemeWrapper,
    • themeNeptuneDark theme file and neptune-dark option for ThemeWrapper;
  • Hooks:
    • useThemeSwitcher,
    • useCurrencyFormatter,
    • useDateFormatter,
    • useDurationFormatter;
  • Formatter components:
    • DateTime,
    • Duration,
    • FormattersProvider;
  • Props:
    • Support for span Elem prop for Tag component,
    • Support for strong Elem prop for Time atom,
    • illustration prop to Footer component accepting that accepts the newly added FooterIllustration component;
    • version prop to Flag component (refrain from using it, only if strictly necessary);

Breaking Changes

  • themeDefault theme and ThemeWrapper prop renamed to themeFlix and flix respectively;
  • dark theme and prop ThemeWrapper renamed to themeFlixDark and flix-dark respectively;
  • active prop on Dropdown now makes it a controlled component instead of just setting the initial state;
  • NavTabBarItem no longer translates href prop to RouterLink's to prop, so make sure to check your routing library documentation for the correct prop to use and pass them as ...rest;

Changed

  • Flag assets got updated and are fetched from honeycomb-flags-static lib now;

Deleted

  • tertiary option for Button appearance. Use secondary instead and please check the Migration Guide on Honeycomb Static for more details on choosing the right button for your use case;
  • link prop from Button, use appearance="link" instead;
  • outlined prop from Tag, use display="outlined" instead;
  • minusBtnTitle and plusBtnTitle props for Quantity;

Under the hood

  • Moved popup and panel body style modifications to useBodyStyleModifications hook;
  • Moved Currency component to formatters folder together with the newly added formatters;
  • Updates footer layout of the website;
  • Adds version switcher to the updated layout;
  • Updated dependencies:
    • react, react-dom 18.2 -> 18.3
    • webpack-dev-server 4 -> 5
    • postcss-loader 7 -> 8
    • sass-loader 13 -> 14
    • cssnano 7 -> 7
    • stylelint 15 -> 16
    • rollup 3 -> 4
    • husky 8 -> 9
    • @testing-library/jest-dom 5 -> 6
    • @testing-library/react 14 -> 16
  • Removed unused dependencies:
    • css-loader
    • style-loader

9.12.1 - 2024-07-29

Changed

  • srOnly and srOnlyFocusable helper constants moved inside of a11yHelpers() function that will only inject the helper styles when invoked (instead of injecting them all the time);
  • Restored previous role="group" and group label to AutocompleteOptions component;

Fixed

  • Removed aria-live="polite" from InputInfo atom because it was generating a lot of screen reader announcements when the content was a node;
  • Duplicated React key props on mark elements on Autocomplete highlights;

Removed

  • Mentions to /helpers endpoint as it was not working;

[9.12.0] - 2024-06-19

Added

  • onKeyDown, onBlur, onFocus and onOptionFocus event callbacks to Autocomplete component;
  • optionsListVisible prop on Autocomplete component to allow external control of options list visibility;
  • Spreadable rest props for Autocomplete individual options;
  • Helper class names: srOnly and srOnlyFocusable;

Changed

  • Removed tabIndex={0} from Autocomplete container;
  • AutocompleteOption allows overriding default props with ...rest;
  • Added aria-live="polite" to input info to enable screen reader announcements if the content is updated;
  • Input info type from string to node;

[9.11.1] - 2024-06-19

Fixed

  • Spacing between icons from hci library and text on navigation components;

[9.11.0] - 2024-05-22

Added

  • Support for initial active TabItem on Tabs controller;
  • onTabActivated callback prop on Tabs controller;

[9.10.1] - 2024-05-21

Under the hood

  • Adds deprecation warning to ThemeWrapper for "default" and "dark" theme props;

[9.10.0] - 2024-05-13

Added

  • flix and flix-dark theme support for theme wrapper, this should allow developers to prepare for upcoming default/dark themes removal coming with ver. 10;

Deprecated

  • default and dark theme names. Please use flix and flix-dark instead.

[9.9.1] - 2024-05-07

Fixed

  • Autocomplete options throwing "key" errors on mark elements;

[9.9.0] - 2024-04-25

Added

  • Possibility to override timestamp on useComponentId hooks by passing id to the following components:
    • Autocomplete
    • ChoiceWrapper
    • Dropdown
    • Fieldset
    • FooterNav
    • LanguageSwitcherPopupRegion
    • SelectGroup
    • SideBarNavItem

Deprecated

  • Props minusBtnTitle and plusBtnTitle on Quantity component. Use the action rest props instead;

Fixed

  • Updates to honeycomb 11.4.2 with fix for quantity spacing on inline variation;

Under the hood

  • Migrates Quantity to TypeScript;
  • Added suffix replacement for timestamp on useComponentId hook;
  • Added mockUseComponentId;

[9.8.0] - 2024-04-23

Added

  • highlightQuery prop to AutocompleteOptions component to enable highlighting of user query;

[9.7.1] - 2024-04-11

Documentation

  • Replace large arrows with regular arrows on input controllers examples;

[9.7.0] - 2024-04-04

Added

  • wrap prop to ButtonGroup;

Under the hood

  • Updates to honeycomb 11.4;

[9.6.0] - 2024-04-04

Added

  • space-between justify option to Grid component;
  • controllers prop to Input component to add custom 2 button controllers;

Under the hood

  • Updates to honeycomb 11.3.2 with fix for date/time inputs height;

[9.5.0] - 2024-03-21

Added

  • shouldCloseDialog prop on NavItem component also closes sub menus;

Under the hood

  • Moves HeaderSubNavigation to its own folder;
  • Updates to honeycomb 11.2.2 with fix for dropdown item icons and infobox content overflow;

[9.4.3] - 2024-03-21

Fixed

  • SelectOption and SelectOptGroup missing HTML attributes in types;

[9.4.2] - 2024-03-12

Fixed

  • Fixes wrong alignment for smart tooltips with restricted positioning options;

[9.4.1] - 2024-03-06

Fixed

  • Updated to honeycomb 11.2.1 with fix for notification icons shrinking on small screen;

[9.4.0] - 2024-02-28

Added

  • loading prop to Panel and Popup components;

Under the hood

  • Adds support to loading state on useTabTrap hook;

[9.3.0] - 2024-02-26

Added

  • stacked display option for Button;
  • link appearance option for Button;
  • open and onToggle props to HeaderBurgerMenu component;
  • shouldCloseDialog prop to NavItem component;

Fixed

  • Avatar alt prop validation throwing Error even when src is not provided;
  • Panel and Popup not calling onKeyDown event handler passed as prop;

Deprecated

  • link prop for Button;

Under the hood

  • Fixed Styleguidist JsDoc decorators;

[9.2.2] - 2024-02-16

Fixed

  • Dropdown and navigation submenus not closing in Safari, when clicked outside the element;
  • Injecss not populating context in certain environments, so SSR returns empty object;

[9.2.1] - 2024-02-08

Fixed

  • Panel preserving the body style modifications even when unmounted;

[9.2.0] - 2024-02-07

Added

  • tagColor and tagTextColor props for Tag;

Documentation

  • Improved Calendar departure and return date example with input value handling for week days;
  • Documented how to make Tags with custom colors using extraClasses and CSS Properties;
  • Fixed checkbox with invisible label example not checking when clicked;

Under the hood

  • Migrate Calendar and remaining calendar quarks to TypeScript;
  • Updates to honeycomb 11.1.1;
  • Updates to honeycomb-icons-react 6.1.0;

[9.1.0] - 2024-01-26

Added

  • SideBar Component and related sub-components:
    • SideBarNav, SideBarNavItem, SideBarSubMenu and SideBarBrand.
  • Smart Tooltip now allows for limiting smart position options via smartPositionAllowedPositions prop;

Fixed

  • Popup preserving the body style modifications even when unmounted;

Under the hood

  • Cleans up playground code example;

[9.0.2] - 2024-01-18

Fixed

  • Portals being removed incorrectly when using components with portalId property;

[9.0.1] - 2024-01-03

Fixed

  • Corrects Injecss to not throw a possible error during the SSR build;

9.0.0 - 2023-12-11

Migrating from 8 to 9? Check out the Migration Guide for a smooth experience.

Added

  • DataTableRow, DataTableHead, DataTableFoot, DataTableSorter components for composing data tables;
  • Table atoms: TableSection (TableHead, TableHead, TableFoot) and TableRow;
  • display prop on Tag component accepting the values: outlined, subtle;
  • innerRef prop for forwarding refs to the following components:
    • Accordion;
    • AutocompleteInput, AutocompleteOptions;
    • Avatar;
    • Balloon;
    • Blockquote;
    • Box;
    • Breadcrumbs;
    • Button;
    • Checkbox;
    • ChoiceWrapperItem;
    • Connection, ConnectionSlot, ConnectionStop;
    • Currency;
    • DataTable;
    • Dropdown, DropdownItem;
    • Fieldset;
    • Fineprint;
    • Footer;
    • FooterNav;
    • FormRow;
    • Header, HeaderBrand, HeaderBurgerMenu, HeaderNavigation, HeaderSubNavigation, HeaderSkipLinks, HeaderWidget, HeaderUserWidget;
    • ImageBox;
    • Infobox;
    • Input;
    • LanguageSwitcherPopupItem;
    • Link;
    • NavItem;
    • NavTabBarItem;
    • Notification, NotificationContainer;
    • Overlay;
    • PagerArrow, PagerItem;
    • Panel;
    • Popup;
    • Quantity;
    • Radio;
    • Range;
    • Select;
    • SkipLink;
    • SelectGroup options;
    • Text;
    • Textarea;
    • Tag;

Breaking changes

  • RouterLink components no longer transform href prop to to;
  • DataTable refactored as a composable component, please refer to the component documentation for details on how to implement it;

Changed

  • All visual changes from Honeycomb ver. 11 (click to see Honeycomb changelog for more details);
  • Calendar class name updated from clndr to calendar;
  • Switch markup changed to not rely on implicit label;
  • BackButton and ToggleButton use large version of arrow icons;

Deleted

  • DataTable sorting presets;

Deprecated

  • outlined prop on Tag component;

Fixed

  • Header children validation breaking when using Fragments;

Under the hood

  • Migrates DataTable and PhoneInput to TypeScript;
  • Use table atoms to build Table component;
  • Replaced defaultProps with JS default params in all remaining components;
  • Moves react-router-dom to dev-dependencies;
  • Adds InjecssWithForwardRef decorator to allow for forwardRef components;
  • Adds --no-label modifier on Checkbox when has invisible label;
  • Replace custom select with Select component in PhoneInput's CountrySelector;

8.8.6 - 2023-11-30

Fixed

  • Calendar showing extra unnecessary month on the turn of the year;

[8.8.5] - 2023-11-16

Fixed

  • Tooltip forwarding aria-expanded to unsupported roles;
  • HeaderBar examples with wrong content color;

Under the hood

  • Extract TooltipTarget into a quark;
  • Add JsDoc Styleguidist rendered for showing the version since components were added (and other jsdoc tags on component level);

[8.8.4] - 2023-11-09

Fixed

  • HeaderBurgerMenu rendering widgets outside of the panel;

[8.8.3] - 2023-10-24

Documentation

  • Fixed HeaderBar examples not rendering buttons correctly;

Under the hood

  • Patches up to honeycomb 10.3.3;
  • Updates to honeycomb-icons-react 5.9.1;

[8.8.2] - 2023-10-16

Fixed

  • Calendar component infinite rerendering issues in certain cases when no default month specified;

[8.8.1] - 2023-09-29

Fixed

  • Range controlled state not updating visual state correctly;
  • Tabs controller required children prop in navRest;

Under the hood

  • Updates honeycomb to 10.3.2;
  • Range component and quarks migrated to TypeScript;
  • Removed defaultProps from Range component and quarks;

[8.8.0] - 2023-09-29

Added

  • innerRef, targetRef, disableBodyStyleModifications, disableFocusManagement props to Panel;
  • targetRef, disableBodyStyleModifications, disableFocusManagement props to Popup;
  • Tab trap and focus management behavior for Panel and Popup;

Fixed

  • Typo in Tabs Controller, it was written with lower case;

Under the hood

  • useBrowser hook;
  • useTabTrap hook;
  • InteractiveElements package list of selectors;

[8.7.1] - 2023-09-28

Fixed

  • Tooltip smart positioning not behaving as expected in certain cases;
  • Notification closeProps onClick callback not working as expected;

[8.7.0] - 2023-09-22

Added

  • Currency component;

[8.6.0] - 2023-09-14

Added

  • extraClasses prop to components:
    • ListWrapperItem
    • LanguageSwitcherPopupRegion
    • LanguageSwitcherPopupItem
    • SROnly
  • ...rest props to components:
    • Pager
    • PanelContent
    • Table
    • SROnly

Under the hood

  • Updates honeycomb to 10.3.1;
  • Removed defaultProps from the following components:
    • FooterNav
    • InputField
    • InputInfo
    • Label
    • SROnly
    • Time

[8.5.0] - 2023-09-13

Added

  • horizontal prop for FooterNav component;

Under the hood

  • Updates honeycomb to 10.3.0;
  • Removed defaultProps from the following components:
    • FooterNav
    • NavElem
    • DropdownItem

[8.4.0] - 2023-09-11

Added

  • horizontal prop for Calendar component for controlling layout with multiple visible months;

Fixed

  • range highlight not working properly on calendar with multiple months;

Under the hood

  • Calendar component uses styles from Honeycomb;
  • Removed defaultProps from Calendar and CalendarBody;
  • Calendar accessibility improvements;

[8.3.0] - 2023-08-30

Added

  • Tabs controller to abstract tabbed navigation functionality;
  • TabItem and TabPanel components;
  • listRole props to NavHorizontal component;

Under the hood

  • Removed defaultProps from NavHorizontal and NavItem;

[8.2.4] - 2023-08-29

Fixed

  • Console warnings being thrown by navigation components when used with ReactRouter ver. 6

[8.2.3] - 2023-08-28

Documentation

  • Update Header documentation on composition and using custom components as children;

Under the hood

  • Updates honeycomb to version 10.1.5 and honeycomb-react-icons to version 5.8.0;

[8.2.2] - 2023-08-28

Fixed

  • Wrong class name being targeted for icons in Button and Accordion components;

[8.2.1] - 2023-08-15

Fixed

  • Autocomplete not processing onReset and onDelete callbacks for the multiselect variations properly;

[8.2.0] - 2023-08-11

Added

  • Container aware smart positioning for Tooltip;
  • innerRef props for Box, DataTable, PanelContent and Popup;

Fixed

  • DataTable not accepting ...rest props like HTML attributes etc.

[8.1.3] - 2023-08-08

Fixed

  • ConnectionSlot not accepting the current and InlineIcon props;

[8.1.2] - 2023-08-04

Fixed

  • Balloon, Dropdown, Tooltip and HeaderSubNavigation props missing from types.ts file;

[8.1.1] - 2023-08-02

Under the hood

  • Updates changelog with the links to previous versions of the documentation and migration guides;
  • Fixes tag deployments;

[8.1.0] - 2023-07-26

Added

  • HeaderSubNavigation support for alignment prop;

Under the hood

  • getChildrenByName ignores Injecss injected on children displayName;
  • Removed defaultProps from the following components:
    • Balloon
    • Tooltip
    • Header

[8.0.3] - 2023-07-24

Fixed

  • Updates to honeycomb 10.0.4 in fixing:
    • Balloon arrow misaligned when balloon is very small;

[8.0.2] - 2023-07-13

Fixed

  • Adding spacing-4 helpers to FormRow when it was last child;

[8.0.1] - 2023-07-03

Fixed

  • Honeycomb-react version missing from NavSideSubMenu classNames;

8.0.0 - 2023-07-03

Migrating from 7 to 8? Check out the Migration Guide for a smooth experience.

Added

  • ConnectionSlot, ConnectionTime, ConnectionTitle components;
  • Time atom;
  • Handy buttons: CloseButton, BackButton and ToggleButton;

Breaking changes

  • New Connection component;
  • Prop id is now required in Panel component;
  • Autocomplete no longer supports Input as children, use AutocompleteInput instead;
  • Calendar no longer supports daysShort prop, use days prop instead;
  • NavSide no longer supports an array of NavItem as subMenu. Use the NavSideSubMenu component;

Changed

  • LanguageSwitcher upgraded from experimental to stable component;
  • PanelHeader wraps title with div with proper class name and id;
  • Fieldset default item spacing increased to 4 to be identical to honeycomb static definition;

Deleted

  • StopsToggler component;
  • Connection Station and Time quarks;
  • TimeInput component;
  • last prop from FormRow component;

Fixed

  • Fieldset not forwarding infoError id to child form controls;

Under the hood

  • Panel and related child components migrated to TypeScript and removed defaultProps;

7.8.0 - 2023-06-01

Added

  • loading prop tp BreadcrumbsItem component;

Documentation

  • Added BreadcrumbsItem documentation page;

Under the hood

  • Removes defaultProps from Breadcrumbs and BreadcrumbsItem components;

[7.7.0] - 2023-06-01

Added

  • AutocompleteInput a wrapper for the Input component that should be used within the Autocomplete;
  • extraClasses and modifier props to Flag component;

Deprecated

  • Passing an Input component as children to Autocomplete, use AutocompleteInput instead;

Fixed

  • hidden attribute present even when Dropdown is active;
  • Autocomplete scroll bar always visible;

Under the hood

  • Autocomplete contexts to handle props and remove cloning from Autocomplete entirely;
  • Replaces cloneElement with better alternatives on the following components:
    • Button
    • HeaderBurgerMenu
    • LanguageSwitcher
    • ListWrapper
    • Pager
  • Removes defaultProps from the following components:
    • Button
    • Header
    • LanguageSwitcher
    • ListWrapper
    • Pager

[7.6.1] - 2023-05-30

Fixed

  • Autocomplete not calling onSelect when options were clicked;

[7.6.0] - 2023-05-23

Added

  • smartPosition prop to Dropdown component;
  • onChoiceChange and defaultValue props to ChoiceWrapper;
  • Documentation on handling the active state for parent menu items when sub navigation is used;

Under the hood

  • Forwards ref to SubMenu;
  • Remove defaultProps from Dropdown and SubMenu;
  • Added useControllableState and createCustomContext hooks;
  • Added choice-wrapper-context to allow externally controlling the ChoiceWrapperItem components;

[7.5.0] - 2023-05-23

Added

  • spacing prop to FormRow;

Fixed

  • itemSpacing adding incorrect margins to horizontal Fieldset items;

Under the hood

  • Extracted SPACE_VALUES to helpers file to be shared by components;
  • Removes defaultProps from FormRow and Fieldset;

[7.4.0] - 2023-05-22

Added

  • Possibility to group up Autocomplete options;
  • Heading supports span as a possible Elem;

Under the hood

  • AutocompleteContext for managing shared state between Autocomplete children;
  • AutocompleteOption, AutocompleteGroupName and AutocompleteOptionGroup;

[7.3.4] - 2023-05-15

Fixed

  • Broken .npmignore configuration;

[7.3.3] - 2023-05-11

Fixed

  • TooltipProps are incompatible with the latest HTMLAttributes interface (@types/react).

[7.3.2] - 2023-05-10

Fixed

  • Broken styles for Dropdown items;
  • Dropdown not passing the rest props to its container;

Under the hood

  • Removes redundant files from the npm package;

[7.3.1] - 2023-05-08

Documentation

  • Added missing props table in ConnectionStop and StopsToggler;

Fixed

  • Reading subMenu prop from undefined items in Styleguide Table of Contents;
  • Conditionally calling useRef in NavItem React error;

[7.3.0] - 2023-04-27

Added

  • NavSideSubMenu to be used to crate second level sub menus on NavSide;
  • extraClasses and modifier props to NavItem component;

Changed

  • HeaderUserWidget opens the sub menu on click instead of mouse over;

Deprecated

  • Passing an array of NavItem as subMenu for NavSide. Please use the newly introduced NavSideSubMenu component;

Documentation

  • Removed openOnHover from HeaderSubNavigation examples because we are moving to use click for dropdown-like elements;

Under the hood

  • HoneyBemContext replaces bem instance used with NavItem and navigation components;
  • SubMenuContext replaces cloned props for managing SubMenu states;
  • useSubMenuInitialFocusManager hook to centralize focus management for SubMenu;

[7.2.0] - 2023-04-27

Added

  • Possibility to forward extraClasses and ...rest props to DataTable rows;

Under the hood

  • Use NavElem atom in the LanguageSwitcherItem component;

[7.1.1] - 2023-04-25

Fixed

  • Quantity replacing 0 with an empty string when focusing out of the input field;
  • One of the Tooltip examples in the docs not working as expected;

[7.1.0] - 2023-04-13

Added

  • ellipsis prop to ConnectionStop component;

Documentation

  • Removed openOnHover from Header examples because we are moving to use click for dropdown-like elements;

Under the hood

  • Includes Honeycomb patch 9.0.1;

[7.0.1] - 2023-04-12

Fixed

  • Some components overwriting extraClasses prop from their children (e.g.: Icon inside of Button and Input);

Under the hood

  • PropsUtils file created to store utility classes for managing props;

7.0.0 - 2023-04-04

Changed

  • Kâmil Koç primary brand color;

Under the hood

  • Update to node 18;
  • Update to react 18;
  • Update to webpack 5;
  • Update to rollup 3 and all loaders;
  • Update to react-styleguidist 13;
  • Update to cssnano 6;
  • Replace rollup-plugin-terser with @rollup/plugin-terser;

6.4.0 - 2023-03-31

Changed

  • Many label props in form components now accept ReactNode instead of string;

Fixed

  • Unable to click on Radio when it doesn't have a visible label;

[6.3.0] - 2023-03-23

Added

  • PageContainer accepts prop hasFixedHeader with no-nav value for when the page header does not have a navigation;

Fixed

  • Missing declaration of AutocompleteOptions and AutocompleteSelectedOptions components in their typing files;

[6.2.0] - 2023-03-21

Added

  • days prop to Calendar to provide localized week days names;
  • aria-disabled attribute to disabled days in the Calendar;

Deprecated

  • daysShort prop on Calendar, use the new days prop instead containing proper short and long names for week days;

Fixed

  • "Toast" Notification component docs missing NotificationContainer;
  • Header component now supports React fragments as children;
  • All examples in the docs now have correct component imports;
  • Incorrect "required" internal props (role, linkRole, linkRef) in NavItem;
  • Incorrect "required" internal prop (className) in SubMenu;

[6.1.0] - 2023-03-15

Added

  • Support for buttons on ListWrapper;

Fixed

  • Dropdown not automatically focusing items when keyboard arrows were used for activating;

Under the hood

  • Added NavElem atomic component;

6.0.0 - 2023-03-13

Migrating from 5 to 6? Check out the Migration Guide for a smooth experience.

Added

  • Dropdown focus management and improved keyboard navigation;
  • ButtonGroup component;
  • Arrow keyboard button navigation support for Dropdown, HeaderSubNavigation, HeaderUserWidget and NavSide sub menu;

Breaking changes

  • ThemeWrapper now requires theme objects to be passed as a prop, allowing you to bundle only the themes your need into your app;
  • itemSpacing prop to on Fieldset uses number based values instead of T-Shirt size;
  • Autocomplete has been migrated to TS and now benefits from composition with Input, AutocompleteOptions, AutocompleteSelectedOptions components;

Changed

  • openOnHover behavior for components that use the visibility toggler hook no longer affect keyboard navigation (focus/blur), only mouse hover events;

Deleted

  • ProgressTracker props: steps and linked;
  • Tooltip props: error and small;
  • Balloon prop: small;
  • Accordion prop: InlineIcon;
  • Button props: InlineIcon, iconPosition and iconProps;
  • Tag props: InlineIcon and iconPosition;

Deprecated

  • TimeInput, use Select or Input with type="time" instead;

Under the hood

  • useVisibilityToggler args changed to be an options object;
  • useInlineIcon now accepts Icon ...rest props;
  • Replaces "sass-lint" with "Stylelint";
  • Added SubMenu atomic component;
  • Components migrated to TypeScript:
    • Autocomplete
    • Dropdown
    • Tooltip
    • Popup and PopupSection

5.7.3 - 2023-03-06

Fixed

  • Quantity not responding to keyboard events;
  • Quantity replacing empty value with zero and adding leading zero in certain cases;

[5.7.2] - 2023-03-01

Fixed

  • pager prop missing in DataTable types;
  • Quantity renders empty label element when no label was provided;
  • Quantity onKeydown prop has wrong event type;
  • Quantity using arrow keys doubles step size of the input;
  • PropType error for List when used with conditional expression;

[5.7.1] - 2023-02-16

Fixed

  • HCComponentRouterLinkProps missing in ListWrapper and Breadcrumbs items;
  • Accordion title not accepting elements;

[5.7.0] - 2023-02-15

Added

  • LanguageSwitcherPopupItem support for button element and RouterLink;
  • LanguageSwitcherPopupItem prop active to set active styles;

[5.6.2] - 2023-02-13

Fixed

  • Tooltip target events overwritten by Tooltip's own events;

[5.6.1] - 2023-02-06

Fixed

  • InlineIcons not working properly in Autocomplete;
  • noResponsiveRendering prop not working for HeaderWidgets;

[5.6.0] - 2023-02-01

Deprecated

  • Tag props: InlineIcon and iconPosition;
  • Button props: InlineIcon, iconPosition and iconProps;
  • Accordion prop: InlineIcon;

Fixed

  • Icon vertical alignment on Accordion title;
  • ProgressTracker children validation;

[5.5.4] - 2023-01-31

Fixed

  • Console errors when using react router v6 components as RouterLink on a Button

[5.5.3] - 2023-01-27

Fixed

  • Removes base styles from the styles Injecss SSR context property to avoid specificity issues;

[5.5.2] - 2023-01-26

Fixed

  • Base styles having wrong order when Injecss SSR context is used;

[5.5.1] - 2023-01-26

Fixed

  • PanelHeader not allowing for an icon customization;

[5.5.0] - 2023-01-26

Added

  • ProgressTrackerItem to be used as children of ProgressTracker;

Deprecated

  • ProgressTracker props: steps and linked;
  • Tooltip props: error and small;
  • Balloon prop: small;

Under the hood

  • New SROnly atom;

[5.4.2] - 2023-01-25

Fixed

  • Removes dark logos from the examples;

[5.4.1] - 2023-01-20

Documentation

  • Added NavTabBarItem documentation page;

Fixed

  • NavTabBar icon color on Safari browsers;
  • styles for hover layout for Inputs using icons;
  • "Replace fill-available to stretch" warning;

[5.4.0] - 2023-01-19

Added

  • InjecssContext now also provides style nodes alongside the style string, this prevents style duplication in some cases when SSR is used;
  • RouterLink prop to Link component;

[5.3.3] - 2023-01-12

Fixed

  • Language switcher close button now sticks to the top when scrolling;
  • Language switcher popup height increased and uses dvh to not be overlapped by Safari UI at the bottom;
  • Navigation links have same height and width when using button elements;
  • Input placeholder text no longer has opacity on FF;

[5.3.2] - 2023-01-03

Fixed

  • Removed paddings from empty NotificationContainer;
  • Removed vertical borders from ProgressTracker mid items;

[5.3.1] - 2022-12-20

Fixed

  • Updates Honeycomb fetching the latest style fixes for Header and LanguageSwitcher;

[5.3.0] - 2022-12-16

Added

  • captioned prop to ImageBox to enable image with captions possibility;

[5.2.2] - 2022-12-15

Fixed

  • HCComponentRouterLinkProps types not using react-router-dom types (v5 and v6);

[5.2.1] - 2022-12-13

Fixed

  • HCRouterLink and HCComponentRouterLinkProps types;

[5.2.0] - 2022-12-08

Added

  • Flag atom;
  • LanguageSwitcher experimental component and its children: LanguageSwitcherPopup; LanguageSwitcherToggle; LanguageSwitcherPopupRegion; LanguageSwitcherPopupItem;
  • HeaderBrand now allows for themed logos;

[5.1.4] - 2022-12-07

Fixed

  • DataTable row not having a key prop in its type declaration;

[5.1.3] - 2022-12-05

Fixed

  • Style issues for Grid inline columns;
  • Allows for button element usage in Header dropdown menus;

[5.1.2] - 2022-11-29

Fixed

  • Fixes broken CSS for the Switch component;
  • Clears styles from redundant CSS custom properties fallbacks required for IE;

[5.1.1] - 2022-11-28

Fixed

  • Default header user widget avatar color always white instead of currentColor;

[5.1.0] - 2022-11-21

Added

  • stretch and Elem props to NavHorizontal;
  • headingLevel prop to FooterNav;
  • contentFit prop to Pager and allows ReactNode as PagerItem children;
  • HeadingElem prop to Connection component;

Under the hood

  • Connection component markup changed to use "presentation" tables;
  • Connection component and children components migrated to TypeScript;

[5.0.4] - 2022-11-09

Fixed

  • Types for RouterLink props haven't been fetched properly.

[5.0.3] - 2022-11-07

Fixed

  • Header navigation arrows having wrong colors on certain themes;
  • List wrapper focus state styles;

[5.0.2] - 2022-11-02

Fixed

  • Panel children types not considering PanelContent as a valid child;

[5.0.1] - 2022-10-31

Documentation

  • Fixed migration guide old examples;

5.0.0 - 2022-10-31

Migrating from 4 to 5? Check out the Migration Guide for a smooth experience.

Added

  • HeaderBrand;
  • HeaderBurgerMenu;
  • HeaderSkipLinks;
  • HeaderNavigation;
  • HeaderWidgets;
  • appearance prop for Box component;
  • size and innerRef props for Button component;
  • Input:
    • inlineLabelRight prop,
    • support to Label components as label,
    • support Icon and Button components as iconLeft and iconRight;
  • Select, Textarea, also accept Label components as label prop;
  • id and ...rest props to FooterNav component;
  • ...rest props support to NavHorizontal;
  • deleteItemLabel, deleteAllItemsLabel props for Autocomplete multiselect variation;
  • honeycomb-icons-react icon components supported as children for Button and Tag components;

Breaking changes

  • Header refactored as composable component:
    • HeaderUserWidget refactored as composable component;
    • Check the migration guide for more details
  • List component now only accepts li elements as children;
  • Input component refactored:
    • Accepts Label component as label prop, as well as string, no longer accepts requiredText prop;
    • InlineIcon and InlineIconRight renamed to iconLeft and iconRight respectively. Both accept Icon and Button components;
    • inlineLabel renamed to inlineLabelLeft;
    • loading visual state now overrides error and valid states;
    • Check the migration guide for more details.
  • ListItem (a ListWrapper companion component) renamed to ListWrapperItem;
  • ProgressTracker does not support active prop for items. Use aria-current: 'step' on the current step to highlight the previous steps.
  • "Breaking in 5.0" warnings turned into validation error:
    • ChoiceWrapper no longer supports options prop. Use children instead;
    • Avatar: alt prop required;
    • Button: either children or aria-label are required even if InlineIcon is provided.
    • PagerArrow: aria-label prop is now required;
    • Pager no longer supports items, nextButton, prevButton props. Use PagerItem and PagerArrow components as children instead.

Changed

  • NavItem:
    • No longer removes subMenu from DOM when it's not open, toggles hidden attribute from it instead;
    • Setting open prop now overrides the internal state management instead os just setting the initial state (works like Tooltip now);
  • Improves Calendar component accessibility with better semantics and aria attributes;

Deprecated

  • InlineIcon and iconPosition from the Tag component;
  • InlineIcon, iconPosition and iconProps from the Button component;

Fixed

  • NavItem now handles correctly openOnHover for whatever component is thrown at is via subMenu prop;
  • Allows react-router's NavLinkProps to be given to NavItem components (e.g: "exact" prop);
  • Calendar start/end selection arrows displayed wrong when the same dates are selected;

Deleted

  • Icon and InlineIcon components, please use @flixbus/honeycomb-icons-react package instead;
  • ImageLink in favour of a more generic ImageBox;
  • subMenuControl prop removed from NavItem;
  • options prop removed from Select types;
  • requiredText, inlineLabel, InlineIcon and InlineIconRight props from Icon;

Under the hood

  • Components migrated to TypeScript:
    • Accordion;
    • Avatar;
    • Balloon;
    • Blockquote;
    • Box;
    • Breadcrumbs and BreadcrumbsItem;
    • Button;
    • Checkbox;
    • ChoiceWrapper and ChoiceWrapperItem;
    • Divider;
    • Fieldset;
    • Fineprint;
    • Footer;
    • FooterNav;
    • FormRow;
    • Header, HeaderBar and HeaderUserWidget;
    • Heading;
    • ImageBox;
    • Infobox;
    • Legend;
    • Link;
    • List;
    • ListDescription, DescriptionTerm and DescriptionDetails;
    • ListWrapper and ListWrapperItem;
    • NavItem;
    • NavHorizontal;
    • NavTabBar and NavTabBarItem;
    • NotificationContainer and Notification;
    • Overlay;
    • ProgressTracker;
    • Radio;
    • Select, SelectOptGroup and SelectOption;
    • SelectGroup;
    • Skeleton;
    • SkipLink;
    • Spinner;
    • Switch;
    • Table;
    • Tag;
    • Text;
    • Textarea;
    • Atoms:
      • InputInfo;
      • Label;
    • Packages:
      • HoneyBem: should now be initialized with init() method;
    • Layout:
      • Grid;
      • GridCol;
      • MainWrapper;
      • PageContainer;
      • ThemeWrapper: themes.conf.ts implemented;
  • New internal atoms:
    • InlineLabel;
    • InputField;
  • PhoneInput updated to use Input instead of creating it from scratch;

[4.5.7] - 2022-10-17

Fixed

  • TypeScript validation for PanelFooter children;

[4.5.6] - 2022-10-13

Warnings

  • Added deprecation warnings on props and components that will no longer be supported on version 5.0;

[4.5.5] - 2022-09-14

Fixed

  • Wrong types for Box component props;

[4.5.4] - 2022-09-08

Fixed

  • Fixes update of tooltip position prop when re-rendering

[4.5.3] - 2022-09-05

Fixed

  • Text color for table captions;

[4.5.2] - 2022-08-31

Fixed

  • Calendar and DataTable highlight color;

[4.5.1] - 2022-08-26

Fixed

  • Handles to prop when passed via ...rest to NavItem's RouterLink;

[4.5.0] - 2022-08-26

Added

  • Elem prop to NavItem now supporting buttons;

[4.4.4] - 2022-08-25

Fixed

  • Input and Autocomplete clear button icon misalignment;

[4.4.3] - 2022-08-24

Fixed

  • ChoiceWrapper hover state border radius;
  • Restores missing icons from honeycomb-icons 4.2
    • icon-expand-thick-solid.jsx
    • icon-expand-thick.jsx
    • icon-stairs.jsx
    • icon-table-solid.jsx
    • icon-table.jsx
    • icon-width-thick-solid.jsx
    • icon-width-thick.jsx

[4.4.2] - 2022-08-11

Fixed

  • DataTable not maintained rows state selection on loading more rows;

[4.4.1] - 2022-08-11

Fixed

  • DataTable not updating selected rows state properly during dynamic rows loading;

[4.4.0] - 2022-08-10

Added

  • neptune theme;
  • Support for react-router-dom@6;
  • Table footers and caption support to Table and DataTable components;
  • Footer component;

Changed

  • Fieldset error messages have become more accessible;
  • title is now optional for FooterNav component;

Under the hood

  • Updated eslint and eslint related dependencies;
  • React 18 support;

[4.3.6] - 2022-07-06

Fixed

  • Header Skip Links z=index too low;

Changes

  • Updates infrastructure configuration;

[4.3.5] - 2022-07-04

Fixed

  • Vertical alignment on block buttons applied to anchor elements;
  • Shows not-allowed on disabled Tags with anchor element;
  • Text overflow issues for Header nav items with sub navigation on mobile;
  • Horizontal padding on header widgets on mobile;

[4.3.4] - 2022-06-14

Fixed

  • Peer dependency conflicts on rollup plugin;
  • Replaces rollup-plugin-uglify by rollup-plugin-terser;

[4.3.3] - 2022-06-14

Fixed

  • Tooltips showing on hover and not disappearing on first interaction;
  • size "cover" option not working for icons;

[4.3.2] - 2022-06-07

Fixed

  • custom children prop type validators throw error if conditional rendering is used for children;

[4.3.1] - 2022-06-03

Fixed

  • Fixes prop types for Header and HeaderSkipLink quark;

[4.3.0] - 2022-06-02

Added

  • DescriptionList, DescriptionTerm and DescriptionDetails components;
  • Icons:
    • IconArrowBigBottomLeft
    • IconArrowBigBottomRight
    • IconArrowBigTopLeft
    • IconArrowBigTopRight
  • Interaction states for Calendar buttons;
  • PagerItem and PagerArrow to compose Pager component;
  • pager prop to DataTable for making paginated tables;
  • hasFixedHeader prop for PageContainer;
  • ChoiceWrapperItem to compose ChoiceWrapper component;
  • Expandable children support for ChoiceWrapperItem;
  • legend support for ChoiceWrapper component;

Changed

  • ConnectionStop prop station changed from string to node;

Deprecated

  • Pager props items, prevButton and nextButton;
  • ChoiceWrapper prop options

Under the Hood

  • Adds getElementName to ReactUtils and uses it on Panel and children-validator;
  • Adds support for multiple valid child names on children-validator;
  • Removes sourcemaps from resulting CSS bundles.

[4.2.6] - 2022-05-18

Added

  • Fix Button InlineIcon type definition;
  • Add Dropdown openOnHover type definition;

[4.2.5] - 2022-05-17

Added

  • Balloon missing types file;

Fixed

  • Autocomplete and Input innerRef type;

[4.2.4] - 2022-05-16

Fixed

  • Grid and GridCol now import hc-types HCComponentWithChildren;

[4.2.3] - 2022-05-12

Fixed

  • Margins on a Checkbox with invisible label;

[4.2.2] - 2022-05-11

Fixed

  • Moved regenerator-runtime to devDependencies;

[4.2.1] - 2022-05-04

Fixed

  • Breadcrumbs types;
  • Breadcrumbs throws unhandled error when it has only 1 item;

[4.2.0] - 2022-04-29

Added

  • size prop to Balloon and Tooltip;
  • danger prop to Tooltip;
  • multiple prop support to Select;
  • SkipLink component;
  • skipLinks prop to Header;
  • openOnHover support to Dropdown;
  • Elem prop to PageContainer;

Fixed

  • Issues with typings for SelectOption, Header, Connection;

Changed

  • Calendar shows range highlight when hovering / focusing the end date;

Deprecated

  • error prop from Tooltip, use danger instead;
  • small prop from Balloon and Tooltip, use size="content-fit" instead;

Warnings

  • Avatar alt text will be required in 5.0 if an image source is provided;

Under the Hood

  • InputInfo component to centralize markup of input info and infoError elements;
  • Adds jest-axe library for checking accessibility violations;

[4.1.5] - 2022-04-27

Fixed

  • Range issue with two-ended range where both sliders got stuck when maxed out;

[4.1.4] - 2022-04-08

Fixed

  • Autocomplete overlay properly hides when scrolling is not possible;

Changed

  • Autocomplete scroll overlay color changed to match same as Panel;

[4.1.3] - 2022-04-08

Fixed

  • Added ProgressTracker left border on first item if it's not active;

[4.1.2] - 2022-04-07

Fixed

  • Grid component triggers unnecessary re-rendering of its children;

[4.1.1] - 2022-04-05

Fixed

  • naming of NavItem component conflicting with naming of NavItem type;

[4.1.0] - 2022-04-04

Added

  • ImageBox component;
  • Label quark can now be used on its own;
  • Input:
    • InlineIconRight prop to add icons to the right of the input;
    • InlineIconProps and InlineIconRightProps rest props passed to inline icons;
  • Tooltip now closes when clicks outside of it happens;
  • gutterSize prop to Grid;

Under the hood

  • Adds displayName for InlineIcon components;
  • Adds InlineIconPropType validator;

Fixed

  • Balloon component causes an error during SSR;

Deprecated

  • ImageLink component in favor of ImageBox;

[4.0.2] - 2022-03-22

Fixed

  • PanelHeader id and aria-labelledby connection;

Documentation

  • Improved documentation for Popup and Panel with better accessibility coverage and working examples;

[4.0.1] - 2022-03-11

Fixed

  • Quantity validation and ARIA attributes;
  • onKeyDown calllback to Quantity no properly being executed;

[4.0.0] - 2022-03-04

Added

  • Includes all appearance changes for components from Honeycomb 6.0;
  • small prop for Box and Infobox triggering a compact appearance;
  • PanelHeader, PanelContent, PanelFooter and PanelFooterColumn to compose new Panel;
  • Elem prop to Heading component;
  • closeProps to Tag component;
  • StopsToggler, ConnectionStop to compose new Connection;
  • Autocomplete has improved keyboard navigation support (arrow keys + esc);
  • 2 more Skeleton component variations: inline and round;
  • Accordion now also accepts nodes as title;
  • flushSpace prop to Fineprint component;
  • innerRef prop to Autocomplete forwards to input element;
  • innerRef prop to Input forwards to input element;
  • Balloon experimental component;
  • id prop is required for Tooltip;

Breaking changes

  • Padding do not change on different screen sizes for Box and Infobox;
  • FooterNav, NavHorizontal, NavSide: now accepts a list of NavItem components instead of an array of plain objects;
  • Panel refactored as a composable component;
  • "Breaking in 4.0" warnings replaced by PropTypes validation;
  • FormControl renamed to FormRow;
  • Connection refactored as a composable component;
  • Removed linked and simple appearance support from List: use ListWrapper instead;
  • Removed content prop support from List: use children instead;
  • Range when has rangeEnd now requires an aria-label for the end range;
  • Fineprint doesn't allow changing the Elem prop anymore;
  • Notification appearance prop now accepts one of: danger, warning, success;
  • Icon component size scale moved to numeric values instead of t-shirt sizes;
  • Required selectLabel prop to PhoneInput;
  • options prop on Select no longer supported;

Changed

  • Panel redesigned;
  • Pager markup now uses list;
  • ProgressTracker markup always uses a list;
  • Range redesigned;
  • Header submenu items preserved in DOM when not visible;

Deleted

  • RadioWrapper component in favour of ChoiceWrapper;
  • ButtonArrow component in favour of Button link with InlineIcon;
  • Hint component in favour of a more robust Tooltip;

Under the Hood

  • react-test-renderer dependency removed;
  • HeaderNavBar created to improve Header organization and markup;
  • PagerArrowButton renamed to PagerArrow;
  • optionalChildrenValidator to validate optional children of a specific type;
  • keyboard and focus management to Panel and Popup components;
  • Migrates from node-sass to sass (dart-sass);
  • Uses honeycomb-icons-static library to generate InlineIcon components;

Fixed

  • requiredChildrenValidator now returns an error if a plain string is passed as child;
  • PhoneInput now only accepts numbers and white spaces;

Renamed InlineIcon

  • IconBusNichtSolid renamed to IconBusNightSolid;
  • IconChat2 and IconChat2Solid renamed to IconChatAlt and IconChatAltSolid respectively;
  • IconInstagram renamed to IconInsta;
  • IconLuggageAdditional2 and IconLuggageAdditional2Solid renamed to IconLuggageAdditionalAlt and IconLuggageAdditionalAltSolid respectively;

[3.2.3] - 2022-01-20

Fixed

  • Loading spinner position for input with inline label

[3.2.2] - 2021-12-22

Fixed

  • Error from Header subnavigation caused by visibilityToggler hook not handling the cursor moving out of browser viewport;

[3.2.1] - 2021-12-15

Fixed

  • Select right padding increased to avoid overlapping content with arrow icon;

[3.2.0] - 2021-12-15

Added

  • New indeterminate state for checkboxes;

[3.1.3] - 2021-12-14

Changed

  • Improved Link component examples showcasing the new tab icon usage;

Fixed

  • Style fixes for Button loading variation;

[3.1.2] - 2021-12-02

Fixed

  • Fineprint line-height limited by parent's line-height.

[3.1.1] - 2021-11-30

Fixed

  • Adds missing icons from Honeycomb 5.0 release;
  • Cursor not applied properly for individually disabled items in SelectGroup;
  • Wrong label styles for SelectGroup.

[3.1.0] - 2021-11-26

Added

  • Added functionality for disabled prop in options of SelectGroup

[3.0.2] - 2021-11-25

Fixed

  • ListItem component inside ListWrapper export conflicting with ListItem type definition inside List;

[3.0.1] - 2021-11-23

Added

  • dismissCallback prop to Notification;

[3.0.0] - 2021-10-28

Added

  • Calendar component range selection now highlights in between days;
  • ListWrapper and ListItem components;
  • Connection component can accept any valid React node for info field for station;

Changed

  • Updated default theme with new typography from Honeycomb 5.0;

Fixed

  • Connection component arrival and departure time can be the same value without key issues and warnings;

Deprecated

  • linked and simple appearances for the List component;

Under the Hood

  • react-utils file with utility functions to itnerate over React.Children;

[2.5.2] - 2021-10-02

Fixed

  • Fieldset items spacing applied wrong when items passed through map();
  • requiredChildrenValidation no longer returns type error when it encounters a React.Fragment, runs validation on the fragment children instead;

[2.5.1] - 2021-09-24

Fixed

  • Wrong setting of type attribute for when button is used with elem prop;

[2.5.0] - 2021-09-14

Added

  • Honeycomb Icons to native time and date input decorations;
  • Adds onOverlayClick prop to header;
  • Following components now accept InlineIcon:
    • Accordion,
    • Dropdown,
    • FooterNav,
    • HeaderNavigation,
    • NavHorizontal,
    • NavSide;
  • "inline" Grid columns;
  • "horizontal" variation for fieldsets, radios and checkboxes;
  • small variation for Text component;

Under the hood

  • New hook useInlineIcon to be used on NavItem and Dropdown;

[2.4.9] - 2021-09-06

Fixed

  • extraClasses prop not working for GridCol when the size is provided;

[2.4.8] - 2021-08-25

Fixed

  • Fixes missing typings for ButtonProps;
  • Submenus from HeaderNavigation on mobile no longer close when navigating inside of them;

[2.4.7] - 2021-08-17

Fixed

  • Fixes missing typings for SelectOption and SelectOptGroup;
  • adds missing typings to Header;
  • Changed children for footer component to type array;

[2.4.6] - 2021-08-09

Fixed

  • Fixes Overlay not showing when opening the mobile menu in the Header;

[2.4.5] - 2021-08-03

Fixed

  • Fix Dropdown crashing if ReactNodes passed as text in children text;

[2.4.4] - 2021-08-02

Fixed

  • added missing export for ListProps, NavItemProp, NavSideProps and ActionBtnProps

[2.4.3] - 2021-07-05

Fixed

  • Fix HeaderBar type definition typo which prevents importing of the component in typescript based projects;
  • Fix ChoiceWrapper option types to include React.InputHTMLAttributes<HTMLInputElement> + valid and disabled props

[2.4.2] - 2021-07-05

Fixed

  • SelectGroup now requires either label or aria-label to be present in props via typings;
  • Adds component names to "Breaking in 3.0" warnings from PropTypes;

[2.4.1] - 2021-07-02

Fixed

  • Required label prop in types of SelectGroup was changed to be optional

[2.4.0] - 2021-06-17

Added

  • ChoiceWrapper component;
  • portalId prop to Panel component to create a portal;
  • headerBtnLabel and closeBtnLabel props added to Panel component for accessibility;
  • Header brand element now supports custom RouterLink components;
  • NavTabBar and NavTabBarItem components;
  • "Breaking in 3.0" warnings on:
    • FooterNav, Header, HeaderNavigation, Notification, NavHorizontal, NavSide,
    • Pager, Quantity, Range, Select, Textarea, PhoneInput, TimeInput;
  • extraClasses support to Grid and GridCol components;
  • error and small variations to Tooltip;
  • SelectOption and SelectOptGroup components to compose Select;
  • itemSpacing prop to Fieldset component;
  • Selectable DataTable allows for pre-selected rows;
  • Better documentation with "Adding a component" and "Changelog" sections;

Deprecated

  • ButtonArrow component;
  • Hint component;
  • RadioWrapper component;

Fixed

  • Fixed DataTable comparator for numeric values;

Under the hood

  • Changed node_modules cache ID to be unique per branch to avoid conflicts during simultaneous deployments;
  • PropTypes validators for required children of a specific type;
  • Accessibility improvements on various components;
  • Added extend-expect to jest configuration file so we don't have to import it everytime;
  • usePortal hook;
  • useComponentId hook';

[2.3.2] - 2021-06-04

Fixed

  • Broken styles for Hint;
  • Circular dependency in DataTable quarks;

Under the hood

  • Replaced cssnano minifier with clean-css as it seems to be doing a better job;

[2.3.1] - 2021-05-11

Fixed

  • DataTable CSS rules are specific to direct children;

[2.3.0] - 2021-04-14

Added

  • DataTable component with selectable rows;
  • DataTable row sorting by column;
  • +33 new icons;
  • NavSide internal control for toggling sub menus;
  • Popup can use portals;
  • Breadcrumbs and BreadcrumbsItem components;
  • "Breaking in 3.0" label warnings on Button and Panel;

Changed

  • Icon no longer renders title by default, only when explicitly given one;

Fixed

  • Tooltip behavior when openOnHover is true;

Under the hood

  • NavItem component for handling nav-items across navigation components;

[2.2.3] - 2021-03-29

Fixed

  • provide rest props for buttons in panel component

[2.2.2] - 2021-03-24

Fixed

  • better type definition for label prop in Radio and Checkbox components;

[2.2.1] - 2021-03-24

Fixed

  • conflicts in InjeCss style tag ids

Under the hood

  • add json plugin for rollup

[2.2.0] - 2021-02-11

Added

  • HeaderBar component;
  • Panel new props fullSize and position: "bottom";
  • Tooltip new prop alignment;
  • iconPosition prop for Tag component;
  • iconProps prop to Button component;
  • full prop to MainWrapper component;
  • preserveChildrenWhenClosed prop for Accordion component;
  • Dropdown links active state can now be controlled with an activeItem prop;

Fixed

  • Icon SVG components generation script producing redundant spaces;
  • Autocomplete component missing proper extraClasses prop;
  • 'number' was missing as possible value of prop 'type' on Input Componentж

Under the hood

  • Modifies rollup config for esm modules ensuring better treeshaking and smaller bundle size;
  • Playground code migrated to TypeScript;

[2.1.1] - 2021-01-18

Fixed

  • Missing Typescript type link for Button Component

[2.1.0] - 2020-12-11

Added

  • Divider component
  • Multiselect variation for Autocomplete component;
  • Autocomplete component now accepts render props for options;
  • Button accepts iconPosition prop for icon placement and a link prop to trigger "link" appearance";
  • Inline label variation for Input component;
  • Smaller and outlined Tag variations;
  • Tooltip component can now be stateful and has "smart" positioning preventing its contents cutting on the screen edges;
  • RadioWrapper component;

Changed

  • Autocomplete options list now gets hidden on blur;
  • HeaderUserWidget no longer requires a url prop when navigation is passed;
  • Tooltip and Dropdown now implement VisibilityToggler;

Fixed

  • Wrong default icon color for Icon component;
  • Wrong PropTypes for GridCol;
  • Wrong icon/text spacing in tags;

Under the hood

  • Added VisibilityToggler hook for managing toggleable components states;

[2.0.10] - 2020-11-04

Fixed

  • Fix Quantity value not updating when user value props changes;
  • Replace QuantityChangeEvent type definition with React's SyntheticEvent generic and remove the type export to avoid limiting the change to previously just MouseEvent and KeyboardEvents

[2.0.9] - 2020-10-28

Fixed

  • Missing disabled state for SelectGroup component;
  • Removes children requirement for Text component allowing dangerouslySetInnerHTML usage.

[2.0.8] - 2020-10-28

Fixed

  • Missing react-router typings.

[2.0.7] - 2020-10-27

Fixed

  • Fixes disabled state layout not being applied to Switch component;
  • Fixes icon disappearing on disabled tertiary buttons;

[2.0.6] - 2020-10-23

Fixed

  • Wrong typing making HCComponentRouterLinkProps mandatory on all the components having RouterLink prop;

[2.0.5] - 2020-10-20

Fixed

  • Styling issues in Quantity picker;
  • ID props in form elements are now optional in TS typings if no labels are present;
  • Solves issue with RouterLink props and ReactRouter for TypeScript users;
  • Brings back honeycomb-tools.scss file;
  • Adjusts prop requirements for Button to require children, InlineIcon or aria-label;

[2.0.4] - 2020-10-12

Fixed

  • Missing small typings for Checkbox, Radio and Switch components;

[2.0.3] - 2020-10-12

Fixed

  • Missing small variations for Checkbox, Radio and Switch components;

[2.0.2] - 2020-10-05

Fixed

  • Missing typings for experimental components;

Under the hood

  • Changed internal HCComponentEvent type to HCComponentEventHandler

[2.0.1] - 2020-09-29

Fixed

  • Addresses multiple issues with component type definitions;

[2.0.0] - 2020-09-22

Added

  • Introduces theming using ThemeWrapper component;
  • Adds new layout components;
  • Brings all styling updates from Honeycomb 4.0;
  • Tons of new icons!
  • All form fields now have info feedback elements;
  • Adds dedicated infoError prop for validation messages to all form fields;
  • Adds typings to all components including experimental ones;
  • honeycomb-themes CSS/SCSS files included;

Changed

  • Linked list component can now hold HTML content. You can also apply state variations to it's items;
  • Buttons no longer default to "primary" appearance, when used without appearance prop set;
  • Updated Quantity component;
  • Updated select group component;
  • Renamed results props in Autocomplete to options;
  • Id prop is no longer required for form elements if component is used with no label;

Fixed

  • Header side nav not being rendered if no navigation and only widgets are provided;

Deprecated

  • GridCol now only accepts numbers as prop types;
  • Dropdown no longer has position prop (it's been replaced with xPosition and yPosition prop combination);

[1.6.0] - 2020-08-28

Added

  • Thanks to our wonderful community TypeScript type definitions have been added to components!

Changed

  • Updated docs regarding git workflow;
  • Panel component no longer requires a primary button;

Fixes

  • Addresses issue with non-unique Calendar keys;
  • Fixes incorrect spacing for Heading in Calendar;

[1.5.2] - 2020-07-09

Fixes

  • Dropdown links not working when clicking on them;
  • Additional attributes were not passed through to links in a Dropdown component.

[1.5.1] - 2020-06-17

Fixes

  • Grid propType validation does not allow conditional rendering;

[1.5.0] - 2020-05-05

Added

  • TimeInput component;
  • NotificationContainer component allowing you to implement "toast-like" notifications
  • Dropdown can now be positioned on top of the source element;
  • You can now customize titles of SVG icon components;
  • Adds a no padding Heading component variation;
  • onOverlayClick prop for Popup component;

Changed

  • Grid components now accept number types from 1 to 12, string type will be deprecated in 2.0.0

Fixes

  • Form input components are now displayed properly when there is no label provided to them;
  • Wrong validation icons placement in form Inputs if no label was provided;
  • All style related fixes and improvements from Honeycomb static 3.8.1

[1.4.2] - 2020-03-18

Fixed

  • Injecss breaking in IE 11 in certain cases (meh...);

[1.4.1] - 2020-02-18

Added

  • Adds missing props to attach event handlers to Toggle stations button in Connection element;
  • Improves NavHorizontal component docs, providing an example of event handling and rest props;

Fixed

  • Addresses bug with calendar component preventing you to select current day if startDate specified as new Date();
  • fixes Autocomplete sub titles font-weight;
  • addresses React key being not unique issues in phone input component;

[1.4.0] - 2020-01-10

Added

  • Avatar component;
  • Footer nav component;
  • Header user profile widget component;
  • mobileWidget prop added to Header allowing having mobile specific widgets in side nav;
  • Dropdown component;
  • Fineprint component;
  • Panel positioned to the left component variation;
  • CONTRIBUTING.md docs;
  • new icons!

Changed

  • Prefix for component CSS classes is mow hcr-, meaning Hopneycomb react now has a dedicated CSS class namespace and won't conflict with the static version in terms of styles;
  • All documentation was revised and improved;
  • Updates Honeycomb to 3.7.0;
  • Calendar box now has z-index set;

Fixed

  • Icon alignment within square buttons is beautiful now;
  • Cleaned up component examples removing duplicating IDs and some other minor code style issues;