All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
Note: Version bump only for package @react-md/form
TextArea applies custom height style when resize="none"
(e77d939)TextFieldContainer to optionally fill all space
in flex containers
(2c8e68c)FileInput snapshots for new icon
(f5e43fe)ArrowUp or ArrowDown
keys.DropdownMenu component no longer accepts a list of items and instead
the children should be the MenuItem components.DropdownMenu component no longer supports the menuRenderer and
itemRenderer props. Instead, there is built-in support for conditionally
rendering as a Sheet component using the renderAsSheet prop.DropdownMenu component now requires a parent AppSizeListener because
of the conditional Sheet rendering functionality. This might require
updating your tests to either use the Configuration component from
@react-md/layout (recommended) or adding the AppSizeListener to tests that
include DropdownMenus.DropdownMenuItem component is no longer required for nested dropdown
menus and is an "internal" component instead that shouldn't really be used.MenuItemSeparator now renders as an <li> instead of an <hr> or
<div>.useContextMenu now returns an object instead of an ordered list.MenuItem components requires the
<MenuKeyboardFocusProvider> to be mounted as a parent component which might
affect tests. This will not break anything if you are using the DropdownMenu
or Menu components.Slider on mobile
(7eb6740)getPercentage to optionally not throw errors
(ff8a1d6)import type when possible
(ba96bb6)eslint
(8111cd3)Typography
(30cf056)stylelint
(22d1598)lib.d.tsprop-types package.TooManyFilesError is only used if all the other
validation has passed
(6ed3f54)useFileUpload
extensions
(9238140)isValidFileName option to useFileUpload
(dbd0375)yarn format to include new files
(48d3d7f)sass
(5376be1)useIndeterminateChecked
(6b7871f)InteractionModeListener since it was an alias
for UserInteractionModeListeneruseIndeterminateChecked is now
an object of optionsFileInput correctly center the icon when children aren't
provided
(3a6ab33)FileInput automatically swaps button type to text if
children exist
(e5585e1)FormMessageCounter component added to public API
(1508812)useFileUpload hook to upload files to the
browser
(efb3f2f),
closes #1159useFileUpload
(49ce4d9)useFileUpload
(8f9002e)MenuItemCheckbox added missing indeterminate state
(aa2c552),
closes #1186useIndeterminateChecked correctly uses readonly prefix
(7f69a71)useIndeterminateChecked supports MenuItemCheckbox with
new option
(9ab67bf)MenuItemSwitch
styles on light themes
(fc4dcd9)useIndeterminateChecked
(8646c28)useIndeterminateChecked
(cc2a422)Switch components
(8c65df6),
closes #1175prettier after upgrading to v2.3.0
(3ce236a)typedoc
(cf54c35)Note: Version bump only for package @react-md/form
MenuItemSwitch spacing styles
(8ac8299),
closes #1126Switch color
(9315eff)Form Menu Item Components
(fed2b9f)useFixedPositioning to merge style objects
(1ab84d7)typescript version to v4.2.3
(b094b36)SwitchTrack and InputToggleIcon components
(d9278b3)MenuItemRadio usage to be wrapped in a group for
a11y
(01caa0b)Select correctly respects the readOnly prop
(d9a0262),
closes #1089Select correctly updates for the dense spec
(2930595),
closes #1089tryToSubmitRelatedForm util to help with
additional a11y
(0566e14)Note: Version bump only for package @react-md/form
Note: Version bump only for package @react-md/form
Note: Version bump only for package @react-md/form
TextArea
(80c22ba),
closes #1043TextArea
(695fd2a)Note: Version bump only for package @react-md/form
TextField
PropTypes to allow for search input type
(23d92dd)useTextField hook to validate the TextField and TextArea values
(578257c)TextField Hook
(f6d84f2)TextField Hook
(e358799)TextField Hook
(f2d7e5d)Note: Version bump only for package @react-md/form
Note: Version bump only for package @react-md/form
Note: Version bump only for package @react-md/form
TextArea to use
the new useResizeObserver API
(2c2dd27)Note: Version bump only for package @react-md/form
TextArea to use
the new useResizeObserver API
(2c2dd27)Note: Version bump only for package @react-md/form
Note: Version bump only for package @react-md/form
0 as a valid display value
(d02b7a9)Checkbox and Radio input element
(b6d2318)Note: Version bump only for package @react-md/form
Note: Version bump only for package @react-md/form
Select disabled styling
(d79d007)TextArea disabled
styles
(ef118bf)TextField and Select
disabled behavior
(e8f2c57)sideEffects field to package.json
(31820b9)sideEffects formatting
(78a7b6b)No changes.
Starting with v2 of react-md, all checkbox and radio inputs will now correctly
work like native <input type="checkbox" /> and <input type="radio" />
without any additional wrappers.
ref to the DOM element"underline", "filled", and "outline" state for TextField and Select"outline" instead of "underline"box-shadow by default to match other focused elementsNativeSelect component to render a <select> with text field
stylingForm component that renders a <form> element that just prevents
default form submission for easy "enter submit" functionalityFieldset component to group related form elements together with an
accessible legend that can be conditionally rendered for screen readers onlyCheckbox to support an indeterminate stateCheckbox and Radio components
so it is easier to provide custom styles and implementationsuseIndeterminateChecked (need a better name)Label and FloatingLabel component for reusable label styles<input /> element as a child of the
<label>FileInput no longer renders the <label> as an AccessibleFakeButton
since it never should haveFileInput no longer renders with a surrounding <div> element`Listbox component to be able to create an accessible custom
<select> componentOption component to be able to implement a custom <option> widget
if desiredSelect component so that every
option can now be "keyboard searched"Listbox/Select options to support a readOnly viewSelect component by adding
the required aria-* attributes and rendering the options with
role="option"FormMessage component that should be able to alert screenreaders
when new errors or messages are displayed in real timePassword component for handling password fields instead of
having it built-in to the TextField componentTextField with the
TextFieldContainer and TextFieldAddon componentsAsyncSwitch component to be able to render a CircularProgress
indicator within a Switch while some asynchronous action is waitinguseChoice, useSelectState, useChecked (might change going forward)Select component to use fixed positioning instead of relative
positioning by default so that the menu always appears within the viewportSelectionControl and SelectionControlGroup components no longer exists
and is no longer requiredFileUpload component was removed since it didn't seem extremely helpful$rmd-label-padding: 0.25rem !default - the amount of horizontal padding to
use for a floating label$rmd-toggle-border-radius: 50% !default - the border radius for the checkbox
and radio components$rmd-toggle-inset: 0.3125rem !default - The distance the background layer
for the checkbox and radio components should be inset relative to the
container element$rmd-toggle-dense-inset: 0.25rem !default - The distance the background
layer for the checkbox and radio components should be inset relative to the
container element when the dense spec i enabled$rmd-checkbox-indeterminate-height: 0.15rem !default - the height for the
indeterminate checkbox's state line that covers the icon$rmd-checkbox-indeterminate-dense-height: 0.125rem !default - the height for
the indeterminate checkbox's state line that covers the icon when the dense
spec is enabled$rmd-switch-ball-border-radius: 50% !default - the border radius for the
switch's ball$rmd-switch-container-vertical-padding: 0.5rem !default - the vertical
padding for the switch's container$rmd-switch-container-horizontal-padding: $rmd-switch-ball-size / 2 !default
the horizontal padding for the switch's container$rmd-switch-ball-disabled-color: rmd-theme-get-swatch($rmd-theme-secondary, 200, false, darken($rmd-theme-secondary, 5%), rmd-switch-ball-disabled-color) !default -
the color to use for the switch's ball when it is toggled on and disabled$rmd-switch-progress-width: 12 !default - the width for the circular
progress bar in the AsyncSwitch$rmd-switch-progress-background-color: $rmd-white-base !default - the
background color to use for the switch's ball while the AsyncSwitch is
loading$rmd-switch-progress-padding: 0.125rem !default - the amount of padding to
apply to the AsyncSwitch's progress bar$md-text-field-error-color to $rmd-form-error-color$md-switch-track-height to $rmd-switch-track-height and changed
the default value from 16px to 1rem$md-switch-track-width to $rmd-switch-track-width and changed the
default value from 40px to 2.25rem$md-switch-thumb-size to $rmd-switch-ball-size and changed the
default value from 24px to 1.25rem$md-switch-track-radius to $rmd-switch-track-border-radius and
changed the default value from 8px to 0.5rem$md-switch-thumb-offset to $rmd-switch-ball-offset and changed the
default value from 4px to 0.25rem$md-selection-controls-include-group since it is no longer required$md-selection-controls-include-switches since they are always
included$md-switch-height since it is no longer needed$md-switch-light-theme-thumb-off,
$md-switch-light-theme-track-off, $md-switch-light-theme-thumb-disabled,
$md-switch-light-theme-track-disabled, $md-switch-dark-theme-thumb-off,
$md-switch-dark-theme-track-off, $md-switch-dark-theme-thumb-disabled,
$md-switch-dark-theme-track-disabled, $md-switch-ball-fallback-color since
they are no longer required$md-text-field-autococompleted-shadow since it is no longer required