Releases: wix/react-native-ui-lib
6.23.0
🎁 Features
• New Marquee component for sliding text, sliding text bottom up, left right and etc. (#2311)
• Dash - new component for drawing dashed line (#2305, #2308)
• Support for a non-moving row in SortableList component (locked) (#2296)
• Gradient - new component (inc. removing react-native-color
dep). (#2309)
🔧 Fixes
• ExpandableSection require cycle fix (#2291)
• TextField Presenter getColorByState fix, new util function isDesignToken. (#2290)
• Incubator.Dialog - fix hiding when layout changes (#2299, #2300)
• Incubator.Dialog - remove header's renderContent (#2293)
• Incubator.Dialog - do not show empty header (with only knob and divider) (#2310)
• Fix Colors.loadDesignTokens API (#2302)
• ScrollBar - fix default gradientColor (#2304)
⚙️ Maintenance & Infra
• Lock RNN to 7.29.0 to fix Android build (#2297)
• Fixing some new random TS errors. (#2314)
• Add $backgroundElevatedLight token (#2301)
• Update tokens colors (#2303)
• Fix Gemfile syntax error (#2298)
6.22.0
🎁 Features
• New behavior for the FloatingButton (#2255)
• Slider - Adding 'reset' function with callback 'onReset', initial values to range slider and 'useGap' prop. (#2248)
• Added generateTokens
method for generating design tokens based on chosen color. (#2265)
• Handle Shadows in dark mode (#2242)
• Drawer - Increase swipe threshold (#2249)
• Checkbox - Add FlexModifiers to labelProps (#2243)
• TextArea - use Design Tokens to support dark mode (#2261)
• DateTimePicker - add default themeVariant
for dark mode support (#2259)
• Modal - set default backgroundColor (#2267)
• TextField presenter now supports design tokens. (#2275)
• ExpandableSection support using a separator when expanded, feature for List.CollapsableItem (#2279)
🔧 Fixes
• Fix selected card iconColor (#2236)
• Fix modal bg color (#2278)
• IncubatorDialog - Fix no measure occurring and enter animation (#2282)
• Incubator.Dialog - new features and fixes, start a migration in ActionSheet. (#2251)
• View - prioritize backgroundColor prop over bg modifiers (#2286)
⚙️ Maintenance & Infra
• Docs - Support components docs notes (#2244)
• Update @types/react-native to 0.68.5 in demo environment (#2260)
• Fix dark mode screen (#2268)
• Fix Typo in docs (#2239)
• Add web playground
6.21.0
🎁 Features
• Create an imperative API for TabController for setting tab imperatively (#2197)
• ActionSheet - allow overriding Dialog's props (#2211)
🔧 Fixes
• Picker - fix setComponentTheme support (#2212)
• Fixed search functionality, search logo appearance (#2208)
• ChipsInput - handle backspace with no chips (#2222)
• AnimatedImage - move from LayoutAnimation to AnimationStyle (#2223)
• Avatar - handle SVG image (fix Android crash and red screen) (#2224)
• SortableList - fix issue with flaky sorting when dragging fast + add scale
to props + support a gesture-handler version in Incubator.TextField
(#2217)
• Fixed demo app dark mode (#2209)
• Fix demo app colors for dark mode (#2229)
• Modal.TopBar - add key to buttons (#2237)
• Badge - update default background color (#2241)
• StackAggregator - fix children update. (#2103)
• Fix typing issue for standalone components (#2210)
• added useColorScheme()
hook to trigger a change when toggling appearance. (#2234)
⚙️ Maintenance & Infra
• Changed the demo screen app according to the new design. (#2174)
• Update blue50 color (#2213)
• Change the Incubator.Dialog
to use hooks, fixes issues with size given in percentage and not numbers (#2116)
• Incubator.TransitionView - remove (move hook to Incubator.Dialog) (#2228)
• Drawer - delay actions render to reduce component loading time (#2201)
• Added listKey prop to FlatList of WheelPicker
component (#2215)
• Optimize use of asBaseComponent in Picker and TextField (#2200)
6.20.0
🎁 Features
• SortableGridList - added RTL support (#2198)
• View - make component slightly faster when not using reanimated
prop (#2184)
• TouchableOpacity - support passing customValue
to onPressIn and onPressOut functions. (#2164)
🔧 Fixes
• Image - fix resize mode bug on android (#2150)
• WheelPicker - optionalDependencies error should only show on usage (#2132)
• TouchableOpacity - add missing bg modifiers (#2160)
• Image - fix potential Android crash related to changing views while animating (send useBackgroundContainer) (#2171)
• Avatar - fix customRibbon prop (#2173)
• ChipsInput - field get trimmed when inserting more than 1 line of chips. (#2183)
• TextField - fix initial animation state of floating placeholder (#2196)
• TextField - memoize inner components' style to avoid redundant renders (#2170)
• Timeline - fix example url (#2172) (#2162)
• TouchableOpacity - Avoid redundant setState (#2177)
• ColorPalette - fix scrolling and extra renders (#2179)
💡 Deprecations & Migrations
• Migrate PropTypes imports to deprecated-react-native-prop-types
package - This allow using RN0.69 (#2156)
⚙️ Maintenance & Infra
• Update dark mode colors and tokens (#2193)
• Avatar - change to function component (performance) (#2191)
• SkeletonView - small changes that should improve performance (#2153)
• AnimatedImage - fix functionality and improve performance (#2157)
• Remove asBaseComponent from ColorSwatch, ColorPalette and ColorPicker (#2155)
• Button perf improvements (#2169)
• Setup Intl Polyfills to support Intl with hermes engine in our demo app (#2185)
• npmignore - add docs eslint and tests (#2192)
• Improve Icon perf - Ignore modifiers that not relevant to icon (#2180)
6.19.0
🎁 Features
• Upgrade to RN68 (#2041)
🔧 Fixes
• Use the new react-native-gesture-handler activateAfterLongPress
to fix drag not always working on Android - REQUIRES VERSION 2.5.0 of react-native-gesture-handler (#2110)
• SortableGridList - fix issue with flaky sorting when dragging an item too fast (#2118)
• Picker - fix minor issues with fieldType
- support changing label style for "filter" type and override trailingAccessory (#2124)
• Hint - fix tokens (#2122)
• Picker - handle internal undefined ref when user passes custom renderPicker
(#2137)
• Picker - support useWheelPicker
prop in order to render a wheel picker component (#2100)
• ColorSwatch - Improve performance by adding accessibilityInfo
only if the accessibility mode is on (#2154)
• Drawer - remove duplicate testID
used on the second element (#2130)
• Fix crash AssertNotNull (#2148)
💡 Deprecations & Migrations
• Keyboard.KeyboardAccessoryView - start prop deprecation for 'iOSScrollBehavior' (#2102)
⚙️ Maintenance & Infra
• Improve modifiers' performance (#2136)
• asBaseComponent - add support for passing options
for optimizations (#2141)
• Pass modifiersOptions
to atom components (Text, Image, TouchableOpacity) to optimize performance (#2142)
• Optimize modifiers (#2143)
• Create infra for useModifiers
and useThemeProps
hooks (#2145)
• View - convert to a function component to reduce render hierarchy (#2146)
• Set perf tests infrastructure with reassure
(#2151)
• asBaseComponent - apply ThemeManager ThemeContext (#2152)
• Move GridList
listPadding logic to useGridLayout
hook to share it with SortableGridList (#2117)
• Design Tokens renaming (#2123)
• PanView refactor (infra) (#2088)
• TransitionView refactor (infra) (#2089)
• Add native design tokens to iOS (#2131)
• Add Profiler (#2144)
• Fix Profiler's export (#2149)
• Implement the new demo app structure (#2133)
6.18.0
📢 The new version will require react-native-gesture-handler@2.5.0
for our SortableList and SortableGridList components
🎁 Features
• Slider - adding range slider functionality (#2084)
• Support Picker fieldType for different picker layouts. form (default), filter and settings (#2054)
• ExpandableSection - add expanded to the accessibilityState (#2073)
• Colors.colorStringValue - support null (#2078)
🔧 Fixes
• Incubator.TextField - fix initial validity (#2096)
• Fix Incubator.WheelPicker alignments (#2082)
• Fixed Stepper documentation. (#2104)
⚙️ Maintenance & Infra
• Update demo app to use react-native-gesture-handler to 2.5.0 (#2108)
• Set default color for Text component to be $textDefault (#2080)
• Design Tokens - update colors (#2085)
6.17.0
🎁 Features
• New SortableList component! (#1958 & #2057)
• Picker.Item - expose isItemDisabled
info in renderItem
callback (#2070)
🔧 Fixes
• KeyboardAwareScrollView - fix exports (#2064)
⚙️ Maintenance & Infra
• Migrate DateTimePicker to a function component (#2050)
• Refector component drivers and add a new component drivers (#2066)
• Native lib - bumping version to 3.0.8 (#2065)
6.16.0
🚀 What’s New?
• Timeline - new component. (#2027)
🎁 Features
• Allow to call isValid
on TextField ref to check if it's valid without triggering field validation (#2049)
• Small performance improvement in TabController transitions (#2039)
• Dialog (old) - expose static directions (#2060)
🔧 Fixes
• KeyboardAccessoryView - fix addBottomView
not working (#2045)
• Fix onChange type of DateTimePicker (#2056)
• Fix Modal backgroundColor (#2058)
• Carousel - fix initial page (#2059)
⚙️ Maintenance & Infra
• Docs - fix broken links, 10x to @ibrahim-mousa ! (#2052)
• Fix design tokens in Picker components (#2036)
6.15.0
🎁 Features
• Breaking: Support dynamic data in SortableGridList. This requires to pass id
prop for each item (#2020)
• TabController - allow sending 'faderProps' (#2008)
• Modal.TopBar - Support multiple buttons (#2011)
• KeyboardTrackingView - add 'bottomViewColor' prop (#2013)
• KeyboardAvoidingView - Modal support (#2019)
• Allows to pass in faderProps
to Incubator.WheelPicker
and forward them to the <Fader />
component (#1947)
• Avatar - allow the override of 'testID' in Badge (#2035)
• Design Tokens - Badge (#2024)
• Design Tokens - ColorSwatch (#2029)
• Design Tokens - Wizard (#2026)
• Update tokens by the guidelines (#2032)
• Update icon - button color to design tokens (#2031)
• Slider - disabled border color - design tokens (#2033)
🔧 Fixes
• Fix TS errors that started after @types/react v18 (#2001)
• Fix Incubator TextField placeholder's disabled color (when floating is also disabled) (#2003)
• Fix TabBar backgroundColor (#2014)
• Fix issue with centering TextField component (#2018)
• Fix error with Picker dialog when passing 'useNativePicker' (#2030)
• Picker - multi select - fix behavior when the value is changed by user (#2010)
• Carousel - fix initial page offset (contentOffset) (#1991)
• SegmentedControl - handle 'onLayout' being called twice (#2028)
⚙️ Maintenance & Infra
• Docs - Removing "extendsLink" to uilib's components (#2006)
• Fix keyboard docs (#2009)
• Fix docs broken links (#2012)
• Refactor DateTimePicker expandable overlay (#1995)
• Refactor MaskedInput component, remove legacy TextField usage (#1976)
• Upgrade 'reanimated' and 'gesture-handler' to latest versions in our demo app (#1977)
• Add error support to LogService (#2025)
• Remove all generated types files (#2040)
• eslint - function deprecation - fix usage from source (#2015)
6.14.0
🎁 Features
• Support a config file for setting initial configuration for uilib (#1969)
• Support passing custom loaderElement to Toast component (#1971)
• TouchableOpacity - Expose activeScale prop and enable useNative by default when using it (#1997)
• Skeleton - Expose 'shimmerStyle' prop. (#1950)
• Button - support paddings modifier (#1989)
• Expose new imperative methods on picker component to allow opening expandable modal (openExpandable, closeExpandable, toggleExpandable) (#1988)
• Support using RN PlatformColor API for loaded design tokens (#1939)
• Keyboard components - add docs (#1984)
🔧 Fixes
• TabController - support safe area (useSafeArea) and constant indicator width (indicatorWidth), Fixes #1746 (#1923)
• Image - fix support for size props (width, height) on Android (#1987)
• Fix TextField jumping issue when there's no label or floating placeholder and the validation message positioned at top (#1990)
• Fix alignments for RadioButton and add contentOnLeft
prop (#1999)
• Fix usages of PlatformColor in TabController TabBaritem (#1955)
• Fix interpolateColor bug in Incubator.WheelPicker (#1979)
• Fix margin modifiers for the basic skeleton (#1983)
• Fix how we handle platform color strings values (#1960)
• KeyboardAccessoryViewProps - Fix 'onItemSelected' params for types (#1975)
• Skeleton - fix type related bugs (#1998)
• Don't enable scroll if content is less than 1 pixel than it container (#1972)
⚙️ Maintenance & Infra
• Remove babel plugin responsible for transforming TS types to React prop types. (#1970)
• Babel main index file to support components lazy loading (#1980)
• Cleanup old script files and packagejson scripts commands (#1986)
• Temp solution for fixing TextFieldMigrator static members (#1951)
• Carousel, GridListItem - to design tokens (#1949)
• Update outline design tokens (#1959)
• Fader - move to design tokens (#1954)
• TabController - design tokens - fixes (#1935)
• Dividers - move to design tokens (#1964)
• ProgressBar - move to design tokens (#1962)
• Update divider and icon tokens (#1965)
• Migrate button components to design tokens (#1985)