v4.3.0
β¨ Highlights
:pencil: New Editor components
We're introducing a suite of 6 new components to build rich text editors, powered by TipTap:
- Editor: The root component supporting JSON, HTML, and Markdown content types.
- EditorToolbar: A customizable toolbar with formatting actions, link editing, and extensible item groups.
- EditorSuggestionMenu: A command menu (
/) to insert headings, lists, code blocks, images, and more. - EditorMentionMenu: A mention menu (
@) to reference users or other entities. - EditorEmojiMenu: An emoji picker (
:) to insert emojis inline. - EditorDragHandle: A drag handle to reorder blocks with a dropdown menu for block actions.
The Editor is fully extensible through TipTap's extension system and exposes the editor instance for advanced use cases.
We've also released a new Editor template that showcases all the Editor components in a production-ready setup with real-time collaboration via PartyKit and AI autocompletion using AI SDK and Vercel AI Gateway.
https://github.com/user-attachments/assets/e4a799a3-8de1-4c85-b7f0-ca24789a6d98
π New ScrollArea component
The ScrollArea component provides a flexible scroll container with built-in virtualization support through TanStack Virtual.
https://github.com/user-attachments/assets/8d3bcb2c-f5b4-4412-99b1-f33e1b53dd8e
π Features
- AuthForm: allow all input types (#5565) (1f9009f)
- ContextMenu/DropdownMenu: expose
subprop on content slots (#5609) (b09e6bc) - defineShortcuts: add
layoutIndependentoption (#4251) (ece0568) - Editor: new components (#5407) (38765c3)
- extractShortcuts: add
separatoroption (#5642) (4e71271) - FormField: add
orientationprop (#5632) (b74ec6e) - InputMenu/Select/SelectMenu: add
modelModifiersprop (#5559) (a92ee7b) - module: generate
@sourcefor nuxt layers (#5630) (de98a72) - ProseCodeTree: add
itemsprop (cb34ca5) - ScrollArea: new component (#5245) (effbb18)
- Slideover: add
insetprop (05bd995) - unplugin: add
routeroption to disable router (#5213) (b34cf8a) - unplugin: add
scanPackagesoption (#5510) (4e57139)
π Bug Fixes
- BlogPost/ChangelogVersion/PageFeature/User: allow tab focus (47d93d3), closes #5635
- Carousel: consistent stopOnInteraction behavior (#5489) (36a7861)
- Carousel: improve dots focus styles (cc90fb8)
- ColorModeButton: improve icon class merging (2ce9af2)
- ContentSearch/DasboardSearch: set full height on mobile to prevent jump (70317e5)
- DashboardResizeHandle: allow hover over panel with
z-index(07147f1) - FormField: hide error if error prop is false (#5599) (6b7fe25)
- InputDate/InputTime: add missing field group variant (#5596) (cb3cec2)
- PageCard/PageCTA/PageSection: handle
reverseprop under lg screens (#5545) (60b430c) - ProseA/ProseCallout/ProseCard: improve focus styles (df5f8c2)
- Slider: add
aria-labelto thumb (#5313) (f99ec46) - Table: only forward necessary props (#5527) (b0b209e)
- Table: properly position pinned columns based on
size(e885b0e), closes #4721 #3927
π Locales
- locale: add Basque language (#5689) (748d78f)
- locale: add English (United Kingdom) language (#5561) (b0139f0)
- locale: add Lao language (#5556) (f5f9885)
π New Contributors
- @AZERK0 made their first contribution in https://github.com/nuxt/ui/pull/5530
- @IO-Fire made their first contribution in https://github.com/nuxt/ui/pull/5557
- @thanet-s made their first contribution in https://github.com/nuxt/ui/pull/5556
- @iamThiagoo made their first contribution in https://github.com/nuxt/ui/pull/5598
- @olivierbourdeau made their first contribution in https://github.com/nuxt/ui/pull/5591
- @miguilimzero made their first contribution in https://github.com/nuxt/ui/pull/5512
- @lehuuphuc made their first contribution in https://github.com/nuxt/ui/pull/5601
- @dinocam1 made their first contribution in https://github.com/nuxt/ui/pull/5610
- @gunhaxxor made their first contribution in https://github.com/nuxt/ui/pull/5641
- @niusia-ua made their first contribution in https://github.com/nuxt/ui/pull/5642
- @sdsoldi made their first contribution in https://github.com/nuxt/ui/pull/5689
- @edimitchel made their first contribution in https://github.com/nuxt/ui/pull/5632
- @ISOR3X made their first contribution in https://github.com/nuxt/ui/pull/5510
- @innocenzi made their first contribution in https://github.com/nuxt/ui/pull/5213
Full Changelog: https://github.com/nuxt/ui/compare/v4.2.1...v4.3.0