Skip to content

Releases: based-ghost/react-functional-select

v2.3.5

21 May 00:03

Choose a tag to compare

Change Log

🐞 Bugfix

  • Merged pull request #12 from @stephenwf (Updated useIsTouchDevice to work when rendering with SSR).

v.2.3.4

16 May 20:29

Choose a tag to compare

Change Log

🛠 Misc

  • Performance micro-optimization in IndicatorIcons.tsx (pertaining to previous release: v2.3.3) - only create new object for forwardState if clearIcon or caretIcon property is a function.

v2.3.3

16 May 15:29

Choose a tag to compare

Change Log

🚀 Feature

  • Addresses issue: To styling with different states #11 . Expanded the typings for clearIcon and caretIcon properties to be ReactNode | ((state: Partial<IndicatorIconsProps>) => ReactNode) - allowing a function as an option enables the ability to work with state values from the wrapping component IndicatorIcons.tsx. The state forwarded to the function would be:
const state = {
  menuOpen,
  isLoading: !!isLoading,
  isInvalid: !!isInvalid,
  isDisabled: !!isDisabled
};

Properties isLoading, isInvalid, isDisabled are all undefined by default, so normalizing to boolean.

v2.3.2

14 May 19:41

Choose a tag to compare

Change Log

🐞 Bugfix

  • Replacing touch-screen capable device detection tests in hook useIsTouchDevice.ts. Test using window.matchMedia('(pointer: coarse)').matches began returning false in Edge.

v2.3.1

14 May 19:08

Choose a tag to compare

Change Log

🐞 Bugfix

  • Need to test browser for IE and Edge (& chromium) when conditionally applying CSS rule of ::-ms-clear { display: none; } in AutosizeInput.tsx component.

v2.3.0

12 May 20:48

Choose a tag to compare

Change Log

🚀 Feature

  • Improved, cleaner looking default clear icon - convert from a <div /> wrapping a special character to <svg />. This has some small implications for the Theme object as some of the properties have changed - at path DefaultTheme.icon.clear: fontFamily, fontWeight, and fontSize properties were removed and height, width were added with default values of 16px, 14px respectively.

🛠 Misc

  • Add new hook useIsTouchDevice.ts - which uses a ref to calculate just once if device is touch-enabled - only if true, then will various touch events be added to elements (before touch events were always just being added regardless)..
  • Bump some dev dependencies.

💥 Breaking Changes

  • 1 minor breaking change that, while not resulting in any runtime errors, could impact prior versions style/display for the Clear Icon. Please see the feature item outlined in this realse above.

v2.2.0

11 May 21:26

Choose a tag to compare

Change Log

🚀 Feature

  • Added new property menuPosition (typeof 'top' | 'auto' | 'bottom'). Determines where menu will be placed in relation to the control - 'auto' will first check if menu has space to open below the control, otherwise it will open above the control. Defaults to 'bottom', which essentially keeps current functionality intact.

🛠 Misc

  • Add height: 100%; and align-items: center; style to IndicatorIcon div - expands size of active icon element for easier user manipulation.
  • Bump some dev dependencies.

v2.1.0

20 Apr 23:32

Choose a tag to compare

Change Log

🚀 Feature

  • New 'async' mode for fetching dynamic options from a remote server using the search input value - Async Story
  • New optional property: async: boolean
  • New optional property: loadingMsg: string
  • New optional property: onInputChange: (value?: string) => void
  • New optional property: onSearchChange: (value?: string) => void

🛠 Misc

  • Optimization by removing extraneous <div> element that wrapped the <input> element in the AutosizeInput.tsx component (replaced with React.Fragment).
  • Bump some dev dependencies.

💥 Breaking Changes

  • 1 minor breaking change that, while not resulting in any runtime errors, could in rare scenarios alter custom styling. The change is outlined in the first bullet point under the Misc header above. Since a <div> element was removed from the html rendered, any CSS rules targeting the <input> element may need to be updated to account for this.

v2.0.6

25 Mar 16:58

Choose a tag to compare

Change Log

🛠 Misc

  • Primarily trivial code refactoring that have little to no impact on functionality and/or performance.
  • Bump some dev dependencies.

v2.0.5

16 Feb 23:15

Choose a tag to compare

Change Log

🚀 Feature

  • Merge PR 'Added aria props' (commit 8b9a6a7) which expands aria spec adherence by adding aria attributes to root div element.

🛠 Misc

  • Bump some dev dependencies.
  • optimize validateSetValueParam() utility function by replacing filter + map with reduce and then use [...new Set(arr)] to make unique.