-
(Might potentially be a minor CSS breaking change) Replaced
<Select/>
's CSS variable--rrui-select-arrow-border-width
with four separate side-specific border width. The reason was Next.js 12 incorrectly handling a "combined"border-width
CSS property. -
Added
arrowComponent
property on<Select/>
component.
-
(Might potentially be a minor CSS breaking change) Added
expandAnimationDuration
property on<SlideOutMenu/>
component. By default it's220ms
. When changing the--rrui-slideout-menu-animation-duration
CSS variable value, also pass that value as this property. -
(Might potentially be a minor CSS breaking change) Renamed
--rrui-slideout-menu-animation-duration
CSS variable to--rrui-slide-out-menu-animation-duration
(with a dash between "slide" and "out"). -
Added some CSS variable on
<SlideOutMenu/>
:--rrui-slide-out-menu-vertical-padding
--rrui-slide-out-menu-box-shadow
--rrui-slide-out-menu-opacity
(which is1
by default)
-
(Minor CSS breaking change) Removed
--rrui-input-field-border-bottom-width
CSS variable and CSS rule. Now, only--rrui-input-field-border-width
variable is used, which is1px
by default. -
(Might potentially be a minor CSS breaking change) Added
--rrui-input-field-box-shadow
CSS variable. -
(Might potentially be a minor CSS breaking change) Renamed
--rrui-input-field-shadow-radius--autofill
CSS variable to--rrui-input-field-box-shadow-radius--autofill
. -
(Might potentially be a minor CSS breaking change) Removed
.rrui__date-picker--disabled
CSS class (seems to be not used). -
Removed the workaround for removing Chrome
<input/>
autofill background color:
:root {
--rrui-input-field-background-color--autofill : var(--rrui-input-field-background-color);
--rrui-input-field-background-color-focus--autofill : var(--rrui-input-field-background-color-focus);
--rrui-input-field-background-color-error--autofill : var(--rrui-input-field-background-color-error);
--rrui-input-field-background-color-error-focus--autofill : var(--rrui-input-field-background-color-error-focus);
--rrui-input-field-box-shadow-radius--autofill : 1000px;
}
/* Overrides Chrome autofill yellow background color. */
.rrui__input-field:-webkit-autofill
{
box-shadow : 0 0 0 var(--rrui-input-field-box-shadow-radius--autofill) var(--rrui-input-field-background-color--autofill) inset;
}
/* Overrides Chrome autofill yellow background color (when `<TextInput/>` is focused). */
.rrui__input-field:focus:-webkit-autofill
{
box-shadow : 0 0 0 var(--rrui-input-field-box-shadow-radius--autofill) var(--rrui-input-field-background-color-focus--autofill) inset;
}
/* Overrides Chrome autofill yellow background color (when `<TextInput/>` is invalid). */
.rrui__input-field--invalid:-webkit-autofill
{
box-shadow : 0 0 0 var(--rrui-input-field-box-shadow-radius--autofill) var(--rrui-input-field-background-color-error--autofill) inset;
}
/* Overrides Chrome autofill yellow background color (when `<TextInput/>` is invalid). */
/* Overrides the corresponding `:focus` CSS rule. */
.rrui__input-field--invalid:focus:-webkit-autofill
{
box-shadow : 0 0 0 var(--rrui-input-field-box-shadow-radius--autofill) var(--rrui-input-field-background-color-error-focus--autofill) inset;
}
- Renamed
<DatePicker/>
'sdefaultMonthDate
property toinitialCalendarDate
. - Fixed
<DatePicker/>
'saria-label
stuff:- Supports
aria-describedby
property. - Supports
aria-label
property. - Removed
getAriaLabel()
property.
- Supports
- Removed the default format
placeholder
on<DatePicker/>
. Pass aplaceholder
manually to show it.
- Refactored
<DatePicker/>
component. - Added
defaultMonthDate
property on<DatePicker/>
. - (could be a "breaking" change for some, but not significant) Moved
background-color
andborder-radius
from.DayPicker-Day
to.DayPicker-Day:before
. - (could be a "breaking" change for some, but not significant) Removed
<DatePicker/>
'snoon
property. - (could be a "breaking" change for some, but not significant) Removed
<DatePicker/>
'slocaleUtils
property. - (could be a "breaking" change for some, but not significant) Removed
<DatePicker/>
'smonths
property. - (could be a "breaking" change for some, but not significant) Removed
<DatePicker/>
'sweekdaysLong
property. - (could be a "breaking" change for some, but not significant) Removed
<DatePicker/>
'sweekdaysShort
property. - (could be a "breaking" change for some, but not significant) Removed
<DatePicker/>
'sfirstDayOfWeek
property.
-
<DatePicker/>
:utc
istrue
by default,noon
isfalse
by default. -
Updated
react
andreact-dom
version requirement from16.3
to16.8
. -
Removed deprecated
<FileUpload/>
action
property. -
<Snackbar/>
wraps the message content in a<p class="rrui__snackbar__text"/>
only if the message content is a string (not a React element). -
(misc)
<DatePicker/>
doesn't expand the calendar on programmatic focus or focus viaTab
key.
- (CSS breaking change) The
<ExpansionPanel/>
component has some breaking changes in this version: renamed some CSS class names, removed some CSS variables.
- Refactored
<Expandable/>
.toggle()
.
<TextInput/>
now doesReact.forwardRef()
.
- (CSS breaking change)
<Snackbar/>
markup simplified: there's norrui__snackbar__container
now and ifcomponent
property is passed then it's not wrapped inrrui__snackbar__text
.<Snackbar/>
CSS styles changed a bit.
- (breaking change) React >= 16.3 is required now.
-
(CSS breaking change) Renamed
--rrui-input-field-border-width
CSS variable to--rrui-input-field-border-bottom-width
.--rrui-input-field-border-width
CSS variable is now named correctly. -
(CSS breaking change) Renamed
--rrui-expansion-panel-heading-height
CSS variable to--rrui-expansion-panel-header-height
("heading" -> "header"). -
(CSS breaking change) Renamed
--rrui-expansion-panel-heading-height-expanded
CSS variable to--rrui-expansion-panel-header-height-expanded
("heading" -> "header"). -
(CSS breaking change) Renamed
--rrui-expansion-panel-border-color-focus
CSS variable to--rrui-expansion-panel-icon-start-border-color-focus
(added "-icon-start"). -
(CSS breaking change) Renamed
--rrui-expansion-panel-border-color-active
CSS variable to--rrui-expansion-panel-icon-start-border-color-active
(added "-icon-start").
- (CSS change) Changed the animation of
<ExpandableMenu/>
: it's now "fade upwards" rather than "expand". Addedbutton
property for the toggler button component (demo example has been updated).
- (CSS change) Added
.rrui__input
CSS class to<Switch/>
that makes it height equal to input height. Also<Switch/>
label is now limited to a single line (not multi-line).
- (CSS change, shouldn't be a "breaking" one) Added
color: inherit
to.rrui__button-reset
(that means "to all buttons"). <Tooltip/>
'shideTimeout
property was renamed tohideDelay
.hideTimeout
still works but is deprecated.
- Adjusted
<Modal/>
padding.
- Fixed
--rrui-input-field-text-color
CSS variable not previously being applied: it appliescolor
to<input/>
s and is--rrui-black-color
by default.
-
(CSS small breaking change) Previously when
<Switch/>
hadchildren
it also had.rrui__input
CSS class attached. Now this CSS class is not being attached to such<Switch/>
. -
Added
rightContent: true/false
property to<Switch/>
for placingchildren
on the right side of the toggle.
- Changed
<Snackbar/>
styles a bit (stretches to full width on mobile;min-height
instead ofheight
on.rrui__snackbar
;<div className="rrui__snackbar__text">
-><p className="rrui__snackbar__text" style="margin: 0">
; Addedpadding-top
andpadding-bottom
to.rrui__snackbar__text
). Addedaction
andclose
parameters to<Snackbar/>
.
-
Added
placement
to<Tooltip/>
: "top", "left", "bottom", "right". -
Renamed CSS variables:
--rrui-tooltip-y-visible
->--rrui-tooltip-visible-distance
,--rrui-tooltip-y-hidden
->--rrui-tooltip-hidden-distance
.
- Changed
<Tooltip/>
's top positions: removedmargin-top
and added three CSS variables:
--rrui-tooltip-animation-duration : 120ms;
--rrui-tooltip-y-visible : -0.4em;
--rrui-tooltip-y-hidden : -0.1em;
-
Added the missing
-webkit-appearance : none
on.rrui__input-field
. -
Added
background-color
to.rrui__input-field
. -
Added
icon
property to<TextInput/>
. -
Changed
<MenuIcon/>
design (incl. animation).
-
--rrui-card-text-color
default value changed fromcurrentColor
to--rrui-black-color
becausecurrentColor
had some issues in MS Edge (not in IE). -
Removed
color: currentColor
from.rrui__slideout-menu__item
(that was a weird CSS rule).
-
Removed
react-dnd
from the library because it's buggy and is no longer supported. Replaced with simple native HTML file drag-n-drop. -
Multiple file upload/drop now passes an
Array
instead of anDataTransferItemsList
orFileList
toonChange()
.
- Fixed
<ActivityIndicator/>
SVG path animation using 100% CPU for some reason.<ActivityIndicator/>
component got replaced for that, and the line thickness is now fixed compared of the older percentage value. Line thickness can be set as.rrui__activity-indicator__arc { border-width: ... }
.
- (CSS breaking change) Removed the default padding from
.rrui__date-picker .rrui__expandable__content
and added the default padding to.DayPicker-wrapper
. Also changed the positioning of.DayPicker-NavButton
s. Added a border to.DayPicker-wrapper
when it's focused (accessibility).
- Fixed
rrui__outline
CSS class across components.
-
Removed default
aria-haspopup
andaria-label
attributes from<MenuButton/>
: pass them manually if required. -
Renamed
rrui__outline
torrui__outline--default
.rrui__outline
is now always added to all focusable components and can be used to define custom "outline"-like styling (for example, viabox-shadow
). -
Added
<KeyboardNavigationListener/>
component which setsrrui__tabbing
CSS class ondocument.body
. It can be used to only show outlines on buttons/links when the user is actually tabbing. It's still not considered a 100%-formally-correct solution because "screen readers" still emit all kinds of mouse events. It's more of an experimental feature. -
Added
buttonAriaLabel
property to<DatePicker/>
.
- Added focus on
<SlideOutMenu/>
upon expanding it. Added close<SlideOutMenu/>
on Escape. Added focus on<MenuButton/>
upon collapsing the menu.
-
Renamed
<Modal/>
'scontentLabel
toariaLabel
.contentLabel
still works but is deprecated. -
Added
togglerAriaHasPopup
property to<ExpandableMenu/>
.
-
Removed the recently added
showOutline()
function. Userrui__outline
CSS class directly to retain outlines. -
<ExpandableMenu/>
now acceptstoggler
,togglerAriaLabel
andtogglerClassName
properties. The older way oftoggler
being the first child is now deprecated. -
<FileUpload/>
's.rrui__file-upload__area
now hastabIndex
property which is0
by default (for accessibility), and pressingEnter
orSpacebar
triggersclick
event.<DropFileUpload/>
and<DropFilesUpload/>
both wrap<FileUpload/>
. -
Some ARIA-related fixes.
-
A couple of
:focus
fixes (accessibility). -
Added
showOutline(true)
function for not addingoutline: none
CSS rule to buttons, inputs and selects (some people prefer this). -
Increased default
<MenuButton/>
width and height. Shouldn't break anyone's code because users of this library almost 100% re-define the menu button dimensions. -
Fixed
<Select/>
focusing on the toggler<button/>
instead of the hidden<select/>
.
- (CSS breaking change) Introduced a list of "CSS variables" for components for easier customization. This may possibly cause a couple of small breaking changes to CSS:
color
property is now being explicitly set on components (e.g.<Select/>
options) instead of being not defined which could potentially overwrite someone's color if it was previously being inherited from a parent. Also,<TextInput/>
now hasbackground-color
,color
andfont-size: inherit
set explicitly (previously wasn't set and was using defaults for these). Also<Checkbox/>
box size changed fromunit * 2
to0.9em
. Also renamed--rrui-list-icon-margin
to--rrui-list-icon-margin
.
- (breaking change)
<Modal/>
'scloseButton
was previously styled asfloat: right
which resulted in multiline content for single-line notifications. Re-styledcloseButton
withoutfloat
usingflex
.
-
(CSS breaking change) Refactored
<SlideOutMenu/>
styles. -
<SlideOutMenu/>
animation duration increased (added a new CSS variable for that). -
<SlideOutMenu/>
now takes an optionalanchor
property which can be one of:left
,right
,top
,bottom
. -
<SlideOutMenu/>
now takes an optionalfullscreen
boolean property.
-
Refactored menu icon component, and it's now exported as
<MenuIcon/>
. -
(breaking change) Removed
.rrui__menu-button-icon-x
class, use.rrui__menu-icon
instead.
- Removed
reset
property from<Snackbar/>
. It's not required now.
-
Added
value
property to<List/>
and renamedonSelectItem
toonChange
.onSelectItem
property still works but is deprecated. -
Added the currently selected item indication to
<List/>
(and the components using it like<Select/>
and<Autocomplete/>
):.rrui__list__item--selected
.
-
.rrui__file-upload
component now has two children:.rrui__file-upload__area
and.rrui__input-error
. This is unlikely to break existing code because.rrui__input-error
isdisplay: none
, so iferror
is not passed then it doesn't matter much which CSS class is customized:.rrui__file-upload
or.rrui__file-upload__area
. -
Renamed
<FileUpload/>
action
property toonChange
.action
still works but is deprecated. -
Added
<DropFileUpload/>
and<DropMultiFileUpload/>
.
-
Reduced React requirements for most components (now >= 0.14) for
PureComponent
. -
(breaking change) Renamed
SegmentedControl
toSwitcher
andrrui__segmented-control__...
torrui__switcher__...
.
- Rewrote
<List/>
without using<React.Fragment/>
for older React support (>= 15.3.0 forPureComponent
support).
- (could be a minor breaking change)
indicateInvalid
is nowtrue
by default, and is considered an "undocumented" feature.
-
(breaking change) Changed how
<List.Item/>
works: it is now just a wrapper for itschildren
. If<List onSelectItem/>
or<List.Item onSelect/>
are present then it creates a<button/>
. Otherwise it just renderschildren
(adding some props to them, likeonClick
andonMouseDown
). -
(breaking change)
<Snackbar/>
no longer receivesvalue
of typeString
— only an object of shape{ content, type, component, ... }
is accepted. -
(breaking change) Renamed
SegmentedControl
toSwitcher
andrrui__segmented-control__...
torrui__switcher__...
. -
(could be a minor breaking change)
indicateInvalid
is nowtrue
by default, and is considered an "undocumented" feature.
-
(breaking change) React >= 16.3 is required ("React Portals" are used for
<Tooltip/>
, which requires React >= 16;react-dnd@5
requires React >= 16.3). Still, components other than<Tooltip/>
and@DragAndDrop
can be used with older React. -
(breaking change)
react-dnd
updated from version2.x
to version5.x
. -
(breaking change) Some things got refactored so something might theoretically break.
-
(breaking change)
<MenuButton/>
changed the icon for SVG to a CSS-animated HTML. -
(breaking change) Rewrote
<Select/>
and split it into<Select/>
,<Autocomplete/>
and<ExpandableMenu/>
; their CSS structure got rewritten and CSS class names changed. Extracted<Select.Separator/>
into<Divider/>
. Due to the rewrite of<Select/>
it may possibly be a breaking change for existing applications in some non-generic cases. -
(breaking change)
<Select menu/>
toggler
property moved tochildren
of<ExpandableMenu/>
. -
(breaking change) Renamed
<CollapsibleMenu/>
to<SlideOutMenu/>
. -
(breaking change) Renamed
<Select/>
'sconcise
property toicon
. -
(breaking change) Renamed
<Select/>
'smaxItems
property toscrollMaxItems
. -
(breaking change) Renamed
<Select/>
'sautocompleteShowAll
property toshowAllMatchingOptions
. -
(breaking change)
<Select/>
icon
can now only be a React component (not an element).<Select/>
toggler
can now only be a React component (not an element). -
(breaking change)
<Select/>
onToggle
property replaced withonExpand
andonCollapse
. -
(breaking change)
<DatePicker/>
design changed. -
(breaking change)
<Button/>
'saction
property is deprecated, useonClick
instead. -
(breaking change)
<Tooltip/>
now acceptscontent
property instead oftext
, andcontent
is now aReact.Element
instead of a function. -
(breaking change)
<TextInput/>
no longer acceptsemail
andpassword
properties. Usetype="..."
directly instead. -
(breaking change)
.rrui__button--link
CSS class renamed to.rrui__button-reset--link
. -
(breaking change)
Select.Fullscreen.css
renamed toExpandable.Fullscreen.css
. -
(breaking change)
DatePicker.Fullscreen.css
merged intoExpandable.Fullscreen.css
. -
<TextInput/>
now acceptsinputComponent
property. -
Added
<List/>
component.
-
(breaking change)
<Select/>
:autocomplete
now always renders only<input type="text"/>
(not a button), and native<select/>
is always rendered in a transparent overlay so that native select is activated on mobile devices when there's too much options (for better UX) and custom select is always activated on desktop (if notouchstart
has been received)..rrui__select__native-expanded
CSS class removed and replaced with.rrui__select__native
(mostly the same). RemovedonFocus
property of<Select/>
. -
(breaking change)
<Select/>
no longer accepts bothlabel
andplaceholder
.
-
(breaking change)
small-screen.css
file has been split into individual per-component files (see the updated README). -
(breaking change)
<DatePicker/>
icon
is now a React component instead of a React element, and there's a default one, and theicon
is hidden by default via CSS (a developer must explicitly setdisplay: block
for.rrui__date-picker__icon
in order for theicon
to be visible), and also.rrui__date-picker__icon
CSS class styling changed. -
Fixed
<Select autocomplete/>
input focus upon expansion on mobile devices. -
Fixed
<Select/>
too many options rendered when collapsed.
-
(breaking change) Introduced CSS variables which must be set before including the CSS files on a page (see the updated README).
-
(breaking change)
<Button/>
now comes with defaultmargin-left
andmargin-right
(previously had no margins). And thebusy
indicator changed from a spinner to an underline. -
(breaking change)
<MenuButton/>
now comes with negativemargin
. -
(breaking change) On small screens (see
small-screen.css
) the "Close" cross for fullscreen<Select/>
is now on the bottom-right (not on the top-right). -
(breaking change) On small screens (see
small-screen.css
)<Select/>
s and<DatePicker/>
s now expand themselves to fullscreen even if inside<Modal/>
s, and the expand animation changed from "dropdown" to "fade-in/scale". -
(breaking change) Changed
<Modal/>
CSS styles (includingsmall-screen.css
):.rrui__modal__content
class (which defines all CSS styles and animations for opening/closing) was renamed to.rrui__modal__contents
(along withrrui__modal__content--fullscreen
and.rrui__modal__content-body
).<Modal/>
now provides three child components:<Modal.Content/>
,<Modal.Title/>
and<Modal.Actions/>
. Before.rrui__modal__content-body
hadmargin
— now that margin has been moved to these three new child components. Tweaked<Modal/>
opening/closing animation on small screens (seesmall-screen.css
). -
(breaking change)
<Modal/>
'scloseButton
property removed and replaced withcloseButtonIcon
property (which is for the icon, not for the button).closeButtonIcon
is now either aComponent
(notElement
) ortrue
(which renders a default cross icon). -
(breaking change)
<Select/>
'scloseButton
property removed and replaced withcloseButtonIcon
property (which is for the icon, not for the button). -
(breaking change)
<DatePicker/>
'scloseButton
property removed and replaced withcloseButtonIcon
property (which is for the icon, not for the button). -
(breaking change) If someone was overriding
.rrui__close__icon
CSS styles: itspadding
was moved to.rrui__close
. -
(breaking change)
<Snackbar/>
CSS styles changed and it is now positioned in the left bottom corner of the screen (with some margin) instead of being in the middle on the bottom (without margin). -
(breaking change)
<Select/>
's list of options (exceptautocomplete
) has been moved up to cover the toggler button: addedmargin-top
to.rrui__select__options
. -
(breaking change)
<Select/>
's.rrui__select__option
side padding reduced a bit: changed.rrui__select__option
'spadding-left
/padding-right
andmin-width
,.rrui__select__options--left-aligned
'sleft
,.rrui__select__options--right-aligned
'sright
and.rrui__select__options
'smin-width
. -
(breaking change)
<Select menu/>
's.rrui__select__option
side padding changed a bit. -
(breaking change)
.rrui__select--menu
is nowdisplay: inline-block
by default. -
(breaking change)
<Switch/>
layout and styling changed a bit, added.rrui__switch__box
. -
(breaking change)
<Tooltip/>
sizes changed. -
(breaking change)
<Button/>
was rewritten (the<button/>
is no longer wrapped in a<div/>
).<Button/>
now has defaultheight
.linkDownload
property removed (passdownload
property directly instead). -
(breaking change)
<SegmentedControl/>
now stretched to full width by default. -
(breaking change)
<Snackbar/>
CSS changed: it now resides in the lower bottom corner. Hide animation time changed from400
to195
.content
can now also be a React component takinghide
property (a function that hides the notification). -
(breaking change)
<Select autocomplete/>
now goes fullscreen. -
(breaking change)
<TextInput/>
no longer takes aninput
property.
-
Migrated to new React 17 lifecycles (
componentWillReceiveProps
->getDerivedStateFromProps
) and new React 17 Context API. Still compatible with older versions of React. -
Refactored
<Select/>
and implementedasync getOptions()
for asynchronous autocomplete. -
(breaking change)
<Select/>
. Arrow CSS styles tweaked:margin-top: 0.2em; margin-right: 0.4em; border-width: 0.35em 0.22em 0 0.22em;
(insidestyle.css
). ThecloseButton
property is now aReact.Component
(notReact.Element
).closeAriaLabel
property renamed tocloseLabel
.rrui__select__toggler
height: 100%
removed. Addedline-height
rule to.rrui__select__option
CSS class..rrui__select__option:hover
background-color
tweaked from#fbfdfd
to#f7f7f7
. -
(breaking change)
<DatePicker/>
closeButtonLabel
property removed and replaced the "Close" button with a cross icon withposition: fixed
(changed the styles insidestyle.css
andsmall-screen.css
). The new property iscloseButton
and is aReact.Component
(notReact.Element
). -
(breaking change) Changed
<Checkbox/>
design. -
(breaking change)
<Menu/>
now doesn't takerouter
property from context. Instead,<Menu/>
now listens directly tohistory
transitions.<Menu/>
's.rrui__slideout-menu--shown
CSS class renamed to.rrui__slideout-menu--expanded
.<Page/>
now has.rrui__page--menu-overlay
CSS class added on menu expanded which adds a semi-transparent overlay.
- Disabled "scroll into view" feature for
<Select/>
in IE.
- CSS has been split on per-component basis (not icluding
small-screen.css
) and is available in thestyles
folder of the package.
-
(CSS breaking change)
.rrui__text-input__input
->.rrui__input-field
-
(CSS breaking change)
.rrui__text-input__input--multiline
->.rrui__input-field--multiline
(CSS breaking change) Refactored <Select/>
CSS class names:
-
.rrui__select__selected--autocomplete
->.rrui__select__autocomplete
-
.rrui__select__selected
->.rrui__select__button
-
.rrui__select__selected--nothing
->.rrui__select__button--empty
-
.rrui__select__selected--expanded
->.rrui__select__button--expanded
-
.rrui__select__selected--disabled
->.rrui__select__button--disabled
-
.rrui__select__selected--invalid
->.rrui__select__button--invalid
(CSS breaking change) Focused input label CSS selector changed. From this:
/* Focused input label */
.rrui__text-input__input:focus + .rrui__input-label:not(.rrui__text-input__label--placeholder),
.rrui__select__button:focus + .rrui__input-label,
.rrui__select__autocomplete:focus + .rrui__input-label,
.rrui__date-picker__input:focus + .rrui__input-label
To this:
/* Focused input label */
.rrui__input-element:focus + .rrui__input-label
And the floating label now floats to top always when the input is focused regardless of whether it's empty or not.
So this:
.rrui__text-input__label--placeholder
transform: ...
Changes into this:
.rrui__input-field:not(:focus) + .rrui__text-input__label--placeholder
transform: ...
(CSS breaking change) <Select/>
's autocomplete <input/>
is now .rrui__text-input__input
.
(CSS breaking change) <Select/>
's <option/>
s have now height
set.
- Added
<Select compact/>
property which makes the<Select/>
not stretch to 100% width by making itinline-block
. - (CSS breaking change)
<Select concise/>
are nowinline-block
too (but I guess perhaps no one even used that property since it'sconcise
which means "inline" to me). - Added
.rrui__select--menu
CSS class so.rrui__select__options:not(.rrui__select__options--menu)
becomes just.rrui__select__options
which simplifies the stylesheet.
- (CSS breaking change)
<Switch/>
CSS classes got refactored but it shouldn't break anyone's apps.
- (CSS breaking change) Removed vertical padding from the first and the last
<Select/>
<li/>
options and moved it to.rrui__select__options
<ul/>
itself. So if someone customized.rrui__select__options-list-item:first-child
and.rrui__select__options-list-item:last-child
vertical padding then those padding customizations should be moved to.rrui__select__options
itself. - (CSS breaking change) Added
.rrui__select__option:hover
and.rrui__select__option--focused:hover
background color for better UX.
- Added
selectYearsIntoPast
andselectYearsIntoFuture
to<DatePicker/>
. <DatePicker/>
is now more strict while parsing keyboard input.
- (breaking change) Dropped inline styles in favour of the CSS stylesheet (seems more convenient and theoretically more performant). Including the CSS via
require()
is the recommended way now. - (breaking change) Changed the path to style from
/styles/react-responsive-ui.css
to juststyle.css
. - (breaking change)
<Menu/>
has been rewritten and no longer acceptsitems
and instead acceptschildren
. And it's alwaysslideout
now. RenamedMenu
toCollapsibleMenu
.
- Dropped both
moment
anddate-fns
in favour of a custom date formatter and parser (to reduce bundle size)
Refactoring component styling to better match CSS grid styling (.col-x
):
- (breaking change) Now it stretches the inputs to full column width by default. Because everyone uses CSS grids today (like Bootstrap Grid). See
react-responsive-ui.css
diff for the change (a simplewidth: 100%
rule). - (breaking change) Changed
<Select/>
and<DatePicker/>
markup a bit: they're now wrapped in a<div className="rrui__input"/>
wrapper (and addedheight: 100%
CSS rule for the contents). <Modal/>
now receivesclassName
parameter.- Added
stretch
flag for<Button/>
s to stretch them to full width. - Added
floatingLabel
boolean flag for<TextInput/>
.
- (breaking change) Moved
position: relative
from inline styles to CSS for<Button/>
,<Switch/>
,<DatePicker/>
,<SegmentedControl/>
. - (breaking change) Refactored CSS classes for
<Select/>
and<DatePicker/>
. - (breaking change) Refactored CSS classes for
<Switch/>
. - Fixed day clicking bug in
<DatePicker/>
on mobile devices. - Moved slideout menu styles to CSS classes
.rrui__slideout-menu
,.rrui__slideout-menu--shown
,.rrui__slideout-menu-list-item
and.rrui__menu__item
- (breaking change)
<Modal/>
now no longer takesactions
, create the buttons manually instead.title
property is gone too, use<h1/>
instead. Changed.rrui__modal__top-padding
and.rrui__modal__bottom-padding
into.rrui__modal__margin
.cancel
property is gone, usecloseLabel
instead. Changed some styles for modal (see the relevant commit) - (breaking change)
<Form/>
'saction
has been renamed tosubmit
. - (might be a breaking change) Moved
<Select/>
option list styles from inline to.rrui__select__options
- (could be a breaking change) Moving
position: relative
from inline styles to the CSS file therefore if using an edited CSS file from older versions addposition: relative
for.rrui__select
- Added a custom
input
property for<TextInput/>
- Added
.rrui__fixed-full-width
CSS class for self-adjusting the width of specific DOM elements when a modal opens
- Added
fullscreen
mode for<Modal/>
- (breaking change) Refactoring
<Modal/>
(for betterfullscreen
support)
- (breaking change) Renamed
.rrui__text-input__label
to.rrui__input-label
<TextInput/>
can now have both aplaceholder
and alabel
- Added
label
s to<Select/>
and<DatePicker/>
(analogous to text input) - (breaking change) Renamed
.rrui__text-input__error
to.rrui__input-error
- (breaking change) Renamed
label
property of<Select/>
toplaceholer
- (breaking change) Renamed
.rrui__text-input__field
and.rrui__text-input__input--single-line
to.rrui__input
and.rrui__input--multiline
- (breaking change) Renamed
.rrui__text-input__field
to.rrui__text-input__input
..rrui__text-input__field
now wraps.rrui__text-input__input
and.rrui__text-input__label
. This is done to be able to set.rrui__text-input__field
exact height while also keepingheight: auto
for description and error message. - Dropped
description
property on<TextInput/>
- Removed
--primary
and--border
button flavours (useclassName
manually instead since there are usually more than two kinds of buttons in an application UI) - Button contents are now a
<div/>
and the button itself is not madeopacity: 0
duringbusy
state but instead that contents<div/>
is - Refactoring floating label input
- Added drag'n'drop components
- (breaking change) Renamed
shown
property ofModal
toisOpen
- (breaking change) Renamed
.rrui__button__link
CSS class to.rrui__button__button .rrui__button__button--link
- For "rich" components now not rendering static HTML fallback by default (unless
fallback
property is explicitly set totrue
) since it's a very exotic use case and therefore is not default behaviour now
- Added
<DatePicker/>
viareact-day-picker
andmoment
- Added
className
andstyle
properties to<Select/>
- Fixed autocomplete up/down selection bug
- (breaking change) Renamed
.rrui__select__option--selected
CSS class to.rrui__select__option--focused
<Select/>
now automatically scrolls the options list down to the selected item and also while navigating with arrow keys
- Initial release.