@m5kdev/web-ui 0.1.4 → 0.2.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 +0 -1
- package/dist/src/components/AvatarUpload.d.ts +0 -1
- package/dist/src/components/Button.d.ts +0 -1
- package/dist/src/components/Calendar.d.ts +0 -1
- package/dist/src/components/CardsSelect.d.ts +0 -1
- package/dist/src/components/CollapsibleSidebarMenuItem.d.ts +0 -1
- package/dist/src/components/ColorPicker.d.ts +0 -1
- package/dist/src/components/CopyButton.d.ts +0 -1
- package/dist/src/components/CropDialog.d.ts +0 -1
- package/dist/src/components/DialogProvider.d.ts +0 -1
- package/dist/src/components/ErrorFallback.d.ts +0 -1
- package/dist/src/components/FileDropzone.d.ts +0 -1
- package/dist/src/components/MultiSelectDropdown.d.ts +0 -1
- package/dist/src/components/Orb.d.ts +0 -1
- package/dist/src/components/PageAlert.d.ts +0 -1
- package/dist/src/components/SelectChips.d.ts +0 -1
- package/dist/src/components/SidebarItem.d.ts +0 -1
- package/dist/src/components/Steps.d.ts +0 -1
- package/dist/src/components/TablerIconPicker.d.ts +0 -1
- package/dist/src/components/app-header.d.ts +0 -1
- package/dist/src/components/blur-card.d.ts +0 -1
- package/dist/src/components/features-section-demo-1.d.ts +0 -1
- package/dist/src/components/features-section-demo-2.d.ts +0 -1
- package/dist/src/components/features-section-demo-3.d.ts +0 -1
- package/dist/src/components/mode-toggle.d.ts +0 -1
- package/dist/src/components/nav-main.d.ts +0 -1
- package/dist/src/components/pricing-cards.d.ts +0 -1
- package/dist/src/components/shared/ButtonCopy.d.ts +0 -1
- package/dist/src/components/team-switcher.d.ts +0 -1
- package/dist/src/components/theme-provider.d.ts +0 -1
- package/dist/src/components/typewriter.d.ts +0 -1
- package/dist/src/components/ui/alert-dialog.d.ts +0 -1
- package/dist/src/components/ui/alert.d.ts +0 -1
- package/dist/src/components/ui/avatar.d.ts +0 -1
- package/dist/src/components/ui/badge.d.ts +0 -1
- package/dist/src/components/ui/bento-grid.d.ts +0 -1
- package/dist/src/components/ui/bento-grid2.d.ts +0 -1
- package/dist/src/components/ui/breadcrumb.d.ts +0 -1
- package/dist/src/components/ui/button.d.ts +0 -1
- package/dist/src/components/ui/card.d.ts +0 -1
- package/dist/src/components/ui/checkbox.d.ts +0 -1
- package/dist/src/components/ui/collapsible.d.ts +0 -1
- package/dist/src/components/ui/dialog.d.ts +0 -1
- package/dist/src/components/ui/dropdown-menu.d.ts +0 -1
- package/dist/src/components/ui/floating-navbar.d.ts +0 -1
- package/dist/src/components/ui/form.d.ts +0 -1
- package/dist/src/components/ui/image.d.ts +0 -1
- package/dist/src/components/ui/input.d.ts +0 -1
- package/dist/src/components/ui/label.d.ts +0 -1
- package/dist/src/components/ui/pagination.d.ts +0 -1
- package/dist/src/components/ui/progress.d.ts +0 -1
- package/dist/src/components/ui/resizable-navbar.d.ts +0 -1
- package/dist/src/components/ui/segment-control.d.ts +0 -1
- package/dist/src/components/ui/select.d.ts +0 -1
- package/dist/src/components/ui/separator.d.ts +0 -1
- package/dist/src/components/ui/sheet.d.ts +0 -1
- package/dist/src/components/ui/sidebar.d.ts +0 -1
- package/dist/src/components/ui/skeleton.d.ts +0 -1
- package/dist/src/components/ui/slider.d.ts +0 -1
- package/dist/src/components/ui/sonner.d.ts +0 -1
- package/dist/src/components/ui/spinner.d.ts +0 -1
- package/dist/src/components/ui/switch.d.ts +0 -1
- package/dist/src/components/ui/table.d.ts +0 -1
- package/dist/src/components/ui/tabs.d.ts +0 -1
- package/dist/src/components/ui/textarea.d.ts +0 -1
- package/dist/src/components/ui/timeline.d.ts +0 -1
- package/dist/src/components/ui/toast.d.ts +0 -1
- package/dist/src/components/ui/tooltip.d.ts +0 -1
- package/dist/src/components/ui/typewriter-effect.d.ts +0 -1
- package/dist/src/hooks/use-mobile.d.ts +0 -1
- package/dist/src/hooks/useDialog.d.ts +0 -1
- package/dist/src/icons/GoogleIcon.d.ts +0 -1
- package/dist/src/icons/LinkedInIcon.d.ts +0 -1
- package/dist/src/icons/MicrosoftIcon.d.ts +0 -1
- package/dist/src/lib/chatwoot.d.ts +0 -1
- package/dist/src/lib/utils.d.ts +0 -1
- package/dist/src/modules/app/components/AppLoader.d.ts +0 -1
- package/dist/src/modules/app/components/AppShell.d.ts +0 -1
- package/dist/src/modules/app/components/AppSidebar.d.ts +0 -1
- package/dist/src/modules/app/components/AppSidebarContent.d.ts +0 -1
- package/dist/src/modules/app/components/AppSidebarHeader.d.ts +0 -1
- package/dist/src/modules/app/components/AppSidebarInvites.d.ts +0 -1
- package/dist/src/modules/app/components/AppSidebarUser.d.ts +0 -1
- package/dist/src/modules/auth/components/AdminUserManagement.d.ts +0 -1
- package/dist/src/modules/auth/components/AdminWaitlist.d.ts +0 -1
- package/dist/src/modules/auth/components/AuthLayout.d.ts +0 -1
- package/dist/src/modules/auth/components/AuthProviders.d.ts +0 -1
- package/dist/src/modules/auth/components/AuthRouter.d.ts +0 -1
- package/dist/src/modules/auth/components/ClaimAccountRoute.d.ts +0 -1
- package/dist/src/modules/auth/components/ErrorAuthRoute.d.ts +0 -1
- package/dist/src/modules/auth/components/ForgotPasswordForm.d.ts +0 -1
- package/dist/src/modules/auth/components/ForgotPasswordRoute.d.ts +0 -1
- package/dist/src/modules/auth/components/InviteFriends.d.ts +0 -1
- package/dist/src/modules/auth/components/LastUsedBadge.d.ts +0 -1
- package/dist/src/modules/auth/components/LoginForm.d.ts +0 -1
- package/dist/src/modules/auth/components/LoginRoute.d.ts +0 -1
- package/dist/src/modules/auth/components/LogoutRoute.d.ts +0 -1
- package/dist/src/modules/auth/components/OrganizationAcceptInvitationRoute.d.ts +0 -1
- package/dist/src/modules/auth/components/OrganizationMembersRoute.d.ts +0 -1
- package/dist/src/modules/auth/components/OrganizationSettingsRoute.d.ts +0 -1
- package/dist/src/modules/auth/components/OrganizationSwitcher.d.ts +0 -1
- package/dist/src/modules/auth/components/ProfileRoute.d.ts +0 -1
- package/dist/src/modules/auth/components/RangeNuqsDatePicker.d.ts +0 -1
- package/dist/src/modules/auth/components/ResetPasswordForm.d.ts +0 -1
- package/dist/src/modules/auth/components/ResetPasswordRoute.d.ts +0 -1
- package/dist/src/modules/auth/components/SignupFormRoute.d.ts +0 -1
- package/dist/src/modules/auth/components/SignupRoute.d.ts +0 -1
- package/dist/src/modules/auth/components/UserPreferences.d.ts +0 -1
- package/dist/src/modules/auth/components/WaitlistCard.d.ts +0 -1
- package/dist/src/modules/auth/components/WaitlistCodeValidation.d.ts +0 -1
- package/dist/src/modules/billing/components/BillingBetaPage.d.ts +0 -1
- package/dist/src/modules/billing/components/BillingInvoicePage.d.ts +0 -1
- package/dist/src/modules/billing/components/BillingPlanSelect.d.ts +0 -1
- package/dist/src/modules/billing/components/BillingRouter.d.ts +0 -1
- package/dist/src/modules/billing/components/BillingSinglePlanSelect.d.ts +0 -1
- package/dist/src/modules/table/components/ColumnOrderAndVisibility.d.ts +0 -1
- package/dist/src/modules/table/components/NuqsTable.d.ts +0 -1
- package/dist/src/modules/table/components/TableFiltering.d.ts +0 -1
- package/dist/src/modules/table/components/TablePagination.d.ts +0 -1
- package/dist/src/modules/table/components/table.types.d.ts +0 -1
- package/dist/src/modules/table/filterTransformers.d.ts +0 -1
- package/dist/src/types.d.ts +0 -1
- package/dist/tsconfig.lib.tsbuildinfo +1 -1
- package/package.json +8 -5
- package/.cursor/rules/web-ui.mdc +0 -126
- package/.turbo/turbo-build.log +0 -5
- package/.turbo/turbo-check-types.log +0 -5
- package/.turbo/turbo-lint$colon$fix.log +0 -381
- package/.turbo/turbo-lint.log +0 -361
- package/CHANGELOG.md +0 -25
- package/components.json +0 -21
- package/dist/src/animations/card.motion.d.ts.map +0 -1
- package/dist/src/components/AvatarUpload.d.ts.map +0 -1
- package/dist/src/components/Button.d.ts.map +0 -1
- package/dist/src/components/Calendar.d.ts.map +0 -1
- package/dist/src/components/CardsSelect.d.ts.map +0 -1
- package/dist/src/components/CollapsibleSidebarMenuItem.d.ts.map +0 -1
- package/dist/src/components/ColorPicker.d.ts.map +0 -1
- package/dist/src/components/CopyButton.d.ts.map +0 -1
- package/dist/src/components/CropDialog.d.ts.map +0 -1
- package/dist/src/components/DialogProvider.d.ts.map +0 -1
- package/dist/src/components/ErrorFallback.d.ts.map +0 -1
- package/dist/src/components/FileDropzone.d.ts.map +0 -1
- package/dist/src/components/MultiSelectDropdown.d.ts.map +0 -1
- package/dist/src/components/Orb.d.ts.map +0 -1
- package/dist/src/components/PageAlert.d.ts.map +0 -1
- package/dist/src/components/SelectChips.d.ts.map +0 -1
- package/dist/src/components/SidebarItem.d.ts.map +0 -1
- package/dist/src/components/Steps.d.ts.map +0 -1
- package/dist/src/components/TablerIconPicker.d.ts.map +0 -1
- package/dist/src/components/app-header.d.ts.map +0 -1
- package/dist/src/components/blur-card.d.ts.map +0 -1
- package/dist/src/components/features-section-demo-1.d.ts.map +0 -1
- package/dist/src/components/features-section-demo-2.d.ts.map +0 -1
- package/dist/src/components/features-section-demo-3.d.ts.map +0 -1
- package/dist/src/components/mode-toggle.d.ts.map +0 -1
- package/dist/src/components/nav-main.d.ts.map +0 -1
- package/dist/src/components/pricing-cards.d.ts.map +0 -1
- package/dist/src/components/shared/ButtonCopy.d.ts.map +0 -1
- package/dist/src/components/team-switcher.d.ts.map +0 -1
- package/dist/src/components/theme-provider.d.ts.map +0 -1
- package/dist/src/components/typewriter.d.ts.map +0 -1
- package/dist/src/components/ui/alert-dialog.d.ts.map +0 -1
- package/dist/src/components/ui/alert.d.ts.map +0 -1
- package/dist/src/components/ui/avatar.d.ts.map +0 -1
- package/dist/src/components/ui/badge.d.ts.map +0 -1
- package/dist/src/components/ui/bento-grid.d.ts.map +0 -1
- package/dist/src/components/ui/bento-grid2.d.ts.map +0 -1
- package/dist/src/components/ui/breadcrumb.d.ts.map +0 -1
- package/dist/src/components/ui/button.d.ts.map +0 -1
- package/dist/src/components/ui/card.d.ts.map +0 -1
- package/dist/src/components/ui/checkbox.d.ts.map +0 -1
- package/dist/src/components/ui/collapsible.d.ts.map +0 -1
- package/dist/src/components/ui/dialog.d.ts.map +0 -1
- package/dist/src/components/ui/dropdown-menu.d.ts.map +0 -1
- package/dist/src/components/ui/floating-navbar.d.ts.map +0 -1
- package/dist/src/components/ui/form.d.ts.map +0 -1
- package/dist/src/components/ui/image.d.ts.map +0 -1
- package/dist/src/components/ui/input.d.ts.map +0 -1
- package/dist/src/components/ui/label.d.ts.map +0 -1
- package/dist/src/components/ui/pagination.d.ts.map +0 -1
- package/dist/src/components/ui/progress.d.ts.map +0 -1
- package/dist/src/components/ui/resizable-navbar.d.ts.map +0 -1
- package/dist/src/components/ui/segment-control.d.ts.map +0 -1
- package/dist/src/components/ui/select.d.ts.map +0 -1
- package/dist/src/components/ui/separator.d.ts.map +0 -1
- package/dist/src/components/ui/sheet.d.ts.map +0 -1
- package/dist/src/components/ui/sidebar.d.ts.map +0 -1
- package/dist/src/components/ui/skeleton.d.ts.map +0 -1
- package/dist/src/components/ui/slider.d.ts.map +0 -1
- package/dist/src/components/ui/sonner.d.ts.map +0 -1
- package/dist/src/components/ui/spinner.d.ts.map +0 -1
- package/dist/src/components/ui/switch.d.ts.map +0 -1
- package/dist/src/components/ui/table.d.ts.map +0 -1
- package/dist/src/components/ui/tabs.d.ts.map +0 -1
- package/dist/src/components/ui/textarea.d.ts.map +0 -1
- package/dist/src/components/ui/timeline.d.ts.map +0 -1
- package/dist/src/components/ui/toast.d.ts.map +0 -1
- package/dist/src/components/ui/tooltip.d.ts.map +0 -1
- package/dist/src/components/ui/typewriter-effect.d.ts.map +0 -1
- package/dist/src/hooks/use-mobile.d.ts.map +0 -1
- package/dist/src/hooks/useDialog.d.ts.map +0 -1
- package/dist/src/icons/GoogleIcon.d.ts.map +0 -1
- package/dist/src/icons/LinkedInIcon.d.ts.map +0 -1
- package/dist/src/icons/MicrosoftIcon.d.ts.map +0 -1
- package/dist/src/lib/chatwoot.d.ts.map +0 -1
- package/dist/src/lib/utils.d.ts.map +0 -1
- package/dist/src/modules/app/components/AppLoader.d.ts.map +0 -1
- package/dist/src/modules/app/components/AppShell.d.ts.map +0 -1
- package/dist/src/modules/app/components/AppSidebar.d.ts.map +0 -1
- package/dist/src/modules/app/components/AppSidebarContent.d.ts.map +0 -1
- package/dist/src/modules/app/components/AppSidebarHeader.d.ts.map +0 -1
- package/dist/src/modules/app/components/AppSidebarInvites.d.ts.map +0 -1
- package/dist/src/modules/app/components/AppSidebarUser.d.ts.map +0 -1
- package/dist/src/modules/auth/components/AdminUserManagement.d.ts.map +0 -1
- package/dist/src/modules/auth/components/AdminWaitlist.d.ts.map +0 -1
- package/dist/src/modules/auth/components/AuthLayout.d.ts.map +0 -1
- package/dist/src/modules/auth/components/AuthProviders.d.ts.map +0 -1
- package/dist/src/modules/auth/components/AuthRouter.d.ts.map +0 -1
- package/dist/src/modules/auth/components/ClaimAccountRoute.d.ts.map +0 -1
- package/dist/src/modules/auth/components/ErrorAuthRoute.d.ts.map +0 -1
- package/dist/src/modules/auth/components/ForgotPasswordForm.d.ts.map +0 -1
- package/dist/src/modules/auth/components/ForgotPasswordRoute.d.ts.map +0 -1
- package/dist/src/modules/auth/components/InviteFriends.d.ts.map +0 -1
- package/dist/src/modules/auth/components/LastUsedBadge.d.ts.map +0 -1
- package/dist/src/modules/auth/components/LoginForm.d.ts.map +0 -1
- package/dist/src/modules/auth/components/LoginRoute.d.ts.map +0 -1
- package/dist/src/modules/auth/components/LogoutRoute.d.ts.map +0 -1
- package/dist/src/modules/auth/components/OrganizationAcceptInvitationRoute.d.ts.map +0 -1
- package/dist/src/modules/auth/components/OrganizationMembersRoute.d.ts.map +0 -1
- package/dist/src/modules/auth/components/OrganizationSettingsRoute.d.ts.map +0 -1
- package/dist/src/modules/auth/components/OrganizationSwitcher.d.ts.map +0 -1
- package/dist/src/modules/auth/components/ProfileRoute.d.ts.map +0 -1
- package/dist/src/modules/auth/components/RangeNuqsDatePicker.d.ts.map +0 -1
- package/dist/src/modules/auth/components/ResetPasswordForm.d.ts.map +0 -1
- package/dist/src/modules/auth/components/ResetPasswordRoute.d.ts.map +0 -1
- package/dist/src/modules/auth/components/SignupFormRoute.d.ts.map +0 -1
- package/dist/src/modules/auth/components/SignupRoute.d.ts.map +0 -1
- package/dist/src/modules/auth/components/UserPreferences.d.ts.map +0 -1
- package/dist/src/modules/auth/components/WaitlistCard.d.ts.map +0 -1
- package/dist/src/modules/auth/components/WaitlistCodeValidation.d.ts.map +0 -1
- package/dist/src/modules/billing/components/BillingBetaPage.d.ts.map +0 -1
- package/dist/src/modules/billing/components/BillingInvoicePage.d.ts.map +0 -1
- package/dist/src/modules/billing/components/BillingPlanSelect.d.ts.map +0 -1
- package/dist/src/modules/billing/components/BillingRouter.d.ts.map +0 -1
- package/dist/src/modules/billing/components/BillingSinglePlanSelect.d.ts.map +0 -1
- package/dist/src/modules/table/components/ColumnOrderAndVisibility.d.ts.map +0 -1
- package/dist/src/modules/table/components/NuqsTable.d.ts.map +0 -1
- package/dist/src/modules/table/components/TableFiltering.d.ts.map +0 -1
- package/dist/src/modules/table/components/TablePagination.d.ts.map +0 -1
- package/dist/src/modules/table/components/table.types.d.ts.map +0 -1
- package/dist/src/modules/table/filterTransformers.d.ts.map +0 -1
- package/dist/src/types.d.ts.map +0 -1
- package/src/animations/card.motion.ts +0 -9
- package/src/components/AvatarUpload.tsx +0 -133
- package/src/components/Button.tsx +0 -14
- package/src/components/Calendar.css +0 -684
- package/src/components/Calendar.tsx +0 -32
- package/src/components/CardsSelect.tsx +0 -155
- package/src/components/CollapsibleSidebarMenuItem.tsx +0 -57
- package/src/components/ColorPicker.tsx +0 -56
- package/src/components/CopyButton.tsx +0 -45
- package/src/components/CropDialog.tsx +0 -154
- package/src/components/DialogProvider.tsx +0 -105
- package/src/components/ErrorFallback.tsx +0 -17
- package/src/components/FileDropzone.tsx +0 -120
- package/src/components/MultiSelectDropdown.tsx +0 -233
- package/src/components/Orb.tsx +0 -288
- package/src/components/PageAlert.tsx +0 -121
- package/src/components/SelectChips.tsx +0 -40
- package/src/components/SidebarItem.tsx +0 -26
- package/src/components/Steps.tsx +0 -340
- package/src/components/TablerIconPicker.tsx +0 -4260
- package/src/components/app-header.tsx +0 -40
- package/src/components/blur-card.tsx +0 -132
- package/src/components/features-section-demo-1.tsx +0 -127
- package/src/components/features-section-demo-2.tsx +0 -102
- package/src/components/features-section-demo-3.tsx +0 -272
- package/src/components/mode-toggle.tsx +0 -31
- package/src/components/nav-main.tsx +0 -69
- package/src/components/pricing-cards.tsx +0 -133
- package/src/components/shared/ButtonCopy.tsx +0 -50
- package/src/components/team-switcher.tsx +0 -83
- package/src/components/theme-provider.tsx +0 -74
- package/src/components/typewriter.tsx +0 -90
- package/src/components/ui/alert-dialog.tsx +0 -133
- package/src/components/ui/alert.tsx +0 -60
- package/src/components/ui/avatar.tsx +0 -47
- package/src/components/ui/badge.tsx +0 -33
- package/src/components/ui/bento-grid.tsx +0 -54
- package/src/components/ui/bento-grid2.tsx +0 -66
- package/src/components/ui/breadcrumb.tsx +0 -101
- package/src/components/ui/button.tsx +0 -50
- package/src/components/ui/card.tsx +0 -55
- package/src/components/ui/checkbox.tsx +0 -26
- package/src/components/ui/collapsible.tsx +0 -9
- package/src/components/ui/dialog.tsx +0 -119
- package/src/components/ui/dropdown-menu.tsx +0 -186
- package/src/components/ui/floating-navbar.tsx +0 -78
- package/src/components/ui/form.tsx +0 -167
- package/src/components/ui/image.tsx +0 -55
- package/src/components/ui/input.tsx +0 -22
- package/src/components/ui/label.tsx +0 -19
- package/src/components/ui/pagination.tsx +0 -105
- package/src/components/ui/progress.tsx +0 -23
- package/src/components/ui/resizable-navbar.tsx +0 -260
- package/src/components/ui/segment-control.tsx +0 -143
- package/src/components/ui/select.tsx +0 -153
- package/src/components/ui/separator.tsx +0 -24
- package/src/components/ui/sheet.tsx +0 -121
- package/src/components/ui/sidebar.tsx +0 -736
- package/src/components/ui/skeleton.tsx +0 -7
- package/src/components/ui/slider.tsx +0 -23
- package/src/components/ui/sonner.tsx +0 -27
- package/src/components/ui/spinner.tsx +0 -45
- package/src/components/ui/switch.tsx +0 -27
- package/src/components/ui/table.tsx +0 -90
- package/src/components/ui/tabs.tsx +0 -52
- package/src/components/ui/textarea.tsx +0 -18
- package/src/components/ui/timeline.tsx +0 -95
- package/src/components/ui/toast.tsx +0 -126
- package/src/components/ui/tooltip.tsx +0 -55
- package/src/components/ui/typewriter-effect.tsx +0 -181
- package/src/hooks/use-mobile.ts +0 -19
- package/src/hooks/useDialog.ts +0 -25
- package/src/icons/GoogleIcon.tsx +0 -32
- package/src/icons/LinkedInIcon.tsx +0 -30
- package/src/icons/MicrosoftIcon.tsx +0 -21
- package/src/lib/chatwoot.ts +0 -51
- package/src/lib/utils.ts +0 -6
- package/src/modules/app/components/AppLoader.tsx +0 -9
- package/src/modules/app/components/AppShell.tsx +0 -21
- package/src/modules/app/components/AppSidebar.tsx +0 -26
- package/src/modules/app/components/AppSidebarContent.tsx +0 -73
- package/src/modules/app/components/AppSidebarHeader.tsx +0 -57
- package/src/modules/app/components/AppSidebarInvites.tsx +0 -32
- package/src/modules/app/components/AppSidebarUser.tsx +0 -128
- package/src/modules/auth/components/AdminUserManagement.tsx +0 -1136
- package/src/modules/auth/components/AdminWaitlist.tsx +0 -358
- package/src/modules/auth/components/AuthLayout.tsx +0 -13
- package/src/modules/auth/components/AuthProviders.tsx +0 -105
- package/src/modules/auth/components/AuthRouter.tsx +0 -29
- package/src/modules/auth/components/ClaimAccountRoute.tsx +0 -242
- package/src/modules/auth/components/ErrorAuthRoute.tsx +0 -121
- package/src/modules/auth/components/ForgotPasswordForm.tsx +0 -58
- package/src/modules/auth/components/ForgotPasswordRoute.tsx +0 -27
- package/src/modules/auth/components/InviteFriends.tsx +0 -273
- package/src/modules/auth/components/LastUsedBadge.tsx +0 -22
- package/src/modules/auth/components/LoginForm.tsx +0 -104
- package/src/modules/auth/components/LoginRoute.tsx +0 -31
- package/src/modules/auth/components/LogoutRoute.tsx +0 -21
- package/src/modules/auth/components/OrganizationAcceptInvitationRoute.tsx +0 -161
- package/src/modules/auth/components/OrganizationMembersRoute.tsx +0 -730
- package/src/modules/auth/components/OrganizationSettingsRoute.tsx +0 -280
- package/src/modules/auth/components/OrganizationSwitcher.tsx +0 -148
- package/src/modules/auth/components/ProfileRoute.tsx +0 -104
- package/src/modules/auth/components/RangeNuqsDatePicker.tsx +0 -365
- package/src/modules/auth/components/ResetPasswordForm.tsx +0 -103
- package/src/modules/auth/components/ResetPasswordRoute.tsx +0 -27
- package/src/modules/auth/components/SignupFormRoute.tsx +0 -189
- package/src/modules/auth/components/SignupRoute.tsx +0 -53
- package/src/modules/auth/components/UserPreferences.tsx +0 -144
- package/src/modules/auth/components/WaitlistCard.tsx +0 -78
- package/src/modules/auth/components/WaitlistCodeValidation.tsx +0 -79
- package/src/modules/billing/components/BillingBetaPage.tsx +0 -124
- package/src/modules/billing/components/BillingInvoicePage.tsx +0 -180
- package/src/modules/billing/components/BillingPlanSelect.tsx +0 -14
- package/src/modules/billing/components/BillingRouter.tsx +0 -20
- package/src/modules/billing/components/BillingSinglePlanSelect.tsx +0 -172
- package/src/modules/table/components/ColumnOrderAndVisibility.tsx +0 -127
- package/src/modules/table/components/NuqsTable.tsx +0 -396
- package/src/modules/table/components/TableFiltering.tsx +0 -520
- package/src/modules/table/components/TablePagination.tsx +0 -59
- package/src/modules/table/components/table.types.ts +0 -11
- package/src/modules/table/filterTransformers.ts +0 -323
- package/src/types.ts +0 -4
- package/src/vite-env.d.ts +0 -1
- package/translations/en/web-ui.json +0 -192
- package/tsconfig.json +0 -30
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import type { StripePlan } from "@m5kdev/commons/modules/billing/billing.types";
|
|
2
|
-
import { Route } from "react-router";
|
|
3
|
-
import { BillingInvoicePage } from "#modules/billing/components/BillingInvoicePage";
|
|
4
|
-
import type { UseBackendTRPC } from "#types";
|
|
5
|
-
|
|
6
|
-
interface BillingRouterProps {
|
|
7
|
-
useTRPC?: UseBackendTRPC;
|
|
8
|
-
serverUrl: string;
|
|
9
|
-
plans: StripePlan[];
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export function BillingRouter({ useTRPC, serverUrl }: BillingRouterProps) {
|
|
13
|
-
if (!useTRPC) return null;
|
|
14
|
-
|
|
15
|
-
return (
|
|
16
|
-
<Route path="billing">
|
|
17
|
-
<Route index element={<BillingInvoicePage useTRPC={useTRPC} serverUrl={serverUrl} />} />
|
|
18
|
-
</Route>
|
|
19
|
-
);
|
|
20
|
-
}
|
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
import { Button } from "@heroui/react";
|
|
2
|
-
import type { StripePlan } from "@m5kdev/commons/modules/billing/billing.types";
|
|
3
|
-
import { authClient } from "@m5kdev/frontend/modules/auth/auth.lib";
|
|
4
|
-
import { Check, LogOut } from "lucide-react";
|
|
5
|
-
import { useState } from "react";
|
|
6
|
-
import { useTranslation } from "react-i18next";
|
|
7
|
-
import { Link, useNavigate } from "react-router";
|
|
8
|
-
import {
|
|
9
|
-
Card,
|
|
10
|
-
CardContent,
|
|
11
|
-
CardDescription,
|
|
12
|
-
CardFooter,
|
|
13
|
-
CardHeader,
|
|
14
|
-
CardTitle,
|
|
15
|
-
} from "#components/ui/card";
|
|
16
|
-
import { Tabs, TabsList, TabsTrigger } from "#components/ui/tabs";
|
|
17
|
-
import { cn } from "#utils";
|
|
18
|
-
|
|
19
|
-
export interface BillingSinglePlanSelectProps {
|
|
20
|
-
plan: StripePlan;
|
|
21
|
-
features?: string[];
|
|
22
|
-
/** URL for the Terms of Service link. Override for your app's legal page. */
|
|
23
|
-
termsOfServiceUrl?: string;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export function BillingSinglePlanSelect({
|
|
27
|
-
plan,
|
|
28
|
-
termsOfServiceUrl,
|
|
29
|
-
features = [
|
|
30
|
-
"Unlimited access to all features",
|
|
31
|
-
"Priority support",
|
|
32
|
-
"Early access to new features",
|
|
33
|
-
"Secure data storage",
|
|
34
|
-
"Cancel anytime",
|
|
35
|
-
],
|
|
36
|
-
}: BillingSinglePlanSelectProps) {
|
|
37
|
-
const { t } = useTranslation("web-ui");
|
|
38
|
-
const navigate = useNavigate();
|
|
39
|
-
const [billingInterval, setBillingInterval] = useState<"monthly" | "annually">("annually");
|
|
40
|
-
|
|
41
|
-
const handleLogout = async () => {
|
|
42
|
-
await authClient.signOut();
|
|
43
|
-
navigate("/login");
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
const isAnnual = billingInterval === "annually";
|
|
47
|
-
const currentPriceId = isAnnual ? plan.annualDiscountPriceId : plan.priceId;
|
|
48
|
-
|
|
49
|
-
// Fallback if no annual price ID exists
|
|
50
|
-
const hasAnnualOption = !!plan.annualDiscountPriceId;
|
|
51
|
-
|
|
52
|
-
const priceUnitAmount = plan.priceUnitAmount ?? Number.NaN;
|
|
53
|
-
const annualPriceUnitAmount = plan.annualPriceUnitAmount ?? Number.NaN;
|
|
54
|
-
|
|
55
|
-
const priceDisplay = {
|
|
56
|
-
monthly: {
|
|
57
|
-
amount: `$${priceUnitAmount / 100}`,
|
|
58
|
-
label: "/ month",
|
|
59
|
-
},
|
|
60
|
-
annually: {
|
|
61
|
-
amount: `$${annualPriceUnitAmount / 100 / 12}`,
|
|
62
|
-
originalAmount: `$${priceUnitAmount / 100}`,
|
|
63
|
-
label: "/ month, billed annually",
|
|
64
|
-
discountLabel: plan.annualPriceUnitAmount
|
|
65
|
-
? `Save ${Math.floor(((priceUnitAmount - annualPriceUnitAmount / 12) / priceUnitAmount) * 100).toFixed(0)}%`
|
|
66
|
-
: "",
|
|
67
|
-
},
|
|
68
|
-
};
|
|
69
|
-
|
|
70
|
-
return (
|
|
71
|
-
<div className="w-full max-w-3xl mx-auto px-4 py-8">
|
|
72
|
-
<div className="flex flex-col items-center gap-8">
|
|
73
|
-
<div className="text-center space-y-2">
|
|
74
|
-
<h2 className="text-3xl font-bold tracking-tight sm:text-4xl">
|
|
75
|
-
{t("billing.plans.title", "Simple, transparent pricing")}
|
|
76
|
-
</h2>
|
|
77
|
-
<p className="text-muted-foreground text-lg">
|
|
78
|
-
{t("billing.plans.subtitle", "Choose the plan that's right for you")}
|
|
79
|
-
</p>
|
|
80
|
-
</div>
|
|
81
|
-
|
|
82
|
-
{hasAnnualOption && (
|
|
83
|
-
<Tabs
|
|
84
|
-
defaultValue="annually"
|
|
85
|
-
value={billingInterval}
|
|
86
|
-
onValueChange={(v) => setBillingInterval(v as "monthly" | "annually")}
|
|
87
|
-
className="w-full max-w-xs"
|
|
88
|
-
>
|
|
89
|
-
<TabsList className="grid w-full grid-cols-2">
|
|
90
|
-
<TabsTrigger value="monthly">Monthly</TabsTrigger>
|
|
91
|
-
<TabsTrigger value="annually" className="relative">
|
|
92
|
-
Annually
|
|
93
|
-
{priceDisplay.annually.discountLabel && (
|
|
94
|
-
<span className="absolute -top-3 -right-3 px-1.5 py-0.5 rounded-full bg-green-500 text-[10px] text-white font-medium transform rotate-12">
|
|
95
|
-
{priceDisplay.annually.discountLabel}
|
|
96
|
-
</span>
|
|
97
|
-
)}
|
|
98
|
-
</TabsTrigger>
|
|
99
|
-
</TabsList>
|
|
100
|
-
</Tabs>
|
|
101
|
-
)}
|
|
102
|
-
|
|
103
|
-
<Card className={cn("w-full max-w-md border-2 border-primary")}>
|
|
104
|
-
<CardHeader>
|
|
105
|
-
<CardTitle className="flex justify-between items-start">
|
|
106
|
-
<span className="text-xl font-bold">{plan.name}</span>
|
|
107
|
-
</CardTitle>
|
|
108
|
-
<CardDescription>
|
|
109
|
-
{isAnnual ? "Perfect for long-term commitment" : "Flexible monthly billing"}
|
|
110
|
-
</CardDescription>
|
|
111
|
-
</CardHeader>
|
|
112
|
-
|
|
113
|
-
<CardContent className="space-y-6">
|
|
114
|
-
<div className="flex items-baseline gap-1">
|
|
115
|
-
<span className="text-4xl font-bold">
|
|
116
|
-
{isAnnual ? priceDisplay.annually.amount : priceDisplay.monthly.amount}
|
|
117
|
-
</span>
|
|
118
|
-
<span className="text-muted-foreground">
|
|
119
|
-
{isAnnual ? priceDisplay.annually.label : priceDisplay.monthly.label}
|
|
120
|
-
</span>
|
|
121
|
-
</div>
|
|
122
|
-
|
|
123
|
-
{isAnnual && priceDisplay.annually.originalAmount && (
|
|
124
|
-
<p className="text-sm text-green-500 line-through">
|
|
125
|
-
{" "}
|
|
126
|
-
{priceDisplay.annually.originalAmount} / month
|
|
127
|
-
</p>
|
|
128
|
-
)}
|
|
129
|
-
|
|
130
|
-
<div className="space-y-3">
|
|
131
|
-
{features.map((feature) => (
|
|
132
|
-
<div key={feature} className="flex items-center gap-2">
|
|
133
|
-
<div className="h-5 w-5 rounded-full bg-primary/10 flex items-center justify-center shrink-0">
|
|
134
|
-
<Check className="h-3 w-3 text-primary" />
|
|
135
|
-
</div>
|
|
136
|
-
<span className="text-sm text-muted-foreground">{feature}</span>
|
|
137
|
-
</div>
|
|
138
|
-
))}
|
|
139
|
-
</div>
|
|
140
|
-
</CardContent>
|
|
141
|
-
|
|
142
|
-
<CardFooter>
|
|
143
|
-
<Button
|
|
144
|
-
className="w-full"
|
|
145
|
-
color="primary"
|
|
146
|
-
size="lg"
|
|
147
|
-
as="a"
|
|
148
|
-
href={`${import.meta.env.VITE_SERVER_URL}/stripe/checkout/${currentPriceId}`}
|
|
149
|
-
>
|
|
150
|
-
{isAnnual ? "Subscribe Annually" : "Subscribe Monthly"}
|
|
151
|
-
</Button>
|
|
152
|
-
</CardFooter>
|
|
153
|
-
</Card>
|
|
154
|
-
|
|
155
|
-
<div className="text-balance text-center text-xs text-muted-foreground [&_a]:underline [&_a]:underline-offset-4 [&_a]:hover:text-primary">
|
|
156
|
-
<a href={termsOfServiceUrl} rel="noopener noreferrer" target="_blank">
|
|
157
|
-
{t("common.termsOfService", "Terms of Service")}
|
|
158
|
-
</a>{" "}
|
|
159
|
-
{t("common.and", "and")}{" "}
|
|
160
|
-
<Link to="/privacy">{t("common.privacyPolicy", "Privacy Policy")}</Link>
|
|
161
|
-
</div>
|
|
162
|
-
</div>
|
|
163
|
-
|
|
164
|
-
<div className="fixed bottom-4 left-4">
|
|
165
|
-
<Button variant="light" onPress={handleLogout} className="gap-2">
|
|
166
|
-
<LogOut className="h-4 w-4" />
|
|
167
|
-
{t("sidebar.user.logout", "Log out")}
|
|
168
|
-
</Button>
|
|
169
|
-
</div>
|
|
170
|
-
</div>
|
|
171
|
-
);
|
|
172
|
-
}
|
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
import { DndContext, KeyboardSensor, PointerSensor, useSensor, useSensors } from "@dnd-kit/core";
|
|
2
|
-
import {
|
|
3
|
-
arrayMove,
|
|
4
|
-
SortableContext,
|
|
5
|
-
sortableKeyboardCoordinates,
|
|
6
|
-
useSortable,
|
|
7
|
-
verticalListSortingStrategy,
|
|
8
|
-
} from "@dnd-kit/sortable";
|
|
9
|
-
import { CSS } from "@dnd-kit/utilities";
|
|
10
|
-
import { EyeIcon, EyeOffIcon, GripVertical } from "lucide-react";
|
|
11
|
-
import { useCallback, useState } from "react";
|
|
12
|
-
import type { ColumnOrderState, VisibilityState } from "@tanstack/react-table";
|
|
13
|
-
import { Button } from "#components/ui/button";
|
|
14
|
-
import type { ColumnItem } from "./table.types";
|
|
15
|
-
|
|
16
|
-
interface ColumnOrderAndVisibilityItemProps {
|
|
17
|
-
column: ColumnItem;
|
|
18
|
-
onChangeVisibilityState: (columnId: string) => void;
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
const ColumnOrderAndVisibilityItem = ({
|
|
22
|
-
column,
|
|
23
|
-
onChangeVisibilityState,
|
|
24
|
-
}: ColumnOrderAndVisibilityItemProps) => {
|
|
25
|
-
const { attributes, listeners, setNodeRef, transform, transition } = useSortable({
|
|
26
|
-
id: column.id,
|
|
27
|
-
});
|
|
28
|
-
return (
|
|
29
|
-
<div
|
|
30
|
-
ref={setNodeRef}
|
|
31
|
-
style={{ transform: CSS.Transform.toString(transform), transition }}
|
|
32
|
-
className="flex justify-between items-center gap-2"
|
|
33
|
-
>
|
|
34
|
-
{column.label}
|
|
35
|
-
<div className="flex items-center gap-2">
|
|
36
|
-
<div
|
|
37
|
-
{...attributes}
|
|
38
|
-
{...listeners}
|
|
39
|
-
className="cursor-grab active:cursor-grabbing touch-none"
|
|
40
|
-
>
|
|
41
|
-
<GripVertical className="h-4 w-4" />
|
|
42
|
-
</div>
|
|
43
|
-
<Button
|
|
44
|
-
variant="ghost"
|
|
45
|
-
size="icon"
|
|
46
|
-
onClick={() => onChangeVisibilityState(String(column.id))}
|
|
47
|
-
>
|
|
48
|
-
{column.visibility ? <EyeIcon className="h-4 w-4" /> : <EyeOffIcon className="h-4 w-4" />}
|
|
49
|
-
</Button>
|
|
50
|
-
</div>
|
|
51
|
-
</div>
|
|
52
|
-
);
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
interface ColumnOrderAndVisibilityProps {
|
|
56
|
-
layout: ColumnItem[];
|
|
57
|
-
onChangeOrder: (order: ColumnOrderState) => void;
|
|
58
|
-
onChangeVisibility: (visibility: VisibilityState) => void;
|
|
59
|
-
onClose: () => void;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
export const ColumnOrderAndVisibility = ({
|
|
63
|
-
layout,
|
|
64
|
-
onChangeOrder,
|
|
65
|
-
onChangeVisibility,
|
|
66
|
-
onClose,
|
|
67
|
-
}: ColumnOrderAndVisibilityProps) => {
|
|
68
|
-
const [activeLayout, setActiveLayout] = useState<ColumnItem[]>([...layout]);
|
|
69
|
-
|
|
70
|
-
const onChangeVisibilityState = useCallback((columnId: string) => {
|
|
71
|
-
setActiveLayout((prev) => {
|
|
72
|
-
const index = prev.findIndex((c) => c.id === columnId);
|
|
73
|
-
if (index !== -1) {
|
|
74
|
-
const newLayout = [...prev];
|
|
75
|
-
newLayout[index] = { ...prev[index], visibility: !prev[index].visibility };
|
|
76
|
-
return newLayout;
|
|
77
|
-
}
|
|
78
|
-
return prev;
|
|
79
|
-
});
|
|
80
|
-
}, []);
|
|
81
|
-
|
|
82
|
-
const sensors = useSensors(
|
|
83
|
-
useSensor(PointerSensor),
|
|
84
|
-
useSensor(KeyboardSensor, {
|
|
85
|
-
coordinateGetter: sortableKeyboardCoordinates,
|
|
86
|
-
})
|
|
87
|
-
);
|
|
88
|
-
|
|
89
|
-
const onSubmit = useCallback(() => {
|
|
90
|
-
onChangeOrder(activeLayout.map((column) => column.id));
|
|
91
|
-
onChangeVisibility(
|
|
92
|
-
Object.fromEntries(activeLayout.map((column) => [column.id, column.visibility]))
|
|
93
|
-
);
|
|
94
|
-
onClose();
|
|
95
|
-
}, [activeLayout, onChangeOrder, onChangeVisibility, onClose]);
|
|
96
|
-
|
|
97
|
-
return (
|
|
98
|
-
<div className="flex flex-col gap-2 p-1 min-w-[200px]">
|
|
99
|
-
<DndContext
|
|
100
|
-
onDragEnd={({ active, over }) => {
|
|
101
|
-
if (over && active.id !== over?.id) {
|
|
102
|
-
const activeIndex = activeLayout.findIndex(({ id }) => id === active.id);
|
|
103
|
-
const overIndex = activeLayout.findIndex(({ id }) => id === over.id);
|
|
104
|
-
|
|
105
|
-
setActiveLayout(arrayMove(activeLayout, activeIndex, overIndex));
|
|
106
|
-
}
|
|
107
|
-
}}
|
|
108
|
-
sensors={sensors}
|
|
109
|
-
>
|
|
110
|
-
<SortableContext
|
|
111
|
-
items={activeLayout.map((column) => column.id)}
|
|
112
|
-
strategy={verticalListSortingStrategy}
|
|
113
|
-
>
|
|
114
|
-
{activeLayout.map((column) => (
|
|
115
|
-
<ColumnOrderAndVisibilityItem
|
|
116
|
-
key={column.id}
|
|
117
|
-
column={column}
|
|
118
|
-
onChangeVisibilityState={onChangeVisibilityState}
|
|
119
|
-
/>
|
|
120
|
-
))}
|
|
121
|
-
</SortableContext>
|
|
122
|
-
</DndContext>
|
|
123
|
-
<Button onClick={onSubmit}>Apply</Button>
|
|
124
|
-
</div>
|
|
125
|
-
);
|
|
126
|
-
};
|
|
127
|
-
|