mirror of
https://github.com/nextui-org/nextui.git
synced 2025-12-08 19:26:11 +00:00
* feat: Slider Component (#1686) * feat(slider): initial structure * chore(slider): readme improved * fix: fixed border color of slider track * docs: added range story * feat: added rtl support to slider * feat: improved value label formatting * feat: refactor styling and add colors support to slider * chore: improved thumb color * docs: improved slider stories * chore(slider): default color changed by foreground * Update packages/core/theme/src/components/slider.ts Co-authored-by: Jakob Guddas <github@jguddas.de> * feat: added fillOffset prop * Update packages/components/slider/src/use-slider.ts * fix(slider): animation * Update packages/components/slider/src/use-slider.ts * Update packages/core/theme/src/components/slider.ts * feat: slider steps * refactor: renamed variables * feat: improved slider step styling * fix: hide infinite steps * fix: fixed step transparency issue * fix: fixed thumb focus issue * Update packages/components/slider/src/use-slider.ts Co-authored-by: Junior Garcia <jrgarciadev@gmail.com> * feat(slider): vertical orientation added, start & end content, bug fixes * chore(slider): tests added * fix(docs): scrollbar added to the sidebar (#1743) * feat(slider): marks added * chore(slider): example ts-doc changed * feat(slider): vertical marks support * feat(core): slider tooltip support added, popover modified (#1746) * Feat/slider custom styles (#1751) * feat(slider): custom styles story added * fix(slider): custom styles on different sizes * Fix/slider tooltip android position (#1753) * feat(slider): custom styles story added * fix(slider): tooltip update position dependecies added * fix(popover): arrow placements improved * feat(slider): docs started, custom thumb and custom output stories added * feat(slider): render function added to custom render the slider parts * feat(slider): docs in progress, new properties and examples added * fix(slider): some issues fixed, output renamed to value, documentation improved * feat(slider): docs done * chore: changeset --------- Co-authored-by: Jakob Guddas <github@jguddas.de> * Client side routing (#1764) * feat(slider): initial structure * chore(slider): readme improved * fix: fixed border color of slider track * docs: added range story * feat: added rtl support to slider * feat: improved value label formatting * feat: refactor styling and add colors support to slider * chore: improved thumb color * docs: improved slider stories * chore(slider): default color changed by foreground * Update packages/core/theme/src/components/slider.ts Co-authored-by: Jakob Guddas <github@jguddas.de> * feat: added fillOffset prop * Update packages/components/slider/src/use-slider.ts * fix(slider): animation * Update packages/components/slider/src/use-slider.ts * Update packages/core/theme/src/components/slider.ts * feat: slider steps * refactor: renamed variables * feat: improved slider step styling * fix: hide infinite steps * fix: fixed step transparency issue * fix: fixed thumb focus issue * Update packages/components/slider/src/use-slider.ts Co-authored-by: Junior Garcia <jrgarciadev@gmail.com> * feat(slider): vertical orientation added, start & end content, bug fixes * chore(slider): tests added * feat(slider): marks added * chore(slider): example ts-doc changed * feat(slider): vertical marks support * feat(core): slider tooltip support added, popover modified (#1746) * Feat/slider custom styles (#1751) * feat(slider): custom styles story added * fix(slider): custom styles on different sizes * Fix/slider tooltip android position (#1753) * feat(slider): custom styles story added * fix(slider): tooltip update position dependecies added * fix(popover): arrow placements improved * feat(slider): docs started, custom thumb and custom output stories added * feat(slider): render function added to custom render the slider parts * feat(slider): docs in progress, new properties and examples added * fix(slider): some issues fixed, output renamed to value, documentation improved * feat(slider): docs done * chore: changeset * chore: react aria packages upgraded * feat(system): router provider added * feat: client side routing support added to items components * chore(docs): routing docs started * chore: changeset * feat(docs): client side routing documented * feat(pagination): client router support added to pagination * fix(link): csr added --------- Co-authored-by: Jakob Guddas <github@jguddas.de> * feat: added RTL support to accordion component (#1725) * feat: added RTL support to accordion component * Create healthy-cobras-crash.md * feat: added RTL support to avatar and avatar group component (#1727) * feat: added RTL support to avatar and avatar group components * Create tender-penguins-love.md * Update tender-penguins-love.md * feat: added RTL support to button group component (#1726) * feat: added RTL support to button component * feat: added RTL support to button component * Create orange-bobcats-kneel.md * Update button.ts * refactor(root): styles refactor (#1688) * refactor(root): styles refactor * chore(tabs): remove needless type extends * fix(tabs): typecheck * Breadcrumbs component (#1794) * feat(components): breadcrumbs initial structure * feat(breadcrumbs): tests and examples added * feat(docs): breadcrumbs documentation done * feat(docs): breadcrumbs docs done * chore(breadcrumbs): readme changed * fix(slider): Place last dragged slider handle over the other handle (#1778) * Set `data-focused` in handle * Style focused handle on top * Add tests * fix(core): tests and build * fix(button): show only spinner if button isLoading & isIconOnly (#1800) * fix(button): show only spinner if button isLoading & isIconOnly * chore: add changeset * fix(button): remove repeating code * Fix blur/opaque Popover (#1812) * fix(popover): double underlay click * chore: use ref instead of a state * Feat/controlled scroll shadow (#1819) * feat(scroll-shadow): logic improved, controlled support added * feat(scroll-shadow): controlled visibility * fix(scroll-shadow): visibility tests * Autocomplete component (Single Selection) (#1797) * feat(autocomplete): initial structure * feat(core): use press custom hook implemented, autocomplete improved, input and select animations fixed * chore(button): add console.log on press * feat(core): select & input label position, autocomplete improvements, listbox and menu empty state * chore: tailwind-variants upgraded * chore: autocomplete stories in progress * fix: input and select label placement * fix(autocomplete): popover trigger * chore(root): react-aria pkgs and framer-motion upgraded * fix(input,select): outside label scale removed * feat(autocomplete): more stories and use cases supported * fix(core): custom items support on collection-based comps, menu generic items support added * chore(core): tailwind-variants upgraded, custom tv function adapted * chore(docs): select on-change controlled e.g. changed, sandpack theme fixed * chore(autocomplete): docs started, tests added * chore: in progress * feat(menu): top and end content added, autocomplete docs improved * feat(docs): autocomplete documentation almost done * fix(input): outside styles * feat(docs): autocomplete async filtering added * chore(docs): autocomplete highlighted lines added * feat(docs): autocomplete a11y and slots added * feat(docs): autocomplete a11y and slots added * feat(docs): autocomplete docs done * fix(root): peer dependencies (#1848) * Fix/small issues (#1851) * fix(input): visible outline * fix(button): button group radius prop * chore(navbar): menu item active status added * fix(docs): pagination missing keys custom items * fix(core): extendVariants support added to collection-based components * fix(theme): card body padding * chore(theme): transition added to menu/listbox items * fix(input): textarea styles fixed, new prop added * chore(input): textarea height animated * feat(button): hover opacity added * chore(textarea): hide scroll when the limit hasn't been reached * chore(docs): updated badge added to textarea * feat(docs): blog v2.2.0 image and entry added * fix(avatar): ring primary color * chore(docs): tabs added again, autocomplete iframes removed --------- Co-authored-by: Jakob Guddas <github@jguddas.de> Co-authored-by: Maurici Abad Gutierrez <hello@mauriciabad.com> Co-authored-by: Ivan Kucher <dev.kucher@gmail.com>
168 lines
6.1 KiB
Plaintext
168 lines
6.1 KiB
Plaintext
---
|
|
title: "Introducing v2.2.0 🚀"
|
|
description: "NextUI v2.2.0 is here with Client side router support, 3 new components including the Autocomplete, and more."
|
|
date: "2023-11-03"
|
|
image: "/blog/v2.2.0.jpg"
|
|
tags: ["nextui", "autocomplete", "breadcrumbs", "client side router", "slider"]
|
|
author:
|
|
name: "Junior Garcia"
|
|
username: "@jrgarciadev"
|
|
link: "https://twitter.com/jrgarciadev"
|
|
avatar: "/avatars/junior-garcia.jpeg"
|
|
---
|
|
|
|
import {selectContent} from "@/content/components/select";
|
|
import {listboxContent} from "@/content/components/listbox";
|
|
import {scrollShadowContent} from "@/content/components/scroll-shadow";
|
|
|
|
|
|
<img
|
|
src="/blog/v2.1.0.jpg"
|
|
width={700}
|
|
height={350}
|
|
alt="NextUI v2"
|
|
className="w-full border border-transparent dark:border-default-200/50 object-fit rounded-xl shadow-lg"
|
|
/>
|
|
|
|
We are thrilled to announce the latest update to NextUI, version **2.1.0**! This release introduces some game-changing
|
|
additions that many of you have eagerly been waiting for.
|
|
|
|
First on the list is the highly-anticipated **Select** component. Fully customizable and beautifully designed, supports both single and
|
|
multi-select modes and is accessible out of the box.
|
|
|
|
But that's not all. We're also rolling out two more incredible components **Listbox** and **ScrollShadow**. The new
|
|
**Listbox** allows you to make list manipulations more efficient and visually appealing. Meanwhile, the
|
|
**ScrollShadow** component adds an elegant shadow effect to scrollable areas, enhancing the UI aesthetics while
|
|
also improving usability.
|
|
|
|
## Select
|
|
|
|
Creating a select component that is both accessible and customizable is a challenging task. We've spent a lot of time
|
|
researching and testing different approaches to come up with a solution that works for everyone. The result is a
|
|
component that is easy to use, fully accessible, and highly customizable.
|
|
|
|
The new **Select** component includes:
|
|
|
|
- Support for selecting a single option.
|
|
- Support for selecting multiple options.
|
|
- Support for disabled options.
|
|
- Support for sections.
|
|
- Labeling support for accessibility.
|
|
- Exposed to assistive technology as a button with a listbox popup using ARIA (combined with [Listbox](/docs/components/listbox)).
|
|
- Support for description and error message help text linked to the input via ARIA.
|
|
- Support for mouse, touch, and keyboard interactions.
|
|
- Tab stop focus management.
|
|
- Asynchronous options loading.
|
|
- Keyboard support for opening the listbox using the arrow keys, including automatically focusing the first or last item accordingly.
|
|
- Typeahead to allow selecting options by typing text, even without opening the listbox.
|
|
- Browser autofill integration via a hidden native `<select>` element.
|
|
- Support for mobile form navigation via software keyboard.
|
|
- Mobile screen reader listbox dismissal support.
|
|
- And much more...
|
|
|
|
### Single Select
|
|
|
|
The single select component is used to select a single option from a list of options. It is a combination of a button
|
|
and a listbox. The button displays the currently selected option and the listbox displays the available options.
|
|
|
|
<CodeDemo title="Usage" files={selectContent.usage} />
|
|
|
|
### Multiple Select
|
|
|
|
The multiple select component can be used to select multiple options from a list of options.
|
|
|
|
You only need to pass the `selectionMode="multiple"` prop to the `Select` component.
|
|
|
|
<CodeDemo title="Multiple Selection" files={selectContent.multiple} />
|
|
|
|
### Multiple Variants
|
|
|
|
The select component comes with multiple variants.
|
|
|
|
<CodeDemo title="Variants" files={selectContent.variants} />
|
|
|
|
|
|
### Chips Support
|
|
|
|
The select component is flexible and allows you to render any component as an option and as a selected option.
|
|
|
|
<CodeDemo title="Multiple Selection with Chips" files={selectContent.multipleWithChips} />
|
|
|
|
|
|
### Customizable
|
|
|
|
The select component is highly customizable, you can customize the selected option, the options, the listbox,
|
|
the popover and the scrollable area.
|
|
|
|
<CodeDemo title="Custom Styles" files={selectContent.customStyles} />
|
|
|
|
|
|
Go to the [Select](/docs/components/select) component page to learn more about sizes, colors, and more.
|
|
|
|
|
|
## Listbox
|
|
|
|
The listbox component allows you to make list manipulations more efficient and visually appealing.
|
|
|
|
The new **Listbox** component includes:
|
|
|
|
- Support for single, multiple, or no selection.
|
|
- Exposed to assistive technology as a `listbox` using ARIA.
|
|
- Support for disabled items.
|
|
- Support for sections.
|
|
- Labeling support for accessibility.
|
|
- Support for mouse, touch, and keyboard interactions.
|
|
- Tab stop focus management.
|
|
- Keyboard navigation support including arrow keys, home/end, page up/down, select all, and clear.
|
|
- Automatic scrolling support during keyboard navigation.
|
|
- Typeahead to allow focusing options by typing text.
|
|
|
|
|
|
### Usage
|
|
|
|
<CodeDemo title="Usage" files={listboxContent.usage} />
|
|
|
|
### Custom Styles
|
|
|
|
The Listbox components offers multiple customization options.
|
|
|
|
<CodeDemo title="Custom Styles" files={listboxContent.customStyles} />
|
|
|
|
> **Note**: In the above example, we've utilized the [Boxicons](https://boxicons.com/) icons collection.
|
|
|
|
Go to the [Listbox](/docs/components/listbox) component page to learn more about it.
|
|
|
|
|
|
## ScrollShadow
|
|
|
|
The ScrollShadow component gives a nice shadow effect to scrollable areas. These shadows are handled by using
|
|
the CSS `mask-image` property, which makes the shadows adapt to the background color.
|
|
|
|
### Usage
|
|
|
|
<CodeDemo title="Usage" files={scrollShadowContent.usage} />
|
|
|
|
You can hide the scrollbars, customize the shadows size, change the orientation, and more.
|
|
|
|
Go to the [ScrollShadow](/docs/components/scroll-shadow) component page to learn more about it.
|
|
|
|
|
|
<Spacer y={6}/>
|
|
|
|
We hope you enjoy these new components and the new features. We're excited to see what you build with them!
|
|
|
|
Thanks for reading and happy coding! 🚀
|
|
|
|
---
|
|
|
|
## Community
|
|
|
|
We're excited to see the community adopt NextUI, raise issues, and provide feedback.
|
|
Whether it's a feature request, bug report, or a project to showcase, please get involved!
|
|
|
|
<Community />
|
|
|
|
## Contributing
|
|
|
|
PR's on NextUI are always welcome, please see our [contribution guidelines](https://github.com/nextui-org/nextui/blob/main/CONTRIBUTING.MD) to learn how you can contribute to this project.
|