@m5kdev/web-ui 0.6.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/animations/card.motion.d.ts +7 -2
- package/dist/src/animations/card.motion.js +25 -6
- package/dist/src/animations/card.motion.js.map +1 -0
- package/dist/src/components/AvatarUpload.d.ts +14 -5
- package/dist/src/components/AvatarUpload.js +105 -63
- package/dist/src/components/AvatarUpload.js.map +1 -0
- package/dist/src/components/Button.d.ts +14 -4
- package/dist/src/components/Button.js +13 -4
- package/dist/src/components/Button.js.map +1 -0
- package/dist/src/components/Calendar.d.ts +33 -31
- package/dist/src/components/Calendar.js +14 -6
- package/dist/src/components/Calendar.js.map +1 -0
- package/dist/src/components/{Calendar.css → Calendar2.css} +757 -684
- package/dist/src/components/CardsSelect.d.ts +25 -21
- package/dist/src/components/CardsSelect.js +75 -42
- package/dist/src/components/CardsSelect.js.map +1 -0
- package/dist/src/components/CollapsibleSidebarMenuItem.d.ts +22 -9
- package/dist/src/components/CollapsibleSidebarMenuItem.js +31 -8
- package/dist/src/components/CollapsibleSidebarMenuItem.js.map +1 -0
- package/dist/src/components/ColorPicker.d.ts +15 -4
- package/dist/src/components/ColorPicker.js +46 -16
- package/dist/src/components/ColorPicker.js.map +1 -0
- package/dist/src/components/CopyButton.d.ts +18 -6
- package/dist/src/components/CopyButton.js +28 -19
- package/dist/src/components/CopyButton.js.map +1 -0
- package/dist/src/components/CropDialog.d.ts +20 -8
- package/dist/src/components/CropDialog.js +108 -62
- package/dist/src/components/CropDialog.js.map +1 -0
- package/dist/src/components/DialogProvider.d.ts +22 -14
- package/dist/src/components/DialogProvider.js +67 -45
- package/dist/src/components/DialogProvider.js.map +1 -0
- package/dist/src/components/ErrorFallback.d.ts +13 -4
- package/dist/src/components/ErrorFallback.js +29 -4
- package/dist/src/components/ErrorFallback.js.map +1 -0
- package/dist/src/components/FileDropzone.d.ts +12 -4
- package/dist/src/components/FileDropzone.js +98 -60
- package/dist/src/components/FileDropzone.js.map +1 -0
- package/dist/src/components/MultiSelectDropdown.d.ts +25 -22
- package/dist/src/components/MultiSelectDropdown.js +99 -49
- package/dist/src/components/MultiSelectDropdown.js.map +1 -0
- package/dist/src/components/Orb.d.ts +17 -6
- package/dist/src/components/Orb.js +263 -255
- package/dist/src/components/Orb.js.map +1 -0
- package/dist/src/components/PageAlert.d.ts +20 -15
- package/dist/src/components/PageAlert.js +67 -39
- package/dist/src/components/PageAlert.js.map +1 -0
- package/dist/src/components/SelectChips.d.ts +21 -10
- package/dist/src/components/SelectChips.js +21 -9
- package/dist/src/components/SelectChips.js.map +1 -0
- package/dist/src/components/SidebarItem.d.ts +18 -7
- package/dist/src/components/SidebarItem.js +16 -4
- package/dist/src/components/SidebarItem.js.map +1 -0
- package/dist/src/components/Steps.d.ts +21 -16
- package/dist/src/components/Steps.js +193 -27
- package/dist/src/components/Steps.js.map +1 -0
- package/dist/src/components/TablerIconPicker.d.ts +13 -2
- package/dist/src/components/TablerIconPicker.js +4254 -4234
- package/dist/src/components/TablerIconPicker.js.map +1 -0
- package/dist/src/components/app-header.d.ts +14 -6
- package/dist/src/components/app-header.js +27 -6
- package/dist/src/components/app-header.js.map +1 -0
- package/dist/src/components/blur-card.d.ts +25 -11
- package/dist/src/components/blur-card.js +134 -31
- package/dist/src/components/blur-card.js.map +1 -0
- package/dist/src/components/features-section-demo-1.d.ts +22 -6
- package/dist/src/components/features-section-demo-1.js +119 -47
- package/dist/src/components/features-section-demo-1.js.map +1 -0
- package/dist/src/components/features-section-demo-2.d.ts +7 -1
- package/dist/src/components/features-section-demo-2.js +80 -49
- package/dist/src/components/features-section-demo-2.js.map +1 -0
- package/dist/src/components/features-section-demo-3.d.ts +16 -8
- package/dist/src/components/features-section-demo-3.js +239 -103
- package/dist/src/components/features-section-demo-3.js.map +1 -0
- package/dist/src/components/mode-toggle.d.ts +7 -1
- package/dist/src/components/mode-toggle.js +42 -7
- package/dist/src/components/mode-toggle.js.map +1 -0
- package/dist/src/components/nav-main.d.ts +20 -12
- package/dist/src/components/nav-main.js +31 -5
- package/dist/src/components/nav-main.js.map +1 -0
- package/dist/src/components/pricing-cards.d.ts +7 -1
- package/dist/src/components/pricing-cards.js +125 -24
- package/dist/src/components/pricing-cards.js.map +1 -0
- package/dist/src/components/shared/ButtonCopy.d.ts +17 -6
- package/dist/src/components/shared/ButtonCopy.js +31 -20
- package/dist/src/components/shared/ButtonCopy.js.map +1 -0
- package/dist/src/components/team-switcher.d.ts +16 -8
- package/dist/src/components/team-switcher.js +70 -8
- package/dist/src/components/team-switcher.js.map +1 -0
- package/dist/src/components/theme-provider.d.ts +18 -8
- package/dist/src/components/theme-provider.js +42 -38
- package/dist/src/components/theme-provider.js.map +1 -0
- package/dist/src/components/typewriter.d.ts +35 -14
- package/dist/src/components/typewriter.js +45 -36
- package/dist/src/components/typewriter.js.map +1 -0
- package/dist/src/components/ui/alert-dialog.d.ts +48 -13
- package/dist/src/components/ui/alert-dialog.js +58 -15
- package/dist/src/components/ui/alert-dialog.js.map +1 -0
- package/dist/src/components/ui/alert.d.ts +24 -8
- package/dist/src/components/ui/alert.js +28 -15
- package/dist/src/components/ui/alert.js.map +1 -0
- package/dist/src/components/ui/avatar.d.ts +9 -5
- package/dist/src/components/ui/avatar.js +23 -7
- package/dist/src/components/ui/avatar.js.map +1 -0
- package/dist/src/components/ui/badge.d.ts +17 -8
- package/dist/src/components/ui/badge.js +17 -14
- package/dist/src/components/ui/badge.js.map +1 -0
- package/dist/src/components/ui/bento-grid.d.ts +26 -11
- package/dist/src/components/ui/bento-grid.js +30 -6
- package/dist/src/components/ui/bento-grid.js.map +1 -0
- package/dist/src/components/ui/bento-grid2.d.ts +30 -14
- package/dist/src/components/ui/bento-grid2.js +45 -9
- package/dist/src/components/ui/bento-grid2.js.map +1 -0
- package/dist/src/components/ui/breadcrumb.d.ts +27 -15
- package/dist/src/components/ui/breadcrumb.js +54 -14
- package/dist/src/components/ui/breadcrumb.js.map +1 -0
- package/dist/src/components/ui/button.d.ts +14 -9
- package/dist/src/components/ui/button.js +37 -26
- package/dist/src/components/ui/button.js.map +1 -0
- package/dist/src/components/ui/card.d.ts +12 -8
- package/dist/src/components/ui/card.js +38 -10
- package/dist/src/components/ui/card.js.map +1 -0
- package/dist/src/components/ui/checkbox.d.ts +6 -2
- package/dist/src/components/ui/checkbox.js +17 -5
- package/dist/src/components/ui/checkbox.js.map +1 -0
- package/dist/src/components/ui/collapsible.d.ts +9 -4
- package/dist/src/components/ui/collapsible.js +5 -1
- package/dist/src/components/ui/collapsible.js.map +1 -0
- package/dist/src/components/ui/dialog.d.ts +44 -12
- package/dist/src/components/ui/dialog.js +64 -14
- package/dist/src/components/ui/dialog.js.map +1 -0
- package/dist/src/components/ui/dropdown-menu.d.ts +32 -24
- package/dist/src/components/ui/dropdown-menu.js +64 -14
- package/dist/src/components/ui/dropdown-menu.js.map +1 -0
- package/dist/src/components/ui/floating-navbar.d.ts +18 -9
- package/dist/src/components/ui/floating-navbar.js +49 -35
- package/dist/src/components/ui/floating-navbar.js.map +1 -0
- package/dist/src/components/ui/form.d.ts +30 -21
- package/dist/src/components/ui/form.js +76 -44
- package/dist/src/components/ui/form.js.map +1 -0
- package/dist/src/components/ui/image.d.ts +6 -2
- package/dist/src/components/ui/image.js +51 -11
- package/dist/src/components/ui/image.js.map +1 -0
- package/dist/src/components/ui/input.d.ts +6 -2
- package/dist/src/components/ui/input.js +14 -5
- package/dist/src/components/ui/input.js.map +1 -0
- package/dist/src/components/ui/label.d.ts +8 -3
- package/dist/src/components/ui/label.js +13 -5
- package/dist/src/components/ui/label.js.map +1 -0
- package/dist/src/components/ui/pagination.d.ts +39 -12
- package/dist/src/components/ui/pagination.js +64 -14
- package/dist/src/components/ui/pagination.js.map +1 -0
- package/dist/src/components/ui/progress.d.ts +6 -2
- package/dist/src/components/ui/progress.js +16 -4
- package/dist/src/components/ui/progress.js.map +1 -0
- package/dist/src/components/ui/resizable-navbar.d.ts +84 -43
- package/dist/src/components/ui/resizable-navbar.js +126 -74
- package/dist/src/components/ui/resizable-navbar.js.map +1 -0
- package/dist/src/components/ui/segment-control.d.ts +10 -7
- package/dist/src/components/ui/segment-control.js +83 -38
- package/dist/src/components/ui/segment-control.js.map +1 -0
- package/dist/src/components/ui/select.d.ts +16 -12
- package/dist/src/components/ui/select.js +63 -14
- package/dist/src/components/ui/select.js.map +1 -0
- package/dist/src/components/ui/separator.d.ts +6 -2
- package/dist/src/components/ui/separator.js +14 -4
- package/dist/src/components/ui/separator.js.map +1 -0
- package/dist/src/components/ui/sheet.d.ts +30 -19
- package/dist/src/components/ui/sheet.js +52 -23
- package/dist/src/components/ui/sheet.js.map +1 -0
- package/dist/src/components/ui/sidebar.d.ts +69 -62
- package/dist/src/components/ui/sidebar.js +326 -171
- package/dist/src/components/ui/sidebar.js.map +1 -0
- package/dist/src/components/ui/skeleton.d.ts +9 -1
- package/dist/src/components/ui/skeleton.js +10 -3
- package/dist/src/components/ui/skeleton.js.map +1 -0
- package/dist/src/components/ui/slider.d.ts +6 -2
- package/dist/src/components/ui/slider.js +16 -4
- package/dist/src/components/ui/slider.js.map +1 -0
- package/dist/src/components/ui/sonner.d.ts +10 -3
- package/dist/src/components/ui/sonner.js +18 -11
- package/dist/src/components/ui/sonner.js.map +1 -0
- package/dist/src/components/ui/spinner.d.ts +21 -10
- package/dist/src/components/ui/spinner.js +24 -24
- package/dist/src/components/ui/spinner.js.map +1 -0
- package/dist/src/components/ui/switch.d.ts +6 -2
- package/dist/src/components/ui/switch.js +13 -4
- package/dist/src/components/ui/switch.js.map +1 -0
- package/dist/src/components/ui/table.d.ts +39 -10
- package/dist/src/components/ui/table.js +51 -11
- package/dist/src/components/ui/table.js.map +1 -0
- package/dist/src/components/ui/tabs.d.ts +23 -6
- package/dist/src/components/ui/tabs.js +27 -7
- package/dist/src/components/ui/tabs.js.map +1 -0
- package/dist/src/components/ui/textarea.d.ts +10 -2
- package/dist/src/components/ui/textarea.js +11 -3
- package/dist/src/components/ui/textarea.js.map +1 -0
- package/dist/src/components/ui/timeline.d.ts +16 -9
- package/dist/src/components/ui/timeline.js +87 -24
- package/dist/src/components/ui/timeline.js.map +1 -0
- package/dist/src/components/ui/toast.d.ts +19 -14
- package/dist/src/components/ui/toast.js +48 -22
- package/dist/src/components/ui/toast.js.map +1 -0
- package/dist/src/components/ui/tooltip.d.ts +23 -6
- package/dist/src/components/ui/tooltip.js +27 -7
- package/dist/src/components/ui/tooltip.js.map +1 -0
- package/dist/src/components/ui/typewriter-effect.d.ts +28 -14
- package/dist/src/components/ui/typewriter-effect.js +102 -72
- package/dist/src/components/ui/typewriter-effect.js.map +1 -0
- package/dist/src/hooks/use-mobile.d.ts +5 -1
- package/dist/src/hooks/use-mobile.js +18 -13
- package/dist/src/hooks/use-mobile.js.map +1 -0
- package/dist/src/hooks/useDialog.d.ts +8 -4
- package/dist/src/hooks/useDialog.js +24 -20
- package/dist/src/hooks/useDialog.js.map +1 -0
- package/dist/src/icons/GoogleIcon.d.ts +9 -5
- package/dist/src/icons/GoogleIcon.js +32 -3
- package/dist/src/icons/GoogleIcon.js.map +1 -0
- package/dist/src/icons/LinkedInIcon.d.ts +9 -5
- package/dist/src/icons/LinkedInIcon.js +27 -3
- package/dist/src/icons/LinkedInIcon.js.map +1 -0
- package/dist/src/icons/MicrosoftIcon.d.ts +9 -5
- package/dist/src/icons/MicrosoftIcon.js +31 -3
- package/dist/src/icons/MicrosoftIcon.js.map +1 -0
- package/dist/src/lib/chatwoot.d.ts +19 -10
- package/dist/src/lib/chatwoot.js +25 -27
- package/dist/src/lib/chatwoot.js.map +1 -0
- package/dist/src/lib/utils.d.ts +7 -2
- package/dist/src/lib/utils.js +7 -2
- package/dist/src/lib/utils.js.map +1 -0
- package/dist/src/modules/app/components/AppLoader.d.ts +8 -2
- package/dist/src/modules/app/components/AppLoader.js +14 -3
- package/dist/src/modules/app/components/AppLoader.js.map +1 -0
- package/dist/src/modules/app/components/AppShell.d.ts +15 -6
- package/dist/src/modules/app/components/AppShell.js +14 -5
- package/dist/src/modules/app/components/AppShell.js.map +1 -0
- package/dist/src/modules/app/components/AppSidebar.d.ts +16 -6
- package/dist/src/modules/app/components/AppSidebar.js +17 -4
- package/dist/src/modules/app/components/AppSidebar.js.map +1 -0
- package/dist/src/modules/app/components/AppSidebarContent.d.ts +22 -13
- package/dist/src/modules/app/components/AppSidebarContent.js +34 -5
- package/dist/src/modules/app/components/AppSidebarContent.js.map +1 -0
- package/dist/src/modules/app/components/AppSidebarHeader.d.ts +18 -8
- package/dist/src/modules/app/components/AppSidebarHeader.js +37 -6
- package/dist/src/modules/app/components/AppSidebarHeader.js.map +1 -0
- package/dist/src/modules/app/components/AppSidebarInvites.d.ts +11 -3
- package/dist/src/modules/app/components/AppSidebarInvites.js +39 -8
- package/dist/src/modules/app/components/AppSidebarInvites.js.map +1 -0
- package/dist/src/modules/app/components/AppSidebarUser.d.ts +20 -10
- package/dist/src/modules/app/components/AppSidebarUser.js +121 -12
- package/dist/src/modules/app/components/AppSidebarUser.js.map +1 -0
- package/dist/src/modules/auth/components/AdminUserManagement.d.ts +11 -4
- package/dist/src/modules/auth/components/AdminUserManagement.js +970 -418
- package/dist/src/modules/auth/components/AdminUserManagement.js.map +1 -0
- package/dist/src/modules/auth/components/AdminWaitlist.d.ts +11 -4
- package/dist/src/modules/auth/components/AdminWaitlist.js +284 -115
- package/dist/src/modules/auth/components/AdminWaitlist.js.map +1 -0
- package/dist/src/modules/auth/components/AuthLayout.d.ts +12 -4
- package/dist/src/modules/auth/components/AuthLayout.js +17 -3
- package/dist/src/modules/auth/components/AuthLayout.js.map +1 -0
- package/dist/src/modules/auth/components/AuthProviders.d.ts +17 -6
- package/dist/src/modules/auth/components/AuthProviders.js +80 -41
- package/dist/src/modules/auth/components/AuthProviders.js.map +1 -0
- package/dist/src/modules/auth/components/AuthRouter.d.ts +16 -7
- package/dist/src/modules/auth/components/AuthRouter.js +46 -10
- package/dist/src/modules/auth/components/AuthRouter.js.map +1 -0
- package/dist/src/modules/auth/components/ClaimAccountRoute.d.ts +12 -4
- package/dist/src/modules/auth/components/ClaimAccountRoute.js +202 -139
- package/dist/src/modules/auth/components/ClaimAccountRoute.js.map +1 -0
- package/dist/src/modules/auth/components/ErrorAuthRoute.d.ts +7 -1
- package/dist/src/modules/auth/components/ErrorAuthRoute.js +125 -89
- package/dist/src/modules/auth/components/ErrorAuthRoute.js.map +1 -0
- package/dist/src/modules/auth/components/ForgotPasswordForm.d.ts +7 -1
- package/dist/src/modules/auth/components/ForgotPasswordForm.js +49 -23
- package/dist/src/modules/auth/components/ForgotPasswordForm.js.map +1 -0
- package/dist/src/modules/auth/components/ForgotPasswordRoute.d.ts +7 -1
- package/dist/src/modules/auth/components/ForgotPasswordRoute.js +34 -6
- package/dist/src/modules/auth/components/ForgotPasswordRoute.js.map +1 -0
- package/dist/src/modules/auth/components/InviteFriends.d.ts +12 -4
- package/dist/src/modules/auth/components/InviteFriends.js +275 -69
- package/dist/src/modules/auth/components/InviteFriends.js.map +1 -0
- package/dist/src/modules/auth/components/LastUsedBadge.d.ts +17 -5
- package/dist/src/modules/auth/components/LastUsedBadge.js +16 -6
- package/dist/src/modules/auth/components/LastUsedBadge.js.map +1 -0
- package/dist/src/modules/auth/components/LoginForm.d.ts +11 -3
- package/dist/src/modules/auth/components/LoginForm.js +107 -40
- package/dist/src/modules/auth/components/LoginForm.js.map +1 -0
- package/dist/src/modules/auth/components/LoginRoute.d.ts +11 -3
- package/dist/src/modules/auth/components/LoginRoute.js +41 -8
- package/dist/src/modules/auth/components/LoginRoute.js.map +1 -0
- package/dist/src/modules/auth/components/LogoutRoute.d.ts +7 -1
- package/dist/src/modules/auth/components/LogoutRoute.js +18 -12
- package/dist/src/modules/auth/components/LogoutRoute.js.map +1 -0
- package/dist/src/modules/auth/components/OrganizationAcceptInvitationRoute.d.ts +21 -8
- package/dist/src/modules/auth/components/OrganizationAcceptInvitationRoute.js +107 -97
- package/dist/src/modules/auth/components/OrganizationAcceptInvitationRoute.js.map +1 -0
- package/dist/src/modules/auth/components/OrganizationMembersRoute.d.ts +58 -48
- package/dist/src/modules/auth/components/OrganizationMembersRoute.js +448 -349
- package/dist/src/modules/auth/components/OrganizationMembersRoute.js.map +1 -0
- package/dist/src/modules/auth/components/OrganizationPreferences.d.ts +27 -16
- package/dist/src/modules/auth/components/OrganizationPreferences.js +129 -124
- package/dist/src/modules/auth/components/OrganizationPreferences.js.map +1 -0
- package/dist/src/modules/auth/components/OrganizationSettingsRoute.d.ts +27 -18
- package/dist/src/modules/auth/components/OrganizationSettingsRoute.js +184 -144
- package/dist/src/modules/auth/components/OrganizationSettingsRoute.js.map +1 -0
- package/dist/src/modules/auth/components/OrganizationSwitcher.d.ts +17 -6
- package/dist/src/modules/auth/components/OrganizationSwitcher.js +91 -69
- package/dist/src/modules/auth/components/OrganizationSwitcher.js.map +1 -0
- package/dist/src/modules/auth/components/PreferencesEditor.d.ts +44 -33
- package/dist/src/modules/auth/components/PreferencesEditor.js +82 -58
- package/dist/src/modules/auth/components/PreferencesEditor.js.map +1 -0
- package/dist/src/modules/auth/components/ProfileRoute.d.ts +7 -1
- package/dist/src/modules/auth/components/ProfileRoute.js +79 -36
- package/dist/src/modules/auth/components/ProfileRoute.js.map +1 -0
- package/dist/src/modules/auth/components/RangeNuqsDatePicker.d.ts +44 -30
- package/dist/src/modules/auth/components/RangeNuqsDatePicker.js +234 -242
- package/dist/src/modules/auth/components/RangeNuqsDatePicker.js.map +1 -0
- package/dist/src/modules/auth/components/ResetPasswordForm.d.ts +7 -1
- package/dist/src/modules/auth/components/ResetPasswordForm.js +97 -35
- package/dist/src/modules/auth/components/ResetPasswordForm.js.map +1 -0
- package/dist/src/modules/auth/components/ResetPasswordRoute.d.ts +7 -1
- package/dist/src/modules/auth/components/ResetPasswordRoute.js +34 -6
- package/dist/src/modules/auth/components/ResetPasswordRoute.js.map +1 -0
- package/dist/src/modules/auth/components/SignupFormRoute.d.ts +15 -5
- package/dist/src/modules/auth/components/SignupFormRoute.js +142 -99
- package/dist/src/modules/auth/components/SignupFormRoute.js.map +1 -0
- package/dist/src/modules/auth/components/SignupRoute.d.ts +13 -5
- package/dist/src/modules/auth/components/SignupRoute.js +59 -13
- package/dist/src/modules/auth/components/SignupRoute.js.map +1 -0
- package/dist/src/modules/auth/components/UserPreferences.d.ts +22 -11
- package/dist/src/modules/auth/components/UserPreferences.js +24 -12
- package/dist/src/modules/auth/components/UserPreferences.js.map +1 -0
- package/dist/src/modules/auth/components/WaitlistCard.d.ts +11 -4
- package/dist/src/modules/auth/components/WaitlistCard.js +63 -28
- package/dist/src/modules/auth/components/WaitlistCard.js.map +1 -0
- package/dist/src/modules/auth/components/WaitlistCodeValidation.d.ts +13 -5
- package/dist/src/modules/auth/components/WaitlistCodeValidation.js +42 -40
- package/dist/src/modules/auth/components/WaitlistCodeValidation.js.map +1 -0
- package/dist/src/modules/billing/components/BillingBetaPage.d.ts +15 -6
- package/dist/src/modules/billing/components/BillingBetaPage.js +155 -8
- package/dist/src/modules/billing/components/BillingBetaPage.js.map +1 -0
- package/dist/src/modules/billing/components/BillingInvoicePage.d.ts +13 -5
- package/dist/src/modules/billing/components/BillingInvoicePage.js +160 -30
- package/dist/src/modules/billing/components/BillingInvoicePage.js.map +1 -0
- package/dist/src/modules/billing/components/BillingPlanSelect.d.ts +11 -4
- package/dist/src/modules/billing/components/BillingPlanSelect.js +10 -7
- package/dist/src/modules/billing/components/BillingPlanSelect.js.map +1 -0
- package/dist/src/modules/billing/components/BillingRouter.d.ts +15 -7
- package/dist/src/modules/billing/components/BillingRouter.js +19 -6
- package/dist/src/modules/billing/components/BillingRouter.js.map +1 -0
- package/dist/src/modules/billing/components/BillingSinglePlanSelect.d.ts +17 -7
- package/dist/src/modules/billing/components/BillingSinglePlanSelect.js +163 -42
- package/dist/src/modules/billing/components/BillingSinglePlanSelect.js.map +1 -0
- package/dist/src/modules/table/components/ColumnOrderAndVisibility.d.ts +18 -8
- package/dist/src/modules/table/components/ColumnOrderAndVisibility.js +81 -38
- package/dist/src/modules/table/components/ColumnOrderAndVisibility.js.map +1 -0
- package/dist/src/modules/table/components/NuqsTable.d.ts +33 -21
- package/dist/src/modules/table/components/NuqsTable.js +295 -221
- package/dist/src/modules/table/components/NuqsTable.js.map +1 -0
- package/dist/src/modules/table/components/TableFiltering.d.ts +33 -21
- package/dist/src/modules/table/components/TableFiltering.js +408 -226
- package/dist/src/modules/table/components/TableFiltering.js.map +1 -0
- package/dist/src/modules/table/components/TableGroupBy.d.ts +18 -8
- package/dist/src/modules/table/components/TableGroupBy.js +56 -16
- package/dist/src/modules/table/components/TableGroupBy.js.map +1 -0
- package/dist/src/modules/table/components/TablePagination.d.ts +17 -7
- package/dist/src/modules/table/components/TablePagination.js +64 -32
- package/dist/src/modules/table/components/TablePagination.js.map +1 -0
- package/dist/src/modules/table/components/table.types.d.ts +15 -10
- package/dist/src/modules/table/components/table.types.js +0 -1
- package/dist/src/modules/table/filterTransformers.d.ts +35 -30
- package/dist/src/modules/table/filterTransformers.js +198 -261
- package/dist/src/modules/table/filterTransformers.js.map +1 -0
- package/dist/src/types.d.ts +8 -3
- package/dist/src/types.js +0 -1
- package/package.json +8 -6
- package/dist/translations/en/web-ui.json +0 -209
- package/dist/tsconfig.lib.tsbuildinfo +0 -1
|
@@ -1,23 +1,27 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import * as React$1 from "react";
|
|
2
|
+
|
|
3
|
+
//#region src/components/CardsSelect.d.ts
|
|
4
|
+
interface CardSelectItem {
|
|
5
|
+
id: string;
|
|
6
|
+
title: string;
|
|
7
|
+
description?: string;
|
|
8
|
+
content?: React$1.ReactNode;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
icon?: React$1.ReactNode;
|
|
11
|
+
onEdit?: (id: string) => void;
|
|
10
12
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
13
|
+
interface CardsSelectProps {
|
|
14
|
+
items: CardSelectItem[];
|
|
15
|
+
selectedIds: string[];
|
|
16
|
+
onSelectionChange: (selectedIds: string[]) => void;
|
|
17
|
+
maxSelections?: number;
|
|
18
|
+
className?: string;
|
|
19
|
+
cardClassName?: string;
|
|
20
|
+
showCheckbox?: boolean;
|
|
21
|
+
disabled?: boolean;
|
|
22
|
+
reversed?: boolean;
|
|
21
23
|
}
|
|
22
|
-
declare const CardsSelect: React.ForwardRefExoticComponent<CardsSelectProps & React.RefAttributes<HTMLDivElement>>;
|
|
23
|
-
|
|
24
|
+
declare const CardsSelect: React$1.ForwardRefExoticComponent<CardsSelectProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
25
|
+
//#endregion
|
|
26
|
+
export { CardSelectItem, CardsSelect, CardsSelectProps };
|
|
27
|
+
//# sourceMappingURL=CardsSelect.d.ts.map
|
|
@@ -1,46 +1,79 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { cn } from "../lib/utils.js";
|
|
2
|
+
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "./ui/card.js";
|
|
3
|
+
import * as React$1 from "react";
|
|
4
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
5
|
import { Check, Edit } from "lucide-react";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
6
|
+
//#region src/components/CardsSelect.tsx
|
|
7
|
+
const CardsSelect = React$1.forwardRef(({ items, selectedIds, onSelectionChange, maxSelections, className, cardClassName, showCheckbox = true, disabled = false, reversed = false, ...props }, ref) => {
|
|
8
|
+
const handleCardClick = (itemId) => {
|
|
9
|
+
if (disabled) return;
|
|
10
|
+
if (items.find((item) => item.id === itemId)?.disabled) return;
|
|
11
|
+
if (selectedIds.includes(itemId)) onSelectionChange(selectedIds.filter((id) => id !== itemId));
|
|
12
|
+
else if (maxSelections && selectedIds.length >= maxSelections) onSelectionChange([...selectedIds.slice(1), itemId]);
|
|
13
|
+
else onSelectionChange([...selectedIds, itemId]);
|
|
14
|
+
};
|
|
15
|
+
const getGridClasses = () => {
|
|
16
|
+
return "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-5 gap-4 justify-items-center";
|
|
17
|
+
};
|
|
18
|
+
return /* @__PURE__ */ jsx("div", {
|
|
19
|
+
ref,
|
|
20
|
+
className: cn(getGridClasses(), className),
|
|
21
|
+
...props,
|
|
22
|
+
children: items.map((item) => {
|
|
23
|
+
const isSelected = reversed ? !selectedIds.includes(item.id) : selectedIds.includes(item.id);
|
|
24
|
+
const isDisabled = disabled || item.disabled;
|
|
25
|
+
return /* @__PURE__ */ jsxs(Card, {
|
|
26
|
+
className: cn("relative cursor-pointer transition-all duration-200 hover:shadow-md w-full", isSelected && "ring-2 ring-primary bg-primary/5 border-primary", isDisabled && "opacity-50 cursor-not-allowed", !isDisabled && "hover:bg-accent/50", cardClassName),
|
|
27
|
+
onClick: () => handleCardClick(item.id),
|
|
28
|
+
children: [
|
|
29
|
+
item.onEdit && /* @__PURE__ */ jsx("div", {
|
|
30
|
+
className: "absolute top-3 left-3 z-10",
|
|
31
|
+
children: /* @__PURE__ */ jsx("button", {
|
|
32
|
+
type: "button",
|
|
33
|
+
className: cn("flex h-6 w-6 items-center justify-center rounded-md transition-colors hover:bg-accent", "text-muted-foreground hover:text-foreground"),
|
|
34
|
+
onClick: (e) => {
|
|
35
|
+
e.stopPropagation();
|
|
36
|
+
item.onEdit?.(item.id);
|
|
37
|
+
},
|
|
38
|
+
"aria-label": "Edit",
|
|
39
|
+
children: /* @__PURE__ */ jsx(Edit, { className: "h-3.5 w-3.5" })
|
|
40
|
+
})
|
|
41
|
+
}),
|
|
42
|
+
showCheckbox && /* @__PURE__ */ jsx("div", {
|
|
43
|
+
className: "absolute top-3 right-3 z-10",
|
|
44
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
45
|
+
className: cn("flex h-5 w-5 items-center justify-center rounded-full border-2 transition-colors", isSelected ? "bg-primary border-primary text-primary-foreground" : "border-muted-foreground/30 bg-background"),
|
|
46
|
+
children: isSelected && /* @__PURE__ */ jsx(Check, { className: "h-3 w-3" })
|
|
47
|
+
})
|
|
48
|
+
}),
|
|
49
|
+
item.icon && /* @__PURE__ */ jsx("div", {
|
|
50
|
+
className: "flex items-center justify-center pt-6 pb-4",
|
|
51
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
52
|
+
className: "text-5xl text-primary",
|
|
53
|
+
children: /* @__PURE__ */ jsx("i", { className: `ti ${item.icon}` })
|
|
54
|
+
})
|
|
55
|
+
}),
|
|
56
|
+
/* @__PURE__ */ jsxs(CardHeader, {
|
|
57
|
+
className: cn("pb-3 text-center", item.icon && "pt-2"),
|
|
58
|
+
children: [/* @__PURE__ */ jsx(CardTitle, {
|
|
59
|
+
className: "text-lg leading-tight",
|
|
60
|
+
children: item.title
|
|
61
|
+
}), item.description && /* @__PURE__ */ jsx(CardDescription, {
|
|
62
|
+
className: "text-sm",
|
|
63
|
+
children: item.description
|
|
64
|
+
})]
|
|
65
|
+
}),
|
|
66
|
+
item.content && /* @__PURE__ */ jsx(CardContent, {
|
|
67
|
+
className: "pt-0 text-center",
|
|
68
|
+
children: item.content
|
|
69
|
+
})
|
|
70
|
+
]
|
|
71
|
+
}, item.id);
|
|
72
|
+
})
|
|
73
|
+
});
|
|
44
74
|
});
|
|
45
75
|
CardsSelect.displayName = "CardsSelect";
|
|
76
|
+
//#endregion
|
|
46
77
|
export { CardsSelect };
|
|
78
|
+
|
|
79
|
+
//# sourceMappingURL=CardsSelect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CardsSelect.js","names":["React"],"sources":["../../../src/components/CardsSelect.tsx"],"sourcesContent":["import { Check, Edit } from \"lucide-react\";\r\nimport * as React from \"react\";\r\nimport { Card, CardContent, CardDescription, CardHeader, CardTitle } from \"./ui/card\";\r\nimport { cn } from \"../lib/utils\";\r\n\r\nexport interface CardSelectItem {\r\n id: string;\r\n title: string;\r\n description?: string;\r\n content?: React.ReactNode;\r\n disabled?: boolean;\r\n icon?: React.ReactNode;\r\n onEdit?: (id: string) => void;\r\n}\r\n\r\nexport interface CardsSelectProps {\r\n items: CardSelectItem[];\r\n selectedIds: string[];\r\n onSelectionChange: (selectedIds: string[]) => void;\r\n maxSelections?: number;\r\n className?: string;\r\n cardClassName?: string;\r\n showCheckbox?: boolean;\r\n disabled?: boolean;\r\n reversed?: boolean;\r\n}\r\n\r\nconst CardsSelect = React.forwardRef<HTMLDivElement, CardsSelectProps>(\r\n (\r\n {\r\n items,\r\n selectedIds,\r\n onSelectionChange,\r\n maxSelections,\r\n className,\r\n cardClassName,\r\n showCheckbox = true,\r\n disabled = false,\r\n reversed = false,\r\n ...props\r\n },\r\n ref\r\n ) => {\r\n const handleCardClick = (itemId: string) => {\r\n if (disabled) return;\r\n\r\n const item = items.find((item) => item.id === itemId);\r\n if (item?.disabled) return;\r\n\r\n const isSelected = selectedIds.includes(itemId);\r\n\r\n if (isSelected) {\r\n // Remove from selection\r\n onSelectionChange(selectedIds.filter((id) => id !== itemId));\r\n } else {\r\n // Add to selection\r\n if (maxSelections && selectedIds.length >= maxSelections) {\r\n // If max selections reached, replace the first selection\r\n onSelectionChange([...selectedIds.slice(1), itemId]);\r\n } else {\r\n onSelectionChange([...selectedIds, itemId]);\r\n }\r\n }\r\n };\r\n\r\n const getGridClasses = () => {\r\n return \"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-5 gap-4 justify-items-center\";\r\n };\r\n\r\n return (\r\n <div ref={ref} className={cn(getGridClasses(), className)} {...props}>\r\n {items.map((item) => {\r\n const isSelected = reversed\r\n ? !selectedIds.includes(item.id)\r\n : selectedIds.includes(item.id);\r\n const isDisabled = disabled || item.disabled;\r\n\r\n return (\r\n <Card\r\n key={item.id}\r\n className={cn(\r\n \"relative cursor-pointer transition-all duration-200 hover:shadow-md w-full\",\r\n isSelected && \"ring-2 ring-primary bg-primary/5 border-primary\",\r\n isDisabled && \"opacity-50 cursor-not-allowed\",\r\n !isDisabled && \"hover:bg-accent/50\",\r\n cardClassName\r\n )}\r\n onClick={() => handleCardClick(item.id)}\r\n >\r\n {/* Edit button */}\r\n {item.onEdit && (\r\n <div className=\"absolute top-3 left-3 z-10\">\r\n <button\r\n type=\"button\"\r\n className={cn(\r\n \"flex h-6 w-6 items-center justify-center rounded-md transition-colors hover:bg-accent\",\r\n \"text-muted-foreground hover:text-foreground\"\r\n )}\r\n onClick={(e) => {\r\n e.stopPropagation();\r\n item.onEdit?.(item.id);\r\n }}\r\n aria-label=\"Edit\"\r\n >\r\n <Edit className=\"h-3.5 w-3.5\" />\r\n </button>\r\n </div>\r\n )}\r\n\r\n {/* Selection indicator */}\r\n {showCheckbox && (\r\n <div className=\"absolute top-3 right-3 z-10\">\r\n <div\r\n className={cn(\r\n \"flex h-5 w-5 items-center justify-center rounded-full border-2 transition-colors\",\r\n isSelected\r\n ? \"bg-primary border-primary text-primary-foreground\"\r\n : \"border-muted-foreground/30 bg-background\"\r\n )}\r\n >\r\n {isSelected && <Check className=\"h-3 w-3\" />}\r\n </div>\r\n </div>\r\n )}\r\n\r\n {/* Card icon */}\r\n {item.icon && (\r\n <div className=\"flex items-center justify-center pt-6 pb-4\">\r\n <div className=\"text-5xl text-primary\">\r\n <i className={`ti ${item.icon}`} />\r\n </div>\r\n </div>\r\n )}\r\n\r\n <CardHeader className={cn(\"pb-3 text-center\", item.icon && \"pt-2\")}>\r\n <CardTitle className=\"text-lg leading-tight\">{item.title}</CardTitle>\r\n {item.description && (\r\n <CardDescription className=\"text-sm\">{item.description}</CardDescription>\r\n )}\r\n </CardHeader>\r\n\r\n {item.content && (\r\n <CardContent className=\"pt-0 text-center\">{item.content}</CardContent>\r\n )}\r\n </Card>\r\n );\r\n })}\r\n </div>\r\n );\r\n }\r\n);\r\n\r\nCardsSelect.displayName = \"CardsSelect\";\r\n\r\nexport { CardsSelect };\r\n"],"mappings":";;;;;;AA2BA,MAAM,cAAcA,QAAM,YAEtB,EACE,OACA,aACA,mBACA,eACA,WACA,eACA,eAAe,MACf,WAAW,OACX,WAAW,OACX,GAAG,SAEL,QACG;CACH,MAAM,mBAAmB,WAAmB;AAC1C,MAAI,SAAU;AAGd,MADa,MAAM,MAAM,SAAS,KAAK,OAAO,OAAO,EAC3C,SAAU;AAIpB,MAFmB,YAAY,SAAS,OAAO,CAI7C,mBAAkB,YAAY,QAAQ,OAAO,OAAO,OAAO,CAAC;WAGxD,iBAAiB,YAAY,UAAU,cAEzC,mBAAkB,CAAC,GAAG,YAAY,MAAM,EAAE,EAAE,OAAO,CAAC;MAEpD,mBAAkB,CAAC,GAAG,aAAa,OAAO,CAAC;;CAKjD,MAAM,uBAAuB;AAC3B,SAAO;;AAGT,QACE,oBAAC,OAAD;EAAU;EAAK,WAAW,GAAG,gBAAgB,EAAE,UAAU;EAAE,GAAI;YAC5D,MAAM,KAAK,SAAS;GACnB,MAAM,aAAa,WACf,CAAC,YAAY,SAAS,KAAK,GAAG,GAC9B,YAAY,SAAS,KAAK,GAAG;GACjC,MAAM,aAAa,YAAY,KAAK;AAEpC,UACE,qBAAC,MAAD;IAEE,WAAW,GACT,8EACA,cAAc,mDACd,cAAc,iCACd,CAAC,cAAc,sBACf,cACD;IACD,eAAe,gBAAgB,KAAK,GAAG;cATzC;KAYG,KAAK,UACJ,oBAAC,OAAD;MAAK,WAAU;gBACb,oBAAC,UAAD;OACE,MAAK;OACL,WAAW,GACT,yFACA,8CACD;OACD,UAAU,MAAM;AACd,UAAE,iBAAiB;AACnB,aAAK,SAAS,KAAK,GAAG;;OAExB,cAAW;iBAEX,oBAAC,MAAD,EAAM,WAAU,eAAgB,CAAA;OACzB,CAAA;MACL,CAAA;KAIP,gBACC,oBAAC,OAAD;MAAK,WAAU;gBACb,oBAAC,OAAD;OACE,WAAW,GACT,oFACA,aACI,sDACA,2CACL;iBAEA,cAAc,oBAAC,OAAD,EAAO,WAAU,WAAY,CAAA;OACxC,CAAA;MACF,CAAA;KAIP,KAAK,QACJ,oBAAC,OAAD;MAAK,WAAU;gBACb,oBAAC,OAAD;OAAK,WAAU;iBACb,oBAAC,KAAD,EAAG,WAAW,MAAM,KAAK,QAAU,CAAA;OAC/B,CAAA;MACF,CAAA;KAGR,qBAAC,YAAD;MAAY,WAAW,GAAG,oBAAoB,KAAK,QAAQ,OAAO;gBAAlE,CACE,oBAAC,WAAD;OAAW,WAAU;iBAAyB,KAAK;OAAkB,CAAA,EACpE,KAAK,eACJ,oBAAC,iBAAD;OAAiB,WAAU;iBAAW,KAAK;OAA8B,CAAA,CAEhE;;KAEZ,KAAK,WACJ,oBAAC,aAAD;MAAa,WAAU;gBAAoB,KAAK;MAAsB,CAAA;KAEnE;MAjEA,KAAK,GAiEL;IAET;EACE,CAAA;EAGX;AAED,YAAY,cAAc"}
|
|
@@ -1,9 +1,22 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import { ReactNode } from "react";
|
|
2
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
import { CollapsibleProps } from "@radix-ui/react-collapsible";
|
|
4
|
+
|
|
5
|
+
//#region src/components/CollapsibleSidebarMenuItem.d.ts
|
|
6
|
+
declare function CollapsibleSidebarMenuItem({
|
|
7
|
+
children,
|
|
8
|
+
label,
|
|
9
|
+
icon,
|
|
10
|
+
link,
|
|
11
|
+
badge,
|
|
12
|
+
...props
|
|
13
|
+
}: {
|
|
14
|
+
children: ReactNode;
|
|
15
|
+
label: string;
|
|
16
|
+
icon: ReactNode;
|
|
17
|
+
link: string;
|
|
18
|
+
badge?: ReactNode;
|
|
19
|
+
} & CollapsibleProps): _$react_jsx_runtime0.JSX.Element;
|
|
20
|
+
//#endregion
|
|
21
|
+
export { CollapsibleSidebarMenuItem };
|
|
22
|
+
//# sourceMappingURL=CollapsibleSidebarMenuItem.d.ts.map
|
|
@@ -1,11 +1,34 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "./ui/collapsible.js";
|
|
2
|
+
import { SidebarMenuButton, SidebarMenuItem, SidebarMenuSub, useSidebar } from "./ui/sidebar.js";
|
|
3
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
4
|
import { ChevronRight } from "lucide-react";
|
|
3
5
|
import { Link } from "react-router";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
//#region src/components/CollapsibleSidebarMenuItem.tsx
|
|
7
|
+
function CollapsibleSidebarMenuItem({ children, label, icon, link, badge, ...props }) {
|
|
8
|
+
const { open } = useSidebar();
|
|
9
|
+
if (!open) return /* @__PURE__ */ jsx(SidebarMenuItem, { children: /* @__PURE__ */ jsx(SidebarMenuButton, {
|
|
10
|
+
asChild: true,
|
|
11
|
+
tooltip: label,
|
|
12
|
+
children: /* @__PURE__ */ jsxs(Link, {
|
|
13
|
+
to: link,
|
|
14
|
+
children: [icon, /* @__PURE__ */ jsx("span", { children: label })]
|
|
15
|
+
})
|
|
16
|
+
}) });
|
|
17
|
+
return /* @__PURE__ */ jsx(Collapsible, {
|
|
18
|
+
asChild: true,
|
|
19
|
+
className: "group/collapsible",
|
|
20
|
+
...props,
|
|
21
|
+
children: /* @__PURE__ */ jsxs(SidebarMenuItem, { children: [/* @__PURE__ */ jsx(CollapsibleTrigger, {
|
|
22
|
+
asChild: true,
|
|
23
|
+
children: /* @__PURE__ */ jsxs(SidebarMenuButton, { children: [
|
|
24
|
+
icon,
|
|
25
|
+
badge ? badge : /* @__PURE__ */ jsx("span", { children: label }),
|
|
26
|
+
/* @__PURE__ */ jsx(ChevronRight, { className: "ml-auto transition-transform duration-200 group-data-[state=open]/collapsible:rotate-90" })
|
|
27
|
+
] })
|
|
28
|
+
}), /* @__PURE__ */ jsx(CollapsibleContent, { children: /* @__PURE__ */ jsx(SidebarMenuSub, { children }) })] })
|
|
29
|
+
});
|
|
11
30
|
}
|
|
31
|
+
//#endregion
|
|
32
|
+
export { CollapsibleSidebarMenuItem };
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=CollapsibleSidebarMenuItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CollapsibleSidebarMenuItem.js","names":[],"sources":["../../../src/components/CollapsibleSidebarMenuItem.tsx"],"sourcesContent":["import type { CollapsibleProps } from \"@radix-ui/react-collapsible\";\r\nimport { ChevronRight } from \"lucide-react\";\r\nimport type { ReactNode } from \"react\";\r\nimport { Link } from \"react-router\";\r\nimport { Collapsible, CollapsibleContent, CollapsibleTrigger } from \"./ui/collapsible\";\r\nimport {\r\n SidebarMenuButton,\r\n SidebarMenuItem,\r\n SidebarMenuSub,\r\n useSidebar,\r\n} from \"./ui/sidebar\";\r\n\r\nexport function CollapsibleSidebarMenuItem({\r\n children,\r\n label,\r\n icon,\r\n link,\r\n badge,\r\n ...props\r\n}: {\r\n children: ReactNode;\r\n label: string;\r\n icon: ReactNode;\r\n link: string;\r\n badge?: ReactNode;\r\n} & CollapsibleProps) {\r\n const { open } = useSidebar();\r\n\r\n if (!open)\r\n return (\r\n <SidebarMenuItem>\r\n <SidebarMenuButton asChild tooltip={label}>\r\n <Link to={link}>\r\n {icon}\r\n <span>{label}</span>\r\n </Link>\r\n </SidebarMenuButton>\r\n </SidebarMenuItem>\r\n );\r\n\r\n return (\r\n <Collapsible asChild className=\"group/collapsible\" {...props}>\r\n <SidebarMenuItem>\r\n <CollapsibleTrigger asChild>\r\n <SidebarMenuButton>\r\n {icon}\r\n {badge ? badge : <span>{label}</span>}\r\n <ChevronRight className=\"ml-auto transition-transform duration-200 group-data-[state=open]/collapsible:rotate-90\" />\r\n </SidebarMenuButton>\r\n </CollapsibleTrigger>\r\n <CollapsibleContent>\r\n <SidebarMenuSub>{children}</SidebarMenuSub>\r\n </CollapsibleContent>\r\n </SidebarMenuItem>\r\n </Collapsible>\r\n );\r\n}\r\n"],"mappings":";;;;;;AAYA,SAAgB,2BAA2B,EACzC,UACA,OACA,MACA,MACA,OACA,GAAG,SAOiB;CACpB,MAAM,EAAE,SAAS,YAAY;AAE7B,KAAI,CAAC,KACH,QACE,oBAAC,iBAAD,EAAA,UACE,oBAAC,mBAAD;EAAmB,SAAA;EAAQ,SAAS;YAClC,qBAAC,MAAD;GAAM,IAAI;aAAV,CACG,MACD,oBAAC,QAAD,EAAA,UAAO,OAAa,CAAA,CACf;;EACW,CAAA,EACJ,CAAA;AAGtB,QACE,oBAAC,aAAD;EAAa,SAAA;EAAQ,WAAU;EAAoB,GAAI;YACrD,qBAAC,iBAAD,EAAA,UAAA,CACE,oBAAC,oBAAD;GAAoB,SAAA;aAClB,qBAAC,mBAAD,EAAA,UAAA;IACG;IACA,QAAQ,QAAQ,oBAAC,QAAD,EAAA,UAAO,OAAa,CAAA;IACrC,oBAAC,cAAD,EAAc,WAAU,2FAA4F,CAAA;IAClG,EAAA,CAAA;GACD,CAAA,EACrB,oBAAC,oBAAD,EAAA,UACE,oBAAC,gBAAD,EAAiB,UAA0B,CAAA,EACxB,CAAA,CACL,EAAA,CAAA;EACN,CAAA"}
|
|
@@ -1,4 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { InputProps } from "@heroui/react";
|
|
2
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/components/ColorPicker.d.ts
|
|
5
|
+
declare function ColorPicker({
|
|
6
|
+
disableAlpha,
|
|
7
|
+
value,
|
|
8
|
+
onValueChange,
|
|
9
|
+
...props
|
|
10
|
+
}: InputProps & {
|
|
11
|
+
disableAlpha?: boolean;
|
|
12
|
+
}): _$react_jsx_runtime0.JSX.Element;
|
|
13
|
+
//#endregion
|
|
14
|
+
export { ColorPicker };
|
|
15
|
+
//# sourceMappingURL=ColorPicker.d.ts.map
|
|
@@ -1,21 +1,51 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Button, Input, Popover, PopoverContent, PopoverTrigger
|
|
1
|
+
import { useState } from "react";
|
|
2
|
+
import { Button, Input, Popover, PopoverContent, PopoverTrigger } from "@heroui/react";
|
|
3
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
+
import { PipetteIcon } from "lucide-react";
|
|
3
5
|
import { hexToHsva } from "@uiw/color-convert";
|
|
4
6
|
import Colorful from "@uiw/react-color-colorful";
|
|
5
|
-
|
|
6
|
-
import { useState } from "react";
|
|
7
|
+
//#region src/components/ColorPicker.tsx
|
|
7
8
|
function safeHexToHsva(hex) {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
try {
|
|
10
|
+
return hexToHsva(hex);
|
|
11
|
+
} catch (err) {
|
|
12
|
+
return {
|
|
13
|
+
h: 0,
|
|
14
|
+
s: 0,
|
|
15
|
+
v: 0,
|
|
16
|
+
a: 1
|
|
17
|
+
};
|
|
18
|
+
}
|
|
14
19
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
20
|
+
function ColorPicker({ disableAlpha = true, value, onValueChange, ...props }) {
|
|
21
|
+
const [hsva, setHsva] = useState(safeHexToHsva(value || ""));
|
|
22
|
+
return /* @__PURE__ */ jsx(Input, {
|
|
23
|
+
onValueChange,
|
|
24
|
+
value,
|
|
25
|
+
endContent: /* @__PURE__ */ jsxs(Popover, {
|
|
26
|
+
placement: "bottom",
|
|
27
|
+
children: [/* @__PURE__ */ jsx(PopoverTrigger, { children: /* @__PURE__ */ jsx(Button, {
|
|
28
|
+
isIconOnly: true,
|
|
29
|
+
"aria-label": "Pick color",
|
|
30
|
+
size: "sm",
|
|
31
|
+
variant: "light",
|
|
32
|
+
children: /* @__PURE__ */ jsx(PipetteIcon, { className: "h-4 w-4 text-foreground" })
|
|
33
|
+
}) }), /* @__PURE__ */ jsx(PopoverContent, {
|
|
34
|
+
"aria-label": "Color picker",
|
|
35
|
+
children: /* @__PURE__ */ jsx(Colorful, {
|
|
36
|
+
color: hsva,
|
|
37
|
+
disableAlpha,
|
|
38
|
+
onChange: (color) => {
|
|
39
|
+
setHsva(color.hsva);
|
|
40
|
+
onValueChange?.(color.hex);
|
|
41
|
+
}
|
|
42
|
+
})
|
|
43
|
+
})]
|
|
44
|
+
}),
|
|
45
|
+
...props
|
|
46
|
+
});
|
|
21
47
|
}
|
|
48
|
+
//#endregion
|
|
49
|
+
export { ColorPicker };
|
|
50
|
+
|
|
51
|
+
//# sourceMappingURL=ColorPicker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ColorPicker.js","names":[],"sources":["../../../src/components/ColorPicker.tsx"],"sourcesContent":["import {\r\n Button,\r\n Input,\r\n type InputProps,\r\n Popover,\r\n PopoverContent,\r\n PopoverTrigger,\r\n} from \"@heroui/react\";\r\nimport { hexToHsva } from \"@uiw/color-convert\";\r\nimport Colorful from \"@uiw/react-color-colorful\";\r\nimport { PipetteIcon } from \"lucide-react\";\r\nimport { useState } from \"react\";\r\n\r\nfunction safeHexToHsva(hex: string) {\r\n try {\r\n return hexToHsva(hex);\r\n } catch (err) {\r\n return { h: 0, s: 0, v: 0, a: 1 };\r\n }\r\n}\r\n\r\nexport function ColorPicker({\r\n disableAlpha = true,\r\n value,\r\n\r\n onValueChange,\r\n ...props\r\n}: InputProps & { disableAlpha?: boolean }) {\r\n const [hsva, setHsva] = useState(safeHexToHsva(value || \"\"));\r\n return (\r\n <Input\r\n onValueChange={onValueChange}\r\n value={value}\r\n endContent={\r\n <Popover placement=\"bottom\">\r\n <PopoverTrigger>\r\n <Button isIconOnly aria-label=\"Pick color\" size=\"sm\" variant=\"light\">\r\n <PipetteIcon className=\"h-4 w-4 text-foreground\" />\r\n </Button>\r\n </PopoverTrigger>\r\n <PopoverContent aria-label=\"Color picker\">\r\n <Colorful\r\n color={hsva}\r\n disableAlpha={disableAlpha}\r\n onChange={(color) => {\r\n setHsva(color.hsva);\r\n onValueChange?.(color.hex);\r\n }}\r\n />\r\n </PopoverContent>\r\n </Popover>\r\n }\r\n {...props}\r\n />\r\n );\r\n}\r\n"],"mappings":";;;;;;;AAaA,SAAS,cAAc,KAAa;AAClC,KAAI;AACF,SAAO,UAAU,IAAI;UACd,KAAK;AACZ,SAAO;GAAE,GAAG;GAAG,GAAG;GAAG,GAAG;GAAG,GAAG;GAAG;;;AAIrC,SAAgB,YAAY,EAC1B,eAAe,MACf,OAEA,eACA,GAAG,SACuC;CAC1C,MAAM,CAAC,MAAM,WAAW,SAAS,cAAc,SAAS,GAAG,CAAC;AAC5D,QACE,oBAAC,OAAD;EACiB;EACR;EACP,YACE,qBAAC,SAAD;GAAS,WAAU;aAAnB,CACE,oBAAC,gBAAD,EAAA,UACE,oBAAC,QAAD;IAAQ,YAAA;IAAW,cAAW;IAAa,MAAK;IAAK,SAAQ;cAC3D,oBAAC,aAAD,EAAa,WAAU,2BAA4B,CAAA;IAC5C,CAAA,EACM,CAAA,EACjB,oBAAC,gBAAD;IAAgB,cAAW;cACzB,oBAAC,UAAD;KACE,OAAO;KACO;KACd,WAAW,UAAU;AACnB,cAAQ,MAAM,KAAK;AACnB,sBAAgB,MAAM,IAAI;;KAE5B,CAAA;IACa,CAAA,CACT;;EAEZ,GAAI;EACJ,CAAA"}
|
|
@@ -1,6 +1,18 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { ButtonProps } from "@heroui/react";
|
|
2
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
|
|
4
|
+
//#region src/components/CopyButton.d.ts
|
|
5
|
+
declare function CopyButton({
|
|
6
|
+
text,
|
|
7
|
+
notificationTimeout,
|
|
8
|
+
isIconOnly,
|
|
9
|
+
onCopy,
|
|
10
|
+
...props
|
|
11
|
+
}: ButtonProps & {
|
|
12
|
+
text: string;
|
|
13
|
+
notificationTimeout?: number;
|
|
14
|
+
onCopy?: () => void;
|
|
15
|
+
}): _$react_jsx_runtime0.JSX.Element;
|
|
16
|
+
//#endregion
|
|
17
|
+
export { CopyButton };
|
|
18
|
+
//# sourceMappingURL=CopyButton.d.ts.map
|
|
@@ -1,24 +1,33 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { useState } from "react";
|
|
2
2
|
import { Button } from "@heroui/react";
|
|
3
|
+
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
3
4
|
import { CheckCircle, Copy } from "lucide-react";
|
|
4
|
-
import { useState } from "react";
|
|
5
5
|
import { useTranslation } from "react-i18next";
|
|
6
6
|
import { toast } from "sonner";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
7
|
+
//#region src/components/CopyButton.tsx
|
|
8
|
+
function CopyButton({ text, notificationTimeout = 1e3, isIconOnly, onCopy, ...props }) {
|
|
9
|
+
const { t } = useTranslation();
|
|
10
|
+
const [isCopied, setIsCopied] = useState(false);
|
|
11
|
+
const handleCopy = async (text) => {
|
|
12
|
+
try {
|
|
13
|
+
await window.navigator.clipboard.writeText(text);
|
|
14
|
+
setIsCopied(true);
|
|
15
|
+
onCopy?.();
|
|
16
|
+
toast.success(t("web-ui:common.copySuccess"));
|
|
17
|
+
setTimeout(() => setIsCopied(false), notificationTimeout);
|
|
18
|
+
} catch (error) {
|
|
19
|
+
toast.error(t("web-ui:common.copyError"));
|
|
20
|
+
console.error(error);
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
return /* @__PURE__ */ jsx(Button, {
|
|
24
|
+
isIconOnly,
|
|
25
|
+
onPress: () => handleCopy(text),
|
|
26
|
+
...props,
|
|
27
|
+
children: isCopied ? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(CheckCircle, { className: "h-4 w-4" }), !isIconOnly && t("web-ui:common.copied")] }) : /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(Copy, { className: "h-4 w-4" }), !isIconOnly && t("web-ui:common.copy")] })
|
|
28
|
+
});
|
|
24
29
|
}
|
|
30
|
+
//#endregion
|
|
31
|
+
export { CopyButton };
|
|
32
|
+
|
|
33
|
+
//# sourceMappingURL=CopyButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CopyButton.js","names":[],"sources":["../../../src/components/CopyButton.tsx"],"sourcesContent":["import { Button, type ButtonProps } from \"@heroui/react\";\r\nimport { CheckCircle, Copy } from \"lucide-react\";\r\nimport { useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { toast } from \"sonner\";\r\n\r\nexport function CopyButton({\r\n text,\r\n notificationTimeout = 1000,\r\n isIconOnly,\r\n onCopy,\r\n ...props\r\n}: ButtonProps & { text: string; notificationTimeout?: number; onCopy?: () => void }) {\r\n const { t } = useTranslation();\r\n const [isCopied, setIsCopied] = useState(false);\r\n\r\n const handleCopy = async (text: string) => {\r\n try {\r\n await window.navigator.clipboard.writeText(text);\r\n setIsCopied(true);\r\n onCopy?.();\r\n toast.success(t(\"web-ui:common.copySuccess\"));\r\n setTimeout(() => setIsCopied(false), notificationTimeout);\r\n } catch (error) {\r\n toast.error(t(\"web-ui:common.copyError\"));\r\n console.error(error);\r\n }\r\n };\r\n\r\n return (\r\n <Button isIconOnly={isIconOnly} onPress={() => handleCopy(text)} {...props}>\r\n {isCopied ? (\r\n <>\r\n <CheckCircle className=\"h-4 w-4\" />\r\n {!isIconOnly && t(\"web-ui:common.copied\")}\r\n </>\r\n ) : (\r\n <>\r\n <Copy className=\"h-4 w-4\" />\r\n {!isIconOnly && t(\"web-ui:common.copy\")}\r\n </>\r\n )}\r\n </Button>\r\n );\r\n}\r\n"],"mappings":";;;;;;;AAMA,SAAgB,WAAW,EACzB,MACA,sBAAsB,KACtB,YACA,QACA,GAAG,SACiF;CACpF,MAAM,EAAE,MAAM,gBAAgB;CAC9B,MAAM,CAAC,UAAU,eAAe,SAAS,MAAM;CAE/C,MAAM,aAAa,OAAO,SAAiB;AACzC,MAAI;AACF,SAAM,OAAO,UAAU,UAAU,UAAU,KAAK;AAChD,eAAY,KAAK;AACjB,aAAU;AACV,SAAM,QAAQ,EAAE,4BAA4B,CAAC;AAC7C,oBAAiB,YAAY,MAAM,EAAE,oBAAoB;WAClD,OAAO;AACd,SAAM,MAAM,EAAE,0BAA0B,CAAC;AACzC,WAAQ,MAAM,MAAM;;;AAIxB,QACE,oBAAC,QAAD;EAAoB;EAAY,eAAe,WAAW,KAAK;EAAE,GAAI;YAClE,WACC,qBAAA,YAAA,EAAA,UAAA,CACE,oBAAC,aAAD,EAAa,WAAU,WAAY,CAAA,EAClC,CAAC,cAAc,EAAE,uBAAuB,CACxC,EAAA,CAAA,GAEH,qBAAA,YAAA,EAAA,UAAA,CACE,oBAAC,MAAD,EAAM,WAAU,WAAY,CAAA,EAC3B,CAAC,cAAc,EAAE,qBAAqB,CACtC,EAAA,CAAA;EAEE,CAAA"}
|
|
@@ -1,10 +1,22 @@
|
|
|
1
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
2
|
+
|
|
3
|
+
//#region src/components/CropDialog.d.ts
|
|
1
4
|
interface CropDialogProps {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
open: boolean;
|
|
6
|
+
onOpenChange: (open: boolean) => void;
|
|
7
|
+
imageUrl: string;
|
|
8
|
+
onCropComplete: (croppedBlob: Blob) => void;
|
|
9
|
+
onCancel: () => void;
|
|
10
|
+
isLoading?: boolean;
|
|
8
11
|
}
|
|
9
|
-
|
|
10
|
-
|
|
12
|
+
declare function CropDialog({
|
|
13
|
+
open,
|
|
14
|
+
onOpenChange,
|
|
15
|
+
imageUrl,
|
|
16
|
+
onCropComplete,
|
|
17
|
+
onCancel,
|
|
18
|
+
isLoading
|
|
19
|
+
}: CropDialogProps): _$react_jsx_runtime0.JSX.Element;
|
|
20
|
+
//#endregion
|
|
21
|
+
export { CropDialog };
|
|
22
|
+
//# sourceMappingURL=CropDialog.d.ts.map
|