@greatapps/common 1.1.133 → 1.1.134

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 (394) hide show
  1. package/dist/MMQ4R4NB-B36VHW65.mjs +61 -0
  2. package/dist/MMQ4R4NB-B36VHW65.mjs.map +1 -0
  3. package/dist/V4HPSUGU-6BOE4IPH.mjs +51 -0
  4. package/dist/V4HPSUGU-6BOE4IPH.mjs.map +1 -0
  5. package/dist/account-management.action-7QQCACDJ.mjs +40 -0
  6. package/dist/account.service-XTZDEIPS.mjs +9 -0
  7. package/dist/{modules/auth/services/auth.service.mjs → chunk-7MBVHKTC.mjs} +46 -13
  8. package/dist/chunk-7MBVHKTC.mjs.map +1 -0
  9. package/dist/{modules/users/services/user.service.mjs → chunk-B2W2HK7C.mjs} +13 -8
  10. package/dist/chunk-B2W2HK7C.mjs.map +1 -0
  11. package/dist/{modules/auth/actions/validate-session.action.mjs → chunk-EC3T7NF6.mjs} +8 -4
  12. package/dist/chunk-EC3T7NF6.mjs.map +1 -0
  13. package/dist/chunk-EKZZ2RWJ.mjs +12701 -0
  14. package/dist/chunk-EKZZ2RWJ.mjs.map +1 -0
  15. package/dist/chunk-ICUZDG2N.mjs +283 -0
  16. package/dist/chunk-ICUZDG2N.mjs.map +1 -0
  17. package/dist/{utils/safeServerAction.mjs → chunk-JW4XRHLX.mjs} +7 -2
  18. package/dist/chunk-JW4XRHLX.mjs.map +1 -0
  19. package/dist/chunk-QEFMNBSY.mjs +165 -0
  20. package/dist/chunk-QEFMNBSY.mjs.map +1 -0
  21. package/dist/{infra/api/client.mjs → chunk-RV7ECGIH.mjs} +12 -7
  22. package/dist/chunk-RV7ECGIH.mjs.map +1 -0
  23. package/dist/chunk-S53NE5H4.mjs +2928 -0
  24. package/dist/chunk-S53NE5H4.mjs.map +1 -0
  25. package/dist/{modules/whitelabel/services/whitelabel.service.mjs → chunk-UEWT6VFS.mjs} +57 -9
  26. package/dist/chunk-UEWT6VFS.mjs.map +1 -0
  27. package/dist/chunk-XY4LNPBR.mjs +16 -0
  28. package/dist/chunk-XY4LNPBR.mjs.map +1 -0
  29. package/dist/{modules/accounts/services/account.service.mjs → chunk-Z3Q2LLBS.mjs} +64 -9
  30. package/dist/chunk-Z3Q2LLBS.mjs.map +1 -0
  31. package/dist/find-user-by-id.action-BUFTU3ZY.mjs +11 -0
  32. package/dist/index.mjs +9584 -258
  33. package/dist/index.mjs.map +1 -1
  34. package/dist/modern-4YXF5ES3.mjs +426 -0
  35. package/dist/modern-4YXF5ES3.mjs.map +1 -0
  36. package/dist/server.mjs +140 -36
  37. package/dist/server.mjs.map +1 -1
  38. package/dist/user.service-VDR4JKHO.mjs +8 -0
  39. package/dist/validate-session.action-K7RWN2GE.mjs +11 -0
  40. package/dist/{modules/auth/actions/verify-two-factor.action.mjs → verify-two-factor.action-V6JQATK2.mjs} +12 -4
  41. package/dist/verify-two-factor.action-V6JQATK2.mjs.map +1 -0
  42. package/package.json +1 -1
  43. package/dist/components/account/AccountModals.mjs +0 -18
  44. package/dist/components/account/AccountModals.mjs.map +0 -1
  45. package/dist/components/account/ConfigurationsMyAccountModal.mjs +0 -132
  46. package/dist/components/account/ConfigurationsMyAccountModal.mjs.map +0 -1
  47. package/dist/components/account/ConfirmDeleteAccountModal.mjs +0 -45
  48. package/dist/components/account/ConfirmDeleteAccountModal.mjs.map +0 -1
  49. package/dist/components/account/ConfirmGlobalPreferencesModal.mjs +0 -45
  50. package/dist/components/account/ConfirmGlobalPreferencesModal.mjs.map +0 -1
  51. package/dist/components/account/DeleteAccountModal.mjs +0 -123
  52. package/dist/components/account/DeleteAccountModal.mjs.map +0 -1
  53. package/dist/components/account/DisableTwoFactorAuthModal.mjs +0 -67
  54. package/dist/components/account/DisableTwoFactorAuthModal.mjs.map +0 -1
  55. package/dist/components/account/IsntPossibleDeleteAccountModal.mjs +0 -42
  56. package/dist/components/account/IsntPossibleDeleteAccountModal.mjs.map +0 -1
  57. package/dist/components/account/TwoFactorAuthModal.mjs +0 -190
  58. package/dist/components/account/TwoFactorAuthModal.mjs.map +0 -1
  59. package/dist/components/account/constants.mjs +0 -29
  60. package/dist/components/account/constants.mjs.map +0 -1
  61. package/dist/components/account/hooks/useChangeEmailForm.mjs +0 -53
  62. package/dist/components/account/hooks/useChangeEmailForm.mjs.map +0 -1
  63. package/dist/components/account/hooks/useChangePasswordForm.mjs +0 -47
  64. package/dist/components/account/hooks/useChangePasswordForm.mjs.map +0 -1
  65. package/dist/components/account/hooks/useChangePhoneForm.mjs +0 -64
  66. package/dist/components/account/hooks/useChangePhoneForm.mjs.map +0 -1
  67. package/dist/components/account/hooks/useConfigurationsModal.mjs +0 -33
  68. package/dist/components/account/hooks/useConfigurationsModal.mjs.map +0 -1
  69. package/dist/components/account/hooks/useDisableTwoFactorAuthForm.mjs +0 -54
  70. package/dist/components/account/hooks/useDisableTwoFactorAuthForm.mjs.map +0 -1
  71. package/dist/components/account/hooks/useOtpVerification.mjs +0 -94
  72. package/dist/components/account/hooks/useOtpVerification.mjs.map +0 -1
  73. package/dist/components/account/hooks/useTwoFactorAuthForm.mjs +0 -80
  74. package/dist/components/account/hooks/useTwoFactorAuthForm.mjs.map +0 -1
  75. package/dist/components/account/sections/ChangeEmailModal.mjs +0 -180
  76. package/dist/components/account/sections/ChangeEmailModal.mjs.map +0 -1
  77. package/dist/components/account/sections/ChangePasswordSection.mjs +0 -64
  78. package/dist/components/account/sections/ChangePasswordSection.mjs.map +0 -1
  79. package/dist/components/account/sections/ChangePhoneModal.mjs +0 -182
  80. package/dist/components/account/sections/ChangePhoneModal.mjs.map +0 -1
  81. package/dist/components/account/sections/MyProfileSection.mjs +0 -303
  82. package/dist/components/account/sections/MyProfileSection.mjs.map +0 -1
  83. package/dist/components/account/sections/PreferencesSection.mjs +0 -250
  84. package/dist/components/account/sections/PreferencesSection.mjs.map +0 -1
  85. package/dist/components/account/sections/SecuritySection.mjs +0 -147
  86. package/dist/components/account/sections/SecuritySection.mjs.map +0 -1
  87. package/dist/components/handlers/SearchParamsHandler.mjs +0 -24
  88. package/dist/components/handlers/SearchParamsHandler.mjs.map +0 -1
  89. package/dist/components/layouts/AppMobileNavBar.mjs +0 -115
  90. package/dist/components/layouts/AppMobileNavBar.mjs.map +0 -1
  91. package/dist/components/layouts/AppNavBar.mjs +0 -49
  92. package/dist/components/layouts/AppNavBar.mjs.map +0 -1
  93. package/dist/components/layouts/MainLayout.mjs +0 -60
  94. package/dist/components/layouts/MainLayout.mjs.map +0 -1
  95. package/dist/components/layouts/MdSideBarNavigation.mjs +0 -54
  96. package/dist/components/layouts/MdSideBarNavigation.mjs.map +0 -1
  97. package/dist/components/layouts/NavBar.mjs +0 -132
  98. package/dist/components/layouts/NavBar.mjs.map +0 -1
  99. package/dist/components/layouts/NavBarItem.mjs +0 -23
  100. package/dist/components/layouts/NavBarItem.mjs.map +0 -1
  101. package/dist/components/layouts/NotificationsPopover.mjs +0 -97
  102. package/dist/components/layouts/NotificationsPopover.mjs.map +0 -1
  103. package/dist/components/layouts/ProfilePopover.mjs +0 -150
  104. package/dist/components/layouts/ProfilePopover.mjs.map +0 -1
  105. package/dist/components/layouts/SideBarNavigation.mjs +0 -22
  106. package/dist/components/layouts/SideBarNavigation.mjs.map +0 -1
  107. package/dist/components/layouts/UsersSelectorPopover.mjs +0 -236
  108. package/dist/components/layouts/UsersSelectorPopover.mjs.map +0 -1
  109. package/dist/components/modals/ModalManager.mjs +0 -19
  110. package/dist/components/modals/ModalManager.mjs.map +0 -1
  111. package/dist/components/modals/Modals.mjs +0 -20
  112. package/dist/components/modals/Modals.mjs.map +0 -1
  113. package/dist/components/navigation/AppNavigation.mjs +0 -30
  114. package/dist/components/navigation/AppNavigation.mjs.map +0 -1
  115. package/dist/components/navigation/AppNavigationContext.mjs +0 -13
  116. package/dist/components/navigation/AppNavigationContext.mjs.map +0 -1
  117. package/dist/components/navigation/NavItem.mjs +0 -35
  118. package/dist/components/navigation/NavItem.mjs.map +0 -1
  119. package/dist/components/navigation/NavItemsContext.mjs +0 -16
  120. package/dist/components/navigation/NavItemsContext.mjs.map +0 -1
  121. package/dist/components/navigation/ProjectSelectorPopover.mjs +0 -128
  122. package/dist/components/navigation/ProjectSelectorPopover.mjs.map +0 -1
  123. package/dist/components/navigation/shells/DesktopShell.mjs +0 -11
  124. package/dist/components/navigation/shells/DesktopShell.mjs.map +0 -1
  125. package/dist/components/navigation/shells/MdShell.mjs +0 -11
  126. package/dist/components/navigation/shells/MdShell.mjs.map +0 -1
  127. package/dist/components/navigation/shells/MobileShell.mjs +0 -27
  128. package/dist/components/navigation/shells/MobileShell.mjs.map +0 -1
  129. package/dist/components/navigation/shells/TabsMobileShell.mjs +0 -59
  130. package/dist/components/navigation/shells/TabsMobileShell.mjs.map +0 -1
  131. package/dist/components/navigation/subcomponents/CreditsCard.mjs +0 -30
  132. package/dist/components/navigation/subcomponents/CreditsCard.mjs.map +0 -1
  133. package/dist/components/navigation/subcomponents/NavItems.mjs +0 -25
  134. package/dist/components/navigation/subcomponents/NavItems.mjs.map +0 -1
  135. package/dist/components/navigation/subcomponents/PlanCard.mjs +0 -25
  136. package/dist/components/navigation/subcomponents/PlanCard.mjs.map +0 -1
  137. package/dist/components/navigation/subcomponents/ProjectSelector.mjs +0 -130
  138. package/dist/components/navigation/subcomponents/ProjectSelector.mjs.map +0 -1
  139. package/dist/components/navigation/types.mjs +0 -1
  140. package/dist/components/pages/notifications/Notifications.mjs +0 -156
  141. package/dist/components/pages/notifications/Notifications.mjs.map +0 -1
  142. package/dist/components/ui/buttons/Button.mjs +0 -52
  143. package/dist/components/ui/buttons/Button.mjs.map +0 -1
  144. package/dist/components/ui/buttons/CancelButton.mjs +0 -17
  145. package/dist/components/ui/buttons/CancelButton.mjs.map +0 -1
  146. package/dist/components/ui/buttons/CopyButton.mjs +0 -42
  147. package/dist/components/ui/buttons/CopyButton.mjs.map +0 -1
  148. package/dist/components/ui/data-display/Accordion.mjs +0 -76
  149. package/dist/components/ui/data-display/Accordion.mjs.map +0 -1
  150. package/dist/components/ui/data-display/Badge.mjs +0 -42
  151. package/dist/components/ui/data-display/Badge.mjs.map +0 -1
  152. package/dist/components/ui/data-display/Card.mjs +0 -92
  153. package/dist/components/ui/data-display/Card.mjs.map +0 -1
  154. package/dist/components/ui/data-display/Pagination.mjs +0 -118
  155. package/dist/components/ui/data-display/Pagination.mjs.map +0 -1
  156. package/dist/components/ui/data-display/ScrollArea.mjs +0 -62
  157. package/dist/components/ui/data-display/ScrollArea.mjs.map +0 -1
  158. package/dist/components/ui/data-display/Separator.mjs +0 -28
  159. package/dist/components/ui/data-display/Separator.mjs.map +0 -1
  160. package/dist/components/ui/data-display/Table.mjs +0 -116
  161. package/dist/components/ui/data-display/Table.mjs.map +0 -1
  162. package/dist/components/ui/data-display/Tabs.mjs +0 -69
  163. package/dist/components/ui/data-display/Tabs.mjs.map +0 -1
  164. package/dist/components/ui/data-display/UserAvatar.mjs +0 -49
  165. package/dist/components/ui/data-display/UserAvatar.mjs.map +0 -1
  166. package/dist/components/ui/feedback/CircularProgress.mjs +0 -71
  167. package/dist/components/ui/feedback/CircularProgress.mjs.map +0 -1
  168. package/dist/components/ui/feedback/DefaultCircularProgress.mjs +0 -50
  169. package/dist/components/ui/feedback/DefaultCircularProgress.mjs.map +0 -1
  170. package/dist/components/ui/feedback/LoadingOverlay.mjs +0 -19
  171. package/dist/components/ui/feedback/LoadingOverlay.mjs.map +0 -1
  172. package/dist/components/ui/feedback/Progress.mjs +0 -37
  173. package/dist/components/ui/feedback/Progress.mjs.map +0 -1
  174. package/dist/components/ui/feedback/Toast.mjs +0 -77
  175. package/dist/components/ui/feedback/Toast.mjs.map +0 -1
  176. package/dist/components/ui/form/Calendar.mjs +0 -204
  177. package/dist/components/ui/form/Calendar.mjs.map +0 -1
  178. package/dist/components/ui/form/Checkbox.mjs +0 -33
  179. package/dist/components/ui/form/Checkbox.mjs.map +0 -1
  180. package/dist/components/ui/form/ComboboxField.mjs +0 -130
  181. package/dist/components/ui/form/ComboboxField.mjs.map +0 -1
  182. package/dist/components/ui/form/DatePicker.mjs +0 -82
  183. package/dist/components/ui/form/DatePicker.mjs.map +0 -1
  184. package/dist/components/ui/form/DateRangePicker.mjs +0 -92
  185. package/dist/components/ui/form/DateRangePicker.mjs.map +0 -1
  186. package/dist/components/ui/form/FormField.mjs +0 -103
  187. package/dist/components/ui/form/FormField.mjs.map +0 -1
  188. package/dist/components/ui/form/Input.mjs +0 -21
  189. package/dist/components/ui/form/Input.mjs.map +0 -1
  190. package/dist/components/ui/form/InputOtp.mjs +0 -70
  191. package/dist/components/ui/form/InputOtp.mjs.map +0 -1
  192. package/dist/components/ui/form/PhoneInput.mjs +0 -78
  193. package/dist/components/ui/form/PhoneInput.mjs.map +0 -1
  194. package/dist/components/ui/form/RadioGroup.mjs +0 -37
  195. package/dist/components/ui/form/RadioGroup.mjs.map +0 -1
  196. package/dist/components/ui/form/Select.mjs +0 -179
  197. package/dist/components/ui/form/Select.mjs.map +0 -1
  198. package/dist/components/ui/form/SelectField.mjs +0 -80
  199. package/dist/components/ui/form/SelectField.mjs.map +0 -1
  200. package/dist/components/ui/form/Switch.mjs +0 -33
  201. package/dist/components/ui/form/Switch.mjs.map +0 -1
  202. package/dist/components/ui/form/SwitchOptionFieldWithIcon.mjs +0 -40
  203. package/dist/components/ui/form/SwitchOptionFieldWithIcon.mjs.map +0 -1
  204. package/dist/components/ui/form/TextAreaField.mjs +0 -56
  205. package/dist/components/ui/form/TextAreaField.mjs.map +0 -1
  206. package/dist/components/ui/form/Textarea.mjs +0 -20
  207. package/dist/components/ui/form/Textarea.mjs.map +0 -1
  208. package/dist/components/ui/overlay/Command.mjs +0 -178
  209. package/dist/components/ui/overlay/Command.mjs.map +0 -1
  210. package/dist/components/ui/overlay/Dialog.mjs +0 -142
  211. package/dist/components/ui/overlay/Dialog.mjs.map +0 -1
  212. package/dist/components/ui/overlay/Popover.mjs +0 -46
  213. package/dist/components/ui/overlay/Popover.mjs.map +0 -1
  214. package/dist/components/ui/overlay/Sheet.mjs +0 -142
  215. package/dist/components/ui/overlay/Sheet.mjs.map +0 -1
  216. package/dist/components/ui/overlay/Tooltip.mjs +0 -57
  217. package/dist/components/ui/overlay/Tooltip.mjs.map +0 -1
  218. package/dist/components/widgets/notifications/NotificationCard.mjs +0 -54
  219. package/dist/components/widgets/notifications/NotificationCard.mjs.map +0 -1
  220. package/dist/enums/AccountSectionType.mjs +0 -11
  221. package/dist/enums/AccountSectionType.mjs.map +0 -1
  222. package/dist/hooks/copy-to-clipboard.hook.mjs +0 -52
  223. package/dist/hooks/copy-to-clipboard.hook.mjs.map +0 -1
  224. package/dist/hooks/useCountdownTimer.mjs +0 -29
  225. package/dist/hooks/useCountdownTimer.mjs.map +0 -1
  226. package/dist/hooks/useDebounce.mjs +0 -19
  227. package/dist/hooks/useDebounce.mjs.map +0 -1
  228. package/dist/hooks/useDebounceState.mjs +0 -12
  229. package/dist/hooks/useDebounceState.mjs.map +0 -1
  230. package/dist/hooks/useDebouncedEffect.mjs +0 -44
  231. package/dist/hooks/useDebouncedEffect.mjs.map +0 -1
  232. package/dist/hooks/useIsMobile.mjs +0 -18
  233. package/dist/hooks/useIsMobile.mjs.map +0 -1
  234. package/dist/hooks/usePasswordVisibility.mjs +0 -13
  235. package/dist/hooks/usePasswordVisibility.mjs.map +0 -1
  236. package/dist/infra/api/client.mjs.map +0 -1
  237. package/dist/infra/api/types.mjs +0 -31
  238. package/dist/infra/api/types.mjs.map +0 -1
  239. package/dist/infra/utils/client-info.mjs +0 -27
  240. package/dist/infra/utils/client-info.mjs.map +0 -1
  241. package/dist/infra/utils/clsx.mjs +0 -9
  242. package/dist/infra/utils/clsx.mjs.map +0 -1
  243. package/dist/infra/utils/params.mjs +0 -21
  244. package/dist/infra/utils/params.mjs.map +0 -1
  245. package/dist/infra/utils/parser.mjs +0 -24
  246. package/dist/infra/utils/parser.mjs.map +0 -1
  247. package/dist/infra/utils/percentage.mjs +0 -20
  248. package/dist/infra/utils/percentage.mjs.map +0 -1
  249. package/dist/middlewares/chain.mjs +0 -37
  250. package/dist/middlewares/chain.mjs.map +0 -1
  251. package/dist/middlewares/create-auth-middleware.mjs +0 -28
  252. package/dist/middlewares/create-auth-middleware.mjs.map +0 -1
  253. package/dist/middlewares/types.mjs +0 -11
  254. package/dist/middlewares/types.mjs.map +0 -1
  255. package/dist/modules/accounts/actions/account-management.action.mjs +0 -82
  256. package/dist/modules/accounts/actions/account-management.action.mjs.map +0 -1
  257. package/dist/modules/accounts/actions/find-current-account.action.mjs +0 -10
  258. package/dist/modules/accounts/actions/find-current-account.action.mjs.map +0 -1
  259. package/dist/modules/accounts/actions/list-currencies.action.mjs +0 -10
  260. package/dist/modules/accounts/actions/list-currencies.action.mjs.map +0 -1
  261. package/dist/modules/accounts/actions/list-timezones.action.mjs +0 -10
  262. package/dist/modules/accounts/actions/list-timezones.action.mjs.map +0 -1
  263. package/dist/modules/accounts/hooks/current-account.hook.mjs +0 -24
  264. package/dist/modules/accounts/hooks/current-account.hook.mjs.map +0 -1
  265. package/dist/modules/accounts/hooks/useAccountManagement.mjs +0 -71
  266. package/dist/modules/accounts/hooks/useAccountManagement.mjs.map +0 -1
  267. package/dist/modules/accounts/hooks/useCurrencies.mjs +0 -17
  268. package/dist/modules/accounts/hooks/useCurrencies.mjs.map +0 -1
  269. package/dist/modules/accounts/hooks/useTimezones.mjs +0 -17
  270. package/dist/modules/accounts/hooks/useTimezones.mjs.map +0 -1
  271. package/dist/modules/accounts/services/account.service.mjs.map +0 -1
  272. package/dist/modules/accounts/services/currency.service.mjs +0 -24
  273. package/dist/modules/accounts/services/currency.service.mjs.map +0 -1
  274. package/dist/modules/accounts/services/timezone.service.mjs +0 -65
  275. package/dist/modules/accounts/services/timezone.service.mjs.map +0 -1
  276. package/dist/modules/accounts/services/two-factor.service.mjs +0 -77
  277. package/dist/modules/accounts/services/two-factor.service.mjs.map +0 -1
  278. package/dist/modules/accounts/types.mjs +0 -1
  279. package/dist/modules/auth/actions/login.action.mjs +0 -14
  280. package/dist/modules/auth/actions/login.action.mjs.map +0 -1
  281. package/dist/modules/auth/actions/logout.action.mjs +0 -14
  282. package/dist/modules/auth/actions/logout.action.mjs.map +0 -1
  283. package/dist/modules/auth/actions/register.action.mjs +0 -14
  284. package/dist/modules/auth/actions/register.action.mjs.map +0 -1
  285. package/dist/modules/auth/actions/validate-session.action.mjs.map +0 -1
  286. package/dist/modules/auth/actions/verify-two-factor.action.mjs.map +0 -1
  287. package/dist/modules/auth/hooks/login.hook.mjs +0 -18
  288. package/dist/modules/auth/hooks/login.hook.mjs.map +0 -1
  289. package/dist/modules/auth/hooks/logout.hook.mjs +0 -13
  290. package/dist/modules/auth/hooks/logout.hook.mjs.map +0 -1
  291. package/dist/modules/auth/hooks/register.hook.mjs +0 -13
  292. package/dist/modules/auth/hooks/register.hook.mjs.map +0 -1
  293. package/dist/modules/auth/hooks/useUserQuery.mjs +0 -63
  294. package/dist/modules/auth/hooks/useUserQuery.mjs.map +0 -1
  295. package/dist/modules/auth/schema.mjs +0 -1
  296. package/dist/modules/auth/services/auth.service.mjs.map +0 -1
  297. package/dist/modules/auth/utils/get-user-context.mjs +0 -24
  298. package/dist/modules/auth/utils/get-user-context.mjs.map +0 -1
  299. package/dist/modules/ia-credits/actions/list-ia-credits.action.mjs +0 -10
  300. package/dist/modules/ia-credits/actions/list-ia-credits.action.mjs.map +0 -1
  301. package/dist/modules/ia-credits/hooks/ia-credits.hook.mjs +0 -76
  302. package/dist/modules/ia-credits/hooks/ia-credits.hook.mjs.map +0 -1
  303. package/dist/modules/ia-credits/services/ia-credits.service.mjs +0 -31
  304. package/dist/modules/ia-credits/services/ia-credits.service.mjs.map +0 -1
  305. package/dist/modules/ia-credits/types.mjs +0 -25
  306. package/dist/modules/ia-credits/types.mjs.map +0 -1
  307. package/dist/modules/projects/actions/add-project-user.action.mjs +0 -10
  308. package/dist/modules/projects/actions/add-project-user.action.mjs.map +0 -1
  309. package/dist/modules/projects/actions/list-available-users.action.mjs +0 -10
  310. package/dist/modules/projects/actions/list-available-users.action.mjs.map +0 -1
  311. package/dist/modules/projects/actions/list-project-users.action.mjs +0 -10
  312. package/dist/modules/projects/actions/list-project-users.action.mjs.map +0 -1
  313. package/dist/modules/projects/actions/remove-project-user.action.mjs +0 -10
  314. package/dist/modules/projects/actions/remove-project-user.action.mjs.map +0 -1
  315. package/dist/modules/projects/hooks/list-available-users.hook.mjs +0 -34
  316. package/dist/modules/projects/hooks/list-available-users.hook.mjs.map +0 -1
  317. package/dist/modules/projects/hooks/list-project-users.hook.mjs +0 -34
  318. package/dist/modules/projects/hooks/list-project-users.hook.mjs.map +0 -1
  319. package/dist/modules/projects/services/project-users.service.mjs +0 -78
  320. package/dist/modules/projects/services/project-users.service.mjs.map +0 -1
  321. package/dist/modules/projects/types.mjs +0 -22
  322. package/dist/modules/projects/types.mjs.map +0 -1
  323. package/dist/modules/subscriptions/actions/list-subscriptions.action.mjs +0 -10
  324. package/dist/modules/subscriptions/actions/list-subscriptions.action.mjs.map +0 -1
  325. package/dist/modules/subscriptions/constants/addons.constants.mjs +0 -12
  326. package/dist/modules/subscriptions/constants/addons.constants.mjs.map +0 -1
  327. package/dist/modules/subscriptions/hooks/find-active-subscription.hook.mjs +0 -20
  328. package/dist/modules/subscriptions/hooks/find-active-subscription.hook.mjs.map +0 -1
  329. package/dist/modules/subscriptions/hooks/list-subscriptions.hook.mjs +0 -18
  330. package/dist/modules/subscriptions/hooks/list-subscriptions.hook.mjs.map +0 -1
  331. package/dist/modules/subscriptions/services/subscriptions.service.mjs +0 -32
  332. package/dist/modules/subscriptions/services/subscriptions.service.mjs.map +0 -1
  333. package/dist/modules/subscriptions/types.mjs +0 -57
  334. package/dist/modules/subscriptions/types.mjs.map +0 -1
  335. package/dist/modules/users/action/find-user-by-id.action.mjs +0 -10
  336. package/dist/modules/users/action/find-user-by-id.action.mjs.map +0 -1
  337. package/dist/modules/users/action/list-messages.action.mjs +0 -13
  338. package/dist/modules/users/action/list-messages.action.mjs.map +0 -1
  339. package/dist/modules/users/action/mark-all-messages-as-read.action.mjs +0 -10
  340. package/dist/modules/users/action/mark-all-messages-as-read.action.mjs.map +0 -1
  341. package/dist/modules/users/action/mark-message-as-read.action.mjs +0 -10
  342. package/dist/modules/users/action/mark-message-as-read.action.mjs.map +0 -1
  343. package/dist/modules/users/hooks/messages.hook.mjs +0 -57
  344. package/dist/modules/users/hooks/messages.hook.mjs.map +0 -1
  345. package/dist/modules/users/schema/messages.schema.mjs +0 -21
  346. package/dist/modules/users/schema/messages.schema.mjs.map +0 -1
  347. package/dist/modules/users/schema.mjs +0 -11
  348. package/dist/modules/users/schema.mjs.map +0 -1
  349. package/dist/modules/users/services/messages.service.mjs +0 -35
  350. package/dist/modules/users/services/messages.service.mjs.map +0 -1
  351. package/dist/modules/users/services/user.service.mjs.map +0 -1
  352. package/dist/modules/whitelabel/actions/find-whitelabel-styles.action.mjs +0 -15
  353. package/dist/modules/whitelabel/actions/find-whitelabel-styles.action.mjs.map +0 -1
  354. package/dist/modules/whitelabel/actions/find-whitelabel.action.mjs +0 -21
  355. package/dist/modules/whitelabel/actions/find-whitelabel.action.mjs.map +0 -1
  356. package/dist/modules/whitelabel/schema.mjs +0 -1
  357. package/dist/modules/whitelabel/services/whitelabel-styles.service.mjs +0 -76
  358. package/dist/modules/whitelabel/services/whitelabel-styles.service.mjs.map +0 -1
  359. package/dist/modules/whitelabel/services/whitelabel.service.mjs.map +0 -1
  360. package/dist/modules/whitelabel/styles-schema.mjs +0 -1
  361. package/dist/providers/auth.provider.mjs +0 -94
  362. package/dist/providers/auth.provider.mjs.map +0 -1
  363. package/dist/providers/query.provider.mjs +0 -99
  364. package/dist/providers/query.provider.mjs.map +0 -1
  365. package/dist/providers/whitelabel.provider.mjs +0 -31
  366. package/dist/providers/whitelabel.provider.mjs.map +0 -1
  367. package/dist/store/useAccountModals.mjs +0 -18
  368. package/dist/store/useAccountModals.mjs.map +0 -1
  369. package/dist/store/useMdSidebarStore.mjs +0 -11
  370. package/dist/store/useMdSidebarStore.mjs.map +0 -1
  371. package/dist/store/useMobileNavbarSheet.mjs +0 -14
  372. package/dist/store/useMobileNavbarSheet.mjs.map +0 -1
  373. package/dist/store/useModalManager.mjs +0 -75
  374. package/dist/store/useModalManager.mjs.map +0 -1
  375. package/dist/utils/browser/clipboard.mjs +0 -36
  376. package/dist/utils/browser/clipboard.mjs.map +0 -1
  377. package/dist/utils/file/index.mjs +0 -9
  378. package/dist/utils/file/index.mjs.map +0 -1
  379. package/dist/utils/format/masks.mjs +0 -56
  380. package/dist/utils/format/masks.mjs.map +0 -1
  381. package/dist/utils/intl/locales.mjs +0 -12
  382. package/dist/utils/intl/locales.mjs.map +0 -1
  383. package/dist/utils/safeServerAction.mjs.map +0 -1
  384. package/dist/utils/validators/account.mjs +0 -26
  385. package/dist/utils/validators/account.mjs.map +0 -1
  386. package/dist/utils/validators/common.mjs +0 -47
  387. package/dist/utils/validators/common.mjs.map +0 -1
  388. package/dist/utils/withAction.mjs +0 -13
  389. package/dist/utils/withAction.mjs.map +0 -1
  390. /package/dist/{components/navigation/types.mjs.map → account-management.action-7QQCACDJ.mjs.map} +0 -0
  391. /package/dist/{modules/accounts/types.mjs.map → account.service-XTZDEIPS.mjs.map} +0 -0
  392. /package/dist/{modules/auth/schema.mjs.map → find-user-by-id.action-BUFTU3ZY.mjs.map} +0 -0
  393. /package/dist/{modules/whitelabel/schema.mjs.map → user.service-VDR4JKHO.mjs.map} +0 -0
  394. /package/dist/{modules/whitelabel/styles-schema.mjs.map → validate-session.action-K7RWN2GE.mjs.map} +0 -0
@@ -1,142 +0,0 @@
1
- "use client";
2
- import { jsx, jsxs } from "react/jsx-runtime";
3
- import * as SheetPrimitive from "@radix-ui/react-dialog";
4
- import { XIcon } from "lucide-react";
5
- import { cn } from "../../../infra/utils/clsx";
6
- function Sheet({ ...props }) {
7
- return /* @__PURE__ */ jsx(SheetPrimitive.Root, { "data-slot": "sheet", ...props });
8
- }
9
- function SheetTrigger({
10
- ...props
11
- }) {
12
- return /* @__PURE__ */ jsx(SheetPrimitive.Trigger, { "data-slot": "sheet-trigger", ...props });
13
- }
14
- function SheetClose({
15
- ...props
16
- }) {
17
- return /* @__PURE__ */ jsx(SheetPrimitive.Close, { "data-slot": "sheet-close", ...props });
18
- }
19
- function SheetPortal({
20
- ...props
21
- }) {
22
- return /* @__PURE__ */ jsx(SheetPrimitive.Portal, { "data-slot": "sheet-portal", ...props });
23
- }
24
- function SheetOverlay({
25
- className,
26
- ...props
27
- }) {
28
- return /* @__PURE__ */ jsx(
29
- SheetPrimitive.Overlay,
30
- {
31
- "data-slot": "sheet-overlay",
32
- className: cn(
33
- "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-[1000] bg-black/50",
34
- className
35
- ),
36
- ...props
37
- }
38
- );
39
- }
40
- function SheetContent({
41
- className,
42
- children,
43
- side = "right",
44
- showCloseButton = true,
45
- noAnimation = false,
46
- ...props
47
- }) {
48
- return /* @__PURE__ */ jsxs(SheetPortal, { children: [
49
- /* @__PURE__ */ jsx(SheetOverlay, { className: noAnimation ? "!animate-none" : void 0 }),
50
- /* @__PURE__ */ jsxs(
51
- SheetPrimitive.Content,
52
- {
53
- "data-slot": "sheet-content",
54
- className: cn(
55
- "bg-background fixed z-[1001] flex flex-col gap-4 shadow-lg",
56
- !noAnimation && "data-[state=open]:animate-in data-[state=closed]:animate-out transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500",
57
- !noAnimation && side === "right" && "data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right",
58
- !noAnimation && side === "left" && "data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left",
59
- !noAnimation && side === "top" && "data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",
60
- !noAnimation && side === "bottom" && "data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",
61
- side === "right" && "inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm",
62
- side === "left" && "inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm",
63
- side === "top" && "inset-x-0 top-0 h-auto border-b",
64
- side === "bottom" && "inset-x-0 bottom-0 h-auto border-t",
65
- className
66
- ),
67
- ...props,
68
- children: [
69
- children,
70
- showCloseButton && /* @__PURE__ */ jsxs(
71
- SheetPrimitive.Close,
72
- {
73
- "data-slot": "sheet-close",
74
- className: "absolute top-3 right-3 hover:cursor-pointer flex size-8 items-center justify-center rounded-lg p-2 text-gray-500 transition-colors hover:bg-gray-100 hover:text-gray-950 focus:outline-none",
75
- children: [
76
- /* @__PURE__ */ jsx(XIcon, { className: "size-[18px]" }),
77
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
78
- ]
79
- }
80
- )
81
- ]
82
- }
83
- )
84
- ] });
85
- }
86
- function SheetHeader({ className, ...props }) {
87
- return /* @__PURE__ */ jsx(
88
- "div",
89
- {
90
- "data-slot": "sheet-header",
91
- className: cn("flex flex-col gap-1.5 p-4", className),
92
- ...props
93
- }
94
- );
95
- }
96
- function SheetFooter({ className, ...props }) {
97
- return /* @__PURE__ */ jsx(
98
- "div",
99
- {
100
- "data-slot": "sheet-footer",
101
- className: cn("mt-auto flex flex-col gap-2 p-4", className),
102
- ...props
103
- }
104
- );
105
- }
106
- function SheetTitle({
107
- className,
108
- ...props
109
- }) {
110
- return /* @__PURE__ */ jsx(
111
- SheetPrimitive.Title,
112
- {
113
- "data-slot": "sheet-title",
114
- className: cn("text-foreground font-semibold", className),
115
- ...props
116
- }
117
- );
118
- }
119
- function SheetDescription({
120
- className,
121
- ...props
122
- }) {
123
- return /* @__PURE__ */ jsx(
124
- SheetPrimitive.Description,
125
- {
126
- "data-slot": "sheet-description",
127
- className: cn("text-muted-foreground text-sm", className),
128
- ...props
129
- }
130
- );
131
- }
132
- export {
133
- Sheet,
134
- SheetClose,
135
- SheetContent,
136
- SheetDescription,
137
- SheetFooter,
138
- SheetHeader,
139
- SheetTitle,
140
- SheetTrigger
141
- };
142
- //# sourceMappingURL=Sheet.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/ui/overlay/Sheet.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport * as SheetPrimitive from \"@radix-ui/react-dialog\";\nimport { XIcon } from \"lucide-react\";\nimport { cn } from \"../../../infra/utils/clsx\";\n\nfunction Sheet({ ...props }: React.ComponentProps<typeof SheetPrimitive.Root>) {\n return <SheetPrimitive.Root data-slot=\"sheet\" {...props} />;\n}\n\nfunction SheetTrigger({\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Trigger>) {\n return <SheetPrimitive.Trigger data-slot=\"sheet-trigger\" {...props} />;\n}\n\nfunction SheetClose({\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Close>) {\n return <SheetPrimitive.Close data-slot=\"sheet-close\" {...props} />;\n}\n\nfunction SheetPortal({\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Portal>) {\n return <SheetPrimitive.Portal data-slot=\"sheet-portal\" {...props} />;\n}\n\nfunction SheetOverlay({\n className,\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Overlay>) {\n return (\n <SheetPrimitive.Overlay\n data-slot=\"sheet-overlay\"\n className={cn(\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-[1000] bg-black/50\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction SheetContent({\n className,\n children,\n side = \"right\",\n showCloseButton = true,\n noAnimation = false,\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Content> & {\n side?: \"top\" | \"right\" | \"bottom\" | \"left\";\n showCloseButton?: boolean;\n noAnimation?: boolean;\n}) {\n return (\n <SheetPortal>\n <SheetOverlay className={noAnimation ? \"!animate-none\" : undefined} />\n <SheetPrimitive.Content\n data-slot=\"sheet-content\"\n className={cn(\n \"bg-background fixed z-[1001] flex flex-col gap-4 shadow-lg\",\n !noAnimation &&\n \"data-[state=open]:animate-in data-[state=closed]:animate-out transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500\",\n !noAnimation &&\n side === \"right\" &&\n \"data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right\",\n !noAnimation &&\n side === \"left\" &&\n \"data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left\",\n !noAnimation &&\n side === \"top\" &&\n \"data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top\",\n !noAnimation &&\n side === \"bottom\" &&\n \"data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom\",\n side === \"right\" &&\n \"inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm\",\n side === \"left\" &&\n \"inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm\",\n side === \"top\" && \"inset-x-0 top-0 h-auto border-b\",\n side === \"bottom\" && \"inset-x-0 bottom-0 h-auto border-t\",\n className,\n )}\n {...props}\n >\n {children}\n {showCloseButton && (\n <SheetPrimitive.Close\n data-slot=\"sheet-close\"\n className=\"absolute top-3 right-3 hover:cursor-pointer flex size-8 items-center justify-center rounded-lg p-2 text-gray-500 transition-colors hover:bg-gray-100 hover:text-gray-950 focus:outline-none\"\n >\n <XIcon className=\"size-[18px]\" />\n <span className=\"sr-only\">Close</span>\n </SheetPrimitive.Close>\n )}\n </SheetPrimitive.Content>\n </SheetPortal>\n );\n}\n\nfunction SheetHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sheet-header\"\n className={cn(\"flex flex-col gap-1.5 p-4\", className)}\n {...props}\n />\n );\n}\n\nfunction SheetFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"sheet-footer\"\n className={cn(\"mt-auto flex flex-col gap-2 p-4\", className)}\n {...props}\n />\n );\n}\n\nfunction SheetTitle({\n className,\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Title>) {\n return (\n <SheetPrimitive.Title\n data-slot=\"sheet-title\"\n className={cn(\"text-foreground font-semibold\", className)}\n {...props}\n />\n );\n}\n\nfunction SheetDescription({\n className,\n ...props\n}: React.ComponentProps<typeof SheetPrimitive.Description>) {\n return (\n <SheetPrimitive.Description\n data-slot=\"sheet-description\"\n className={cn(\"text-muted-foreground text-sm\", className)}\n {...props}\n />\n );\n}\n\nexport {\n Sheet,\n SheetTrigger,\n SheetClose,\n SheetContent,\n SheetHeader,\n SheetFooter,\n SheetTitle,\n SheetDescription,\n};\n"],"mappings":"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","names":[]}
@@ -1,57 +0,0 @@
1
- "use client";
2
- import { jsx, jsxs } from "react/jsx-runtime";
3
- import * as TooltipPrimitive from "@radix-ui/react-tooltip";
4
- import { cn } from "../../../infra/utils/clsx";
5
- function TooltipProvider({
6
- delayDuration = 0,
7
- ...props
8
- }) {
9
- return /* @__PURE__ */ jsx(
10
- TooltipPrimitive.Provider,
11
- {
12
- "data-slot": "tooltip-provider",
13
- delayDuration,
14
- ...props
15
- }
16
- );
17
- }
18
- function Tooltip({
19
- ...props
20
- }) {
21
- return /* @__PURE__ */ jsx(TooltipProvider, { children: /* @__PURE__ */ jsx(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props }) });
22
- }
23
- function TooltipTrigger({
24
- ...props
25
- }) {
26
- return /* @__PURE__ */ jsx(TooltipPrimitive.Trigger, { "data-slot": "tooltip-trigger", ...props });
27
- }
28
- function TooltipContent({
29
- className,
30
- sideOffset = 0,
31
- children,
32
- ...props
33
- }) {
34
- return /* @__PURE__ */ jsx(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsxs(
35
- TooltipPrimitive.Content,
36
- {
37
- "data-slot": "tooltip-content",
38
- sideOffset,
39
- className: cn(
40
- "bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",
41
- className
42
- ),
43
- ...props,
44
- children: [
45
- children,
46
- /* @__PURE__ */ jsx(TooltipPrimitive.Arrow, { className: "bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%-2px)] rotate-45 rounded-[2px]" })
47
- ]
48
- }
49
- ) });
50
- }
51
- export {
52
- Tooltip,
53
- TooltipContent,
54
- TooltipProvider,
55
- TooltipTrigger
56
- };
57
- //# sourceMappingURL=Tooltip.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/ui/overlay/Tooltip.tsx"],"sourcesContent":["'use client';\n\n\"use client\"\n\nimport * as React from \"react\"\nimport * as TooltipPrimitive from \"@radix-ui/react-tooltip\"\nimport { cn } from \"../../../infra/utils/clsx\"\n\nfunction TooltipProvider({\n delayDuration = 0,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Provider>) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delayDuration={delayDuration}\n {...props}\n />\n )\n}\n\nfunction Tooltip({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Root>) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n )\n}\n\nfunction TooltipTrigger({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Trigger>) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />\n}\n\nfunction TooltipContent({\n className,\n sideOffset = 0,\n children,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Content>) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(\n \"bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance\",\n className\n )}\n {...props}\n >\n {children}\n <TooltipPrimitive.Arrow className=\"bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%-2px)] rotate-45 rounded-[2px]\" />\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n )\n}\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider }\n"],"mappings":";AAaI,cAgCE,YAhCF;AARJ,YAAY,sBAAsB;AAClC,SAAS,UAAU;AAEnB,SAAS,gBAAgB;AAAA,EACvB,gBAAgB;AAAA,EAChB,GAAG;AACL,GAA2D;AACzD,SACE;AAAA,IAAC,iBAAiB;AAAA,IAAjB;AAAA,MACC,aAAU;AAAA,MACV;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,QAAQ;AAAA,EACf,GAAG;AACL,GAAuD;AACrD,SACE,oBAAC,mBACC,8BAAC,iBAAiB,MAAjB,EAAsB,aAAU,WAAW,GAAG,OAAO,GACxD;AAEJ;AAEA,SAAS,eAAe;AAAA,EACtB,GAAG;AACL,GAA0D;AACxD,SAAO,oBAAC,iBAAiB,SAAjB,EAAyB,aAAU,mBAAmB,GAAG,OAAO;AAC1E;AAEA,SAAS,eAAe;AAAA,EACtB;AAAA,EACA,aAAa;AAAA,EACb;AAAA,EACA,GAAG;AACL,GAA0D;AACxD,SACE,oBAAC,iBAAiB,QAAjB,EACC;AAAA,IAAC,iBAAiB;AAAA,IAAjB;AAAA,MACC,aAAU;AAAA,MACV;AAAA,MACA,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH;AAAA;AAAA,QACD,oBAAC,iBAAiB,OAAjB,EAAuB,WAAU,oGAAmG;AAAA;AAAA;AAAA,EACvI,GACF;AAEJ;","names":[]}
@@ -1,54 +0,0 @@
1
- import { jsx, jsxs } from "react/jsx-runtime";
2
- import { Clock } from "lucide-react";
3
- import { cn } from "../../../infra/utils/clsx";
4
- function NotificationCard({
5
- icon,
6
- iconBgColor,
7
- title,
8
- description,
9
- time,
10
- actions,
11
- isUnread = false,
12
- showBorder = true,
13
- className,
14
- gapPx = 16
15
- }) {
16
- return /* @__PURE__ */ jsxs(
17
- "div",
18
- {
19
- className: cn(
20
- "flex flex-col lg:flex-row items-start p-4 lg:p-6 gap-4 lg:gap-5 relative",
21
- showBorder && "border-b border-gray-200",
22
- className
23
- ),
24
- children: [
25
- /* @__PURE__ */ jsx(
26
- "div",
27
- {
28
- className: cn(
29
- "flex items-center justify-center size-10 rounded-full shrink-0",
30
- iconBgColor
31
- ),
32
- children: icon
33
- }
34
- ),
35
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col flex-1", style: { gap: `${gapPx}px` }, children: [
36
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1", children: [
37
- /* @__PURE__ */ jsx("span", { className: "paragraph-small-semibold text-gray-950", children: title }),
38
- description && /* @__PURE__ */ jsx("span", { className: "paragraph-small-regular text-gray-600", children: description })
39
- ] }),
40
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5", children: [
41
- /* @__PURE__ */ jsx(Clock, { size: 14, className: "text-gray-400" }),
42
- /* @__PURE__ */ jsx("span", { className: "paragraph-xsmall-medium text-gray-600", children: time })
43
- ] }),
44
- actions && /* @__PURE__ */ jsx("div", { className: "flex items-center gap-2", children: actions })
45
- ] }),
46
- isUnread && /* @__PURE__ */ jsx("div", { className: "size-2 bg-pages-400 rounded-full shrink-0 mt-1" })
47
- ]
48
- }
49
- );
50
- }
51
- export {
52
- NotificationCard as default
53
- };
54
- //# sourceMappingURL=NotificationCard.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/widgets/notifications/NotificationCard.tsx"],"sourcesContent":["import { Clock } from 'lucide-react';\r\nimport { ReactNode } from 'react';\r\nimport { cn } from '../../../infra/utils/clsx';\r\n\r\ntype NotificationCardProps = {\r\n icon: ReactNode;\r\n iconBgColor?: string;\r\n title: string;\r\n description?: string;\r\n time: string;\r\n actions?: ReactNode;\r\n isUnread?: boolean;\r\n showBorder?: boolean;\r\n className?: string;\r\n gapPx: number;\r\n};\r\n\r\nexport default function NotificationCard({\r\n icon,\r\n iconBgColor,\r\n title,\r\n description,\r\n time,\r\n actions,\r\n isUnread = false,\r\n showBorder = true,\r\n className,\r\n gapPx = 16\r\n}: NotificationCardProps) {\r\n return (\r\n <div\r\n className={cn(\r\n 'flex flex-col lg:flex-row items-start p-4 lg:p-6 gap-4 lg:gap-5 relative',\r\n showBorder && 'border-b border-gray-200',\r\n className\r\n )}\r\n >\r\n <div\r\n className={cn(\r\n 'flex items-center justify-center size-10 rounded-full shrink-0',\r\n iconBgColor\r\n )}\r\n >\r\n {icon}\r\n </div>\r\n\r\n <div className=\"flex flex-col flex-1\" style={{ gap: `${gapPx}px` }}>\r\n <div className=\"flex flex-col gap-1\">\r\n <span className=\"paragraph-small-semibold text-gray-950\">{title}</span>\r\n {description && (\r\n <span className=\"paragraph-small-regular text-gray-600\">{description}</span>\r\n )}\r\n </div>\r\n\r\n <div className=\"flex items-center gap-1.5\">\r\n <Clock size={14} className=\"text-gray-400\" />\r\n <span className=\"paragraph-xsmall-medium text-gray-600\">{time}</span>\r\n </div>\r\n\r\n {actions && <div className=\"flex items-center gap-2\">{actions}</div>}\r\n </div>\r\n\r\n {isUnread && <div className=\"size-2 bg-pages-400 rounded-full shrink-0 mt-1\" />}\r\n </div>\r\n );\r\n}\r\n\r\nexport type { NotificationCardProps };\r\n"],"mappings":"AAqCM,cAUE,YAVF;AArCN,SAAS,aAAa;AAEtB,SAAS,UAAU;AAeJ,SAAR,iBAAkC;AAAA,EACvC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX,aAAa;AAAA,EACb;AAAA,EACA,QAAQ;AACV,GAA0B;AACxB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW;AAAA,QACT;AAAA,QACA,cAAc;AAAA,QACd;AAAA,MACF;AAAA,MAEA;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,WAAW;AAAA,cACT;AAAA,cACA;AAAA,YACF;AAAA,YAEC;AAAA;AAAA,QACH;AAAA,QAEA,qBAAC,SAAI,WAAU,wBAAuB,OAAO,EAAE,KAAK,GAAG,KAAK,KAAK,GAC/D;AAAA,+BAAC,SAAI,WAAU,uBACb;AAAA,gCAAC,UAAK,WAAU,0CAA0C,iBAAM;AAAA,YAC/D,eACC,oBAAC,UAAK,WAAU,yCAAyC,uBAAY;AAAA,aAEzE;AAAA,UAEA,qBAAC,SAAI,WAAU,6BACb;AAAA,gCAAC,SAAM,MAAM,IAAI,WAAU,iBAAgB;AAAA,YAC3C,oBAAC,UAAK,WAAU,yCAAyC,gBAAK;AAAA,aAChE;AAAA,UAEC,WAAW,oBAAC,SAAI,WAAU,2BAA2B,mBAAQ;AAAA,WAChE;AAAA,QAEC,YAAY,oBAAC,SAAI,WAAU,kDAAiD;AAAA;AAAA;AAAA,EAC/E;AAEJ;","names":[]}
@@ -1,11 +0,0 @@
1
- var AccountSectionType = /* @__PURE__ */ ((AccountSectionType2) => {
2
- AccountSectionType2["MY_PROFILE"] = "my-profile";
3
- AccountSectionType2["SECURITY"] = "security";
4
- AccountSectionType2["PREFERENCES"] = "preferences";
5
- AccountSectionType2["CHANGE_PASSWORD"] = "change-password";
6
- return AccountSectionType2;
7
- })(AccountSectionType || {});
8
- export {
9
- AccountSectionType
10
- };
11
- //# sourceMappingURL=AccountSectionType.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/enums/AccountSectionType.ts"],"sourcesContent":["export enum AccountSectionType {\r\n MY_PROFILE = 'my-profile',\r\n SECURITY = 'security',\r\n PREFERENCES = 'preferences',\r\n CHANGE_PASSWORD = 'change-password',\r\n}\r\n"],"mappings":"AAAO,IAAK,qBAAL,kBAAKA,wBAAL;AACL,EAAAA,oBAAA,gBAAa;AACb,EAAAA,oBAAA,cAAW;AACX,EAAAA,oBAAA,iBAAc;AACd,EAAAA,oBAAA,qBAAkB;AAJR,SAAAA;AAAA,GAAA;","names":["AccountSectionType"]}
@@ -1,52 +0,0 @@
1
- "use client";
2
- import { useState, useCallback, useRef, useEffect } from "react";
3
- function useCopyToClipboard({
4
- feedbackDuration = 2e3,
5
- onSuccess,
6
- onError
7
- } = {}) {
8
- const [isCopied, setIsCopied] = useState(false);
9
- const timeoutRef = useRef(null);
10
- useEffect(() => {
11
- return () => {
12
- if (timeoutRef.current) {
13
- clearTimeout(timeoutRef.current);
14
- }
15
- };
16
- }, []);
17
- const copy = useCallback(
18
- async (text) => {
19
- if (timeoutRef.current) {
20
- clearTimeout(timeoutRef.current);
21
- }
22
- try {
23
- if (navigator.clipboard?.writeText) {
24
- await navigator.clipboard.writeText(text);
25
- } else {
26
- const textarea = document.createElement("textarea");
27
- textarea.value = text;
28
- textarea.style.cssText = "position:fixed;top:-9999px;left:-9999px;opacity:0";
29
- document.body.appendChild(textarea);
30
- textarea.focus();
31
- textarea.select();
32
- const success = document.execCommand("copy");
33
- document.body.removeChild(textarea);
34
- if (!success) throw new Error("execCommand copy failed");
35
- }
36
- setIsCopied(true);
37
- onSuccess?.();
38
- timeoutRef.current = setTimeout(() => {
39
- setIsCopied(false);
40
- }, feedbackDuration);
41
- } catch (error) {
42
- onError?.(error instanceof Error ? error : new Error("Failed to copy"));
43
- }
44
- },
45
- [feedbackDuration, onSuccess, onError]
46
- );
47
- return { isCopied, copy };
48
- }
49
- export {
50
- useCopyToClipboard as default
51
- };
52
- //# sourceMappingURL=copy-to-clipboard.hook.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/copy-to-clipboard.hook.tsx"],"sourcesContent":["'use client';\n\nimport { useState, useCallback, useRef, useEffect } from \"react\";\n\ninterface UseCopyToClipboardOptions {\n feedbackDuration?: number;\n onSuccess?: () => void;\n onError?: (error: Error) => void;\n}\n\ninterface UseCopyToClipboardReturn {\n isCopied: boolean;\n copy: (text: string) => Promise<void>;\n}\n\nexport default function useCopyToClipboard({\n feedbackDuration = 2000,\n onSuccess,\n onError,\n}: UseCopyToClipboardOptions = {}): UseCopyToClipboardReturn {\n const [isCopied, setIsCopied] = useState(false);\n const timeoutRef = useRef<NodeJS.Timeout | null>(null);\n\n useEffect(() => {\n return () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n };\n }, []);\n\n const copy = useCallback(\n async (text: string) => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n\n try {\n if (navigator.clipboard?.writeText) {\n await navigator.clipboard.writeText(text);\n } else {\n const textarea = document.createElement(\"textarea\");\n textarea.value = text;\n textarea.style.cssText = \"position:fixed;top:-9999px;left:-9999px;opacity:0\";\n document.body.appendChild(textarea);\n textarea.focus();\n textarea.select();\n const success = document.execCommand(\"copy\");\n document.body.removeChild(textarea);\n if (!success) throw new Error(\"execCommand copy failed\");\n }\n\n setIsCopied(true);\n onSuccess?.();\n\n timeoutRef.current = setTimeout(() => {\n setIsCopied(false);\n }, feedbackDuration);\n } catch (error) {\n onError?.(error instanceof Error ? error : new Error(\"Failed to copy\"));\n }\n },\n [feedbackDuration, onSuccess, onError],\n );\n\n return { isCopied, copy };\n}\n"],"mappings":";AAEA,SAAS,UAAU,aAAa,QAAQ,iBAAiB;AAa1C,SAAR,mBAAoC;AAAA,EACzC,mBAAmB;AAAA,EACnB;AAAA,EACA;AACF,IAA+B,CAAC,GAA6B;AAC3D,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,KAAK;AAC9C,QAAM,aAAa,OAA8B,IAAI;AAErD,YAAU,MAAM;AACd,WAAO,MAAM;AACX,UAAI,WAAW,SAAS;AACtB,qBAAa,WAAW,OAAO;AAAA,MACjC;AAAA,IACF;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,QAAM,OAAO;AAAA,IACX,OAAO,SAAiB;AACtB,UAAI,WAAW,SAAS;AACtB,qBAAa,WAAW,OAAO;AAAA,MACjC;AAEA,UAAI;AACF,YAAI,UAAU,WAAW,WAAW;AAClC,gBAAM,UAAU,UAAU,UAAU,IAAI;AAAA,QAC1C,OAAO;AACL,gBAAM,WAAW,SAAS,cAAc,UAAU;AAClD,mBAAS,QAAQ;AACjB,mBAAS,MAAM,UAAU;AACzB,mBAAS,KAAK,YAAY,QAAQ;AAClC,mBAAS,MAAM;AACf,mBAAS,OAAO;AAChB,gBAAM,UAAU,SAAS,YAAY,MAAM;AAC3C,mBAAS,KAAK,YAAY,QAAQ;AAClC,cAAI,CAAC,QAAS,OAAM,IAAI,MAAM,yBAAyB;AAAA,QACzD;AAEA,oBAAY,IAAI;AAChB,oBAAY;AAEZ,mBAAW,UAAU,WAAW,MAAM;AACpC,sBAAY,KAAK;AAAA,QACnB,GAAG,gBAAgB;AAAA,MACrB,SAAS,OAAO;AACd,kBAAU,iBAAiB,QAAQ,QAAQ,IAAI,MAAM,gBAAgB,CAAC;AAAA,MACxE;AAAA,IACF;AAAA,IACA,CAAC,kBAAkB,WAAW,OAAO;AAAA,EACvC;AAEA,SAAO,EAAE,UAAU,KAAK;AAC1B;","names":[]}
@@ -1,29 +0,0 @@
1
- "use client";
2
- import { useEffect, useState, useCallback } from "react";
3
- function useCountdownTimer({
4
- initialSeconds = 59,
5
- onExpire
6
- } = {}) {
7
- const [seconds, setSeconds] = useState(initialSeconds);
8
- const [isExpired, setIsExpired] = useState(false);
9
- useEffect(() => {
10
- if (seconds > 0) {
11
- const interval = setInterval(() => {
12
- setSeconds((prev) => prev - 1);
13
- }, 1e3);
14
- return () => clearInterval(interval);
15
- } else {
16
- setIsExpired(true);
17
- onExpire?.();
18
- }
19
- }, [seconds, onExpire]);
20
- const reset = useCallback(() => {
21
- setSeconds(initialSeconds);
22
- setIsExpired(false);
23
- }, [initialSeconds]);
24
- return { seconds, isExpired, reset };
25
- }
26
- export {
27
- useCountdownTimer as default
28
- };
29
- //# sourceMappingURL=useCountdownTimer.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useCountdownTimer.ts"],"sourcesContent":["'use client';\r\n\r\nimport { useEffect, useState, useCallback } from 'react';\r\n\r\ninterface UseCountdownTimerOptions {\r\n initialSeconds?: number;\r\n onExpire?: () => void;\r\n}\r\n\r\ninterface UseCountdownTimerReturn {\r\n seconds: number;\r\n isExpired: boolean;\r\n reset: () => void;\r\n}\r\n\r\nexport default function useCountdownTimer({\r\n initialSeconds = 59,\r\n onExpire,\r\n}: UseCountdownTimerOptions = {}): UseCountdownTimerReturn {\r\n const [seconds, setSeconds] = useState(initialSeconds);\r\n const [isExpired, setIsExpired] = useState(false);\r\n\r\n useEffect(() => {\r\n if (seconds > 0) {\r\n const interval = setInterval(() => {\r\n setSeconds((prev) => prev - 1);\r\n }, 1000);\r\n return () => clearInterval(interval);\r\n } else {\r\n setIsExpired(true);\r\n onExpire?.();\r\n }\r\n }, [seconds, onExpire]);\r\n\r\n const reset = useCallback(() => {\r\n setSeconds(initialSeconds);\r\n setIsExpired(false);\r\n }, [initialSeconds]);\r\n\r\n return { seconds, isExpired, reset };\r\n}\r\n"],"mappings":";AAEA,SAAS,WAAW,UAAU,mBAAmB;AAalC,SAAR,kBAAmC;AAAA,EACxC,iBAAiB;AAAA,EACjB;AACF,IAA8B,CAAC,GAA4B;AACzD,QAAM,CAAC,SAAS,UAAU,IAAI,SAAS,cAAc;AACrD,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,KAAK;AAEhD,YAAU,MAAM;AACd,QAAI,UAAU,GAAG;AACf,YAAM,WAAW,YAAY,MAAM;AACjC,mBAAW,CAAC,SAAS,OAAO,CAAC;AAAA,MAC/B,GAAG,GAAI;AACP,aAAO,MAAM,cAAc,QAAQ;AAAA,IACrC,OAAO;AACL,mBAAa,IAAI;AACjB,iBAAW;AAAA,IACb;AAAA,EACF,GAAG,CAAC,SAAS,QAAQ,CAAC;AAEtB,QAAM,QAAQ,YAAY,MAAM;AAC9B,eAAW,cAAc;AACzB,iBAAa,KAAK;AAAA,EACpB,GAAG,CAAC,cAAc,CAAC;AAEnB,SAAO,EAAE,SAAS,WAAW,MAAM;AACrC;","names":[]}
@@ -1,19 +0,0 @@
1
- "use client";
2
- import { useEffect, useState } from "react";
3
- function useDebounce(value, delay = 400, onDebounce) {
4
- const [debouncedValue, setDebouncedValue] = useState(value);
5
- useEffect(() => {
6
- const handler = setTimeout(() => {
7
- setDebouncedValue(value);
8
- onDebounce?.();
9
- }, delay);
10
- return () => {
11
- clearTimeout(handler);
12
- };
13
- }, [value, delay, onDebounce]);
14
- return debouncedValue;
15
- }
16
- export {
17
- useDebounce
18
- };
19
- //# sourceMappingURL=useDebounce.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useDebounce.ts"],"sourcesContent":["'use client';\n\nimport { useEffect, useState } from 'react';\n\n/**\n * Hook para aplicar debounce em valores\n * @param value - Valor a ser debounced\n * @param delay - Delay em milissegundos (padrão: 400ms)\n * @returns Valor debounced\n */\nexport function useDebounce<T>(value: T, delay: number = 400, onDebounce?: () => void): T {\n const [debouncedValue, setDebouncedValue] = useState<T>(value);\n\n useEffect(() => {\n const handler = setTimeout(() => {\n setDebouncedValue(value);\n onDebounce?.();\n }, delay);\n\n return () => {\n clearTimeout(handler);\n };\n }, [value, delay, onDebounce]);\n\n return debouncedValue;\n}\n"],"mappings":";AAEA,SAAS,WAAW,gBAAgB;AAQ7B,SAAS,YAAe,OAAU,QAAgB,KAAK,YAA4B;AACxF,QAAM,CAAC,gBAAgB,iBAAiB,IAAI,SAAY,KAAK;AAE7D,YAAU,MAAM;AACd,UAAM,UAAU,WAAW,MAAM;AAC/B,wBAAkB,KAAK;AACvB,mBAAa;AAAA,IACf,GAAG,KAAK;AAER,WAAO,MAAM;AACX,mBAAa,OAAO;AAAA,IACtB;AAAA,EACF,GAAG,CAAC,OAAO,OAAO,UAAU,CAAC;AAE7B,SAAO;AACT;","names":[]}
@@ -1,12 +0,0 @@
1
- "use client";
2
- import { useState } from "react";
3
- import { useDebounce } from "./useDebounce";
4
- function useDebounceState(initialValue, delay = 400) {
5
- const [rawValue, setRawValue] = useState(initialValue);
6
- const debouncedValue = useDebounce(rawValue, delay);
7
- return [debouncedValue, setRawValue];
8
- }
9
- export {
10
- useDebounceState
11
- };
12
- //# sourceMappingURL=useDebounceState.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useDebounceState.ts"],"sourcesContent":["'use client';\n\nimport { useState } from 'react';\nimport type React from 'react';\nimport { useDebounce } from './useDebounce';\n\nexport function useDebounceState<T>(initialValue: T, delay: number = 400): [T, React.Dispatch<React.SetStateAction<T>>] {\n const [rawValue, setRawValue] = useState<T>(initialValue);\n const debouncedValue = useDebounce(rawValue, delay);\n return [debouncedValue, setRawValue];\n}\n"],"mappings":";AAEA,SAAS,gBAAgB;AAEzB,SAAS,mBAAmB;AAErB,SAAS,iBAAoB,cAAiB,QAAgB,KAAmD;AACtH,QAAM,CAAC,UAAU,WAAW,IAAI,SAAY,YAAY;AACxD,QAAM,iBAAiB,YAAY,UAAU,KAAK;AAClD,SAAO,CAAC,gBAAgB,WAAW;AACrC;","names":[]}
@@ -1,44 +0,0 @@
1
- "use client";
2
- import { useEffect, useRef, useState, useCallback } from "react";
3
- function useDebouncedEffect({
4
- effect,
5
- debouncedDeps,
6
- immediateDeps = [],
7
- delay = 500
8
- }) {
9
- const [isDebouncing, setIsDebouncing] = useState(false);
10
- const timerRef = useRef(null);
11
- const effectRef = useRef(effect);
12
- effectRef.current = effect;
13
- const hasMounted = useRef(false);
14
- const clearTimer = useCallback(() => {
15
- if (timerRef.current) {
16
- clearTimeout(timerRef.current);
17
- timerRef.current = null;
18
- }
19
- }, []);
20
- useEffect(() => {
21
- clearTimer();
22
- setIsDebouncing(false);
23
- effectRef.current();
24
- }, immediateDeps);
25
- useEffect(() => {
26
- if (!hasMounted.current) {
27
- hasMounted.current = true;
28
- return;
29
- }
30
- clearTimer();
31
- setIsDebouncing(true);
32
- timerRef.current = setTimeout(() => {
33
- setIsDebouncing(false);
34
- effectRef.current();
35
- }, delay);
36
- return clearTimer;
37
- }, [...debouncedDeps, delay]);
38
- useEffect(() => clearTimer, [clearTimer]);
39
- return { isDebouncing };
40
- }
41
- export {
42
- useDebouncedEffect
43
- };
44
- //# sourceMappingURL=useDebouncedEffect.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useDebouncedEffect.ts"],"sourcesContent":["'use client';\n\nimport { useEffect, useRef, useState, useCallback } from 'react';\n\ninterface UseDebouncedEffectOptions {\n effect: () => void;\n debouncedDeps: React.DependencyList;\n immediateDeps?: React.DependencyList;\n delay?: number;\n}\n\n/**\n * Executes an effect with two trigger modes:\n * - `debouncedDeps`: triggers the effect after a delay (resets on each change)\n * - `immediateDeps`: triggers the effect immediately (also cancels any pending debounce)\n *\n * On mount, the effect fires once immediately via `immediateDeps`.\n * The effect callback always uses the latest closure values via a ref.\n *\n * @returns `{ isDebouncing }` — true while waiting for a debounced trigger to fire\n */\nexport function useDebouncedEffect({\n effect,\n debouncedDeps,\n immediateDeps = [],\n delay = 500,\n}: UseDebouncedEffectOptions) {\n const [isDebouncing, setIsDebouncing] = useState(false);\n const timerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const effectRef = useRef(effect);\n effectRef.current = effect;\n const hasMounted = useRef(false);\n\n const clearTimer = useCallback(() => {\n if (timerRef.current) {\n clearTimeout(timerRef.current);\n timerRef.current = null;\n }\n }, []);\n\n useEffect(() => {\n clearTimer();\n setIsDebouncing(false);\n effectRef.current();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, immediateDeps);\n\n useEffect(() => {\n if (!hasMounted.current) {\n hasMounted.current = true;\n return;\n }\n\n clearTimer();\n setIsDebouncing(true);\n\n timerRef.current = setTimeout(() => {\n setIsDebouncing(false);\n effectRef.current();\n }, delay);\n\n return clearTimer;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [...debouncedDeps, delay]);\n\n useEffect(() => clearTimer, [clearTimer]);\n\n return { isDebouncing };\n}\n"],"mappings":";AAEA,SAAS,WAAW,QAAQ,UAAU,mBAAmB;AAmBlD,SAAS,mBAAmB;AAAA,EACjC;AAAA,EACA;AAAA,EACA,gBAAgB,CAAC;AAAA,EACjB,QAAQ;AACV,GAA8B;AAC5B,QAAM,CAAC,cAAc,eAAe,IAAI,SAAS,KAAK;AACtD,QAAM,WAAW,OAA6C,IAAI;AAClE,QAAM,YAAY,OAAO,MAAM;AAC/B,YAAU,UAAU;AACpB,QAAM,aAAa,OAAO,KAAK;AAE/B,QAAM,aAAa,YAAY,MAAM;AACnC,QAAI,SAAS,SAAS;AACpB,mBAAa,SAAS,OAAO;AAC7B,eAAS,UAAU;AAAA,IACrB;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,YAAU,MAAM;AACd,eAAW;AACX,oBAAgB,KAAK;AACrB,cAAU,QAAQ;AAAA,EAEpB,GAAG,aAAa;AAEhB,YAAU,MAAM;AACd,QAAI,CAAC,WAAW,SAAS;AACvB,iBAAW,UAAU;AACrB;AAAA,IACF;AAEA,eAAW;AACX,oBAAgB,IAAI;AAEpB,aAAS,UAAU,WAAW,MAAM;AAClC,sBAAgB,KAAK;AACrB,gBAAU,QAAQ;AAAA,IACpB,GAAG,KAAK;AAER,WAAO;AAAA,EAET,GAAG,CAAC,GAAG,eAAe,KAAK,CAAC;AAE5B,YAAU,MAAM,YAAY,CAAC,UAAU,CAAC;AAExC,SAAO,EAAE,aAAa;AACxB;","names":[]}
@@ -1,18 +0,0 @@
1
- "use client";
2
- import { useEffect, useState } from "react";
3
- function useIsMobile() {
4
- const [isMobile, setIsMobile] = useState(false);
5
- useEffect(() => {
6
- const checkMobile = () => {
7
- setIsMobile(window.innerWidth < 1024);
8
- };
9
- checkMobile();
10
- window.addEventListener("resize", checkMobile);
11
- return () => window.removeEventListener("resize", checkMobile);
12
- }, []);
13
- return isMobile;
14
- }
15
- export {
16
- useIsMobile as default
17
- };
18
- //# sourceMappingURL=useIsMobile.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/useIsMobile.ts"],"sourcesContent":["'use client';\r\n\r\nimport { useEffect, useState } from 'react';\r\n\r\nexport default function useIsMobile() {\r\n const [isMobile, setIsMobile] = useState(false);\r\n\r\n useEffect(() => {\r\n const checkMobile = () => {\r\n setIsMobile(window.innerWidth < 1024);\r\n };\r\n\r\n checkMobile();\r\n window.addEventListener('resize', checkMobile);\r\n return () => window.removeEventListener('resize', checkMobile);\r\n }, []);\r\n\r\n return isMobile;\r\n}\r\n"],"mappings":";AAEA,SAAS,WAAW,gBAAgB;AAErB,SAAR,cAA+B;AACpC,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,KAAK;AAE9C,YAAU,MAAM;AACd,UAAM,cAAc,MAAM;AACxB,kBAAY,OAAO,aAAa,IAAI;AAAA,IACtC;AAEA,gBAAY;AACZ,WAAO,iBAAiB,UAAU,WAAW;AAC7C,WAAO,MAAM,OAAO,oBAAoB,UAAU,WAAW;AAAA,EAC/D,GAAG,CAAC,CAAC;AAEL,SAAO;AACT;","names":[]}
@@ -1,13 +0,0 @@
1
- "use client";
2
- import { useState, useCallback } from "react";
3
- function usePasswordVisibility() {
4
- const [showPassword, setShowPassword] = useState(false);
5
- const togglePassword = useCallback(() => {
6
- setShowPassword((prev) => !prev);
7
- }, []);
8
- return { showPassword, togglePassword };
9
- }
10
- export {
11
- usePasswordVisibility as default
12
- };
13
- //# sourceMappingURL=usePasswordVisibility.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/hooks/usePasswordVisibility.ts"],"sourcesContent":["'use client';\r\n\r\nimport { useState, useCallback } from 'react';\r\n\r\nexport default function usePasswordVisibility() {\r\n const [showPassword, setShowPassword] = useState(false);\r\n\r\n const togglePassword = useCallback(() => {\r\n setShowPassword((prev) => !prev);\r\n }, []);\r\n\r\n return { showPassword, togglePassword };\r\n}\r\n"],"mappings":";AAEA,SAAS,UAAU,mBAAmB;AAEvB,SAAR,wBAAyC;AAC9C,QAAM,CAAC,cAAc,eAAe,IAAI,SAAS,KAAK;AAEtD,QAAM,iBAAiB,YAAY,MAAM;AACvC,oBAAgB,CAAC,SAAS,CAAC,IAAI;AAAA,EACjC,GAAG,CAAC,CAAC;AAEL,SAAO,EAAE,cAAc,eAAe;AACxC;","names":[]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/infra/api/client.ts"],"sourcesContent":["import { ApiError } from './types';\r\nimport { findWhitelabel } from '../../modules/whitelabel/actions/find-whitelabel.action';\r\n\r\nexport interface ApiClientOptions {\r\n /**\r\n * Quando true, monta `{base}/{locale}/{wlId}{endpoint}` (ex.: r2-clone).\r\n * Padrão false: `{base}/v1/{locale}/{wlId}{endpoint}`.\r\n */\r\n omitApiVersion?: boolean;\r\n}\r\n\r\nexport interface RequestConfig extends RequestInit {\r\n timeout?: number;\r\n /** Padrão `json`. Use `text` quando a API devolve corpo não-JSON. */\r\n responseType?: 'json' | 'text';\r\n}\r\n\r\nclass ApiClient {\r\n private readonly baseUrl: string;\r\n private readonly apiVersion = 'v1';\r\n private readonly apiLocale = 'pt-br';\r\n private readonly omitApiVersion: boolean;\r\n\r\n constructor(baseUrl: string, options?: ApiClientOptions) {\r\n this.baseUrl = baseUrl.replace(/\\/$/, '');\r\n this.omitApiVersion = options?.omitApiVersion ?? false;\r\n }\r\n\r\n private async buildUrl(endpoint: string, whiteLabelId: number): Promise<string> {\r\n const wlPath = this.omitApiVersion\r\n ? `/${this.apiLocale}/${whiteLabelId}`\r\n : `/${this.apiVersion}/${this.apiLocale}/${whiteLabelId}`;\r\n const path = endpoint.startsWith('/') ? endpoint : `/${endpoint}`;\r\n const url = `${this.baseUrl}${wlPath}${path}`;\r\n console.log('[ApiClient] buildUrl', {\r\n baseURL: this.baseUrl,\r\n whiteLabelId,\r\n endpoint,\r\n fullUrl: url,\r\n });\r\n return url;\r\n }\r\n\r\n private async getDefaultHeaders(token: string, isFormData = false): Promise<HeadersInit> {\r\n console.log('[ApiClient] getDefaultHeaders', {\r\n token: token.substring(0, 20) + '...',\r\n });\r\n\r\n const headers: HeadersInit = {\r\n authorization: token,\r\n };\r\n\r\n if (!isFormData) {\r\n headers['Content-Type'] = 'application/json';\r\n }\r\n\r\n return headers;\r\n }\r\n\r\n async request<T>(endpoint: string, config: RequestConfig = {}): Promise<T> {\r\n console.log('[ApiClient] request called', { endpoint, method: config.method });\r\n\r\n const { timeout = 30000, responseType = 'json', ...fetchConfig } = config;\r\n\r\n const controller = new AbortController();\r\n const timeoutId = setTimeout(() => controller.abort(), timeout);\r\n\r\n try {\r\n console.log('[ApiClient] Building URL and headers...');\r\n\r\n const { id, token } = await findWhitelabel();\r\n\r\n const [url, defaultHeaders] = await Promise.all([\r\n this.buildUrl(endpoint, id),\r\n this.getDefaultHeaders(token, fetchConfig.body instanceof FormData),\r\n ]);\r\n\r\n console.log('[ApiClient] Fetching', {\r\n url,\r\n method: fetchConfig.method,\r\n headers: defaultHeaders,\r\n });\r\n\r\n const response = await fetch(url, {\r\n ...fetchConfig,\r\n headers: {\r\n ...defaultHeaders,\r\n ...fetchConfig.headers,\r\n },\r\n signal: controller.signal,\r\n });\r\n\r\n console.log('[ApiClient] Response received', { status: response.status, ok: response.ok });\r\n\r\n if (!response.ok) {\r\n const errBody = await response.text();\r\n let message = `HTTP error ${response.status}`;\r\n let code = 'HTTP_ERROR';\r\n try {\r\n const errorData = JSON.parse(errBody) as Record<string, unknown>;\r\n if (typeof errorData.message === 'string') message = errorData.message;\r\n if (typeof errorData.code === 'string') code = errorData.code;\r\n } catch {\r\n if (errBody.trim()) message = errBody.trim();\r\n }\r\n console.error('[ApiClient] Request failed', { status: response.status, message });\r\n throw new ApiError(message, code, response.status);\r\n }\r\n\r\n if (responseType === 'text') {\r\n return (await response.text()) as T;\r\n }\r\n\r\n const data = (await response.json()) as T;\r\n console.log('[ApiClient] Request successful', { hasData: !!data });\r\n return data;\r\n } catch (error) {\r\n console.error('[ApiClient] Request error', { error });\r\n\r\n if (error instanceof ApiError) {\r\n throw error;\r\n }\r\n\r\n if (error instanceof Error) {\r\n if (error.name === 'AbortError') {\r\n throw new ApiError('Tempo de requisição excedido', 'TIMEOUT', 408);\r\n }\r\n throw new ApiError(error.message, 'NETWORK_ERROR', 0);\r\n }\r\n\r\n throw new ApiError('Erro desconhecido', 'UNKNOWN_ERROR', 500);\r\n } finally {\r\n clearTimeout(timeoutId);\r\n }\r\n }\r\n\r\n async get<T>(endpoint: string, config?: RequestConfig): Promise<T> {\r\n return this.request<T>(endpoint, { ...config, method: 'GET' });\r\n }\r\n\r\n async post<T>(endpoint: string, data?: unknown, config?: RequestConfig): Promise<T> {\r\n return this.request<T>(endpoint, {\r\n ...config,\r\n method: 'POST',\r\n body: data instanceof FormData ? data : data ? JSON.stringify(data) : undefined,\r\n });\r\n }\r\n\r\n async put<T>(endpoint: string, data?: unknown, config?: RequestConfig): Promise<T> {\r\n return this.request<T>(endpoint, {\r\n ...config,\r\n method: 'PUT',\r\n body: data instanceof FormData ? data : data ? JSON.stringify(data) : undefined,\r\n });\r\n }\r\n\r\n async patch<T>(endpoint: string, data?: unknown, config?: RequestConfig): Promise<T> {\r\n return this.request<T>(endpoint, {\r\n ...config,\r\n method: 'PATCH',\r\n body: data instanceof FormData ? data : data ? JSON.stringify(data) : undefined,\r\n });\r\n }\r\n\r\n async delete<T>(endpoint: string, config?: RequestConfig): Promise<T> {\r\n return this.request<T>(endpoint, { ...config, method: 'DELETE' });\r\n }\r\n}\r\n\r\nconst api = {\r\n apps: new ApiClient(process.env.GAPPS_R3_API_URL || 'https://r3-api.greatapps.dev.br'),\r\n pages: new ApiClient(process.env.GPAGES_R3_API_URL || 'https://r3-api.greatpages.dev.br'),\r\n}\r\n\r\n/** @deprecated use api.apps */\r\nexport const apiClient = api.apps;\r\n\r\nexport { api, ApiClient };\r\n"],"mappings":"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","names":[]}
@@ -1,31 +0,0 @@
1
- import z from "zod";
2
- const PaginationParamsSchema = z.object({
3
- page: z.number().min(1).optional().default(20),
4
- limit: z.number().optional().default(20)
5
- });
6
- const SearchParamsSchema = z.object({
7
- search: z.string().optional()
8
- });
9
- const SortParamsSchema = z.object({
10
- sort: z.string().optional()
11
- });
12
- class ApiError extends Error {
13
- code;
14
- statusCode;
15
- constructor(message, code = "UNKNOWN_ERROR", statusCode = 500) {
16
- super(message);
17
- this.name = "ApiError";
18
- this.code = code;
19
- this.statusCode = statusCode;
20
- }
21
- static isApiError(error) {
22
- return error instanceof ApiError;
23
- }
24
- }
25
- export {
26
- ApiError,
27
- PaginationParamsSchema,
28
- SearchParamsSchema,
29
- SortParamsSchema
30
- };
31
- //# sourceMappingURL=types.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/infra/api/types.ts"],"sourcesContent":["import z from 'zod';\r\n\r\nexport const PaginationParamsSchema = z.object({\r\n page: z.number().min(1).optional().default(20),\r\n limit: z.number().optional().default(20),\r\n});\r\n\r\nexport interface PaginationParams extends z.infer<typeof PaginationParamsSchema> {}\r\n\r\nexport const SearchParamsSchema = z.object({\r\n search: z.string().optional(),\r\n});\r\n\r\nexport interface SearchParams extends z.infer<typeof SearchParamsSchema> {}\r\n\r\nexport const SortParamsSchema = z.object({\r\n sort: z.string().optional(),\r\n});\r\n\r\nexport interface SortParams extends z.infer<typeof SortParamsSchema> {}\r\n\r\nexport interface ApiSuccessResult<T> {\r\n status: 1;\r\n data?: T;\r\n}\r\n\r\nexport interface ApiPaginatedSuccessResult<T> extends Omit<ApiSuccessResult<T>, 'data'> {\r\n data: T[];\r\n total: number;\r\n}\r\n\r\nexport interface ApiErrorResult {\r\n status: 0;\r\n message: string;\r\n}\r\n\r\nexport type ApiActionResult<T> = ApiSuccessResult<T> | ApiErrorResult;\r\nexport type ApiPaginatedActionResult<T> = ApiPaginatedSuccessResult<T> | ApiErrorResult;\r\n\r\nexport interface SuccessResult<T> {\r\n success: true;\r\n data?: T;\r\n total?: number;\r\n}\r\n\r\nexport interface PaginatedSuccessResult<T> extends Omit<SuccessResult<T>, 'data'> {\r\n data: T[];\r\n total: number;\r\n}\r\n\r\nexport interface ErrorResult {\r\n success: false;\r\n error?: string;\r\n}\r\n\r\nexport type ActionResult<T> = SuccessResult<T> | ErrorResult;\r\nexport type PaginatedActionResult<T> = PaginatedSuccessResult<T> | ErrorResult;\r\n\r\nexport class ApiError extends Error {\r\n public readonly code: string;\r\n public readonly statusCode: number;\r\n\r\n constructor(message: string, code: string = 'UNKNOWN_ERROR', statusCode: number = 500) {\r\n super(message);\r\n this.name = 'ApiError';\r\n this.code = code;\r\n this.statusCode = statusCode;\r\n }\r\n\r\n static isApiError(error: unknown): error is ApiError {\r\n return error instanceof ApiError;\r\n }\r\n}\r\n\r\nexport interface ApiResponse<T = unknown> {\r\n status: 0 | 1;\r\n message?: string;\r\n data?: T;\r\n}\r\n"],"mappings":"AAAA,OAAO,OAAO;AAEP,MAAM,yBAAyB,EAAE,OAAO;AAAA,EAC7C,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE;AAAA,EAC7C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE;AACzC,CAAC;AAIM,MAAM,qBAAqB,EAAE,OAAO;AAAA,EACzC,QAAQ,EAAE,OAAO,EAAE,SAAS;AAC9B,CAAC;AAIM,MAAM,mBAAmB,EAAE,OAAO;AAAA,EACvC,MAAM,EAAE,OAAO,EAAE,SAAS;AAC5B,CAAC;AAyCM,MAAM,iBAAiB,MAAM;AAAA,EAClB;AAAA,EACA;AAAA,EAEhB,YAAY,SAAiB,OAAe,iBAAiB,aAAqB,KAAK;AACrF,UAAM,OAAO;AACb,SAAK,OAAO;AACZ,SAAK,OAAO;AACZ,SAAK,aAAa;AAAA,EACpB;AAAA,EAEA,OAAO,WAAW,OAAmC;AACnD,WAAO,iBAAiB;AAAA,EAC1B;AACF;","names":[]}
@@ -1,27 +0,0 @@
1
- import { headers } from "next/headers";
2
- async function getClientInfoFromRequest(request) {
3
- let headerStore;
4
- if (request) {
5
- headerStore = request.headers;
6
- } else {
7
- const nextHeaders = await headers();
8
- headerStore = nextHeaders;
9
- }
10
- return {
11
- location: {
12
- continent: headerStore.get("cf-ipcountry") || headerStore.get("x-vercel-ip-country") || "Unknown",
13
- country: headerStore.get("x-vercel-ip-country") || "Unknown",
14
- region: headerStore.get("x-vercel-ip-country-region") || "Unknown",
15
- city: headerStore.get("x-vercel-ip-city") || "Unknown",
16
- latitude: headerStore.get("x-vercel-ip-latitude") || "0",
17
- longitude: headerStore.get("x-vercel-ip-longitude") || "0"
18
- },
19
- ip: headerStore.get("cf-connecting-ip") || headerStore.get("x-forwarded-for") || headerStore.get("x-real-ip") || "Unknown",
20
- timezone: headerStore.get("cf-timezone") || "America/Sao_Paulo",
21
- agent: headerStore.get("user-agent") || "Unknown"
22
- };
23
- }
24
- export {
25
- getClientInfoFromRequest
26
- };
27
- //# sourceMappingURL=client-info.mjs.map