Spaces:
Sleeping
Sleeping
Pull Request Number: 4209 | |
Title: fix(docs): types for classNames and itemClasses | |
Base Branch: canary | |
Head Branch: fix/eng-986 | |
Author: wingkwong | |
URL: https://github.com/nextui-org/nextui/pull/4209 | |
State: MERGED | |
Created At: 2024-12-02T11:11:17Z | |
Merged At: 2024-12-03T13:07:43Z | |
Participants: wingkwong, jrgarciadev | |
Description: | |
Closes #3216 | |
π Description | |
correct the type for classNames and itemClasses to avoid confusion. | |
β³οΈ Current behavior (updates) | |
π New behavior | |
π£ Is this a breaking change (Yes/No): | |
π Additional Information | |
Summary by CodeRabbit | |
Release Notes | |
Documentation Updates | |
Enhanced documentation for multiple components, including Autocomplete, Avatar, Badge, Breadcrumbs, Calendar, and many others. | |
Updated classNames prop types across various components to allow for more flexible customization. | |
Added detailed descriptions for props, events, and usage examples, improving clarity and usability. | |
Expanded sections on accessibility and data attributes to ensure compliance and better guidance for developers. | |
These updates aim to provide developers with comprehensive and clearer instructions for implementing and customizing components effectively. | |
Commits: | |
- fix(docs): types for classNames and itemClasses\n | |
Labels: | |
Comments: | |
- linear: <p><a href="https://linear.app/nextui-inc/issue/ENG-986/[bug]-does-the-next-ui-doc-have-something-error-of-the-classnames-type">ENG-986 [BUG] - does the next-ui doc have something error of the classNames type descripition?</a></p>\n- changeset-bot: ### β οΈ No Changeset found | |
Latest commit: 999828a83a46e2a40756bdcad61a908020fd8453 | |
Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. **If these changes should result in a version bump, you need to add a changeset.** | |
<details><summary>This PR includes no changesets</summary> | |
When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types | |
</details> | |
[Click here to learn what changesets are, and how to add one](https://github.com/changesets/changesets/blob/main/docs/adding-a-changeset.md). | |
[Click here if you're a maintainer who wants to add a changeset to this PR](https://github.com/nextui-org/nextui/new/fix/eng-986?filename=.changeset/kind-kings-kiss.md&value=---%0A%22%40nextui-org%2Fdocs%22%3A%20patch%0A---%0A%0Afix(docs)%3A%20types%20for%20classNames%20and%20itemClasses%0A) | |
\n- vercel: [vc]: #AKqZ88qEyMTkn+GNuRTvNfqd2+yzgg2httQSOSWjJ3o=:eyJpc01vbm9yZXBvIjp0cnVlLCJ0eXBlIjoiZ2l0aHViIiwicHJvamVjdHMiOlt7Im5hbWUiOiJuZXh0dWktZG9jcy12MiIsInJvb3REaXJlY3RvcnkiOiJhcHBzL2RvY3MiLCJpbnNwZWN0b3JVcmwiOiJodHRwczovL3ZlcmNlbC5jb20vbmV4dHVpLW9yZy9uZXh0dWktZG9jcy12Mi82MllhakcyYTNmblZUZzVOalNhN3ZZYW9yUkNxIiwicHJldmlld1VybCI6Im5leHR1aS1kb2NzLXYyLWdpdC1maXgtZW5nLTk4Ni1uZXh0dWktb3JnLnZlcmNlbC5hcHAiLCJuZXh0Q29tbWl0U3RhdHVzIjoiREVQTE9ZRUQiLCJsaXZlRmVlZGJhY2siOnsicmVzb2x2ZWQiOjAsInVucmVzb2x2ZWQiOjAsInRvdGFsIjowLCJsaW5rIjoibmV4dHVpLWRvY3MtdjItZ2l0LWZpeC1lbmctOTg2LW5leHR1aS1vcmcudmVyY2VsLmFwcCJ9fSx7Im5hbWUiOiJuZXh0dWktc3Rvcnlib29rLXYyIiwicm9vdERpcmVjdG9yeSI6InBhY2thZ2VzL3N0b3J5Ym9vayIsImluc3BlY3RvclVybCI6Imh0dHBzOi8vdmVyY2VsLmNvbS9uZXh0dWktb3JnL25leHR1aS1zdG9yeWJvb2stdjIvR3g1NzdhZGt1Q2hkOURqanEzYkhxTFlQNzg2TSIsInByZXZpZXdVcmwiOiJuZXh0dWktc3Rvcnlib29rLXYyLWdpdC1maXgtZW5nLTk4Ni1uZXh0dWktb3JnLnZlcmNlbC5hcHAiLCJuZXh0Q29tbWl0U3RhdHVzIjoiREVQTE9ZRUQiLCJsaXZlRmVlZGJhY2siOnsicmVzb2x2ZWQiOjAsInVucmVzb2x2ZWQiOjAsInRvdGFsIjowLCJsaW5rIjoibmV4dHVpLXN0b3J5Ym9vay12Mi1naXQtZml4LWVuZy05ODYtbmV4dHVpLW9yZy52ZXJjZWwuYXBwIn19XX0= | |
**The latest updates on your projects**. Learn more about [Vercel for Git βοΈ](https://vercel.link/github-learn-more) | |
| Name | Status | Preview | Comments | Updated (UTC) | | |
| :--- | :----- | :------ | :------- | :------ | | |
| **nextui-docs-v2** | β Ready ([Inspect](https://vercel.com/nextui-org/nextui-docs-v2/62YajG2a3fnVTg5NjSa7vYaorRCq)) | [Visit Preview](https://nextui-docs-v2-git-fix-eng-986-nextui-org.vercel.app) | π¬ [**Add feedback**](https://vercel.live/open-feedback/nextui-docs-v2-git-fix-eng-986-nextui-org.vercel.app?via=pr-comment-feedback-link) | Dec 2, 2024 11:17am | | |
| **nextui-storybook-v2** | β Ready ([Inspect](https://vercel.com/nextui-org/nextui-storybook-v2/Gx577adkuChd9Djjq3bHqLYP786M)) | [Visit Preview](https://nextui-storybook-v2-git-fix-eng-986-nextui-org.vercel.app) | π¬ [**Add feedback**](https://vercel.live/open-feedback/nextui-storybook-v2-git-fix-eng-986-nextui-org.vercel.app?via=pr-comment-feedback-link) | Dec 2, 2024 11:17am | | |
\n- coderabbitai: <!-- This is an auto-generated comment: summarize by coderabbit.ai --> | |
<!-- walkthrough_start --> | |
## Walkthrough | |
This pull request introduces comprehensive updates to the documentation of various components in the NextUI library. The primary focus is on modifying the `classNames` property type across multiple components from a required `Record` type to a `Partial<Record>` type. This change allows for more flexible customization of class names. Additionally, the documentation has been enhanced with detailed descriptions of props, events, usage examples, and accessibility features, improving clarity and usability for developers. | |
## Changes | |
| File Path | Change Summary | | |
|----------------------------------------------------|-----------------------------------------------------------------------------------------------------------------| | |
| apps/docs/content/docs/components/autocomplete.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; enhanced API documentation and examples. | | |
| apps/docs/content/docs/components/avatar.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; improved prop descriptions and examples. | | |
| apps/docs/content/docs/components/badge.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; organized documentation for clarity. | | |
| apps/docs/content/docs/components/breadcrumbs.mdx | Updated `classNames` and `itemClasses` types from `Record` to `Partial<Record>`; added new sections on usage. | | |
| apps/docs/content/docs/components/calendar.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; expanded usage and prop descriptions. | | |
| apps/docs/content/docs/components/card.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; added detailed prop descriptions and examples. | | |
| apps/docs/content/docs/components/checkbox-group.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; maintained overall structure and content. | | |
| apps/docs/content/docs/components/checkbox.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; enhanced prop and accessibility descriptions. | | |
| apps/docs/content/docs/components/chip.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; retained overall documentation structure. | | |
| apps/docs/content/docs/components/circular-progress.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; included accessibility features. | | |
| apps/docs/content/docs/components/date-range-picker.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; clarified usage and prop descriptions. | | |
| apps/docs/content/docs/components/drawer.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; added sections on customization and usage. | | |
| apps/docs/content/docs/components/dropdown.mdx | Updated `classNames` and `itemClasses` types from `Record` to `Partial<Record>`; refined prop descriptions. | | |
| apps/docs/content/docs/components/image.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; enhanced API section with detailed prop info. | | |
| apps/docs/content/docs/components/input-otp.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; expanded documentation on props and usage. | | |
| apps/docs/content/docs/components/input.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; improved examples and prop descriptions. | | |
| apps/docs/content/docs/components/kbd.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; retained overall documentation structure. | | |
| apps/docs/content/docs/components/listbox.mdx | Updated `classNames` and `itemClasses` types from `Record` to `Partial<Record>`; enhanced prop descriptions. | | |
| apps/docs/content/docs/components/modal.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; added sections on accessibility and usage. | | |
| apps/docs/content/docs/components/navbar.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; clarified usage examples and props. | | |
| apps/docs/content/docs/components/pagination.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; expanded documentation on features and usage. | | |
| apps/docs/content/docs/components/popover.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; enhanced accessibility and usage sections. | | |
| apps/docs/content/docs/components/progress.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; detailed prop descriptions and usage guidelines. | | |
| apps/docs/content/docs/components/radio-group.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; enhanced documentation for props and events. | | |
| apps/docs/content/docs/components/select.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; clarified API section and examples. | | |
| apps/docs/content/docs/components/skeleton.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; retained overall documentation structure. | | |
| apps/docs/content/docs/components/snippet.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; maintained overall documentation structure. | | |
| apps/docs/content/docs/components/spinner.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; clarified usage and accessibility sections. | | |
| apps/docs/content/docs/components/switch.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; enhanced documentation on props and events. | | |
| apps/docs/content/docs/components/table.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; detailed features and usage guidelines. | | |
| apps/docs/content/docs/components/tabs.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; improved examples and accessibility sections. | | |
| apps/docs/content/docs/components/textarea.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; retained overall documentation structure. | | |
| apps/docs/content/docs/components/time-input.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; enhanced documentation on props and usage. | | |
| apps/docs/content/docs/components/tooltip.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; improved accessibility and usage sections. | | |
| apps/docs/content/docs/components/user.mdx | Updated `classNames` type from `Record` to `Partial<Record>`; clarified API section. | | |
## Assessment against linked issues | |
| Objective | Addressed | Explanation | | |
|---------------------------------------------------------------------------|-----------|-------------------------------------------------------------------------------------------------| | |
| Update `classNames` type to `Partial<Record>` as per issue #3216 | β | | | |
| Ensure documentation clarity regarding `classNames` usage as per issue #3216 | β | | | |
## Possibly related PRs | |
- **#3258**: Updates the `classNames` property in the `DateRangePicker` component, related to the changes in this PR. | |
- **#3773**: Addresses the propagation of `classNames` in the DatePicker component, aligning with the main PR's focus. | |
- **#3796**: Fixes broken links in the DatePicker documentation, relevant to the overall documentation improvements. | |
- **#3974**: Introduces a new `tabRef` prop in the `Tab` component, reflecting ongoing improvements in component APIs. | |
## Suggested labels | |
`π Scope : Docs` | |
## Suggested reviewers | |
- jrgarciadev | |
<!-- walkthrough_end --> | |
<!-- internal state start --> | |
<!-- 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= --> | |
<!-- internal state end --> | |
<!-- tips_start --> | |
--- | |
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? | |
<details> | |
<summary>β€οΈ Share</summary> | |
- [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai) | |
- [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai) | |
- [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai) | |
- [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code) | |
</details> | |
<details> | |
<summary>πͺ§ Tips</summary> | |
### Chat | |
There are 3 ways to chat with [CodeRabbit](https://coderabbit.ai): | |
- Review comments: Directly reply to a review comment made by CodeRabbit. Example: | |
- `I pushed a fix in commit <commit_id>, please review it.` | |
- `Generate unit testing code for this file.` | |
- `Open a follow-up GitHub issue for this discussion.` | |
- Files and specific lines of code (under the "Files changed" tab): Tag `@coderabbitai` in a new review comment at the desired location with your query. Examples: | |
- `@coderabbitai generate unit testing code for this file.` | |
- `@coderabbitai modularize this function.` | |
- PR comments: Tag `@coderabbitai` in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples: | |
- `@coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.` | |
- `@coderabbitai read src/utils.ts and generate unit testing code.` | |
- `@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.` | |
- `@coderabbitai help me debug CodeRabbit configuration file.` | |
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. | |
### CodeRabbit Commands (Invoked using PR comments) | |
- `@coderabbitai pause` to pause the reviews on a PR. | |
- `@coderabbitai resume` to resume the paused reviews. | |
- `@coderabbitai review` to trigger an incremental review. This is useful when automatic reviews are disabled for the repository. | |
- `@coderabbitai full review` to do a full review from scratch and review all the files again. | |
- `@coderabbitai summary` to regenerate the summary of the PR. | |
- `@coderabbitai resolve` resolve all the CodeRabbit review comments. | |
- `@coderabbitai configuration` to show the current CodeRabbit configuration for the repository. | |
- `@coderabbitai help` to get help. | |
### Other keywords and placeholders | |
- Add `@coderabbitai ignore` anywhere in the PR description to prevent this PR from being reviewed. | |
- Add `@coderabbitai summary` to generate the high-level summary at a specific location in the PR description. | |
- Add `@coderabbitai` anywhere in the PR title to generate the title automatically. | |
### Documentation and Community | |
- Visit our [Documentation](https://docs.coderabbit.ai) for detailed information on how to use CodeRabbit. | |
- Join our [Discord Community](http://discord.gg/coderabbit) to get help, request features, and share feedback. | |
- Follow us on [X/Twitter](https://twitter.com/coderabbitai) for updates and announcements. | |
</details> | |
<!-- tips_end -->\n | |
Files Changed: | |
- apps/docs/content/docs/components/autocomplete.mdx (modified, 2 changes)\n Patch: @@ -745,7 +745,7 @@ properties to customize the popover, listbox and input components. | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'base' | 'listboxWrapper' | 'listbox' | 'popoverContent' | 'endContentWrapper' | 'clearButton' | 'selectorButton', string>", | |
+ type: "Partial<Record<'base' | 'listboxWrapper' | 'listbox' | 'popoverContent' | 'endContentWrapper' | 'clearButton' | 'selectorButton', string>>", | |
description: "Allows to set custom class names for the Autocomplete slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/avatar.mdx (modified, 4 changes)\n Patch: @@ -252,7 +252,7 @@ You can customize any part of the avatar by using the `classNames` prop, each `s | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\" | \"img\" | \"fallback\" | \"name\" | \"icon\", string>", | |
+ type: "Partial<Record<\"base\" | \"img\" | \"fallback\" | \"name\" | \"icon\", string>>", | |
description: "Allows to set custom class names for the avatar slots.", | |
default: "-" | |
} | |
@@ -319,7 +319,7 @@ You can customize any part of the avatar by using the `classNames` prop, each `s | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\" | \"count\", string>", | |
+ type: "Partial<Record<\"base\" | \"count\", string>>", | |
description: "Allows to set custom class names for the avatar group slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/badge.mdx (modified, 2 changes)\n Patch: @@ -185,7 +185,7 @@ The Badge component has two slots: | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\"ο½\"badge\", string>", | |
+ type: "Partial<Record<\"base\"ο½\"badge\", string>>", | |
description: "Allows to set custom class names for the badge slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/breadcrumbs.mdx (modified, 6 changes)\n Patch: @@ -293,13 +293,13 @@ You can customize the `Breadcrumbs` style by using the `classNames` prop and its | |
}, | |
{ | |
attribute: "itemClasses", | |
- type: "Record<\"base\" | \"item\" | \"separator\", string>", | |
+ type: "Partial<Record<\"base\" | \"item\" | \"separator\", string>>", | |
description: "Allows to set custom class names for the breadcrumbs item slots.", | |
default: "-" | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\" | \"list\" | \"ellipsis\" | \"separator\", string>", | |
+ type: "Partial<Record<\"base\" | \"list\" | \"ellipsis\" | \"separator\", string>>", | |
description: "Allows to set custom class names for the breadcrumbs slots.", | |
default: "-" | |
} | |
@@ -397,7 +397,7 @@ You can customize the `Breadcrumbs` style by using the `classNames` prop and its | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\" | \"item\" | \"separator\", string>", | |
+ type: "Partial<Record<\"base\" | \"item\" | \"separator\", string>>", | |
description: "Allows to set custom class names for the item slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/calendar.mdx (modified, 2 changes)\n Patch: @@ -365,7 +365,7 @@ Here's the example to customize `topContent` and `bottomContent` to have some pr | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'base' | 'prevButton' | 'nextButton' | 'headerWrapper' | 'header' | 'title' | 'content' | 'gridWrapper' | 'grid' | 'gridHeader' | 'gridHeaderRow' | 'gridHeaderCell' | 'gridBody' | 'gridBodyRow' | 'cell' | 'cellButton' | 'pickerWrapper' | 'pickerMonthList' | 'pickerYearList' | 'pickerHighlight' | 'pickerItem' | 'helperWrapper' | 'errorMessage', string>", | |
+ type: "Partial<Record<'base' | 'prevButton' | 'nextButton' | 'headerWrapper' | 'header' | 'title' | 'content' | 'gridWrapper' | 'grid' | 'gridHeader' | 'gridHeaderRow' | 'gridHeaderCell' | 'gridBody' | 'gridBodyRow' | 'cell' | 'cellButton' | 'pickerWrapper' | 'pickerMonthList' | 'pickerYearList' | 'pickerHighlight' | 'pickerItem' | 'helperWrapper' | 'errorMessage', string>>", | |
description: "Allows to set custom class names for the calendar slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/card.mdx (modified, 2 changes)\n Patch: @@ -205,7 +205,7 @@ You can use `Image` component as the cover of the card by taking it out of the ` | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'base' | 'header' | 'body' | 'footer', string>", | |
+ type: "Partial<Record<'base' | 'header' | 'body' | 'footer', string>>", | |
description: "Allows to set custom class names for the card slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/checkbox-group.mdx (modified, 2 changes)\n Patch: @@ -217,7 +217,7 @@ In case you need to customize the checkbox even further, you can use the `useChe | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\" | \"wrapper\" | \"label\", string>", | |
+ type: "Partial<Record<\"base\" | \"wrapper\" | \"label\", string>>", | |
description: "Allows to set custom class names for the checkbox group slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/checkbox.mdx (modified, 2 changes)\n Patch: @@ -252,7 +252,7 @@ In case you need to customize the checkbox even further, you can use the `useChe | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\"ο½ \"wrapper\"ο½ \"icon\"ο½ \"label\", string>", | |
+ type: "Partial<Record<\"base\"ο½ \"wrapper\"ο½ \"icon\"ο½ \"label\", string>>", | |
description: "Allows to set custom class names for the checkbox slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/chip.mdx (modified, 2 changes)\n Patch: @@ -157,7 +157,7 @@ You can customize the `Chip` component by passing custom Tailwind CSS classes to | |
}, | |
{ | |
attribute: "classNames", | |
- type: 'Record<"base" | "content" | "dot" | "avatar" | "closeButton", string>', | |
+ type: 'Partial<Record<"base" | "content" | "dot" | "avatar" | "closeButton", string>>', | |
description: "Allows to set custom class names for the chip slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/circular-progress.mdx (modified, 2 changes)\n Patch: @@ -201,7 +201,7 @@ You can customize the `CircularProgress` component by passing custom Tailwind CS | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'base'ο½'svgWrapper'ο½'svg'ο½'track'ο½'indicator'ο½'value'ο½'label', string>", | |
+ type: "Partial<Record<'base'ο½'svgWrapper'ο½'svg'ο½'track'ο½'indicator'ο½'value'ο½'label', string>>", | |
description: "Allows to set custom class names for the circular progress slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/date-range-picker.mdx (modified, 2 changes)\n Patch: @@ -628,7 +628,7 @@ You can customize the `DateRangePicker` component by passing custom Tailwind CSS | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\" | \"selectorButton\" | \"selectorIcon\" | \"popoverContent\" | \"calendar\" | \"calendarContent\" | \"timeInputLabel\" | \"timeInput\", string>", | |
+ type: "Partial<Record<\"base\" | \"selectorButton\" | \"selectorIcon\" | \"popoverContent\" | \"calendar\" | \"calendarContent\" | \"timeInputLabel\" | \"timeInput\", string>>", | |
description: "Allows to set custom class names for the date-range-picker slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/drawer.mdx (modified, 2 changes)\n Patch: @@ -247,7 +247,7 @@ The Drawer component design is inspired by [Luma](https://x.com/LumaHQ). | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'wrapper' | 'base' | 'backdrop' | 'header' | 'body' | 'footer' | 'closeButton', string>", | |
+ type: "Partial<Record<'wrapper' | 'base' | 'backdrop' | 'header' | 'body' | 'footer' | 'closeButton', string>>", | |
description: "Allows to set custom class names for the drawer slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/dropdown.mdx (modified, 10 changes)\n Patch: @@ -480,13 +480,13 @@ you to customize each item individually. | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<baseο½listο½emptyContent, string>", | |
+ type: "Partial<Record<'base'ο½'list'ο½'emptyContent', string>>", | |
description: "Allows to set custom class names for the dropdown menu slots.", | |
default: "-" | |
}, | |
{ | |
attribute: "itemClasses", | |
- type: "Record<baseο½wrapperο½titleο½descriptionο½shortcutο½selectedIcon, string>", | |
+ type: "Partial<Record<'base'ο½'wrapper'ο½'title'ο½'description'ο½'shortcut'ο½'selectedIcon', string>>", | |
description: "Allows to set custom class names for the dropdown item slots.", | |
default: "-" | |
} | |
@@ -560,13 +560,13 @@ you to customize each item individually. | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<baseο½headingο½groupο½divider, string>", | |
+ type: "Record<'base'ο½'heading'ο½'group'ο½'divider', string>>", | |
description: "Allows to set custom class names for the dropdown section slots.", | |
default: "-" | |
}, | |
{ | |
attribute: "itemClasses", | |
- type: "Record<baseο½wrapperο½titleο½descriptionο½shortcutο½selectedIcon, string>", | |
+ type: "Record<'base'ο½'wrapper'ο½'title'ο½'description'ο½'shortcut'ο½'selectedIcon', string>>", | |
description: "Allows to set custom class names for the dropdown item slots.", | |
default: "-" | |
} | |
@@ -705,7 +705,7 @@ you to customize each item individually. | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<baseο½wrapperο½titleο½descriptionο½shortcutο½selectedIcon, string>", | |
+ type: "Record<'base'ο½'wrapper'ο½'title'ο½'description'ο½'shortcut'ο½'selectedIcon', string>>", | |
description: "Allows to set custom class names for the dropdown item slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/image.mdx (modified, 2 changes)\n Patch: @@ -185,7 +185,7 @@ you can use it with NextUI `Image` component as well. | |
}, | |
{ | |
attribute: "classNames", | |
- type: 'Record<"img" | "wrapper" | "zoomedWrapper" | "blurredImg", string>', | |
+ type: 'Partial<Record<"img" | "wrapper" | "zoomedWrapper" | "blurredImg", string>>', | |
description: "Allows to set custom class names for the image slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/input-otp.mdx (modified, 2 changes)\n Patch: @@ -299,7 +299,7 @@ You can customize the styles of the `InputOtp` component using the `classNames` | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'base' | 'inputWrapper' | 'input' | 'segmentWrapper' | 'segment' | 'caret' | 'passwordChar' | 'helperWrapper' | 'description' | 'errorMessage', string>", | |
+ type: "Partial<Record<'base' | 'inputWrapper' | 'input' | 'segmentWrapper' | 'segment' | 'caret' | 'passwordChar' | 'helperWrapper' | 'description' | 'errorMessage', string>>", | |
description: "Allows to set custom class names for the Input slots.", | |
default: "-" | |
},\n- apps/docs/content/docs/components/input.mdx (modified, 2 changes)\n Patch: @@ -342,7 +342,7 @@ In case you need to customize the input even further, you can use the `useInput` | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'base' | 'label' | 'inputWrapper' | 'innerWrapper' | 'mainWrapper' | 'input' | 'clearButton' | 'helperWrapper' | 'description' | 'errorMessage', string>", | |
+ type: "Partial<Record<'base' | 'label' | 'inputWrapper' | 'innerWrapper' | 'mainWrapper' | 'input' | 'clearButton' | 'helperWrapper' | 'description' | 'errorMessage', string>>", | |
description: "Allows to set custom class names for the Input slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/kbd.mdx (modified, 2 changes)\n Patch: @@ -81,7 +81,7 @@ Keyboard key is a component to display which key or combination of keys performs | |
}, | |
{ | |
attribute: "classNames", | |
- type: 'Record<"base" | "abbr" | "content", string>', | |
+ type: 'Partial<Record<"base" | "abbr" | "content", string>>', | |
description: "Allows to set custom class names for the keyboard key slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/listbox.mdx (modified, 10 changes)\n Patch: @@ -377,13 +377,13 @@ You can customize the `Listbox` items style by using the `itemClasses` prop and | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\" | \"list\" | \"emptyContent\", string>", | |
+ type: "Partial<Record<\"base\" | \"list\" | \"emptyContent\", string>>", | |
description: "Allows to set custom class names for the listbox slots.", | |
default: "-" | |
}, | |
{ | |
attribute: "itemClasses", | |
- type: "Record<\"base\" | \"wrapper\" | \"title\" | \"description\" | \"selectedIcon\", string>", | |
+ type: "Partial<Record<\"base\" | \"wrapper\" | \"title\" | \"description\" | \"selectedIcon\", string>>", | |
description: "Allows to set custom class names for the listbox item slots.", | |
default: "-" | |
} | |
@@ -451,13 +451,13 @@ You can customize the `Listbox` items style by using the `itemClasses` prop and | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\" | \"heading\" | \"group\" | \"divider\", string>", | |
+ type: "Partial<Record<\"base\" | \"heading\" | \"group\" | \"divider\", string>>", | |
description: "Allows to set custom class names for the listbox section slots.", | |
default: "-" | |
}, | |
{ | |
attribute: "itemClasses", | |
- type: "Record<\"base\" | \"wrapper\" | \"title\" | \"description\" | \"shortcut\" | \"selectedIcon\", string>", | |
+ type: "Partial<Record<\"base\" | \"wrapper\" | \"title\" | \"description\" | \"shortcut\" | \"selectedIcon\", string>>", | |
description: "Allows to set custom class names for the listbox item slots.", | |
default: "-" | |
} | |
@@ -596,7 +596,7 @@ You can customize the `Listbox` items style by using the `itemClasses` prop and | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\" | \"wrapper\" | \"title\" | \"description\" | \"shortcut\" | \"selectedIcon\", string>", | |
+ type: "Partial<Record<\"base\" | \"wrapper\" | \"title\" | \"description\" | \"shortcut\" | \"selectedIcon\", string>>", | |
description: "Allows to set custom class names for the listbox item slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/modal.mdx (modified, 2 changes)\n Patch: @@ -299,7 +299,7 @@ You can customize the `Modal` component by passing custom Tailwind CSS classes t | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'wrapper' | 'base' | 'backdrop' | 'header' | 'body' | 'footer' | 'closeButton', string>", | |
+ type: "Partial<Record<'wrapper' | 'base' | 'backdrop' | 'header' | 'body' | 'footer' | 'closeButton', string>>", | |
description: "Allows to set custom class names for the modal slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/navbar.mdx (modified, 2 changes)\n Patch: @@ -342,7 +342,7 @@ When the `NavbarItem` is active, it will have a `data-active` attribute. You can | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'base' | 'wrapper' | 'brand' | 'content' | 'item' | 'toggle' | 'toggleIcon' | 'menu' | 'menuItem', string>", | |
+ type: "Partial<Record<'base' | 'wrapper' | 'brand' | 'content' | 'item' | 'toggle' | 'toggleIcon' | 'menu' | 'menuItem', string>>", | |
description: "Allows to set custom class names for the navbar slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/pagination.mdx (modified, 2 changes)\n Patch: @@ -294,7 +294,7 @@ your own implementation. | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'base' | 'wrapper' | 'prev' | 'next' | 'item' | 'cursor' | 'forwardIcon' | 'ellipsis' | 'chevronNext', string>", | |
+ type: "Partial<Record<'base' | 'wrapper' | 'prev' | 'next' | 'item' | 'cursor' | 'forwardIcon' | 'ellipsis' | 'chevronNext', string>>", | |
description: "Allows to set custom class names for the pagination slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/popover.mdx (modified, 2 changes)\n Patch: @@ -296,7 +296,7 @@ You can customize the `Popover` component by passing custom Tailwind CSS classes | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'base' | 'trigger' | 'backdrop' | 'content', string>", | |
+ type: "Partial<Record<'base' | 'trigger' | 'backdrop' | 'content', string>>", | |
description: "Allows to set custom class names for the popover slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/progress.mdx (modified, 2 changes)\n Patch: @@ -210,7 +210,7 @@ You can customize the `Progress` component by passing custom Tailwind CSS classe | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'base' | 'labelWrapper' | 'label' | 'track' | 'value' | 'indicator', string>", | |
+ type: "Partial<Record<'base' | 'labelWrapper' | 'label' | 'track' | 'value' | 'indicator', string>>", | |
description: "Allows to set custom class names for the progress slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/radio-group.mdx (modified, 4 changes)\n Patch: @@ -259,7 +259,7 @@ In case you need to customize the radio group even further, you can use the `use | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\" | \"wrapper\" | \"label\", string>", | |
+ type: "Partial<Record<\"base\" | \"wrapper\" | \"label\", string>>", | |
description: "Allows to set custom class names for the radio group slots.", | |
default: "-" | |
} | |
@@ -351,7 +351,7 @@ In case you need to customize the radio group even further, you can use the `use | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\" | \"wrapper\" | \"labelWrapper\" | \"label\" | \"control\" | \"description\", string>", | |
+ type: "Partial<Record<\"base\" | \"wrapper\" | \"labelWrapper\" | \"label\" | \"control\" | \"description\", string>>", | |
description: "Allows to set custom class names for the radio slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/select.mdx (modified, 2 changes)\n Patch: @@ -623,7 +623,7 @@ the popover and listbox components. | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\"ο½ \"label\"ο½ \"trigger\"ο½ \"mainWrapper\" ο½ \"innerWrapper\"ο½ \"selectorIcon\" ο½ \"value\" ο½ \"listboxWrapper\"ο½ \"listbox\" ο½ \"popoverContent\" ο½ \"helperWrapper\" ο½ \"description\" ο½ \"errorMessage\", string>", | |
+ type: "Partial<Record<\"base\"ο½ \"label\"ο½ \"trigger\"ο½ \"mainWrapper\" ο½ \"innerWrapper\"ο½ \"selectorIcon\" ο½ \"value\" ο½ \"listboxWrapper\"ο½ \"listbox\" ο½ \"popoverContent\" ο½ \"helperWrapper\" ο½ \"description\" ο½ \"errorMessage\", string>>", | |
description: "Allows to set custom class names for the Select slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/skeleton.mdx (modified, 2 changes)\n Patch: @@ -96,7 +96,7 @@ You can use the `isLoaded` prop to stop the skeleton animation and show the chil | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\" | \"content\", string>", | |
+ type: "Partial<Record<\"base\" | \"content\", string>>", | |
description: "Allows to set custom class names for the skeleton slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/snippet.mdx (modified, 2 changes)\n Patch: @@ -192,7 +192,7 @@ You can customize the copy and copied icons by using the `copyIcon` and `checkIc | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'base' | 'content' | 'pre' | 'symbol' | 'copyButton' | 'checkIcon', string>", | |
+ type: "Partial<Record<'base' | 'content' | 'pre' | 'symbol' | 'copyButton' | 'checkIcon', string>>", | |
description: "Allows to set custom class names for the snippet slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/spinner.mdx (modified, 2 changes)\n Patch: @@ -102,7 +102,7 @@ Spinner express an unspecified wait time or display the length of a process. | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\"ο½\"wrapper\"ο½\"circle1\"ο½\"circle2\"ο½\"label\", string>", | |
+ type: "Partial<Record<\"base\"ο½\"wrapper\"ο½\"circle1\"ο½\"circle2\"ο½\"label\", string>>", | |
description: "Allows to set custom class names for the spinner slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/switch.mdx (modified, 2 changes)\n Patch: @@ -223,7 +223,7 @@ In case you need to customize the switch even further, you can use the `useSwitc | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<\"base\"ο½ \"wrapper\"ο½ \"thumb\"ο½ \"label\" ο½ \"startContent\" ο½ \"endContent\" ο½ \"thumbIcon\" , string>", | |
+ type: "Partial<Record<\"base\"ο½ \"wrapper\"ο½ \"thumb\"ο½ \"label\" ο½ \"startContent\" ο½ \"endContent\" ο½ \"thumbIcon\" , string>>", | |
description: "Allows to set custom class names for the switch slots.", | |
default: "-" | |
}\n- apps/docs/content/docs/components/table.mdx (modified, 2 changes)\n Patch: @@ -597,7 +597,7 @@ You can customize the `Table` component by passing custom Tailwind CSS classes t | |
}, | |
{ | |
attribute: "classNames", | |
- type: "Record<'base' | 'table' | 'thead' | 'tbody' | 'tfoot' | 'emptyWrapper' | 'loadingWrapper' | 'wrapper' | 'tr' | 'th' | 'td' | 'sortIcon', string>", | |
+ type: "Partial<Record<'base' | 'table' | 'thead' | 'tbody' | 'tfoot' | 'emptyWrapper' | 'loadingWrapper' | 'wrapper' | 'tr' | 'th' | 'td' | 'sortIcon', string>>", | |
description: "Allows to set custom class names for the dropdown item slots.", | |
default: "-" | |
},\n |