UNPKG

react-dual-listbox

Version:
316 lines (185 loc) 12.9 kB
# Changelog ## [6.0.3](https://github.com/jakezatecky/react-dual-listbox/compare/v6.0.2...v6.0.3) (2023-02-24) ### Fixed * Fix issue with move all buttons ignoring filters (#268) ## [6.0.2](https://github.com/jakezatecky/react-dual-listbox/compare/v6.0.1...v6.0.2) (2023-02-06) ### Fixed * Add SSR-safe check for the `Element` type ## [6.0.1](https://github.com/jakezatecky/react-dual-listbox/compare/v6.0.0...v6.0.1) (2023-12-13) ### Fixed * Fix type validation for `selected` prop when using integers (#258) ## [6.0.0](https://github.com/jakezatecky/react-dual-listbox/compare/v5.0.2...v6.0.0) (2023-12-06) _This new version includes a variety of breaking changes. Please review them before upgrading._ ### Added * Add `getOptionLabel` and `getOptionValue` properties to allow for custom keys beyond `label` and `value` (#208) * Add `LazyFilterExample.jsx` to demonstrate lazy loading for the `options` property by user search ### Changed * **Breaking:** `onChange` property: the second argument now returns objects with `label`, `index`, and `value`, instead of just values (#230) * **Breaking:** `icons` property: * Will now merge any missing keys with the default icons * Rename `moveLeft`, `moveAllLeft`, `moveRight`, and `moveAllRight` to `moveToAvailable`, `moveAllToAvailable`, `moveToSelected`, and `moveAllToSelected` * **Breaking:** `iconsClass` property: now defaults to `'fa6'` * **Breaking:** `id` property: no longer defaults to a random UUID when null and no longer used for some child components * **Breaking:** `lang` property: * Will now merge any missing keys with the default language * Rename `moveLeft`, `moveAllLeft`, `moveRight`, and `moveAllRight` to `moveToAvailable`, `moveAllToAvailable`, `moveToSelected`, and `moveAllToSelected` * Split `filterPlaceholder` into `availableFilterPlaceholder` and `selectedFilterPlaceholder` * **Breaking:** `options` property: no longer has PropTypes validation for `label` and `value` (#208) * **Breaking:** Rename `*-right` and `*-left` classes to `*-to-selected` and `*-to-available` * Improve accessibility of required error * Change filter input to `type="search"` (#247) ### Removed * **Breaking:** Drop support for Less.js styles * **Breaking:** Drop support for React before v16.8 * **Breaking:** Remove `rdl-sr-only` class * Drop usage of deprecated `defaultProps` (#248) ### Fixed * Fix positioning of action buttons relative to the list boxes * Prevent situation where double-clicking an `optgroup` moved any selected options under it ### `icons` and `lang` Migration Guide The keys `moveLeft`, `moveAllLeft`, `moveRight`, and `moveAllRight` are now `moveToAvailable`, `moveAllToAvailable`, `moveToSelected`, and `moveAllToSelected` in all instances. Refer to the table below to rename any affected `icons` or `lang` keys: | Old Key Name | New Key Name | | -------------- | -------------------- | | `moveLeft` | `moveToAvailable` | | `moveAllLeft` | `moveAllToAvailable` | | `moveRight` | `moveToSelected` | | `moveAllRight` | `moveAllToSelected` | ### Other ## [v5.0.2](https://github.com/jakezatecky/react-dual-listbox/compare/v5.0.1...v5.0.2) (2023-02-08) ### Bug Fixes * [#217]: Fix issue where re-arrangement of an element would cause it to lose its selection status * Make Chrome and Firefox have the same styles when an input is active ## [v5.0.1](https://github.com/jakezatecky/react-dual-listbox/compare/v5.0.0...v5.0.1) (2023-01-26) ### Bug Fixes * Fix issues with loading stylesheets due to `exports` conflicts * Fix default imports (you can still import `./src/index.js` provided you have a Babel loader) ## [v5.0.0](https://github.com/jakezatecky/react-dual-listbox/compare/v4.0.0...v5.0.0) (2023-01-26) ### Breaking Changes * No longer minify bundled JavaScript (up to users to do so) ### Bug Fixes * [#215]: Fix issue where the control height would not scale with parent ## [v4.0.0](https://github.com/jakezatecky/react-dual-listbox/compare/v3.0.1...v4.0.0) (2022-12-08) ### Breaking Changes * Replace `moveKeyCode` property with `moveKeys` (use [keyboard keys](https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key) instead) * Merge `filterPlaceholder` property into `lang` property (see [`src/lang/default.js`](https://github.com/jakezatecky/react-dual-listbox/blob/master/src/js/lang/default.js)) * Drop `arrayFrom` ["ponyfill"](https://github.com/sindresorhus/ponyfill) and rely on `array.from` (causes problems with IE11, which is [end-of-life](https://blogs.windows.com/windowsexperience/2022/06/15/internet-explorer-11-has-retired-and-is-officially-out-of-support-what-you-need-to-know/)) ### New Features * [#52]: Add `required` property ### Bug Fixes * Fix small border radius issues when `alignActions="top"` * Force Firefox to make input borders transparent when focus received (like Chrome) ## [v3.0.1](https://github.com/jakezatecky/react-dual-listbox/compare/v3.0.0...v3.0.1) (2022-10-28) ### Bug Fixes * [#139]: Fix issue where selections would persist after moving options ### Other * Increase performance when `simpleValue={false}` ## [v3.0.0](https://github.com/jakezatecky/react-dual-listbox/compare/v2.3.0...v3.0.0) (2022-10-24) ### New Features * [#76]: **(breaking)** Add `htmlDir` property to support RTL languages (defaults to LTR) * [#146]: Add styles for small viewport devices (<576px) * [#203]: Add `controlKey` to the `onChange` function such that developers may identify which control triggered the change * [#209]: **(breaking)** Add `iconsClass`, make icons more semantic, and support Unicode icons ### Bug Fixes * [#142]: Fix issue where `preserveSelectOrder` could result in the improper removal of selected values when filtering * [#148]: Fix issue where the "Move All" actions ignored individual `disabled` status ## [v2.3.0](https://github.com/jakezatecky/react-dual-listbox/compare/v2.2.0...v2.3.0) (2022-09-06) ### Other * [#196]: Add React 18 to the peer dependency (**Note**: React 18 is not part of the automatic testing, but should work) ## [v2.2.0](https://github.com/jakezatecky/react-dual-listbox/compare/v2.1.2...v2.2.0) (2021-06-08) ### Other * [#136]: Add support for React 17 ## [v2.1.2](https://github.com/jakezatecky/react-dual-listbox/compare/v2.1.1...v2.1.2) (2021-05-20) ### Other * [#147]: Update lodash to resolve security vulnerability ## [v2.1.1](https://github.com/jakezatecky/react-dual-listbox/compare/v2.1.0...v2.1.1) (2021-04-04) ### Bug Fixes * [#113]: Fix issue with `simpleValue={false}` not playing nicely with `preserveSelectOrder` * [#116]: Fix issue where the `canFilter` would ignore optgroup labels ## [v2.1.0](https://github.com/jakezatecky/react-dual-listbox/compare/v2.0.0...v2.1.0) (2021-04-03) ### New Features * [#80]: Add `disabled` support for elements in the `options` property * [#87]: Add `title` support for elements in the `options` property * [#90]: Add `selection` argument to the `onChange` handler to track highlighted values * [#104]: Add `className` property to allow specification of a custom class on the root node * [#133]: Add `moveTop` and `moveBottom` buttons to `showOrderButtons` property ### Bug Fixes * [#103]: Fix issue where `allowDuplicates` would fail to add extra items when `simpleValue={false}` * [#110]: Fix issue where `allowDuplicates` would cause the `available` property to be ignored * [#124]: Fix issue where the selection area would return to the top of the list after moving items with some properties ## [v2.0.0](https://github.com/jakezatecky/react-dual-listbox/compare/v1.4.2...v2.0.0) (2019-05-14) ### New Features * [#22]: Add `showHeaderLabels` property to make labels appear above the available and selected list boxes ### Bug Fixes * [#73]: Fix issue where a numeric `value` types would be passed as strings in the `onChange` callback ### Other * [#61]: **(breaking)** Merge `availableLabel` and `selectedLabel` into the `lang` property and rename them to `availableHeader` and `selectedHeader` * [#62]: Add test to ensure that Less and Sass source files generate the same compiled CSS * [#75]: Reduce filtering computational complexity to increase performance when using a large number of options ## [v1.4.2](https://github.com/jakezatecky/react-dual-listbox/compare/v1.4.1...v1.4.2) (2018-12-21) ### Bug Fixes * [#57]: Fix issue where clicking on the ordering buttons would result in errors if the selected list was empty * [#58]: Fix issue where not all items marked in the selected list would be removed when the "Move left" button was clicked ## [v1.4.1](https://github.com/jakezatecky/react-dual-listbox/compare/v1.4.0...v1.4.1) (2018-12-17) ### Bug Fixes * [#56]: Fix various PropTypes errors ## [v1.4.0](https://github.com/jakezatecky/react-dual-listbox/compare/v1.3.2...v1.4.0) (2018-12-16) ### New Features * [#24]: Add `showOrderButtons` property to allow users to move the selected options up or down in the list * [#43]: Add `showNoOptionsText` property to make text appear in place of available/selected list boxes when no options are present * [#48]: Add `allowDuplicates` property to allow more than one copy of an available value to be selected * [#50]: Add `id` property for control over the HTML ID assigned to the component instance * [#54]: Add `lang` property for localization * [#55]: Add `icons` property for icon customization ### Bug Fixes * [#53]: Fix an issue where previously selected options would be duplicated when using the "Move all right" button ## [v1.3.2](https://github.com/jakezatecky/react-dual-listbox/compare/v1.3.1...v1.3.2) (2018-02-06) ### Bug Fixes * [#35]: Fix issue where `simpleValue` would not reveal selected optgroup options * [#36]: Fix default filtering when dealing with regular expression symbols ## [v1.3.1](https://github.com/jakezatecky/react-dual-listbox/compare/v1.3.0...v1.3.1) (2018-01-06) ### Bug Fixes * [#33]: Fix sizing issues in IE 11 when the action buttons are aligned to the top ## [v1.3.0](https://github.com/jakezatecky/react-dual-listbox/compare/v1.2.0...v1.3.0) (2017-09-10) ### New Features * [#27]: Add `simpleValue` property to disable the default behavior of returning an array of values rather than an array of option objects * [#28]: Add `availableLabel` and `selectedLabel` to change the hidden control label texts * [#30]: Add `moveKeyCodes` property to set the key codes that trigger a move for the select options ## [v1.2.0](https://github.com/jakezatecky/react-dual-listbox/compare/v1.1.0...v1.2.0) (2017-08-12) ### New Features * [#26]: Add support for `filter` and `onFilterChange` properties ## [v1.1.0](https://github.com/jakezatecky/react-dual-listbox/compare/v1.0.1...v1.1.0) (2017-05-11) ### New Features * [#21]: Add support for `disabled` property ## [v1.0.1](https://github.com/jakezatecky/react-dual-listbox/compare/v1.0.0...v1.0.1) (2017-04-11) ### Bug Fixes * [#19]: Fix issue with additional border appearing between two action buttons ## [v1.0.0](https://github.com/jakezatecky/react-dual-listbox/compare/v0.6.0...v1.0.0) (2017-04-10) ### New Features * [#6]: Search and filtering has been added with the props `canFilter`, `filterPlaceholder`, and `filterCallback` * [#14]: Allow movement buttons to be arranged above lists using the `alignActions` prop ### Bug Fixes * [#10]: Fix an issue where selections would shift down after moving items to the opposite list ### Other * [#18]: Remove requirement on `Array.from` polyfill ## [v0.6.0](https://github.com/jakezatecky/react-dual-listbox/compare/v0.5.1...v0.6.0) (2017-03-25) ### New Features * [#15]: Components are now more accessible to assistive technologies ### Other * [#16]: **(breaking)** Rename `.rdl-btn` to `.rdl-move` * [#17]: **(breaking)** Use color more consistently and make font-family inherit ## [v0.5.1](https://github.com/jakezatecky/react-dual-listbox/compare/v0.5.0...v0.5.1) (2017-01-12) ### New Features * [#2]: Add support for `availableRef` and `selectedRef` ## [v0.5.0](https://github.com/jakezatecky/react-dual-listbox/compare/v0.4.0...v0.5.0) (2017-01-10) ### New Features * [#12]: Bootstrap is no longer required for the component to display properly * [#13]: Component styles are a bit more flexible by default ## [v0.4.0](https://github.com/jakezatecky/react-dual-listbox/compare/v0.3.4...v0.4.0) (2016-12-31) ### Bug Fixes * [#3]: Fix an issue where events were not firing in IE 11 * [#9]: Fix an issue where flexbox styling in IE 11 was not being applied correctly ### New Features * [#11]: Add ability to toggle selected options on pressing <kbd>Enter</kbd> ## [v0.3.4](https://github.com/jakezatecky/react-dual-listbox/compare/v0.3.3...v0.3.4) (2016-12-28) ### Bug Fixes * [#7]: Fix an issue where clicking on the icon of a button would not trigger events properly in some browsers