@greatapps/common 1.1.380 → 1.1.382

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 (345) hide show
  1. package/dist/components/account/AccountModals.mjs.map +1 -1
  2. package/dist/components/account/ConfigurationsMyAccountModal.mjs +1 -1
  3. package/dist/components/account/ConfigurationsMyAccountModal.mjs.map +1 -1
  4. package/dist/components/account/ConfirmDeleteAccountModal.mjs.map +1 -1
  5. package/dist/components/account/ConfirmGlobalPreferencesModal.mjs.map +1 -1
  6. package/dist/components/account/DeleteAccountModal.mjs.map +1 -1
  7. package/dist/components/account/DisableTwoFactorAuthModal.mjs.map +1 -1
  8. package/dist/components/account/IsntPossibleDeleteAccountModal.mjs.map +1 -1
  9. package/dist/components/account/TwoFactorAuthModal.mjs.map +1 -1
  10. package/dist/components/account/hooks/useChangePhoneForm.mjs.map +1 -1
  11. package/dist/components/account/hooks/useTwoFactorAuthForm.mjs.map +1 -1
  12. package/dist/components/account/sections/ChangeEmailModal.mjs.map +1 -1
  13. package/dist/components/account/sections/ChangePasswordSection.mjs.map +1 -1
  14. package/dist/components/account/sections/ChangePhoneModal.mjs.map +1 -1
  15. package/dist/components/account/sections/MyProfileSection.mjs.map +1 -1
  16. package/dist/components/account/sections/PreferencesSection.mjs.map +1 -1
  17. package/dist/components/account/sections/SecuritySection.mjs.map +1 -1
  18. package/dist/components/embeds/CrispEmbed.mjs.map +1 -1
  19. package/dist/components/embeds/FrillEmbed.mjs.map +1 -1
  20. package/dist/components/handlers/SearchParamsHandler.mjs.map +1 -1
  21. package/dist/components/layouts/AppMobileNavBar.mjs.map +1 -1
  22. package/dist/components/layouts/AppNavBar.mjs.map +1 -1
  23. package/dist/components/layouts/CollapsibleSidebar.mjs.map +1 -1
  24. package/dist/components/layouts/MdSideBarNavigation.mjs.map +1 -1
  25. package/dist/components/layouts/NavBar.mjs.map +1 -1
  26. package/dist/components/layouts/NotificationsPopover.mjs.map +1 -1
  27. package/dist/components/layouts/ProfilePopover.mjs.map +1 -1
  28. package/dist/components/layouts/SideBarNavigation.mjs.map +1 -1
  29. package/dist/components/layouts/UsersSelectorPopover.mjs.map +1 -1
  30. package/dist/components/layouts/WhitelabelCodes.mjs.map +1 -1
  31. package/dist/components/modals/BuyCreditsModal.mjs.map +1 -1
  32. package/dist/components/modals/ModalManager.mjs.map +1 -1
  33. package/dist/components/modals/Modals.mjs.map +1 -1
  34. package/dist/components/modals/cards/AddCardModal.mjs.map +1 -1
  35. package/dist/components/modals/cards/CardFormFields.mjs.map +1 -1
  36. package/dist/components/navigation/CancelledSubscriptionBanner.mjs.map +1 -1
  37. package/dist/components/navigation/NavItemsContext.mjs.map +1 -1
  38. package/dist/components/navigation/ProjectSelectorPopover.mjs.map +1 -1
  39. package/dist/components/navigation/shells/TabsMobileShell.mjs.map +1 -1
  40. package/dist/components/navigation/subcomponents/ProjectSelector.mjs.map +1 -1
  41. package/dist/components/pages/NotFoundPage.mjs.map +1 -1
  42. package/dist/components/pages/notifications/Notifications.mjs.map +1 -1
  43. package/dist/components/ui/buttons/Button.mjs.map +1 -1
  44. package/dist/components/ui/buttons/CancelButton.mjs.map +1 -1
  45. package/dist/components/ui/buttons/CopyButton.mjs.map +1 -1
  46. package/dist/components/ui/data-display/Accordion.mjs.map +1 -1
  47. package/dist/components/ui/data-display/Badge.mjs.map +1 -1
  48. package/dist/components/ui/data-display/Card.mjs.map +1 -1
  49. package/dist/components/ui/data-display/CardBrandIcons.mjs.map +1 -1
  50. package/dist/components/ui/data-display/CardItem.mjs.map +1 -1
  51. package/dist/components/ui/data-display/Pagination.mjs.map +1 -1
  52. package/dist/components/ui/data-display/PaymentInfoCard.mjs.map +1 -1
  53. package/dist/components/ui/data-display/ScrollArea.mjs.map +1 -1
  54. package/dist/components/ui/data-display/Separator.mjs.map +1 -1
  55. package/dist/components/ui/data-display/Table.mjs.map +1 -1
  56. package/dist/components/ui/data-display/Tabs.mjs.map +1 -1
  57. package/dist/components/ui/feedback/CircularProgress.mjs.map +1 -1
  58. package/dist/components/ui/feedback/DefaultCircularProgress.mjs.map +1 -1
  59. package/dist/components/ui/feedback/LoadingOverlay.mjs.map +1 -1
  60. package/dist/components/ui/feedback/Progress.mjs.map +1 -1
  61. package/dist/components/ui/feedback/Skeleton.mjs.map +1 -1
  62. package/dist/components/ui/feedback/Toast.mjs.map +1 -1
  63. package/dist/components/ui/form/Calendar.mjs.map +1 -1
  64. package/dist/components/ui/form/Checkbox.mjs.map +1 -1
  65. package/dist/components/ui/form/ComboboxField.mjs.map +1 -1
  66. package/dist/components/ui/form/DatePicker.mjs.map +1 -1
  67. package/dist/components/ui/form/DateRangePicker.mjs.map +1 -1
  68. package/dist/components/ui/form/FormField.mjs.map +1 -1
  69. package/dist/components/ui/form/Input.mjs.map +1 -1
  70. package/dist/components/ui/form/InputOtp.mjs.map +1 -1
  71. package/dist/components/ui/form/PhoneInput.mjs.map +1 -1
  72. package/dist/components/ui/form/RadioGroup.mjs.map +1 -1
  73. package/dist/components/ui/form/Select.mjs +1 -1
  74. package/dist/components/ui/form/Select.mjs.map +1 -1
  75. package/dist/components/ui/form/Switch.mjs.map +1 -1
  76. package/dist/components/ui/form/Textarea.mjs.map +1 -1
  77. package/dist/components/ui/overlay/Command.mjs.map +1 -1
  78. package/dist/components/ui/overlay/Dialog.mjs.map +1 -1
  79. package/dist/components/ui/overlay/Popover.mjs.map +1 -1
  80. package/dist/components/ui/overlay/Sheet.mjs.map +1 -1
  81. package/dist/components/ui/overlay/Tooltip.mjs.map +1 -1
  82. package/dist/components/widgets/notifications/NotificationCard.mjs.map +1 -1
  83. package/dist/hooks/copy-to-clipboard.hook.mjs.map +1 -1
  84. package/dist/hooks/useDebounce.mjs.map +1 -1
  85. package/dist/hooks/useDebounceState.mjs.map +1 -1
  86. package/dist/hooks/useDebouncedEffect.mjs.map +1 -1
  87. package/dist/index.mjs.map +1 -1
  88. package/dist/infra/utils/clsx.mjs.map +1 -1
  89. package/dist/infra/utils/date.mjs.map +1 -1
  90. package/dist/infra/utils/parser.mjs.map +1 -1
  91. package/dist/infra/utils/percentage.mjs.map +1 -1
  92. package/dist/middleware.mjs.map +1 -1
  93. package/dist/modules/accounts/actions/account-management.action.mjs.map +1 -1
  94. package/dist/modules/accounts/actions/find-current-account.action.mjs.map +1 -1
  95. package/dist/modules/accounts/actions/list-currencies.action.mjs.map +1 -1
  96. package/dist/modules/accounts/actions/list-timezones.action.mjs.map +1 -1
  97. package/dist/modules/accounts/hooks/current-account.hook.mjs.map +1 -1
  98. package/dist/modules/accounts/hooks/useAccountManagement.mjs.map +1 -1
  99. package/dist/modules/accounts/hooks/useCurrencies.mjs.map +1 -1
  100. package/dist/modules/accounts/hooks/useTimezones.mjs.map +1 -1
  101. package/dist/modules/accounts/hooks/useViaCep.mjs.map +1 -1
  102. package/dist/modules/accounts/services/account.service.mjs.map +1 -1
  103. package/dist/modules/accounts/services/two-factor.service.mjs +3 -2
  104. package/dist/modules/accounts/services/two-factor.service.mjs.map +1 -1
  105. package/dist/modules/auth/actions/validate-session.action.mjs.map +1 -1
  106. package/dist/modules/auth/actions/verify-two-factor.action.mjs +2 -2
  107. package/dist/modules/auth/actions/verify-two-factor.action.mjs.map +1 -1
  108. package/dist/modules/auth/hooks/login.hook.mjs.map +1 -1
  109. package/dist/modules/auth/hooks/logout.hook.mjs.map +1 -1
  110. package/dist/modules/auth/hooks/register.hook.mjs.map +1 -1
  111. package/dist/modules/auth/hooks/useManagementPermissions.mjs.map +1 -1
  112. package/dist/modules/auth/hooks/useUserQuery.mjs +2 -2
  113. package/dist/modules/auth/hooks/useUserQuery.mjs.map +1 -1
  114. package/dist/modules/auth/services/auth.service.mjs +3 -2
  115. package/dist/modules/auth/services/auth.service.mjs.map +1 -1
  116. package/dist/modules/auth/utils/assert-management-permission.mjs.map +1 -1
  117. package/dist/modules/auth/utils/assert-management-subscription.mjs.map +1 -1
  118. package/dist/modules/auth/utils/build-wl-override.mjs.map +1 -1
  119. package/dist/modules/cards/actions/create-card.action.mjs.map +1 -1
  120. package/dist/modules/cards/actions/list-cards.action.mjs.map +1 -1
  121. package/dist/modules/cards/hooks/cards.hook.mjs.map +1 -1
  122. package/dist/modules/cards/hooks/create-card.hook.mjs.map +1 -1
  123. package/dist/modules/cards/services/cards.service.mjs.map +1 -1
  124. package/dist/modules/cards/types.mjs.map +1 -1
  125. package/dist/modules/ia-credits/actions/list-ia-credits.action.mjs.map +1 -1
  126. package/dist/modules/plans/actions/find-plan-by-id.action.mjs.map +1 -1
  127. package/dist/modules/plans/hooks/use-has-plan-addon.hook.mjs.map +1 -1
  128. package/dist/modules/plans/hooks/use-plan-by-id.hook.mjs.map +1 -1
  129. package/dist/modules/plans/services/plans.service.mjs.map +1 -1
  130. package/dist/modules/plans/types/plan.type.mjs.map +1 -1
  131. package/dist/modules/projects/actions/add-project-user.action.mjs.map +1 -1
  132. package/dist/modules/projects/actions/list-all-account-users.action.mjs.map +1 -1
  133. package/dist/modules/projects/actions/list-available-users.action.mjs.map +1 -1
  134. package/dist/modules/projects/actions/list-project-users.action.mjs.map +1 -1
  135. package/dist/modules/projects/actions/remove-project-user.action.mjs.map +1 -1
  136. package/dist/modules/projects/hooks/add-project-user.hook.mjs.map +1 -1
  137. package/dist/modules/projects/hooks/list-all-account-users.hook.mjs.map +1 -1
  138. package/dist/modules/projects/hooks/list-available-users.hook.mjs.map +1 -1
  139. package/dist/modules/projects/hooks/list-project-users.hook.mjs.map +1 -1
  140. package/dist/modules/projects/hooks/remove-project-user.hook.mjs.map +1 -1
  141. package/dist/modules/subscriptions/actions/calculate-subscription.action.mjs.map +1 -1
  142. package/dist/modules/subscriptions/actions/list-subscriptions.action.mjs.map +1 -1
  143. package/dist/modules/subscriptions/actions/update-subscription-plan.action.mjs.map +1 -1
  144. package/dist/modules/subscriptions/constants/query-keys.constants.mjs.map +1 -1
  145. package/dist/modules/subscriptions/hooks/calculate-subscription.hook.mjs.map +1 -1
  146. package/dist/modules/subscriptions/hooks/find-active-subscription.hook.mjs.map +1 -1
  147. package/dist/modules/subscriptions/hooks/list-subscriptions.hook.mjs.map +1 -1
  148. package/dist/modules/subscriptions/hooks/update-subscription-plan.hook.mjs.map +1 -1
  149. package/dist/modules/subscriptions/hooks/use-cancelled-subscription-guard.mjs.map +1 -1
  150. package/dist/modules/subscriptions/types/calculate-subscription.type.mjs.map +1 -1
  151. package/dist/modules/subscriptions/utils/build-plan-extras.mjs.map +1 -1
  152. package/dist/modules/subscriptions/utils/has-subscription-expired.mjs.map +1 -1
  153. package/dist/modules/subscriptions/utils/periodicity.mjs.map +1 -1
  154. package/dist/modules/subscriptions/utils/resolve-plan-extras-prices.mjs.map +1 -1
  155. package/dist/modules/users/action/find-user-by-id.action.mjs.map +1 -1
  156. package/dist/modules/users/action/list-messages.action.mjs.map +1 -1
  157. package/dist/modules/users/action/mark-all-messages-as-read.action.mjs.map +1 -1
  158. package/dist/modules/users/action/mark-message-as-read.action.mjs.map +1 -1
  159. package/dist/modules/users/hooks/messages.hook.mjs.map +1 -1
  160. package/dist/modules/users/services/messages.service.mjs.map +1 -1
  161. package/dist/modules/whitelabel/actions/find-whitelabel.action.mjs.map +1 -1
  162. package/dist/modules/whitelabel/actions/revalidate-whitelabel.action.mjs.map +1 -1
  163. package/dist/modules/whitelabel/utils/normalize-hostname.mjs.map +1 -1
  164. package/dist/providers/whitelabel.provider.mjs.map +1 -1
  165. package/dist/store/useAccountModals.mjs.map +1 -1
  166. package/dist/store/useBuyCreditsModal.mjs.map +1 -1
  167. package/dist/store/useDesktopSidebarStore.mjs.map +1 -1
  168. package/dist/store/useMdSidebarStore.mjs.map +1 -1
  169. package/dist/store/useModalManager.mjs.map +1 -1
  170. package/dist/utils/constants/br-states.mjs.map +1 -1
  171. package/dist/utils/countries.mjs.map +1 -1
  172. package/dist/utils/safeServerAction.mjs.map +1 -1
  173. package/dist/utils/withAction.mjs.map +1 -1
  174. package/package.json +89 -89
  175. package/src/components/account/AccountModals.tsx +17 -17
  176. package/src/components/account/ConfigurationsMyAccountModal.tsx +146 -146
  177. package/src/components/account/ConfirmDeleteAccountModal.tsx +55 -55
  178. package/src/components/account/ConfirmGlobalPreferencesModal.tsx +66 -66
  179. package/src/components/account/DeleteAccountModal.tsx +130 -130
  180. package/src/components/account/DisableTwoFactorAuthModal.tsx +86 -86
  181. package/src/components/account/IsntPossibleDeleteAccountModal.tsx +49 -49
  182. package/src/components/account/TwoFactorAuthModal.tsx +215 -215
  183. package/src/components/account/hooks/useChangePhoneForm.tsx +107 -107
  184. package/src/components/account/hooks/useTwoFactorAuthForm.tsx +101 -101
  185. package/src/components/account/sections/ChangeEmailModal.tsx +225 -225
  186. package/src/components/account/sections/ChangePasswordSection.tsx +64 -64
  187. package/src/components/account/sections/ChangePhoneModal.tsx +245 -245
  188. package/src/components/account/sections/MyProfileSection.tsx +327 -327
  189. package/src/components/account/sections/PreferencesSection.tsx +248 -248
  190. package/src/components/account/sections/SecuritySection.tsx +46 -46
  191. package/src/components/embeds/CrispEmbed.tsx +101 -101
  192. package/src/components/embeds/FrillEmbed.tsx +119 -119
  193. package/src/components/handlers/SearchParamsHandler.tsx +61 -61
  194. package/src/components/layouts/AppMobileNavBar.tsx +118 -118
  195. package/src/components/layouts/AppNavBar.tsx +46 -46
  196. package/src/components/layouts/CollapsibleSidebar.tsx +67 -67
  197. package/src/components/layouts/MdSideBarNavigation.tsx +56 -56
  198. package/src/components/layouts/NavBar.tsx +172 -172
  199. package/src/components/layouts/NotificationsPopover.tsx +115 -115
  200. package/src/components/layouts/ProfilePopover.tsx +174 -174
  201. package/src/components/layouts/SideBarNavigation.tsx +62 -62
  202. package/src/components/layouts/UsersSelectorPopover.tsx +234 -234
  203. package/src/components/layouts/WhitelabelCodes.tsx +59 -59
  204. package/src/components/modals/BuyCreditsModal.tsx +314 -314
  205. package/src/components/modals/ModalManager.tsx +29 -29
  206. package/src/components/modals/Modals.tsx +26 -26
  207. package/src/components/modals/cards/AddCardModal.tsx +260 -260
  208. package/src/components/modals/cards/CardFormFields.tsx +294 -294
  209. package/src/components/navigation/CancelledSubscriptionBanner.tsx +60 -60
  210. package/src/components/navigation/NavItemsContext.ts +20 -20
  211. package/src/components/navigation/ProjectSelectorPopover.tsx +194 -194
  212. package/src/components/navigation/shells/TabsMobileShell.tsx +72 -72
  213. package/src/components/navigation/subcomponents/ProjectSelector.tsx +190 -190
  214. package/src/components/pages/NotFoundPage.tsx +67 -67
  215. package/src/components/pages/notifications/Notifications.tsx +160 -160
  216. package/src/components/ui/buttons/Button.tsx +57 -57
  217. package/src/components/ui/buttons/CancelButton.tsx +14 -14
  218. package/src/components/ui/buttons/CopyButton.tsx +54 -54
  219. package/src/components/ui/data-display/Accordion.tsx +81 -81
  220. package/src/components/ui/data-display/Badge.tsx +47 -47
  221. package/src/components/ui/data-display/Card.tsx +93 -93
  222. package/src/components/ui/data-display/CardBrandIcons.tsx +336 -336
  223. package/src/components/ui/data-display/CardItem.tsx +75 -75
  224. package/src/components/ui/data-display/Pagination.tsx +126 -126
  225. package/src/components/ui/data-display/PaymentInfoCard.tsx +186 -186
  226. package/src/components/ui/data-display/ScrollArea.tsx +59 -59
  227. package/src/components/ui/data-display/Separator.tsx +29 -29
  228. package/src/components/ui/data-display/Table.tsx +117 -117
  229. package/src/components/ui/data-display/Tabs.tsx +67 -67
  230. package/src/components/ui/feedback/CircularProgress.tsx +75 -75
  231. package/src/components/ui/feedback/DefaultCircularProgress.tsx +61 -61
  232. package/src/components/ui/feedback/LoadingOverlay.tsx +31 -31
  233. package/src/components/ui/feedback/Progress.tsx +40 -40
  234. package/src/components/ui/feedback/Skeleton.tsx +5 -5
  235. package/src/components/ui/feedback/Toast.tsx +101 -101
  236. package/src/components/ui/form/Calendar.tsx +228 -228
  237. package/src/components/ui/form/Checkbox.tsx +31 -31
  238. package/src/components/ui/form/ComboboxField.tsx +154 -154
  239. package/src/components/ui/form/DatePicker.tsx +97 -97
  240. package/src/components/ui/form/DateRangePicker.tsx +108 -108
  241. package/src/components/ui/form/FormField.tsx +131 -131
  242. package/src/components/ui/form/Input.tsx +20 -20
  243. package/src/components/ui/form/InputOtp.tsx +80 -80
  244. package/src/components/ui/form/PhoneInput.tsx +208 -208
  245. package/src/components/ui/form/RadioGroup.tsx +45 -45
  246. package/src/components/ui/form/Select.tsx +200 -200
  247. package/src/components/ui/form/Switch.tsx +32 -32
  248. package/src/components/ui/form/Textarea.tsx +19 -19
  249. package/src/components/ui/overlay/Command.tsx +185 -185
  250. package/src/components/ui/overlay/Dialog.tsx +151 -151
  251. package/src/components/ui/overlay/Popover.tsx +49 -49
  252. package/src/components/ui/overlay/Sheet.tsx +166 -166
  253. package/src/components/ui/overlay/Tooltip.tsx +62 -62
  254. package/src/components/widgets/notifications/NotificationCard.tsx +68 -68
  255. package/src/hooks/copy-to-clipboard.hook.tsx +67 -67
  256. package/src/hooks/useDebounce.ts +26 -26
  257. package/src/hooks/useDebounceState.ts +11 -11
  258. package/src/hooks/useDebouncedEffect.ts +69 -69
  259. package/src/index.ts +391 -391
  260. package/src/infra/utils/clsx.ts +6 -6
  261. package/src/infra/utils/date.ts +7 -7
  262. package/src/infra/utils/parser.ts +52 -52
  263. package/src/infra/utils/percentage.ts +42 -42
  264. package/src/middleware.ts +4 -4
  265. package/src/modules/accounts/actions/account-management.action.ts +107 -107
  266. package/src/modules/accounts/actions/find-current-account.action.ts +9 -9
  267. package/src/modules/accounts/actions/list-currencies.action.ts +8 -8
  268. package/src/modules/accounts/actions/list-timezones.action.ts +8 -8
  269. package/src/modules/accounts/hooks/current-account.hook.tsx +22 -22
  270. package/src/modules/accounts/hooks/useAccountManagement.ts +85 -85
  271. package/src/modules/accounts/hooks/useCurrencies.ts +15 -15
  272. package/src/modules/accounts/hooks/useTimezones.ts +15 -15
  273. package/src/modules/accounts/hooks/useViaCep.ts +25 -25
  274. package/src/modules/accounts/services/account.service.ts +239 -239
  275. package/src/modules/accounts/services/two-factor.service.ts +3 -2
  276. package/src/modules/accounts/types.ts +225 -225
  277. package/src/modules/auth/actions/validate-session.action.ts +56 -56
  278. package/src/modules/auth/actions/verify-two-factor.action.ts +2 -2
  279. package/src/modules/auth/hooks/login.hook.tsx +13 -13
  280. package/src/modules/auth/hooks/logout.hook.tsx +11 -11
  281. package/src/modules/auth/hooks/register.hook.tsx +11 -11
  282. package/src/modules/auth/hooks/useManagementPermissions.ts +45 -45
  283. package/src/modules/auth/hooks/useUserQuery.ts +2 -2
  284. package/src/modules/auth/services/auth.service.ts +3 -1
  285. package/src/modules/auth/types/management-permission.type.ts +7 -7
  286. package/src/modules/auth/utils/assert-management-permission.ts +46 -46
  287. package/src/modules/auth/utils/assert-management-subscription.ts +27 -27
  288. package/src/modules/auth/utils/build-wl-override.ts +43 -43
  289. package/src/modules/cards/actions/create-card.action.ts +9 -9
  290. package/src/modules/cards/actions/list-cards.action.ts +8 -8
  291. package/src/modules/cards/hooks/cards.hook.ts +14 -14
  292. package/src/modules/cards/hooks/create-card.hook.ts +18 -18
  293. package/src/modules/cards/services/cards.service.ts +51 -51
  294. package/src/modules/cards/types.ts +32 -32
  295. package/src/modules/ia-credits/actions/list-ia-credits.action.ts +8 -8
  296. package/src/modules/plans/actions/find-plan-by-id.action.ts +8 -8
  297. package/src/modules/plans/hooks/use-has-plan-addon.hook.ts +17 -17
  298. package/src/modules/plans/hooks/use-plan-by-id.hook.ts +13 -13
  299. package/src/modules/plans/services/plans.service.ts +36 -36
  300. package/src/modules/plans/types/plan.type.ts +21 -21
  301. package/src/modules/projects/actions/add-project-user.action.ts +9 -9
  302. package/src/modules/projects/actions/list-all-account-users.action.ts +9 -9
  303. package/src/modules/projects/actions/list-available-users.action.ts +9 -9
  304. package/src/modules/projects/actions/list-project-users.action.ts +9 -9
  305. package/src/modules/projects/actions/remove-project-user.action.ts +9 -9
  306. package/src/modules/projects/hooks/add-project-user.hook.ts +69 -69
  307. package/src/modules/projects/hooks/list-all-account-users.hook.ts +34 -34
  308. package/src/modules/projects/hooks/list-available-users.hook.ts +33 -33
  309. package/src/modules/projects/hooks/list-project-users.hook.ts +33 -33
  310. package/src/modules/projects/hooks/remove-project-user.hook.ts +69 -69
  311. package/src/modules/subscriptions/actions/calculate-subscription.action.ts +9 -9
  312. package/src/modules/subscriptions/actions/list-subscriptions.action.ts +9 -9
  313. package/src/modules/subscriptions/actions/update-subscription-plan.action.ts +14 -14
  314. package/src/modules/subscriptions/constants/query-keys.constants.ts +1 -1
  315. package/src/modules/subscriptions/hooks/calculate-subscription.hook.ts +13 -13
  316. package/src/modules/subscriptions/hooks/find-active-subscription.hook.ts +19 -19
  317. package/src/modules/subscriptions/hooks/list-subscriptions.hook.ts +16 -16
  318. package/src/modules/subscriptions/hooks/update-subscription-plan.hook.ts +25 -25
  319. package/src/modules/subscriptions/hooks/use-cancelled-subscription-guard.ts +39 -39
  320. package/src/modules/subscriptions/types/billing-period.type.ts +1 -1
  321. package/src/modules/subscriptions/types/calculate-subscription.type.ts +75 -75
  322. package/src/modules/subscriptions/utils/build-plan-extras.ts +56 -56
  323. package/src/modules/subscriptions/utils/has-subscription-expired.ts +8 -8
  324. package/src/modules/subscriptions/utils/periodicity.ts +52 -52
  325. package/src/modules/subscriptions/utils/resolve-plan-extras-prices.ts +23 -23
  326. package/src/modules/users/action/find-user-by-id.action.ts +8 -8
  327. package/src/modules/users/action/list-messages.action.ts +12 -12
  328. package/src/modules/users/action/mark-all-messages-as-read.action.ts +8 -8
  329. package/src/modules/users/action/mark-message-as-read.action.ts +8 -8
  330. package/src/modules/users/hooks/messages.hook.ts +60 -60
  331. package/src/modules/users/services/messages.service.ts +48 -48
  332. package/src/modules/whitelabel/actions/find-whitelabel.action.ts +23 -23
  333. package/src/modules/whitelabel/actions/revalidate-whitelabel.action.ts +19 -19
  334. package/src/modules/whitelabel/schema.ts +84 -84
  335. package/src/modules/whitelabel/utils/normalize-hostname.ts +26 -26
  336. package/src/providers/whitelabel.provider.tsx +54 -54
  337. package/src/store/useAccountModals.ts +55 -55
  338. package/src/store/useBuyCreditsModal.ts +21 -21
  339. package/src/store/useDesktopSidebarStore.ts +47 -47
  340. package/src/store/useMdSidebarStore.ts +34 -34
  341. package/src/store/useModalManager.ts +104 -104
  342. package/src/utils/constants/br-states.ts +29 -29
  343. package/src/utils/countries.ts +224 -224
  344. package/src/utils/safeServerAction.ts +21 -21
  345. package/src/utils/withAction.ts +13 -13
@@ -1,6 +1,6 @@
1
- import { clsx, type ClassValue } from "clsx"
2
- import { twMerge } from "tailwind-merge"
3
-
4
- export function cn(...inputs: ClassValue[]) {
5
- return twMerge(clsx(inputs))
6
- }
1
+ import { clsx, type ClassValue } from "clsx"
2
+ import { twMerge } from "tailwind-merge"
3
+
4
+ export function cn(...inputs: ClassValue[]) {
5
+ return twMerge(clsx(inputs))
6
+ }
@@ -1,7 +1,7 @@
1
- export function formatShortDate(date: Date | string | null | undefined): string {
2
- if (!date) return '--';
3
- const d = new Date(date);
4
- const day = String(d.getDate()).padStart(2, '0');
5
- const month = String(d.getMonth() + 1).padStart(2, '0');
6
- return `${day}/${month}`;
7
- }
1
+ export function formatShortDate(date: Date | string | null | undefined): string {
2
+ if (!date) return '--';
3
+ const d = new Date(date);
4
+ const day = String(d.getDate()).padStart(2, '0');
5
+ const month = String(d.getMonth() + 1).padStart(2, '0');
6
+ return `${day}/${month}`;
7
+ }
@@ -1,53 +1,53 @@
1
- import z, { ZodTypeAny } from "zod";
2
- import { PaginatedSuccessResult, SuccessResult } from "../api/types";
3
-
4
- /* Overloads */
5
- export function parseSchema<T extends ZodTypeAny>(
6
- schema: T,
7
- data: unknown[]
8
- ): z.infer<T>[];
9
-
10
- export function parseSchema<T extends ZodTypeAny>(
11
- schema: T,
12
- data: unknown
13
- ): z.infer<T>;
14
-
15
- export function parseSchema<T extends ZodTypeAny>(
16
- schema: T,
17
- data: unknown | unknown[]
18
- ) {
19
- if (Array.isArray(data)) {
20
- return data.map(item => schema.parse(item));
21
- }
22
-
23
- return schema.parse(data);
24
- }
25
-
26
- export function parseResult<T extends ZodTypeAny>(
27
- schema: T,
28
- result: PaginatedSuccessResult<unknown>
29
- ): PaginatedSuccessResult<z.infer<T>>;
30
-
31
- export function parseResult<T extends ZodTypeAny>(
32
- schema: T,
33
- result: SuccessResult<unknown>
34
- ): SuccessResult<z.infer<T>>;
35
-
36
- export function parseResult<T extends ZodTypeAny>(
37
- schema: T,
38
- result: SuccessResult<unknown> | PaginatedSuccessResult<unknown>
39
- ) {
40
- if (!result.data) return result;
41
-
42
- if (Array.isArray(result.data)) {
43
- return {
44
- ...result,
45
- data: result.data.map(item => schema.parse(item)),
46
- };
47
- }
48
-
49
- return {
50
- ...result,
51
- data: schema.parse(result.data),
52
- };
1
+ import z, { ZodTypeAny } from "zod";
2
+ import { PaginatedSuccessResult, SuccessResult } from "../api/types";
3
+
4
+ /* Overloads */
5
+ export function parseSchema<T extends ZodTypeAny>(
6
+ schema: T,
7
+ data: unknown[]
8
+ ): z.infer<T>[];
9
+
10
+ export function parseSchema<T extends ZodTypeAny>(
11
+ schema: T,
12
+ data: unknown
13
+ ): z.infer<T>;
14
+
15
+ export function parseSchema<T extends ZodTypeAny>(
16
+ schema: T,
17
+ data: unknown | unknown[]
18
+ ) {
19
+ if (Array.isArray(data)) {
20
+ return data.map(item => schema.parse(item));
21
+ }
22
+
23
+ return schema.parse(data);
24
+ }
25
+
26
+ export function parseResult<T extends ZodTypeAny>(
27
+ schema: T,
28
+ result: PaginatedSuccessResult<unknown>
29
+ ): PaginatedSuccessResult<z.infer<T>>;
30
+
31
+ export function parseResult<T extends ZodTypeAny>(
32
+ schema: T,
33
+ result: SuccessResult<unknown>
34
+ ): SuccessResult<z.infer<T>>;
35
+
36
+ export function parseResult<T extends ZodTypeAny>(
37
+ schema: T,
38
+ result: SuccessResult<unknown> | PaginatedSuccessResult<unknown>
39
+ ) {
40
+ if (!result.data) return result;
41
+
42
+ if (Array.isArray(result.data)) {
43
+ return {
44
+ ...result,
45
+ data: result.data.map(item => schema.parse(item)),
46
+ };
47
+ }
48
+
49
+ return {
50
+ ...result,
51
+ data: schema.parse(result.data),
52
+ };
53
53
  }
@@ -1,42 +1,42 @@
1
- /**
2
- * Calcula percentual de um valor em relação ao total
3
- * @param current - Valor atual
4
- * @param total - Valor total
5
- * @returns Percentual (0-100)
6
- */
7
- export const calculatePercentage = (current: number, total: number): number => {
8
- if (total === 0) return 0;
9
- return (current / total) * 100;
10
- };
11
-
12
- /**
13
- * Calcula a circunferência de um círculo
14
- * @param radius - Raio do círculo
15
- * @returns Circunferência
16
- */
17
- export const calculateCircumference = (radius: number): number => {
18
- return 2 * Math.PI * radius;
19
- };
20
-
21
- /**
22
- * Calcula o offset para circular progress
23
- * @param percentage - Percentual de progresso (0-100)
24
- * @param circumference - Circunferência do círculo
25
- * @returns Valor do offset
26
- */
27
- export const calculateCircularProgressOffset = (
28
- percentage: number,
29
- circumference: number
30
- ): number => {
31
- return circumference - (percentage / 100) * circumference;
32
- };
33
-
34
- /**
35
- * Calcula raio de círculo baseado no tamanho e stroke
36
- * @param size - Tamanho total
37
- * @param strokeWidth - Largura do stroke
38
- * @returns Raio calculado
39
- */
40
- export const calculateRadius = (size: number, strokeWidth: number): number => {
41
- return (size - strokeWidth) / 2;
42
- };
1
+ /**
2
+ * Calcula percentual de um valor em relação ao total
3
+ * @param current - Valor atual
4
+ * @param total - Valor total
5
+ * @returns Percentual (0-100)
6
+ */
7
+ export const calculatePercentage = (current: number, total: number): number => {
8
+ if (total === 0) return 0;
9
+ return (current / total) * 100;
10
+ };
11
+
12
+ /**
13
+ * Calcula a circunferência de um círculo
14
+ * @param radius - Raio do círculo
15
+ * @returns Circunferência
16
+ */
17
+ export const calculateCircumference = (radius: number): number => {
18
+ return 2 * Math.PI * radius;
19
+ };
20
+
21
+ /**
22
+ * Calcula o offset para circular progress
23
+ * @param percentage - Percentual de progresso (0-100)
24
+ * @param circumference - Circunferência do círculo
25
+ * @returns Valor do offset
26
+ */
27
+ export const calculateCircularProgressOffset = (
28
+ percentage: number,
29
+ circumference: number
30
+ ): number => {
31
+ return circumference - (percentage / 100) * circumference;
32
+ };
33
+
34
+ /**
35
+ * Calcula raio de círculo baseado no tamanho e stroke
36
+ * @param size - Tamanho total
37
+ * @param strokeWidth - Largura do stroke
38
+ * @returns Raio calculado
39
+ */
40
+ export const calculateRadius = (size: number, strokeWidth: number): number => {
41
+ return (size - strokeWidth) / 2;
42
+ };
package/src/middleware.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { createAuthMiddleware } from './middlewares/create-auth-middleware';
2
- export { createMiddlewareChain } from './middlewares/chain';
3
- export type { MiddlewareConfig, MiddlewareFunction, MiddlewareResult } from './middlewares/types';
4
- export { continueChain, stopChain } from './middlewares/types';
1
+ export { createAuthMiddleware } from './middlewares/create-auth-middleware';
2
+ export { createMiddlewareChain } from './middlewares/chain';
3
+ export type { MiddlewareConfig, MiddlewareFunction, MiddlewareResult } from './middlewares/types';
4
+ export { continueChain, stopChain } from './middlewares/types';
@@ -1,107 +1,107 @@
1
- 'use server';
2
-
3
- import { safeServerAction } from '../../../utils/safeServerAction';
4
- import { accountService } from '../services/account.service';
5
- import type {
6
- AccountUsersPaginationParams,
7
- ChangePasswordRequest,
8
- CreateAccountUserRequest,
9
- UpdateAccountRequest,
10
- UpdateAccountUserRequest,
11
- } from '../types';
12
- import { twoFactorService } from '../services/two-factor.service';
13
- import { findUserById } from '../../users/action/find-user-by-id.action';
14
- import { UserProfile } from '../../users/schema';
15
- import { ApiError } from '../../../infra/api/types';
16
-
17
- export async function listAccountUsersAction(params?: AccountUsersPaginationParams) {
18
- return safeServerAction(async () => {
19
- const { users, total } = await accountService.listAccountUsers(params);
20
- return { data: users, total };
21
- });
22
- }
23
-
24
- export async function updateUserAction(user: UpdateAccountUserRequest) {
25
- return safeServerAction(() => accountService.updateAccountUser(user));
26
- }
27
-
28
- export async function updateAccountUserByIdAction(
29
- userId: number,
30
- user: UpdateAccountUserRequest
31
- ) {
32
- return safeServerAction(() => accountService.updateAccountUserById(userId, user));
33
- }
34
-
35
- export async function updateAccountAction(data: UpdateAccountRequest) {
36
- return safeServerAction(async () => {
37
- if (data.name !== undefined) {
38
- const userResult = await findUserById();
39
- if (!userResult.success || userResult.data?.profile !== UserProfile.owner) {
40
- throw new ApiError(
41
- 'Apenas o proprietário da conta pode alterar o nome da empresa',
42
- 'FORBIDDEN',
43
- 403
44
- );
45
- }
46
- }
47
-
48
- return accountService.updateAccount(data);
49
- });
50
- }
51
-
52
- export async function deleteAccountUserAction(userId: number) {
53
- return safeServerAction(() => accountService.deleteAccountUser(userId));
54
- }
55
-
56
- export async function deleteAccountAction() {
57
- return safeServerAction(() => accountService.deleteAccount());
58
- }
59
-
60
- export async function createAccountUserAction(user: CreateAccountUserRequest) {
61
- return safeServerAction(() => accountService.createAccountUser(user));
62
- }
63
-
64
- export async function changePasswordAction(data: ChangePasswordRequest) {
65
- return safeServerAction(() => accountService.changePassword(data));
66
- }
67
-
68
- export async function requestEmailChangeAction(newEmail: string) {
69
- return safeServerAction(() => accountService.requestContactReset('email', newEmail));
70
- }
71
-
72
- export async function confirmEmailChangeAction(token: string, newEmail: string) {
73
- return safeServerAction(() => accountService.confirmContactReset('email', token, newEmail));
74
- }
75
-
76
- export async function requestPhoneChangeAction(newPhone: string, ddi?: string) {
77
- return safeServerAction(() => accountService.requestContactReset('phone', newPhone, ddi));
78
- }
79
-
80
- export async function confirmPhoneChangeAction(token: string, newPhone: string, ddi?: string) {
81
- return safeServerAction(() => accountService.confirmContactReset('phone', token, newPhone, ddi));
82
- }
83
-
84
- export async function generateTwoFactorAction() {
85
- return safeServerAction(async () => {
86
- const result = await twoFactorService.generate();
87
- return {
88
- qrcode: result.data.qrcode,
89
- backupCodes: result.data.backup_codes,
90
- };
91
- });
92
- }
93
-
94
- export async function confirmTwoFactorAction(code: string) {
95
- return safeServerAction(async () => {
96
- await twoFactorService.confirm(code);
97
- await accountService.updateAccountUser({ two_factor_authentication: true });
98
- });
99
- }
100
-
101
- export async function disableTwoFactorAction(code: string) {
102
- return safeServerAction(async () => {
103
- await twoFactorService.verify(code);
104
- await twoFactorService.disable();
105
- await accountService.updateAccountUser({ two_factor_authentication: false });
106
- });
107
- }
1
+ 'use server';
2
+
3
+ import { safeServerAction } from '../../../utils/safeServerAction';
4
+ import { accountService } from '../services/account.service';
5
+ import type {
6
+ AccountUsersPaginationParams,
7
+ ChangePasswordRequest,
8
+ CreateAccountUserRequest,
9
+ UpdateAccountRequest,
10
+ UpdateAccountUserRequest,
11
+ } from '../types';
12
+ import { twoFactorService } from '../services/two-factor.service';
13
+ import { findUserById } from '../../users/action/find-user-by-id.action';
14
+ import { UserProfile } from '../../users/schema';
15
+ import { ApiError } from '../../../infra/api/types';
16
+
17
+ export async function listAccountUsersAction(params?: AccountUsersPaginationParams) {
18
+ return safeServerAction(async () => {
19
+ const { users, total } = await accountService.listAccountUsers(params);
20
+ return { data: users, total };
21
+ });
22
+ }
23
+
24
+ export async function updateUserAction(user: UpdateAccountUserRequest) {
25
+ return safeServerAction(() => accountService.updateAccountUser(user));
26
+ }
27
+
28
+ export async function updateAccountUserByIdAction(
29
+ userId: number,
30
+ user: UpdateAccountUserRequest
31
+ ) {
32
+ return safeServerAction(() => accountService.updateAccountUserById(userId, user));
33
+ }
34
+
35
+ export async function updateAccountAction(data: UpdateAccountRequest) {
36
+ return safeServerAction(async () => {
37
+ if (data.name !== undefined) {
38
+ const userResult = await findUserById();
39
+ if (!userResult.success || userResult.data?.profile !== UserProfile.owner) {
40
+ throw new ApiError(
41
+ 'Apenas o proprietário da conta pode alterar o nome da empresa',
42
+ 'FORBIDDEN',
43
+ 403
44
+ );
45
+ }
46
+ }
47
+
48
+ return accountService.updateAccount(data);
49
+ });
50
+ }
51
+
52
+ export async function deleteAccountUserAction(userId: number) {
53
+ return safeServerAction(() => accountService.deleteAccountUser(userId));
54
+ }
55
+
56
+ export async function deleteAccountAction() {
57
+ return safeServerAction(() => accountService.deleteAccount());
58
+ }
59
+
60
+ export async function createAccountUserAction(user: CreateAccountUserRequest) {
61
+ return safeServerAction(() => accountService.createAccountUser(user));
62
+ }
63
+
64
+ export async function changePasswordAction(data: ChangePasswordRequest) {
65
+ return safeServerAction(() => accountService.changePassword(data));
66
+ }
67
+
68
+ export async function requestEmailChangeAction(newEmail: string) {
69
+ return safeServerAction(() => accountService.requestContactReset('email', newEmail));
70
+ }
71
+
72
+ export async function confirmEmailChangeAction(token: string, newEmail: string) {
73
+ return safeServerAction(() => accountService.confirmContactReset('email', token, newEmail));
74
+ }
75
+
76
+ export async function requestPhoneChangeAction(newPhone: string, ddi?: string) {
77
+ return safeServerAction(() => accountService.requestContactReset('phone', newPhone, ddi));
78
+ }
79
+
80
+ export async function confirmPhoneChangeAction(token: string, newPhone: string, ddi?: string) {
81
+ return safeServerAction(() => accountService.confirmContactReset('phone', token, newPhone, ddi));
82
+ }
83
+
84
+ export async function generateTwoFactorAction() {
85
+ return safeServerAction(async () => {
86
+ const result = await twoFactorService.generate();
87
+ return {
88
+ qrcode: result.data.qrcode,
89
+ backupCodes: result.data.backup_codes,
90
+ };
91
+ });
92
+ }
93
+
94
+ export async function confirmTwoFactorAction(code: string) {
95
+ return safeServerAction(async () => {
96
+ await twoFactorService.confirm(code);
97
+ await accountService.updateAccountUser({ two_factor_authentication: true });
98
+ });
99
+ }
100
+
101
+ export async function disableTwoFactorAction(code: string) {
102
+ return safeServerAction(async () => {
103
+ await twoFactorService.verify(code);
104
+ await twoFactorService.disable();
105
+ await accountService.updateAccountUser({ two_factor_authentication: false });
106
+ });
107
+ }
@@ -1,9 +1,9 @@
1
- 'use server';
2
-
3
- import { safeServerAction } from '../../../utils/safeServerAction';
4
- import { accountService } from '../services/account.service';
5
- import type { Account } from '../types';
6
-
7
- export async function findCurrentAccount() {
8
- return safeServerAction<Account>(() => accountService.findCurrentAccount());
9
- }
1
+ 'use server';
2
+
3
+ import { safeServerAction } from '../../../utils/safeServerAction';
4
+ import { accountService } from '../services/account.service';
5
+ import type { Account } from '../types';
6
+
7
+ export async function findCurrentAccount() {
8
+ return safeServerAction<Account>(() => accountService.findCurrentAccount());
9
+ }
@@ -1,8 +1,8 @@
1
- 'use server';
2
-
3
- import { safeServerAction } from '../../../utils/safeServerAction';
4
- import { currencyService } from '../services/currency.service';
5
-
6
- export async function listCurrenciesAction() {
7
- return safeServerAction(() => currencyService.fetchOptions());
8
- }
1
+ 'use server';
2
+
3
+ import { safeServerAction } from '../../../utils/safeServerAction';
4
+ import { currencyService } from '../services/currency.service';
5
+
6
+ export async function listCurrenciesAction() {
7
+ return safeServerAction(() => currencyService.fetchOptions());
8
+ }
@@ -1,8 +1,8 @@
1
- 'use server';
2
-
3
- import { safeServerAction } from '../../../utils/safeServerAction';
4
- import { timezoneService } from '../services/timezone.service';
5
-
6
- export async function listTimezonesAction() {
7
- return safeServerAction(() => timezoneService.fetchOptions());
8
- }
1
+ 'use server';
2
+
3
+ import { safeServerAction } from '../../../utils/safeServerAction';
4
+ import { timezoneService } from '../services/timezone.service';
5
+
6
+ export async function listTimezonesAction() {
7
+ return safeServerAction(() => timezoneService.fetchOptions());
8
+ }
@@ -1,22 +1,22 @@
1
- 'use client';
2
-
3
- import { useQuery, useQueryClient } from '@tanstack/react-query';
4
- import { findCurrentAccount } from '../actions/find-current-account.action';
5
- import { withAction } from '../../../utils/withAction';
6
-
7
- export const ACCOUNT_QUERY_KEY = ['account'];
8
-
9
- export function useCurrentAccount() {
10
- return useQuery({
11
- queryKey: ACCOUNT_QUERY_KEY,
12
- queryFn: withAction(findCurrentAccount),
13
- staleTime: 0,
14
- gcTime: 10 * 60 * 1000,
15
- retry: false,
16
- });
17
- }
18
-
19
- export function useInvalidateAccount() {
20
- const queryClient = useQueryClient();
21
- return () => queryClient.invalidateQueries({ queryKey: ACCOUNT_QUERY_KEY });
22
- }
1
+ 'use client';
2
+
3
+ import { useQuery, useQueryClient } from '@tanstack/react-query';
4
+ import { findCurrentAccount } from '../actions/find-current-account.action';
5
+ import { withAction } from '../../../utils/withAction';
6
+
7
+ export const ACCOUNT_QUERY_KEY = ['account'];
8
+
9
+ export function useCurrentAccount() {
10
+ return useQuery({
11
+ queryKey: ACCOUNT_QUERY_KEY,
12
+ queryFn: withAction(findCurrentAccount),
13
+ staleTime: 0,
14
+ gcTime: 10 * 60 * 1000,
15
+ retry: false,
16
+ });
17
+ }
18
+
19
+ export function useInvalidateAccount() {
20
+ const queryClient = useQueryClient();
21
+ return () => queryClient.invalidateQueries({ queryKey: ACCOUNT_QUERY_KEY });
22
+ }