@greatapps/common 1.1.169 → 1.1.173

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 (372) hide show
  1. package/package.json +1 -1
  2. package/src/components/layouts/ProfilePopover.tsx +9 -12
  3. package/src/modules/auth/schema.ts +1 -0
  4. package/src/modules/auth/services/auth.service.ts +1 -0
  5. package/dist/components/account/AccountModals.mjs +0 -18
  6. package/dist/components/account/AccountModals.mjs.map +0 -1
  7. package/dist/components/account/ConfigurationsMyAccountModal.mjs +0 -132
  8. package/dist/components/account/ConfigurationsMyAccountModal.mjs.map +0 -1
  9. package/dist/components/account/ConfirmDeleteAccountModal.mjs +0 -45
  10. package/dist/components/account/ConfirmDeleteAccountModal.mjs.map +0 -1
  11. package/dist/components/account/ConfirmGlobalPreferencesModal.mjs +0 -45
  12. package/dist/components/account/ConfirmGlobalPreferencesModal.mjs.map +0 -1
  13. package/dist/components/account/DeleteAccountModal.mjs +0 -123
  14. package/dist/components/account/DeleteAccountModal.mjs.map +0 -1
  15. package/dist/components/account/DisableTwoFactorAuthModal.mjs +0 -67
  16. package/dist/components/account/DisableTwoFactorAuthModal.mjs.map +0 -1
  17. package/dist/components/account/IsntPossibleDeleteAccountModal.mjs +0 -42
  18. package/dist/components/account/IsntPossibleDeleteAccountModal.mjs.map +0 -1
  19. package/dist/components/account/TwoFactorAuthModal.mjs +0 -190
  20. package/dist/components/account/TwoFactorAuthModal.mjs.map +0 -1
  21. package/dist/components/account/constants.mjs +0 -29
  22. package/dist/components/account/constants.mjs.map +0 -1
  23. package/dist/components/account/hooks/useChangeEmailForm.mjs +0 -53
  24. package/dist/components/account/hooks/useChangeEmailForm.mjs.map +0 -1
  25. package/dist/components/account/hooks/useChangePasswordForm.mjs +0 -47
  26. package/dist/components/account/hooks/useChangePasswordForm.mjs.map +0 -1
  27. package/dist/components/account/hooks/useChangePhoneForm.mjs +0 -64
  28. package/dist/components/account/hooks/useChangePhoneForm.mjs.map +0 -1
  29. package/dist/components/account/hooks/useConfigurationsModal.mjs +0 -33
  30. package/dist/components/account/hooks/useConfigurationsModal.mjs.map +0 -1
  31. package/dist/components/account/hooks/useDisableTwoFactorAuthForm.mjs +0 -54
  32. package/dist/components/account/hooks/useDisableTwoFactorAuthForm.mjs.map +0 -1
  33. package/dist/components/account/hooks/useOtpVerification.mjs +0 -94
  34. package/dist/components/account/hooks/useOtpVerification.mjs.map +0 -1
  35. package/dist/components/account/hooks/useTwoFactorAuthForm.mjs +0 -80
  36. package/dist/components/account/hooks/useTwoFactorAuthForm.mjs.map +0 -1
  37. package/dist/components/account/sections/ChangeEmailModal.mjs +0 -180
  38. package/dist/components/account/sections/ChangeEmailModal.mjs.map +0 -1
  39. package/dist/components/account/sections/ChangePasswordSection.mjs +0 -64
  40. package/dist/components/account/sections/ChangePasswordSection.mjs.map +0 -1
  41. package/dist/components/account/sections/ChangePhoneModal.mjs +0 -182
  42. package/dist/components/account/sections/ChangePhoneModal.mjs.map +0 -1
  43. package/dist/components/account/sections/MyProfileSection.mjs +0 -303
  44. package/dist/components/account/sections/MyProfileSection.mjs.map +0 -1
  45. package/dist/components/account/sections/PreferencesSection.mjs +0 -250
  46. package/dist/components/account/sections/PreferencesSection.mjs.map +0 -1
  47. package/dist/components/account/sections/SecuritySection.mjs +0 -147
  48. package/dist/components/account/sections/SecuritySection.mjs.map +0 -1
  49. package/dist/components/handlers/SearchParamsHandler.mjs +0 -24
  50. package/dist/components/handlers/SearchParamsHandler.mjs.map +0 -1
  51. package/dist/components/layouts/AppMobileNavBar.mjs +0 -115
  52. package/dist/components/layouts/AppMobileNavBar.mjs.map +0 -1
  53. package/dist/components/layouts/AppNavBar.mjs +0 -49
  54. package/dist/components/layouts/AppNavBar.mjs.map +0 -1
  55. package/dist/components/layouts/MainLayout.mjs +0 -60
  56. package/dist/components/layouts/MainLayout.mjs.map +0 -1
  57. package/dist/components/layouts/MdSideBarNavigation.mjs +0 -54
  58. package/dist/components/layouts/MdSideBarNavigation.mjs.map +0 -1
  59. package/dist/components/layouts/NavBar.mjs +0 -132
  60. package/dist/components/layouts/NavBar.mjs.map +0 -1
  61. package/dist/components/layouts/NavBarItem.mjs +0 -23
  62. package/dist/components/layouts/NavBarItem.mjs.map +0 -1
  63. package/dist/components/layouts/NotificationsPopover.mjs +0 -97
  64. package/dist/components/layouts/NotificationsPopover.mjs.map +0 -1
  65. package/dist/components/layouts/ProfilePopover.mjs +0 -150
  66. package/dist/components/layouts/ProfilePopover.mjs.map +0 -1
  67. package/dist/components/layouts/SideBarNavigation.mjs +0 -22
  68. package/dist/components/layouts/SideBarNavigation.mjs.map +0 -1
  69. package/dist/components/layouts/UsersSelectorPopover.mjs +0 -230
  70. package/dist/components/layouts/UsersSelectorPopover.mjs.map +0 -1
  71. package/dist/components/modals/ModalManager.mjs +0 -19
  72. package/dist/components/modals/ModalManager.mjs.map +0 -1
  73. package/dist/components/modals/Modals.mjs +0 -20
  74. package/dist/components/modals/Modals.mjs.map +0 -1
  75. package/dist/components/navigation/AppNavigation.mjs +0 -30
  76. package/dist/components/navigation/AppNavigation.mjs.map +0 -1
  77. package/dist/components/navigation/AppNavigationContext.mjs +0 -13
  78. package/dist/components/navigation/AppNavigationContext.mjs.map +0 -1
  79. package/dist/components/navigation/CancelledSubscriptionBanner.mjs +0 -59
  80. package/dist/components/navigation/CancelledSubscriptionBanner.mjs.map +0 -1
  81. package/dist/components/navigation/NavItem.mjs +0 -35
  82. package/dist/components/navigation/NavItem.mjs.map +0 -1
  83. package/dist/components/navigation/NavItemsContext.mjs +0 -16
  84. package/dist/components/navigation/NavItemsContext.mjs.map +0 -1
  85. package/dist/components/navigation/ProjectSelectorPopover.mjs +0 -128
  86. package/dist/components/navigation/ProjectSelectorPopover.mjs.map +0 -1
  87. package/dist/components/navigation/shells/DesktopShell.mjs +0 -11
  88. package/dist/components/navigation/shells/DesktopShell.mjs.map +0 -1
  89. package/dist/components/navigation/shells/MdShell.mjs +0 -11
  90. package/dist/components/navigation/shells/MdShell.mjs.map +0 -1
  91. package/dist/components/navigation/shells/MobileShell.mjs +0 -27
  92. package/dist/components/navigation/shells/MobileShell.mjs.map +0 -1
  93. package/dist/components/navigation/shells/TabsMobileShell.mjs +0 -59
  94. package/dist/components/navigation/shells/TabsMobileShell.mjs.map +0 -1
  95. package/dist/components/navigation/subcomponents/CreditsCard.mjs +0 -30
  96. package/dist/components/navigation/subcomponents/CreditsCard.mjs.map +0 -1
  97. package/dist/components/navigation/subcomponents/NavItems.mjs +0 -25
  98. package/dist/components/navigation/subcomponents/NavItems.mjs.map +0 -1
  99. package/dist/components/navigation/subcomponents/PlanCard.mjs +0 -25
  100. package/dist/components/navigation/subcomponents/PlanCard.mjs.map +0 -1
  101. package/dist/components/navigation/subcomponents/ProjectSelector.mjs +0 -130
  102. package/dist/components/navigation/subcomponents/ProjectSelector.mjs.map +0 -1
  103. package/dist/components/navigation/types.mjs +0 -1
  104. package/dist/components/navigation/types.mjs.map +0 -1
  105. package/dist/components/pages/notifications/Notifications.mjs +0 -156
  106. package/dist/components/pages/notifications/Notifications.mjs.map +0 -1
  107. package/dist/components/ui/buttons/Button.mjs +0 -52
  108. package/dist/components/ui/buttons/Button.mjs.map +0 -1
  109. package/dist/components/ui/buttons/CancelButton.mjs +0 -17
  110. package/dist/components/ui/buttons/CancelButton.mjs.map +0 -1
  111. package/dist/components/ui/buttons/CopyButton.mjs +0 -42
  112. package/dist/components/ui/buttons/CopyButton.mjs.map +0 -1
  113. package/dist/components/ui/data-display/Accordion.mjs +0 -76
  114. package/dist/components/ui/data-display/Accordion.mjs.map +0 -1
  115. package/dist/components/ui/data-display/Badge.mjs +0 -42
  116. package/dist/components/ui/data-display/Badge.mjs.map +0 -1
  117. package/dist/components/ui/data-display/Card.mjs +0 -92
  118. package/dist/components/ui/data-display/Card.mjs.map +0 -1
  119. package/dist/components/ui/data-display/Pagination.mjs +0 -118
  120. package/dist/components/ui/data-display/Pagination.mjs.map +0 -1
  121. package/dist/components/ui/data-display/ScrollArea.mjs +0 -62
  122. package/dist/components/ui/data-display/ScrollArea.mjs.map +0 -1
  123. package/dist/components/ui/data-display/Separator.mjs +0 -28
  124. package/dist/components/ui/data-display/Separator.mjs.map +0 -1
  125. package/dist/components/ui/data-display/Table.mjs +0 -116
  126. package/dist/components/ui/data-display/Table.mjs.map +0 -1
  127. package/dist/components/ui/data-display/Tabs.mjs +0 -69
  128. package/dist/components/ui/data-display/Tabs.mjs.map +0 -1
  129. package/dist/components/ui/data-display/UserAvatar.mjs +0 -49
  130. package/dist/components/ui/data-display/UserAvatar.mjs.map +0 -1
  131. package/dist/components/ui/feedback/CircularProgress.mjs +0 -71
  132. package/dist/components/ui/feedback/CircularProgress.mjs.map +0 -1
  133. package/dist/components/ui/feedback/DefaultCircularProgress.mjs +0 -50
  134. package/dist/components/ui/feedback/DefaultCircularProgress.mjs.map +0 -1
  135. package/dist/components/ui/feedback/LoadingOverlay.mjs +0 -19
  136. package/dist/components/ui/feedback/LoadingOverlay.mjs.map +0 -1
  137. package/dist/components/ui/feedback/Progress.mjs +0 -37
  138. package/dist/components/ui/feedback/Progress.mjs.map +0 -1
  139. package/dist/components/ui/feedback/Toast.mjs +0 -77
  140. package/dist/components/ui/feedback/Toast.mjs.map +0 -1
  141. package/dist/components/ui/form/Calendar.mjs +0 -204
  142. package/dist/components/ui/form/Calendar.mjs.map +0 -1
  143. package/dist/components/ui/form/Checkbox.mjs +0 -33
  144. package/dist/components/ui/form/Checkbox.mjs.map +0 -1
  145. package/dist/components/ui/form/ComboboxField.mjs +0 -130
  146. package/dist/components/ui/form/ComboboxField.mjs.map +0 -1
  147. package/dist/components/ui/form/DatePicker.mjs +0 -82
  148. package/dist/components/ui/form/DatePicker.mjs.map +0 -1
  149. package/dist/components/ui/form/DateRangePicker.mjs +0 -92
  150. package/dist/components/ui/form/DateRangePicker.mjs.map +0 -1
  151. package/dist/components/ui/form/FormField.mjs +0 -103
  152. package/dist/components/ui/form/FormField.mjs.map +0 -1
  153. package/dist/components/ui/form/Input.mjs +0 -21
  154. package/dist/components/ui/form/Input.mjs.map +0 -1
  155. package/dist/components/ui/form/InputOtp.mjs +0 -70
  156. package/dist/components/ui/form/InputOtp.mjs.map +0 -1
  157. package/dist/components/ui/form/PhoneInput.mjs +0 -78
  158. package/dist/components/ui/form/PhoneInput.mjs.map +0 -1
  159. package/dist/components/ui/form/RadioGroup.mjs +0 -37
  160. package/dist/components/ui/form/RadioGroup.mjs.map +0 -1
  161. package/dist/components/ui/form/Select.mjs +0 -179
  162. package/dist/components/ui/form/Select.mjs.map +0 -1
  163. package/dist/components/ui/form/SelectField.mjs +0 -80
  164. package/dist/components/ui/form/SelectField.mjs.map +0 -1
  165. package/dist/components/ui/form/Switch.mjs +0 -33
  166. package/dist/components/ui/form/Switch.mjs.map +0 -1
  167. package/dist/components/ui/form/SwitchOptionFieldWithIcon.mjs +0 -40
  168. package/dist/components/ui/form/SwitchOptionFieldWithIcon.mjs.map +0 -1
  169. package/dist/components/ui/form/TextAreaField.mjs +0 -56
  170. package/dist/components/ui/form/TextAreaField.mjs.map +0 -1
  171. package/dist/components/ui/form/Textarea.mjs +0 -20
  172. package/dist/components/ui/form/Textarea.mjs.map +0 -1
  173. package/dist/components/ui/overlay/Command.mjs +0 -178
  174. package/dist/components/ui/overlay/Command.mjs.map +0 -1
  175. package/dist/components/ui/overlay/Dialog.mjs +0 -142
  176. package/dist/components/ui/overlay/Dialog.mjs.map +0 -1
  177. package/dist/components/ui/overlay/Popover.mjs +0 -46
  178. package/dist/components/ui/overlay/Popover.mjs.map +0 -1
  179. package/dist/components/ui/overlay/Sheet.mjs +0 -142
  180. package/dist/components/ui/overlay/Sheet.mjs.map +0 -1
  181. package/dist/components/ui/overlay/Tooltip.mjs +0 -57
  182. package/dist/components/ui/overlay/Tooltip.mjs.map +0 -1
  183. package/dist/components/widgets/notifications/NotificationCard.mjs +0 -54
  184. package/dist/components/widgets/notifications/NotificationCard.mjs.map +0 -1
  185. package/dist/enums/AccountSectionType.mjs +0 -11
  186. package/dist/enums/AccountSectionType.mjs.map +0 -1
  187. package/dist/hooks/copy-to-clipboard.hook.mjs +0 -52
  188. package/dist/hooks/copy-to-clipboard.hook.mjs.map +0 -1
  189. package/dist/hooks/useCountdownTimer.mjs +0 -29
  190. package/dist/hooks/useCountdownTimer.mjs.map +0 -1
  191. package/dist/hooks/useDebounce.mjs +0 -19
  192. package/dist/hooks/useDebounce.mjs.map +0 -1
  193. package/dist/hooks/useDebounceState.mjs +0 -12
  194. package/dist/hooks/useDebounceState.mjs.map +0 -1
  195. package/dist/hooks/useDebouncedEffect.mjs +0 -44
  196. package/dist/hooks/useDebouncedEffect.mjs.map +0 -1
  197. package/dist/hooks/useIsMobile.mjs +0 -18
  198. package/dist/hooks/useIsMobile.mjs.map +0 -1
  199. package/dist/hooks/usePasswordVisibility.mjs +0 -13
  200. package/dist/hooks/usePasswordVisibility.mjs.map +0 -1
  201. package/dist/index.mjs +0 -457
  202. package/dist/index.mjs.map +0 -1
  203. package/dist/infra/api/client.mjs +0 -136
  204. package/dist/infra/api/client.mjs.map +0 -1
  205. package/dist/infra/api/types.mjs +0 -31
  206. package/dist/infra/api/types.mjs.map +0 -1
  207. package/dist/infra/utils/client-info.mjs +0 -27
  208. package/dist/infra/utils/client-info.mjs.map +0 -1
  209. package/dist/infra/utils/clsx.mjs +0 -9
  210. package/dist/infra/utils/clsx.mjs.map +0 -1
  211. package/dist/infra/utils/params.mjs +0 -21
  212. package/dist/infra/utils/params.mjs.map +0 -1
  213. package/dist/infra/utils/parser.mjs +0 -24
  214. package/dist/infra/utils/parser.mjs.map +0 -1
  215. package/dist/infra/utils/percentage.mjs +0 -20
  216. package/dist/infra/utils/percentage.mjs.map +0 -1
  217. package/dist/middleware.mjs +0 -10
  218. package/dist/middleware.mjs.map +0 -1
  219. package/dist/middlewares/chain.mjs +0 -37
  220. package/dist/middlewares/chain.mjs.map +0 -1
  221. package/dist/middlewares/create-auth-middleware.mjs +0 -28
  222. package/dist/middlewares/create-auth-middleware.mjs.map +0 -1
  223. package/dist/middlewares/types.mjs +0 -11
  224. package/dist/middlewares/types.mjs.map +0 -1
  225. package/dist/modules/accounts/actions/account-management.action.mjs +0 -82
  226. package/dist/modules/accounts/actions/account-management.action.mjs.map +0 -1
  227. package/dist/modules/accounts/actions/find-current-account.action.mjs +0 -10
  228. package/dist/modules/accounts/actions/find-current-account.action.mjs.map +0 -1
  229. package/dist/modules/accounts/actions/list-currencies.action.mjs +0 -10
  230. package/dist/modules/accounts/actions/list-currencies.action.mjs.map +0 -1
  231. package/dist/modules/accounts/actions/list-timezones.action.mjs +0 -10
  232. package/dist/modules/accounts/actions/list-timezones.action.mjs.map +0 -1
  233. package/dist/modules/accounts/hooks/current-account.hook.mjs +0 -24
  234. package/dist/modules/accounts/hooks/current-account.hook.mjs.map +0 -1
  235. package/dist/modules/accounts/hooks/useAccountManagement.mjs +0 -71
  236. package/dist/modules/accounts/hooks/useAccountManagement.mjs.map +0 -1
  237. package/dist/modules/accounts/hooks/useCurrencies.mjs +0 -17
  238. package/dist/modules/accounts/hooks/useCurrencies.mjs.map +0 -1
  239. package/dist/modules/accounts/hooks/useTimezones.mjs +0 -17
  240. package/dist/modules/accounts/hooks/useTimezones.mjs.map +0 -1
  241. package/dist/modules/accounts/services/account.service.mjs +0 -180
  242. package/dist/modules/accounts/services/account.service.mjs.map +0 -1
  243. package/dist/modules/accounts/services/currency.service.mjs +0 -24
  244. package/dist/modules/accounts/services/currency.service.mjs.map +0 -1
  245. package/dist/modules/accounts/services/timezone.service.mjs +0 -65
  246. package/dist/modules/accounts/services/timezone.service.mjs.map +0 -1
  247. package/dist/modules/accounts/services/two-factor.service.mjs +0 -77
  248. package/dist/modules/accounts/services/two-factor.service.mjs.map +0 -1
  249. package/dist/modules/accounts/types.mjs +0 -1
  250. package/dist/modules/accounts/types.mjs.map +0 -1
  251. package/dist/modules/auth/actions/login.action.mjs +0 -14
  252. package/dist/modules/auth/actions/login.action.mjs.map +0 -1
  253. package/dist/modules/auth/actions/logout.action.mjs +0 -14
  254. package/dist/modules/auth/actions/logout.action.mjs.map +0 -1
  255. package/dist/modules/auth/actions/register.action.mjs +0 -14
  256. package/dist/modules/auth/actions/register.action.mjs.map +0 -1
  257. package/dist/modules/auth/actions/validate-session.action.mjs +0 -60
  258. package/dist/modules/auth/actions/validate-session.action.mjs.map +0 -1
  259. package/dist/modules/auth/actions/verify-two-factor.action.mjs +0 -17
  260. package/dist/modules/auth/actions/verify-two-factor.action.mjs.map +0 -1
  261. package/dist/modules/auth/hooks/login.hook.mjs +0 -13
  262. package/dist/modules/auth/hooks/login.hook.mjs.map +0 -1
  263. package/dist/modules/auth/hooks/logout.hook.mjs +0 -13
  264. package/dist/modules/auth/hooks/logout.hook.mjs.map +0 -1
  265. package/dist/modules/auth/hooks/register.hook.mjs +0 -13
  266. package/dist/modules/auth/hooks/register.hook.mjs.map +0 -1
  267. package/dist/modules/auth/hooks/useUserQuery.mjs +0 -63
  268. package/dist/modules/auth/hooks/useUserQuery.mjs.map +0 -1
  269. package/dist/modules/auth/schema.mjs +0 -1
  270. package/dist/modules/auth/schema.mjs.map +0 -1
  271. package/dist/modules/auth/services/auth.service.mjs +0 -293
  272. package/dist/modules/auth/services/auth.service.mjs.map +0 -1
  273. package/dist/modules/auth/utils/get-user-context.mjs +0 -24
  274. package/dist/modules/auth/utils/get-user-context.mjs.map +0 -1
  275. package/dist/modules/ia-credits/actions/list-ia-credits.action.mjs +0 -10
  276. package/dist/modules/ia-credits/actions/list-ia-credits.action.mjs.map +0 -1
  277. package/dist/modules/ia-credits/hooks/ia-credits.hook.mjs +0 -76
  278. package/dist/modules/ia-credits/hooks/ia-credits.hook.mjs.map +0 -1
  279. package/dist/modules/ia-credits/services/ia-credits.service.mjs +0 -31
  280. package/dist/modules/ia-credits/services/ia-credits.service.mjs.map +0 -1
  281. package/dist/modules/ia-credits/types.mjs +0 -25
  282. package/dist/modules/ia-credits/types.mjs.map +0 -1
  283. package/dist/modules/projects/actions/add-project-user.action.mjs +0 -10
  284. package/dist/modules/projects/actions/add-project-user.action.mjs.map +0 -1
  285. package/dist/modules/projects/actions/list-available-users.action.mjs +0 -10
  286. package/dist/modules/projects/actions/list-available-users.action.mjs.map +0 -1
  287. package/dist/modules/projects/actions/list-project-users.action.mjs +0 -10
  288. package/dist/modules/projects/actions/list-project-users.action.mjs.map +0 -1
  289. package/dist/modules/projects/actions/remove-project-user.action.mjs +0 -10
  290. package/dist/modules/projects/actions/remove-project-user.action.mjs.map +0 -1
  291. package/dist/modules/projects/hooks/list-available-users.hook.mjs +0 -34
  292. package/dist/modules/projects/hooks/list-available-users.hook.mjs.map +0 -1
  293. package/dist/modules/projects/hooks/list-project-users.hook.mjs +0 -34
  294. package/dist/modules/projects/hooks/list-project-users.hook.mjs.map +0 -1
  295. package/dist/modules/projects/services/project-users.service.mjs +0 -78
  296. package/dist/modules/projects/services/project-users.service.mjs.map +0 -1
  297. package/dist/modules/projects/types.mjs +0 -22
  298. package/dist/modules/projects/types.mjs.map +0 -1
  299. package/dist/modules/subscriptions/actions/list-subscriptions.action.mjs +0 -10
  300. package/dist/modules/subscriptions/actions/list-subscriptions.action.mjs.map +0 -1
  301. package/dist/modules/subscriptions/constants/addons.constants.mjs +0 -12
  302. package/dist/modules/subscriptions/constants/addons.constants.mjs.map +0 -1
  303. package/dist/modules/subscriptions/hooks/find-active-subscription.hook.mjs +0 -20
  304. package/dist/modules/subscriptions/hooks/find-active-subscription.hook.mjs.map +0 -1
  305. package/dist/modules/subscriptions/hooks/list-subscriptions.hook.mjs +0 -18
  306. package/dist/modules/subscriptions/hooks/list-subscriptions.hook.mjs.map +0 -1
  307. package/dist/modules/subscriptions/services/subscriptions.service.mjs +0 -32
  308. package/dist/modules/subscriptions/services/subscriptions.service.mjs.map +0 -1
  309. package/dist/modules/subscriptions/types.mjs +0 -57
  310. package/dist/modules/subscriptions/types.mjs.map +0 -1
  311. package/dist/modules/users/action/find-user-by-id.action.mjs +0 -10
  312. package/dist/modules/users/action/find-user-by-id.action.mjs.map +0 -1
  313. package/dist/modules/users/action/list-messages.action.mjs +0 -13
  314. package/dist/modules/users/action/list-messages.action.mjs.map +0 -1
  315. package/dist/modules/users/action/mark-all-messages-as-read.action.mjs +0 -10
  316. package/dist/modules/users/action/mark-all-messages-as-read.action.mjs.map +0 -1
  317. package/dist/modules/users/action/mark-message-as-read.action.mjs +0 -10
  318. package/dist/modules/users/action/mark-message-as-read.action.mjs.map +0 -1
  319. package/dist/modules/users/hooks/messages.hook.mjs +0 -57
  320. package/dist/modules/users/hooks/messages.hook.mjs.map +0 -1
  321. package/dist/modules/users/schema/messages.schema.mjs +0 -21
  322. package/dist/modules/users/schema/messages.schema.mjs.map +0 -1
  323. package/dist/modules/users/schema.mjs +0 -11
  324. package/dist/modules/users/schema.mjs.map +0 -1
  325. package/dist/modules/users/services/messages.service.mjs +0 -35
  326. package/dist/modules/users/services/messages.service.mjs.map +0 -1
  327. package/dist/modules/users/services/user.service.mjs +0 -50
  328. package/dist/modules/users/services/user.service.mjs.map +0 -1
  329. package/dist/modules/whitelabel/actions/find-whitelabel-styles.action.mjs +0 -15
  330. package/dist/modules/whitelabel/actions/find-whitelabel-styles.action.mjs.map +0 -1
  331. package/dist/modules/whitelabel/actions/find-whitelabel.action.mjs +0 -21
  332. package/dist/modules/whitelabel/actions/find-whitelabel.action.mjs.map +0 -1
  333. package/dist/modules/whitelabel/schema.mjs +0 -1
  334. package/dist/modules/whitelabel/schema.mjs.map +0 -1
  335. package/dist/modules/whitelabel/services/whitelabel-styles.service.mjs +0 -81
  336. package/dist/modules/whitelabel/services/whitelabel-styles.service.mjs.map +0 -1
  337. package/dist/modules/whitelabel/services/whitelabel.service.mjs +0 -61
  338. package/dist/modules/whitelabel/services/whitelabel.service.mjs.map +0 -1
  339. package/dist/modules/whitelabel/styles-schema.mjs +0 -1
  340. package/dist/modules/whitelabel/styles-schema.mjs.map +0 -1
  341. package/dist/providers/auth.provider.mjs +0 -100
  342. package/dist/providers/auth.provider.mjs.map +0 -1
  343. package/dist/providers/query.provider.mjs +0 -99
  344. package/dist/providers/query.provider.mjs.map +0 -1
  345. package/dist/providers/whitelabel.provider.mjs +0 -31
  346. package/dist/providers/whitelabel.provider.mjs.map +0 -1
  347. package/dist/server.mjs +0 -84
  348. package/dist/server.mjs.map +0 -1
  349. package/dist/store/useAccountModals.mjs +0 -18
  350. package/dist/store/useAccountModals.mjs.map +0 -1
  351. package/dist/store/useMdSidebarStore.mjs +0 -11
  352. package/dist/store/useMdSidebarStore.mjs.map +0 -1
  353. package/dist/store/useMobileNavbarSheet.mjs +0 -14
  354. package/dist/store/useMobileNavbarSheet.mjs.map +0 -1
  355. package/dist/store/useModalManager.mjs +0 -75
  356. package/dist/store/useModalManager.mjs.map +0 -1
  357. package/dist/utils/browser/clipboard.mjs +0 -36
  358. package/dist/utils/browser/clipboard.mjs.map +0 -1
  359. package/dist/utils/file/index.mjs +0 -9
  360. package/dist/utils/file/index.mjs.map +0 -1
  361. package/dist/utils/format/masks.mjs +0 -56
  362. package/dist/utils/format/masks.mjs.map +0 -1
  363. package/dist/utils/intl/locales.mjs +0 -12
  364. package/dist/utils/intl/locales.mjs.map +0 -1
  365. package/dist/utils/safeServerAction.mjs +0 -16
  366. package/dist/utils/safeServerAction.mjs.map +0 -1
  367. package/dist/utils/validators/account.mjs +0 -26
  368. package/dist/utils/validators/account.mjs.map +0 -1
  369. package/dist/utils/validators/common.mjs +0 -47
  370. package/dist/utils/validators/common.mjs.map +0 -1
  371. package/dist/utils/withAction.mjs +0 -13
  372. package/dist/utils/withAction.mjs.map +0 -1
@@ -1,94 +0,0 @@
1
- "use client";
2
- import { jsx } from "react/jsx-runtime";
3
- import { useState, useCallback } from "react";
4
- import { toast } from "sonner";
5
- import { Toast } from "../../ui/feedback/Toast";
6
- import useCountdownTimer from "../../../hooks/useCountdownTimer";
7
- import { OTP_CODE_LENGTH, VALID_OTP_CODE } from "../../../utils/validators/account";
8
- import { hasExactLength } from "../../../utils/validators/common";
9
- function useOtpVerification({
10
- onSuccess,
11
- successMessage,
12
- validateFn,
13
- resendFn
14
- }) {
15
- const [code, setCode] = useState("");
16
- const [isLoading, setIsLoading] = useState(false);
17
- const [hasError, setHasError] = useState(false);
18
- const {
19
- seconds: timer,
20
- isExpired: canResend,
21
- reset: resetTimer
22
- } = useCountdownTimer({ initialSeconds: 59 });
23
- const handleCodeChange = useCallback(
24
- (value) => {
25
- setCode(value.toUpperCase());
26
- if (hasError) {
27
- setHasError(false);
28
- }
29
- },
30
- [hasError]
31
- );
32
- const handleValidate = useCallback(async () => {
33
- if (!hasExactLength(code, OTP_CODE_LENGTH)) return;
34
- setIsLoading(true);
35
- setHasError(false);
36
- try {
37
- let isValid;
38
- if (validateFn) {
39
- isValid = await validateFn(code);
40
- } else {
41
- await new Promise((resolve) => setTimeout(resolve, 500));
42
- isValid = code === VALID_OTP_CODE;
43
- }
44
- if (!isValid) {
45
- setHasError(true);
46
- return;
47
- }
48
- toast.custom((t) => /* @__PURE__ */ jsx(Toast, { variant: "success", message: successMessage, toastId: t }));
49
- setCode("");
50
- onSuccess();
51
- } catch (error) {
52
- console.error("Erro ao validar c\xF3digo:", error);
53
- setHasError(true);
54
- } finally {
55
- setIsLoading(false);
56
- }
57
- }, [code, onSuccess, successMessage, validateFn]);
58
- const handleResend = useCallback(async () => {
59
- if (!canResend) return;
60
- try {
61
- resetTimer();
62
- setHasError(false);
63
- setCode("");
64
- if (resendFn) {
65
- await resendFn();
66
- }
67
- toast.custom((t) => /* @__PURE__ */ jsx(Toast, { variant: "success", message: "C\xF3digo reenviado", toastId: t }));
68
- } catch (error) {
69
- console.error("Erro ao reenviar c\xF3digo:", error);
70
- toast.custom((t) => /* @__PURE__ */ jsx(Toast, { variant: "error", message: "Erro ao reenviar c\xF3digo. Tente novamente.", toastId: t }));
71
- }
72
- }, [canResend, resetTimer, resendFn]);
73
- const reset = useCallback(() => {
74
- setCode("");
75
- setHasError(false);
76
- }, []);
77
- const isValidLength = hasExactLength(code, OTP_CODE_LENGTH);
78
- return {
79
- code,
80
- isLoading,
81
- hasError,
82
- timer,
83
- canResend,
84
- isValidLength,
85
- handleCodeChange,
86
- handleValidate,
87
- handleResend,
88
- reset
89
- };
90
- }
91
- export {
92
- useOtpVerification as default
93
- };
94
- //# sourceMappingURL=useOtpVerification.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/account/hooks/useOtpVerification.tsx"],"sourcesContent":["'use client';\r\n\r\nimport { useState, useCallback } from 'react';\r\nimport { toast } from 'sonner';\r\nimport { Toast } from '../../ui/feedback/Toast';\r\nimport useCountdownTimer from '../../../hooks/useCountdownTimer';\r\nimport { OTP_CODE_LENGTH, VALID_OTP_CODE } from '../../../utils/validators/account';\r\nimport { hasExactLength } from '../../../utils/validators/common';\r\n\r\ninterface UseOtpVerificationOptions {\r\n onSuccess: () => void;\r\n successMessage: string;\r\n validateFn?: (code: string) => Promise<boolean>;\r\n resendFn?: () => Promise<void>;\r\n}\r\n\r\nexport default function useOtpVerification({\r\n onSuccess,\r\n successMessage,\r\n validateFn,\r\n resendFn,\r\n}: UseOtpVerificationOptions) {\r\n const [code, setCode] = useState('');\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [hasError, setHasError] = useState(false);\r\n\r\n const {\r\n seconds: timer,\r\n isExpired: canResend,\r\n reset: resetTimer,\r\n } = useCountdownTimer({ initialSeconds: 59 });\r\n\r\n const handleCodeChange = useCallback(\r\n (value: string) => {\r\n setCode(value.toUpperCase());\r\n if (hasError) {\r\n setHasError(false);\r\n }\r\n },\r\n [hasError]\r\n );\r\n\r\n const handleValidate = useCallback(async () => {\r\n if (!hasExactLength(code, OTP_CODE_LENGTH)) return;\r\n\r\n setIsLoading(true);\r\n setHasError(false);\r\n\r\n try {\r\n let isValid: boolean;\r\n\r\n if (validateFn) {\r\n isValid = await validateFn(code);\r\n } else {\r\n await new Promise((resolve) => setTimeout(resolve, 500));\r\n isValid = code === VALID_OTP_CODE;\r\n }\r\n\r\n if (!isValid) {\r\n setHasError(true);\r\n return;\r\n }\r\n\r\n toast.custom((t) => <Toast variant=\"success\" message={successMessage} toastId={t} />);\r\n\r\n setCode('');\r\n onSuccess();\r\n } catch (error) {\r\n console.error('Erro ao validar código:', error);\r\n setHasError(true);\r\n } finally {\r\n setIsLoading(false);\r\n }\r\n }, [code, onSuccess, successMessage, validateFn]);\r\n\r\n const handleResend = useCallback(async () => {\r\n if (!canResend) return;\r\n\r\n try {\r\n resetTimer();\r\n setHasError(false);\r\n setCode('');\r\n\r\n if (resendFn) {\r\n await resendFn();\r\n }\r\n\r\n toast.custom((t) => <Toast variant=\"success\" message=\"Código reenviado\" toastId={t} />);\r\n } catch (error) {\r\n console.error('Erro ao reenviar código:', error);\r\n toast.custom((t) => (\r\n <Toast variant=\"error\" message=\"Erro ao reenviar código. Tente novamente.\" toastId={t} />\r\n ));\r\n }\r\n }, [canResend, resetTimer, resendFn]);\r\n\r\n const reset = useCallback(() => {\r\n setCode('');\r\n setHasError(false);\r\n }, []);\r\n\r\n const isValidLength = hasExactLength(code, OTP_CODE_LENGTH);\r\n\r\n return {\r\n code,\r\n isLoading,\r\n hasError,\r\n timer,\r\n canResend,\r\n isValidLength,\r\n handleCodeChange,\r\n handleValidate,\r\n handleResend,\r\n reset,\r\n };\r\n}\r\n"],"mappings":";AA+D0B;AA7D1B,SAAS,UAAU,mBAAmB;AACtC,SAAS,aAAa;AACtB,SAAS,aAAa;AACtB,OAAO,uBAAuB;AAC9B,SAAS,iBAAiB,sBAAsB;AAChD,SAAS,sBAAsB;AAShB,SAAR,mBAAoC;AAAA,EACzC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA8B;AAC5B,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS,EAAE;AACnC,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,KAAK;AAChD,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,KAAK;AAE9C,QAAM;AAAA,IACJ,SAAS;AAAA,IACT,WAAW;AAAA,IACX,OAAO;AAAA,EACT,IAAI,kBAAkB,EAAE,gBAAgB,GAAG,CAAC;AAE5C,QAAM,mBAAmB;AAAA,IACvB,CAAC,UAAkB;AACjB,cAAQ,MAAM,YAAY,CAAC;AAC3B,UAAI,UAAU;AACZ,oBAAY,KAAK;AAAA,MACnB;AAAA,IACF;AAAA,IACA,CAAC,QAAQ;AAAA,EACX;AAEA,QAAM,iBAAiB,YAAY,YAAY;AAC7C,QAAI,CAAC,eAAe,MAAM,eAAe,EAAG;AAE5C,iBAAa,IAAI;AACjB,gBAAY,KAAK;AAEjB,QAAI;AACF,UAAI;AAEJ,UAAI,YAAY;AACd,kBAAU,MAAM,WAAW,IAAI;AAAA,MACjC,OAAO;AACL,cAAM,IAAI,QAAQ,CAAC,YAAY,WAAW,SAAS,GAAG,CAAC;AACvD,kBAAU,SAAS;AAAA,MACrB;AAEA,UAAI,CAAC,SAAS;AACZ,oBAAY,IAAI;AAChB;AAAA,MACF;AAEA,YAAM,OAAO,CAAC,MAAM,oBAAC,SAAM,SAAQ,WAAU,SAAS,gBAAgB,SAAS,GAAG,CAAE;AAEpF,cAAQ,EAAE;AACV,gBAAU;AAAA,IACZ,SAAS,OAAO;AACd,cAAQ,MAAM,8BAA2B,KAAK;AAC9C,kBAAY,IAAI;AAAA,IAClB,UAAE;AACA,mBAAa,KAAK;AAAA,IACpB;AAAA,EACF,GAAG,CAAC,MAAM,WAAW,gBAAgB,UAAU,CAAC;AAEhD,QAAM,eAAe,YAAY,YAAY;AAC3C,QAAI,CAAC,UAAW;AAEhB,QAAI;AACF,iBAAW;AACX,kBAAY,KAAK;AACjB,cAAQ,EAAE;AAEV,UAAI,UAAU;AACZ,cAAM,SAAS;AAAA,MACjB;AAEA,YAAM,OAAO,CAAC,MAAM,oBAAC,SAAM,SAAQ,WAAU,SAAQ,uBAAmB,SAAS,GAAG,CAAE;AAAA,IACxF,SAAS,OAAO;AACd,cAAQ,MAAM,+BAA4B,KAAK;AAC/C,YAAM,OAAO,CAAC,MACZ,oBAAC,SAAM,SAAQ,SAAQ,SAAQ,gDAA4C,SAAS,GAAG,CACxF;AAAA,IACH;AAAA,EACF,GAAG,CAAC,WAAW,YAAY,QAAQ,CAAC;AAEpC,QAAM,QAAQ,YAAY,MAAM;AAC9B,YAAQ,EAAE;AACV,gBAAY,KAAK;AAAA,EACnB,GAAG,CAAC,CAAC;AAEL,QAAM,gBAAgB,eAAe,MAAM,eAAe;AAE1D,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
@@ -1,80 +0,0 @@
1
- "use client";
2
- import { jsx } from "react/jsx-runtime";
3
- import { useState, useCallback, useEffect } from "react";
4
- import { useMutation } from "@tanstack/react-query";
5
- import { toast } from "sonner";
6
- import { Toast } from "../../ui/feedback/Toast";
7
- import { copyToClipboard } from "../../../utils/browser/clipboard";
8
- import {
9
- generateTwoFactorAction,
10
- confirmTwoFactorAction
11
- } from "../../../modules/accounts/actions/account-management.action";
12
- import { withAction } from "../../../utils/withAction";
13
- function useTwoFactorAuthForm({ onSuccess, open } = {}) {
14
- const [code, setCode] = useState("");
15
- const [step, setStep] = useState("code");
16
- const generateMutation = useMutation({
17
- mutationFn: withAction(generateTwoFactorAction),
18
- onError: () => {
19
- toast.custom((t) => /* @__PURE__ */ jsx(Toast, { variant: "error", message: "Erro ao gerar QR Code. Tente novamente.", toastId: t }));
20
- }
21
- });
22
- const confirmMutation = useMutation({
23
- mutationFn: withAction(confirmTwoFactorAction),
24
- onSuccess: () => {
25
- setStep("recovery");
26
- },
27
- onError: () => {
28
- toast.custom((t) => /* @__PURE__ */ jsx(Toast, { variant: "error", message: "Erro ao confirmar c\xF3digo. Tente novamente.", toastId: t }));
29
- }
30
- });
31
- const { mutate: triggerGenerate } = generateMutation;
32
- useEffect(() => {
33
- if (open) {
34
- triggerGenerate();
35
- }
36
- }, [open, triggerGenerate]);
37
- const generateFailed = generateMutation.isError;
38
- const isCodeComplete = code.length === 6;
39
- const handleSubmit = () => {
40
- if (!isCodeComplete) return;
41
- confirmMutation.mutate(code);
42
- };
43
- const handleFinalize = () => {
44
- onSuccess?.();
45
- setTimeout(resetForm, 300);
46
- };
47
- const handleCopyCodes = useCallback(async () => {
48
- const codes = generateMutation.data?.backupCodes ?? [];
49
- const success = await copyToClipboard(codes.join("\n"));
50
- if (success) {
51
- toast.custom((t) => /* @__PURE__ */ jsx(Toast, { variant: "success", message: "C\xF3digos copiados com sucesso", toastId: t }));
52
- }
53
- }, [generateMutation.data]);
54
- const resetForm = () => {
55
- setCode("");
56
- setStep("code");
57
- generateMutation.reset();
58
- confirmMutation.reset();
59
- };
60
- return {
61
- code,
62
- setCode,
63
- isCodeComplete,
64
- isGenerating: generateMutation.isPending,
65
- isConfirming: confirmMutation.isPending,
66
- generateFailed,
67
- retryGenerate: triggerGenerate,
68
- qrcode: generateMutation.data?.qrcode,
69
- backupCodes: generateMutation.data?.backupCodes ?? [],
70
- step,
71
- handleSubmit,
72
- handleFinalize,
73
- handleCopyCodes,
74
- resetForm
75
- };
76
- }
77
- export {
78
- useTwoFactorAuthForm as default
79
- };
80
- //# sourceMappingURL=useTwoFactorAuthForm.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/account/hooks/useTwoFactorAuthForm.tsx"],"sourcesContent":["'use client';\n\nimport { useState, useCallback, useEffect } from 'react';\nimport { useMutation } from '@tanstack/react-query';\nimport { toast } from 'sonner';\nimport { Toast } from '../../ui/feedback/Toast';\nimport { copyToClipboard } from '../../../utils/browser/clipboard';\nimport {\n generateTwoFactorAction,\n confirmTwoFactorAction,\n} from '../../../modules/accounts/actions/account-management.action';\nimport { withAction } from '../../../utils/withAction';\n\ntype Step = 'code' | 'recovery';\n\ninterface UseTwoFactorAuthFormProps {\n onSuccess?: () => void;\n open?: boolean;\n}\n\nexport default function useTwoFactorAuthForm({ onSuccess, open }: UseTwoFactorAuthFormProps = {}) {\n const [code, setCode] = useState('');\n const [step, setStep] = useState<Step>('code');\n\n const generateMutation = useMutation({\n mutationFn: withAction(generateTwoFactorAction),\n onError: () => {\n toast.custom((t) => (\n <Toast variant=\"error\" message=\"Erro ao gerar QR Code. Tente novamente.\" toastId={t} />\n ));\n },\n });\n\n const confirmMutation = useMutation({\n mutationFn: withAction(confirmTwoFactorAction),\n onSuccess: () => {\n setStep('recovery');\n },\n onError: () => {\n toast.custom((t) => (\n <Toast variant=\"error\" message=\"Erro ao confirmar código. Tente novamente.\" toastId={t} />\n ));\n },\n });\n\n const { mutate: triggerGenerate } = generateMutation;\n\n useEffect(() => {\n if (open) {\n triggerGenerate();\n }\n }, [open, triggerGenerate]);\n\n const generateFailed = generateMutation.isError;\n\n const isCodeComplete = code.length === 6;\n\n const handleSubmit = () => {\n if (!isCodeComplete) return;\n confirmMutation.mutate(code);\n };\n\n const handleFinalize = () => {\n onSuccess?.();\n setTimeout(resetForm, 300);\n };\n\n const handleCopyCodes = useCallback(async () => {\n const codes = generateMutation.data?.backupCodes ?? [];\n const success = await copyToClipboard(codes.join('\\n'));\n if (success) {\n toast.custom((t) => (\n <Toast variant=\"success\" message=\"Códigos copiados com sucesso\" toastId={t} />\n ));\n }\n }, [generateMutation.data]);\n\n const resetForm = () => {\n setCode('');\n setStep('code');\n generateMutation.reset();\n confirmMutation.reset();\n };\n\n return {\n code,\n setCode,\n isCodeComplete,\n isGenerating: generateMutation.isPending,\n isConfirming: confirmMutation.isPending,\n generateFailed,\n retryGenerate: triggerGenerate,\n qrcode: generateMutation.data?.qrcode,\n backupCodes: generateMutation.data?.backupCodes ?? [],\n step,\n handleSubmit,\n handleFinalize,\n handleCopyCodes,\n resetForm,\n };\n}\n"],"mappings":";AA4BQ;AA1BR,SAAS,UAAU,aAAa,iBAAiB;AACjD,SAAS,mBAAmB;AAC5B,SAAS,aAAa;AACtB,SAAS,aAAa;AACtB,SAAS,uBAAuB;AAChC;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,kBAAkB;AASZ,SAAR,qBAAsC,EAAE,WAAW,KAAK,IAA+B,CAAC,GAAG;AAChG,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS,EAAE;AACnC,QAAM,CAAC,MAAM,OAAO,IAAI,SAAe,MAAM;AAE7C,QAAM,mBAAmB,YAAY;AAAA,IACnC,YAAY,WAAW,uBAAuB;AAAA,IAC9C,SAAS,MAAM;AACb,YAAM,OAAO,CAAC,MACZ,oBAAC,SAAM,SAAQ,SAAQ,SAAQ,2CAA0C,SAAS,GAAG,CACtF;AAAA,IACH;AAAA,EACF,CAAC;AAED,QAAM,kBAAkB,YAAY;AAAA,IAClC,YAAY,WAAW,sBAAsB;AAAA,IAC7C,WAAW,MAAM;AACf,cAAQ,UAAU;AAAA,IACpB;AAAA,IACA,SAAS,MAAM;AACb,YAAM,OAAO,CAAC,MACZ,oBAAC,SAAM,SAAQ,SAAQ,SAAQ,iDAA6C,SAAS,GAAG,CACzF;AAAA,IACH;AAAA,EACF,CAAC;AAED,QAAM,EAAE,QAAQ,gBAAgB,IAAI;AAEpC,YAAU,MAAM;AACd,QAAI,MAAM;AACR,sBAAgB;AAAA,IAClB;AAAA,EACF,GAAG,CAAC,MAAM,eAAe,CAAC;AAE1B,QAAM,iBAAiB,iBAAiB;AAExC,QAAM,iBAAiB,KAAK,WAAW;AAEvC,QAAM,eAAe,MAAM;AACzB,QAAI,CAAC,eAAgB;AACrB,oBAAgB,OAAO,IAAI;AAAA,EAC7B;AAEA,QAAM,iBAAiB,MAAM;AAC3B,gBAAY;AACZ,eAAW,WAAW,GAAG;AAAA,EAC3B;AAEA,QAAM,kBAAkB,YAAY,YAAY;AAC9C,UAAM,QAAQ,iBAAiB,MAAM,eAAe,CAAC;AACrD,UAAM,UAAU,MAAM,gBAAgB,MAAM,KAAK,IAAI,CAAC;AACtD,QAAI,SAAS;AACX,YAAM,OAAO,CAAC,MACZ,oBAAC,SAAM,SAAQ,WAAU,SAAQ,mCAA+B,SAAS,GAAG,CAC7E;AAAA,IACH;AAAA,EACF,GAAG,CAAC,iBAAiB,IAAI,CAAC;AAE1B,QAAM,YAAY,MAAM;AACtB,YAAQ,EAAE;AACV,YAAQ,MAAM;AACd,qBAAiB,MAAM;AACvB,oBAAgB,MAAM;AAAA,EACxB;AAEA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA,cAAc,iBAAiB;AAAA,IAC/B,cAAc,gBAAgB;AAAA,IAC9B;AAAA,IACA,eAAe;AAAA,IACf,QAAQ,iBAAiB,MAAM;AAAA,IAC/B,aAAa,iBAAiB,MAAM,eAAe,CAAC;AAAA,IACpD;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
@@ -1,180 +0,0 @@
1
- "use client";
2
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
3
- import { ChevronLeft, X, Mail } from "lucide-react";
4
- import { Button } from "../../ui/buttons/Button";
5
- import { Dialog, DialogContent, DialogHeader, DialogTitle } from "../../ui/overlay/Dialog";
6
- import { Separator } from "../../ui/data-display/Separator";
7
- import { InputOTP, InputOTPGroup, InputOTPSlot } from "../../ui/form/InputOtp";
8
- import { FormField } from "../../ui/form/FormField";
9
- import { formatTimer } from "../../../utils/format/masks";
10
- import { OTP_CODE_LENGTH } from "../../../utils/validators/account";
11
- import { useAuth } from "../../../providers/auth.provider";
12
- import { useInvalidateUser } from "../../../modules/auth/hooks/useUserQuery";
13
- import { confirmEmailChangeAction } from "../../../modules/accounts/actions/account-management.action";
14
- import useChangeEmailForm from "../hooks/useChangeEmailForm";
15
- import useOtpVerification from "../hooks/useOtpVerification";
16
- function ChangeEmailModal({ open, onClose }) {
17
- const { user } = useAuth();
18
- const invalidateUser = useInvalidateUser();
19
- const {
20
- showVerification,
21
- emailToVerify,
22
- isSubmitting,
23
- errors,
24
- register,
25
- handleContinue,
26
- handleBack,
27
- resetForm
28
- } = useChangeEmailForm();
29
- const handleSuccess = () => {
30
- invalidateUser();
31
- resetForm();
32
- onClose();
33
- };
34
- const {
35
- code,
36
- isLoading,
37
- hasError,
38
- timer,
39
- canResend,
40
- isValidLength,
41
- handleCodeChange,
42
- handleValidate,
43
- handleResend,
44
- reset: resetOtp
45
- } = useOtpVerification({
46
- onSuccess: handleSuccess,
47
- successMessage: "E-mail alterado com sucesso",
48
- validateFn: async (token) => {
49
- const result = await confirmEmailChangeAction(token, emailToVerify);
50
- return result.success;
51
- },
52
- resendFn: async () => {
53
- const { requestEmailChangeAction } = await import("../../../modules/accounts/actions/account-management.action");
54
- const result = await requestEmailChangeAction(emailToVerify);
55
- if (!result.success) {
56
- throw new Error(result.error);
57
- }
58
- }
59
- });
60
- const handleClose = () => {
61
- resetForm();
62
- resetOtp();
63
- onClose();
64
- };
65
- const handleBackFromVerification = () => {
66
- resetOtp();
67
- handleBack();
68
- };
69
- return /* @__PURE__ */ jsx(Dialog, { open, onOpenChange: handleClose, children: /* @__PURE__ */ jsxs(
70
- DialogContent,
71
- {
72
- showCloseButton: false,
73
- className: "flex flex-col p-0 gap-0 max-w-full! border-0 rounded-t-2xl rounded-b-none h-dvh top-0! bottom-0! left-0! right-0! translate-x-0! translate-y-0! lg:max-w-125! lg:h-auto! lg:rounded-lg lg:border lg:top-[50%]! lg:left-[50%]! lg:right-auto! lg:bottom-auto! lg:translate-x-[-50%]! lg:translate-y-[-50%]!",
74
- children: [
75
- showVerification ? /* @__PURE__ */ jsxs(DialogHeader, { className: "flex flex-row items-center justify-between px-4 py-3 border-b border-gray-200 lg:border-b-0", children: [
76
- /* @__PURE__ */ jsx(Button, { variant: "ghost", className: "size-8! p-0", onClick: handleBackFromVerification, children: /* @__PURE__ */ jsx(ChevronLeft, { size: 20, className: "text-gray-950" }) }),
77
- /* @__PURE__ */ jsx(DialogTitle, { className: "paragraph-medium-semibold text-gray-950 text-center flex-1", children: "Alterar e-mail" }),
78
- /* @__PURE__ */ jsx(Button, { variant: "ghost", className: "size-8! p-0", onClick: handleClose, children: /* @__PURE__ */ jsx(X, { size: 18, className: "text-gray-500" }) })
79
- ] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
80
- /* @__PURE__ */ jsx(DialogHeader, { className: "sr-only", children: /* @__PURE__ */ jsx(DialogTitle, { children: "Alterar e-mail" }) }),
81
- /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-center px-4 py-3 relative border-b border-gray-200 lg:border-b-0", children: [
82
- /* @__PURE__ */ jsx("span", { className: "paragraph-medium-semibold text-gray-950 text-center", children: "Alterar e-mail" }),
83
- /* @__PURE__ */ jsx(
84
- Button,
85
- {
86
- variant: "ghost",
87
- className: "absolute right-2 size-8! p-0",
88
- onClick: handleClose,
89
- children: /* @__PURE__ */ jsx(X, { size: 18, className: "text-gray-500" })
90
- }
91
- )
92
- ] })
93
- ] }),
94
- /* @__PURE__ */ jsx("div", { className: `${showVerification ? "w-full" : "w-1/2"} h-0.75 bg-pages-300` }),
95
- showVerification ? /* @__PURE__ */ jsxs(
96
- "form",
97
- {
98
- onSubmit: (e) => {
99
- e.preventDefault();
100
- handleValidate();
101
- },
102
- className: "flex flex-col flex-1 lg:flex-none",
103
- children: [
104
- /* @__PURE__ */ jsxs("div", { className: "px-4 lg:px-5 py-5 lg:py-6 flex flex-col gap-4 flex-1 lg:flex-none", children: [
105
- /* @__PURE__ */ jsx("div", { className: "flex items-center justify-center size-12 bg-white rounded-lg shadow-xs border border-gray-200", children: /* @__PURE__ */ jsx(Mail, { size: 20, className: "text-gray-950" }) }),
106
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1", children: [
107
- /* @__PURE__ */ jsx("h3", { className: "paragraph-medium-semibold text-gray-950", children: "C\xF3digo de valida\xE7\xE3o" }),
108
- /* @__PURE__ */ jsxs("p", { className: "paragraph-small-regular text-gray-600", children: [
109
- "Enviamos um c\xF3digo de valida\xE7\xE3o para o E-mail",
110
- " ",
111
- /* @__PURE__ */ jsxs("span", { className: "font-semibold text-gray-950 break-all", children: [
112
- user?.email,
113
- "."
114
- ] })
115
- ] })
116
- ] }),
117
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-2", children: [
118
- /* @__PURE__ */ jsx(InputOTP, { maxLength: OTP_CODE_LENGTH, value: code, onChange: handleCodeChange, children: /* @__PURE__ */ jsx(InputOTPGroup, { className: "flex flex-row gap-2", children: [...Array(OTP_CODE_LENGTH)].map((_, i) => /* @__PURE__ */ jsx(
119
- InputOTPSlot,
120
- {
121
- index: i,
122
- className: `uppercase text-2xl font-medium w-11 lg:w-12 h-13 lg:h-14 rounded-lg border bg-white shadow-none [&_div.animate-caret-blink]:bg-gray-950 ${hasError ? "border-red-500" : "border-gray-200"}`
123
- },
124
- i
125
- )) }) }),
126
- hasError && /* @__PURE__ */ jsx("p", { className: "paragraph-small-regular text-red-500", children: "C\xF3digo incorreto" })
127
- ] }),
128
- canResend ? /* @__PURE__ */ jsx(
129
- "button",
130
- {
131
- type: "button",
132
- onClick: handleResend,
133
- className: "paragraph-small-medium text-gray-950 underline cursor-pointer hover:text-gray-700 w-fit",
134
- children: "Reenviar c\xF3digo"
135
- }
136
- ) : /* @__PURE__ */ jsxs("p", { className: "paragraph-small-regular text-gray-500", children: [
137
- "Reenviar em",
138
- " ",
139
- /* @__PURE__ */ jsx("span", { className: "paragraph-small-semibold text-gray-950", children: formatTimer(timer) })
140
- ] })
141
- ] }),
142
- /* @__PURE__ */ jsx(Separator, {}),
143
- /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between px-4 lg:px-5 py-4 lg:py-5 mt-auto lg:mt-0", children: [
144
- /* @__PURE__ */ jsx(Button, { variant: "secondary", className: "h-10!", type: "button", onClick: handleClose, children: "Cancelar" }),
145
- /* @__PURE__ */ jsx(Button, { className: "h-10!", type: "submit", disabled: !isValidLength || isLoading, children: isLoading ? "Validando..." : "Alterar e-mail" })
146
- ] })
147
- ]
148
- }
149
- ) : /* @__PURE__ */ jsxs("form", { onSubmit: handleContinue, className: "flex flex-col flex-1 lg:flex-none", children: [
150
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-5 lg:gap-6 px-4 lg:px-5 py-5 lg:py-6 flex-1 lg:flex-none", children: [
151
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1", children: [
152
- /* @__PURE__ */ jsx("span", { className: "paragraph-medium-semibold text-gray-950", children: "Atualizar E-mail de contato" }),
153
- /* @__PURE__ */ jsx("span", { className: "paragraph-small-regular text-gray-600", children: "Informe o seu novo E-mail para manter seu contato atualizado." })
154
- ] }),
155
- /* @__PURE__ */ jsx(
156
- FormField,
157
- {
158
- label: "Novo e-mail",
159
- placeholder: "Digite seu novo e-mail",
160
- type: "email",
161
- ...register("email"),
162
- error: !!errors.email,
163
- errorMessage: errors.email?.message,
164
- leftIcon: Mail
165
- }
166
- )
167
- ] }),
168
- /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between p-4 lg:p-5 border-t border-gray-200 mt-auto lg:mt-0", children: [
169
- /* @__PURE__ */ jsx(Button, { variant: "secondary", className: "h-10!", type: "button", onClick: handleClose, children: "Cancelar" }),
170
- /* @__PURE__ */ jsx(Button, { className: "h-10!", type: "submit", disabled: isSubmitting, children: isSubmitting ? "Enviando..." : "Continuar" })
171
- ] })
172
- ] })
173
- ]
174
- }
175
- ) });
176
- }
177
- export {
178
- ChangeEmailModal
179
- };
180
- //# sourceMappingURL=ChangeEmailModal.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/account/sections/ChangeEmailModal.tsx"],"sourcesContent":["'use client';\r\n\r\nimport { ChevronLeft, X, Mail } from 'lucide-react';\r\nimport { Button } from '../../ui/buttons/Button';\r\nimport { Dialog, DialogContent, DialogHeader, DialogTitle } from '../../ui/overlay/Dialog';\r\nimport { Separator } from '../../ui/data-display/Separator';\r\nimport { InputOTP, InputOTPGroup, InputOTPSlot } from '../../ui/form/InputOtp';\r\nimport { FormField } from '../../ui/form/FormField';\r\nimport { formatTimer } from '../../../utils/format/masks';\r\nimport { OTP_CODE_LENGTH } from '../../../utils/validators/account';\r\nimport { useAuth } from '../../../providers/auth.provider';\r\nimport { useInvalidateUser } from '../../../modules/auth/hooks/useUserQuery';\r\nimport { confirmEmailChangeAction } from '../../../modules/accounts/actions/account-management.action';\r\nimport useChangeEmailForm from '../hooks/useChangeEmailForm';\r\nimport useOtpVerification from '../hooks/useOtpVerification';\r\n\r\ninterface ChangeEmailModalProps {\r\n open: boolean;\r\n onClose: () => void;\r\n}\r\n\r\nexport function ChangeEmailModal({ open, onClose }: ChangeEmailModalProps) {\r\n const { user } = useAuth();\r\n const invalidateUser = useInvalidateUser();\r\n\r\n const {\r\n showVerification,\r\n emailToVerify,\r\n isSubmitting,\r\n errors,\r\n register,\r\n handleContinue,\r\n handleBack,\r\n resetForm,\r\n } = useChangeEmailForm();\r\n\r\n const handleSuccess = () => {\r\n invalidateUser();\r\n resetForm();\r\n onClose();\r\n };\r\n\r\n const {\r\n code,\r\n isLoading,\r\n hasError,\r\n timer,\r\n canResend,\r\n isValidLength,\r\n handleCodeChange,\r\n handleValidate,\r\n handleResend,\r\n reset: resetOtp,\r\n } = useOtpVerification({\r\n onSuccess: handleSuccess,\r\n successMessage: 'E-mail alterado com sucesso',\r\n validateFn: async (token) => {\r\n const result = await confirmEmailChangeAction(token, emailToVerify);\r\n return result.success;\r\n },\r\n resendFn: async () => {\r\n const { requestEmailChangeAction } = await import('../../../modules/accounts/actions/account-management.action');\r\n const result = await requestEmailChangeAction(emailToVerify);\r\n if (!result.success) {\r\n throw new Error(result.error);\r\n }\r\n },\r\n });\r\n\r\n const handleClose = () => {\r\n resetForm();\r\n resetOtp();\r\n onClose();\r\n };\r\n\r\n const handleBackFromVerification = () => {\r\n resetOtp();\r\n handleBack();\r\n };\r\n\r\n return (\r\n <Dialog open={open} onOpenChange={handleClose}>\r\n <DialogContent\r\n showCloseButton={false}\r\n className=\"flex flex-col p-0 gap-0 max-w-full! border-0 rounded-t-2xl rounded-b-none h-dvh top-0! bottom-0! left-0! right-0! translate-x-0! translate-y-0! lg:max-w-125! lg:h-auto! lg:rounded-lg lg:border lg:top-[50%]! lg:left-[50%]! lg:right-auto! lg:bottom-auto! lg:translate-x-[-50%]! lg:translate-y-[-50%]!\"\r\n >\r\n {showVerification ? (\r\n <DialogHeader className=\"flex flex-row items-center justify-between px-4 py-3 border-b border-gray-200 lg:border-b-0\">\r\n <Button variant=\"ghost\" className=\"size-8! p-0\" onClick={handleBackFromVerification}>\r\n <ChevronLeft size={20} className=\"text-gray-950\" />\r\n </Button>\r\n <DialogTitle className=\"paragraph-medium-semibold text-gray-950 text-center flex-1\">\r\n Alterar e-mail\r\n </DialogTitle>\r\n <Button variant=\"ghost\" className=\"size-8! p-0\" onClick={handleClose}>\r\n <X size={18} className=\"text-gray-500\" />\r\n </Button>\r\n </DialogHeader>\r\n ) : (\r\n <>\r\n <DialogHeader className=\"sr-only\">\r\n <DialogTitle>Alterar e-mail</DialogTitle>\r\n </DialogHeader>\r\n <div className=\"flex items-center justify-center px-4 py-3 relative border-b border-gray-200 lg:border-b-0\">\r\n <span className=\"paragraph-medium-semibold text-gray-950 text-center\">\r\n Alterar e-mail\r\n </span>\r\n <Button\r\n variant=\"ghost\"\r\n className=\"absolute right-2 size-8! p-0\"\r\n onClick={handleClose}\r\n >\r\n <X size={18} className=\"text-gray-500\" />\r\n </Button>\r\n </div>\r\n </>\r\n )}\r\n\r\n <div className={`${showVerification ? 'w-full' : 'w-1/2'} h-0.75 bg-pages-300`} />\r\n\r\n {showVerification ? (\r\n <form\r\n onSubmit={(e) => {\r\n e.preventDefault();\r\n handleValidate();\r\n }}\r\n className=\"flex flex-col flex-1 lg:flex-none\"\r\n >\r\n <div className=\"px-4 lg:px-5 py-5 lg:py-6 flex flex-col gap-4 flex-1 lg:flex-none\">\r\n <div className=\"flex items-center justify-center size-12 bg-white rounded-lg shadow-xs border border-gray-200\">\r\n <Mail size={20} className=\"text-gray-950\" />\r\n </div>\r\n\r\n <div className=\"flex flex-col gap-1\">\r\n <h3 className=\"paragraph-medium-semibold text-gray-950\">Código de validação</h3>\r\n <p className=\"paragraph-small-regular text-gray-600\">\r\n Enviamos um código de validação para o E-mail{' '}\r\n <span className=\"font-semibold text-gray-950 break-all\">{user?.email}.</span>\r\n </p>\r\n </div>\r\n\r\n <div className=\"flex flex-col gap-2\">\r\n <InputOTP maxLength={OTP_CODE_LENGTH} value={code} onChange={handleCodeChange}>\r\n <InputOTPGroup className=\"flex flex-row gap-2\">\r\n {[...Array(OTP_CODE_LENGTH)].map((_, i) => (\r\n <InputOTPSlot\r\n key={i}\r\n index={i}\r\n className={`uppercase text-2xl font-medium w-11 lg:w-12 h-13 lg:h-14 rounded-lg border bg-white shadow-none [&_div.animate-caret-blink]:bg-gray-950 ${hasError ? 'border-red-500' : 'border-gray-200'}`}\r\n />\r\n ))}\r\n </InputOTPGroup>\r\n </InputOTP>\r\n {hasError && (\r\n <p className=\"paragraph-small-regular text-red-500\">Código incorreto</p>\r\n )}\r\n </div>\r\n\r\n {canResend ? (\r\n <button\r\n type=\"button\"\r\n onClick={handleResend}\r\n className=\"paragraph-small-medium text-gray-950 underline cursor-pointer hover:text-gray-700 w-fit\"\r\n >\r\n Reenviar código\r\n </button>\r\n ) : (\r\n <p className=\"paragraph-small-regular text-gray-500\">\r\n Reenviar em{' '}\r\n <span className=\"paragraph-small-semibold text-gray-950\">\r\n {formatTimer(timer)}\r\n </span>\r\n </p>\r\n )}\r\n </div>\r\n\r\n <Separator />\r\n\r\n <div className=\"flex items-center justify-between px-4 lg:px-5 py-4 lg:py-5 mt-auto lg:mt-0\">\r\n <Button variant=\"secondary\" className=\"h-10!\" type=\"button\" onClick={handleClose}>\r\n Cancelar\r\n </Button>\r\n <Button className=\"h-10!\" type=\"submit\" disabled={!isValidLength || isLoading}>\r\n {isLoading ? 'Validando...' : 'Alterar e-mail'}\r\n </Button>\r\n </div>\r\n </form>\r\n ) : (\r\n <form onSubmit={handleContinue} className=\"flex flex-col flex-1 lg:flex-none\">\r\n <div className=\"flex flex-col gap-5 lg:gap-6 px-4 lg:px-5 py-5 lg:py-6 flex-1 lg:flex-none\">\r\n <div className=\"flex flex-col gap-1\">\r\n <span className=\"paragraph-medium-semibold text-gray-950\">\r\n Atualizar E-mail de contato\r\n </span>\r\n <span className=\"paragraph-small-regular text-gray-600\">\r\n Informe o seu novo E-mail para manter seu contato atualizado.\r\n </span>\r\n </div>\r\n\r\n <FormField\r\n label=\"Novo e-mail\"\r\n placeholder=\"Digite seu novo e-mail\"\r\n type=\"email\"\r\n {...register('email')}\r\n error={!!errors.email}\r\n errorMessage={errors.email?.message}\r\n leftIcon={Mail}\r\n />\r\n </div>\r\n\r\n <div className=\"flex items-center justify-between p-4 lg:p-5 border-t border-gray-200 mt-auto lg:mt-0\">\r\n <Button variant=\"secondary\" className=\"h-10!\" type=\"button\" onClick={handleClose}>\r\n Cancelar\r\n </Button>\r\n <Button className=\"h-10!\" type=\"submit\" disabled={isSubmitting}>\r\n {isSubmitting ? 'Enviando...' : 'Continuar'}\r\n </Button>\r\n </div>\r\n </form>\r\n )}\r\n </DialogContent>\r\n </Dialog>\r\n );\r\n}\r\n"],"mappings":"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","names":[]}
@@ -1,64 +0,0 @@
1
- "use client";
2
- import { jsx, jsxs } from "react/jsx-runtime";
3
- import { ArrowLeft, Lock } from "lucide-react";
4
- import { Button } from "../../ui/buttons/Button";
5
- import { FormField } from "../../ui/form/FormField";
6
- import useChangePasswordForm from "../hooks/useChangePasswordForm";
7
- import usePasswordVisibility from "../../../hooks/usePasswordVisibility";
8
- function ChangePasswordSection({ onBack }) {
9
- const { register, handleSubmit, errors } = useChangePasswordForm({
10
- onSuccess: onBack
11
- });
12
- const { showPassword: showCurrentPw, togglePassword: toggleCurrentPw } = usePasswordVisibility();
13
- const { showPassword: showNewPw, togglePassword: toggleNewPw } = usePasswordVisibility();
14
- return /* @__PURE__ */ jsxs(
15
- "form",
16
- {
17
- onSubmit: handleSubmit,
18
- className: "flex-1 overflow-y-auto px-4 pb-5 lg:p-5 flex flex-col h-full lg:h-full gap-5 lg:gap-6",
19
- children: [
20
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
21
- /* @__PURE__ */ jsx(Button, { type: "button", variant: "ghost", className: "size-8! p-0", onClick: onBack, children: /* @__PURE__ */ jsx(ArrowLeft, { size: 20 }) }),
22
- /* @__PURE__ */ jsx("span", { className: "paragraph-medium-semibold text-gray-950", children: "Alterar senha" })
23
- ] }),
24
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4", children: [
25
- /* @__PURE__ */ jsx(
26
- FormField,
27
- {
28
- label: "Senha atual",
29
- type: "password",
30
- placeholder: "Digite sua senha atual",
31
- leftIcon: Lock,
32
- error: !!errors.currentPassword,
33
- errorMessage: errors.currentPassword?.message,
34
- classnameContainer: "h-10!",
35
- showPassword: showCurrentPw,
36
- onTogglePassword: toggleCurrentPw,
37
- ...register("currentPassword")
38
- }
39
- ),
40
- /* @__PURE__ */ jsx(
41
- FormField,
42
- {
43
- label: "Nova senha",
44
- type: "password",
45
- placeholder: "Digite sua nova senha",
46
- leftIcon: Lock,
47
- error: !!errors.newPassword,
48
- errorMessage: errors.newPassword?.message,
49
- classnameContainer: "h-10!",
50
- showPassword: showNewPw,
51
- onTogglePassword: toggleNewPw,
52
- ...register("newPassword")
53
- }
54
- )
55
- ] }),
56
- /* @__PURE__ */ jsx(Button, { type: "submit", className: "w-fit h-10!", children: "Salvar nova senha" })
57
- ]
58
- }
59
- );
60
- }
61
- export {
62
- ChangePasswordSection
63
- };
64
- //# sourceMappingURL=ChangePasswordSection.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../../src/components/account/sections/ChangePasswordSection.tsx"],"sourcesContent":["'use client';\r\n\r\nimport { ArrowLeft, Lock } from 'lucide-react';\r\nimport { Button } from '../../ui/buttons/Button';\r\nimport { FormField } from '../../ui/form/FormField';\r\nimport useChangePasswordForm from '../hooks/useChangePasswordForm';\r\nimport usePasswordVisibility from '../../../hooks/usePasswordVisibility';\r\n\r\ninterface ChangePasswordSectionProps {\r\n onBack: () => void;\r\n}\r\n\r\nexport function ChangePasswordSection({ onBack }: ChangePasswordSectionProps) {\r\n const { register, handleSubmit, errors } = useChangePasswordForm({\r\n onSuccess: onBack,\r\n });\r\n const { showPassword: showCurrentPw, togglePassword: toggleCurrentPw } = usePasswordVisibility();\r\n const { showPassword: showNewPw, togglePassword: toggleNewPw } = usePasswordVisibility();\r\n\r\n return (\r\n <form\r\n onSubmit={handleSubmit}\r\n className=\"flex-1 overflow-y-auto px-4 pb-5 lg:p-5 flex flex-col h-full lg:h-full gap-5 lg:gap-6\"\r\n >\r\n <div className=\"flex items-center gap-3\">\r\n <Button type=\"button\" variant=\"ghost\" className=\"size-8! p-0\" onClick={onBack}>\r\n <ArrowLeft size={20} />\r\n </Button>\r\n <span className=\"paragraph-medium-semibold text-gray-950\">Alterar senha</span>\r\n </div>\r\n\r\n <div className=\"flex flex-col gap-4\">\r\n <FormField\r\n label=\"Senha atual\"\r\n type=\"password\"\r\n placeholder=\"Digite sua senha atual\"\r\n leftIcon={Lock}\r\n error={!!errors.currentPassword}\r\n errorMessage={errors.currentPassword?.message}\r\n classnameContainer=\"h-10!\"\r\n showPassword={showCurrentPw}\r\n onTogglePassword={toggleCurrentPw}\r\n {...register('currentPassword')}\r\n />\r\n <FormField\r\n label=\"Nova senha\"\r\n type=\"password\"\r\n placeholder=\"Digite sua nova senha\"\r\n leftIcon={Lock}\r\n error={!!errors.newPassword}\r\n errorMessage={errors.newPassword?.message}\r\n classnameContainer=\"h-10!\"\r\n showPassword={showNewPw}\r\n onTogglePassword={toggleNewPw}\r\n {...register('newPassword')}\r\n />\r\n </div>\r\n\r\n <Button type=\"submit\" className=\"w-fit h-10!\">\r\n Salvar nova senha\r\n </Button>\r\n </form>\r\n );\r\n}\r\n"],"mappings":";AAwBM,SAEI,KAFJ;AAtBN,SAAS,WAAW,YAAY;AAChC,SAAS,cAAc;AACvB,SAAS,iBAAiB;AAC1B,OAAO,2BAA2B;AAClC,OAAO,2BAA2B;AAM3B,SAAS,sBAAsB,EAAE,OAAO,GAA+B;AAC5E,QAAM,EAAE,UAAU,cAAc,OAAO,IAAI,sBAAsB;AAAA,IAC/D,WAAW;AAAA,EACb,CAAC;AACD,QAAM,EAAE,cAAc,eAAe,gBAAgB,gBAAgB,IAAI,sBAAsB;AAC/F,QAAM,EAAE,cAAc,WAAW,gBAAgB,YAAY,IAAI,sBAAsB;AAEvF,SACE;AAAA,IAAC;AAAA;AAAA,MACC,UAAU;AAAA,MACV,WAAU;AAAA,MAEV;AAAA,6BAAC,SAAI,WAAU,2BACb;AAAA,8BAAC,UAAO,MAAK,UAAS,SAAQ,SAAQ,WAAU,eAAc,SAAS,QACrE,8BAAC,aAAU,MAAM,IAAI,GACvB;AAAA,UACA,oBAAC,UAAK,WAAU,2CAA0C,2BAAa;AAAA,WACzE;AAAA,QAEA,qBAAC,SAAI,WAAU,uBACb;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,OAAM;AAAA,cACN,MAAK;AAAA,cACL,aAAY;AAAA,cACZ,UAAU;AAAA,cACV,OAAO,CAAC,CAAC,OAAO;AAAA,cAChB,cAAc,OAAO,iBAAiB;AAAA,cACtC,oBAAmB;AAAA,cACnB,cAAc;AAAA,cACd,kBAAkB;AAAA,cACjB,GAAG,SAAS,iBAAiB;AAAA;AAAA,UAChC;AAAA,UACA;AAAA,YAAC;AAAA;AAAA,cACC,OAAM;AAAA,cACN,MAAK;AAAA,cACL,aAAY;AAAA,cACZ,UAAU;AAAA,cACV,OAAO,CAAC,CAAC,OAAO;AAAA,cAChB,cAAc,OAAO,aAAa;AAAA,cAClC,oBAAmB;AAAA,cACnB,cAAc;AAAA,cACd,kBAAkB;AAAA,cACjB,GAAG,SAAS,aAAa;AAAA;AAAA,UAC5B;AAAA,WACF;AAAA,QAEA,oBAAC,UAAO,MAAK,UAAS,WAAU,eAAc,+BAE9C;AAAA;AAAA;AAAA,EACF;AAEJ;","names":[]}