From 81ac076219c3d7ef151f641414a0fbeca2da0bdd Mon Sep 17 00:00:00 2001 From: Benjamin Canac Date: Tue, 3 Dec 2024 16:11:32 +0100 Subject: [PATCH] feat(module)!: migrate to `reka-ui` (#2448) --- README.md | 4 +- cli/templates.mjs | 12 +- docs/app/app.vue | 2 +- .../icons/{radix-vue.svg => reka-ui.svg} | 0 docs/app/components/FrameworkSelect.vue | 2 +- docs/app/components/Header.vue | 2 +- docs/app/components/content/ComponentCode.vue | 5 +- docs/app/components/content/FrameworkOnly.vue | 2 +- .../calendar/CalendarDisabledDatesExample.vue | 2 +- .../CalendarUnavailableDatesExample.vue | 2 +- ... => CommandPaletteIgnoreFilterExample.vue} | 2 +- .../CommandPalettePostFilterExample.vue | 4 +- .../CommandPaletteSearchTermExample.vue | 2 +- .../drawer/DrawerCommandPaletteExample.vue | 2 +- .../input-menu/InputMenuCreateItemExample.vue | 20 + .../InputMenuFilterFieldsExample.vue | 2 +- ...e.vue => InputMenuIgnoreFilterExample.vue} | 2 +- .../modal/ModalCommandPaletteExample.vue | 2 +- .../NavigationMenuContentSlotExample.vue | 2 +- .../SelectMenuCreateItemExample.vue | 20 + .../SelectMenuFilterFieldsExample.vue | 2 +- ....vue => SelectMenuIgnoreFilterExample.vue} | 2 +- .../examples/select/SelectFetchExample.vue | 2 +- .../select/SelectItemsChipExample.vue | 2 +- .../content/examples/table/TableExample.vue | 7 +- .../table/TableRowSelectionExample.vue | 7 +- docs/app/error.vue | 2 +- docs/content/1.getting-started/1.index.md | 10 +- docs/content/2.composables/use-toast.md | 2 +- docs/content/3.components/0.app.md | 4 +- docs/content/3.components/accordion.md | 36 +- docs/content/3.components/avatar.md | 4 +- docs/content/3.components/calendar.md | 4 +- docs/content/3.components/checkbox.md | 14 +- docs/content/3.components/collapsible.md | 36 +- docs/content/3.components/command-palette.md | 12 +- docs/content/3.components/context-menu.md | 4 +- docs/content/3.components/drawer.md | 4 +- docs/content/3.components/dropdown-menu.md | 4 +- docs/content/3.components/input-menu.md | 75 +- docs/content/3.components/input-number.md | 4 +- docs/content/3.components/modal.md | 4 +- docs/content/3.components/navigation-menu.md | 100 +- docs/content/3.components/pagination.md | 4 +- docs/content/3.components/popover.md | 9 +- docs/content/3.components/progress.md | 4 +- docs/content/3.components/radio-group.md | 4 +- docs/content/3.components/select-menu.md | 77 +- docs/content/3.components/select.md | 58 +- docs/content/3.components/separator.md | 4 +- docs/content/3.components/slideover.md | 4 +- docs/content/3.components/slider.md | 4 +- docs/content/3.components/switch.md | 4 +- docs/content/3.components/tabs.md | 20 +- docs/content/3.components/toast.md | 6 +- docs/content/3.components/tooltip.md | 6 +- docs/package.json | 2 +- package.json | 2 +- playground-vue/vite.config.ts | 2 +- playground/app/pages/components/checkbox.vue | 2 +- .../app/pages/components/command-palette.vue | 4 +- .../app/pages/components/input-menu.vue | 4 +- .../app/pages/components/select-menu.vue | 2 +- playground/app/pages/components/select.vue | 10 +- playground/app/pages/components/table.vue | 7 +- playground/nuxt.config.ts | 2 +- pnpm-lock.yaml | 2047 +++++++++----- src/runtime/components/Accordion.vue | 8 +- src/runtime/components/Alert.vue | 4 +- src/runtime/components/App.vue | 8 +- src/runtime/components/Avatar.vue | 4 +- src/runtime/components/AvatarGroup.vue | 2 +- src/runtime/components/Badge.vue | 2 +- src/runtime/components/Breadcrumb.vue | 2 +- src/runtime/components/Button.vue | 2 +- src/runtime/components/ButtonGroup.vue | 2 +- src/runtime/components/Calendar.vue | 6 +- src/runtime/components/Card.vue | 2 +- src/runtime/components/Carousel.vue | 15 +- src/runtime/components/Checkbox.vue | 54 +- src/runtime/components/Chip.vue | 2 +- src/runtime/components/Collapsible.vue | 8 +- src/runtime/components/CommandPalette.vue | 151 +- src/runtime/components/Container.vue | 2 +- src/runtime/components/ContextMenu.vue | 4 +- src/runtime/components/ContextMenuContent.vue | 10 +- src/runtime/components/Drawer.vue | 4 +- src/runtime/components/DropdownMenu.vue | 4 +- .../components/DropdownMenuContent.vue | 10 +- src/runtime/components/FormField.vue | 11 +- src/runtime/components/Icon.vue | 2 +- src/runtime/components/Input.vue | 10 +- src/runtime/components/InputMenu.vue | 173 +- src/runtime/components/InputNumber.vue | 4 +- src/runtime/components/Kbd.vue | 2 +- src/runtime/components/Link.vue | 2 +- src/runtime/components/LinkBase.vue | 2 +- src/runtime/components/Modal.vue | 10 +- src/runtime/components/NavigationMenu.vue | 24 +- src/runtime/components/Pagination.vue | 6 +- src/runtime/components/PinInput.vue | 4 +- src/runtime/components/Popover.vue | 6 +- src/runtime/components/Progress.vue | 10 +- src/runtime/components/RadioGroup.vue | 7 +- src/runtime/components/Select.vue | 68 +- src/runtime/components/SelectMenu.vue | 178 +- src/runtime/components/Separator.vue | 4 +- src/runtime/components/Skeleton.vue | 2 +- src/runtime/components/Slideover.vue | 10 +- src/runtime/components/Slider.vue | 4 +- src/runtime/components/Switch.vue | 26 +- src/runtime/components/Table.vue | 20 +- src/runtime/components/Tabs.vue | 16 +- src/runtime/components/Textarea.vue | 10 +- src/runtime/components/Toast.vue | 7 +- src/runtime/components/Toaster.vue | 4 +- src/runtime/components/Tooltip.vue | 4 +- src/runtime/keyframes.css | 8 +- src/runtime/types/utils.ts | 4 - src/runtime/utils/index.ts | 22 +- src/runtime/vue/components/Link.vue | 2 +- src/theme/button.ts | 2 +- src/theme/checkbox.ts | 2 +- src/theme/command-palette.ts | 4 +- src/theme/context-menu.ts | 2 +- src/theme/input-menu.ts | 7 +- src/theme/navigation-menu.ts | 2 +- src/theme/radio-group.ts | 2 +- src/theme/select-menu.ts | 2 - src/theme/select.ts | 5 +- src/theme/slider.ts | 4 +- src/theme/switch.ts | 8 +- src/theme/tabs.ts | 6 +- src/theme/toaster.ts | 4 +- test/components/Accordion.spec.ts | 2 + test/components/Avatar.spec.ts | 1 + test/components/AvatarGroup.spec.ts | 2 +- test/components/Badge.spec.ts | 5 +- test/components/Breadcrumb.spec.ts | 2 +- test/components/Button.spec.ts | 5 +- test/components/Checkbox.spec.ts | 18 +- test/components/Chip.spec.ts | 2 +- test/components/Collapsible.spec.ts | 3 + test/components/FormField.spec.ts | 1 + test/components/Input.spec.ts | 1 + test/components/InputMenu.spec.ts | 6 +- test/components/InputNumber.spec.ts | 5 +- test/components/Kbd.spec.ts | 2 +- test/components/NavigationMenu.spec.ts | 2 + test/components/Pagination.spec.ts | 2 +- test/components/PinInput.spec.ts | 6 +- test/components/Progress.spec.ts | 2 +- test/components/RadioGroup.spec.ts | 4 +- test/components/Select.spec.ts | 4 +- test/components/SelectMenu.spec.ts | 6 +- test/components/Separator.spec.ts | 2 +- test/components/Slider.spec.ts | 2 + test/components/Switch.spec.ts | 15 +- test/components/Table.spec.ts | 8 +- test/components/Tabs.spec.ts | 2 + test/components/Textarea.spec.ts | 1 + test/components/Toast.spec.ts | 1 + test/components/Tooltip.spec.ts | 2 +- .../__snapshots__/Accordion-vue.spec.ts.snap | 514 ++-- .../__snapshots__/Accordion.spec.ts.snap | 514 ++-- .../__snapshots__/Alert-vue.spec.ts.snap | 4 +- .../__snapshots__/Alert.spec.ts.snap | 4 +- .../__snapshots__/Avatar-vue.spec.ts.snap | 6 + .../__snapshots__/Avatar.spec.ts.snap | 6 + .../__snapshots__/Badge-vue.spec.ts.snap | 5 + .../__snapshots__/Badge.spec.ts.snap | 5 + .../__snapshots__/Button-vue.spec.ts.snap | 97 +- .../__snapshots__/Button.spec.ts.snap | 97 +- .../ButtonGroup-vue.spec.ts.snap | 14 +- .../__snapshots__/ButtonGroup.spec.ts.snap | 14 +- .../__snapshots__/Calendar-vue.spec.ts.snap | 2454 ++++++++--------- .../__snapshots__/Calendar.spec.ts.snap | 2454 ++++++++--------- .../__snapshots__/Carousel-vue.spec.ts.snap | 24 +- .../__snapshots__/Carousel.spec.ts.snap | 24 +- .../__snapshots__/Checkbox-vue.spec.ts.snap | 162 +- .../__snapshots__/Checkbox.spec.ts.snap | 162 +- .../Collapsible-vue.spec.ts.snap | 31 +- .../__snapshots__/Collapsible.spec.ts.snap | 31 +- .../CommandPalette-vue.spec.ts.snap | 1095 +++----- .../__snapshots__/CommandPalette.spec.ts.snap | 1095 +++----- .../DropdownMenu-vue.spec.ts.snap | 304 +- .../__snapshots__/DropdownMenu.spec.ts.snap | 304 +- .../__snapshots__/FormField-vue.spec.ts.snap | 12 + .../__snapshots__/FormField.spec.ts.snap | 12 + .../__snapshots__/Input-vue.spec.ts.snap | 7 + .../__snapshots__/Input.spec.ts.snap | 7 + .../__snapshots__/InputMenu-vue.spec.ts.snap | 910 +++--- .../__snapshots__/InputMenu.spec.ts.snap | 912 +++--- .../InputNumber-vue.spec.ts.snap | 218 +- .../__snapshots__/InputNumber.spec.ts.snap | 218 +- .../__snapshots__/Modal-vue.spec.ts.snap | 80 +- .../__snapshots__/Modal.spec.ts.snap | 80 +- .../NavigationMenu-vue.spec.ts.snap | 399 ++- .../__snapshots__/NavigationMenu.spec.ts.snap | 399 ++- .../__snapshots__/Pagination-vue.spec.ts.snap | 908 +++--- .../__snapshots__/Pagination.spec.ts.snap | 908 +++--- .../__snapshots__/PinInput-vue.spec.ts.snap | 195 +- .../__snapshots__/PinInput.spec.ts.snap | 195 +- .../__snapshots__/Popover-vue.spec.ts.snap | 24 +- .../__snapshots__/Popover.spec.ts.snap | 24 +- .../__snapshots__/Progress-vue.spec.ts.snap | 9 +- .../__snapshots__/Progress.spec.ts.snap | 9 +- .../__snapshots__/RadioGroup-vue.spec.ts.snap | 247 +- .../__snapshots__/RadioGroup.spec.ts.snap | 247 +- .../__snapshots__/Select-vue.spec.ts.snap | 1739 ++++-------- .../__snapshots__/Select.spec.ts.snap | 1739 ++++-------- .../__snapshots__/SelectMenu-vue.spec.ts.snap | 1144 ++++---- .../__snapshots__/SelectMenu.spec.ts.snap | 1144 ++++---- .../__snapshots__/Slideover-vue.spec.ts.snap | 92 +- .../__snapshots__/Slideover.spec.ts.snap | 92 +- .../__snapshots__/Slider-vue.spec.ts.snap | 113 +- .../__snapshots__/Slider.spec.ts.snap | 113 +- .../__snapshots__/Switch-vue.spec.ts.snap | 152 +- .../__snapshots__/Switch.spec.ts.snap | 153 +- .../__snapshots__/Table-vue.spec.ts.snap | 107 +- .../__snapshots__/Table.spec.ts.snap | 107 +- .../__snapshots__/Tabs-vue.spec.ts.snap | 282 +- .../__snapshots__/Tabs.spec.ts.snap | 282 +- .../__snapshots__/Textarea-vue.spec.ts.snap | 2 + .../__snapshots__/Textarea.spec.ts.snap | 2 + .../__snapshots__/Toast-vue.spec.ts.snap | 157 +- .../__snapshots__/Toast.spec.ts.snap | 157 +- .../__snapshots__/Tooltip-vue.spec.ts.snap | 42 +- .../__snapshots__/Tooltip.spec.ts.snap | 42 +- 229 files changed, 13487 insertions(+), 13466 deletions(-) rename docs/app/assets/icons/{radix-vue.svg => reka-ui.svg} (100%) rename docs/app/components/content/examples/command-palette/{CommandPaletteFilterExample.vue => CommandPaletteIgnoreFilterExample.vue} (97%) create mode 100644 docs/app/components/content/examples/input-menu/InputMenuCreateItemExample.vue rename docs/app/components/content/examples/input-menu/{InputMenuFilterExample.vue => InputMenuIgnoreFilterExample.vue} (97%) create mode 100644 docs/app/components/content/examples/select-menu/SelectMenuCreateItemExample.vue rename docs/app/components/content/examples/select-menu/{SelectMenuFilterExample.vue => SelectMenuIgnoreFilterExample.vue} (97%) diff --git a/README.md b/README.md index 0e7c1762..9075381f 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ [![License][license-src]][license-href] [![Nuxt][nuxt-src]][nuxt-href] -We're thrilled to introduce Nuxt UI v3, a significant upgrade to our UI library that delivers extensive improvements and robust new capabilities. This major update harnesses the combined strengths of [Radix Vue](https://www.radix-vue.com/), [Tailwind CSS v4](https://tailwindcss.com/docs/v4-beta), and [Tailwind Variants](https://www.tailwind-variants.org/) to offer developers an unparalleled set of tools for creating sophisticated, accessible, and highly performant user interfaces. +We're thrilled to introduce Nuxt UI v3, a significant upgrade to our UI library that delivers extensive improvements and robust new capabilities. This major update harnesses the combined strengths of [Reka UI](https://reka-ui.com/), [Tailwind CSS v4](https://tailwindcss.com/docs/v4-beta), and [Tailwind Variants](https://www.tailwind-variants.org/) to offer developers an unparalleled set of tools for creating sophisticated, accessible, and highly performant user interfaces. > [!NOTE] > You are on the `v3` development branch, check out the [dev branch](https://github.com/nuxt/ui) for Nuxt UI v2. @@ -99,7 +99,7 @@ Learn more in the [installation guide](https://ui3.nuxt.dev/getting-started/inst - [nuxt/icon](https://github.com/nuxt/icon) - [nuxt/fonts](https://github.com/nuxt/fonts) - [nuxt-modules/color-mode](https://github.com/nuxt-modules/color-mode) -- [radix-vue/radix-vue](https://github.com/radix-vue/radix-vue) +- [unovue/reka-ui](https://github.com/unovue/reka-ui) - [tailwindlabs/tailwindcss](https://github.com/tailwindlabs/tailwindcss) - [vueuse/vueuse](https://github.com/vueuse/vueuse) diff --git a/cli/templates.mjs b/cli/templates.mjs index 087718a2..d0bdac36 100644 --- a/cli/templates.mjs +++ b/cli/templates.mjs @@ -55,7 +55,7 @@ export interface ${upperName}Slots {