From 433ca8d26f23a3428bf589da2902b0b7311f0cf6 Mon Sep 17 00:00:00 2001 From: Damien Schneider <74979845+damien-schneider@users.noreply.github.com> Date: Fri, 13 Dec 2024 02:20:02 +0100 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20add=20Sidemenu=20component=20with?= =?UTF-8?q?=20smooth=20hover=20effect=20and=20update=20changelog=20(#63)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * ✨ add Sidemenu component with smooth hover effect and update changelog * 🔄 migrate from framer-motion to motion/react for animation components * 🔄 update build script to use Deno and TypeScript * ✨ add default exports to various category files and rename some for consistency * 🚧 prepare new section list auto build * ✨ add globalDependencies and inputs for .env in turbo.json * 🔄 update globalDependencies and inputs in turbo.json to include all .env files * 🔄 update turbo.json to include all environment files in the env section * 🔄 remove redundant globalDependencies and inputs for .env in turbo.json * 🔄 refactor build scripts in package.json for clarity and consistency --- apps/website/package.json | 16 +- apps/website/src/changelogs/2024-12-06.mdx | 7 + .../src/changelogs/last-changelog-date.ts | 2 +- .../animated-tab-motion-div.tsx | 2 +- .../floating-docks-component.tsx | 4 +- .../navigation/animated-background.tsx | 2 +- ...generated-package-check-list-to-install.ts | 8 +- apps/website/src/ui/button.tsx | 2 +- apps/website/src/ui/navigation-menu.tsx | 2 +- packages/ui/categories-previews-list.ts | 264 +++--- .../advanced-bottom-action-menu.tsx | 2 +- .../custom-tabs-content.tsx | 2 +- .../{action-menu.category.tsx => category.ts} | 2 + .../alert/{alert.category.tsx => category.ts} | 6 +- ...uthentication.category.tsx => category.ts} | 4 +- .../{battery.category.tsx => category.ts} | 4 +- .../code/{code.category.tsx => category.ts} | 2 + .../application-ui/color-picker/category.ts | 2 + .../application-ui/context-menu/category.ts | 1 + ...category.cookie-banner.tsx => category.ts} | 2 + .../application-ui/dropdown-menu/category.ts | 2 + .../kbd/{kbd.category.tsx => category.ts} | 6 +- ...{category.notification.tsx => category.ts} | 2 + .../dynamic-island-notification.tsx | 2 +- .../{search-bars.category.tsx => category.ts} | 4 +- .../{application-ui.section.ts => section.ts} | 34 +- .../{settings.category.tsx => category.ts} | 4 +- .../settings/dynamic-settings/variant1.tsx | 2 +- .../{signature.category.tsx => category.ts} | 2 + .../{sliders.category.tsx => category.ts} | 8 +- .../sliders/elastic-slider/variant1.tsx | 2 +- ...atic-steppers.category.tsx => category.ts} | 4 +- ...e-of-contents.category.tsx => category.ts} | 4 +- .../modul-inspired/following-headers.tsx | 2 +- .../theme/{theme.category.tsx => category.ts} | 4 +- .../tree/{tree.category.tsx => category.ts} | 2 + .../tree/recursive-tree/recursive-tree.tsx | 2 +- .../{avatars.category.tsx => category.ts} | 2 + .../{badges.category.tsx => category.ts} | 10 +- .../{blockquotes.category.tsx => category.ts} | 4 +- .../ui/cuicui/common-ui/buttons/category.ts | 2 + .../component.magnetic-button.tsx | 2 +- ...component.shiny-rotating-border-button.tsx | 2 +- .../shiny-rotating-border-button/debunk.tsx | 2 +- .../cards/{cards.category.tsx => category.ts} | 10 +- .../{checkboxes.category.tsx => category.ts} | 4 +- .../{inputs.category.tsx => category.ts} | 6 +- .../inputs/droppable-file/variant1.tsx | 2 +- .../{loaders.category.tsx => category.ts} | 20 +- .../circular-bars-spinner-loader.preview.tsx | 5 + .../{navigation.category.tsx => category.ts} | 10 +- .../side-menu-smooth-hover/component.ts | 20 + .../side-menu-smooth-hover/preview.tsx | 20 + .../side-menu-smooth-hover.tsx | 41 + .../navigation/vercel-navigation/variant1.tsx | 2 +- .../navigation/vercel-navigation/variant2.tsx | 2 +- .../{common-ui.section.ts => section.ts} | 22 +- .../{skeletons.category.tsx => category.ts} | 8 +- .../{toggle.category.tsx => category.ts} | 2 + packages/ui/cuicui/hooks/hooks.section.ts | 2 + .../preview.use-auto-scroll.tsx | 24 +- .../{category.carousels.tsx => category.ts} | 6 +- .../cylindric-3d-carousel/variant1.tsx | 2 +- .../faq/{category.faq.tsx => category.ts} | 2 + .../{category.features.tsx => category.ts} | 8 +- ...ategory.pricing-tables.tsx => category.ts} | 2 + .../many-offers/preview.artlist-inspired.tsx | 2 +- .../{section.marketing-ui.ts => section.ts} | 14 +- .../animated-counter/animated-counter.tsx | 2 +- .../animated-on-scroll/variant1.tsx | 2 +- .../{category.statistics.tsx => category.ts} | 8 +- .../statistics/increase-to-value/variant1.tsx | 2 +- .../trigger-on-scroll/trigger-on-scroll.tsx | 2 +- ...{category.testimonials.tsx => category.ts} | 8 +- .../testimonials-component/variant1.tsx | 4 +- .../border-trail/border-trail.tsx | 2 +- ...ategory.creative-effet.tsx => category.ts} | 2 + .../{cursor.category.tsx => category.ts} | 2 + ...-ups.category.tsx => mock-ups.category.ts} | 17 +- .../{patterns.category.tsx => category.ts} | 6 +- .../{qr-code.category.ts => category.ts} | 1 + .../other/{other.section.ts => section.ts} | 12 +- .../animated-number/animated-number.tsx | 2 +- .../blur-appear/variant1.tsx | 2 +- ...tion-wrappers.category.tsx => category.ts} | 4 +- .../text-effect-wrapper.tsx | 2 +- .../{section.tools.ts => tools.section.ts} | 2 + .../{category.catch-error.tsx => category.ts} | 4 +- .../utils/cn/{cn.category.tsx => category.ts} | 4 +- .../utils/{utils.section.ts => section.ts} | 8 +- .../sleep/{sleep.category.tsx => category.ts} | 4 +- packages/ui/lib/section-list.ts | 12 +- packages/ui/lib/types/component.d.ts | 27 + packages/ui/package.json | 14 +- ...ies.mjs => generate-preview-categories.ts} | 16 +- packages/ui/scripts/generate-section-list.ts | 362 ++++++++ packages/ui/section-list.ts | 455 ++++++++++ packages/ui/utils/get-code-from-path.ts | 0 pnpm-lock.yaml | 807 ++++++++++-------- turbo.json | 3 + 100 files changed, 1785 insertions(+), 695 deletions(-) create mode 100644 apps/website/src/changelogs/2024-12-06.mdx rename packages/ui/cuicui/application-ui/action-menu/{action-menu.category.tsx => category.ts} (92%) rename packages/ui/cuicui/application-ui/alert/{alert.category.tsx => category.ts} (91%) rename packages/ui/cuicui/application-ui/authentication/{authentication.category.tsx => category.ts} (89%) rename packages/ui/cuicui/application-ui/battery/{battery.category.tsx => category.ts} (91%) rename packages/ui/cuicui/application-ui/code/{code.category.tsx => category.ts} (96%) rename packages/ui/cuicui/application-ui/cookie-banner/{category.cookie-banner.tsx => category.ts} (93%) rename packages/ui/cuicui/application-ui/kbd/{kbd.category.tsx => category.ts} (90%) rename packages/ui/cuicui/application-ui/notification/{category.notification.tsx => category.ts} (93%) rename packages/ui/cuicui/application-ui/search-bars/{search-bars.category.tsx => category.ts} (89%) rename packages/ui/cuicui/application-ui/{application-ui.section.ts => section.ts} (71%) rename packages/ui/cuicui/application-ui/settings/{settings.category.tsx => category.ts} (91%) rename packages/ui/cuicui/application-ui/signature/{signature.category.tsx => category.ts} (93%) rename packages/ui/cuicui/application-ui/sliders/{sliders.category.tsx => category.ts} (89%) rename packages/ui/cuicui/application-ui/static-steppers/{static-steppers.category.tsx => category.ts} (91%) rename packages/ui/cuicui/application-ui/table-of-contents/{table-of-contents.category.tsx => category.ts} (92%) rename packages/ui/cuicui/application-ui/theme/{theme.category.tsx => category.ts} (90%) rename packages/ui/cuicui/application-ui/tree/{tree.category.tsx => category.ts} (93%) rename packages/ui/cuicui/common-ui/avatars/{avatars.category.tsx => category.ts} (91%) rename packages/ui/cuicui/common-ui/badges/{badges.category.tsx => category.ts} (89%) rename packages/ui/cuicui/common-ui/blockquotes/{blockquotes.category.tsx => category.ts} (89%) rename packages/ui/cuicui/common-ui/cards/{cards.category.tsx => category.ts} (91%) rename packages/ui/cuicui/common-ui/checkboxes/{checkboxes.category.tsx => category.ts} (91%) rename packages/ui/cuicui/common-ui/inputs/{inputs.category.tsx => category.ts} (91%) rename packages/ui/cuicui/common-ui/loaders/{loaders.category.tsx => category.ts} (76%) create mode 100644 packages/ui/cuicui/common-ui/loaders/spinner-loader/circular-bars-spinner-loader.preview.tsx rename packages/ui/cuicui/common-ui/navigation/{navigation.category.tsx => category.ts} (82%) create mode 100644 packages/ui/cuicui/common-ui/navigation/side-menu-smooth-hover/component.ts create mode 100644 packages/ui/cuicui/common-ui/navigation/side-menu-smooth-hover/preview.tsx create mode 100644 packages/ui/cuicui/common-ui/navigation/side-menu-smooth-hover/side-menu-smooth-hover.tsx rename packages/ui/cuicui/common-ui/{common-ui.section.ts => section.ts} (62%) rename packages/ui/cuicui/common-ui/skeletons/{skeletons.category.tsx => category.ts} (90%) rename packages/ui/cuicui/common-ui/toggle/{toggle.category.tsx => category.ts} (91%) rename packages/ui/cuicui/marketing-ui/carousels/{category.carousels.tsx => category.ts} (91%) rename packages/ui/cuicui/marketing-ui/faq/{category.faq.tsx => category.ts} (95%) rename packages/ui/cuicui/marketing-ui/features/{category.features.tsx => category.ts} (90%) rename packages/ui/cuicui/marketing-ui/pricing-tables/{category.pricing-tables.tsx => category.ts} (94%) rename packages/ui/cuicui/marketing-ui/{section.marketing-ui.ts => section.ts} (81%) rename packages/ui/cuicui/marketing-ui/statistics/{category.statistics.tsx => category.ts} (92%) rename packages/ui/cuicui/marketing-ui/testimonials/{category.testimonials.tsx => category.ts} (89%) rename packages/ui/cuicui/other/creative-effects/{category.creative-effet.tsx => category.ts} (96%) rename packages/ui/cuicui/other/cursors/{cursor.category.tsx => category.ts} (95%) rename packages/ui/cuicui/other/mock-ups/{mock-ups.category.tsx => mock-ups.category.ts} (90%) rename packages/ui/cuicui/other/patterns/{patterns.category.tsx => category.ts} (94%) rename packages/ui/cuicui/other/qr-code/{qr-code.category.ts => category.ts} (94%) rename packages/ui/cuicui/other/{other.section.ts => section.ts} (70%) rename packages/ui/cuicui/other/transition-wrappers/{transition-wrappers.category.tsx => category.ts} (93%) rename packages/ui/cuicui/tools/{section.tools.ts => tools.section.ts} (97%) rename packages/ui/cuicui/utils/catch-error/{category.catch-error.tsx => category.ts} (90%) rename packages/ui/cuicui/utils/cn/{cn.category.tsx => category.ts} (91%) rename packages/ui/cuicui/utils/{utils.section.ts => section.ts} (73%) rename packages/ui/cuicui/utils/sleep/{sleep.category.tsx => category.ts} (90%) rename packages/ui/scripts/{generate-preview-categories.mjs => generate-preview-categories.ts} (89%) create mode 100644 packages/ui/scripts/generate-section-list.ts create mode 100644 packages/ui/section-list.ts create mode 100644 packages/ui/utils/get-code-from-path.ts diff --git a/apps/website/package.json b/apps/website/package.json index 2274b384..cdd0f284 100644 --- a/apps/website/package.json +++ b/apps/website/package.json @@ -14,13 +14,13 @@ "@radix-ui/react-slot": "1.1.0", "@radix-ui/react-tabs": "1.1.0", "class-variance-authority": "0.7.0", - "clsx": "2.1.0", - "cmdk": "1.0.0", - "date-fns": "3.6.0", + "clsx": "^2.x", + "cmdk": "^1.x", + "date-fns": "^3.x", "dom-to-image-more": "3.4.5", - "framer-motion": "11.2.10", "fs-extra": "11.2.0", - "lucide-react": "0.427.0", + "lucide-react": "^0.x", + "motion": "^11.x", "next": "14.2.3", "next-mdx-remote": "5.0.0", "next-themes": "0.3.0", @@ -30,10 +30,10 @@ "react-frame-component": "5.2.7", "react-resizable-panels": "2.0.22", "sharp": "0.33.4", - "sonner": "1.5.0", + "sonner": "^1.x", "tailwind-merge": "2.3.0", "vite-tsconfig-paths": "5.0.1", - "zustand": "4.5.4" + "zustand": "^4.x" }, "description": "An open-source all-in-one library for building an advanced SaaS application, a personal website, or anything else with micro-interactions, advanced user experiences, and a focus on performance and code quality.", "devDependencies": { @@ -91,4 +91,4 @@ "type-check": "tsc --noEmit" }, "version": "0.1.2" -} +} \ No newline at end of file diff --git a/apps/website/src/changelogs/2024-12-06.mdx b/apps/website/src/changelogs/2024-12-06.mdx new file mode 100644 index 00000000..4eba23bc --- /dev/null +++ b/apps/website/src/changelogs/2024-12-06.mdx @@ -0,0 +1,7 @@ +--- +title: Sidemenu with smooth hover effect +--- + +#### New component + +- A new component has been added to the website: the `Sidemenu smooth hover` component in the navigation category. \ No newline at end of file diff --git a/apps/website/src/changelogs/last-changelog-date.ts b/apps/website/src/changelogs/last-changelog-date.ts index 6dfe4cac..9d5292d2 100644 --- a/apps/website/src/changelogs/last-changelog-date.ts +++ b/apps/website/src/changelogs/last-changelog-date.ts @@ -1,2 +1,2 @@ // This file is generated by the generate-latest-changelog-date script -export const lastChangelogDate = new Date("2024-11-27T23:00:00.000Z"); +export const lastChangelogDate = new Date("2024-12-05T23:00:00.000Z"); diff --git a/apps/website/src/components/component-wrapper/animated-tab-motion-div.tsx b/apps/website/src/components/component-wrapper/animated-tab-motion-div.tsx index 9ad11ae9..f9750f16 100644 --- a/apps/website/src/components/component-wrapper/animated-tab-motion-div.tsx +++ b/apps/website/src/components/component-wrapper/animated-tab-motion-div.tsx @@ -1,5 +1,5 @@ "use client"; -import { type MotionProps, motion } from "framer-motion"; +import { type MotionProps, motion } from "motion/react"; import type React from "react"; import { cn } from "#/src/utils/cn"; export default function AnimatedTabMotionDiv({ diff --git a/apps/website/src/components/floating-dock-navigation/floating-docks-component.tsx b/apps/website/src/components/floating-dock-navigation/floating-docks-component.tsx index 25080ce5..a9a1d44d 100644 --- a/apps/website/src/components/floating-dock-navigation/floating-docks-component.tsx +++ b/apps/website/src/components/floating-dock-navigation/floating-docks-component.tsx @@ -9,8 +9,8 @@ import { useMotionValue, useSpring, useTransform, -} from "framer-motion"; -import { ListCollapseIcon, type LucideIcon } from "lucide-react"; +} from "motion/react"; +import { ListCollapseIcon } from "lucide-react"; import Link from "next/link"; import { usePathname } from "next/navigation"; import { type ReactNode, useEffect, useRef, useState } from "react"; diff --git a/apps/website/src/components/navigation/animated-background.tsx b/apps/website/src/components/navigation/animated-background.tsx index f12cf3bd..4ee0b77e 100644 --- a/apps/website/src/components/navigation/animated-background.tsx +++ b/apps/website/src/components/navigation/animated-background.tsx @@ -1,6 +1,6 @@ "use client"; -import { AnimatePresence, type Transition, motion } from "framer-motion"; +import { AnimatePresence, type Transition, motion } from "motion/react"; import { Children, type ReactElement, diff --git a/apps/website/src/lib/generated-package-check-list-to-install.ts b/apps/website/src/lib/generated-package-check-list-to-install.ts index 22d4624f..35b65adf 100644 --- a/apps/website/src/lib/generated-package-check-list-to-install.ts +++ b/apps/website/src/lib/generated-package-check-list-to-install.ts @@ -51,10 +51,6 @@ export const packageCheckListToInstall: PackageToInstallType[] = [ find: [`from "dom-to-image-more"`], packageName: "dom-to-image-more", }, - { - find: [`from "framer-motion"`], - packageName: "framer-motion", - }, { find: [`from "fs-extra"`], packageName: "fs-extra", @@ -63,6 +59,10 @@ export const packageCheckListToInstall: PackageToInstallType[] = [ find: [`from "lucide-react"`], packageName: "lucide-react", }, + { + find: [`from "motion"`], + packageName: "motion", + }, { find: [`from "next"`], packageName: "next", diff --git a/apps/website/src/ui/button.tsx b/apps/website/src/ui/button.tsx index 4bfd34c1..79c64d39 100644 --- a/apps/website/src/ui/button.tsx +++ b/apps/website/src/ui/button.tsx @@ -1,5 +1,5 @@ import { type VariantProps, cva } from "class-variance-authority"; -import { type HTMLMotionProps, motion } from "framer-motion"; +import { type HTMLMotionProps, motion } from "motion/react"; import type React from "react"; import { cn } from "../utils/cn"; import GradientContainer from "./gradient-container"; diff --git a/apps/website/src/ui/navigation-menu.tsx b/apps/website/src/ui/navigation-menu.tsx index a8d4653c..fdfdc10e 100644 --- a/apps/website/src/ui/navigation-menu.tsx +++ b/apps/website/src/ui/navigation-menu.tsx @@ -1,5 +1,5 @@ "use client"; -import { AnimatePresence, motion } from "framer-motion"; +import { AnimatePresence, motion } from "motion/react"; import type React from "react"; import { type ButtonHTMLAttributes, diff --git a/packages/ui/categories-previews-list.ts b/packages/ui/categories-previews-list.ts index 1b8a40f1..a922da83 100644 --- a/packages/ui/categories-previews-list.ts +++ b/packages/ui/categories-previews-list.ts @@ -1,159 +1,159 @@ -import application_ui_action_menu_preview from './cuicui/application-ui/action-menu/preview'; -import application_ui_alert_preview from './cuicui/application-ui/alert/preview'; -import application_ui_authentication_preview from './cuicui/application-ui/authentication/preview'; -import application_ui_battery_preview from './cuicui/application-ui/battery/preview'; -import application_ui_code_preview from './cuicui/application-ui/code/preview'; -import application_ui_color_picker_preview from './cuicui/application-ui/color-picker/preview'; -import application_ui_context_menu_preview from './cuicui/application-ui/context-menu/preview'; -import application_ui_cookie_banner_preview from './cuicui/application-ui/cookie-banner/preview'; -import application_ui_dropdown_menu_preview from './cuicui/application-ui/dropdown-menu/preview'; -import application_ui_kbd_preview from './cuicui/application-ui/kbd/preview'; -import application_ui_notification_preview from './cuicui/application-ui/notification/preview'; -import application_ui_search_bars_preview from './cuicui/application-ui/search-bars/preview'; -import application_ui_settings_preview from './cuicui/application-ui/settings/preview'; -import application_ui_signature_preview from './cuicui/application-ui/signature/preview'; -import application_ui_sliders_preview from './cuicui/application-ui/sliders/preview'; -import application_ui_static_steppers_preview from './cuicui/application-ui/static-steppers/preview'; -import application_ui_table_of_contents_preview from './cuicui/application-ui/table-of-contents/preview'; -import application_ui_theme_preview from './cuicui/application-ui/theme/preview'; -import application_ui_tree_preview from './cuicui/application-ui/tree/preview'; -import common_ui_avatars_preview from './cuicui/common-ui/avatars/preview'; -import common_ui_badges_preview from './cuicui/common-ui/badges/preview'; -import common_ui_blockquotes_preview from './cuicui/common-ui/blockquotes/preview'; -import common_ui_buttons_preview from './cuicui/common-ui/buttons/preview'; -import common_ui_cards_preview from './cuicui/common-ui/cards/preview'; -import common_ui_checkboxes_preview from './cuicui/common-ui/checkboxes/preview'; -import common_ui_inputs_preview from './cuicui/common-ui/inputs/preview'; -import common_ui_loaders_preview from './cuicui/common-ui/loaders/preview'; -import common_ui_navigation_preview from './cuicui/common-ui/navigation/preview'; -import common_ui_skeletons_preview from './cuicui/common-ui/skeletons/preview'; -import common_ui_toggle_preview from './cuicui/common-ui/toggle/preview'; +import other_creative_effects_preview from './cuicui/other/creative-effects/preview'; +import other_mock_ups_preview from './cuicui/other/mock-ups/preview'; +import other_patterns_preview from './cuicui/other/patterns/preview'; +import other_qr_code_preview from './cuicui/other/qr-code/preview'; +import other_transition_wrappers_preview from './cuicui/other/transition-wrappers/preview'; +import other_cursors_preview from './cuicui/other/cursors/preview'; +import utils_catch_error_preview from './cuicui/utils/catch-error/preview'; +import utils_sleep_preview from './cuicui/utils/sleep/preview'; +import utils_cn_preview from './cuicui/utils/cn/preview'; +import marketing_ui_statistics_preview from './cuicui/marketing-ui/statistics/preview'; +import marketing_ui_footer_preview from './cuicui/marketing-ui/footer/preview'; +import marketing_ui_carousels_preview from './cuicui/marketing-ui/carousels/preview'; +import marketing_ui_testimonials_preview from './cuicui/marketing-ui/testimonials/preview'; +import marketing_ui_faq_preview from './cuicui/marketing-ui/faq/preview'; +import marketing_ui_features_preview from './cuicui/marketing-ui/features/preview'; +import marketing_ui_pricing_tables_preview from './cuicui/marketing-ui/pricing-tables/preview'; +import hooks_use_throttle_preview from './cuicui/hooks/use-throttle/preview'; import hooks_use_auto_scroll_preview from './cuicui/hooks/use-auto-scroll/preview'; import hooks_use_battery_preview from './cuicui/hooks/use-battery/preview'; -import hooks_use_click_outside_preview from './cuicui/hooks/use-click-outside/preview'; -import hooks_use_copy_to_clipboard_preview from './cuicui/hooks/use-copy-to-clipboard/preview'; import hooks_use_counter_preview from './cuicui/hooks/use-counter/preview'; -import hooks_use_debounce_preview from './cuicui/hooks/use-debounce/preview'; -import hooks_use_event_callback_preview from './cuicui/hooks/use-event-callback/preview'; import hooks_use_event_listener_preview from './cuicui/hooks/use-event-listener/preview'; -import hooks_use_first_visit_preview from './cuicui/hooks/use-first-visit/preview'; -import hooks_use_geolocation_preview from './cuicui/hooks/use-geolocation/preview'; -import hooks_use_in_view_preview from './cuicui/hooks/use-in-view/preview'; -import hooks_use_input_value_preview from './cuicui/hooks/use-input-value/preview'; -import hooks_use_isomorphic_layout_effect_preview from './cuicui/hooks/use-isomorphic-layout-effect/preview'; +import hooks_use_speech_to_text_preview from './cuicui/hooks/use-speech-to-text/preview'; +import hooks_use_online_status_preview from './cuicui/hooks/use-online-status/preview'; +import hooks_use_session_storage_preview from './cuicui/hooks/use-session-storage/preview'; +import hooks_use_text_to_speech_preview from './cuicui/hooks/use-text-to-speech/preview'; import hooks_use_key_press_preview from './cuicui/hooks/use-key-press/preview'; import hooks_use_konami_code_preview from './cuicui/hooks/use-konami-code/preview'; -import hooks_use_local_storage_preview from './cuicui/hooks/use-local-storage/preview'; -import hooks_use_location_preview from './cuicui/hooks/use-location/preview'; +import hooks_use_stopwatch_preview from './cuicui/hooks/use-stopwatch/preview'; +import hooks_use_click_outside_preview from './cuicui/hooks/use-click-outside/preview'; +import hooks_use_first_visit_preview from './cuicui/hooks/use-first-visit/preview'; import hooks_use_measure_preview from './cuicui/hooks/use-measure/preview'; +import hooks_use_isomorphic_layout_effect_preview from './cuicui/hooks/use-isomorphic-layout-effect/preview'; import hooks_use_mouse_preview from './cuicui/hooks/use-mouse/preview'; +import hooks_use_location_preview from './cuicui/hooks/use-location/preview'; +import hooks_use_in_view_preview from './cuicui/hooks/use-in-view/preview'; +import hooks_use_debounce_preview from './cuicui/hooks/use-debounce/preview'; +import hooks_use_window_scroll_position_preview from './cuicui/hooks/use-window-scroll-position/preview'; import hooks_use_network_status_preview from './cuicui/hooks/use-network-status/preview'; -import hooks_use_online_status_preview from './cuicui/hooks/use-online-status/preview'; -import hooks_use_rerender_preview from './cuicui/hooks/use-rerender/preview'; -import hooks_use_session_storage_preview from './cuicui/hooks/use-session-storage/preview'; -import hooks_use_speech_to_text_preview from './cuicui/hooks/use-speech-to-text/preview'; +import hooks_use_window_size_preview from './cuicui/hooks/use-window-size/preview'; +import hooks_use_input_value_preview from './cuicui/hooks/use-input-value/preview'; +import hooks_use_local_storage_preview from './cuicui/hooks/use-local-storage/preview'; import hooks_use_step_preview from './cuicui/hooks/use-step/preview'; -import hooks_use_stopwatch_preview from './cuicui/hooks/use-stopwatch/preview'; -import hooks_use_text_to_speech_preview from './cuicui/hooks/use-text-to-speech/preview'; -import hooks_use_throttle_preview from './cuicui/hooks/use-throttle/preview'; +import hooks_use_geolocation_preview from './cuicui/hooks/use-geolocation/preview'; +import hooks_use_copy_to_clipboard_preview from './cuicui/hooks/use-copy-to-clipboard/preview'; +import hooks_use_rerender_preview from './cuicui/hooks/use-rerender/preview'; import hooks_use_video_preview from './cuicui/hooks/use-video/preview'; -import hooks_use_window_scroll_position_preview from './cuicui/hooks/use-window-scroll-position/preview'; -import hooks_use_window_size_preview from './cuicui/hooks/use-window-size/preview'; -import marketing_ui_carousels_preview from './cuicui/marketing-ui/carousels/preview'; -import marketing_ui_faq_preview from './cuicui/marketing-ui/faq/preview'; -import marketing_ui_features_preview from './cuicui/marketing-ui/features/preview'; -import marketing_ui_footer_preview from './cuicui/marketing-ui/footer/preview'; -import marketing_ui_pricing_tables_preview from './cuicui/marketing-ui/pricing-tables/preview'; -import marketing_ui_statistics_preview from './cuicui/marketing-ui/statistics/preview'; -import marketing_ui_testimonials_preview from './cuicui/marketing-ui/testimonials/preview'; -import other_creative_effects_preview from './cuicui/other/creative-effects/preview'; -import other_cursors_preview from './cuicui/other/cursors/preview'; -import other_mock_ups_preview from './cuicui/other/mock-ups/preview'; -import other_patterns_preview from './cuicui/other/patterns/preview'; -import other_qr_code_preview from './cuicui/other/qr-code/preview'; -import other_transition_wrappers_preview from './cuicui/other/transition-wrappers/preview'; -import utils_catch_error_preview from './cuicui/utils/catch-error/preview'; -import utils_cn_preview from './cuicui/utils/cn/preview'; -import utils_sleep_preview from './cuicui/utils/sleep/preview'; +import hooks_use_event_callback_preview from './cuicui/hooks/use-event-callback/preview'; +import common_ui_blockquotes_preview from './cuicui/common-ui/blockquotes/preview'; +import common_ui_buttons_preview from './cuicui/common-ui/buttons/preview'; +import common_ui_cards_preview from './cuicui/common-ui/cards/preview'; +import common_ui_navigation_preview from './cuicui/common-ui/navigation/preview'; +import common_ui_toggle_preview from './cuicui/common-ui/toggle/preview'; +import common_ui_checkboxes_preview from './cuicui/common-ui/checkboxes/preview'; +import common_ui_skeletons_preview from './cuicui/common-ui/skeletons/preview'; +import common_ui_avatars_preview from './cuicui/common-ui/avatars/preview'; +import common_ui_loaders_preview from './cuicui/common-ui/loaders/preview'; +import common_ui_badges_preview from './cuicui/common-ui/badges/preview'; +import common_ui_inputs_preview from './cuicui/common-ui/inputs/preview'; +import application_ui_kbd_preview from './cuicui/application-ui/kbd/preview'; +import application_ui_tree_preview from './cuicui/application-ui/tree/preview'; +import application_ui_settings_preview from './cuicui/application-ui/settings/preview'; +import application_ui_action_menu_preview from './cuicui/application-ui/action-menu/preview'; +import application_ui_static_steppers_preview from './cuicui/application-ui/static-steppers/preview'; +import application_ui_signature_preview from './cuicui/application-ui/signature/preview'; +import application_ui_search_bars_preview from './cuicui/application-ui/search-bars/preview'; +import application_ui_cookie_banner_preview from './cuicui/application-ui/cookie-banner/preview'; +import application_ui_notification_preview from './cuicui/application-ui/notification/preview'; +import application_ui_alert_preview from './cuicui/application-ui/alert/preview'; +import application_ui_code_preview from './cuicui/application-ui/code/preview'; +import application_ui_dropdown_menu_preview from './cuicui/application-ui/dropdown-menu/preview'; +import application_ui_context_menu_preview from './cuicui/application-ui/context-menu/preview'; +import application_ui_table_of_contents_preview from './cuicui/application-ui/table-of-contents/preview'; +import application_ui_theme_preview from './cuicui/application-ui/theme/preview'; +import application_ui_battery_preview from './cuicui/application-ui/battery/preview'; +import application_ui_color_picker_preview from './cuicui/application-ui/color-picker/preview'; +import application_ui_sliders_preview from './cuicui/application-ui/sliders/preview'; +import application_ui_authentication_preview from './cuicui/application-ui/authentication/preview'; export const categoriesPreviewsList = { - 'action-menu': application_ui_action_menu_preview, - 'alert': application_ui_alert_preview, - 'authentication': application_ui_authentication_preview, - 'battery': application_ui_battery_preview, - 'code': application_ui_code_preview, - 'color-picker': application_ui_color_picker_preview, - 'context-menu': application_ui_context_menu_preview, - 'cookie-banner': application_ui_cookie_banner_preview, - 'dropdown-menu': application_ui_dropdown_menu_preview, - 'kbd': application_ui_kbd_preview, - 'notification': application_ui_notification_preview, - 'search-bars': application_ui_search_bars_preview, - 'settings': application_ui_settings_preview, - 'signature': application_ui_signature_preview, - 'sliders': application_ui_sliders_preview, - 'static-steppers': application_ui_static_steppers_preview, - 'table-of-contents': application_ui_table_of_contents_preview, - 'theme': application_ui_theme_preview, - 'tree': application_ui_tree_preview, - 'avatars': common_ui_avatars_preview, - 'badges': common_ui_badges_preview, - 'blockquotes': common_ui_blockquotes_preview, - 'buttons': common_ui_buttons_preview, - 'cards': common_ui_cards_preview, - 'checkboxes': common_ui_checkboxes_preview, - 'inputs': common_ui_inputs_preview, - 'loaders': common_ui_loaders_preview, - 'navigation': common_ui_navigation_preview, - 'skeletons': common_ui_skeletons_preview, - 'toggle': common_ui_toggle_preview, + 'creative-effects': other_creative_effects_preview, + 'mock-ups': other_mock_ups_preview, + 'patterns': other_patterns_preview, + 'qr-code': other_qr_code_preview, + 'transition-wrappers': other_transition_wrappers_preview, + 'cursors': other_cursors_preview, + 'catch-error': utils_catch_error_preview, + 'sleep': utils_sleep_preview, + 'cn': utils_cn_preview, + 'statistics': marketing_ui_statistics_preview, + 'footer': marketing_ui_footer_preview, + 'carousels': marketing_ui_carousels_preview, + 'testimonials': marketing_ui_testimonials_preview, + 'faq': marketing_ui_faq_preview, + 'features': marketing_ui_features_preview, + 'pricing-tables': marketing_ui_pricing_tables_preview, + 'use-throttle': hooks_use_throttle_preview, 'use-auto-scroll': hooks_use_auto_scroll_preview, 'use-battery': hooks_use_battery_preview, - 'use-click-outside': hooks_use_click_outside_preview, - 'use-copy-to-clipboard': hooks_use_copy_to_clipboard_preview, 'use-counter': hooks_use_counter_preview, - 'use-debounce': hooks_use_debounce_preview, - 'use-event-callback': hooks_use_event_callback_preview, 'use-event-listener': hooks_use_event_listener_preview, - 'use-first-visit': hooks_use_first_visit_preview, - 'use-geolocation': hooks_use_geolocation_preview, - 'use-in-view': hooks_use_in_view_preview, - 'use-input-value': hooks_use_input_value_preview, - 'use-isomorphic-layout-effect': hooks_use_isomorphic_layout_effect_preview, + 'use-speech-to-text': hooks_use_speech_to_text_preview, + 'use-online-status': hooks_use_online_status_preview, + 'use-session-storage': hooks_use_session_storage_preview, + 'use-text-to-speech': hooks_use_text_to_speech_preview, 'use-key-press': hooks_use_key_press_preview, 'use-konami-code': hooks_use_konami_code_preview, - 'use-local-storage': hooks_use_local_storage_preview, - 'use-location': hooks_use_location_preview, + 'use-stopwatch': hooks_use_stopwatch_preview, + 'use-click-outside': hooks_use_click_outside_preview, + 'use-first-visit': hooks_use_first_visit_preview, 'use-measure': hooks_use_measure_preview, + 'use-isomorphic-layout-effect': hooks_use_isomorphic_layout_effect_preview, 'use-mouse': hooks_use_mouse_preview, + 'use-location': hooks_use_location_preview, + 'use-in-view': hooks_use_in_view_preview, + 'use-debounce': hooks_use_debounce_preview, + 'use-window-scroll-position': hooks_use_window_scroll_position_preview, 'use-network-status': hooks_use_network_status_preview, - 'use-online-status': hooks_use_online_status_preview, - 'use-rerender': hooks_use_rerender_preview, - 'use-session-storage': hooks_use_session_storage_preview, - 'use-speech-to-text': hooks_use_speech_to_text_preview, + 'use-window-size': hooks_use_window_size_preview, + 'use-input-value': hooks_use_input_value_preview, + 'use-local-storage': hooks_use_local_storage_preview, 'use-step': hooks_use_step_preview, - 'use-stopwatch': hooks_use_stopwatch_preview, - 'use-text-to-speech': hooks_use_text_to_speech_preview, - 'use-throttle': hooks_use_throttle_preview, + 'use-geolocation': hooks_use_geolocation_preview, + 'use-copy-to-clipboard': hooks_use_copy_to_clipboard_preview, + 'use-rerender': hooks_use_rerender_preview, 'use-video': hooks_use_video_preview, - 'use-window-scroll-position': hooks_use_window_scroll_position_preview, - 'use-window-size': hooks_use_window_size_preview, - 'carousels': marketing_ui_carousels_preview, - 'faq': marketing_ui_faq_preview, - 'features': marketing_ui_features_preview, - 'footer': marketing_ui_footer_preview, - 'pricing-tables': marketing_ui_pricing_tables_preview, - 'statistics': marketing_ui_statistics_preview, - 'testimonials': marketing_ui_testimonials_preview, - 'creative-effects': other_creative_effects_preview, - 'cursors': other_cursors_preview, - 'mock-ups': other_mock_ups_preview, - 'patterns': other_patterns_preview, - 'qr-code': other_qr_code_preview, - 'transition-wrappers': other_transition_wrappers_preview, - 'catch-error': utils_catch_error_preview, - 'cn': utils_cn_preview, - 'sleep': utils_sleep_preview, + 'use-event-callback': hooks_use_event_callback_preview, + 'blockquotes': common_ui_blockquotes_preview, + 'buttons': common_ui_buttons_preview, + 'cards': common_ui_cards_preview, + 'navigation': common_ui_navigation_preview, + 'toggle': common_ui_toggle_preview, + 'checkboxes': common_ui_checkboxes_preview, + 'skeletons': common_ui_skeletons_preview, + 'avatars': common_ui_avatars_preview, + 'loaders': common_ui_loaders_preview, + 'badges': common_ui_badges_preview, + 'inputs': common_ui_inputs_preview, + 'kbd': application_ui_kbd_preview, + 'tree': application_ui_tree_preview, + 'settings': application_ui_settings_preview, + 'action-menu': application_ui_action_menu_preview, + 'static-steppers': application_ui_static_steppers_preview, + 'signature': application_ui_signature_preview, + 'search-bars': application_ui_search_bars_preview, + 'cookie-banner': application_ui_cookie_banner_preview, + 'notification': application_ui_notification_preview, + 'alert': application_ui_alert_preview, + 'code': application_ui_code_preview, + 'dropdown-menu': application_ui_dropdown_menu_preview, + 'context-menu': application_ui_context_menu_preview, + 'table-of-contents': application_ui_table_of_contents_preview, + 'theme': application_ui_theme_preview, + 'battery': application_ui_battery_preview, + 'color-picker': application_ui_color_picker_preview, + 'sliders': application_ui_sliders_preview, + 'authentication': application_ui_authentication_preview, }; diff --git a/packages/ui/cuicui/application-ui/action-menu/advanced-bottom-action-menu/advanced-bottom-action-menu.tsx b/packages/ui/cuicui/application-ui/action-menu/advanced-bottom-action-menu/advanced-bottom-action-menu.tsx index c6e0efdd..31b24cb4 100644 --- a/packages/ui/cuicui/application-ui/action-menu/advanced-bottom-action-menu/advanced-bottom-action-menu.tsx +++ b/packages/ui/cuicui/application-ui/action-menu/advanced-bottom-action-menu/advanced-bottom-action-menu.tsx @@ -2,7 +2,7 @@ "use client"; -import { AnimatePresence, type Variants, motion } from "framer-motion"; +import { AnimatePresence, type Variants, motion } from "motion/react"; import type React from "react"; import { createContext, useContext, useState } from "react"; diff --git a/packages/ui/cuicui/application-ui/action-menu/advanced-bottom-action-menu/custom-tabs-content.tsx b/packages/ui/cuicui/application-ui/action-menu/advanced-bottom-action-menu/custom-tabs-content.tsx index 7fa321be..5112552c 100644 --- a/packages/ui/cuicui/application-ui/action-menu/advanced-bottom-action-menu/custom-tabs-content.tsx +++ b/packages/ui/cuicui/application-ui/action-menu/advanced-bottom-action-menu/custom-tabs-content.tsx @@ -2,7 +2,7 @@ // biome-ignore lint/style/noNamespaceImport: import * as TabsPrimitive from "@radix-ui/react-tabs"; -import { AnimatePresence, motion } from "framer-motion"; +import { AnimatePresence, motion } from "motion/react"; import { type ComponentPropsWithoutRef, diff --git a/packages/ui/cuicui/application-ui/action-menu/action-menu.category.tsx b/packages/ui/cuicui/application-ui/action-menu/category.ts similarity index 92% rename from packages/ui/cuicui/application-ui/action-menu/action-menu.category.tsx rename to packages/ui/cuicui/application-ui/action-menu/category.ts index ade0e5e4..105d50bb 100644 --- a/packages/ui/cuicui/application-ui/action-menu/action-menu.category.tsx +++ b/packages/ui/cuicui/application-ui/action-menu/category.ts @@ -11,3 +11,5 @@ export const actionMenuCategory: CategoryType = { componentList: null, // componentList: [advancedBottomActionMenuComponent], }; + +export default actionMenuCategory; diff --git a/packages/ui/cuicui/application-ui/alert/alert.category.tsx b/packages/ui/cuicui/application-ui/alert/category.ts similarity index 91% rename from packages/ui/cuicui/application-ui/alert/alert.category.tsx rename to packages/ui/cuicui/application-ui/alert/category.ts index 978974f4..57405f1e 100644 --- a/packages/ui/cuicui/application-ui/alert/alert.category.tsx +++ b/packages/ui/cuicui/application-ui/alert/category.ts @@ -18,7 +18,7 @@ export const alertCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: SimpleAlert, slugPreviewFile: "simple-alert", }, ], @@ -32,7 +32,7 @@ export const alertCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: PreviewModernGlassyAlert, slugPreviewFile: "preview-modern-glassy-alert", slugComponentFile: "modern-glassy-alert", }, @@ -42,3 +42,5 @@ export const alertCategory: CategoryType = { }, ], }; + +export default alertCategory; diff --git a/packages/ui/cuicui/application-ui/authentication/authentication.category.tsx b/packages/ui/cuicui/application-ui/authentication/category.ts similarity index 89% rename from packages/ui/cuicui/application-ui/authentication/authentication.category.tsx rename to packages/ui/cuicui/application-ui/authentication/category.ts index 912e65c5..0f3b6739 100644 --- a/packages/ui/cuicui/application-ui/authentication/authentication.category.tsx +++ b/packages/ui/cuicui/application-ui/authentication/category.ts @@ -15,7 +15,7 @@ export const authenticationCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: HalfSidedGlassMorphismAuthentication, slugPreviewFile: "variant1", }, ], @@ -24,3 +24,5 @@ export const authenticationCategory: CategoryType = { }, ], }; + +export default authenticationCategory; diff --git a/packages/ui/cuicui/application-ui/battery/battery.category.tsx b/packages/ui/cuicui/application-ui/battery/category.ts similarity index 91% rename from packages/ui/cuicui/application-ui/battery/battery.category.tsx rename to packages/ui/cuicui/application-ui/battery/category.ts index 26826d02..4c7c032d 100644 --- a/packages/ui/cuicui/application-ui/battery/battery.category.tsx +++ b/packages/ui/cuicui/application-ui/battery/category.ts @@ -15,7 +15,7 @@ export const batteryCategory: CategoryType = { variantList: [ { name: "Battery Indicator", - component: , + component: PreviewBatteryIndicator, slugPreviewFile: "preview-battery-indicator", slugComponentFile: "battery-indicator", }, @@ -25,3 +25,5 @@ export const batteryCategory: CategoryType = { }, ], }; + +export default batteryCategory; diff --git a/packages/ui/cuicui/application-ui/code/code.category.tsx b/packages/ui/cuicui/application-ui/code/category.ts similarity index 96% rename from packages/ui/cuicui/application-ui/code/code.category.tsx rename to packages/ui/cuicui/application-ui/code/category.ts index e1b70bee..ac436fd5 100644 --- a/packages/ui/cuicui/application-ui/code/code.category.tsx +++ b/packages/ui/cuicui/application-ui/code/category.ts @@ -18,3 +18,5 @@ export const codeCategory: CategoryType = { advancedCodeBlockComponent, ], }; + +export default codeCategory; diff --git a/packages/ui/cuicui/application-ui/color-picker/category.ts b/packages/ui/cuicui/application-ui/color-picker/category.ts index 67516aff..c2ad0545 100644 --- a/packages/ui/cuicui/application-ui/color-picker/category.ts +++ b/packages/ui/cuicui/application-ui/color-picker/category.ts @@ -10,3 +10,5 @@ export const colorPickerCategory: CategoryType = { releaseDateCategory: new Date("2021-11-28"), componentList: [arcColorPickerComponent], }; + +export default colorPickerCategory; diff --git a/packages/ui/cuicui/application-ui/context-menu/category.ts b/packages/ui/cuicui/application-ui/context-menu/category.ts index e34b3ae5..cc1fb1b5 100644 --- a/packages/ui/cuicui/application-ui/context-menu/category.ts +++ b/packages/ui/cuicui/application-ui/context-menu/category.ts @@ -10,3 +10,4 @@ export const contextMenuCategory: CategoryType = { icon: SquareMenuIcon, componentList: [macOsContextMenuComponent], }; +export default contextMenuCategory; diff --git a/packages/ui/cuicui/application-ui/cookie-banner/category.cookie-banner.tsx b/packages/ui/cuicui/application-ui/cookie-banner/category.ts similarity index 93% rename from packages/ui/cuicui/application-ui/cookie-banner/category.cookie-banner.tsx rename to packages/ui/cuicui/application-ui/cookie-banner/category.ts index a72bf72e..9ea96ad5 100644 --- a/packages/ui/cuicui/application-ui/cookie-banner/category.cookie-banner.tsx +++ b/packages/ui/cuicui/application-ui/cookie-banner/category.ts @@ -11,3 +11,5 @@ export const cookieBannerCategory: CategoryType = { comingSoonCategory: false, componentList: [simpleCookieBannerComponent], }; + +export default cookieBannerCategory; diff --git a/packages/ui/cuicui/application-ui/dropdown-menu/category.ts b/packages/ui/cuicui/application-ui/dropdown-menu/category.ts index dbf30b1b..67000ad9 100644 --- a/packages/ui/cuicui/application-ui/dropdown-menu/category.ts +++ b/packages/ui/cuicui/application-ui/dropdown-menu/category.ts @@ -10,3 +10,5 @@ export const dropdownMenuCategory: CategoryType = { icon: PanelTopOpenIcon, componentList: [macOsDropdownComponent], }; + +export default dropdownMenuCategory; diff --git a/packages/ui/cuicui/application-ui/kbd/kbd.category.tsx b/packages/ui/cuicui/application-ui/kbd/category.ts similarity index 90% rename from packages/ui/cuicui/application-ui/kbd/kbd.category.tsx rename to packages/ui/cuicui/application-ui/kbd/category.ts index 92f757bd..c5a0f54e 100644 --- a/packages/ui/cuicui/application-ui/kbd/kbd.category.tsx +++ b/packages/ui/cuicui/application-ui/kbd/category.ts @@ -16,7 +16,7 @@ export const kbdCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: ModernDetailedKbdVariant1, slugPreviewFile: "variant1", }, ], @@ -30,7 +30,7 @@ export const kbdCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: Modern3dKbdVariant1, slugPreviewFile: "variant1", }, ], @@ -39,3 +39,5 @@ export const kbdCategory: CategoryType = { }, ], }; + +export default kbdCategory; diff --git a/packages/ui/cuicui/application-ui/notification/category.notification.tsx b/packages/ui/cuicui/application-ui/notification/category.ts similarity index 93% rename from packages/ui/cuicui/application-ui/notification/category.notification.tsx rename to packages/ui/cuicui/application-ui/notification/category.ts index e6225511..1d51177a 100644 --- a/packages/ui/cuicui/application-ui/notification/category.notification.tsx +++ b/packages/ui/cuicui/application-ui/notification/category.ts @@ -10,3 +10,5 @@ export const notificationCategory: CategoryType = { icon: BellDotIcon, componentList: [dynamicIslandNotificationComponent], }; + +export default notificationCategory; diff --git a/packages/ui/cuicui/application-ui/notification/dynamic-island-notification/dynamic-island-notification.tsx b/packages/ui/cuicui/application-ui/notification/dynamic-island-notification/dynamic-island-notification.tsx index a5041df8..e429f59c 100644 --- a/packages/ui/cuicui/application-ui/notification/dynamic-island-notification/dynamic-island-notification.tsx +++ b/packages/ui/cuicui/application-ui/notification/dynamic-island-notification/dynamic-island-notification.tsx @@ -1,5 +1,5 @@ "use client"; -import { motion, AnimatePresence } from "framer-motion"; +import { motion, AnimatePresence } from "motion/react"; import { BellIcon } from "lucide-react"; import { useState } from "react"; diff --git a/packages/ui/cuicui/application-ui/search-bars/search-bars.category.tsx b/packages/ui/cuicui/application-ui/search-bars/category.ts similarity index 89% rename from packages/ui/cuicui/application-ui/search-bars/search-bars.category.tsx rename to packages/ui/cuicui/application-ui/search-bars/category.ts index 6b93cb90..5e229094 100644 --- a/packages/ui/cuicui/application-ui/search-bars/search-bars.category.tsx +++ b/packages/ui/cuicui/application-ui/search-bars/category.ts @@ -15,7 +15,7 @@ export const searchBarsCategory: CategoryType = { variantList: [ { name: "With press effect", - component: , + component: GrowingSearchVariant1, slugPreviewFile: "variant1", }, ], @@ -24,3 +24,5 @@ export const searchBarsCategory: CategoryType = { }, ], }; + +export default searchBarsCategory; diff --git a/packages/ui/cuicui/application-ui/application-ui.section.ts b/packages/ui/cuicui/application-ui/section.ts similarity index 71% rename from packages/ui/cuicui/application-ui/application-ui.section.ts rename to packages/ui/cuicui/application-ui/section.ts index 41cbfe63..6bea0d87 100644 --- a/packages/ui/cuicui/application-ui/application-ui.section.ts +++ b/packages/ui/cuicui/application-ui/section.ts @@ -1,22 +1,22 @@ import { AppWindowMacIcon } from "lucide-react"; import type { MultiComponentSectionType } from "@/lib/types/component"; -import { actionMenuCategory } from "@/cuicui/application-ui/action-menu/action-menu.category"; -import { alertCategory } from "@/cuicui/application-ui/alert/alert.category"; -import { authenticationCategory } from "@/cuicui/application-ui/authentication/authentication.category"; -import { batteryCategory } from "@/cuicui/application-ui/battery/battery.category"; -import { codeCategory } from "@/cuicui/application-ui/code/code.category"; -import { cookieBannerCategory } from "@/cuicui/application-ui/cookie-banner/category.cookie-banner"; -import { kbdCategory } from "@/cuicui/application-ui/kbd/kbd.category"; -import { searchBarsCategory } from "@/cuicui/application-ui/search-bars/search-bars.category"; -import { settingsCategory } from "@/cuicui/application-ui/settings/settings.category"; -import { signatureCategory } from "@/cuicui/application-ui/signature/signature.category"; -import { slidersCategory } from "@/cuicui/application-ui/sliders/sliders.category"; -import { staticSteppersCategory } from "@/cuicui/application-ui/static-steppers/static-steppers.category"; -import { themeCategory } from "@/cuicui/application-ui/theme/theme.category"; -import { treeCategory } from "@/cuicui/application-ui/tree/tree.category"; -import { notificationCategory } from "@/cuicui/application-ui/notification/category.notification"; +import { actionMenuCategory } from "@/cuicui/application-ui/action-menu/category"; +import { alertCategory } from "@/cuicui/application-ui/alert/category"; +import { authenticationCategory } from "@/cuicui/application-ui/authentication/category"; +import { batteryCategory } from "@/cuicui/application-ui/battery/category"; +import { codeCategory } from "@/cuicui/application-ui/code/category"; +import { cookieBannerCategory } from "@/cuicui/application-ui/cookie-banner/category"; +import { kbdCategory } from "@/cuicui/application-ui/kbd/category"; +import { searchBarsCategory } from "@/cuicui/application-ui/search-bars/category"; +import { settingsCategory } from "@/cuicui/application-ui/settings/category"; +import { signatureCategory } from "@/cuicui/application-ui/signature/category"; +import { slidersCategory } from "@/cuicui/application-ui/sliders/category"; +import { staticSteppersCategory } from "@/cuicui/application-ui/static-steppers/category"; +import { themeCategory } from "@/cuicui/application-ui/theme/category"; +import { treeCategory } from "@/cuicui/application-ui/tree/category"; +import { notificationCategory } from "@/cuicui/application-ui/notification/category"; import { dropdownMenuCategory } from "@/cuicui/application-ui/dropdown-menu/category"; -import { tableOfContentCategory } from "@/cuicui/application-ui/table-of-contents/table-of-contents.category"; +import { tableOfContentCategory } from "@/cuicui/application-ui/table-of-contents/category"; import { contextMenuCategory } from "@/cuicui/application-ui/context-menu/category"; import { colorPickerCategory } from "@/cuicui/application-ui/color-picker/category"; @@ -48,3 +48,5 @@ export const applicationUiSection: MultiComponentSectionType = { treeCategory, ], }; + +export default applicationUiSection; diff --git a/packages/ui/cuicui/application-ui/settings/settings.category.tsx b/packages/ui/cuicui/application-ui/settings/category.ts similarity index 91% rename from packages/ui/cuicui/application-ui/settings/settings.category.tsx rename to packages/ui/cuicui/application-ui/settings/category.ts index 42f61781..acedb15f 100644 --- a/packages/ui/cuicui/application-ui/settings/settings.category.tsx +++ b/packages/ui/cuicui/application-ui/settings/category.ts @@ -15,7 +15,7 @@ export const settingsCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: DynamicSettingsVariant1, slugPreviewFile: "variant1", }, ], @@ -27,3 +27,5 @@ export const settingsCategory: CategoryType = { }, ], }; + +export default settingsCategory; diff --git a/packages/ui/cuicui/application-ui/settings/dynamic-settings/variant1.tsx b/packages/ui/cuicui/application-ui/settings/dynamic-settings/variant1.tsx index 5408adac..bbaa74b7 100644 --- a/packages/ui/cuicui/application-ui/settings/dynamic-settings/variant1.tsx +++ b/packages/ui/cuicui/application-ui/settings/dynamic-settings/variant1.tsx @@ -1,5 +1,5 @@ "use client"; -import { AnimatePresence, motion } from "framer-motion"; +import { AnimatePresence, motion } from "motion/react"; import { PlusIcon, SquareIcon } from "lucide-react"; import { useState } from "react"; diff --git a/packages/ui/cuicui/application-ui/signature/signature.category.tsx b/packages/ui/cuicui/application-ui/signature/category.ts similarity index 93% rename from packages/ui/cuicui/application-ui/signature/signature.category.tsx rename to packages/ui/cuicui/application-ui/signature/category.ts index 7ae990d1..c8a5a4b8 100644 --- a/packages/ui/cuicui/application-ui/signature/signature.category.tsx +++ b/packages/ui/cuicui/application-ui/signature/category.ts @@ -10,3 +10,5 @@ export const signatureCategory: CategoryType = { icon: SignatureIcon, componentList: [reactSignatureComponent], }; + +export default signatureCategory; diff --git a/packages/ui/cuicui/application-ui/sliders/sliders.category.tsx b/packages/ui/cuicui/application-ui/sliders/category.ts similarity index 89% rename from packages/ui/cuicui/application-ui/sliders/sliders.category.tsx rename to packages/ui/cuicui/application-ui/sliders/category.ts index 6b22e7d6..ba80445d 100644 --- a/packages/ui/cuicui/application-ui/sliders/sliders.category.tsx +++ b/packages/ui/cuicui/application-ui/sliders/category.ts @@ -19,7 +19,7 @@ export const slidersCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: ElasticSliderVariant1, slugPreviewFile: "variant1", }, ], @@ -34,15 +34,17 @@ export const slidersCategory: CategoryType = { variantList: [ { name: "Smooth", - component: , + component: SimpleModernSlider, slugPreviewFile: "simple-modern-slider", }, { name: "Min & max steps", - component: , + component: SimpleModernSliderWithMax, slugPreviewFile: "simple-modern-slider-with-max", }, ], }, ], }; + +export default slidersCategory; diff --git a/packages/ui/cuicui/application-ui/sliders/elastic-slider/variant1.tsx b/packages/ui/cuicui/application-ui/sliders/elastic-slider/variant1.tsx index f51c63e2..a2c5440c 100644 --- a/packages/ui/cuicui/application-ui/sliders/elastic-slider/variant1.tsx +++ b/packages/ui/cuicui/application-ui/sliders/elastic-slider/variant1.tsx @@ -6,7 +6,7 @@ import { useMotionValue, useMotionValueEvent, useTransform, -} from "framer-motion"; +} from "motion/react"; import { Volume2Icon, VolumeXIcon } from "lucide-react"; import { type ElementRef, useRef, useState } from "react"; diff --git a/packages/ui/cuicui/application-ui/static-steppers/static-steppers.category.tsx b/packages/ui/cuicui/application-ui/static-steppers/category.ts similarity index 91% rename from packages/ui/cuicui/application-ui/static-steppers/static-steppers.category.tsx rename to packages/ui/cuicui/application-ui/static-steppers/category.ts index 30ed4602..666b6795 100644 --- a/packages/ui/cuicui/application-ui/static-steppers/static-steppers.category.tsx +++ b/packages/ui/cuicui/application-ui/static-steppers/category.ts @@ -18,7 +18,7 @@ export const staticSteppersCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: StepWithStickyColorVariant1, slugPreviewFile: "variant1", }, ], @@ -28,3 +28,5 @@ export const staticSteppersCategory: CategoryType = { }, ], }; + +export default staticSteppersCategory; diff --git a/packages/ui/cuicui/application-ui/table-of-contents/table-of-contents.category.tsx b/packages/ui/cuicui/application-ui/table-of-contents/category.ts similarity index 92% rename from packages/ui/cuicui/application-ui/table-of-contents/table-of-contents.category.tsx rename to packages/ui/cuicui/application-ui/table-of-contents/category.ts index 69065fc7..c05906df 100644 --- a/packages/ui/cuicui/application-ui/table-of-contents/table-of-contents.category.tsx +++ b/packages/ui/cuicui/application-ui/table-of-contents/category.ts @@ -19,7 +19,7 @@ export const tableOfContentCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: TableOfContentPreview, slugPreviewFile: "following-header-preview", slugComponentFile: "following-headers", }, @@ -31,3 +31,5 @@ export const tableOfContentCategory: CategoryType = { }, ], }; + +export default tableOfContentCategory; diff --git a/packages/ui/cuicui/application-ui/table-of-contents/modul-inspired/following-headers.tsx b/packages/ui/cuicui/application-ui/table-of-contents/modul-inspired/following-headers.tsx index 561c1239..6680b0a8 100644 --- a/packages/ui/cuicui/application-ui/table-of-contents/modul-inspired/following-headers.tsx +++ b/packages/ui/cuicui/application-ui/table-of-contents/modul-inspired/following-headers.tsx @@ -3,7 +3,7 @@ import { ShinyGradientSkeletonHorizontal } from "@/cuicui/common-ui/skeletons/shiny-gradient/skeleton-shiny-gradient-horizontal"; import { cn } from "@/cuicui/utils/cn/cn"; -import { AnimatePresence, motion } from "framer-motion"; +import { AnimatePresence, motion } from "motion/react"; import { ChevronRight } from "lucide-react"; import Link from "next/link"; diff --git a/packages/ui/cuicui/application-ui/theme/theme.category.tsx b/packages/ui/cuicui/application-ui/theme/category.ts similarity index 90% rename from packages/ui/cuicui/application-ui/theme/theme.category.tsx rename to packages/ui/cuicui/application-ui/theme/category.ts index f730857a..02868e6f 100644 --- a/packages/ui/cuicui/application-ui/theme/theme.category.tsx +++ b/packages/ui/cuicui/application-ui/theme/category.ts @@ -18,10 +18,12 @@ export const themeCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: ThemeSwitcherButton, slugPreviewFile: "theme-switcher-button", }, ], }, ], }; + +export default themeCategory; diff --git a/packages/ui/cuicui/application-ui/tree/tree.category.tsx b/packages/ui/cuicui/application-ui/tree/category.ts similarity index 93% rename from packages/ui/cuicui/application-ui/tree/tree.category.tsx rename to packages/ui/cuicui/application-ui/tree/category.ts index bbba5dcf..2196d08c 100644 --- a/packages/ui/cuicui/application-ui/tree/tree.category.tsx +++ b/packages/ui/cuicui/application-ui/tree/category.ts @@ -10,3 +10,5 @@ export const treeCategory: CategoryType = { icon: FolderTreeIcon, componentList: [recursiveTreeComponent], }; + +export default treeCategory; diff --git a/packages/ui/cuicui/application-ui/tree/recursive-tree/recursive-tree.tsx b/packages/ui/cuicui/application-ui/tree/recursive-tree/recursive-tree.tsx index 67b48ddc..76d7ea06 100644 --- a/packages/ui/cuicui/application-ui/tree/recursive-tree/recursive-tree.tsx +++ b/packages/ui/cuicui/application-ui/tree/recursive-tree/recursive-tree.tsx @@ -1,5 +1,5 @@ "use client"; -import { AnimatePresence, motion } from "framer-motion"; +import { AnimatePresence, motion } from "motion/react"; import { FolderIcon, FolderOpenIcon } from "lucide-react"; import React, { useState, type ReactNode, type HTMLAttributes } from "react"; import { cn } from "@/cuicui/utils/cn/cn"; diff --git a/packages/ui/cuicui/common-ui/avatars/avatars.category.tsx b/packages/ui/cuicui/common-ui/avatars/category.ts similarity index 91% rename from packages/ui/cuicui/common-ui/avatars/avatars.category.tsx rename to packages/ui/cuicui/common-ui/avatars/category.ts index 6af081d0..ab83801f 100644 --- a/packages/ui/cuicui/common-ui/avatars/avatars.category.tsx +++ b/packages/ui/cuicui/common-ui/avatars/category.ts @@ -10,3 +10,5 @@ export const avatarsCategory: CategoryType = { releaseDateCategory: new Date(), componentList: null, }; + +export default avatarsCategory; diff --git a/packages/ui/cuicui/common-ui/badges/badges.category.tsx b/packages/ui/cuicui/common-ui/badges/category.ts similarity index 89% rename from packages/ui/cuicui/common-ui/badges/badges.category.tsx rename to packages/ui/cuicui/common-ui/badges/category.ts index e69d43d3..d6af9edd 100644 --- a/packages/ui/cuicui/common-ui/badges/badges.category.tsx +++ b/packages/ui/cuicui/common-ui/badges/category.ts @@ -18,12 +18,12 @@ export const badgesCategory: CategoryType = { variantList: [ { name: "Amber", - component: , + component: BadgeSimpleVariantAmber, slugPreviewFile: "variant1", }, { name: "Red", - component: , + component: BadgeSimpleVariantRed, slugPreviewFile: "variant2", }, ], @@ -37,7 +37,7 @@ export const badgesCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: ClerkBadgeVariant1, slugPreviewFile: "variant1", }, ], @@ -53,7 +53,7 @@ export const badgesCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: AdvancedBadgesVariant1, slugPreviewFile: "variant1", }, ], @@ -63,3 +63,5 @@ export const badgesCategory: CategoryType = { }, ], }; + +export default badgesCategory; diff --git a/packages/ui/cuicui/common-ui/blockquotes/blockquotes.category.tsx b/packages/ui/cuicui/common-ui/blockquotes/category.ts similarity index 89% rename from packages/ui/cuicui/common-ui/blockquotes/blockquotes.category.tsx rename to packages/ui/cuicui/common-ui/blockquotes/category.ts index 4154e239..85894ee7 100644 --- a/packages/ui/cuicui/common-ui/blockquotes/blockquotes.category.tsx +++ b/packages/ui/cuicui/common-ui/blockquotes/category.ts @@ -17,10 +17,12 @@ export const blockquotesCategory: CategoryType = { variantList: [ { name: "On hover effect", - component: , + component: ModernSimpleQuoteVariant1, slugPreviewFile: "variant1", }, ], }, ], }; + +export default blockquotesCategory; diff --git a/packages/ui/cuicui/common-ui/buttons/category.ts b/packages/ui/cuicui/common-ui/buttons/category.ts index dab8786f..6d3a2f25 100644 --- a/packages/ui/cuicui/common-ui/buttons/category.ts +++ b/packages/ui/cuicui/common-ui/buttons/category.ts @@ -138,3 +138,5 @@ export const buttonsCategory: CategoryType = { }, ], }; + +export default buttonsCategory; diff --git a/packages/ui/cuicui/common-ui/buttons/magnetic-button/component.magnetic-button.tsx b/packages/ui/cuicui/common-ui/buttons/magnetic-button/component.magnetic-button.tsx index e8922ee0..31ecd5db 100644 --- a/packages/ui/cuicui/common-ui/buttons/magnetic-button/component.magnetic-button.tsx +++ b/packages/ui/cuicui/common-ui/buttons/magnetic-button/component.magnetic-button.tsx @@ -1,6 +1,6 @@ "use client"; import { useState, useRef, type MouseEvent } from "react"; -import { motion, useMotionValue, useSpring } from "framer-motion"; +import { motion, useMotionValue, useSpring } from "motion/react"; const SPRING_CONFIG = { damping: 30, stiffness: 400 }; const MAX_DISTANCE = 0.3; diff --git a/packages/ui/cuicui/common-ui/buttons/shiny-rotating-border-button/component.shiny-rotating-border-button.tsx b/packages/ui/cuicui/common-ui/buttons/shiny-rotating-border-button/component.shiny-rotating-border-button.tsx index 5c1f4d52..ad4063af 100644 --- a/packages/ui/cuicui/common-ui/buttons/shiny-rotating-border-button/component.shiny-rotating-border-button.tsx +++ b/packages/ui/cuicui/common-ui/buttons/shiny-rotating-border-button/component.shiny-rotating-border-button.tsx @@ -1,6 +1,6 @@ "use client"; import { cn } from "@/cuicui/utils/cn/cn"; -import { motion } from "framer-motion"; +import { motion } from "motion/react"; import type { HTMLAttributes, ReactNode } from "react"; export const ShinyRotatingBorderButton = ({ diff --git a/packages/ui/cuicui/common-ui/buttons/shiny-rotating-border-button/debunk.tsx b/packages/ui/cuicui/common-ui/buttons/shiny-rotating-border-button/debunk.tsx index 2dc054d7..c7212de4 100644 --- a/packages/ui/cuicui/common-ui/buttons/shiny-rotating-border-button/debunk.tsx +++ b/packages/ui/cuicui/common-ui/buttons/shiny-rotating-border-button/debunk.tsx @@ -1,5 +1,5 @@ "use client"; -import { motion } from "framer-motion"; +import { motion } from "motion/react"; export default function ShinyRotatingBorderButtonDebunk() { return ( diff --git a/packages/ui/cuicui/common-ui/cards/cards.category.tsx b/packages/ui/cuicui/common-ui/cards/category.ts similarity index 91% rename from packages/ui/cuicui/common-ui/cards/cards.category.tsx rename to packages/ui/cuicui/common-ui/cards/category.ts index c4f91dbd..1667c7b5 100644 --- a/packages/ui/cuicui/common-ui/cards/cards.category.tsx +++ b/packages/ui/cuicui/common-ui/cards/category.ts @@ -21,7 +21,7 @@ export const cardsCategory: CategoryType = { variantList: [ { name: "Variant 1", - component: , + component: ModernInnerShadowCardVariant1, slugPreviewFile: "variant1", }, ], @@ -37,7 +37,7 @@ export const cardsCategory: CategoryType = { variantList: [ { name: "Variant 1", - component: , + component: DynamicSquareBackgroundPreview, slugPreviewFile: "dynamic-square-background-preview", slugComponentFile: "dynamic-square-background", }, @@ -53,7 +53,7 @@ export const cardsCategory: CategoryType = { variantList: [ { name: "Variant 1", - component: , + component: NotificationCardPreview, slugPreviewFile: "notification-card-preview", slugComponentFile: "notification-card", }, @@ -66,7 +66,7 @@ export const cardsCategory: CategoryType = { variantList: [ { name: "Variant 1", - component: , + component: HoverEffectCardPreview, slugPreviewFile: "hover-effect-card-preview", slugComponentFile: "hover-effect-card", }, @@ -80,3 +80,5 @@ export const cardsCategory: CategoryType = { }, ], }; + +export default cardsCategory; diff --git a/packages/ui/cuicui/common-ui/checkboxes/checkboxes.category.tsx b/packages/ui/cuicui/common-ui/checkboxes/category.ts similarity index 91% rename from packages/ui/cuicui/common-ui/checkboxes/checkboxes.category.tsx rename to packages/ui/cuicui/common-ui/checkboxes/category.ts index 42f1a1b4..4d6caa2e 100644 --- a/packages/ui/cuicui/common-ui/checkboxes/checkboxes.category.tsx +++ b/packages/ui/cuicui/common-ui/checkboxes/category.ts @@ -15,7 +15,7 @@ export const checkboxesCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: SimpleCheckboxPreview, slugPreviewFile: "simple-checkbox-preview", slugComponentFile: "simple-checkbox", }, @@ -26,3 +26,5 @@ export const checkboxesCategory: CategoryType = { }, ], }; + +export default checkboxesCategory; diff --git a/packages/ui/cuicui/common-ui/inputs/inputs.category.tsx b/packages/ui/cuicui/common-ui/inputs/category.ts similarity index 91% rename from packages/ui/cuicui/common-ui/inputs/inputs.category.tsx rename to packages/ui/cuicui/common-ui/inputs/category.ts index 0dce79eb..13c1cab4 100644 --- a/packages/ui/cuicui/common-ui/inputs/inputs.category.tsx +++ b/packages/ui/cuicui/common-ui/inputs/category.ts @@ -17,7 +17,7 @@ export const inputsCategory: CategoryType = { variantList: [ { name: "Droppable Zone", - component: , + component: FileDropzone, slugPreviewFile: "variant1", }, ], @@ -32,7 +32,7 @@ export const inputsCategory: CategoryType = { variantList: [ { name: "Variant 1", - component: , + component: PreviewModernSimpleInput, slugPreviewFile: "preview-simple-modern-input", slugComponentFile: "modern-simple-input", }, @@ -43,3 +43,5 @@ export const inputsCategory: CategoryType = { }, ], }; + +export default inputsCategory; diff --git a/packages/ui/cuicui/common-ui/inputs/droppable-file/variant1.tsx b/packages/ui/cuicui/common-ui/inputs/droppable-file/variant1.tsx index 61e5f345..c8768ae4 100644 --- a/packages/ui/cuicui/common-ui/inputs/droppable-file/variant1.tsx +++ b/packages/ui/cuicui/common-ui/inputs/droppable-file/variant1.tsx @@ -1,5 +1,5 @@ "use client"; -import { AnimatePresence, motion } from "framer-motion"; +import { AnimatePresence, motion } from "motion/react"; import { File, Trash2, Upload } from "lucide-react"; import type React from "react"; import { type DragEvent, useRef, useState } from "react"; diff --git a/packages/ui/cuicui/common-ui/loaders/loaders.category.tsx b/packages/ui/cuicui/common-ui/loaders/category.ts similarity index 76% rename from packages/ui/cuicui/common-ui/loaders/loaders.category.tsx rename to packages/ui/cuicui/common-ui/loaders/category.ts index 484acfba..8b84cf09 100644 --- a/packages/ui/cuicui/common-ui/loaders/loaders.category.tsx +++ b/packages/ui/cuicui/common-ui/loaders/category.ts @@ -1,11 +1,12 @@ import { LoaderIcon } from "lucide-react"; import type { CategoryType } from "@/lib/types/component"; -import { CircularBarsSpinnerLoader } from "@/cuicui/common-ui/loaders/spinner-loader/circular-bars-spinner-loader"; + import { DualRingSpinnerLoader } from "@/cuicui/common-ui/loaders/spinner-loader/dual-ring-spinner-loader"; import { SpinnerLoader } from "@/cuicui/common-ui/loaders/spinner-loader/spinner-loader"; import NineDotGridRandom from "@/cuicui/common-ui/loaders/three-dot-simple-loader/nine-dot-grid-random"; import ThreeDotLoaderGrowing from "@/cuicui/common-ui/loaders/three-dot-simple-loader/three-dot-loader-growing"; import { ThreeDotSimpleLoader } from "@/cuicui/common-ui/loaders/three-dot-simple-loader/three-dot-simple-loader"; +import { CircularBarsSpinnerLoaderPreview } from "@/cuicui/common-ui/loaders/spinner-loader/circular-bars-spinner-loader.preview"; export const loadersCategory: CategoryType = { slug: "loaders", @@ -20,17 +21,17 @@ export const loadersCategory: CategoryType = { variantList: [ { name: "3 Bouncing", - component: , + component: ThreeDotSimpleLoader, slugPreviewFile: "three-dot-simple-loader", }, { name: "3 Growing", - component: , + component: ThreeDotLoaderGrowing, slugPreviewFile: "three-dot-loader-growing", }, { name: "9 Random grid", - component: , + component: NineDotGridRandom, slugPreviewFile: "three-dot-loader-growing", }, ], @@ -43,17 +44,18 @@ export const loadersCategory: CategoryType = { variantList: [ { name: "Spinner", - component: , + component: SpinnerLoader, slugPreviewFile: "spinner-loader", }, { name: "Circular Bars", - component: , - slugPreviewFile: "circular-bars-spinner-loader", + component: CircularBarsSpinnerLoaderPreview, + slugPreviewFile: "circular-bars-spinner-loader.preview", + slugComponentFile: "circular-bars-spinner-loader", }, { name: "Dual Ring", - component: , + component: DualRingSpinnerLoader, slugPreviewFile: "dual-ring-spinner-loader", }, ], @@ -62,3 +64,5 @@ export const loadersCategory: CategoryType = { }, ], }; + +export default loadersCategory; diff --git a/packages/ui/cuicui/common-ui/loaders/spinner-loader/circular-bars-spinner-loader.preview.tsx b/packages/ui/cuicui/common-ui/loaders/spinner-loader/circular-bars-spinner-loader.preview.tsx new file mode 100644 index 00000000..37ccbf8a --- /dev/null +++ b/packages/ui/cuicui/common-ui/loaders/spinner-loader/circular-bars-spinner-loader.preview.tsx @@ -0,0 +1,5 @@ +import { CircularBarsSpinnerLoader } from "@/cuicui/common-ui/loaders/spinner-loader/circular-bars-spinner-loader"; + +export const CircularBarsSpinnerLoaderPreview = () => { + return ; +}; diff --git a/packages/ui/cuicui/common-ui/navigation/navigation.category.tsx b/packages/ui/cuicui/common-ui/navigation/category.ts similarity index 82% rename from packages/ui/cuicui/common-ui/navigation/navigation.category.tsx rename to packages/ui/cuicui/common-ui/navigation/category.ts index d3c5886f..e54b5b8d 100644 --- a/packages/ui/cuicui/common-ui/navigation/navigation.category.tsx +++ b/packages/ui/cuicui/common-ui/navigation/category.ts @@ -3,6 +3,7 @@ import type { CategoryType } from "@/lib/types/component"; import { Dock } from "@/cuicui/common-ui/navigation/mac-dock/variant1"; import { VercelNavigationVariant1 } from "@/cuicui/common-ui/navigation/vercel-navigation/variant1"; import { VercelNavigationVariant2 } from "@/cuicui/common-ui/navigation/vercel-navigation/variant2"; +import SideMenuSmoothHoverComponent from "@/cuicui/common-ui/navigation/side-menu-smooth-hover/component"; export const navigationCategory: CategoryType = { slug: "navigation", @@ -17,12 +18,12 @@ export const navigationCategory: CategoryType = { variantList: [ { name: "On hover effect", - component: , + component: VercelNavigationVariant1, slugPreviewFile: "variant1", }, { name: "On click effect", - component: , + component: VercelNavigationVariant2, slugPreviewFile: "variant2", }, ], @@ -37,7 +38,7 @@ export const navigationCategory: CategoryType = { variantList: [ { name: "Default", - component: , + component: Dock, slugPreviewFile: "variant1", }, ], @@ -47,5 +48,8 @@ export const navigationCategory: CategoryType = { inspiration: "MacOS Dock", }, + SideMenuSmoothHoverComponent, ], }; + +export default navigationCategory; diff --git a/packages/ui/cuicui/common-ui/navigation/side-menu-smooth-hover/component.ts b/packages/ui/cuicui/common-ui/navigation/side-menu-smooth-hover/component.ts new file mode 100644 index 00000000..82381f39 --- /dev/null +++ b/packages/ui/cuicui/common-ui/navigation/side-menu-smooth-hover/component.ts @@ -0,0 +1,20 @@ +import PreviewSmoothHoverMenuItem from "@/cuicui/common-ui/navigation/side-menu-smooth-hover/preview"; +import type { ComponentType } from "@/lib/types/component"; + +export const SideMenuSmoothHoverComponent: ComponentType = { + sizePreview: "sm", + slug: "side-menu-smooth-hover", + variantList: [ + { + name: "Default", + component: PreviewSmoothHoverMenuItem, + slugPreviewFile: "preview", + slugComponentFile: "side-menu-smooth-hover", + }, + ], + name: "Side Menu Smooth Hover", + description: + "A navigation menu with hover effect handled in javascript to accept smooth transitions.", +}; + +export default SideMenuSmoothHoverComponent; diff --git a/packages/ui/cuicui/common-ui/navigation/side-menu-smooth-hover/preview.tsx b/packages/ui/cuicui/common-ui/navigation/side-menu-smooth-hover/preview.tsx new file mode 100644 index 00000000..54a0e170 --- /dev/null +++ b/packages/ui/cuicui/common-ui/navigation/side-menu-smooth-hover/preview.tsx @@ -0,0 +1,20 @@ +import { SmoothHoverMenuItem } from "@/cuicui/common-ui/navigation/side-menu-smooth-hover/side-menu-smooth-hover"; + +export const PreviewSmoothHoverMenuItem = () => { + return ( +
+ Tab 1 + Tab 2 + Tab 3 + Tab 4 + Tab 5 + Tab 6 + Tab 7 + Tab 8 + Tab 9 + Tab 10 +
+ ); +}; + +export default PreviewSmoothHoverMenuItem; diff --git a/packages/ui/cuicui/common-ui/navigation/side-menu-smooth-hover/side-menu-smooth-hover.tsx b/packages/ui/cuicui/common-ui/navigation/side-menu-smooth-hover/side-menu-smooth-hover.tsx new file mode 100644 index 00000000..a2c17945 --- /dev/null +++ b/packages/ui/cuicui/common-ui/navigation/side-menu-smooth-hover/side-menu-smooth-hover.tsx @@ -0,0 +1,41 @@ +"use client"; +import { cn } from "@/cuicui/utils/cn/cn"; +import { type ReactNode, useState } from "react"; + +export const SmoothHoverMenuItem = ({ + children, + transitionDelayInMs = 300, +}: { children: ReactNode; transitionDelayInMs?: number }) => { + const [isHovered, setIsHovered] = useState(false); + + return ( +
setIsHovered(true)} + onMouseLeave={() => setIsHovered(false)} + className={cn( + "rounded-lg border overflow-hidden cursor-pointer", + isHovered + ? "border-neutral-400/30 scale-105" + : "border-neutral-400/0 scale-100", + )} + style={{ + transition: "border-color, transform", + transitionDuration: isHovered + ? "0ms" + : `${transitionDelayInMs + 300}ms`, + }} + > +
+ {children} +
+
+ ); +}; diff --git a/packages/ui/cuicui/common-ui/navigation/vercel-navigation/variant1.tsx b/packages/ui/cuicui/common-ui/navigation/vercel-navigation/variant1.tsx index c45dded6..ef08fb11 100644 --- a/packages/ui/cuicui/common-ui/navigation/vercel-navigation/variant1.tsx +++ b/packages/ui/cuicui/common-ui/navigation/vercel-navigation/variant1.tsx @@ -1,5 +1,5 @@ "use client"; -import { AnimatePresence, motion } from "framer-motion"; +import { AnimatePresence, motion } from "motion/react"; import { useState } from "react"; const dataButtons = [ diff --git a/packages/ui/cuicui/common-ui/navigation/vercel-navigation/variant2.tsx b/packages/ui/cuicui/common-ui/navigation/vercel-navigation/variant2.tsx index 2c103067..0b5de6cb 100644 --- a/packages/ui/cuicui/common-ui/navigation/vercel-navigation/variant2.tsx +++ b/packages/ui/cuicui/common-ui/navigation/vercel-navigation/variant2.tsx @@ -1,5 +1,5 @@ "use client"; -import { AnimatePresence, motion } from "framer-motion"; +import { AnimatePresence, motion } from "motion/react"; import { useState } from "react"; const dataButtons = [ diff --git a/packages/ui/cuicui/common-ui/common-ui.section.ts b/packages/ui/cuicui/common-ui/section.ts similarity index 62% rename from packages/ui/cuicui/common-ui/common-ui.section.ts rename to packages/ui/cuicui/common-ui/section.ts index 2ba1329c..8ed67509 100644 --- a/packages/ui/cuicui/common-ui/common-ui.section.ts +++ b/packages/ui/cuicui/common-ui/section.ts @@ -1,16 +1,16 @@ import { ComponentIcon } from "lucide-react"; import type { SectionType } from "@/lib/types/component"; -import { avatarsCategory } from "@/cuicui/common-ui/avatars/avatars.category"; -import { badgesCategory } from "@/cuicui/common-ui/badges/badges.category"; -import { blockquotesCategory } from "@/cuicui/common-ui/blockquotes/blockquotes.category"; +import { avatarsCategory } from "@/cuicui/common-ui/avatars/category"; +import { badgesCategory } from "@/cuicui/common-ui/badges/category"; +import { blockquotesCategory } from "@/cuicui/common-ui/blockquotes/category"; import { buttonsCategory } from "@/cuicui/common-ui/buttons/category"; -import { cardsCategory } from "@/cuicui/common-ui/cards/cards.category"; -import { checkboxesCategory } from "@/cuicui/common-ui/checkboxes/checkboxes.category"; -import { inputsCategory } from "@/cuicui/common-ui/inputs/inputs.category"; -import { loadersCategory } from "@/cuicui/common-ui/loaders/loaders.category"; -import { navigationCategory } from "@/cuicui/common-ui/navigation/navigation.category"; -import { skeletonsCategory } from "@/cuicui/common-ui/skeletons/skeletons.category"; -import { toggleCategory } from "@/cuicui/common-ui/toggle/toggle.category"; +import { cardsCategory } from "@/cuicui/common-ui/cards/category"; +import { checkboxesCategory } from "@/cuicui/common-ui/checkboxes/category"; +import { inputsCategory } from "@/cuicui/common-ui/inputs/category"; +import { loadersCategory } from "@/cuicui/common-ui/loaders/category"; +import { navigationCategory } from "@/cuicui/common-ui/navigation/category"; +import { skeletonsCategory } from "@/cuicui/common-ui/skeletons/category"; +import { toggleCategory } from "@/cuicui/common-ui/toggle/category"; export const commonUiSection: SectionType = { name: "Common UI", @@ -32,3 +32,5 @@ export const commonUiSection: SectionType = { toggleCategory, ], }; + +export default commonUiSection; diff --git a/packages/ui/cuicui/common-ui/skeletons/skeletons.category.tsx b/packages/ui/cuicui/common-ui/skeletons/category.ts similarity index 90% rename from packages/ui/cuicui/common-ui/skeletons/skeletons.category.tsx rename to packages/ui/cuicui/common-ui/skeletons/category.ts index 17ffc961..2d3c5d93 100644 --- a/packages/ui/cuicui/common-ui/skeletons/skeletons.category.tsx +++ b/packages/ui/cuicui/common-ui/skeletons/category.ts @@ -18,7 +18,7 @@ export const skeletonsCategory: CategoryType = { variantList: [ { name: "Classic Pulse", - component: , + component: ClassicPulseVariant1, slugPreviewFile: "variant1", }, ], @@ -35,13 +35,13 @@ export const skeletonsCategory: CategoryType = { variantList: [ { name: "Horizontal", - component: , + component: ShinyGradientSkeletonHorizontal, slugPreviewFile: "skeleton-shiny-gradient-horizontal", slugComponentFile: "skeleton-shiny-gradient", }, { name: "Vertical", - component: , + component: ShinyGradientSkeletonVertical, slugPreviewFile: "skeleton-shiny-gradient-vertical", slugComponentFile: "skeleton-shiny-gradient", }, @@ -55,3 +55,5 @@ export const skeletonsCategory: CategoryType = { }, ], }; + +export default skeletonsCategory; diff --git a/packages/ui/cuicui/common-ui/toggle/toggle.category.tsx b/packages/ui/cuicui/common-ui/toggle/category.ts similarity index 91% rename from packages/ui/cuicui/common-ui/toggle/toggle.category.tsx rename to packages/ui/cuicui/common-ui/toggle/category.ts index 0ac7672a..dc933ba8 100644 --- a/packages/ui/cuicui/common-ui/toggle/toggle.category.tsx +++ b/packages/ui/cuicui/common-ui/toggle/category.ts @@ -10,3 +10,5 @@ export const toggleCategory: CategoryType = { releaseDateCategory: new Date("2024-09-26"), componentList: null, }; + +export default toggleCategory; diff --git a/packages/ui/cuicui/hooks/hooks.section.ts b/packages/ui/cuicui/hooks/hooks.section.ts index f3ff1dde..0af4190c 100644 --- a/packages/ui/cuicui/hooks/hooks.section.ts +++ b/packages/ui/cuicui/hooks/hooks.section.ts @@ -73,3 +73,5 @@ export const hooksSection: SectionType = { useWindowSizeCategory, ], }; + +export default hooksSection; diff --git a/packages/ui/cuicui/hooks/use-auto-scroll/preview.use-auto-scroll.tsx b/packages/ui/cuicui/hooks/use-auto-scroll/preview.use-auto-scroll.tsx index 78b41bee..f28b8c43 100644 --- a/packages/ui/cuicui/hooks/use-auto-scroll/preview.use-auto-scroll.tsx +++ b/packages/ui/cuicui/hooks/use-auto-scroll/preview.use-auto-scroll.tsx @@ -2,12 +2,8 @@ "use client"; -import { useState, useEffect, useRef, type KeyboardEvent } from "react"; - -const AI_RESPONSES = [ - "I'm here to help with any questions you have.", - "Sint nisi eu cillum nulla officia incididunt irure laboris enim cillum cupidatat occaecat. Duis adipisicing veniam exercitation quis anim. Exercitation consectetur tempor et consectetur dolor. Cupidatat culpa eiusmod ex enim occaecat dolor sunt. Et et commodo qui ipsum nostrud ut et incididunt est cupidatat excepteur laborum. Anim ullamco aliqua ad sit sint cupidatat esse esse.", -]; +import { autoScrollListRef } from "@/cuicui/hooks/use-auto-scroll/use-auto-scroll"; +import { useState, type KeyboardEvent } from "react"; interface Message { sender: "user" | "ai"; @@ -20,14 +16,6 @@ const PreviewUseAutoScroll = () => { { sender: "ai", text: "Feel free to add new messages." }, ]); const [input, setInput] = useState(""); - const listRef = useRef(null); - - // Auto-scroll to the bottom when messages change - useEffect(() => { - if (listRef.current && messages.length > 0) { - listRef.current.scrollTop = listRef.current.scrollHeight; - } - }, [messages]); const sendMessage = () => { const trimmedInput = input.trim(); @@ -41,7 +29,7 @@ const PreviewUseAutoScroll = () => { // Simulate AI response const aiResponse = - AI_RESPONSES[Math.floor(Math.random() * AI_RESPONSES.length)]; + "Sint nisi eu cillum nulla officia incididunt irure laboris enim cillum cupidatat occaecat. Duis adipisicing veniam exercitation quis anim. Exercitation consectetur tempor et consectetur dolor. Cupidatat culpa eiusmod ex enim occaecat dolor sunt. Et et commodo qui ipsum nostrud ut et incididunt est cupidatat excepteur laborum. Anim ullamco aliqua ad sit sint cupidatat esse esse."; setTimeout(() => { setMessages((prev) => [...prev, { sender: "ai", text: aiResponse }]); }, 500); @@ -59,11 +47,11 @@ const PreviewUseAutoScroll = () => { Chat Interface
    {messages.map((msg, index) => ( -
  • { }`} > {msg.text} -
  • +

    ))}
diff --git a/packages/ui/cuicui/marketing-ui/carousels/category.carousels.tsx b/packages/ui/cuicui/marketing-ui/carousels/category.ts similarity index 91% rename from packages/ui/cuicui/marketing-ui/carousels/category.carousels.tsx rename to packages/ui/cuicui/marketing-ui/carousels/category.ts index 33ee0a42..0197de27 100644 --- a/packages/ui/cuicui/marketing-ui/carousels/category.carousels.tsx +++ b/packages/ui/cuicui/marketing-ui/carousels/category.ts @@ -20,7 +20,7 @@ export const carouselsCategory: CategoryType = { variantList: [ { name: "Simple Carousel", - component: , + component: SimpleCarouselPreview, slugPreviewFile: "simple-carousel-preview", slugComponentFile: "simple-carousel", }, @@ -36,10 +36,12 @@ export const carouselsCategory: CategoryType = { variantList: [ { name: "Cylindrical Carousel", - component: , + component: CarouselCylindricalVariant1, slugPreviewFile: "variant1", }, ], }, ], }; + +export default carouselsCategory; diff --git a/packages/ui/cuicui/marketing-ui/carousels/cylindric-3d-carousel/variant1.tsx b/packages/ui/cuicui/marketing-ui/carousels/cylindric-3d-carousel/variant1.tsx index c351714a..21aeaa16 100644 --- a/packages/ui/cuicui/marketing-ui/carousels/cylindric-3d-carousel/variant1.tsx +++ b/packages/ui/cuicui/marketing-ui/carousels/cylindric-3d-carousel/variant1.tsx @@ -6,7 +6,7 @@ import { useAnimation, useMotionValue, useTransform, -} from "framer-motion"; +} from "motion/react"; import { AlarmClockIcon, ArchiveIcon, diff --git a/packages/ui/cuicui/marketing-ui/faq/category.faq.tsx b/packages/ui/cuicui/marketing-ui/faq/category.ts similarity index 95% rename from packages/ui/cuicui/marketing-ui/faq/category.faq.tsx rename to packages/ui/cuicui/marketing-ui/faq/category.ts index 70a1d6b4..14de9469 100644 --- a/packages/ui/cuicui/marketing-ui/faq/category.faq.tsx +++ b/packages/ui/cuicui/marketing-ui/faq/category.ts @@ -11,3 +11,5 @@ export const faqCategory: CategoryType = { releaseDateCategory: new Date("2024-01-11"), componentList: [FullSectionFaqComponent, gradientQnaComponent], }; + +export default faqCategory; diff --git a/packages/ui/cuicui/marketing-ui/features/category.features.tsx b/packages/ui/cuicui/marketing-ui/features/category.ts similarity index 90% rename from packages/ui/cuicui/marketing-ui/features/category.features.tsx rename to packages/ui/cuicui/marketing-ui/features/category.ts index 36cbee54..28dcd68a 100644 --- a/packages/ui/cuicui/marketing-ui/features/category.features.tsx +++ b/packages/ui/cuicui/marketing-ui/features/category.ts @@ -22,12 +22,12 @@ export const featuresCategory: CategoryType = { { name: "Sober colors", slugPreviewFile: "variant1", - component: , + component: Variant1FeatureFourImages, }, { name: "Less animations with colors", slugPreviewFile: "variant2", - component: , + component: Variant2FeatureFourImages, }, ], }, @@ -43,10 +43,12 @@ export const featuresCategory: CategoryType = { variantList: [ { name: "Simple Feature Cards", - component: , + component: AnimatedCardVariant1, slugPreviewFile: "variant1", }, ], }, ], }; + +export default featuresCategory; diff --git a/packages/ui/cuicui/marketing-ui/pricing-tables/category.pricing-tables.tsx b/packages/ui/cuicui/marketing-ui/pricing-tables/category.ts similarity index 94% rename from packages/ui/cuicui/marketing-ui/pricing-tables/category.pricing-tables.tsx rename to packages/ui/cuicui/marketing-ui/pricing-tables/category.ts index 2ee2e1a8..ee29f2b9 100644 --- a/packages/ui/cuicui/marketing-ui/pricing-tables/category.pricing-tables.tsx +++ b/packages/ui/cuicui/marketing-ui/pricing-tables/category.ts @@ -15,3 +15,5 @@ export const pricingTablesCategory: CategoryType = { artlistInspiredPricingTableComponent, ], }; + +export default pricingTablesCategory; diff --git a/packages/ui/cuicui/marketing-ui/pricing-tables/many-offers/preview.artlist-inspired.tsx b/packages/ui/cuicui/marketing-ui/pricing-tables/many-offers/preview.artlist-inspired.tsx index 8346a655..f4c3e9b1 100644 --- a/packages/ui/cuicui/marketing-ui/pricing-tables/many-offers/preview.artlist-inspired.tsx +++ b/packages/ui/cuicui/marketing-ui/pricing-tables/many-offers/preview.artlist-inspired.tsx @@ -1,5 +1,5 @@ "use client"; -import { motion } from "framer-motion"; +import { motion } from "motion/react"; import { CheckIcon, EuroIcon } from "lucide-react"; import { useState } from "react"; import { cn } from "@/cuicui/utils/cn/cn"; diff --git a/packages/ui/cuicui/marketing-ui/section.marketing-ui.ts b/packages/ui/cuicui/marketing-ui/section.ts similarity index 81% rename from packages/ui/cuicui/marketing-ui/section.marketing-ui.ts rename to packages/ui/cuicui/marketing-ui/section.ts index 0fba8c54..800122f8 100644 --- a/packages/ui/cuicui/marketing-ui/section.marketing-ui.ts +++ b/packages/ui/cuicui/marketing-ui/section.ts @@ -1,12 +1,12 @@ import type { MultiComponentSectionType } from "@/lib/types/component"; -import { pricingTablesCategory } from "@/cuicui/marketing-ui/pricing-tables/category.pricing-tables"; -import { carouselsCategory } from "@/cuicui/marketing-ui/carousels/category.carousels"; -import { featuresCategory } from "@/cuicui/marketing-ui/features/category.features"; -import { statisticsCategory } from "@/cuicui/marketing-ui/statistics/category.statistics"; -import { testimonialsCategory } from "@/cuicui/marketing-ui/testimonials/category.testimonials"; +import { pricingTablesCategory } from "@/cuicui/marketing-ui/pricing-tables/category"; +import { carouselsCategory } from "@/cuicui/marketing-ui/carousels/category"; +import { featuresCategory } from "@/cuicui/marketing-ui/features/category"; +import { statisticsCategory } from "@/cuicui/marketing-ui/statistics/category"; +import { testimonialsCategory } from "@/cuicui/marketing-ui/testimonials/category"; import { BadgePercentIcon } from "lucide-react"; -import { faqCategory } from "@/cuicui/marketing-ui/faq/category.faq"; +import { faqCategory } from "@/cuicui/marketing-ui/faq/category"; import { footerCategory } from "@/cuicui/marketing-ui/footer/category"; export const marketingUiSection: MultiComponentSectionType = { @@ -25,3 +25,5 @@ export const marketingUiSection: MultiComponentSectionType = { footerCategory, ], }; + +export default marketingUiSection; diff --git a/packages/ui/cuicui/marketing-ui/statistics/animated-counter/animated-counter.tsx b/packages/ui/cuicui/marketing-ui/statistics/animated-counter/animated-counter.tsx index cffd8ebb..47d65055 100644 --- a/packages/ui/cuicui/marketing-ui/statistics/animated-counter/animated-counter.tsx +++ b/packages/ui/cuicui/marketing-ui/statistics/animated-counter/animated-counter.tsx @@ -4,7 +4,7 @@ import { motion, useSpring, useTransform, -} from "framer-motion"; +} from "motion/react"; import { useEffect } from "react"; import { cn } from "@/cuicui/utils/cn/cn"; diff --git a/packages/ui/cuicui/marketing-ui/statistics/animated-on-scroll/variant1.tsx b/packages/ui/cuicui/marketing-ui/statistics/animated-on-scroll/variant1.tsx index fd6f86c1..ec7e0093 100644 --- a/packages/ui/cuicui/marketing-ui/statistics/animated-on-scroll/variant1.tsx +++ b/packages/ui/cuicui/marketing-ui/statistics/animated-on-scroll/variant1.tsx @@ -8,7 +8,7 @@ import { useScroll, useSpring, useTransform, -} from "framer-motion"; +} from "motion/react"; import { useEffect, useRef, useState } from "react"; import { cn } from "@/cuicui/utils/cn/cn"; diff --git a/packages/ui/cuicui/marketing-ui/statistics/category.statistics.tsx b/packages/ui/cuicui/marketing-ui/statistics/category.ts similarity index 92% rename from packages/ui/cuicui/marketing-ui/statistics/category.statistics.tsx rename to packages/ui/cuicui/marketing-ui/statistics/category.ts index bbffd1a0..0d6af614 100644 --- a/packages/ui/cuicui/marketing-ui/statistics/category.statistics.tsx +++ b/packages/ui/cuicui/marketing-ui/statistics/category.ts @@ -22,7 +22,7 @@ export const statisticsCategory: CategoryType = { variantList: [ { name: "Animated Number", - component: , + component: AnimatedNumberVariant1, slugPreviewFile: "variant1", }, ], @@ -37,7 +37,7 @@ export const statisticsCategory: CategoryType = { variantList: [ { name: "Increase To Value", - component: , + component: IncreaseToValueVariant1, slugPreviewFile: "variant1", }, ], @@ -51,7 +51,7 @@ export const statisticsCategory: CategoryType = { variantList: [ { name: "Increase To Value", - component: , + component: AnimatedCounterPreview, slugPreviewFile: "animated-counter-preview", slugComponentFile: "animated-counter", }, @@ -61,3 +61,5 @@ export const statisticsCategory: CategoryType = { }, ], }; + +export default statisticsCategory; diff --git a/packages/ui/cuicui/marketing-ui/statistics/increase-to-value/variant1.tsx b/packages/ui/cuicui/marketing-ui/statistics/increase-to-value/variant1.tsx index c5687f8e..7b167abe 100644 --- a/packages/ui/cuicui/marketing-ui/statistics/increase-to-value/variant1.tsx +++ b/packages/ui/cuicui/marketing-ui/statistics/increase-to-value/variant1.tsx @@ -1,5 +1,5 @@ "use client"; -import { animate, motion, useMotionValue, useTransform } from "framer-motion"; +import { animate, motion, useMotionValue, useTransform } from "motion/react"; import type React from "react"; import { useEffect, useState } from "react"; diff --git a/packages/ui/cuicui/marketing-ui/statistics/trigger-on-scroll/trigger-on-scroll.tsx b/packages/ui/cuicui/marketing-ui/statistics/trigger-on-scroll/trigger-on-scroll.tsx index 7b1c919e..d0384bda 100644 --- a/packages/ui/cuicui/marketing-ui/statistics/trigger-on-scroll/trigger-on-scroll.tsx +++ b/packages/ui/cuicui/marketing-ui/statistics/trigger-on-scroll/trigger-on-scroll.tsx @@ -3,7 +3,7 @@ import { cn } from "@/cuicui/utils/cn/cn"; import NumberFlow from "@number-flow/react"; import { useState, useRef, useEffect } from "react"; -import { useInView } from "framer-motion"; +import { useInView } from "motion/react"; type NumberProps = number | `${number}`; diff --git a/packages/ui/cuicui/marketing-ui/testimonials/category.testimonials.tsx b/packages/ui/cuicui/marketing-ui/testimonials/category.ts similarity index 89% rename from packages/ui/cuicui/marketing-ui/testimonials/category.testimonials.tsx rename to packages/ui/cuicui/marketing-ui/testimonials/category.ts index 07a59f69..b3fb0438 100644 --- a/packages/ui/cuicui/marketing-ui/testimonials/category.testimonials.tsx +++ b/packages/ui/cuicui/marketing-ui/testimonials/category.ts @@ -21,7 +21,7 @@ export const testimonialsCategory: CategoryType = { { name: "Testimonials Slider", slugPreviewFile: "variant1", - component: , + component: TestimonialsVariant1, }, ], }, @@ -34,15 +34,17 @@ export const testimonialsCategory: CategoryType = { variantList: [ { name: "Horizontal Marquee", - component: , + component: MarqueeVariant1, slugPreviewFile: "variant1", }, { name: "Vertical Marquee", - component: , + component: MarqueeVariant2, slugPreviewFile: "variant2", }, ], }, ], }; + +export default testimonialsCategory; diff --git a/packages/ui/cuicui/marketing-ui/testimonials/testimonials-component/variant1.tsx b/packages/ui/cuicui/marketing-ui/testimonials/testimonials-component/variant1.tsx index c57e69d5..4870b9c7 100644 --- a/packages/ui/cuicui/marketing-ui/testimonials/testimonials-component/variant1.tsx +++ b/packages/ui/cuicui/marketing-ui/testimonials/testimonials-component/variant1.tsx @@ -1,5 +1,5 @@ "use client"; -import { AnimatePresence, motion } from "framer-motion"; +import { AnimatePresence, motion } from "motion/react"; import { ArrowLeftIcon, ArrowRightIcon } from "lucide-react"; import { useState } from "react"; @@ -74,7 +74,7 @@ export function TestimonialsVariant1() { className="flex h-60 w-[24rem] flex-col justify-between rounded-lg bg-white p-4 shadow-sm dark:bg-neutral-800" exit={{ opacity: 0, x: 0, scale: 0.8, rotate: 3 }} initial={{ opacity: 0, x: 0, scale: 0.8 }} - layout + layout={true} transition={{ duration: 0.35, ease: "easeInOut" }} >
diff --git a/packages/ui/cuicui/other/creative-effects/border-trail/border-trail.tsx b/packages/ui/cuicui/other/creative-effects/border-trail/border-trail.tsx index 8e863b85..51743f6d 100644 --- a/packages/ui/cuicui/other/creative-effects/border-trail/border-trail.tsx +++ b/packages/ui/cuicui/other/creative-effects/border-trail/border-trail.tsx @@ -1,7 +1,7 @@ "use client"; import { cn } from "@/cuicui/utils/cn/cn"; -import { motion, type Transition } from "framer-motion"; +import { motion, type Transition } from "motion/react"; import type { CSSProperties } from "react"; type BorderTrailProps = { diff --git a/packages/ui/cuicui/other/creative-effects/category.creative-effet.tsx b/packages/ui/cuicui/other/creative-effects/category.ts similarity index 96% rename from packages/ui/cuicui/other/creative-effects/category.creative-effet.tsx rename to packages/ui/cuicui/other/creative-effects/category.ts index 09da155f..0d5c14d2 100644 --- a/packages/ui/cuicui/other/creative-effects/category.creative-effet.tsx +++ b/packages/ui/cuicui/other/creative-effects/category.ts @@ -19,3 +19,5 @@ export const creativeEffectCategory: CategoryType = { WavyLineComponent, ], }; + +export default creativeEffectCategory; diff --git a/packages/ui/cuicui/other/cursors/cursor.category.tsx b/packages/ui/cuicui/other/cursors/category.ts similarity index 95% rename from packages/ui/cuicui/other/cursors/cursor.category.tsx rename to packages/ui/cuicui/other/cursors/category.ts index 9611af0b..907110ee 100644 --- a/packages/ui/cuicui/other/cursors/cursor.category.tsx +++ b/packages/ui/cuicui/other/cursors/category.ts @@ -11,3 +11,5 @@ export const cursorCategory: CategoryType = { icon: MousePointerClickIcon, componentList: [followCursorComponent, cardHoverCursorEffectComponent], }; + +export default cursorCategory; diff --git a/packages/ui/cuicui/other/mock-ups/mock-ups.category.tsx b/packages/ui/cuicui/other/mock-ups/mock-ups.category.ts similarity index 90% rename from packages/ui/cuicui/other/mock-ups/mock-ups.category.tsx rename to packages/ui/cuicui/other/mock-ups/mock-ups.category.ts index d9e11b98..6ead4863 100644 --- a/packages/ui/cuicui/other/mock-ups/mock-ups.category.tsx +++ b/packages/ui/cuicui/other/mock-ups/mock-ups.category.ts @@ -24,12 +24,12 @@ export const mockUpsCategory: CategoryType = { variantList: [ { name: "Iphone 14", - component: , + component: Iphone14ProVariant2, slugPreviewFile: "variant2", }, { name: "Google Pixel", - component: , + component: GooglePixelVariant1, slugPreviewFile: "variant1", }, ], @@ -45,7 +45,7 @@ export const mockUpsCategory: CategoryType = { variantList: [ { name: "Macbook Pro", - component: , + component: PreviewMackbook, slugPreviewFile: "preview.mackbook", slugComponentFile: "component.mackbook", }, @@ -63,16 +63,15 @@ export const mockUpsCategory: CategoryType = { variantList: [ { name: "Airpods Pro", - component: ( + component: //
- - //
- ), + AirpodsPro, + //
slugPreviewFile: "airpods-pro", }, { name: "Airpods", - component: , + component: Airpods, slugPreviewFile: "airpods", }, ], @@ -81,3 +80,5 @@ export const mockUpsCategory: CategoryType = { }, ], }; + +export default mockUpsCategory; diff --git a/packages/ui/cuicui/other/patterns/patterns.category.tsx b/packages/ui/cuicui/other/patterns/category.ts similarity index 94% rename from packages/ui/cuicui/other/patterns/patterns.category.tsx rename to packages/ui/cuicui/other/patterns/category.ts index ec4a5414..ed3e39b0 100644 --- a/packages/ui/cuicui/other/patterns/patterns.category.tsx +++ b/packages/ui/cuicui/other/patterns/category.ts @@ -20,7 +20,7 @@ export const patternsCategory: CategoryType = { variantList: [ { name: "Variant 1", - component: , + component: DotsPatternPreview, slugPreviewFile: "dots-pattern-preview", slugComponentFile: "dots-pattern", }, @@ -39,7 +39,7 @@ export const patternsCategory: CategoryType = { variantList: [ { name: "Variant 1", - component: , + component: MovingBandsPreview, slugComponentFile: "moving-bands", slugPreviewFile: "moving-bands-preview", }, @@ -49,3 +49,5 @@ export const patternsCategory: CategoryType = { }, ], }; + +export default patternsCategory; diff --git a/packages/ui/cuicui/other/qr-code/qr-code.category.ts b/packages/ui/cuicui/other/qr-code/category.ts similarity index 94% rename from packages/ui/cuicui/other/qr-code/qr-code.category.ts rename to packages/ui/cuicui/other/qr-code/category.ts index 4491f966..092bbd2a 100644 --- a/packages/ui/cuicui/other/qr-code/qr-code.category.ts +++ b/packages/ui/cuicui/other/qr-code/category.ts @@ -11,3 +11,4 @@ export const qrCodeCategory: CategoryType = { icon: QrCodeIcon, componentList: [QrCodeGeneratorComponent, BarCodeGeneratorComponent], }; +export default qrCodeCategory; diff --git a/packages/ui/cuicui/other/other.section.ts b/packages/ui/cuicui/other/section.ts similarity index 70% rename from packages/ui/cuicui/other/other.section.ts rename to packages/ui/cuicui/other/section.ts index 39ebea16..4b4fab23 100644 --- a/packages/ui/cuicui/other/other.section.ts +++ b/packages/ui/cuicui/other/section.ts @@ -1,11 +1,11 @@ import { RectangleEllipsisIcon } from "lucide-react"; import type { MultiComponentSectionType } from "@/lib/types/component"; -import { cursorCategory } from "@/cuicui/other/cursors/cursor.category"; +import { cursorCategory } from "@/cuicui/other/cursors/category"; import { mockUpsCategory } from "@/cuicui/other/mock-ups/mock-ups.category"; -import { patternsCategory } from "@/cuicui/other/patterns/patterns.category"; -import { qrCodeCategory } from "@/cuicui/other/qr-code/qr-code.category"; -import { transitionWrappersCategory } from "@/cuicui/other/transition-wrappers/transition-wrappers.category"; -import { creativeEffectCategory } from "@/cuicui/other/creative-effects/category.creative-effet"; +import { patternsCategory } from "@/cuicui/other/patterns/category"; +import { qrCodeCategory } from "@/cuicui/other/qr-code/category"; +import { transitionWrappersCategory } from "@/cuicui/other/transition-wrappers/category"; +import { creativeEffectCategory } from "@/cuicui/other/creative-effects/category"; export const otherSection: MultiComponentSectionType = { name: "Other", slug: "other", @@ -22,3 +22,5 @@ export const otherSection: MultiComponentSectionType = { creativeEffectCategory, ], }; + +export default otherSection; diff --git a/packages/ui/cuicui/other/transition-wrappers/animated-number/animated-number.tsx b/packages/ui/cuicui/other/transition-wrappers/animated-number/animated-number.tsx index 19cadbc0..c128e774 100644 --- a/packages/ui/cuicui/other/transition-wrappers/animated-number/animated-number.tsx +++ b/packages/ui/cuicui/other/transition-wrappers/animated-number/animated-number.tsx @@ -6,7 +6,7 @@ import { type SpringOptions, useSpring, useTransform, -} from "framer-motion"; +} from "motion/react"; import { useEffect } from "react"; type AnimatedNumber = { diff --git a/packages/ui/cuicui/other/transition-wrappers/blur-appear/variant1.tsx b/packages/ui/cuicui/other/transition-wrappers/blur-appear/variant1.tsx index ef68c1ab..233746fa 100644 --- a/packages/ui/cuicui/other/transition-wrappers/blur-appear/variant1.tsx +++ b/packages/ui/cuicui/other/transition-wrappers/blur-appear/variant1.tsx @@ -1,5 +1,5 @@ "use client"; -import { motion } from "framer-motion"; +import { motion } from "motion/react"; import type { ReactNode } from "react"; export default function BlurAppearVariant1() { return ( diff --git a/packages/ui/cuicui/other/transition-wrappers/transition-wrappers.category.tsx b/packages/ui/cuicui/other/transition-wrappers/category.ts similarity index 93% rename from packages/ui/cuicui/other/transition-wrappers/transition-wrappers.category.tsx rename to packages/ui/cuicui/other/transition-wrappers/category.ts index 34e23d06..4f90bfd1 100644 --- a/packages/ui/cuicui/other/transition-wrappers/transition-wrappers.category.tsx +++ b/packages/ui/cuicui/other/transition-wrappers/category.ts @@ -23,7 +23,7 @@ export const transitionWrappersCategory: CategoryType = { variantList: [ { name: "Blur appear", - component: , + component: BlurAppearVariant1, slugPreviewFile: "variant1", }, ], @@ -33,3 +33,5 @@ export const transitionWrappersCategory: CategoryType = { SlideInOnScrollComponent, ], }; + +export default transitionWrappersCategory; diff --git a/packages/ui/cuicui/other/transition-wrappers/text-effect-wrapper/text-effect-wrapper.tsx b/packages/ui/cuicui/other/transition-wrappers/text-effect-wrapper/text-effect-wrapper.tsx index 203bd5b7..83e3bc56 100644 --- a/packages/ui/cuicui/other/transition-wrappers/text-effect-wrapper/text-effect-wrapper.tsx +++ b/packages/ui/cuicui/other/transition-wrappers/text-effect-wrapper/text-effect-wrapper.tsx @@ -6,7 +6,7 @@ import { motion, type TargetAndTransition, type Variants, -} from "framer-motion"; +} from "motion/react"; import React from "react"; type PresetType = "blur" | "shake" | "scale" | "fade" | "slide"; diff --git a/packages/ui/cuicui/tools/section.tools.ts b/packages/ui/cuicui/tools/tools.section.ts similarity index 97% rename from packages/ui/cuicui/tools/section.tools.ts rename to packages/ui/cuicui/tools/tools.section.ts index 4d6ed018..1d81d5e0 100644 --- a/packages/ui/cuicui/tools/section.tools.ts +++ b/packages/ui/cuicui/tools/tools.section.ts @@ -21,3 +21,5 @@ export const toolsSection: PageSectionType = { noiseGeneratorCategory, ], }; + +export default toolsSection; diff --git a/packages/ui/cuicui/utils/catch-error/category.catch-error.tsx b/packages/ui/cuicui/utils/catch-error/category.ts similarity index 90% rename from packages/ui/cuicui/utils/catch-error/category.catch-error.tsx rename to packages/ui/cuicui/utils/catch-error/category.ts index 7d3f9905..7b09f16a 100644 --- a/packages/ui/cuicui/utils/catch-error/category.catch-error.tsx +++ b/packages/ui/cuicui/utils/catch-error/category.ts @@ -12,7 +12,7 @@ export const catchErrorCategory: SingleComponentCategoryType = { name: "Default", slugPreviewFile: "preview.catch-error", slugComponentFile: "catch-error", - component: , + component: PreviewCatchError, }, ], }, @@ -21,3 +21,5 @@ export const catchErrorCategory: SingleComponentCategoryType = { icon: ChartNoAxesGanttIcon, releaseDateCategory: new Date("2024-09-26"), }; + +export default catchErrorCategory; diff --git a/packages/ui/cuicui/utils/cn/cn.category.tsx b/packages/ui/cuicui/utils/cn/category.ts similarity index 91% rename from packages/ui/cuicui/utils/cn/cn.category.tsx rename to packages/ui/cuicui/utils/cn/category.ts index 40667fc6..03d30ace 100644 --- a/packages/ui/cuicui/utils/cn/cn.category.tsx +++ b/packages/ui/cuicui/utils/cn/category.ts @@ -12,7 +12,7 @@ export const cnCategory: SingleComponentCategoryType = { name: "Default", slugPreviewFile: "preview.cn", slugComponentFile: "cn", - component: , + component: PreviewCn, }, ], }, @@ -20,3 +20,5 @@ export const cnCategory: SingleComponentCategoryType = { icon: ChartNoAxesGanttIcon, releaseDateCategory: new Date("2024-09-26"), }; + +export default cnCategory; diff --git a/packages/ui/cuicui/utils/utils.section.ts b/packages/ui/cuicui/utils/section.ts similarity index 73% rename from packages/ui/cuicui/utils/utils.section.ts rename to packages/ui/cuicui/utils/section.ts index 56c0ea00..85b71626 100644 --- a/packages/ui/cuicui/utils/utils.section.ts +++ b/packages/ui/cuicui/utils/section.ts @@ -1,8 +1,8 @@ import { CodeXmlIcon } from "lucide-react"; import type { SectionType } from "@/lib/types/component"; -import { cnCategory } from "@/cuicui/utils/cn/cn.category"; -import { sleepCategory } from "@/cuicui/utils/sleep/sleep.category"; -import { catchErrorCategory } from "@/cuicui/utils/catch-error/category.catch-error"; +import { cnCategory } from "@/cuicui/utils/cn/category"; +import { sleepCategory } from "@/cuicui/utils/sleep/category"; +import { catchErrorCategory } from "@/cuicui/utils/catch-error/category"; export const utilsSection: SectionType = { type: "single-component", @@ -12,3 +12,5 @@ export const utilsSection: SectionType = { icon: CodeXmlIcon, categoriesList: [cnCategory, sleepCategory, catchErrorCategory], }; + +export default utilsSection; diff --git a/packages/ui/cuicui/utils/sleep/sleep.category.tsx b/packages/ui/cuicui/utils/sleep/category.ts similarity index 90% rename from packages/ui/cuicui/utils/sleep/sleep.category.tsx rename to packages/ui/cuicui/utils/sleep/category.ts index b428f10c..ae559072 100644 --- a/packages/ui/cuicui/utils/sleep/sleep.category.tsx +++ b/packages/ui/cuicui/utils/sleep/category.ts @@ -13,7 +13,7 @@ export const sleepCategory: SingleComponentCategoryType = { name: "Default", slugPreviewFile: "preview-sleep", slugComponentFile: "sleep", - component: , + component: PreviewSleep, }, ], }, @@ -21,3 +21,5 @@ export const sleepCategory: SingleComponentCategoryType = { icon: HourglassIcon, releaseDateCategory: new Date("2024-09-26"), }; + +export default sleepCategory; diff --git a/packages/ui/lib/section-list.ts b/packages/ui/lib/section-list.ts index 9a74b707..3f2383e7 100644 --- a/packages/ui/lib/section-list.ts +++ b/packages/ui/lib/section-list.ts @@ -1,12 +1,12 @@ -import { applicationUiSection } from "@/cuicui/application-ui/application-ui.section"; -import { commonUiSection } from "@/cuicui/common-ui/common-ui.section"; +import { applicationUiSection } from "@/cuicui/application-ui/section"; +import { commonUiSection } from "@/cuicui/common-ui/section"; import { hooksSection } from "@/cuicui/hooks/hooks.section"; -import { otherSection } from "@/cuicui/other/other.section"; -import { toolsSection } from "@/cuicui/tools/section.tools"; -import { utilsSection } from "@/cuicui/utils/utils.section"; +import { otherSection } from "@/cuicui/other/section"; +import { toolsSection } from "@/cuicui/tools/tools.section"; +import { utilsSection } from "@/cuicui/utils/section"; import type { SectionType } from "./types/component"; -import { marketingUiSection } from "@/cuicui/marketing-ui/section.marketing-ui"; +import { marketingUiSection } from "@/cuicui/marketing-ui/section"; export const sectionList: SectionType[] = [ commonUiSection, diff --git a/packages/ui/lib/types/component.d.ts b/packages/ui/lib/types/component.d.ts index 80fb525b..0fc53a2f 100644 --- a/packages/ui/lib/types/component.d.ts +++ b/packages/ui/lib/types/component.d.ts @@ -135,3 +135,30 @@ export type VariantType = { slugComponentFile?: string; slugPreviewFile: string; }; + +export type NewSectionType = { + meta: SectionType; + categories: { + meta: CategoryType; + components: { meta: ComponentType; variants: VariantType[] }[]; + }[]; +}[]; + +export type NewCategoryType = { + meta: CategoryType; + components: { meta: ComponentType; variants: VariantType[] }[]; +}[]; + +export type NewComponentType = { + meta: ComponentType; + variants: NewVariantType[]; +}[]; + +export type NewVariantType = { + name: string; + component: JSX.Element | (() => JSX.Element); // To delete + slugComponentFile?: string; // To delete + slugPreviewFile: string; // To delete + // variantComponent: () => JSX.Element + // previewPath: string; +}; diff --git a/packages/ui/package.json b/packages/ui/package.json index d3605611..ed11e95c 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -4,9 +4,11 @@ "version": "0.0.0", "private": true, "scripts": { - "build": "pnpm pre-build", - "pre-build": "scripts/generate-preview-categories.mjs", - "type-check": "tsc --noEmit" + "_build": "pnpm pre-build", + "pre-build": "pnpm generate-preview-categories", + "type-check": "tsc --noEmit", + "generate-preview-categories": "deno run --allow-read --allow-write scripts/generate-preview-categories.ts", + "generate-section-list": "deno run --allow-read --allow-write scripts/generate-section-list.ts" }, "license": "MIT", "peerDependencies": { @@ -35,15 +37,15 @@ "clsx": "2.1.0", "dom-to-image-more": "3.4.5", "embla-carousel-react": "8.2.1", - "framer-motion": "11.2.10", "get-similar-color": "1.1.4", "jsbarcode": "3.11.6", - "lucide-react": "^0.453.0", + "lucide-react": "^0.x", + "motion": "^11.x", "next": "14.2.3", "qrcode.react": "4.1.0", "react": "18.2.0", "react-dom": "18.2.0", - "sonner": "1.5.0", + "sonner": "^1.x", "tailwind-merge": "2.3.0", "tts-react": "3.0.7" } diff --git a/packages/ui/scripts/generate-preview-categories.mjs b/packages/ui/scripts/generate-preview-categories.ts similarity index 89% rename from packages/ui/scripts/generate-preview-categories.mjs rename to packages/ui/scripts/generate-preview-categories.ts index 1249e4dd..75656353 100755 --- a/packages/ui/scripts/generate-preview-categories.mjs +++ b/packages/ui/scripts/generate-preview-categories.ts @@ -1,16 +1,16 @@ #!/usr/bin/env node -// chmod +x scripts/generate-preview-categories.mjs +// chmod +x scripts/generate-preview-categories.ts import fs from "node:fs"; import path from "node:path"; -const ROOT_DIR = "./cuicui"; // Adjust this if your script is not in the root directory +const ROOT_DIR = "./cuicui"; // Adjust if script is not in the root directory const GENERATED_FILE_NAME = "categories-previews-list.ts"; console.log(`Starting script in root directory: ${ROOT_DIR}`); -// Read all items in the root directory -let items; +let items: string[]; + try { items = fs.readdirSync(ROOT_DIR); console.log(`Items found in root directory: ${items.join(", ")}`); @@ -23,7 +23,8 @@ try { const sections = items.filter((f) => { const sectionPath = path.join(ROOT_DIR, f); try { - const isDir = fs.statSync(sectionPath).isDirectory(); + const stat = fs.statSync(sectionPath); + const isDir = stat.isDirectory(); const isHidden = f.startsWith("."); return isDir && !isHidden; } catch (err) { @@ -41,12 +42,13 @@ for (const section of sections) { console.log(`Processing section: ${section}`); const sectionPath = path.join(ROOT_DIR, section); - let categories; + let categories: string[]; try { categories = fs.readdirSync(sectionPath).filter((f) => { const categoryPath = path.join(sectionPath, f); try { - const isDir = fs.statSync(categoryPath).isDirectory(); + const stat = fs.statSync(categoryPath); + const isDir = stat.isDirectory(); const isHidden = f.startsWith("."); return isDir && !isHidden; } catch (err) { diff --git a/packages/ui/scripts/generate-section-list.ts b/packages/ui/scripts/generate-section-list.ts new file mode 100644 index 00000000..2ddde529 --- /dev/null +++ b/packages/ui/scripts/generate-section-list.ts @@ -0,0 +1,362 @@ +#!/usr/bin/env node +// chmod +x scripts/generate-section-list.ts + +import fs from "node:fs"; +import path from "node:path"; + +const ROOT_DIR = "./cuicui"; +const OUTPUT_FILE_NAME = "section-list.ts"; + +console.log(`Starting script in root directory: ${ROOT_DIR}`); + +let items: string[]; + +try { + items = fs.readdirSync(ROOT_DIR); + console.log(`Items found in root directory: ${items.join(", ")}`); +} catch (err) { + console.error(`Error reading root directory '${ROOT_DIR}':`, err); + process.exit(1); +} + +// Filter to get only directories, excluding those that start with '.' +const sections = items.filter((f) => { + const sectionPath = path.join(ROOT_DIR, f); + try { + const stat = fs.statSync(sectionPath); + const isDir = stat.isDirectory(); + const isHidden = f.startsWith("."); + return isDir && !isHidden; + } catch { + return false; + } +}); + +console.log(`Sections (directories) found: ${sections.join(", ")}`); + +interface FoundItem { + varName: string; + importPath: string; +} + +interface FoundSection extends FoundItem { + sectionName: string; +} + +interface FoundCategory extends FoundItem { + sectionName: string; + categoryName: string; +} + +interface FoundComponent extends FoundItem { + sectionName: string; + categoryName: string; + componentName: string; +} + +interface FoundVariant extends FoundItem { + sectionName: string; + categoryName: string; + componentName: string; + variantName: string; +} + +const foundSections: FoundSection[] = []; +const foundCategories: FoundCategory[] = []; +const foundComponents: FoundComponent[] = []; +const foundVariants: FoundVariant[] = []; + +for (const section of sections) { + const sectionPath = path.join(ROOT_DIR, section); + + let files: string[] = []; + try { + files = fs.readdirSync(sectionPath); + } catch { + console.warn(`Cannot read section directory: ${sectionPath}`); + continue; + } + + // Find section meta + const sectionFile = files.find((f) => f === "section.ts"); + if (!sectionFile) { + console.log( + `No section file found in '${section}'. Skipping this section.`, + ); + continue; + } + + const sectionVarName = toVarName(section, "section"); + const sectionWithoutExt = sectionFile.replace(/\.ts$/, ""); + const sectionImportPath = `@/cuicui/${section}/${sectionWithoutExt}`; + + foundSections.push({ + varName: sectionVarName, + importPath: sectionImportPath, + sectionName: section, + }); + + // Find categories + const categoryDirs = listSubdirectories(sectionPath); + for (const categoryDir of categoryDirs) { + const categoryPath = path.join(sectionPath, categoryDir); + let categoryFiles: string[] = []; + try { + categoryFiles = fs.readdirSync(categoryPath); + } catch { + console.warn(`Cannot read category directory: ${categoryPath}`); + continue; + } + + const categoryFile = categoryFiles.find((f) => f === "category.ts"); + if (!categoryFile) { + // No category file here, skip + continue; + } + + const categoryVarName = toVarName(`${section}_${categoryDir}`, "category"); + const categoryWithoutExt = categoryFile.replace(/\.ts$/, ""); + const categoryImportPath = `@/cuicui/${section}/${categoryDir}/${categoryWithoutExt}`; + + foundCategories.push({ + varName: categoryVarName, + importPath: categoryImportPath, + sectionName: section, + categoryName: categoryDir, + }); + + // Find components inside this category + const componentDirs = listSubdirectories(categoryPath); + for (const componentDir of componentDirs) { + const componentPath = path.join(categoryPath, componentDir); + let componentFiles: string[] = []; + try { + componentFiles = fs.readdirSync(componentPath); + } catch { + console.warn(`Cannot read component directory: ${componentPath}`); + continue; + } + + // Find a *.component.ts file + const componentFile = componentFiles.find((f) => + f.endsWith(".component.ts"), + ); + if (!componentFile) { + // No component file, skip + continue; + } + + const componentVarName = toVarName( + `${section}_${categoryDir}_${componentDir}`, + "component", + ); + const componentWithoutExt = componentFile.replace(/\.ts$/, ""); + const componentImportPath = `@/cuicui/${section}/${categoryDir}/${componentDir}/${componentWithoutExt}`; + + foundComponents.push({ + varName: componentVarName, + importPath: componentImportPath, + sectionName: section, + categoryName: categoryDir, + componentName: componentDir, + }); + + // Find variants (preview files) + const variantFiles = componentFiles.filter((f) => + f.endsWith(".preview.ts"), + ); + for (const variantFile of variantFiles) { + const variantName = variantFile.replace(/\.preview\.ts$/, ""); + // variantName might be something like "preview-variant1" + const cleanVariantName = variantName.replace(/^preview\-/, ""); // remove prefix if exists + const variantVarName = toVarName( + `${section}_${categoryDir}_${componentDir}_${cleanVariantName}`, + "preview", + ); + const variantWithoutExt = variantFile.replace(/\.ts$/, ""); + const variantImportPath = `@/cuicui/${section}/${categoryDir}/${componentDir}/${variantWithoutExt}`; + + foundVariants.push({ + varName: variantVarName, + importPath: variantImportPath, + sectionName: section, + categoryName: categoryDir, + componentName: componentDir, + variantName: cleanVariantName, + }); + } + } + } +} + +// Sort all found items +foundSections.sort((a, b) => a.varName.localeCompare(b.varName)); +foundCategories.sort((a, b) => a.varName.localeCompare(b.varName)); +foundComponents.sort((a, b) => a.varName.localeCompare(b.varName)); +foundVariants.sort((a, b) => a.varName.localeCompare(b.varName)); + +// Build imports +let imports = ""; +for (const sec of foundSections) { + imports += `import ${sec.varName} from "${sec.importPath}";\n`; +} +for (const cat of foundCategories) { + imports += `import ${cat.varName} from "${cat.importPath}";\n`; +} +for (const comp of foundComponents) { + imports += `import ${comp.varName} from "${comp.importPath}";\n`; +} +for (const v of foundVariants) { + imports += `import ${v.varName} from "${v.importPath}";\n`; +} + +imports += ` +import type { + NewComponentType, + NewSectionType, + NewCategoryType, +} from "@/lib/types/component"; +`; + +// Group by section +const categoriesBySection = groupBy(foundCategories, (c) => c.sectionName); +const componentsByCategory = groupBy( + foundComponents, + (c) => `${c.sectionName}/${c.categoryName}`, +); +const variantsByComponent = groupBy( + foundVariants, + (v) => `${v.sectionName}/${v.categoryName}/${v.componentName}`, +); + +// For each section, we create a `_categories` array +// For each category, we create a `__components` array +// For each component, we directly inline the variants array (no separate variable) + +let content = imports; + +// Create arrays for categories and components +for (const sec of foundSections) { + const secPrefix = toVarPrefix(sec.sectionName); + const sectionCategories = categoriesBySection[sec.sectionName] || []; + + // For each category in this section, create components array + for (const cat of sectionCategories) { + const catComponents = + componentsByCategory[`${cat.sectionName}/${cat.categoryName}`] || []; + + // For each component, create variants array inline + const componentsArray = catComponents + .map((comp) => { + const compVariants = + variantsByComponent[ + `${comp.sectionName}/${comp.categoryName}/${comp.componentName}` + ] || []; + return `{ + meta: ${comp.varName}, + variants: [ + ${compVariants.map((v) => v.varName).join(",\n ")} + ] + }`; + }) + .join(",\n "); + + const categoryArrayVar = toVarName( + `${cat.sectionName}_${cat.categoryName}`, + "components", + ); + content += ` + +export const ${categoryArrayVar}: NewComponentType = [ + ${componentsArray} +];`; + } + + // Now create the categories array for this section + const categoriesArray = sectionCategories + .map((cat) => { + const categoryComponentsVar = toVarName( + `${cat.sectionName}_${cat.categoryName}`, + "components", + ); + return `{ + meta: ${cat.varName}, + components: ${categoryComponentsVar} + }`; + }) + .join(",\n "); + + const categoriesArrayVar = `${secPrefix}_categories`; + content += ` + +export const ${categoriesArrayVar}: NewCategoryType = [ + ${categoriesArray} +];`; +} + +// Finally, create the sectionList +const sectionList = foundSections + .map((sec) => { + const secPrefix = toVarPrefix(sec.sectionName); + const categoriesArrayVar = `${secPrefix}_categories`; + return `{ + meta: ${sec.varName}, + categories: ${categoriesArrayVar} + }`; + }) + .join(",\n "); + +content += ` + +export const newSectionList: NewSectionType = [ + ${sectionList} +]; +`; + +// Write the file +try { + fs.writeFileSync(OUTPUT_FILE_NAME, content.trimStart()); + console.log(`'${OUTPUT_FILE_NAME}' generated successfully!`); +} catch (err) { + console.error(`Error writing to '${OUTPUT_FILE_NAME}':`, err); + process.exit(1); +} + +function listSubdirectories(dir: string): string[] { + let entries: string[] = []; + try { + entries = fs.readdirSync(dir); + } catch { + return []; + } + return entries.filter((f) => { + const p = path.join(dir, f); + const stat = fs.statSync(p); + return stat.isDirectory() && !f.startsWith("."); + }); +} + +// Convert a path like application-ui to a var prefix: application_ui +function toVarPrefix(name: string): string { + return name.split("-").join("_"); +} + +// Convert full pattern into var name +// typeSuffix could be "section", "category", "component", "preview", "components" +function toVarName(base: string, typeSuffix: string): string { + return `${base.split("-").join("_")}_${typeSuffix}`; +} + +function groupBy(arr: T[], keyFn: (x: T) => string): Record { + return arr.reduce( + (acc, item) => { + const k = keyFn(item); + if (!acc[k]) { + acc[k] = []; + } + acc[k].push(item); + return acc; + }, + {} as Record, + ); +} diff --git a/packages/ui/section-list.ts b/packages/ui/section-list.ts new file mode 100644 index 00000000..ca318640 --- /dev/null +++ b/packages/ui/section-list.ts @@ -0,0 +1,455 @@ +import application_ui_section from "@/cuicui/application-ui/section"; +import common_ui_section from "@/cuicui/common-ui/section"; +import marketing_ui_section from "@/cuicui/marketing-ui/section"; +import other_section from "@/cuicui/other/section"; +import utils_section from "@/cuicui/utils/section"; +import application_ui_action_menu_category from "@/cuicui/application-ui/action-menu/category"; +import application_ui_alert_category from "@/cuicui/application-ui/alert/category"; +import application_ui_authentication_category from "@/cuicui/application-ui/authentication/category"; +import application_ui_battery_category from "@/cuicui/application-ui/battery/category"; +import application_ui_code_category from "@/cuicui/application-ui/code/category"; +import application_ui_color_picker_category from "@/cuicui/application-ui/color-picker/category"; +import application_ui_context_menu_category from "@/cuicui/application-ui/context-menu/category"; +import application_ui_cookie_banner_category from "@/cuicui/application-ui/cookie-banner/category"; +import application_ui_dropdown_menu_category from "@/cuicui/application-ui/dropdown-menu/category"; +import application_ui_kbd_category from "@/cuicui/application-ui/kbd/category"; +import application_ui_notification_category from "@/cuicui/application-ui/notification/category"; +import application_ui_search_bars_category from "@/cuicui/application-ui/search-bars/category"; +import application_ui_settings_category from "@/cuicui/application-ui/settings/category"; +import application_ui_signature_category from "@/cuicui/application-ui/signature/category"; +import application_ui_sliders_category from "@/cuicui/application-ui/sliders/category"; +import application_ui_static_steppers_category from "@/cuicui/application-ui/static-steppers/category"; +import application_ui_table_of_contents_category from "@/cuicui/application-ui/table-of-contents/category"; +import application_ui_theme_category from "@/cuicui/application-ui/theme/category"; +import application_ui_tree_category from "@/cuicui/application-ui/tree/category"; +import common_ui_avatars_category from "@/cuicui/common-ui/avatars/category"; +import common_ui_badges_category from "@/cuicui/common-ui/badges/category"; +import common_ui_blockquotes_category from "@/cuicui/common-ui/blockquotes/category"; +import common_ui_buttons_category from "@/cuicui/common-ui/buttons/category"; +import common_ui_cards_category from "@/cuicui/common-ui/cards/category"; +import common_ui_checkboxes_category from "@/cuicui/common-ui/checkboxes/category"; +import common_ui_inputs_category from "@/cuicui/common-ui/inputs/category"; +import common_ui_loaders_category from "@/cuicui/common-ui/loaders/category"; +import common_ui_navigation_category from "@/cuicui/common-ui/navigation/category"; +import common_ui_skeletons_category from "@/cuicui/common-ui/skeletons/category"; +import common_ui_toggle_category from "@/cuicui/common-ui/toggle/category"; +import marketing_ui_carousels_category from "@/cuicui/marketing-ui/carousels/category"; +import marketing_ui_faq_category from "@/cuicui/marketing-ui/faq/category"; +import marketing_ui_features_category from "@/cuicui/marketing-ui/features/category"; +import marketing_ui_footer_category from "@/cuicui/marketing-ui/footer/category"; +import marketing_ui_pricing_tables_category from "@/cuicui/marketing-ui/pricing-tables/category"; +import marketing_ui_statistics_category from "@/cuicui/marketing-ui/statistics/category"; +import marketing_ui_testimonials_category from "@/cuicui/marketing-ui/testimonials/category"; +import other_creative_effects_category from "@/cuicui/other/creative-effects/category"; +import other_cursors_category from "@/cuicui/other/cursors/category"; +import other_patterns_category from "@/cuicui/other/patterns/category"; +import other_qr_code_category from "@/cuicui/other/qr-code/category"; +import other_transition_wrappers_category from "@/cuicui/other/transition-wrappers/category"; +import utils_catch_error_category from "@/cuicui/utils/catch-error/category"; +import utils_cn_category from "@/cuicui/utils/cn/category"; +import utils_sleep_category from "@/cuicui/utils/sleep/category"; + +import type { + NewComponentType, + NewSectionType, + NewCategoryType, +} from "@/lib/types/component"; + + +export const application_ui_action_menu_components: NewComponentType = [ + +]; + +export const application_ui_alert_components: NewComponentType = [ + +]; + +export const application_ui_authentication_components: NewComponentType = [ + +]; + +export const application_ui_battery_components: NewComponentType = [ + +]; + +export const application_ui_code_components: NewComponentType = [ + +]; + +export const application_ui_color_picker_components: NewComponentType = [ + +]; + +export const application_ui_context_menu_components: NewComponentType = [ + +]; + +export const application_ui_cookie_banner_components: NewComponentType = [ + +]; + +export const application_ui_dropdown_menu_components: NewComponentType = [ + +]; + +export const application_ui_kbd_components: NewComponentType = [ + +]; + +export const application_ui_notification_components: NewComponentType = [ + +]; + +export const application_ui_search_bars_components: NewComponentType = [ + +]; + +export const application_ui_settings_components: NewComponentType = [ + +]; + +export const application_ui_signature_components: NewComponentType = [ + +]; + +export const application_ui_sliders_components: NewComponentType = [ + +]; + +export const application_ui_static_steppers_components: NewComponentType = [ + +]; + +export const application_ui_table_of_contents_components: NewComponentType = [ + +]; + +export const application_ui_theme_components: NewComponentType = [ + +]; + +export const application_ui_tree_components: NewComponentType = [ + +]; + +export const application_ui_categories: NewCategoryType = [ + { + meta: application_ui_action_menu_category, + components: application_ui_action_menu_components + }, + { + meta: application_ui_alert_category, + components: application_ui_alert_components + }, + { + meta: application_ui_authentication_category, + components: application_ui_authentication_components + }, + { + meta: application_ui_battery_category, + components: application_ui_battery_components + }, + { + meta: application_ui_code_category, + components: application_ui_code_components + }, + { + meta: application_ui_color_picker_category, + components: application_ui_color_picker_components + }, + { + meta: application_ui_context_menu_category, + components: application_ui_context_menu_components + }, + { + meta: application_ui_cookie_banner_category, + components: application_ui_cookie_banner_components + }, + { + meta: application_ui_dropdown_menu_category, + components: application_ui_dropdown_menu_components + }, + { + meta: application_ui_kbd_category, + components: application_ui_kbd_components + }, + { + meta: application_ui_notification_category, + components: application_ui_notification_components + }, + { + meta: application_ui_search_bars_category, + components: application_ui_search_bars_components + }, + { + meta: application_ui_settings_category, + components: application_ui_settings_components + }, + { + meta: application_ui_signature_category, + components: application_ui_signature_components + }, + { + meta: application_ui_sliders_category, + components: application_ui_sliders_components + }, + { + meta: application_ui_static_steppers_category, + components: application_ui_static_steppers_components + }, + { + meta: application_ui_table_of_contents_category, + components: application_ui_table_of_contents_components + }, + { + meta: application_ui_theme_category, + components: application_ui_theme_components + }, + { + meta: application_ui_tree_category, + components: application_ui_tree_components + } +]; + +export const common_ui_avatars_components: NewComponentType = [ + +]; + +export const common_ui_badges_components: NewComponentType = [ + +]; + +export const common_ui_blockquotes_components: NewComponentType = [ + +]; + +export const common_ui_buttons_components: NewComponentType = [ + +]; + +export const common_ui_cards_components: NewComponentType = [ + +]; + +export const common_ui_checkboxes_components: NewComponentType = [ + +]; + +export const common_ui_inputs_components: NewComponentType = [ + +]; + +export const common_ui_loaders_components: NewComponentType = [ + +]; + +export const common_ui_navigation_components: NewComponentType = [ + +]; + +export const common_ui_skeletons_components: NewComponentType = [ + +]; + +export const common_ui_toggle_components: NewComponentType = [ + +]; + +export const common_ui_categories: NewCategoryType = [ + { + meta: common_ui_avatars_category, + components: common_ui_avatars_components + }, + { + meta: common_ui_badges_category, + components: common_ui_badges_components + }, + { + meta: common_ui_blockquotes_category, + components: common_ui_blockquotes_components + }, + { + meta: common_ui_buttons_category, + components: common_ui_buttons_components + }, + { + meta: common_ui_cards_category, + components: common_ui_cards_components + }, + { + meta: common_ui_checkboxes_category, + components: common_ui_checkboxes_components + }, + { + meta: common_ui_inputs_category, + components: common_ui_inputs_components + }, + { + meta: common_ui_loaders_category, + components: common_ui_loaders_components + }, + { + meta: common_ui_navigation_category, + components: common_ui_navigation_components + }, + { + meta: common_ui_skeletons_category, + components: common_ui_skeletons_components + }, + { + meta: common_ui_toggle_category, + components: common_ui_toggle_components + } +]; + +export const marketing_ui_carousels_components: NewComponentType = [ + +]; + +export const marketing_ui_faq_components: NewComponentType = [ + +]; + +export const marketing_ui_features_components: NewComponentType = [ + +]; + +export const marketing_ui_footer_components: NewComponentType = [ + +]; + +export const marketing_ui_pricing_tables_components: NewComponentType = [ + +]; + +export const marketing_ui_statistics_components: NewComponentType = [ + +]; + +export const marketing_ui_testimonials_components: NewComponentType = [ + +]; + +export const marketing_ui_categories: NewCategoryType = [ + { + meta: marketing_ui_carousels_category, + components: marketing_ui_carousels_components + }, + { + meta: marketing_ui_faq_category, + components: marketing_ui_faq_components + }, + { + meta: marketing_ui_features_category, + components: marketing_ui_features_components + }, + { + meta: marketing_ui_footer_category, + components: marketing_ui_footer_components + }, + { + meta: marketing_ui_pricing_tables_category, + components: marketing_ui_pricing_tables_components + }, + { + meta: marketing_ui_statistics_category, + components: marketing_ui_statistics_components + }, + { + meta: marketing_ui_testimonials_category, + components: marketing_ui_testimonials_components + } +]; + +export const other_creative_effects_components: NewComponentType = [ + +]; + +export const other_cursors_components: NewComponentType = [ + +]; + +export const other_patterns_components: NewComponentType = [ + +]; + +export const other_qr_code_components: NewComponentType = [ + +]; + +export const other_transition_wrappers_components: NewComponentType = [ + +]; + +export const other_categories: NewCategoryType = [ + { + meta: other_creative_effects_category, + components: other_creative_effects_components + }, + { + meta: other_cursors_category, + components: other_cursors_components + }, + { + meta: other_patterns_category, + components: other_patterns_components + }, + { + meta: other_qr_code_category, + components: other_qr_code_components + }, + { + meta: other_transition_wrappers_category, + components: other_transition_wrappers_components + } +]; + +export const utils_catch_error_components: NewComponentType = [ + +]; + +export const utils_cn_components: NewComponentType = [ + +]; + +export const utils_sleep_components: NewComponentType = [ + +]; + +export const utils_categories: NewCategoryType = [ + { + meta: utils_catch_error_category, + components: utils_catch_error_components + }, + { + meta: utils_cn_category, + components: utils_cn_components + }, + { + meta: utils_sleep_category, + components: utils_sleep_components + } +]; + +export const newSectionList: NewSectionType = [ + { + meta: application_ui_section, + categories: application_ui_categories + }, + { + meta: common_ui_section, + categories: common_ui_categories + }, + { + meta: marketing_ui_section, + categories: marketing_ui_categories + }, + { + meta: other_section, + categories: other_categories + }, + { + meta: utils_section, + categories: utils_categories + } +]; diff --git a/packages/ui/utils/get-code-from-path.ts b/packages/ui/utils/get-code-from-path.ts new file mode 100644 index 00000000..e69de29b diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5bc79613..43366b62 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -48,26 +48,26 @@ importers: specifier: 0.7.0 version: 0.7.0 clsx: - specifier: 2.1.0 + specifier: ^2.x version: 2.1.0 cmdk: - specifier: 1.0.0 + specifier: ^1.x version: 1.0.0(@types/react-dom@18.2.25)(@types/react@18.2.79)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) date-fns: - specifier: 3.6.0 + specifier: ^3.x version: 3.6.0 dom-to-image-more: specifier: 3.4.5 version: 3.4.5 - framer-motion: - specifier: 11.2.10 - version: 11.2.10(react-dom@18.2.0(react@18.2.0))(react@18.2.0) fs-extra: specifier: 11.2.0 version: 11.2.0 lucide-react: - specifier: 0.427.0 - version: 0.427.0(react@18.2.0) + specifier: ^0.x + version: 0.453.0(react@18.2.0) + motion: + specifier: ^11.x + version: 11.13.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0) next: specifier: 14.2.3 version: 14.2.3(@babel/core@7.26.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) @@ -96,7 +96,7 @@ importers: specifier: 0.33.4 version: 0.33.4 sonner: - specifier: 1.5.0 + specifier: ^1.x version: 1.5.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0) tailwind-merge: specifier: 2.3.0 @@ -105,7 +105,7 @@ importers: specifier: 5.0.1 version: 5.0.1(typescript@5.4.5)(vite@5.4.11(@types/node@20.12.7)) zustand: - specifier: 4.5.4 + specifier: ^4.x version: 4.5.4(@types/react@18.2.79)(react@18.2.0) devDependencies: '@tailwindcss/forms': @@ -179,7 +179,7 @@ importers: version: link:../config-typescript tailwindcss: specifier: ^3.4.10 - version: 3.4.15(ts-node@10.9.2(@types/node@20.12.7)(typescript@5.7.2)) + version: 3.4.16(ts-node@10.9.2(@types/node@20.12.7)(typescript@5.7.2)) packages/config-typescript: {} @@ -261,9 +261,6 @@ importers: embla-carousel-react: specifier: 8.2.1 version: 8.2.1(react@18.2.0) - framer-motion: - specifier: 11.2.10 - version: 11.2.10(react-dom@18.2.0(react@18.2.0))(react@18.2.0) get-similar-color: specifier: 1.1.4 version: 1.1.4 @@ -271,8 +268,11 @@ importers: specifier: 3.11.6 version: 3.11.6 lucide-react: - specifier: ^0.453.0 + specifier: ^0.x version: 0.453.0(react@18.2.0) + motion: + specifier: ^11.x + version: 11.13.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0) next: specifier: 14.2.3 version: 14.2.3(@babel/core@7.26.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) @@ -286,7 +286,7 @@ importers: specifier: 18.2.0 version: 18.2.0(react@18.2.0) sonner: - specifier: 1.5.0 + specifier: ^1.x version: 1.5.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0) tailwind-merge: specifier: 2.3.0 @@ -312,7 +312,7 @@ importers: version: 1.18.0 tailwindcss: specifier: ^3.4.14 - version: 3.4.15(ts-node@10.9.2(@types/node@20.12.7)(typescript@5.7.2)) + version: 3.4.16(ts-node@10.9.2(@types/node@20.12.7)(typescript@5.7.2)) typescript: specifier: ^5.6.3 version: 5.7.2 @@ -335,16 +335,16 @@ packages: resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.26.2': - resolution: {integrity: sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg==} + '@babel/compat-data@7.26.3': + resolution: {integrity: sha512-nHIxvKPniQXpmQLb0vhY3VaFb3S0YrTAwpOWJZh1wn3oJPjJk9Asva204PsBdmAE8vpzfHudT8DB0scYvy9q0g==} engines: {node: '>=6.9.0'} '@babel/core@7.26.0': resolution: {integrity: sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==} engines: {node: '>=6.9.0'} - '@babel/generator@7.26.2': - resolution: {integrity: sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==} + '@babel/generator@7.26.3': + resolution: {integrity: sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==} engines: {node: '>=6.9.0'} '@babel/helper-compilation-targets@7.25.9': @@ -381,8 +381,8 @@ packages: resolution: {integrity: sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==} engines: {node: '>=6.9.0'} - '@babel/parser@7.26.2': - resolution: {integrity: sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==} + '@babel/parser@7.26.3': + resolution: {integrity: sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==} engines: {node: '>=6.0.0'} hasBin: true @@ -406,12 +406,12 @@ packages: resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.25.9': - resolution: {integrity: sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==} + '@babel/traverse@7.26.4': + resolution: {integrity: sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w==} engines: {node: '>=6.9.0'} - '@babel/types@7.26.0': - resolution: {integrity: sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==} + '@babel/types@7.26.3': + resolution: {integrity: sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==} engines: {node: '>=6.9.0'} '@biomejs/biome@1.9.2': @@ -1581,93 +1581,98 @@ packages: '@radix-ui/rect@1.1.0': resolution: {integrity: sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg==} - '@rollup/rollup-android-arm-eabi@4.27.4': - resolution: {integrity: sha512-2Y3JT6f5MrQkICUyRVCw4oa0sutfAsgaSsb0Lmmy1Wi2y7X5vT9Euqw4gOsCyy0YfKURBg35nhUKZS4mDcfULw==} + '@rollup/rollup-android-arm-eabi@4.28.1': + resolution: {integrity: sha512-2aZp8AES04KI2dy3Ss6/MDjXbwBzj+i0GqKtWXgw2/Ma6E4jJvujryO6gJAghIRVz7Vwr9Gtl/8na3nDUKpraQ==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.27.4': - resolution: {integrity: sha512-wzKRQXISyi9UdCVRqEd0H4cMpzvHYt1f/C3CoIjES6cG++RHKhrBj2+29nPF0IB5kpy9MS71vs07fvrNGAl/iA==} + '@rollup/rollup-android-arm64@4.28.1': + resolution: {integrity: sha512-EbkK285O+1YMrg57xVA+Dp0tDBRB93/BZKph9XhMjezf6F4TpYjaUSuPt5J0fZXlSag0LmZAsTmdGGqPp4pQFA==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.27.4': - resolution: {integrity: sha512-PlNiRQapift4LNS8DPUHuDX/IdXiLjf8mc5vdEmUR0fF/pyy2qWwzdLjB+iZquGr8LuN4LnUoSEvKRwjSVYz3Q==} + '@rollup/rollup-darwin-arm64@4.28.1': + resolution: {integrity: sha512-prduvrMKU6NzMq6nxzQw445zXgaDBbMQvmKSJaxpaZ5R1QDM8w+eGxo6Y/jhT/cLoCvnZI42oEqf9KQNYz1fqQ==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.27.4': - resolution: {integrity: sha512-o9bH2dbdgBDJaXWJCDTNDYa171ACUdzpxSZt+u/AAeQ20Nk5x+IhA+zsGmrQtpkLiumRJEYef68gcpn2ooXhSQ==} + '@rollup/rollup-darwin-x64@4.28.1': + resolution: {integrity: sha512-WsvbOunsUk0wccO/TV4o7IKgloJ942hVFK1CLatwv6TJspcCZb9umQkPdvB7FihmdxgaKR5JyxDjWpCOp4uZlQ==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.27.4': - resolution: {integrity: sha512-NBI2/i2hT9Q+HySSHTBh52da7isru4aAAo6qC3I7QFVsuhxi2gM8t/EI9EVcILiHLj1vfi+VGGPaLOUENn7pmw==} + '@rollup/rollup-freebsd-arm64@4.28.1': + resolution: {integrity: sha512-HTDPdY1caUcU4qK23FeeGxCdJF64cKkqajU0iBnTVxS8F7H/7BewvYoG+va1KPSL63kQ1PGNyiwKOfReavzvNA==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.27.4': - resolution: {integrity: sha512-wYcC5ycW2zvqtDYrE7deary2P2UFmSh85PUpAx+dwTCO9uw3sgzD6Gv9n5X4vLaQKsrfTSZZ7Z7uynQozPVvWA==} + '@rollup/rollup-freebsd-x64@4.28.1': + resolution: {integrity: sha512-m/uYasxkUevcFTeRSM9TeLyPe2QDuqtjkeoTpP9SW0XxUWfcYrGDMkO/m2tTw+4NMAF9P2fU3Mw4ahNvo7QmsQ==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.27.4': - resolution: {integrity: sha512-9OwUnK/xKw6DyRlgx8UizeqRFOfi9mf5TYCw1uolDaJSbUmBxP85DE6T4ouCMoN6pXw8ZoTeZCSEfSaYo+/s1w==} + '@rollup/rollup-linux-arm-gnueabihf@4.28.1': + resolution: {integrity: sha512-QAg11ZIt6mcmzpNE6JZBpKfJaKkqTm1A9+y9O+frdZJEuhQxiugM05gnCWiANHj4RmbgeVJpTdmKRmH/a+0QbA==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.27.4': - resolution: {integrity: sha512-Vgdo4fpuphS9V24WOV+KwkCVJ72u7idTgQaBoLRD0UxBAWTF9GWurJO9YD9yh00BzbkhpeXtm6na+MvJU7Z73A==} + '@rollup/rollup-linux-arm-musleabihf@4.28.1': + resolution: {integrity: sha512-dRP9PEBfolq1dmMcFqbEPSd9VlRuVWEGSmbxVEfiq2cs2jlZAl0YNxFzAQS2OrQmsLBLAATDMb3Z6MFv5vOcXg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.27.4': - resolution: {integrity: sha512-pleyNgyd1kkBkw2kOqlBx+0atfIIkkExOTiifoODo6qKDSpnc6WzUY5RhHdmTdIJXBdSnh6JknnYTtmQyobrVg==} + '@rollup/rollup-linux-arm64-gnu@4.28.1': + resolution: {integrity: sha512-uGr8khxO+CKT4XU8ZUH1TTEUtlktK6Kgtv0+6bIFSeiSlnGJHG1tSFSjm41uQ9sAO/5ULx9mWOz70jYLyv1QkA==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.27.4': - resolution: {integrity: sha512-caluiUXvUuVyCHr5DxL8ohaaFFzPGmgmMvwmqAITMpV/Q+tPoaHZ/PWa3t8B2WyoRcIIuu1hkaW5KkeTDNSnMA==} + '@rollup/rollup-linux-arm64-musl@4.28.1': + resolution: {integrity: sha512-QF54q8MYGAqMLrX2t7tNpi01nvq5RI59UBNx+3+37zoKX5KViPo/gk2QLhsuqok05sSCRluj0D00LzCwBikb0A==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.27.4': - resolution: {integrity: sha512-FScrpHrO60hARyHh7s1zHE97u0KlT/RECzCKAdmI+LEoC1eDh/RDji9JgFqyO+wPDb86Oa/sXkily1+oi4FzJQ==} + '@rollup/rollup-linux-loongarch64-gnu@4.28.1': + resolution: {integrity: sha512-vPul4uodvWvLhRco2w0GcyZcdyBfpfDRgNKU+p35AWEbJ/HPs1tOUrkSueVbBS0RQHAf/A+nNtDpvw95PeVKOA==} + cpu: [loong64] + os: [linux] + + '@rollup/rollup-linux-powerpc64le-gnu@4.28.1': + resolution: {integrity: sha512-pTnTdBuC2+pt1Rmm2SV7JWRqzhYpEILML4PKODqLz+C7Ou2apEV52h19CR7es+u04KlqplggmN9sqZlekg3R1A==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.27.4': - resolution: {integrity: sha512-qyyprhyGb7+RBfMPeww9FlHwKkCXdKHeGgSqmIXw9VSUtvyFZ6WZRtnxgbuz76FK7LyoN8t/eINRbPUcvXB5fw==} + '@rollup/rollup-linux-riscv64-gnu@4.28.1': + resolution: {integrity: sha512-vWXy1Nfg7TPBSuAncfInmAI/WZDd5vOklyLJDdIRKABcZWojNDY0NJwruY2AcnCLnRJKSaBgf/GiJfauu8cQZA==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.27.4': - resolution: {integrity: sha512-PFz+y2kb6tbh7m3A7nA9++eInGcDVZUACulf/KzDtovvdTizHpZaJty7Gp0lFwSQcrnebHOqxF1MaKZd7psVRg==} + '@rollup/rollup-linux-s390x-gnu@4.28.1': + resolution: {integrity: sha512-/yqC2Y53oZjb0yz8PVuGOQQNOTwxcizudunl/tFs1aLvObTclTwZ0JhXF2XcPT/zuaymemCDSuuUPXJJyqeDOg==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.27.4': - resolution: {integrity: sha512-Ni8mMtfo+o/G7DVtweXXV/Ol2TFf63KYjTtoZ5f078AUgJTmaIJnj4JFU7TK/9SVWTaSJGxPi5zMDgK4w+Ez7Q==} + '@rollup/rollup-linux-x64-gnu@4.28.1': + resolution: {integrity: sha512-fzgeABz7rrAlKYB0y2kSEiURrI0691CSL0+KXwKwhxvj92VULEDQLpBYLHpF49MSiPG4sq5CK3qHMnb9tlCjBw==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.27.4': - resolution: {integrity: sha512-5AeeAF1PB9TUzD+3cROzFTnAJAcVUGLuR8ng0E0WXGkYhp6RD6L+6szYVX+64Rs0r72019KHZS1ka1q+zU/wUw==} + '@rollup/rollup-linux-x64-musl@4.28.1': + resolution: {integrity: sha512-xQTDVzSGiMlSshpJCtudbWyRfLaNiVPXt1WgdWTwWz9n0U12cI2ZVtWe/Jgwyv/6wjL7b66uu61Vg0POWVfz4g==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.27.4': - resolution: {integrity: sha512-yOpVsA4K5qVwu2CaS3hHxluWIK5HQTjNV4tWjQXluMiiiu4pJj4BN98CvxohNCpcjMeTXk/ZMJBRbgRg8HBB6A==} + '@rollup/rollup-win32-arm64-msvc@4.28.1': + resolution: {integrity: sha512-wSXmDRVupJstFP7elGMgv+2HqXelQhuNf+IS4V+nUpNVi/GUiBgDmfwD0UGN3pcAnWsgKG3I52wMOBnk1VHr/A==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.27.4': - resolution: {integrity: sha512-KtwEJOaHAVJlxV92rNYiG9JQwQAdhBlrjNRp7P9L8Cb4Rer3in+0A+IPhJC9y68WAi9H0sX4AiG2NTsVlmqJeQ==} + '@rollup/rollup-win32-ia32-msvc@4.28.1': + resolution: {integrity: sha512-ZkyTJ/9vkgrE/Rk9vhMXhf8l9D+eAhbAVbsGsXKy2ohmJaWg0LPQLnIxRdRp/bKyr8tXuPlXhIoGlEB5XpJnGA==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.27.4': - resolution: {integrity: sha512-3j4jx1TppORdTAoBJRd+/wJRGCPC0ETWkXOecJ6PPZLj6SptXkrXcNqdj0oclbKML6FkQltdz7bBA3rUSirZug==} + '@rollup/rollup-win32-x64-msvc@4.28.1': + resolution: {integrity: sha512-ZvK2jBafvttJjoIdKm/Q/Bh7IJ1Ose9IBOwpOXcOvW3ikGTQGmKDgxTC6oCAzW6PynbkKP8+um1du81XJHZ0JA==} cpu: [x64] os: [win32] @@ -1793,8 +1798,8 @@ packages: '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} - '@types/prop-types@15.7.13': - resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==} + '@types/prop-types@15.7.14': + resolution: {integrity: sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==} '@types/react-dom@18.2.25': resolution: {integrity: sha512-o/V48vf4MQh7juIKZU2QGDfli6p1+OOi5oXx36Hffpc9adsHeXjVp8rHuPkjd8VT8sOJ2Zp05HR7CdpGTIUFUA==} @@ -1860,8 +1865,8 @@ packages: '@vitest/pretty-format@2.0.5': resolution: {integrity: sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==} - '@vitest/pretty-format@2.1.5': - resolution: {integrity: sha512-4ZOwtk2bqG5Y6xRGHcveZVr+6txkH7M2e+nPFd6guSoN638v/1XQ0K06eOpi0ptVU/2tW/pIU4IoPotY/GZ9fw==} + '@vitest/pretty-format@2.1.8': + resolution: {integrity: sha512-9HiSZ9zpqNLKlbIDRWOnAWqgcA7xu+8YxXSekhr0Ykab7PAYFkhkwoqVArPOtJhPmYeE2YHgKZlj3CP36z2AJQ==} '@vitest/runner@2.0.5': resolution: {integrity: sha512-TfRfZa6Bkk9ky4tW0z20WKXFEwwvWhRY+84CnSEtq4+3ZvDlJyY32oNTJtM7AW9ihW90tX/1Q78cb6FjoAs+ig==} @@ -2063,8 +2068,12 @@ packages: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} engines: {node: '>=8'} - call-bind@1.0.7: - resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} + call-bind-apply-helpers@1.0.0: + resolution: {integrity: sha512-CCKAP2tkPau7D3GE8+V8R6sQubA9R5foIzGp+85EXCVSCivuxBNAWqcpn72PKYiIcqoViv/kcUDpaEIMBVi1lQ==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} engines: {node: '>= 0.4'} callsites@3.1.0: @@ -2083,8 +2092,8 @@ packages: resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==} engines: {node: '>=14.16'} - caniuse-lite@1.0.30001684: - resolution: {integrity: sha512-G1LRwLIQjBQoyq0ZJGqGIJUXzJ8irpbjHLpVRXDvBEScFJ9b17sgK6vlx0GAJFE21okD7zXl08rRRUfq6HdoEQ==} + caniuse-lite@1.0.30001687: + resolution: {integrity: sha512-0S/FDhf4ZiqrTUiQ39dKeUjYRjkv7lOZU1Dgif2rIqrTzX/1wV2hfKu9TOm1IHkdSijfLswxTFzl/cvir+SLSQ==} ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} @@ -2264,8 +2273,8 @@ packages: supports-color: optional: true - debug@4.3.7: - resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} + debug@4.4.0: + resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' @@ -2351,8 +2360,8 @@ packages: eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - electron-to-chromium@1.5.64: - resolution: {integrity: sha512-IXEuxU+5ClW2IGEYFC2T7szbyVgehupCWQe5GNh+H065CD6U6IFN0s4KeAMFGNmQolRU4IV7zGBWSYMmZ8uuqQ==} + electron-to-chromium@1.5.71: + resolution: {integrity: sha512-dB68l59BI75W1BUGVTAEJy45CEVuEGy9qPVVQ8pnHyHMn36PLPPoE1mjLH+lo9rKulO3HC2OhbACI/8tCqJBcA==} embla-carousel-react@8.2.1: resolution: {integrity: sha512-YKtARk101mp00Zb6UAFkkvK+5XRo92LAtO9xLFeDnQ/XU9DqFhKnRy1CedRRj0/RSk6MTFDx3MqOQue3gJj9DA==} @@ -2418,12 +2427,12 @@ packages: es-shim-unscopables@1.0.2: resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} - es-to-primitive@1.2.1: - resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} + es-to-primitive@1.3.0: + resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} engines: {node: '>= 0.4'} - es-toolkit@1.27.0: - resolution: {integrity: sha512-ETSFA+ZJArcuSCpzD2TjAy6UHpx4E4uqFsoDg9F/nTLogrLmVVZQ+zNxco5h7cWnA1nNak07IXsLcaSMih+ZPQ==} + es-toolkit@1.29.0: + resolution: {integrity: sha512-GjTll+E6APcfAQA09D89HdT8Qn2Yb+TeDSDBTMcxAo+V+w1amAtCI15LJu4YPH/UCPoSo/F47Gr1LIM0TE0lZA==} esast-util-from-estree@2.0.0: resolution: {integrity: sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==} @@ -2460,8 +2469,8 @@ packages: eslint-import-resolver-node@0.3.9: resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} - eslint-import-resolver-typescript@3.6.3: - resolution: {integrity: sha512-ud9aw4szY9cCT1EWWdGv1L1XR6hh2PaRWif0j2QjQ0pgTY/69iw+W0Z4qZv5wHahOl8isEr+k/JnyAqNQkLkIA==} + eslint-import-resolver-typescript@3.7.0: + resolution: {integrity: sha512-Vrwyi8HHxY97K5ebydMtffsWAn1SCR9eol49eCd5fJS4O1WV7PaAjbcjmbfJJSMz/t4Mal212Uz/fQZrOB8mow==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: eslint: '*' @@ -2539,8 +2548,8 @@ packages: engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true - esm-env@1.1.4: - resolution: {integrity: sha512-oO82nKPHKkzIj/hbtuDYy/JHqBHFlMIW36SDiPCVsj87ntDLcWN+sJ1erdVryd4NxODacFTsdrIE3b7IamqbOg==} + esm-env@1.2.1: + resolution: {integrity: sha512-U9JedYYjCnadUlXk7e1Kr+aENQhtUaoaV9+gZm1T8LC/YBAPJx3NSPIAurFOC0U5vrdSevnUJS2/wUVxGwPhng==} espree@10.3.0: resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} @@ -2650,8 +2659,8 @@ packages: fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} - framer-motion@11.2.10: - resolution: {integrity: sha512-/gr3PLZUVFCc86a9MqCUboVrALscrdluzTb3yew+2/qKBU8CX6nzs918/SRBRCqaPbx0TZP10CB6yFgK2C5cYQ==} + framer-motion@11.13.1: + resolution: {integrity: sha512-F40tpGTHByhn9h3zdBQPcEro+pSLtzARcocbNqAyfBI+u9S+KZuHH/7O9+z+GEkoF3eqFxfvVw0eBDytohwqmQ==} peerDependencies: '@emotion/is-prop-valid': '*' react: ^18.0.0 @@ -2749,8 +2758,9 @@ packages: globrex@0.1.2: resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} - gopd@1.0.1: - resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} @@ -2772,12 +2782,12 @@ packages: has-property-descriptors@1.0.2: resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} - has-proto@1.0.3: - resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==} + has-proto@1.1.0: + resolution: {integrity: sha512-QLdzI9IIO1Jg7f9GT1gXpPpXArAn6cS31R1eEZqz08Gc+uQ8/XiqHWt17Fiw+2p6oTTIq5GXEpQkAlA88YRl/Q==} engines: {node: '>= 0.4'} - has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} engines: {node: '>= 0.4'} has-tostringtag@1.0.2: @@ -2910,19 +2920,20 @@ packages: resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} engines: {node: '>= 0.4'} - is-bigint@1.0.4: - resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} + is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} - is-boolean-object@1.1.2: - resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} + is-boolean-object@1.2.0: + resolution: {integrity: sha512-kR5g0+dXf/+kXnqI+lu0URKYPKgICtHGGNCDSB10AaUFj3o/HkB3u7WfpRBJGFopxxY0oH3ux7ZsDjLtK7xqvw==} engines: {node: '>= 0.4'} - is-bun-module@1.2.1: - resolution: {integrity: sha512-AmidtEM6D6NmUiLOvvU7+IePxjEjOzra2h0pSrsfSAcXwl/83zLLXDByafUJy9k/rKK0pvXMLdwKwGHlX2Ke6Q==} + is-bun-module@1.3.0: + resolution: {integrity: sha512-DgXeu5UWI0IsMQundYb5UAOzm6G2eVnarJ0byP6Tm55iZNKceD59LNPA2L4VvsScTtHcw0yEkVwSf7PC+QoLSA==} is-callable@1.2.7: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} @@ -2987,8 +2998,8 @@ packages: resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} engines: {node: '>= 0.4'} - is-number-object@1.0.7: - resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} + is-number-object@1.1.0: + resolution: {integrity: sha512-KVSZV0Dunv9DTPkhXwcZ3Q+tUc9TsaE1ZwX5J2WMvsSGS6Md8TFPun5uwh0yRdrNerI6vf/tbJxqSx4c1ZI1Lw==} engines: {node: '>= 0.4'} is-number@7.0.0: @@ -3010,8 +3021,8 @@ packages: is-potential-custom-element-name@1.0.1: resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} - is-regex@1.1.4: - resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} + is-regex@1.2.0: + resolution: {integrity: sha512-B6ohK4ZmoftlUe+uvenXSbPJFo6U37BH7oO1B3nQH8f/7h27N56s85MhUtbFJAziz5dcmuR3i8ovUl35zp8pFA==} engines: {node: '>= 0.4'} is-set@2.0.3: @@ -3026,12 +3037,12 @@ packages: resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - is-string@1.0.7: - resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} + is-string@1.1.0: + resolution: {integrity: sha512-PlfzajuF9vSo5wErv3MJAKD/nqf9ngAs1NFQYm16nUYFO2IzxJ2hcm+IOCg+EEopdykNNUhVq5cz35cAUxU8+g==} engines: {node: '>= 0.4'} - is-symbol@1.0.4: - resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} + is-symbol@1.1.0: + resolution: {integrity: sha512-qS8KkNNXUZ/I+nX6QT8ZS1/Yx0A444yhzdTKxCzKkNjQ9sHErBxJnJAgh+f5YhusYECEcjo4XcyH87hn6+ks0A==} engines: {node: '>= 0.4'} is-typed-array@1.1.13: @@ -3152,8 +3163,8 @@ packages: resolution: {integrity: sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==} engines: {node: '>=14'} - lilconfig@3.1.2: - resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==} + lilconfig@3.1.3: + resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} engines: {node: '>=14'} lines-and-columns@1.2.4: @@ -3216,11 +3227,6 @@ packages: resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} engines: {node: '>=12'} - lucide-react@0.427.0: - resolution: {integrity: sha512-lv9s6c5BDF/ccuA0EgTdskTxIe11qpwBDmzRZHJAKtp8LTewAvDvOM+pTES9IpbBuTqkjiMhOmGpJ/CB+mKjFw==} - peerDependencies: - react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc - lucide-react@0.453.0: resolution: {integrity: sha512-kL+RGZCcJi9BvJtzg2kshO192Ddy9hv3ij+cPrVPWSRzgCWCVazoQJxOjAwgK53NomL07HB7GPHW120FimjNhQ==} peerDependencies: @@ -3230,8 +3236,8 @@ packages: resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} hasBin: true - magic-string@0.30.13: - resolution: {integrity: sha512-8rYBO+MsWkgjDSOvLomYnzhdwEG51olQ4zL5KXnNJWV5MNmrb4rTZdrtkhxjnD/QyZUqR/Z/XDsUs/4ej2nx0g==} + magic-string@0.30.14: + resolution: {integrity: sha512-5c99P1WKTed11ZC0HMJOj6CDIue6F8ySu+bJL+85q1zBEIY8IklrJ1eiKC2NDRh3Ct3FcvmJPyQHb9erXMTJNw==} make-error@1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} @@ -3428,6 +3434,26 @@ packages: resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} engines: {node: '>=16 || 14 >=14.17'} + motion-dom@11.13.0: + resolution: {integrity: sha512-Oc1MLGJQ6nrvXccXA89lXtOqFyBmvHtaDcTRGT66o8Czl7nuA8BeHAd9MQV1pQKX0d2RHFBFaw5g3k23hQJt0w==} + + motion-utils@11.13.0: + resolution: {integrity: sha512-lq6TzXkH5c/ysJQBxgLXgM01qwBH1b4goTPh57VvZWJbVJZF/0SB31UWEn4EIqbVPf3au88n2rvK17SpDTja1A==} + + motion@11.13.1: + resolution: {integrity: sha512-64+QpZQv8WJJFn+tEEzX04il9s6ReA6lhKRZaxzD6SunGqoaq5g+AFVfcKWme8N83eytUOpGp7mpfJ9cyZlhAA==} + peerDependencies: + '@emotion/is-prop-valid': '*' + react: ^18.0.0 + react-dom: ^18.0.0 + peerDependenciesMeta: + '@emotion/is-prop-valid': + optional: true + react: + optional: true + react-dom: + optional: true + ms@2.1.2: resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} @@ -3437,8 +3463,8 @@ packages: mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - nanoid@3.3.7: - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + nanoid@3.3.8: + resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true @@ -3501,8 +3527,8 @@ packages: number-flow@0.3.10: resolution: {integrity: sha512-BpNMhQnRAHOFbi0giD+dMnDoaPibVW22Vl2CWfZZIlpgTtixmbPm+Cv7a7F7FrEc/dTOECMS/T8V5rltIGI0tw==} - nwsapi@2.2.13: - resolution: {integrity: sha512-cTGB9ptp9dY9A5VbMSe7fQBcl/tt22Vcqdq8+eN93rblOuE0aCFu4aZ2vMwct/2t+lFnosm8RkQW1I0Omb1UtQ==} + nwsapi@2.2.16: + resolution: {integrity: sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==} object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} @@ -3731,8 +3757,8 @@ packages: property-information@6.5.0: resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} - psl@1.13.0: - resolution: {integrity: sha512-BFwmFXiJoFqlUpZ5Qssolv15DMyc84gTBds1BjsV1BfXEo1UyyD7GsmN67n7J77uRhoSNW1AXtXKPLcBFQn9Aw==} + psl@1.15.0: + resolution: {integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==} punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} @@ -3931,8 +3957,8 @@ packages: rfdc@1.4.1: resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} - rollup@4.27.4: - resolution: {integrity: sha512-RLKxqHEMjh/RGLsDxAEsaLO3mWgyoU6x9w6n1ikAzet4B3gI2/3yP6PWY2p9QzRTh6MfEIXB3MwsOY0Iv3vNrw==} + rollup@4.28.1: + resolution: {integrity: sha512-61fXYl/qNVinKmGSTHAZ6Yy8I3YIJC/r2m9feHo6SwVAVcLT5MPwOUFe7EuURA/4m0NR8lXG4BBXuo/IZEsjMg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -4050,6 +4076,9 @@ packages: spdx-license-ids@3.0.20: resolution: {integrity: sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==} + stable-hash@0.0.4: + resolution: {integrity: sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g==} + stack-utils@2.0.6: resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} engines: {node: '>=10'} @@ -4172,8 +4201,8 @@ packages: peerDependencies: tailwindcss: '>=3.0.0 || insiders' - tailwindcss@3.4.15: - resolution: {integrity: sha512-r4MeXnfBmSOuKUWmXe6h2CcyfzJCEk4F0pptO5jlnYSIViUkVmsawj80N5h2lO3gwcmSb4n3PuN+e+GC1Guylw==} + tailwindcss@3.4.16: + resolution: {integrity: sha512-TI4Cyx7gDiZ6r44ewaJmt0o6BrMCT5aK5e0rmJ/G9Xq3w7CX/5VXl/zIPEJZFUK5VEqwByyhqNPycPlvcK4ZNw==} engines: {node: '>=14.0.0'} hasBin: true @@ -4237,8 +4266,8 @@ packages: trough@2.2.0: resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} - ts-api-utils@1.4.1: - resolution: {integrity: sha512-5RU2/lxTA3YUZxju61HO2U6EoZLvBLtmV2mbTvqyu4a/7s7RmJPT+1YekhMVsQhznRWk/czIwDUg+V8Q9ZuG4w==} + ts-api-utils@1.4.3: + resolution: {integrity: sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==} engines: {node: '>=16'} peerDependencies: typescript: '>=4.2.0' @@ -4329,8 +4358,8 @@ packages: resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} engines: {node: '>=14.16'} - type-fest@4.28.0: - resolution: {integrity: sha512-jXMwges/FVbFRe5lTMJZVEZCrO9kI9c8k0PA/z7nF3bo0JSCCLysvokFjNPIUK/itEMas10MQM+AiHoHt/T/XA==} + type-fest@4.30.0: + resolution: {integrity: sha512-G6zXWS1dLj6eagy6sVhOMQiLtJdxQBHIA9Z6HFUNLOlr6MFOgzV8wvmidtPONfPtEUv0uZsy77XJNzTAfwPDaA==} engines: {node: '>=16'} typed-array-buffer@1.0.2: @@ -4546,12 +4575,13 @@ packages: resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} engines: {node: '>=18'} - whatwg-url@14.0.0: - resolution: {integrity: sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==} + whatwg-url@14.1.0: + resolution: {integrity: sha512-jlf/foYIKywAt3x/XWKZ/3rz8OSJPiWktjmk891alJUEjiVxKX9LEO92qH3hv4aJ0mN3MWPvGMCy8jQi95xK4w==} engines: {node: '>=18'} - which-boxed-primitive@1.0.2: - resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} + which-boxed-primitive@1.1.0: + resolution: {integrity: sha512-Ei7Miu/AXe2JJ4iNF5j/UphAgRoma4trE6PtisM09bPygb3egMH3YLW/befsWb1A1AxvNSFidOFTB18XtnIIng==} + engines: {node: '>= 0.4'} which-builtin-type@1.2.0: resolution: {integrity: sha512-I+qLGQ/vucCby4tf5HsLmGueEla4ZhwTBSqaooS+Y0BuxN4Cp+okmGuV+8mXZ84KDI9BA+oklo+RzKg0ONdSUA==} @@ -4561,8 +4591,8 @@ packages: resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} engines: {node: '>= 0.4'} - which-typed-array@1.1.15: - resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==} + which-typed-array@1.1.16: + resolution: {integrity: sha512-g+N+GAWiRj66DngFwHvISJd+ITsyphZvD1vChfVg6cEdnzy53GzB3oy0fUNlvhz7H7+MiqhYr26qxQShCpKTTQ==} engines: {node: '>= 0.4'} which@2.0.2: @@ -4686,39 +4716,39 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/compat-data@7.26.2': {} + '@babel/compat-data@7.26.3': {} '@babel/core@7.26.0': dependencies: '@ampproject/remapping': 2.3.0 '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.2 + '@babel/generator': 7.26.3 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) '@babel/helpers': 7.26.0 - '@babel/parser': 7.26.2 + '@babel/parser': 7.26.3 '@babel/template': 7.25.9 - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 convert-source-map: 2.0.0 - debug: 4.3.7 + debug: 4.4.0 gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/generator@7.26.2': + '@babel/generator@7.26.3': dependencies: - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 3.0.2 '@babel/helper-compilation-targets@7.25.9': dependencies: - '@babel/compat-data': 7.26.2 + '@babel/compat-data': 7.26.3 '@babel/helper-validator-option': 7.25.9 browserslist: 4.24.2 lru-cache: 5.1.1 @@ -4726,8 +4756,8 @@ snapshots: '@babel/helper-module-imports@7.25.9': dependencies: - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color @@ -4736,7 +4766,7 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color @@ -4751,11 +4781,11 @@ snapshots: '@babel/helpers@7.26.0': dependencies: '@babel/template': 7.25.9 - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 - '@babel/parser@7.26.2': + '@babel/parser@7.26.3': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.26.0)': dependencies: @@ -4774,22 +4804,22 @@ snapshots: '@babel/template@7.25.9': dependencies: '@babel/code-frame': 7.26.2 - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 - '@babel/traverse@7.25.9': + '@babel/traverse@7.26.4': dependencies: '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.2 - '@babel/parser': 7.26.2 + '@babel/generator': 7.26.3 + '@babel/parser': 7.26.3 '@babel/template': 7.25.9 - '@babel/types': 7.26.0 - debug: 4.3.7 + '@babel/types': 7.26.3 + debug: 4.4.0 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.26.0': + '@babel/types@7.26.3': dependencies: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 @@ -4919,7 +4949,7 @@ snapshots: '@eslint/eslintrc@3.2.0': dependencies: ajv: 6.12.6 - debug: 4.3.7 + debug: 4.4.0 espree: 10.3.0 globals: 14.0.0 ignore: 5.3.2 @@ -4952,7 +4982,7 @@ snapshots: '@humanwhocodes/config-array@0.12.3': dependencies: '@humanwhocodes/object-schema': 2.0.3 - debug: 4.3.7 + debug: 4.4.0 minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -5152,7 +5182,7 @@ snapshots: '@number-flow/react@0.3.5(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: - esm-env: 1.1.4 + esm-env: 1.2.1 number-flow: 0.3.10 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) @@ -5846,58 +5876,61 @@ snapshots: '@radix-ui/rect@1.1.0': {} - '@rollup/rollup-android-arm-eabi@4.27.4': + '@rollup/rollup-android-arm-eabi@4.28.1': + optional: true + + '@rollup/rollup-android-arm64@4.28.1': optional: true - '@rollup/rollup-android-arm64@4.27.4': + '@rollup/rollup-darwin-arm64@4.28.1': optional: true - '@rollup/rollup-darwin-arm64@4.27.4': + '@rollup/rollup-darwin-x64@4.28.1': optional: true - '@rollup/rollup-darwin-x64@4.27.4': + '@rollup/rollup-freebsd-arm64@4.28.1': optional: true - '@rollup/rollup-freebsd-arm64@4.27.4': + '@rollup/rollup-freebsd-x64@4.28.1': optional: true - '@rollup/rollup-freebsd-x64@4.27.4': + '@rollup/rollup-linux-arm-gnueabihf@4.28.1': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.27.4': + '@rollup/rollup-linux-arm-musleabihf@4.28.1': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.27.4': + '@rollup/rollup-linux-arm64-gnu@4.28.1': optional: true - '@rollup/rollup-linux-arm64-gnu@4.27.4': + '@rollup/rollup-linux-arm64-musl@4.28.1': optional: true - '@rollup/rollup-linux-arm64-musl@4.27.4': + '@rollup/rollup-linux-loongarch64-gnu@4.28.1': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.27.4': + '@rollup/rollup-linux-powerpc64le-gnu@4.28.1': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.27.4': + '@rollup/rollup-linux-riscv64-gnu@4.28.1': optional: true - '@rollup/rollup-linux-s390x-gnu@4.27.4': + '@rollup/rollup-linux-s390x-gnu@4.28.1': optional: true - '@rollup/rollup-linux-x64-gnu@4.27.4': + '@rollup/rollup-linux-x64-gnu@4.28.1': optional: true - '@rollup/rollup-linux-x64-musl@4.27.4': + '@rollup/rollup-linux-x64-musl@4.28.1': optional: true - '@rollup/rollup-win32-arm64-msvc@4.27.4': + '@rollup/rollup-win32-arm64-msvc@4.28.1': optional: true - '@rollup/rollup-win32-ia32-msvc@4.27.4': + '@rollup/rollup-win32-ia32-msvc@4.28.1': optional: true - '@rollup/rollup-win32-x64-msvc@4.27.4': + '@rollup/rollup-win32-x64-msvc@4.28.1': optional: true '@rtsao/scc@1.1.0': {} @@ -5988,24 +6021,24 @@ snapshots: '@types/babel__core@7.20.5': dependencies: - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.6 '@types/babel__generator@7.6.8': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@types/babel__traverse@7.20.6': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@types/debug@4.1.12': dependencies: @@ -6041,7 +6074,7 @@ snapshots: '@types/normalize-package-data@2.4.4': {} - '@types/prop-types@15.7.13': {} + '@types/prop-types@15.7.14': {} '@types/react-dom@18.2.25': dependencies: @@ -6049,7 +6082,7 @@ snapshots: '@types/react@18.2.79': dependencies: - '@types/prop-types': 15.7.13 + '@types/prop-types': 15.7.14 csstype: 3.1.3 '@types/unist@2.0.11': {} @@ -6062,7 +6095,7 @@ snapshots: '@typescript-eslint/types': 7.2.0 '@typescript-eslint/typescript-estree': 7.2.0(typescript@5.4.5) '@typescript-eslint/visitor-keys': 7.2.0 - debug: 4.3.7 + debug: 4.4.0 eslint: 9.0.0 optionalDependencies: typescript: 5.4.5 @@ -6080,12 +6113,12 @@ snapshots: dependencies: '@typescript-eslint/types': 7.2.0 '@typescript-eslint/visitor-keys': 7.2.0 - debug: 4.3.7 + debug: 4.4.0 globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.3 semver: 7.6.3 - ts-api-utils: 1.4.1(typescript@5.4.5) + ts-api-utils: 1.4.3(typescript@5.4.5) optionalDependencies: typescript: 5.4.5 transitivePeerDependencies: @@ -6126,7 +6159,7 @@ snapshots: dependencies: tinyrainbow: 1.2.0 - '@vitest/pretty-format@2.1.5': + '@vitest/pretty-format@2.1.8': dependencies: tinyrainbow: 1.2.0 @@ -6138,7 +6171,7 @@ snapshots: '@vitest/snapshot@2.0.5': dependencies: '@vitest/pretty-format': 2.0.5 - magic-string: 0.30.13 + magic-string: 0.30.14 pathe: 1.1.2 '@vitest/spy@2.0.5': @@ -6164,7 +6197,7 @@ snapshots: agent-base@7.1.1: dependencies: - debug: 4.3.7 + debug: 4.4.0 transitivePeerDependencies: - supports-color @@ -6216,23 +6249,23 @@ snapshots: array-buffer-byte-length@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 is-array-buffer: 3.0.4 array-includes@3.1.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-object-atoms: 1.0.0 get-intrinsic: 1.2.4 - is-string: 1.0.7 + is-string: 1.1.0 array-union@2.1.0: {} array.prototype.findlast@1.2.5: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 @@ -6241,7 +6274,7 @@ snapshots: array.prototype.findlastindex@1.2.5: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 @@ -6250,21 +6283,21 @@ snapshots: array.prototype.flat@1.3.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-shim-unscopables: 1.0.2 array.prototype.flatmap@1.3.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-shim-unscopables: 1.0.2 array.prototype.tosorted@1.1.4: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 @@ -6273,7 +6306,7 @@ snapshots: arraybuffer.prototype.slice@1.0.3: dependencies: array-buffer-byte-length: 1.0.1 - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 @@ -6296,7 +6329,7 @@ snapshots: autoprefixer@10.4.19(postcss@8.4.38): dependencies: browserslist: 4.24.2 - caniuse-lite: 1.0.30001684 + caniuse-lite: 1.0.30001687 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 @@ -6338,8 +6371,8 @@ snapshots: browserslist@4.24.2: dependencies: - caniuse-lite: 1.0.30001684 - electron-to-chromium: 1.5.64 + caniuse-lite: 1.0.30001687 + electron-to-chromium: 1.5.71 node-releases: 2.0.18 update-browserslist-db: 1.1.1(browserslist@4.24.2) @@ -6349,11 +6382,15 @@ snapshots: cac@6.7.14: {} - call-bind@1.0.7: + call-bind-apply-helpers@1.0.0: dependencies: - es-define-property: 1.0.0 es-errors: 1.3.0 function-bind: 1.1.2 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.0 + es-define-property: 1.0.0 get-intrinsic: 1.2.4 set-function-length: 1.2.2 @@ -6370,7 +6407,7 @@ snapshots: camelcase@7.0.1: {} - caniuse-lite@1.0.30001684: {} + caniuse-lite@1.0.30001687: {} ccount@2.0.1: {} @@ -6507,23 +6544,23 @@ snapshots: data-urls@5.0.0: dependencies: whatwg-mimetype: 4.0.0 - whatwg-url: 14.0.0 + whatwg-url: 14.1.0 data-view-buffer@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 is-data-view: 1.0.1 data-view-byte-length@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 is-data-view: 1.0.1 data-view-byte-offset@1.0.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 is-data-view: 1.0.1 @@ -6537,7 +6574,7 @@ snapshots: dependencies: ms: 2.1.2 - debug@4.3.7: + debug@4.4.0: dependencies: ms: 2.1.3 @@ -6564,7 +6601,7 @@ snapshots: dependencies: es-define-property: 1.0.0 es-errors: 1.3.0 - gopd: 1.0.1 + gopd: 1.2.0 define-properties@1.2.1: dependencies: @@ -6604,7 +6641,7 @@ snapshots: eastasianwidth@0.2.0: {} - electron-to-chromium@1.5.64: {} + electron-to-chromium@1.5.71: {} embla-carousel-react@8.2.1(react@18.2.0): dependencies: @@ -6642,7 +6679,7 @@ snapshots: array-buffer-byte-length: 1.0.1 arraybuffer.prototype.slice: 1.0.3 available-typed-arrays: 1.0.7 - call-bind: 1.0.7 + call-bind: 1.0.8 data-view-buffer: 1.0.1 data-view-byte-length: 1.0.1 data-view-byte-offset: 1.0.0 @@ -6650,24 +6687,24 @@ snapshots: es-errors: 1.3.0 es-object-atoms: 1.0.0 es-set-tostringtag: 2.0.3 - es-to-primitive: 1.2.1 + es-to-primitive: 1.3.0 function.prototype.name: 1.1.6 get-intrinsic: 1.2.4 get-symbol-description: 1.0.2 globalthis: 1.0.4 - gopd: 1.0.1 + gopd: 1.2.0 has-property-descriptors: 1.0.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 + has-proto: 1.1.0 + has-symbols: 1.1.0 hasown: 2.0.2 internal-slot: 1.0.7 is-array-buffer: 3.0.4 is-callable: 1.2.7 is-data-view: 1.0.1 is-negative-zero: 2.0.3 - is-regex: 1.1.4 + is-regex: 1.2.0 is-shared-array-buffer: 1.0.3 - is-string: 1.0.7 + is-string: 1.1.0 is-typed-array: 1.1.13 is-weakref: 1.0.2 object-inspect: 1.13.3 @@ -6684,7 +6721,7 @@ snapshots: typed-array-byte-offset: 1.0.3 typed-array-length: 1.0.7 unbox-primitive: 1.0.2 - which-typed-array: 1.1.15 + which-typed-array: 1.1.16 es-define-property@1.0.0: dependencies: @@ -6694,7 +6731,7 @@ snapshots: es-iterator-helpers@1.2.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 @@ -6702,10 +6739,10 @@ snapshots: function-bind: 1.1.2 get-intrinsic: 1.2.4 globalthis: 1.0.4 - gopd: 1.0.1 + gopd: 1.2.0 has-property-descriptors: 1.0.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 + has-proto: 1.1.0 + has-symbols: 1.1.0 internal-slot: 1.0.7 iterator.prototype: 1.1.3 safe-array-concat: 1.1.2 @@ -6724,13 +6761,13 @@ snapshots: dependencies: hasown: 2.0.2 - es-to-primitive@1.2.1: + es-to-primitive@1.3.0: dependencies: is-callable: 1.2.7 is-date-object: 1.0.5 - is-symbol: 1.0.4 + is-symbol: 1.1.0 - es-toolkit@1.27.0: {} + es-toolkit@1.29.0: {} esast-util-from-estree@2.0.0: dependencies: @@ -6785,8 +6822,8 @@ snapshots: '@typescript-eslint/parser': 7.2.0(eslint@9.0.0)(typescript@5.4.5) eslint: 9.0.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0(eslint@9.0.0))(eslint@9.0.0) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.6.3)(eslint@9.0.0) + eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0(eslint@9.0.0))(eslint@9.0.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(eslint@9.0.0))(eslint@9.0.0))(eslint@9.0.0) eslint-plugin-jsx-a11y: 6.10.2(eslint@9.0.0) eslint-plugin-react: 7.37.2(eslint@9.0.0) eslint-plugin-react-hooks: 4.6.2(eslint@9.0.0) @@ -6805,37 +6842,34 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.6.3(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0(eslint@9.0.0))(eslint@9.0.0): + eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(eslint@9.0.0))(eslint@9.0.0): dependencies: '@nolyfill/is-core-module': 1.0.39 - debug: 4.3.7 + debug: 4.4.0 enhanced-resolve: 5.17.1 eslint: 9.0.0 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@9.0.0) fast-glob: 3.3.2 get-tsconfig: 4.8.1 - is-bun-module: 1.2.1 + is-bun-module: 1.3.0 is-glob: 4.0.3 + stable-hash: 0.0.4 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.6.3)(eslint@9.0.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(eslint@9.0.0))(eslint@9.0.0))(eslint@9.0.0) transitivePeerDependencies: - - '@typescript-eslint/parser' - - eslint-import-resolver-node - - eslint-import-resolver-webpack - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@9.0.0): + eslint-module-utils@2.12.0(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(eslint@9.0.0))(eslint@9.0.0))(eslint@9.0.0): dependencies: debug: 3.2.7 optionalDependencies: '@typescript-eslint/parser': 7.2.0(eslint@9.0.0)(typescript@5.4.5) eslint: 9.0.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.3(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.31.0(eslint@9.0.0))(eslint@9.0.0) + eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import@2.31.0(eslint@9.0.0))(eslint@9.0.0) transitivePeerDependencies: - supports-color - eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.6.3)(eslint@9.0.0): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(eslint@9.0.0))(eslint@9.0.0))(eslint@9.0.0): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -6846,7 +6880,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.0.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.3)(eslint@9.0.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.2.0(eslint@9.0.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import@2.31.0(eslint@9.0.0))(eslint@9.0.0))(eslint@9.0.0) hasown: 2.0.2 is-core-module: 2.15.1 is-glob: 4.0.3 @@ -6930,7 +6964,7 @@ snapshots: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.3.7 + debug: 4.4.0 escape-string-regexp: 4.0.0 eslint-scope: 8.2.0 eslint-visitor-keys: 4.2.0 @@ -6957,7 +6991,7 @@ snapshots: transitivePeerDependencies: - supports-color - esm-env@1.1.4: {} + esm-env@1.2.1: {} espree@10.3.0: dependencies: @@ -7090,8 +7124,10 @@ snapshots: fraction.js@4.3.7: {} - framer-motion@11.2.10(react-dom@18.2.0(react@18.2.0))(react@18.2.0): + framer-motion@11.13.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0): dependencies: + motion-dom: 11.13.0 + motion-utils: 11.13.0 tslib: 2.8.1 optionalDependencies: react: 18.2.0 @@ -7110,7 +7146,7 @@ snapshots: function.prototype.name@1.1.6: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 functions-have-names: 1.2.3 @@ -7125,8 +7161,8 @@ snapshots: dependencies: es-errors: 1.3.0 function-bind: 1.1.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 + has-proto: 1.1.0 + has-symbols: 1.1.0 hasown: 2.0.2 get-nonce@1.0.1: {} @@ -7137,7 +7173,7 @@ snapshots: get-symbol-description@1.0.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 get-intrinsic: 1.2.4 @@ -7177,7 +7213,7 @@ snapshots: globalthis@1.0.4: dependencies: define-properties: 1.2.1 - gopd: 1.0.1 + gopd: 1.2.0 globby@11.1.0: dependencies: @@ -7190,9 +7226,7 @@ snapshots: globrex@0.1.2: {} - gopd@1.0.1: - dependencies: - get-intrinsic: 1.2.4 + gopd@1.2.0: {} graceful-fs@4.2.11: {} @@ -7208,13 +7242,15 @@ snapshots: dependencies: es-define-property: 1.0.0 - has-proto@1.0.3: {} + has-proto@1.1.0: + dependencies: + call-bind: 1.0.8 - has-symbols@1.0.3: {} + has-symbols@1.1.0: {} has-tostringtag@1.0.2: dependencies: - has-symbols: 1.0.3 + has-symbols: 1.1.0 hasown@2.0.2: dependencies: @@ -7296,14 +7332,14 @@ snapshots: http-proxy-agent@7.0.2: dependencies: agent-base: 7.1.1 - debug: 4.3.7 + debug: 4.4.0 transitivePeerDependencies: - supports-color https-proxy-agent@7.0.5: dependencies: agent-base: 7.1.1 - debug: 4.3.7 + debug: 4.4.0 transitivePeerDependencies: - supports-color @@ -7339,7 +7375,7 @@ snapshots: chalk: 5.3.0 ink: 5.1.0(@types/react@18.2.79)(react@18.2.0) react: 18.2.0 - type-fest: 4.28.0 + type-fest: 4.30.0 ink@5.1.0(@types/react@18.2.79)(react@18.2.0): dependencies: @@ -7352,7 +7388,7 @@ snapshots: cli-cursor: 4.0.0 cli-truncate: 4.0.0 code-excerpt: 4.0.0 - es-toolkit: 1.27.0 + es-toolkit: 1.29.0 indent-string: 5.0.0 is-in-ci: 1.0.0 patch-console: 2.0.0 @@ -7363,7 +7399,7 @@ snapshots: slice-ansi: 7.1.0 stack-utils: 2.0.6 string-width: 7.2.0 - type-fest: 4.28.0 + type-fest: 4.30.0 widest-line: 5.0.0 wrap-ansi: 9.0.0 ws: 8.18.0 @@ -7397,7 +7433,7 @@ snapshots: is-array-buffer@3.0.4: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 get-intrinsic: 1.2.4 is-arrayish@0.2.1: {} @@ -7408,7 +7444,7 @@ snapshots: dependencies: has-tostringtag: 1.0.2 - is-bigint@1.0.4: + is-bigint@1.1.0: dependencies: has-bigints: 1.0.2 @@ -7416,12 +7452,12 @@ snapshots: dependencies: binary-extensions: 2.3.0 - is-boolean-object@1.1.2: + is-boolean-object@1.2.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 has-tostringtag: 1.0.2 - is-bun-module@1.2.1: + is-bun-module@1.3.0: dependencies: semver: 7.6.3 @@ -7445,7 +7481,7 @@ snapshots: is-finalizationregistry@1.1.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 is-fullwidth-code-point@3.0.0: {} @@ -7471,8 +7507,9 @@ snapshots: is-negative-zero@2.0.3: {} - is-number-object@1.0.7: + is-number-object@1.1.0: dependencies: + call-bind: 1.0.8 has-tostringtag: 1.0.2 is-number@7.0.0: {} @@ -7485,30 +7522,35 @@ snapshots: is-potential-custom-element-name@1.0.1: {} - is-regex@1.1.4: + is-regex@1.2.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 + gopd: 1.2.0 has-tostringtag: 1.0.2 + hasown: 2.0.2 is-set@2.0.3: {} is-shared-array-buffer@1.0.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 is-stream@3.0.0: {} - is-string@1.0.7: + is-string@1.1.0: dependencies: + call-bind: 1.0.8 has-tostringtag: 1.0.2 - is-symbol@1.0.4: + is-symbol@1.1.0: dependencies: - has-symbols: 1.0.3 + call-bind: 1.0.8 + has-symbols: 1.1.0 + safe-regex-test: 1.0.3 is-typed-array@1.1.13: dependencies: - which-typed-array: 1.1.15 + which-typed-array: 1.1.16 is-unicode-supported@2.1.0: {} @@ -7516,11 +7558,11 @@ snapshots: is-weakref@1.0.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 is-weakset@2.0.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 get-intrinsic: 1.2.4 isarray@2.0.5: {} @@ -7531,7 +7573,7 @@ snapshots: dependencies: define-properties: 1.2.1 get-intrinsic: 1.2.4 - has-symbols: 1.0.3 + has-symbols: 1.1.0 reflect.getprototypeof: 1.0.7 set-function-name: 2.0.2 @@ -7567,7 +7609,7 @@ snapshots: http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.5 is-potential-custom-element-name: 1.0.1 - nwsapi: 2.2.13 + nwsapi: 2.2.16 parse5: 7.2.1 rrweb-cssom: 0.7.1 saxes: 6.0.0 @@ -7577,7 +7619,7 @@ snapshots: webidl-conversions: 7.0.0 whatwg-encoding: 3.1.1 whatwg-mimetype: 4.0.0 - whatwg-url: 14.0.0 + whatwg-url: 14.1.0 ws: 8.18.0 xml-name-validator: 5.0.0 transitivePeerDependencies: @@ -7635,7 +7677,7 @@ snapshots: lilconfig@3.0.0: {} - lilconfig@3.1.2: {} + lilconfig@3.1.3: {} lines-and-columns@1.2.4: {} @@ -7707,17 +7749,13 @@ snapshots: lru-cache@7.18.3: {} - lucide-react@0.427.0(react@18.2.0): - dependencies: - react: 18.2.0 - lucide-react@0.453.0(react@18.2.0): dependencies: react: 18.2.0 lz-string@1.5.0: {} - magic-string@0.30.13: + magic-string@0.30.14: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 @@ -8036,7 +8074,7 @@ snapshots: micromark@4.0.1: dependencies: '@types/debug': 4.1.12 - debug: 4.3.7 + debug: 4.4.0 decode-named-character-reference: 1.0.2 devlop: 1.1.0 micromark-core-commonmark: 2.0.2 @@ -8103,6 +8141,18 @@ snapshots: minipass@7.1.2: {} + motion-dom@11.13.0: {} + + motion-utils@11.13.0: {} + + motion@11.13.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0): + dependencies: + framer-motion: 11.13.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + tslib: 2.8.1 + optionalDependencies: + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + ms@2.1.2: {} ms@2.1.3: {} @@ -8113,7 +8163,7 @@ snapshots: object-assign: 4.1.1 thenify-all: 1.6.0 - nanoid@3.3.7: {} + nanoid@3.3.8: {} natural-compare@1.4.0: {} @@ -8141,7 +8191,7 @@ snapshots: '@next/env': 14.2.3 '@swc/helpers': 0.5.5 busboy: 1.6.0 - caniuse-lite: 1.0.30001684 + caniuse-lite: 1.0.30001687 graceful-fs: 4.2.11 postcss: 8.4.31 react: 18.2.0 @@ -8187,9 +8237,9 @@ snapshots: number-flow@0.3.10: dependencies: - esm-env: 1.1.4 + esm-env: 1.2.1 - nwsapi@2.2.13: {} + nwsapi@2.2.16: {} object-assign@4.1.1: {} @@ -8201,33 +8251,33 @@ snapshots: object.assign@4.1.5: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 - has-symbols: 1.0.3 + has-symbols: 1.1.0 object-keys: 1.1.1 object.entries@1.1.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.0.0 object.fromentries@2.0.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-object-atoms: 1.0.0 object.groupby@1.0.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 object.values@1.2.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.0.0 @@ -8368,7 +8418,7 @@ snapshots: postcss-load-config@4.0.2(postcss@8.4.38)(ts-node@10.9.2(@types/node@20.12.7)(typescript@5.4.5)): dependencies: - lilconfig: 3.1.2 + lilconfig: 3.1.3 yaml: 2.6.1 optionalDependencies: postcss: 8.4.38 @@ -8376,7 +8426,7 @@ snapshots: postcss-load-config@4.0.2(postcss@8.4.49)(ts-node@10.9.2(@types/node@20.12.7)(typescript@5.7.2)): dependencies: - lilconfig: 3.1.2 + lilconfig: 3.1.3 yaml: 2.6.1 optionalDependencies: postcss: 8.4.49 @@ -8406,19 +8456,19 @@ snapshots: postcss@8.4.31: dependencies: - nanoid: 3.3.7 + nanoid: 3.3.8 picocolors: 1.1.1 source-map-js: 1.2.1 postcss@8.4.38: dependencies: - nanoid: 3.3.7 + nanoid: 3.3.8 picocolors: 1.1.1 source-map-js: 1.2.1 postcss@8.4.49: dependencies: - nanoid: 3.3.7 + nanoid: 3.3.8 picocolors: 1.1.1 source-map-js: 1.2.1 @@ -8440,7 +8490,7 @@ snapshots: property-information@6.5.0: {} - psl@1.13.0: + psl@1.15.0: dependencies: punycode: 2.3.1 @@ -8597,12 +8647,12 @@ snapshots: reflect.getprototypeof@1.0.7: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 get-intrinsic: 1.2.4 - gopd: 1.0.1 + gopd: 1.2.0 which-builtin-type: 1.2.0 regenerator-runtime@0.14.1: {} @@ -8611,7 +8661,7 @@ snapshots: regexp.prototype.flags@1.5.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-errors: 1.3.0 set-function-name: 2.0.2 @@ -8680,28 +8730,29 @@ snapshots: rfdc@1.4.1: {} - rollup@4.27.4: + rollup@4.28.1: dependencies: '@types/estree': 1.0.6 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.27.4 - '@rollup/rollup-android-arm64': 4.27.4 - '@rollup/rollup-darwin-arm64': 4.27.4 - '@rollup/rollup-darwin-x64': 4.27.4 - '@rollup/rollup-freebsd-arm64': 4.27.4 - '@rollup/rollup-freebsd-x64': 4.27.4 - '@rollup/rollup-linux-arm-gnueabihf': 4.27.4 - '@rollup/rollup-linux-arm-musleabihf': 4.27.4 - '@rollup/rollup-linux-arm64-gnu': 4.27.4 - '@rollup/rollup-linux-arm64-musl': 4.27.4 - '@rollup/rollup-linux-powerpc64le-gnu': 4.27.4 - '@rollup/rollup-linux-riscv64-gnu': 4.27.4 - '@rollup/rollup-linux-s390x-gnu': 4.27.4 - '@rollup/rollup-linux-x64-gnu': 4.27.4 - '@rollup/rollup-linux-x64-musl': 4.27.4 - '@rollup/rollup-win32-arm64-msvc': 4.27.4 - '@rollup/rollup-win32-ia32-msvc': 4.27.4 - '@rollup/rollup-win32-x64-msvc': 4.27.4 + '@rollup/rollup-android-arm-eabi': 4.28.1 + '@rollup/rollup-android-arm64': 4.28.1 + '@rollup/rollup-darwin-arm64': 4.28.1 + '@rollup/rollup-darwin-x64': 4.28.1 + '@rollup/rollup-freebsd-arm64': 4.28.1 + '@rollup/rollup-freebsd-x64': 4.28.1 + '@rollup/rollup-linux-arm-gnueabihf': 4.28.1 + '@rollup/rollup-linux-arm-musleabihf': 4.28.1 + '@rollup/rollup-linux-arm64-gnu': 4.28.1 + '@rollup/rollup-linux-arm64-musl': 4.28.1 + '@rollup/rollup-linux-loongarch64-gnu': 4.28.1 + '@rollup/rollup-linux-powerpc64le-gnu': 4.28.1 + '@rollup/rollup-linux-riscv64-gnu': 4.28.1 + '@rollup/rollup-linux-s390x-gnu': 4.28.1 + '@rollup/rollup-linux-x64-gnu': 4.28.1 + '@rollup/rollup-linux-x64-musl': 4.28.1 + '@rollup/rollup-win32-arm64-msvc': 4.28.1 + '@rollup/rollup-win32-ia32-msvc': 4.28.1 + '@rollup/rollup-win32-x64-msvc': 4.28.1 fsevents: 2.3.3 rrweb-cssom@0.7.1: {} @@ -8712,16 +8763,16 @@ snapshots: safe-array-concat@1.1.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 get-intrinsic: 1.2.4 - has-symbols: 1.0.3 + has-symbols: 1.1.0 isarray: 2.0.5 safe-regex-test@1.0.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 - is-regex: 1.1.4 + is-regex: 1.2.0 safer-buffer@2.1.2: {} @@ -8743,7 +8794,7 @@ snapshots: es-errors: 1.3.0 function-bind: 1.1.2 get-intrinsic: 1.2.4 - gopd: 1.0.1 + gopd: 1.2.0 has-property-descriptors: 1.0.2 set-function-name@2.0.2: @@ -8796,7 +8847,7 @@ snapshots: side-channel@1.0.6: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 get-intrinsic: 1.2.4 object-inspect: 1.13.3 @@ -8848,6 +8899,8 @@ snapshots: spdx-license-ids@3.0.20: {} + stable-hash@0.0.4: {} + stack-utils@2.0.6: dependencies: escape-string-regexp: 2.0.0 @@ -8880,20 +8933,20 @@ snapshots: string.prototype.includes@2.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 string.prototype.matchall@4.0.11: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 es-object-atoms: 1.0.0 get-intrinsic: 1.2.4 - gopd: 1.0.1 - has-symbols: 1.0.3 + gopd: 1.2.0 + has-symbols: 1.1.0 internal-slot: 1.0.7 regexp.prototype.flags: 1.5.3 set-function-name: 2.0.2 @@ -8906,20 +8959,20 @@ snapshots: string.prototype.trim@1.2.9: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-object-atoms: 1.0.0 string.prototype.trimend@1.0.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.0.0 string.prototype.trimstart@1.0.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.0.0 @@ -8987,7 +9040,7 @@ snapshots: dependencies: tailwindcss: 3.4.3(ts-node@10.9.2(@types/node@20.12.7)(typescript@5.4.5)) - tailwindcss@3.4.15(ts-node@10.9.2(@types/node@20.12.7)(typescript@5.7.2)): + tailwindcss@3.4.16(ts-node@10.9.2(@types/node@20.12.7)(typescript@5.7.2)): dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -8998,7 +9051,7 @@ snapshots: glob-parent: 6.0.2 is-glob: 4.0.3 jiti: 1.21.6 - lilconfig: 2.1.0 + lilconfig: 3.1.3 micromatch: 4.0.8 normalize-path: 3.0.0 object-hash: 3.0.0 @@ -9069,7 +9122,7 @@ snapshots: tough-cookie@4.1.4: dependencies: - psl: 1.13.0 + psl: 1.15.0 punycode: 2.3.1 universalify: 0.2.0 url-parse: 1.5.10 @@ -9084,7 +9137,7 @@ snapshots: trough@2.2.0: {} - ts-api-utils@1.4.1(typescript@5.4.5): + ts-api-utils@1.4.3(typescript@5.4.5): dependencies: typescript: 5.4.5 @@ -9180,37 +9233,37 @@ snapshots: type-fest@3.13.1: {} - type-fest@4.28.0: {} + type-fest@4.30.0: {} typed-array-buffer@1.0.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 is-typed-array: 1.1.13 typed-array-byte-length@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.0.1 - has-proto: 1.0.3 + gopd: 1.2.0 + has-proto: 1.1.0 is-typed-array: 1.1.13 typed-array-byte-offset@1.0.3: dependencies: available-typed-arrays: 1.0.7 - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.0.1 - has-proto: 1.0.3 + gopd: 1.2.0 + has-proto: 1.1.0 is-typed-array: 1.1.13 reflect.getprototypeof: 1.0.7 typed-array-length@1.0.7: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.0.1 + gopd: 1.2.0 is-typed-array: 1.1.13 possible-typed-array-names: 1.0.0 reflect.getprototypeof: 1.0.7 @@ -9221,10 +9274,10 @@ snapshots: unbox-primitive@1.0.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 has-bigints: 1.0.2 - has-symbols: 1.0.3 - which-boxed-primitive: 1.0.2 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.0 undici-types@5.26.5: {} @@ -9349,7 +9402,7 @@ snapshots: vite-node@2.0.5(@types/node@20.12.7): dependencies: cac: 6.7.14 - debug: 4.3.7 + debug: 4.4.0 pathe: 1.1.2 tinyrainbow: 1.2.0 vite: 5.4.11(@types/node@20.12.7) @@ -9366,7 +9419,7 @@ snapshots: vite-tsconfig-paths@5.0.1(typescript@5.4.5)(vite@5.4.11(@types/node@20.12.7)): dependencies: - debug: 4.3.7 + debug: 4.4.0 globrex: 0.1.2 tsconfck: 3.1.4(typescript@5.4.5) optionalDependencies: @@ -9379,7 +9432,7 @@ snapshots: dependencies: esbuild: 0.21.5 postcss: 8.4.49 - rollup: 4.27.4 + rollup: 4.28.1 optionalDependencies: '@types/node': 20.12.7 fsevents: 2.3.3 @@ -9388,15 +9441,15 @@ snapshots: dependencies: '@ampproject/remapping': 2.3.0 '@vitest/expect': 2.0.5 - '@vitest/pretty-format': 2.1.5 + '@vitest/pretty-format': 2.1.8 '@vitest/runner': 2.0.5 '@vitest/snapshot': 2.0.5 '@vitest/spy': 2.0.5 '@vitest/utils': 2.0.5 chai: 5.1.2 - debug: 4.3.7 + debug: 4.4.0 execa: 8.0.1 - magic-string: 0.30.13 + magic-string: 0.30.14 pathe: 1.1.2 std-env: 3.8.0 tinybench: 2.9.0 @@ -9430,34 +9483,34 @@ snapshots: whatwg-mimetype@4.0.0: {} - whatwg-url@14.0.0: + whatwg-url@14.1.0: dependencies: tr46: 5.0.0 webidl-conversions: 7.0.0 - which-boxed-primitive@1.0.2: + which-boxed-primitive@1.1.0: dependencies: - is-bigint: 1.0.4 - is-boolean-object: 1.1.2 - is-number-object: 1.0.7 - is-string: 1.0.7 - is-symbol: 1.0.4 + is-bigint: 1.1.0 + is-boolean-object: 1.2.0 + is-number-object: 1.1.0 + is-string: 1.1.0 + is-symbol: 1.1.0 which-builtin-type@1.2.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 function.prototype.name: 1.1.6 has-tostringtag: 1.0.2 is-async-function: 2.0.0 is-date-object: 1.0.5 is-finalizationregistry: 1.1.0 is-generator-function: 1.0.10 - is-regex: 1.1.4 + is-regex: 1.2.0 is-weakref: 1.0.2 isarray: 2.0.5 - which-boxed-primitive: 1.0.2 + which-boxed-primitive: 1.1.0 which-collection: 1.0.2 - which-typed-array: 1.1.15 + which-typed-array: 1.1.16 which-collection@1.0.2: dependencies: @@ -9466,12 +9519,12 @@ snapshots: is-weakmap: 2.0.2 is-weakset: 2.0.3 - which-typed-array@1.1.15: + which-typed-array@1.1.16: dependencies: available-typed-arrays: 1.0.7 - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.0.1 + gopd: 1.2.0 has-tostringtag: 1.0.2 which@2.0.2: diff --git a/turbo.json b/turbo.json index ed3c4ccb..92dc221c 100644 --- a/turbo.json +++ b/turbo.json @@ -5,6 +5,9 @@ "dependsOn": [ "^build" ], + "env": [ + "*" + ], "outputs": [ "dist/**", ".next/**",