@greatapps/common 1.1.382 → 1.1.384

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 (341) 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 +1 -4
  39. package/dist/components/navigation/ProjectSelectorPopover.mjs.map +1 -1
  40. package/dist/components/navigation/shells/TabsMobileShell.mjs.map +1 -1
  41. package/dist/components/navigation/subcomponents/ProjectSelector.mjs.map +1 -1
  42. package/dist/components/pages/NotFoundPage.mjs.map +1 -1
  43. package/dist/components/pages/notifications/Notifications.mjs.map +1 -1
  44. package/dist/components/ui/buttons/Button.mjs.map +1 -1
  45. package/dist/components/ui/buttons/CancelButton.mjs.map +1 -1
  46. package/dist/components/ui/buttons/CopyButton.mjs.map +1 -1
  47. package/dist/components/ui/data-display/Accordion.mjs.map +1 -1
  48. package/dist/components/ui/data-display/Badge.mjs.map +1 -1
  49. package/dist/components/ui/data-display/Card.mjs.map +1 -1
  50. package/dist/components/ui/data-display/CardBrandIcons.mjs.map +1 -1
  51. package/dist/components/ui/data-display/CardItem.mjs.map +1 -1
  52. package/dist/components/ui/data-display/Pagination.mjs.map +1 -1
  53. package/dist/components/ui/data-display/PaymentInfoCard.mjs.map +1 -1
  54. package/dist/components/ui/data-display/ScrollArea.mjs.map +1 -1
  55. package/dist/components/ui/data-display/Separator.mjs.map +1 -1
  56. package/dist/components/ui/data-display/Table.mjs.map +1 -1
  57. package/dist/components/ui/data-display/Tabs.mjs.map +1 -1
  58. package/dist/components/ui/feedback/CircularProgress.mjs.map +1 -1
  59. package/dist/components/ui/feedback/DefaultCircularProgress.mjs.map +1 -1
  60. package/dist/components/ui/feedback/LoadingOverlay.mjs.map +1 -1
  61. package/dist/components/ui/feedback/Progress.mjs.map +1 -1
  62. package/dist/components/ui/feedback/Skeleton.mjs.map +1 -1
  63. package/dist/components/ui/feedback/Toast.mjs.map +1 -1
  64. package/dist/components/ui/form/Calendar.mjs.map +1 -1
  65. package/dist/components/ui/form/Checkbox.mjs.map +1 -1
  66. package/dist/components/ui/form/ComboboxField.mjs.map +1 -1
  67. package/dist/components/ui/form/DatePicker.mjs.map +1 -1
  68. package/dist/components/ui/form/DateRangePicker.mjs.map +1 -1
  69. package/dist/components/ui/form/FormField.mjs.map +1 -1
  70. package/dist/components/ui/form/Input.mjs.map +1 -1
  71. package/dist/components/ui/form/InputOtp.mjs.map +1 -1
  72. package/dist/components/ui/form/PhoneInput.mjs.map +1 -1
  73. package/dist/components/ui/form/RadioGroup.mjs.map +1 -1
  74. package/dist/components/ui/form/Select.mjs +1 -1
  75. package/dist/components/ui/form/Select.mjs.map +1 -1
  76. package/dist/components/ui/form/Switch.mjs.map +1 -1
  77. package/dist/components/ui/form/Textarea.mjs.map +1 -1
  78. package/dist/components/ui/overlay/Command.mjs.map +1 -1
  79. package/dist/components/ui/overlay/Dialog.mjs.map +1 -1
  80. package/dist/components/ui/overlay/Popover.mjs.map +1 -1
  81. package/dist/components/ui/overlay/Sheet.mjs.map +1 -1
  82. package/dist/components/ui/overlay/Tooltip.mjs.map +1 -1
  83. package/dist/components/widgets/notifications/NotificationCard.mjs.map +1 -1
  84. package/dist/hooks/copy-to-clipboard.hook.mjs.map +1 -1
  85. package/dist/hooks/useDebounce.mjs.map +1 -1
  86. package/dist/hooks/useDebounceState.mjs.map +1 -1
  87. package/dist/hooks/useDebouncedEffect.mjs.map +1 -1
  88. package/dist/index.mjs.map +1 -1
  89. package/dist/infra/utils/clsx.mjs.map +1 -1
  90. package/dist/infra/utils/date.mjs.map +1 -1
  91. package/dist/infra/utils/parser.mjs.map +1 -1
  92. package/dist/infra/utils/percentage.mjs.map +1 -1
  93. package/dist/middleware.mjs.map +1 -1
  94. package/dist/modules/accounts/actions/account-management.action.mjs.map +1 -1
  95. package/dist/modules/accounts/actions/find-current-account.action.mjs.map +1 -1
  96. package/dist/modules/accounts/actions/list-currencies.action.mjs.map +1 -1
  97. package/dist/modules/accounts/actions/list-timezones.action.mjs.map +1 -1
  98. package/dist/modules/accounts/hooks/current-account.hook.mjs.map +1 -1
  99. package/dist/modules/accounts/hooks/useAccountManagement.mjs.map +1 -1
  100. package/dist/modules/accounts/hooks/useCurrencies.mjs.map +1 -1
  101. package/dist/modules/accounts/hooks/useTimezones.mjs.map +1 -1
  102. package/dist/modules/accounts/hooks/useViaCep.mjs.map +1 -1
  103. package/dist/modules/accounts/services/account.service.mjs.map +1 -1
  104. package/dist/modules/auth/actions/validate-session.action.mjs.map +1 -1
  105. package/dist/modules/auth/hooks/login.hook.mjs.map +1 -1
  106. package/dist/modules/auth/hooks/logout.hook.mjs.map +1 -1
  107. package/dist/modules/auth/hooks/register.hook.mjs.map +1 -1
  108. package/dist/modules/auth/hooks/useManagementPermissions.mjs.map +1 -1
  109. package/dist/modules/auth/utils/assert-management-permission.mjs.map +1 -1
  110. package/dist/modules/auth/utils/assert-management-subscription.mjs +7 -0
  111. package/dist/modules/auth/utils/assert-management-subscription.mjs.map +1 -1
  112. package/dist/modules/auth/utils/assert-subscription-addon.mjs +35 -0
  113. package/dist/modules/auth/utils/assert-subscription-addon.mjs.map +1 -0
  114. package/dist/modules/auth/utils/build-wl-override.mjs.map +1 -1
  115. package/dist/modules/cards/actions/create-card.action.mjs.map +1 -1
  116. package/dist/modules/cards/actions/list-cards.action.mjs.map +1 -1
  117. package/dist/modules/cards/hooks/cards.hook.mjs.map +1 -1
  118. package/dist/modules/cards/hooks/create-card.hook.mjs.map +1 -1
  119. package/dist/modules/cards/services/cards.service.mjs.map +1 -1
  120. package/dist/modules/cards/types.mjs.map +1 -1
  121. package/dist/modules/ia-credits/actions/list-ia-credits.action.mjs.map +1 -1
  122. package/dist/modules/plans/actions/find-plan-by-id.action.mjs.map +1 -1
  123. package/dist/modules/plans/hooks/use-has-plan-addon.hook.mjs.map +1 -1
  124. package/dist/modules/plans/hooks/use-plan-by-id.hook.mjs.map +1 -1
  125. package/dist/modules/plans/services/plans.service.mjs.map +1 -1
  126. package/dist/modules/plans/types/plan.type.mjs.map +1 -1
  127. package/dist/modules/projects/actions/add-project-user.action.mjs.map +1 -1
  128. package/dist/modules/projects/actions/list-all-account-users.action.mjs.map +1 -1
  129. package/dist/modules/projects/actions/list-available-users.action.mjs.map +1 -1
  130. package/dist/modules/projects/actions/list-project-users.action.mjs.map +1 -1
  131. package/dist/modules/projects/actions/remove-project-user.action.mjs.map +1 -1
  132. package/dist/modules/projects/hooks/add-project-user.hook.mjs.map +1 -1
  133. package/dist/modules/projects/hooks/list-all-account-users.hook.mjs.map +1 -1
  134. package/dist/modules/projects/hooks/list-available-users.hook.mjs.map +1 -1
  135. package/dist/modules/projects/hooks/list-project-users.hook.mjs.map +1 -1
  136. package/dist/modules/projects/hooks/remove-project-user.hook.mjs.map +1 -1
  137. package/dist/modules/subscriptions/actions/calculate-subscription.action.mjs.map +1 -1
  138. package/dist/modules/subscriptions/actions/list-subscriptions.action.mjs.map +1 -1
  139. package/dist/modules/subscriptions/actions/update-subscription-plan.action.mjs.map +1 -1
  140. package/dist/modules/subscriptions/constants/query-keys.constants.mjs.map +1 -1
  141. package/dist/modules/subscriptions/hooks/calculate-subscription.hook.mjs.map +1 -1
  142. package/dist/modules/subscriptions/hooks/find-active-subscription.hook.mjs.map +1 -1
  143. package/dist/modules/subscriptions/hooks/list-subscriptions.hook.mjs.map +1 -1
  144. package/dist/modules/subscriptions/hooks/update-subscription-plan.hook.mjs.map +1 -1
  145. package/dist/modules/subscriptions/hooks/use-cancelled-subscription-guard.mjs.map +1 -1
  146. package/dist/modules/subscriptions/types/calculate-subscription.type.mjs.map +1 -1
  147. package/dist/modules/subscriptions/utils/build-plan-extras.mjs.map +1 -1
  148. package/dist/modules/subscriptions/utils/has-subscription-expired.mjs.map +1 -1
  149. package/dist/modules/subscriptions/utils/periodicity.mjs.map +1 -1
  150. package/dist/modules/subscriptions/utils/resolve-plan-extras-prices.mjs.map +1 -1
  151. package/dist/modules/users/action/find-user-by-id.action.mjs.map +1 -1
  152. package/dist/modules/users/action/list-messages.action.mjs.map +1 -1
  153. package/dist/modules/users/action/mark-all-messages-as-read.action.mjs.map +1 -1
  154. package/dist/modules/users/action/mark-message-as-read.action.mjs.map +1 -1
  155. package/dist/modules/users/hooks/messages.hook.mjs.map +1 -1
  156. package/dist/modules/users/services/messages.service.mjs.map +1 -1
  157. package/dist/modules/whitelabel/actions/find-whitelabel.action.mjs.map +1 -1
  158. package/dist/modules/whitelabel/actions/revalidate-whitelabel.action.mjs.map +1 -1
  159. package/dist/modules/whitelabel/utils/normalize-hostname.mjs.map +1 -1
  160. package/dist/providers/whitelabel.provider.mjs.map +1 -1
  161. package/dist/server.mjs +2 -0
  162. package/dist/server.mjs.map +1 -1
  163. package/dist/store/useAccountModals.mjs.map +1 -1
  164. package/dist/store/useBuyCreditsModal.mjs.map +1 -1
  165. package/dist/store/useDesktopSidebarStore.mjs.map +1 -1
  166. package/dist/store/useMdSidebarStore.mjs.map +1 -1
  167. package/dist/store/useModalManager.mjs.map +1 -1
  168. package/dist/utils/constants/br-states.mjs.map +1 -1
  169. package/dist/utils/countries.mjs.map +1 -1
  170. package/dist/utils/safeServerAction.mjs.map +1 -1
  171. package/dist/utils/withAction.mjs.map +1 -1
  172. package/package.json +89 -89
  173. package/src/components/account/AccountModals.tsx +17 -17
  174. package/src/components/account/ConfigurationsMyAccountModal.tsx +146 -146
  175. package/src/components/account/ConfirmDeleteAccountModal.tsx +55 -55
  176. package/src/components/account/ConfirmGlobalPreferencesModal.tsx +66 -66
  177. package/src/components/account/DeleteAccountModal.tsx +130 -130
  178. package/src/components/account/DisableTwoFactorAuthModal.tsx +86 -86
  179. package/src/components/account/IsntPossibleDeleteAccountModal.tsx +49 -49
  180. package/src/components/account/TwoFactorAuthModal.tsx +215 -215
  181. package/src/components/account/hooks/useChangePhoneForm.tsx +107 -107
  182. package/src/components/account/hooks/useTwoFactorAuthForm.tsx +101 -101
  183. package/src/components/account/sections/ChangeEmailModal.tsx +225 -225
  184. package/src/components/account/sections/ChangePasswordSection.tsx +64 -64
  185. package/src/components/account/sections/ChangePhoneModal.tsx +245 -245
  186. package/src/components/account/sections/MyProfileSection.tsx +327 -327
  187. package/src/components/account/sections/PreferencesSection.tsx +248 -248
  188. package/src/components/account/sections/SecuritySection.tsx +46 -46
  189. package/src/components/embeds/CrispEmbed.tsx +101 -101
  190. package/src/components/embeds/FrillEmbed.tsx +119 -119
  191. package/src/components/handlers/SearchParamsHandler.tsx +61 -61
  192. package/src/components/layouts/AppMobileNavBar.tsx +118 -118
  193. package/src/components/layouts/AppNavBar.tsx +46 -46
  194. package/src/components/layouts/CollapsibleSidebar.tsx +67 -67
  195. package/src/components/layouts/MdSideBarNavigation.tsx +56 -56
  196. package/src/components/layouts/NavBar.tsx +172 -172
  197. package/src/components/layouts/NotificationsPopover.tsx +115 -115
  198. package/src/components/layouts/ProfilePopover.tsx +174 -174
  199. package/src/components/layouts/SideBarNavigation.tsx +62 -62
  200. package/src/components/layouts/UsersSelectorPopover.tsx +234 -234
  201. package/src/components/layouts/WhitelabelCodes.tsx +59 -59
  202. package/src/components/modals/BuyCreditsModal.tsx +314 -314
  203. package/src/components/modals/ModalManager.tsx +29 -29
  204. package/src/components/modals/Modals.tsx +26 -26
  205. package/src/components/modals/cards/AddCardModal.tsx +260 -260
  206. package/src/components/modals/cards/CardFormFields.tsx +294 -294
  207. package/src/components/navigation/CancelledSubscriptionBanner.tsx +60 -60
  208. package/src/components/navigation/NavItemsContext.ts +20 -20
  209. package/src/components/navigation/ProjectSelectorPopover.tsx +191 -194
  210. package/src/components/navigation/shells/TabsMobileShell.tsx +72 -72
  211. package/src/components/navigation/subcomponents/ProjectSelector.tsx +190 -190
  212. package/src/components/pages/NotFoundPage.tsx +67 -67
  213. package/src/components/pages/notifications/Notifications.tsx +160 -160
  214. package/src/components/ui/buttons/Button.tsx +57 -57
  215. package/src/components/ui/buttons/CancelButton.tsx +14 -14
  216. package/src/components/ui/buttons/CopyButton.tsx +54 -54
  217. package/src/components/ui/data-display/Accordion.tsx +81 -81
  218. package/src/components/ui/data-display/Badge.tsx +47 -47
  219. package/src/components/ui/data-display/Card.tsx +93 -93
  220. package/src/components/ui/data-display/CardBrandIcons.tsx +336 -336
  221. package/src/components/ui/data-display/CardItem.tsx +75 -75
  222. package/src/components/ui/data-display/Pagination.tsx +126 -126
  223. package/src/components/ui/data-display/PaymentInfoCard.tsx +186 -186
  224. package/src/components/ui/data-display/ScrollArea.tsx +59 -59
  225. package/src/components/ui/data-display/Separator.tsx +29 -29
  226. package/src/components/ui/data-display/Table.tsx +117 -117
  227. package/src/components/ui/data-display/Tabs.tsx +67 -67
  228. package/src/components/ui/feedback/CircularProgress.tsx +75 -75
  229. package/src/components/ui/feedback/DefaultCircularProgress.tsx +61 -61
  230. package/src/components/ui/feedback/LoadingOverlay.tsx +31 -31
  231. package/src/components/ui/feedback/Progress.tsx +40 -40
  232. package/src/components/ui/feedback/Skeleton.tsx +5 -5
  233. package/src/components/ui/feedback/Toast.tsx +101 -101
  234. package/src/components/ui/form/Calendar.tsx +228 -228
  235. package/src/components/ui/form/Checkbox.tsx +31 -31
  236. package/src/components/ui/form/ComboboxField.tsx +154 -154
  237. package/src/components/ui/form/DatePicker.tsx +97 -97
  238. package/src/components/ui/form/DateRangePicker.tsx +108 -108
  239. package/src/components/ui/form/FormField.tsx +131 -131
  240. package/src/components/ui/form/Input.tsx +20 -20
  241. package/src/components/ui/form/InputOtp.tsx +80 -80
  242. package/src/components/ui/form/PhoneInput.tsx +208 -208
  243. package/src/components/ui/form/RadioGroup.tsx +45 -45
  244. package/src/components/ui/form/Select.tsx +200 -200
  245. package/src/components/ui/form/Switch.tsx +32 -32
  246. package/src/components/ui/form/Textarea.tsx +19 -19
  247. package/src/components/ui/overlay/Command.tsx +185 -185
  248. package/src/components/ui/overlay/Dialog.tsx +151 -151
  249. package/src/components/ui/overlay/Popover.tsx +49 -49
  250. package/src/components/ui/overlay/Sheet.tsx +166 -166
  251. package/src/components/ui/overlay/Tooltip.tsx +62 -62
  252. package/src/components/widgets/notifications/NotificationCard.tsx +68 -68
  253. package/src/hooks/copy-to-clipboard.hook.tsx +67 -67
  254. package/src/hooks/useDebounce.ts +26 -26
  255. package/src/hooks/useDebounceState.ts +11 -11
  256. package/src/hooks/useDebouncedEffect.ts +69 -69
  257. package/src/index.ts +391 -391
  258. package/src/infra/utils/clsx.ts +6 -6
  259. package/src/infra/utils/date.ts +7 -7
  260. package/src/infra/utils/parser.ts +52 -52
  261. package/src/infra/utils/percentage.ts +42 -42
  262. package/src/middleware.ts +4 -4
  263. package/src/modules/accounts/actions/account-management.action.ts +107 -107
  264. package/src/modules/accounts/actions/find-current-account.action.ts +9 -9
  265. package/src/modules/accounts/actions/list-currencies.action.ts +8 -8
  266. package/src/modules/accounts/actions/list-timezones.action.ts +8 -8
  267. package/src/modules/accounts/hooks/current-account.hook.tsx +22 -22
  268. package/src/modules/accounts/hooks/useAccountManagement.ts +85 -85
  269. package/src/modules/accounts/hooks/useCurrencies.ts +15 -15
  270. package/src/modules/accounts/hooks/useTimezones.ts +15 -15
  271. package/src/modules/accounts/hooks/useViaCep.ts +25 -25
  272. package/src/modules/accounts/services/account.service.ts +239 -239
  273. package/src/modules/accounts/types.ts +225 -225
  274. package/src/modules/auth/actions/validate-session.action.ts +56 -56
  275. package/src/modules/auth/hooks/login.hook.tsx +13 -13
  276. package/src/modules/auth/hooks/logout.hook.tsx +11 -11
  277. package/src/modules/auth/hooks/register.hook.tsx +11 -11
  278. package/src/modules/auth/hooks/useManagementPermissions.ts +45 -45
  279. package/src/modules/auth/types/management-permission.type.ts +7 -7
  280. package/src/modules/auth/utils/assert-management-permission.ts +46 -46
  281. package/src/modules/auth/utils/assert-management-subscription.ts +35 -27
  282. package/src/modules/auth/utils/assert-subscription-addon.ts +42 -0
  283. package/src/modules/auth/utils/build-wl-override.ts +43 -43
  284. package/src/modules/cards/actions/create-card.action.ts +9 -9
  285. package/src/modules/cards/actions/list-cards.action.ts +8 -8
  286. package/src/modules/cards/hooks/cards.hook.ts +14 -14
  287. package/src/modules/cards/hooks/create-card.hook.ts +18 -18
  288. package/src/modules/cards/services/cards.service.ts +51 -51
  289. package/src/modules/cards/types.ts +32 -32
  290. package/src/modules/ia-credits/actions/list-ia-credits.action.ts +8 -8
  291. package/src/modules/plans/actions/find-plan-by-id.action.ts +8 -8
  292. package/src/modules/plans/hooks/use-has-plan-addon.hook.ts +17 -17
  293. package/src/modules/plans/hooks/use-plan-by-id.hook.ts +13 -13
  294. package/src/modules/plans/services/plans.service.ts +36 -36
  295. package/src/modules/plans/types/plan.type.ts +21 -21
  296. package/src/modules/projects/actions/add-project-user.action.ts +9 -9
  297. package/src/modules/projects/actions/list-all-account-users.action.ts +9 -9
  298. package/src/modules/projects/actions/list-available-users.action.ts +9 -9
  299. package/src/modules/projects/actions/list-project-users.action.ts +9 -9
  300. package/src/modules/projects/actions/remove-project-user.action.ts +9 -9
  301. package/src/modules/projects/hooks/add-project-user.hook.ts +69 -69
  302. package/src/modules/projects/hooks/list-all-account-users.hook.ts +34 -34
  303. package/src/modules/projects/hooks/list-available-users.hook.ts +33 -33
  304. package/src/modules/projects/hooks/list-project-users.hook.ts +33 -33
  305. package/src/modules/projects/hooks/remove-project-user.hook.ts +69 -69
  306. package/src/modules/subscriptions/actions/calculate-subscription.action.ts +9 -9
  307. package/src/modules/subscriptions/actions/list-subscriptions.action.ts +9 -9
  308. package/src/modules/subscriptions/actions/update-subscription-plan.action.ts +14 -14
  309. package/src/modules/subscriptions/constants/query-keys.constants.ts +1 -1
  310. package/src/modules/subscriptions/hooks/calculate-subscription.hook.ts +13 -13
  311. package/src/modules/subscriptions/hooks/find-active-subscription.hook.ts +19 -19
  312. package/src/modules/subscriptions/hooks/list-subscriptions.hook.ts +16 -16
  313. package/src/modules/subscriptions/hooks/update-subscription-plan.hook.ts +25 -25
  314. package/src/modules/subscriptions/hooks/use-cancelled-subscription-guard.ts +39 -39
  315. package/src/modules/subscriptions/types/billing-period.type.ts +1 -1
  316. package/src/modules/subscriptions/types/calculate-subscription.type.ts +75 -75
  317. package/src/modules/subscriptions/utils/build-plan-extras.ts +56 -56
  318. package/src/modules/subscriptions/utils/has-subscription-expired.ts +8 -8
  319. package/src/modules/subscriptions/utils/periodicity.ts +52 -52
  320. package/src/modules/subscriptions/utils/resolve-plan-extras-prices.ts +23 -23
  321. package/src/modules/users/action/find-user-by-id.action.ts +8 -8
  322. package/src/modules/users/action/list-messages.action.ts +12 -12
  323. package/src/modules/users/action/mark-all-messages-as-read.action.ts +8 -8
  324. package/src/modules/users/action/mark-message-as-read.action.ts +8 -8
  325. package/src/modules/users/hooks/messages.hook.ts +60 -60
  326. package/src/modules/users/services/messages.service.ts +48 -48
  327. package/src/modules/whitelabel/actions/find-whitelabel.action.ts +23 -23
  328. package/src/modules/whitelabel/actions/revalidate-whitelabel.action.ts +19 -19
  329. package/src/modules/whitelabel/schema.ts +84 -84
  330. package/src/modules/whitelabel/utils/normalize-hostname.ts +26 -26
  331. package/src/providers/whitelabel.provider.tsx +54 -54
  332. package/src/server.ts +10 -9
  333. package/src/store/useAccountModals.ts +55 -55
  334. package/src/store/useBuyCreditsModal.ts +21 -21
  335. package/src/store/useDesktopSidebarStore.ts +47 -47
  336. package/src/store/useMdSidebarStore.ts +34 -34
  337. package/src/store/useModalManager.ts +104 -104
  338. package/src/utils/constants/br-states.ts +29 -29
  339. package/src/utils/countries.ts +224 -224
  340. package/src/utils/safeServerAction.ts +21 -21
  341. package/src/utils/withAction.ts +13 -13
@@ -1,31 +1,31 @@
1
- 'use client';
2
-
3
- import Image from 'next/image';
4
- import { ReactNode } from 'react';
5
-
6
- interface LoadingOverlayProps {
7
- isLoading: boolean;
8
- message?: string;
9
- icon?: ReactNode;
10
- }
11
-
12
- export function LoadingOverlay({ isLoading, message, icon }: LoadingOverlayProps) {
13
- if (!isLoading) return null;
14
-
15
- const defaultIcon = <Image src="/icons/great-icon.svg" alt="Great Icon" width={20} height={20} />;
16
-
17
- return (
18
- <div className="fixed inset-0 z-[9999] flex items-center justify-center bg-black/60 backdrop-blur-[2px]">
19
- <div className="bg-white rounded-2xl shadow-xl px-16 py-12 flex flex-col items-center gap-6 min-w-[380px]">
20
- <div className="relative flex items-center justify-center w-20 h-20">
21
- <div className="absolute inset-0 border-[5px] border-gray-100 rounded-full" />
22
- <div className="absolute inset-0 border-[5px] border-transparent border-t-black rounded-full animate-spin" />
23
- <div className="relative z-20 flex items-center justify-center w-14 h-14 bg-gray-100 rounded-full">
24
- {icon ?? defaultIcon}
25
- </div>
26
- </div>
27
- <span className="font-bold text-gray-900 text-lg">{message}</span>
28
- </div>
29
- </div>
30
- );
31
- }
1
+ 'use client';
2
+
3
+ import Image from 'next/image';
4
+ import { ReactNode } from 'react';
5
+
6
+ interface LoadingOverlayProps {
7
+ isLoading: boolean;
8
+ message?: string;
9
+ icon?: ReactNode;
10
+ }
11
+
12
+ export function LoadingOverlay({ isLoading, message, icon }: LoadingOverlayProps) {
13
+ if (!isLoading) return null;
14
+
15
+ const defaultIcon = <Image src="/icons/great-icon.svg" alt="Great Icon" width={20} height={20} />;
16
+
17
+ return (
18
+ <div className="fixed inset-0 z-[9999] flex items-center justify-center bg-black/60 backdrop-blur-[2px]">
19
+ <div className="bg-white rounded-2xl shadow-xl px-16 py-12 flex flex-col items-center gap-6 min-w-[380px]">
20
+ <div className="relative flex items-center justify-center w-20 h-20">
21
+ <div className="absolute inset-0 border-[5px] border-gray-100 rounded-full" />
22
+ <div className="absolute inset-0 border-[5px] border-transparent border-t-black rounded-full animate-spin" />
23
+ <div className="relative z-20 flex items-center justify-center w-14 h-14 bg-gray-100 rounded-full">
24
+ {icon ?? defaultIcon}
25
+ </div>
26
+ </div>
27
+ <span className="font-bold text-gray-900 text-lg">{message}</span>
28
+ </div>
29
+ </div>
30
+ );
31
+ }
@@ -1,40 +1,40 @@
1
- 'use client';
2
-
3
- "use client"
4
-
5
- import * as React from "react"
6
- import * as ProgressPrimitive from "@radix-ui/react-progress"
7
- import { cn } from "../../../infra/utils/clsx"
8
-
9
- interface ProgressProps extends React.ComponentProps<typeof ProgressPrimitive.Root> {
10
- indicatorColor?: string
11
- }
12
-
13
- function Progress({
14
- className,
15
- value,
16
- indicatorColor,
17
- ...props
18
- }: ProgressProps) {
19
- return (
20
- <ProgressPrimitive.Root
21
- data-slot="progress"
22
- className={cn(
23
- "bg-primary/20 relative h-2 w-full overflow-hidden rounded-full",
24
- className
25
- )}
26
- {...props}
27
- >
28
- <ProgressPrimitive.Indicator
29
- data-slot="progress-indicator"
30
- className={cn(
31
- "bg-primary h-full w-full flex-1 transition-all rounded-full",
32
- indicatorColor
33
- )}
34
- style={{ transform: `translateX(-${100 - (value || 0)}%)` }}
35
- />
36
- </ProgressPrimitive.Root>
37
- )
38
- }
39
-
40
- export { Progress }
1
+ 'use client';
2
+
3
+ "use client"
4
+
5
+ import * as React from "react"
6
+ import * as ProgressPrimitive from "@radix-ui/react-progress"
7
+ import { cn } from "../../../infra/utils/clsx"
8
+
9
+ interface ProgressProps extends React.ComponentProps<typeof ProgressPrimitive.Root> {
10
+ indicatorColor?: string
11
+ }
12
+
13
+ function Progress({
14
+ className,
15
+ value,
16
+ indicatorColor,
17
+ ...props
18
+ }: ProgressProps) {
19
+ return (
20
+ <ProgressPrimitive.Root
21
+ data-slot="progress"
22
+ className={cn(
23
+ "bg-primary/20 relative h-2 w-full overflow-hidden rounded-full",
24
+ className
25
+ )}
26
+ {...props}
27
+ >
28
+ <ProgressPrimitive.Indicator
29
+ data-slot="progress-indicator"
30
+ className={cn(
31
+ "bg-primary h-full w-full flex-1 transition-all rounded-full",
32
+ indicatorColor
33
+ )}
34
+ style={{ transform: `translateX(-${100 - (value || 0)}%)` }}
35
+ />
36
+ </ProgressPrimitive.Root>
37
+ )
38
+ }
39
+
40
+ export { Progress }
@@ -1,5 +1,5 @@
1
- import { cn } from '../../../infra/utils/clsx';
2
-
3
- export function Skeleton({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) {
4
- return <div className={cn('skeleton rounded-md', className)} {...props} />;
5
- }
1
+ import { cn } from '../../../infra/utils/clsx';
2
+
3
+ export function Skeleton({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) {
4
+ return <div className={cn('skeleton rounded-md', className)} {...props} />;
5
+ }
@@ -1,101 +1,101 @@
1
- 'use client';
2
-
3
- "use client"
4
-
5
- import * as React from "react"
6
- import { cva, type VariantProps } from "class-variance-authority"
7
- import { IconCircleCheck, IconCircleX, IconAlertCircle, IconInfoCircle, IconCircle, IconX } from "@tabler/icons-react"
8
- import { toast } from "sonner"
9
- import { cn } from "../../../infra/utils/clsx"
10
- import { Button } from "../buttons/Button"
11
-
12
- const toastVariants = cva(
13
- "w-full bg-white rounded-lg p-4 shadow-lg backdrop-blur-sm transition-all",
14
- {
15
- variants: {
16
- variant: {
17
- success: "",
18
- error: "",
19
- warning: "",
20
- info: "",
21
- default: "",
22
- },
23
- },
24
- defaultVariants: {
25
- variant: "default",
26
- },
27
- }
28
- )
29
-
30
- const toastIconContainerVariants = cva(
31
- "size-10 rounded-lg flex items-center justify-center shrink-0",
32
- {
33
- variants: {
34
- variant: {
35
- success: "bg-green-50 text-green-500",
36
- error: "bg-red-50 text-red-500",
37
- warning: "bg-yellow-50 text-yellow-400",
38
- info: "bg-cyan-50 text-pages-500",
39
- default: "bg-gray-50 text-gray-950",
40
- },
41
- },
42
- defaultVariants: {
43
- variant: "default",
44
- },
45
- }
46
- )
47
-
48
- const TOAST_ICONS = {
49
- success: IconCircleCheck,
50
- error: IconCircleX,
51
- warning: IconAlertCircle,
52
- info: IconInfoCircle,
53
- default: IconCircle,
54
- } as const
55
-
56
- interface ToastProps extends VariantProps<typeof toastIconContainerVariants> {
57
- message?: React.ReactNode
58
- icon?: React.ReactNode
59
- children?: React.ReactNode
60
- className?: string
61
- toastId?: string | number
62
- }
63
-
64
- function Toast({
65
- variant = "default",
66
- message,
67
- icon,
68
- children,
69
- className,
70
- toastId,
71
- }: ToastProps) {
72
- const Icon = variant ? TOAST_ICONS[variant] : null
73
-
74
- return (
75
- <div data-slot="toast" className={cn(toastVariants({ variant }), className, "md:min-w-[310px] lg:min-w-[310px]")}>
76
- {children ? (
77
- children
78
- ) : (
79
- <div className="flex items-center gap-3 flex-1 min-w-0">
80
- <div className={cn(toastIconContainerVariants({ variant }))}>
81
- {icon || (Icon && <Icon size={16} />)}
82
- </div>
83
-
84
- <span className="w-full text-gray-600 paragraph-small-medium">
85
- {message}
86
- </span>
87
- <Button
88
- variant={"ghost"}
89
- className="size-8 rounded-full"
90
- onClick={() => toastId && toast.dismiss(toastId)}
91
- >
92
- <IconX size={18} />
93
- </Button>
94
- </div>
95
- )}
96
- </div>
97
- )
98
- }
99
-
100
- export { Toast, toastVariants, toastIconContainerVariants }
101
- export type { ToastProps }
1
+ 'use client';
2
+
3
+ "use client"
4
+
5
+ import * as React from "react"
6
+ import { cva, type VariantProps } from "class-variance-authority"
7
+ import { IconCircleCheck, IconCircleX, IconAlertCircle, IconInfoCircle, IconCircle, IconX } from "@tabler/icons-react"
8
+ import { toast } from "sonner"
9
+ import { cn } from "../../../infra/utils/clsx"
10
+ import { Button } from "../buttons/Button"
11
+
12
+ const toastVariants = cva(
13
+ "w-full bg-white rounded-lg p-4 shadow-lg backdrop-blur-sm transition-all",
14
+ {
15
+ variants: {
16
+ variant: {
17
+ success: "",
18
+ error: "",
19
+ warning: "",
20
+ info: "",
21
+ default: "",
22
+ },
23
+ },
24
+ defaultVariants: {
25
+ variant: "default",
26
+ },
27
+ }
28
+ )
29
+
30
+ const toastIconContainerVariants = cva(
31
+ "size-10 rounded-lg flex items-center justify-center shrink-0",
32
+ {
33
+ variants: {
34
+ variant: {
35
+ success: "bg-green-50 text-green-500",
36
+ error: "bg-red-50 text-red-500",
37
+ warning: "bg-yellow-50 text-yellow-400",
38
+ info: "bg-cyan-50 text-pages-500",
39
+ default: "bg-gray-50 text-gray-950",
40
+ },
41
+ },
42
+ defaultVariants: {
43
+ variant: "default",
44
+ },
45
+ }
46
+ )
47
+
48
+ const TOAST_ICONS = {
49
+ success: IconCircleCheck,
50
+ error: IconCircleX,
51
+ warning: IconAlertCircle,
52
+ info: IconInfoCircle,
53
+ default: IconCircle,
54
+ } as const
55
+
56
+ interface ToastProps extends VariantProps<typeof toastIconContainerVariants> {
57
+ message?: React.ReactNode
58
+ icon?: React.ReactNode
59
+ children?: React.ReactNode
60
+ className?: string
61
+ toastId?: string | number
62
+ }
63
+
64
+ function Toast({
65
+ variant = "default",
66
+ message,
67
+ icon,
68
+ children,
69
+ className,
70
+ toastId,
71
+ }: ToastProps) {
72
+ const Icon = variant ? TOAST_ICONS[variant] : null
73
+
74
+ return (
75
+ <div data-slot="toast" className={cn(toastVariants({ variant }), className, "md:min-w-[310px] lg:min-w-[310px]")}>
76
+ {children ? (
77
+ children
78
+ ) : (
79
+ <div className="flex items-center gap-3 flex-1 min-w-0">
80
+ <div className={cn(toastIconContainerVariants({ variant }))}>
81
+ {icon || (Icon && <Icon size={16} />)}
82
+ </div>
83
+
84
+ <span className="w-full text-gray-600 paragraph-small-medium">
85
+ {message}
86
+ </span>
87
+ <Button
88
+ variant={"ghost"}
89
+ className="size-8 rounded-full"
90
+ onClick={() => toastId && toast.dismiss(toastId)}
91
+ >
92
+ <IconX size={18} />
93
+ </Button>
94
+ </div>
95
+ )}
96
+ </div>
97
+ )
98
+ }
99
+
100
+ export { Toast, toastVariants, toastIconContainerVariants }
101
+ export type { ToastProps }