Releases: mlaursen/react-md
@react-md/[email protected]
"@react-md/core": patch
This release was focused around the Autocomplete
and the "better" API for it. There's a lot more functionality built
in by default and should behave much more like other libraries. I might add a few more features in before calling it complete, but not sure yet.
Check out the https://next.react-md.dev/components/autocomplete page to see the latest demos.
Fixes:
- Updated all styles to fix issues around the new Sass Mixed Declarations
- Updated most function declarations on interfaces to be arrow functions instead of methods to prevent
this
pollution - No longer unmount the dialog component when switching between full-page and other dialog types
- Updated the nested Dialog behavior when a full-page dialog is included
- Fixed some missing accessibility props for the
Navigation
components
Features:
- Updated the
Navigation
components to be controlled for the collapsed state and added auseNavigationExpansion
hook to help control the state - Added the
objectFit
utility class generator - Added
isColorScheme
andisColorSchemeMode
type assertion helpers - Added support for
Dialog
widths - Only apply base styles to the
body
element instead ofhtml
- Updated the
Card
component to extend theBox
component - Added support to
disableRipple
on the component level instead of global only - Added
useReadonlySet
hook - Added
disabled
support to theuseFixedPositioning
hook and related components - Added the missing
--rmd-scrollbar-size
type definition to theCSSProperties
interface - Added a simple
debounce
helper for usage outside of react components
Other changes:
- Updated
.mouse-mode
,.keyboard-mode
, and.touch-mode
to be prefixed withrmd-
like all other classes - Started adding SCSS documentation back since I'm working on the sassdoc-parser/sass-lsp
- Renamed
ResponsiveItemContainer
toResponsiveItem
- Split some files so they they don't all need to be considered client components
- Updated the
NativeSelect
styling to match other components that use theTextFieldContainer
andFormMessageContainer
components - Fixed the height for nested Menu Item Dropdowns
- Stopped using deprecated browser APIs
- Renamed
useImmediateRaf
totestImmediateRaf
so it isn't considered a hook
Documentation:
- Added Dark Mode docs
- Added Breakpoints docs
- Added Color Palette docs
- Added additional
Dialog
demos - Added
Form
docs - Added
WindowSplitter
docs - Added
ResponsiveItem
docs
Internal:
- Updated to use
[email protected]
@react-md/[email protected]
"@react-md/material-icons": patch
"react-md": patch
"@react-md/code": patch
"@react-md/core": patch
This release is mostly around adding codemods for v5 to v6, but also:
- reduced the installation size for react-md packages by excluding non-critical files
- i.e. Ignore test files, mocks, files that aren't required for source maps, etc
- fixed documentation
- removed the invalid server component comments since they aren't server components. they are just components that do not require client side js
- split the expansion panel, list, sheet styles into separate files so that the style utility classes can be used without client size js
- fixed the inline icon styles to be
vertical-align: middle
instead ofvertical-align: bottom
to work with more font sizes - renamed
TreeItemDefaultIds
toTreeDefaultIds
to match naming conventions - fixed some vertical tabs and scroll button styles
- added more convenience pass-through props to the
useTabs
hook options - added the
TreeItemRenderer
utility type
@react-md/[email protected]
"@react-md/material-icons": patch
"react-md": patch
"@react-md/core": patch
This release focused on starting to create the codemods for v5 to v6, which helped me find and fix:
- Fixed the surface colors when
$color-scheme: light
CardSubtitle
can now remove the secondary text color like v5 using thetextColor
Typography
prop- Moved the sticky styles behavior for tables into
StickyTableSection
instead ofTableHeader
/TableFooter
- Moved more table types into the
types.ts
file - Re-ran the material icons script to fix the types for
MaterialSymbol
andMaterialIcon
- Updated documentation for components and changes between v5
@react-md/[email protected]
"@react-md/core": patch
Added the first implementation for the new Autocomplete
component and API which made me
realize I need to modify it a bit more. The next release should include better behavior
to mimic react-select and material ui where it supports working as a select element,
mutliselect options, and creating chips with values.
Breaking Changes
- The
useAsyncAction
was renamed touseAsyncFunction
to mimic the otheruse*Function
hooks. - Removed the
children
prop from theTextField
component
Features
- Added the
clear
icon to support theAutocomplete
clear button behavior - Updated the text field padding to be easier to style with CSS custom properties
- Added the
useTextFieldContainerAddons
hook to dynamically update the padding based on addon size with theTextFieldContainer
- Added the
useMutationObserver
hook
Bug Fixes
- Fixed adding some
@use
statements for the Sass standard library - Fixed the
useDraggable
range behavior - Fixed the cross fade transition behavior
@react-md/[email protected]
"@react-md/code": patch
"@react-md/core": patch
Breaking Changes:
@react-md/core
no longer supports a single entrypoint and is ESM only
Features:
react-md
package is now a convenience package for the@react-md/core
single entrypoint- New
@react-md/code
package for most of the code functionality within the documentation stie Box
now sets the--rmd-box-columns
variable to thecolumns
prop when it is a number- New
Navigation
components - The
useExpandableLayout
anduseResizableLayout
hooks support"static"
full height navigation - The
useExpandableLayout
anduseResizableLayout
hooks support conditionally rendering the"static"
layouts while being SSR safe - New
useActiveHeadingId
hook to help re-create the Table of Contents behavior in the documentation stie
Bug fixes:
- The
box-custom-grid
mixin should no longer error - The
LayoutAppBar
no longer causes layout shifts after rehydrating - The
ToastManager
handles repeated pause and resumes correctly
Other changes
- Documentation site overhaul to allow editing SCSS modules and showing the generated output
- Simplified the since tags in tsdoc
- Simplified tsdoc examples
@react-md/[email protected]
Patch Changes
- Fixed the SVGIcon import path from @react-md/core after trying new package.json exports.
@react-md/[email protected]
"@react-md/core": patch
Trying a different way to handle package.json exports.
@react-md/[email protected]
"@react-md/material-icons": patch
"@react-md/core": patch
Experimental support for package.json exports and updated material icons.
@react-md/[email protected]
"@react-md/core": minor
Fixed styling issues, added additional configuration props, and added support for non-barrel file behavior
Features
- (Experimental): Added support for non-barrel files for
@react-md/core
to improve build performance in bundlers- i.e.
import { Button } from "@react-md/core/dist/button/Button"
andimport { useToggle } from "@react-md/core/dist/useToggle"
- i.e.
- Added a new
MenuItemCircularProgress
component - Added a
useFuzzyMatch
hook to increase the performance around fuzzy matching in large lists useListboxContext
will now throw an error if a parentListboxProvider
does not exist- Updated the
TableRow
hover state to no longer require theInteractionModeProvider
- Updated the
useDebouncedFunction
anduseThrottledFunction
hooks to support manually cancelling timeouts
Fixes
Label
supportspointer-events
while floatingSelect
no longer displays the soft keyboard on mobile devicesTextArea
allows thecontainerProps
like theTextField
and added some fixes for the resizing behaviorSnackbar
supports absolute positioning
Documentation
- Updated the documentation around using the mocked
ResizeObserver
in tests so that the example is on thesetupResizeObserverMock
instead ofResizeObserverMock.resizeElement
@react-md/[email protected]
"@react-md/material-icons": patch
"@react-md/core": patch
Added a RootHtml component for Next.js apps and a lot of changes to the Select component. The Select should be able to be autofilled by the browser and password managers now if I remember correctly. There's also a lot of work into getting started with the new Autocomplete API.