@m5kdev/web-ui 0.1.3 → 0.1.5

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.
Files changed (375) hide show
  1. package/dist/src/animations/card.motion.d.ts +2 -0
  2. package/dist/src/animations/card.motion.js +7 -0
  3. package/dist/src/components/AvatarUpload.d.ts +7 -0
  4. package/dist/src/components/AvatarUpload.js +67 -0
  5. package/dist/src/components/Button.d.ts +5 -0
  6. package/dist/src/components/Button.js +5 -0
  7. package/dist/src/components/Calendar.d.ts +35 -0
  8. package/dist/src/components/Calendar.js +10 -0
  9. package/dist/src/components/CardsSelect.d.ts +23 -0
  10. package/dist/src/components/CardsSelect.js +46 -0
  11. package/dist/src/components/CollapsibleSidebarMenuItem.d.ts +9 -0
  12. package/dist/src/components/CollapsibleSidebarMenuItem.js +11 -0
  13. package/dist/src/components/ColorPicker.d.ts +4 -0
  14. package/dist/src/components/ColorPicker.js +21 -0
  15. package/dist/src/components/CopyButton.d.ts +6 -0
  16. package/dist/src/components/CopyButton.js +24 -0
  17. package/dist/src/components/CropDialog.d.ts +10 -0
  18. package/dist/src/components/CropDialog.js +67 -0
  19. package/dist/src/components/DialogProvider.d.ts +15 -0
  20. package/dist/src/components/DialogProvider.js +50 -0
  21. package/dist/src/components/ErrorFallback.d.ts +4 -0
  22. package/dist/src/components/ErrorFallback.js +5 -0
  23. package/dist/src/components/FileDropzone.d.ts +6 -0
  24. package/dist/src/components/FileDropzone.js +63 -0
  25. package/dist/src/components/MultiSelectDropdown.d.ts +26 -0
  26. package/dist/src/components/MultiSelectDropdown.js +53 -0
  27. package/dist/src/components/Orb.d.ts +6 -0
  28. package/{src/components/Orb.tsx → dist/src/components/Orb.js} +107 -136
  29. package/dist/src/components/PageAlert.d.ts +18 -0
  30. package/dist/src/components/PageAlert.js +48 -0
  31. package/dist/src/components/SelectChips.d.ts +10 -0
  32. package/dist/src/components/SelectChips.js +11 -0
  33. package/dist/src/components/SidebarItem.d.ts +7 -0
  34. package/dist/src/components/SidebarItem.js +6 -0
  35. package/dist/src/components/Steps.d.ts +19 -0
  36. package/dist/src/components/Steps.js +34 -0
  37. package/dist/src/components/TablerIconPicker.d.ts +2 -0
  38. package/dist/src/components/TablerIconPicker.js +4238 -0
  39. package/dist/src/components/app-header.d.ts +6 -0
  40. package/dist/src/components/app-header.js +8 -0
  41. package/dist/src/components/blur-card.d.ts +13 -0
  42. package/dist/src/components/blur-card.js +34 -0
  43. package/dist/src/components/features-section-demo-1.d.ts +6 -0
  44. package/dist/src/components/features-section-demo-1.js +53 -0
  45. package/dist/src/components/features-section-demo-2.d.ts +1 -0
  46. package/dist/src/components/features-section-demo-2.js +51 -0
  47. package/dist/src/components/features-section-demo-3.d.ts +8 -0
  48. package/dist/src/components/features-section-demo-3.js +116 -0
  49. package/dist/src/components/mode-toggle.d.ts +1 -0
  50. package/dist/src/components/mode-toggle.js +9 -0
  51. package/dist/src/components/nav-main.d.ts +13 -0
  52. package/dist/src/components/nav-main.js +9 -0
  53. package/dist/src/components/pricing-cards.d.ts +1 -0
  54. package/dist/src/components/pricing-cards.js +27 -0
  55. package/dist/src/components/shared/ButtonCopy.d.ts +6 -0
  56. package/dist/src/components/shared/ButtonCopy.js +24 -0
  57. package/dist/src/components/team-switcher.d.ts +8 -0
  58. package/dist/src/components/team-switcher.js +10 -0
  59. package/dist/src/components/theme-provider.d.ts +13 -0
  60. package/dist/src/components/theme-provider.js +41 -0
  61. package/dist/src/components/typewriter.d.ts +18 -0
  62. package/dist/src/components/typewriter.js +38 -0
  63. package/dist/src/components/ui/alert-dialog.d.ts +14 -0
  64. package/dist/src/components/ui/alert-dialog.js +38 -0
  65. package/dist/src/components/ui/alert.d.ts +9 -0
  66. package/dist/src/components/ui/alert.js +24 -0
  67. package/dist/src/components/ui/avatar.d.ts +6 -0
  68. package/dist/src/components/ui/avatar.js +12 -0
  69. package/dist/src/components/ui/badge.d.ts +9 -0
  70. package/dist/src/components/ui/badge.js +20 -0
  71. package/dist/src/components/ui/bento-grid.d.ts +11 -0
  72. package/dist/src/components/ui/bento-grid.js +8 -0
  73. package/dist/src/components/ui/bento-grid2.d.ts +15 -0
  74. package/dist/src/components/ui/bento-grid2.js +13 -0
  75. package/dist/src/components/ui/breadcrumb.d.ts +19 -0
  76. package/dist/src/components/ui/breadcrumb.js +23 -0
  77. package/dist/src/components/ui/button.d.ts +11 -0
  78. package/dist/src/components/ui/button.js +33 -0
  79. package/dist/src/components/ui/card.d.ts +8 -0
  80. package/dist/src/components/ui/card.js +16 -0
  81. package/dist/src/components/ui/checkbox.d.ts +4 -0
  82. package/dist/src/components/ui/checkbox.js +8 -0
  83. package/dist/src/components/ui/collapsible.d.ts +5 -0
  84. package/{src/components/ui/collapsible.tsx → dist/src/components/ui/collapsible.js} +5 -9
  85. package/dist/src/components/ui/dialog.d.ts +13 -0
  86. package/dist/src/components/ui/dialog.js +35 -0
  87. package/dist/src/components/ui/dropdown-menu.d.ts +27 -0
  88. package/dist/src/components/ui/dropdown-menu.js +32 -0
  89. package/dist/src/components/ui/floating-navbar.d.ts +9 -0
  90. package/dist/src/components/ui/floating-navbar.js +38 -0
  91. package/dist/src/components/ui/form.d.ts +23 -0
  92. package/dist/src/components/ui/form.js +60 -0
  93. package/dist/src/components/ui/image.d.ts +6 -0
  94. package/dist/src/components/ui/image.js +15 -0
  95. package/dist/src/components/ui/input.d.ts +3 -0
  96. package/dist/src/components/ui/input.js +8 -0
  97. package/dist/src/components/ui/label.d.ts +5 -0
  98. package/dist/src/components/ui/label.js +9 -0
  99. package/dist/src/components/ui/pagination.d.ts +13 -0
  100. package/dist/src/components/ui/pagination.js +29 -0
  101. package/dist/src/components/ui/progress.d.ts +4 -0
  102. package/dist/src/components/ui/progress.js +7 -0
  103. package/dist/src/components/ui/resizable-navbar.d.ts +56 -0
  104. package/dist/src/components/ui/resizable-navbar.js +86 -0
  105. package/dist/src/components/ui/segment-control.d.ts +9 -0
  106. package/dist/src/components/ui/segment-control.js +42 -0
  107. package/dist/src/components/ui/select.d.ts +13 -0
  108. package/dist/src/components/ui/select.js +26 -0
  109. package/dist/src/components/ui/separator.d.ts +4 -0
  110. package/dist/src/components/ui/separator.js +7 -0
  111. package/dist/src/components/ui/sheet.d.ts +25 -0
  112. package/dist/src/components/ui/sheet.js +37 -0
  113. package/dist/src/components/ui/sidebar.d.ts +66 -0
  114. package/dist/src/components/ui/sidebar.js +222 -0
  115. package/dist/src/components/ui/skeleton.d.ts +2 -0
  116. package/dist/src/components/ui/skeleton.js +6 -0
  117. package/dist/src/components/ui/slider.d.ts +4 -0
  118. package/dist/src/components/ui/slider.js +7 -0
  119. package/dist/src/components/ui/sonner.d.ts +4 -0
  120. package/dist/src/components/ui/sonner.js +15 -0
  121. package/dist/src/components/ui/spinner.d.ts +14 -0
  122. package/dist/src/components/ui/spinner.js +30 -0
  123. package/dist/src/components/ui/switch.d.ts +4 -0
  124. package/dist/src/components/ui/switch.js +7 -0
  125. package/dist/src/components/ui/table.d.ts +10 -0
  126. package/dist/src/components/ui/table.js +27 -0
  127. package/dist/src/components/ui/tabs.d.ts +7 -0
  128. package/dist/src/components/ui/tabs.js +16 -0
  129. package/dist/src/components/ui/textarea.d.ts +3 -0
  130. package/dist/src/components/ui/textarea.js +6 -0
  131. package/dist/src/components/ui/timeline.d.ts +11 -0
  132. package/dist/src/components/ui/timeline.js +27 -0
  133. package/dist/src/components/ui/toast.d.ts +15 -0
  134. package/dist/src/components/ui/toast.js +33 -0
  135. package/dist/src/components/ui/tooltip.d.ts +7 -0
  136. package/dist/src/components/ui/tooltip.js +16 -0
  137. package/dist/src/components/ui/typewriter-effect.d.ts +16 -0
  138. package/dist/src/components/ui/typewriter-effect.js +76 -0
  139. package/dist/src/hooks/use-mobile.d.ts +1 -0
  140. package/dist/src/hooks/use-mobile.js +15 -0
  141. package/dist/src/hooks/useDialog.d.ts +4 -0
  142. package/dist/src/hooks/useDialog.js +22 -0
  143. package/dist/src/icons/GoogleIcon.d.ts +5 -0
  144. package/dist/src/icons/GoogleIcon.js +4 -0
  145. package/dist/src/icons/LinkedInIcon.d.ts +5 -0
  146. package/dist/src/icons/LinkedInIcon.js +4 -0
  147. package/dist/src/icons/MicrosoftIcon.d.ts +5 -0
  148. package/dist/src/icons/MicrosoftIcon.js +4 -0
  149. package/dist/src/lib/chatwoot.d.ts +11 -0
  150. package/dist/src/lib/chatwoot.js +28 -0
  151. package/dist/src/lib/utils.d.ts +2 -0
  152. package/dist/src/lib/utils.js +5 -0
  153. package/dist/src/modules/app/components/AppLoader.d.ts +2 -0
  154. package/dist/src/modules/app/components/AppLoader.js +5 -0
  155. package/dist/src/modules/app/components/AppShell.d.ts +7 -0
  156. package/dist/src/modules/app/components/AppShell.js +7 -0
  157. package/dist/src/modules/app/components/AppSidebar.d.ts +7 -0
  158. package/dist/src/modules/app/components/AppSidebar.js +5 -0
  159. package/dist/src/modules/app/components/AppSidebarContent.d.ts +16 -0
  160. package/dist/src/modules/app/components/AppSidebarContent.js +7 -0
  161. package/dist/src/modules/app/components/AppSidebarHeader.d.ts +8 -0
  162. package/dist/src/modules/app/components/AppSidebarHeader.js +10 -0
  163. package/dist/src/modules/app/components/AppSidebarInvites.d.ts +3 -0
  164. package/dist/src/modules/app/components/AppSidebarInvites.js +12 -0
  165. package/dist/src/modules/app/components/AppSidebarUser.d.ts +11 -0
  166. package/dist/src/modules/app/components/AppSidebarUser.js +16 -0
  167. package/dist/src/modules/auth/components/AdminUserManagement.d.ts +6 -0
  168. package/dist/src/modules/auth/components/AdminUserManagement.js +422 -0
  169. package/dist/src/modules/auth/components/AdminWaitlist.d.ts +6 -0
  170. package/dist/src/modules/auth/components/AdminWaitlist.js +118 -0
  171. package/dist/src/modules/auth/components/AuthLayout.d.ts +4 -0
  172. package/dist/src/modules/auth/components/AuthLayout.js +5 -0
  173. package/dist/src/modules/auth/components/AuthProviders.d.ts +6 -0
  174. package/dist/src/modules/auth/components/AuthProviders.js +45 -0
  175. package/dist/src/modules/auth/components/AuthRouter.d.ts +9 -0
  176. package/dist/src/modules/auth/components/AuthRouter.js +12 -0
  177. package/dist/src/modules/auth/components/ClaimAccountRoute.d.ts +4 -0
  178. package/dist/src/modules/auth/components/ClaimAccountRoute.js +143 -0
  179. package/dist/src/modules/auth/components/ErrorAuthRoute.d.ts +1 -0
  180. package/dist/src/modules/auth/components/ErrorAuthRoute.js +93 -0
  181. package/dist/src/modules/auth/components/ForgotPasswordForm.d.ts +1 -0
  182. package/dist/src/modules/auth/components/ForgotPasswordForm.js +27 -0
  183. package/dist/src/modules/auth/components/ForgotPasswordRoute.d.ts +1 -0
  184. package/dist/src/modules/auth/components/ForgotPasswordRoute.js +9 -0
  185. package/dist/src/modules/auth/components/InviteFriends.d.ts +5 -0
  186. package/dist/src/modules/auth/components/InviteFriends.js +74 -0
  187. package/dist/src/modules/auth/components/LastUsedBadge.d.ts +5 -0
  188. package/dist/src/modules/auth/components/LastUsedBadge.js +9 -0
  189. package/dist/src/modules/auth/components/LoginForm.d.ts +3 -0
  190. package/dist/src/modules/auth/components/LoginForm.js +44 -0
  191. package/dist/src/modules/auth/components/LoginRoute.d.ts +3 -0
  192. package/dist/src/modules/auth/components/LoginRoute.js +11 -0
  193. package/dist/src/modules/auth/components/LogoutRoute.d.ts +1 -0
  194. package/dist/src/modules/auth/components/LogoutRoute.js +15 -0
  195. package/dist/src/modules/auth/components/OrganizationAcceptInvitationRoute.d.ts +9 -0
  196. package/dist/src/modules/auth/components/OrganizationAcceptInvitationRoute.js +102 -0
  197. package/dist/src/modules/auth/components/OrganizationMembersRoute.d.ts +51 -0
  198. package/dist/src/modules/auth/components/OrganizationMembersRoute.js +359 -0
  199. package/dist/src/modules/auth/components/OrganizationSettingsRoute.d.ts +20 -0
  200. package/dist/src/modules/auth/components/OrganizationSettingsRoute.js +153 -0
  201. package/dist/src/modules/auth/components/OrganizationSwitcher.d.ts +7 -0
  202. package/dist/src/modules/auth/components/OrganizationSwitcher.js +74 -0
  203. package/dist/src/modules/auth/components/ProfileRoute.d.ts +1 -0
  204. package/dist/src/modules/auth/components/ProfileRoute.js +42 -0
  205. package/dist/src/modules/auth/components/RangeNuqsDatePicker.d.ts +31 -0
  206. package/dist/src/modules/auth/components/RangeNuqsDatePicker.js +236 -0
  207. package/dist/src/modules/auth/components/ResetPasswordForm.d.ts +1 -0
  208. package/dist/src/modules/auth/components/ResetPasswordForm.js +39 -0
  209. package/dist/src/modules/auth/components/ResetPasswordRoute.d.ts +1 -0
  210. package/dist/src/modules/auth/components/ResetPasswordRoute.js +9 -0
  211. package/dist/src/modules/auth/components/SignupFormRoute.d.ts +5 -0
  212. package/dist/src/modules/auth/components/SignupFormRoute.js +106 -0
  213. package/dist/src/modules/auth/components/SignupRoute.d.ts +7 -0
  214. package/dist/src/modules/auth/components/SignupRoute.js +16 -0
  215. package/dist/src/modules/auth/components/UserPreferences.d.ts +30 -0
  216. package/dist/src/modules/auth/components/UserPreferences.js +60 -0
  217. package/dist/src/modules/auth/components/WaitlistCard.d.ts +6 -0
  218. package/dist/src/modules/auth/components/WaitlistCard.js +32 -0
  219. package/dist/src/modules/auth/components/WaitlistCodeValidation.d.ts +7 -0
  220. package/dist/src/modules/auth/components/WaitlistCodeValidation.js +43 -0
  221. package/dist/src/modules/billing/components/BillingBetaPage.d.ts +8 -0
  222. package/dist/src/modules/billing/components/BillingBetaPage.js +11 -0
  223. package/dist/src/modules/billing/components/BillingInvoicePage.d.ts +7 -0
  224. package/dist/src/modules/billing/components/BillingInvoicePage.js +32 -0
  225. package/dist/src/modules/billing/components/BillingPlanSelect.d.ts +6 -0
  226. package/dist/src/modules/billing/components/BillingPlanSelect.js +8 -0
  227. package/dist/src/modules/billing/components/BillingRouter.d.ts +9 -0
  228. package/dist/src/modules/billing/components/BillingRouter.js +8 -0
  229. package/dist/src/modules/billing/components/BillingSinglePlanSelect.d.ts +8 -0
  230. package/dist/src/modules/billing/components/BillingSinglePlanSelect.js +46 -0
  231. package/dist/src/modules/table/components/ColumnOrderAndVisibility.d.ts +10 -0
  232. package/dist/src/modules/table/components/ColumnOrderAndVisibility.js +42 -0
  233. package/dist/src/modules/table/components/NuqsTable.d.ts +23 -0
  234. package/dist/src/modules/table/components/NuqsTable.js +198 -0
  235. package/dist/src/modules/table/components/TableFiltering.d.ts +23 -0
  236. package/dist/src/modules/table/components/TableFiltering.js +236 -0
  237. package/dist/src/modules/table/components/TablePagination.d.ts +9 -0
  238. package/dist/src/modules/table/components/TablePagination.js +21 -0
  239. package/{src/modules/table/components/table.types.ts → dist/src/modules/table/components/table.types.d.ts} +12 -11
  240. package/dist/src/modules/table/components/table.types.js +1 -0
  241. package/dist/src/modules/table/filterTransformers.d.ts +53 -0
  242. package/dist/src/modules/table/filterTransformers.js +276 -0
  243. package/{src/types.ts → dist/src/types.d.ts} +3 -4
  244. package/dist/src/types.js +1 -0
  245. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  246. package/package.json +8 -5
  247. package/.cursor/rules/web-ui.mdc +0 -126
  248. package/.turbo/turbo-build.log +0 -5
  249. package/.turbo/turbo-check-types.log +0 -5
  250. package/.turbo/turbo-lint$colon$fix.log +0 -381
  251. package/.turbo/turbo-lint.log +0 -361
  252. package/CHANGELOG.md +0 -19
  253. package/components.json +0 -21
  254. package/src/animations/card.motion.ts +0 -9
  255. package/src/components/AvatarUpload.tsx +0 -133
  256. package/src/components/Button.tsx +0 -14
  257. package/src/components/Calendar.css +0 -684
  258. package/src/components/Calendar.tsx +0 -32
  259. package/src/components/CardsSelect.tsx +0 -155
  260. package/src/components/CollapsibleSidebarMenuItem.tsx +0 -57
  261. package/src/components/ColorPicker.tsx +0 -56
  262. package/src/components/CopyButton.tsx +0 -45
  263. package/src/components/CropDialog.tsx +0 -154
  264. package/src/components/DialogProvider.tsx +0 -105
  265. package/src/components/ErrorFallback.tsx +0 -17
  266. package/src/components/FileDropzone.tsx +0 -120
  267. package/src/components/MultiSelectDropdown.tsx +0 -233
  268. package/src/components/PageAlert.tsx +0 -121
  269. package/src/components/SelectChips.tsx +0 -40
  270. package/src/components/SidebarItem.tsx +0 -26
  271. package/src/components/Steps.tsx +0 -340
  272. package/src/components/TablerIconPicker.tsx +0 -4260
  273. package/src/components/app-header.tsx +0 -40
  274. package/src/components/blur-card.tsx +0 -132
  275. package/src/components/features-section-demo-1.tsx +0 -127
  276. package/src/components/features-section-demo-2.tsx +0 -102
  277. package/src/components/features-section-demo-3.tsx +0 -272
  278. package/src/components/mode-toggle.tsx +0 -31
  279. package/src/components/nav-main.tsx +0 -69
  280. package/src/components/pricing-cards.tsx +0 -133
  281. package/src/components/shared/ButtonCopy.tsx +0 -50
  282. package/src/components/team-switcher.tsx +0 -83
  283. package/src/components/theme-provider.tsx +0 -74
  284. package/src/components/typewriter.tsx +0 -90
  285. package/src/components/ui/alert-dialog.tsx +0 -133
  286. package/src/components/ui/alert.tsx +0 -60
  287. package/src/components/ui/avatar.tsx +0 -47
  288. package/src/components/ui/badge.tsx +0 -33
  289. package/src/components/ui/bento-grid.tsx +0 -54
  290. package/src/components/ui/bento-grid2.tsx +0 -66
  291. package/src/components/ui/breadcrumb.tsx +0 -101
  292. package/src/components/ui/button.tsx +0 -50
  293. package/src/components/ui/card.tsx +0 -55
  294. package/src/components/ui/checkbox.tsx +0 -26
  295. package/src/components/ui/dialog.tsx +0 -119
  296. package/src/components/ui/dropdown-menu.tsx +0 -186
  297. package/src/components/ui/floating-navbar.tsx +0 -78
  298. package/src/components/ui/form.tsx +0 -167
  299. package/src/components/ui/image.tsx +0 -55
  300. package/src/components/ui/input.tsx +0 -22
  301. package/src/components/ui/label.tsx +0 -19
  302. package/src/components/ui/pagination.tsx +0 -105
  303. package/src/components/ui/progress.tsx +0 -23
  304. package/src/components/ui/resizable-navbar.tsx +0 -260
  305. package/src/components/ui/segment-control.tsx +0 -143
  306. package/src/components/ui/select.tsx +0 -153
  307. package/src/components/ui/separator.tsx +0 -24
  308. package/src/components/ui/sheet.tsx +0 -121
  309. package/src/components/ui/sidebar.tsx +0 -736
  310. package/src/components/ui/skeleton.tsx +0 -7
  311. package/src/components/ui/slider.tsx +0 -23
  312. package/src/components/ui/sonner.tsx +0 -27
  313. package/src/components/ui/spinner.tsx +0 -45
  314. package/src/components/ui/switch.tsx +0 -27
  315. package/src/components/ui/table.tsx +0 -90
  316. package/src/components/ui/tabs.tsx +0 -52
  317. package/src/components/ui/textarea.tsx +0 -18
  318. package/src/components/ui/timeline.tsx +0 -95
  319. package/src/components/ui/toast.tsx +0 -126
  320. package/src/components/ui/tooltip.tsx +0 -55
  321. package/src/components/ui/typewriter-effect.tsx +0 -181
  322. package/src/hooks/use-mobile.ts +0 -19
  323. package/src/hooks/useDialog.ts +0 -25
  324. package/src/icons/GoogleIcon.tsx +0 -32
  325. package/src/icons/LinkedInIcon.tsx +0 -30
  326. package/src/icons/MicrosoftIcon.tsx +0 -21
  327. package/src/lib/chatwoot.ts +0 -51
  328. package/src/lib/utils.ts +0 -6
  329. package/src/modules/app/components/AppLoader.tsx +0 -9
  330. package/src/modules/app/components/AppShell.tsx +0 -21
  331. package/src/modules/app/components/AppSidebar.tsx +0 -26
  332. package/src/modules/app/components/AppSidebarContent.tsx +0 -73
  333. package/src/modules/app/components/AppSidebarHeader.tsx +0 -57
  334. package/src/modules/app/components/AppSidebarInvites.tsx +0 -32
  335. package/src/modules/app/components/AppSidebarUser.tsx +0 -128
  336. package/src/modules/auth/components/AdminUserManagement.tsx +0 -1136
  337. package/src/modules/auth/components/AdminWaitlist.tsx +0 -358
  338. package/src/modules/auth/components/AuthLayout.tsx +0 -13
  339. package/src/modules/auth/components/AuthProviders.tsx +0 -105
  340. package/src/modules/auth/components/AuthRouter.tsx +0 -29
  341. package/src/modules/auth/components/ClaimAccountRoute.tsx +0 -242
  342. package/src/modules/auth/components/ErrorAuthRoute.tsx +0 -121
  343. package/src/modules/auth/components/ForgotPasswordForm.tsx +0 -58
  344. package/src/modules/auth/components/ForgotPasswordRoute.tsx +0 -27
  345. package/src/modules/auth/components/InviteFriends.tsx +0 -273
  346. package/src/modules/auth/components/LastUsedBadge.tsx +0 -22
  347. package/src/modules/auth/components/LoginForm.tsx +0 -104
  348. package/src/modules/auth/components/LoginRoute.tsx +0 -31
  349. package/src/modules/auth/components/LogoutRoute.tsx +0 -21
  350. package/src/modules/auth/components/OrganizationAcceptInvitationRoute.tsx +0 -161
  351. package/src/modules/auth/components/OrganizationMembersRoute.tsx +0 -730
  352. package/src/modules/auth/components/OrganizationSettingsRoute.tsx +0 -280
  353. package/src/modules/auth/components/OrganizationSwitcher.tsx +0 -148
  354. package/src/modules/auth/components/ProfileRoute.tsx +0 -104
  355. package/src/modules/auth/components/RangeNuqsDatePicker.tsx +0 -365
  356. package/src/modules/auth/components/ResetPasswordForm.tsx +0 -103
  357. package/src/modules/auth/components/ResetPasswordRoute.tsx +0 -27
  358. package/src/modules/auth/components/SignupFormRoute.tsx +0 -189
  359. package/src/modules/auth/components/SignupRoute.tsx +0 -53
  360. package/src/modules/auth/components/UserPreferences.tsx +0 -144
  361. package/src/modules/auth/components/WaitlistCard.tsx +0 -78
  362. package/src/modules/auth/components/WaitlistCodeValidation.tsx +0 -79
  363. package/src/modules/billing/components/BillingBetaPage.tsx +0 -124
  364. package/src/modules/billing/components/BillingInvoicePage.tsx +0 -180
  365. package/src/modules/billing/components/BillingPlanSelect.tsx +0 -14
  366. package/src/modules/billing/components/BillingRouter.tsx +0 -20
  367. package/src/modules/billing/components/BillingSinglePlanSelect.tsx +0 -172
  368. package/src/modules/table/components/ColumnOrderAndVisibility.tsx +0 -127
  369. package/src/modules/table/components/NuqsTable.tsx +0 -396
  370. package/src/modules/table/components/TableFiltering.tsx +0 -520
  371. package/src/modules/table/components/TablePagination.tsx +0 -59
  372. package/src/modules/table/filterTransformers.ts +0 -323
  373. package/src/vite-env.d.ts +0 -1
  374. package/translations/en/web-ui.json +0 -192
  375. package/tsconfig.json +0 -30
@@ -1,396 +0,0 @@
1
- import { Checkbox, Popover, PopoverContent, PopoverTrigger } from "@heroui/react";
2
- import type { QueryFilters } from "@m5kdev/commons/modules/schemas/query.schema";
3
- import type { FilterMethods } from "@m5kdev/commons/modules/table/filter.types";
4
- import type { TableParams } from "@m5kdev/frontend/modules/table/hooks/useNuqsTable";
5
- import type { ColumnDef } from "@tanstack/react-table";
6
- import {
7
- type ColumnOrderState,
8
- flexRender,
9
- getCoreRowModel,
10
- getPaginationRowModel,
11
- type Table as ReactTable,
12
- useReactTable,
13
- type VisibilityState,
14
- } from "@tanstack/react-table";
15
- import { ChevronDown, ChevronUp } from "lucide-react";
16
- import { useEffect, useMemo, useState } from "react";
17
- import { Button } from "#components/ui/button";
18
- import {
19
- Table,
20
- TableBody,
21
- TableCell,
22
- TableHead,
23
- TableHeader,
24
- TableRow,
25
- } from "#components/ui/table";
26
- import { ColumnOrderAndVisibility } from "./ColumnOrderAndVisibility";
27
- import { TableFiltering } from "./TableFiltering";
28
- import { TablePagination } from "./TablePagination";
29
- import type { ColumnDataType, ColumnItem } from "./table.types";
30
-
31
- function getStorageKey(columnIds: string[]): string {
32
- const sortedIds = [...columnIds].sort().join(",");
33
- return `table-column-layout-${sortedIds}`;
34
- }
35
-
36
- function loadLayoutFromStorage(
37
- columnIds: string[]
38
- ): { order: string[]; visibility: Record<string, boolean> } | null {
39
- if (typeof window === "undefined") return null;
40
- try {
41
- const key = getStorageKey(columnIds);
42
- const stored = localStorage.getItem(key);
43
- if (!stored) return null;
44
- const parsed = JSON.parse(stored) as { order: string[]; visibility: Record<string, boolean> };
45
- return parsed;
46
- } catch {
47
- return null;
48
- }
49
- }
50
-
51
- function saveLayoutToStorage(
52
- columnIds: string[],
53
- order: string[],
54
- visibility: Record<string, boolean>
55
- ): void {
56
- if (typeof window === "undefined") return;
57
- try {
58
- const key = getStorageKey(columnIds);
59
- localStorage.setItem(key, JSON.stringify({ order, visibility }));
60
- } catch {
61
- // Ignore storage errors
62
- }
63
- }
64
-
65
- export type NuqsTableColumn<T> = ColumnDef<T> & {
66
- visible?: boolean;
67
- type?: ColumnDataType;
68
- options?: { label: string; value: string }[];
69
- endColumnId?: string;
70
- };
71
-
72
- type NuqsTableParams<T> = {
73
- data: T[];
74
- total?: number;
75
- columns: NuqsTableColumn<T>[];
76
- tableProps: TableParams;
77
- singleFilter?: boolean;
78
- filterMethods?: Partial<FilterMethods>;
79
- };
80
-
81
- function applyOrder(prev: ColumnItem[], nextOrder: string[]): ColumnItem[] {
82
- const byId = new Map(prev.map((i) => [i.id, i]));
83
- const ordered = nextOrder.map((id) => byId.get(id)).filter(Boolean) as ColumnItem[];
84
- // append any newly added columns (if any appear later)
85
- for (const item of prev) if (!nextOrder.includes(item.id)) ordered.push(item);
86
- return ordered;
87
- }
88
-
89
- function applyVisibility(prev: ColumnItem[], visibility: VisibilityState): ColumnItem[] {
90
- return prev.map((column) => ({
91
- ...column,
92
- visibility: visibility[String(column.id)] ?? column.visibility,
93
- }));
94
- }
95
-
96
- export const NuqsTable = <T,>({
97
- data,
98
- total,
99
- columns,
100
- tableProps,
101
- singleFilter = false,
102
- filterMethods,
103
- }: NuqsTableParams<T>) => {
104
- const columnIds = useMemo(() => columns.map((col) => String(col.id)), [columns]);
105
- console.log("data", data);
106
- // const columnsWithId = useMemo(() => {
107
- // const idColumn: NuqsTableColumn<T> = {
108
- // id: "__row_id",
109
- // accessorKey: "id",
110
- // header: "",
111
- // enableSorting: false,
112
- // enableHiding: false,
113
- // visible: false,
114
- // };
115
- // return [idColumn, ...columns];
116
- // }, [columns]);
117
-
118
- const initialLayout = useMemo(() => {
119
- const defaultLayout = columns.map((column) => ({
120
- id: String(column.id),
121
- label: column.header as string,
122
- visibility: column.visible !== undefined ? column.visible : true,
123
- options: column.options ?? [],
124
- type: column.type ?? undefined,
125
- }));
126
-
127
- const saved = loadLayoutFromStorage(columnIds);
128
- if (!saved) return defaultLayout;
129
-
130
- // Merge saved layout with default layout
131
- const savedById = new Map<string, { order: number; visibility: boolean }>();
132
- saved.order.forEach((id, index) => {
133
- savedById.set(id, { order: index, visibility: saved.visibility[id] ?? true });
134
- });
135
-
136
- const merged: ColumnItem[] = [];
137
- const processedIds = new Set<string>();
138
-
139
- // Add columns in saved order
140
- saved.order.forEach((id) => {
141
- const defaultCol = defaultLayout.find((col) => col.id === id);
142
- if (defaultCol) {
143
- merged.push({
144
- ...defaultCol,
145
- visibility: saved.visibility[id] ?? defaultCol.visibility,
146
- });
147
- processedIds.add(id);
148
- }
149
- });
150
-
151
- // Add any new columns that weren't in saved layout
152
- defaultLayout.forEach((col) => {
153
- if (!processedIds.has(col.id)) {
154
- merged.push(col);
155
- }
156
- });
157
-
158
- return merged;
159
- }, [columns, columnIds]);
160
-
161
- const [layout, setLayout] = useState<ColumnItem[]>(initialLayout);
162
-
163
- // Sync layout when columns change
164
- useEffect(() => {
165
- setLayout(initialLayout);
166
- }, [initialLayout]);
167
-
168
- // Save to localStorage whenever layout changes
169
- useEffect(() => {
170
- const order = layout.map((col) => col.id);
171
- const visibility = Object.fromEntries(layout.map((col) => [col.id, col.visibility]));
172
- saveLayoutToStorage(columnIds, order, visibility);
173
- }, [layout, columnIds]);
174
-
175
- const columnOrder = useMemo(() => layout.map((column) => column.id), [layout]);
176
- const columnVisibility = useMemo(
177
- () => Object.fromEntries(layout.map((column) => [column.id, column.visibility])),
178
- [layout]
179
- );
180
-
181
- const {
182
- limit = 10,
183
- page = 1,
184
- sorting,
185
- setSorting,
186
- setPagination,
187
- pagination,
188
- rowSelection,
189
- setRowSelection,
190
- setFilters,
191
- filters,
192
- } = tableProps;
193
-
194
- // Redirect back if we're on an empty page (past the last page)
195
- useEffect(() => {
196
- if (data.length === 0 && page > 1 && total !== undefined) {
197
- setPagination?.({ pageIndex: page - 2, pageSize: limit });
198
- }
199
- }, [data.length, page, limit, total, setPagination]);
200
-
201
- // Calculate pageCount from total if available, otherwise use heuristic
202
- const pageCount =
203
- total !== undefined
204
- ? Math.ceil(total / limit) || 1
205
- : data.length === limit
206
- ? page + 1
207
- : Math.max(page, Math.ceil(data.length / limit));
208
-
209
- const table = useReactTable({
210
- data,
211
- columns,
212
- getRowId: (row) => String((row as { id: string | number }).id),
213
- manualSorting: true,
214
- manualPagination: true,
215
- state: { pagination, sorting, rowSelection, columnOrder, columnVisibility },
216
- pageCount,
217
- manualFiltering: true,
218
- onSortingChange: setSorting,
219
- onPaginationChange: setPagination,
220
- onRowSelectionChange: setRowSelection,
221
- getCoreRowModel: getCoreRowModel(),
222
- getPaginationRowModel: getPaginationRowModel(),
223
- onColumnOrderChange: (updater) => {
224
- setLayout((prev) =>
225
- applyOrder(prev, typeof updater === "function" ? updater(prev.map((i) => i.id)) : updater)
226
- );
227
- },
228
- onColumnVisibilityChange: (updater) => {
229
- setLayout((prev) =>
230
- applyVisibility(
231
- prev,
232
- typeof updater === "function"
233
- ? updater(Object.fromEntries(prev.map((i) => [i.id, i.visibility])))
234
- : updater
235
- )
236
- );
237
- },
238
- }) as ReactTable<T>;
239
-
240
- const onChangeOrder = (order: ColumnOrderState) => {
241
- setLayout((prev) => applyOrder(prev, order));
242
- };
243
- const onChangeVisibility = (visibility: VisibilityState) => {
244
- setLayout((prev) => applyVisibility(prev, visibility));
245
- };
246
-
247
- const onFiltersChange = (filters: QueryFilters) => {
248
- setFilters?.(filters);
249
- };
250
-
251
- const filterableColumns = useMemo(() => {
252
- const baseColumns = columns
253
- .filter((column) => Boolean(column.type))
254
- .map((column) => ({
255
- id: String(column.id),
256
- label: String(column.header),
257
- type: column.type,
258
- options: column.options ?? [],
259
- endColumnId: column.endColumnId,
260
- periodStartColumnId: null,
261
- periodEndColumnId: null,
262
- }));
263
-
264
- // Add Period pseudo-columns for date columns with endColumnId
265
- const periodColumns = columns
266
- .filter((column) => column.type === "date" && column.endColumnId)
267
- .map((column) => ({
268
- id: `${String(column.id)}__period`,
269
- label: "Period",
270
- type: "date" as ColumnDataType,
271
- options: [],
272
- endColumnId: null,
273
- periodStartColumnId: String(column.id),
274
- periodEndColumnId: column.endColumnId,
275
- }));
276
-
277
- return [...baseColumns, ...periodColumns];
278
- }, [columns]);
279
-
280
- const [isFiltersOpen, setIsFiltersOpen] = useState(false);
281
- const [isColumnsOpen, setIsColumnsOpen] = useState(false);
282
-
283
- return (
284
- <>
285
- <div className="flex w-full items-center gap-2 justify-end">
286
- <Popover
287
- placement="bottom"
288
- isOpen={isFiltersOpen}
289
- onOpenChange={setIsFiltersOpen}
290
- portalContainer={document.body}
291
- >
292
- <PopoverTrigger>
293
- <Button variant="outline" size="sm">
294
- <div className="flex items-center gap-2">
295
- Filters
296
- <ChevronDown className="h-4 w-4" />
297
- </div>
298
- </Button>
299
- </PopoverTrigger>
300
- <PopoverContent>
301
- <TableFiltering
302
- columns={filterableColumns}
303
- onFiltersChange={onFiltersChange}
304
- filters={filters ?? []}
305
- onClose={() => setIsFiltersOpen(false)}
306
- singleFilter={singleFilter}
307
- filterMethods={filterMethods}
308
- />
309
- </PopoverContent>
310
- </Popover>
311
- <Popover
312
- placement="bottom"
313
- isOpen={isColumnsOpen}
314
- onOpenChange={setIsColumnsOpen}
315
- portalContainer={document.body}
316
- >
317
- <PopoverTrigger>
318
- <Button variant="outline" size="sm">
319
- <div className="flex items-center gap-2">
320
- Columns
321
- <ChevronDown className="h-4 w-4" />
322
- </div>
323
- </Button>
324
- </PopoverTrigger>
325
- <PopoverContent>
326
- <ColumnOrderAndVisibility
327
- layout={layout}
328
- onChangeOrder={onChangeOrder}
329
- onChangeVisibility={onChangeVisibility}
330
- onClose={() => setIsColumnsOpen(false)}
331
- />
332
- </PopoverContent>
333
- </Popover>
334
- </div>
335
- <Table>
336
- <TableHeader>
337
- <TableRow>
338
- <TableHead>
339
- <Checkbox
340
- isSelected={table.getIsAllRowsSelected()}
341
- onValueChange={(checked) => {
342
- table.toggleAllRowsSelected(checked);
343
- }}
344
- />
345
- </TableHead>
346
- {table.getHeaderGroups()[0].headers.map((header) => (
347
- <TableHead
348
- onClick={
349
- header.column.getCanSort() ? header.column.getToggleSortingHandler() : undefined
350
- }
351
- key={header.id}
352
- >
353
- {flexRender(header.column.columnDef.header, header.getContext())}
354
- {header.column.getCanSort() && (
355
- <>
356
- {header.column.getIsSorted() === "asc" && (
357
- <ChevronUp className="h-4 w-4 inline ml-1" />
358
- )}
359
- {header.column.getIsSorted() === "desc" && (
360
- <ChevronDown className="h-4 w-4 inline ml-1" />
361
- )}
362
- </>
363
- )}
364
- </TableHead>
365
- ))}
366
- </TableRow>
367
- </TableHeader>
368
- <TableBody>
369
- {table.getRowModel().rows.map((row) => (
370
- <TableRow key={row.id}>
371
- <TableCell>
372
- <Checkbox
373
- isSelected={row.getIsSelected()}
374
- onValueChange={(checked) => {
375
- row.toggleSelected(checked);
376
- }}
377
- />
378
- </TableCell>
379
- {row.getVisibleCells().map((cell) => (
380
- <TableCell key={cell.id}>
381
- {flexRender(cell.column.columnDef.cell, cell.getContext())}
382
- </TableCell>
383
- ))}
384
- </TableRow>
385
- ))}
386
- </TableBody>
387
- </Table>
388
- <TablePagination
389
- pageCount={pageCount}
390
- page={page}
391
- limit={limit}
392
- setPagination={setPagination}
393
- />
394
- </>
395
- );
396
- };