@pagamio/frontend-commons-lib 0.8.175 → 0.8.183

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 (508) hide show
  1. package/lib/api/client.d.ts +88 -0
  2. package/lib/api/client.js +339 -0
  3. package/lib/api/context.d.ts +112 -0
  4. package/lib/api/context.js +105 -0
  5. package/lib/api/index.d.ts +4 -0
  6. package/lib/api/index.js +4 -0
  7. package/lib/api/swr.d.ts +46 -0
  8. package/lib/api/swr.js +124 -0
  9. package/lib/api/types.d.ts +145 -0
  10. package/lib/api/types.js +10 -0
  11. package/lib/auth/authenticators/AuthenticatorFactory.d.ts +25 -0
  12. package/lib/auth/authenticators/AuthenticatorFactory.js +32 -0
  13. package/lib/auth/authenticators/index.d.ts +7 -0
  14. package/lib/auth/authenticators/index.js +7 -0
  15. package/lib/auth/authenticators/processors/DefaultAuthenticatorProcessor.d.ts +21 -0
  16. package/lib/auth/authenticators/processors/DefaultAuthenticatorProcessor.js +26 -0
  17. package/lib/auth/authenticators/processors/StrapiAuthenticatorProcessor.d.ts +74 -0
  18. package/lib/auth/authenticators/processors/StrapiAuthenticatorProcessor.js +99 -0
  19. package/lib/auth/authenticators/types.d.ts +26 -0
  20. package/lib/auth/authenticators/types.js +9 -0
  21. package/lib/auth/components/AppBanner.d.ts +7 -0
  22. package/lib/auth/components/AppBanner.js +9 -0
  23. package/lib/auth/components/AuthCard.d.ts +8 -0
  24. package/lib/auth/components/AuthCard.js +14 -0
  25. package/lib/auth/components/AuthFormUtils.d.ts +58 -0
  26. package/lib/auth/components/AuthFormUtils.js +52 -0
  27. package/lib/auth/components/AuthPageLayout.d.ts +45 -0
  28. package/lib/auth/components/AuthPageLayout.js +12 -0
  29. package/lib/auth/components/ChangePasswordPage.d.ts +12 -0
  30. package/lib/auth/components/ChangePasswordPage.js +59 -0
  31. package/lib/auth/components/CustomerRegistrationPage.d.ts +50 -0
  32. package/lib/auth/components/CustomerRegistrationPage.js +140 -0
  33. package/lib/auth/components/ForgotPasswordPage.d.ts +38 -0
  34. package/lib/auth/components/ForgotPasswordPage.js +76 -0
  35. package/lib/auth/components/LoginPage.d.ts +73 -0
  36. package/lib/auth/components/LoginPage.js +115 -0
  37. package/lib/auth/components/LogoutButton.d.ts +30 -0
  38. package/lib/auth/components/LogoutButton.js +47 -0
  39. package/lib/auth/components/ResetPasswordPage.d.ts +42 -0
  40. package/lib/auth/components/ResetPasswordPage.js +88 -0
  41. package/lib/auth/components/hooks/useChangeUserPassword.d.ts +26 -0
  42. package/lib/auth/components/hooks/useChangeUserPassword.js +63 -0
  43. package/lib/auth/components/index.d.ts +8 -0
  44. package/lib/auth/components/index.js +7 -0
  45. package/lib/auth/context/AuthContext.d.ts +65 -0
  46. package/lib/auth/context/AuthContext.js +150 -0
  47. package/lib/auth/context/index.d.ts +1 -0
  48. package/lib/auth/context/index.js +1 -0
  49. package/lib/auth/index.d.ts +7 -0
  50. package/lib/auth/index.js +7 -0
  51. package/lib/auth/services/AuthService.d.ts +230 -0
  52. package/lib/auth/services/AuthService.js +475 -0
  53. package/lib/auth/services/LogoutService.d.ts +27 -0
  54. package/lib/auth/services/LogoutService.js +98 -0
  55. package/lib/auth/services/index.d.ts +2 -0
  56. package/lib/auth/services/index.js +2 -0
  57. package/lib/auth/shared/index.d.ts +1 -0
  58. package/lib/auth/shared/index.js +1 -0
  59. package/lib/auth/shared/layout/AuthPageLayout.d.ts +10 -0
  60. package/lib/auth/shared/layout/AuthPageLayout.js +16 -0
  61. package/lib/auth/shared/layout/index.d.ts +1 -0
  62. package/lib/auth/shared/layout/index.js +1 -0
  63. package/lib/auth/types/auth.types.d.ts +234 -0
  64. package/lib/auth/types/auth.types.js +14 -0
  65. package/lib/auth/types/index.d.ts +1 -0
  66. package/lib/auth/types/index.js +1 -0
  67. package/lib/auth/utils/TokenManager.d.ts +43 -0
  68. package/lib/auth/utils/TokenManager.js +171 -0
  69. package/lib/auth/utils/Transformers.d.ts +158 -0
  70. package/lib/auth/utils/Transformers.js +263 -0
  71. package/lib/auth/utils/errorDetection.d.ts +22 -0
  72. package/lib/auth/utils/errorDetection.js +190 -0
  73. package/lib/auth/utils/index.d.ts +3 -0
  74. package/lib/auth/utils/index.js +3 -0
  75. package/lib/components/charts/LineGraph.d.ts +15 -0
  76. package/lib/components/charts/LineGraph.js +131 -0
  77. package/lib/components/icons/Icon.d.ts +8 -0
  78. package/lib/components/icons/Icon.js +13 -0
  79. package/lib/components/icons/index.d.ts +2 -0
  80. package/lib/components/icons/index.js +2 -0
  81. package/lib/components/icons/types.d.ts +26 -0
  82. package/lib/components/icons/types.js +33 -0
  83. package/lib/components/index.d.ts +3 -0
  84. package/lib/components/index.js +3 -0
  85. package/lib/components/layout/AppLayout.d.ts +34 -0
  86. package/lib/components/layout/AppLayout.js +19 -0
  87. package/lib/components/layout/AuthPageLayout.d.ts +13 -0
  88. package/lib/components/layout/AuthPageLayout.js +15 -0
  89. package/lib/components/layout/BreadcrumbNav.d.ts +2 -0
  90. package/lib/components/layout/BreadcrumbNav.js +10 -0
  91. package/lib/components/layout/LayoutContent.d.ts +6 -0
  92. package/lib/components/layout/LayoutContent.js +10 -0
  93. package/lib/components/layout/Navbar.d.ts +106 -0
  94. package/lib/components/layout/Navbar.js +66 -0
  95. package/lib/components/layout/PageHeader.d.ts +8 -0
  96. package/lib/components/layout/PageHeader.js +7 -0
  97. package/lib/components/layout/SessionExpiryModal.d.ts +10 -0
  98. package/lib/components/layout/SessionExpiryModal.js +9 -0
  99. package/lib/components/layout/Sidebar.d.ts +6 -0
  100. package/lib/components/layout/Sidebar.js +87 -0
  101. package/lib/components/layout/VerticalTabsLayout.d.ts +12 -0
  102. package/lib/components/layout/VerticalTabsLayout.js +14 -0
  103. package/lib/components/layout/index.d.ts +9 -0
  104. package/lib/components/layout/index.js +9 -0
  105. package/lib/components/ui/Avatar.d.ts +6 -0
  106. package/lib/components/ui/Avatar.js +11 -0
  107. package/lib/components/ui/AvatarIcon.d.ts +4 -0
  108. package/lib/components/ui/AvatarIcon.js +6 -0
  109. package/lib/components/ui/Button.d.ts +14 -0
  110. package/lib/components/ui/Button.js +30 -0
  111. package/lib/components/ui/Calendar.d.ts +9 -0
  112. package/lib/components/ui/Calendar.js +35 -0
  113. package/lib/components/ui/Card.d.ts +16 -0
  114. package/lib/components/ui/Card.js +6 -0
  115. package/lib/components/ui/Chart.d.ts +2 -0
  116. package/lib/components/ui/Chart.js +16 -0
  117. package/lib/components/ui/Checkbox.d.ts +4 -0
  118. package/lib/components/ui/Checkbox.js +8 -0
  119. package/lib/components/ui/Command.d.ts +80 -0
  120. package/lib/components/ui/Command.js +28 -0
  121. package/lib/components/ui/ContainedTab.d.ts +21 -0
  122. package/lib/components/ui/ContainedTab.js +37 -0
  123. package/lib/components/ui/DateFormat.d.ts +6 -0
  124. package/lib/components/ui/DateFormat.js +8 -0
  125. package/lib/components/ui/DatePicker.d.ts +14 -0
  126. package/lib/components/ui/DatePicker.js +91 -0
  127. package/lib/components/ui/DateRangeModal.d.ts +38 -0
  128. package/lib/components/ui/DateRangeModal.js +89 -0
  129. package/lib/components/ui/DetailsCard.d.ts +16 -0
  130. package/lib/components/ui/DetailsCard.js +14 -0
  131. package/lib/components/ui/DetailsPage.d.ts +36 -0
  132. package/lib/components/ui/DetailsPage.js +50 -0
  133. package/lib/components/ui/Dialog.d.ts +19 -0
  134. package/lib/components/ui/Dialog.js +22 -0
  135. package/lib/components/ui/EmptyState.d.ts +6 -0
  136. package/lib/components/ui/EmptyState.js +6 -0
  137. package/lib/components/ui/FilterComponent.d.ts +30 -0
  138. package/lib/components/ui/FilterComponent.js +80 -0
  139. package/lib/components/ui/FilterList.d.ts +52 -0
  140. package/lib/components/ui/FilterList.js +62 -0
  141. package/lib/components/ui/FilterSection.d.ts +31 -0
  142. package/lib/components/ui/FilterSection.js +21 -0
  143. package/lib/components/ui/FilterWrapper.d.ts +6 -0
  144. package/lib/components/ui/FilterWrapper.js +7 -0
  145. package/lib/components/ui/Form.d.ts +23 -0
  146. package/lib/components/ui/Form.js +62 -0
  147. package/lib/components/ui/HoverableValue.d.ts +7 -0
  148. package/lib/components/ui/HoverableValue.js +8 -0
  149. package/lib/components/ui/IconButton.d.ts +10 -0
  150. package/lib/components/ui/IconButton.js +10 -0
  151. package/lib/components/ui/ImageComponent.d.ts +8 -0
  152. package/lib/components/ui/ImageComponent.js +5 -0
  153. package/lib/components/ui/ImageUploader.d.ts +17 -0
  154. package/lib/components/ui/ImageUploader.js +144 -0
  155. package/lib/components/ui/Input.d.ts +4 -0
  156. package/lib/components/ui/Input.js +8 -0
  157. package/lib/components/ui/Label.d.ts +5 -0
  158. package/lib/components/ui/Label.js +9 -0
  159. package/lib/components/ui/Loader.d.ts +10 -0
  160. package/lib/components/ui/Loader.js +7 -0
  161. package/lib/components/ui/Modal.d.ts +72 -0
  162. package/lib/components/ui/Modal.js +31 -0
  163. package/lib/components/ui/MultiSelect.d.ts +16 -0
  164. package/lib/components/ui/MultiSelect.js +59 -0
  165. package/lib/components/ui/NotificationModal.d.ts +18 -0
  166. package/lib/components/ui/NotificationModal.js +40 -0
  167. package/lib/components/ui/PhoneInput.d.ts +12 -0
  168. package/lib/components/ui/PhoneInput.js +58 -0
  169. package/lib/components/ui/Popover.d.ts +7 -0
  170. package/lib/components/ui/Popover.js +10 -0
  171. package/lib/components/ui/Progress.d.ts +7 -0
  172. package/lib/components/ui/Progress.js +7 -0
  173. package/lib/components/ui/Radio.d.ts +5 -0
  174. package/lib/components/ui/Radio.js +14 -0
  175. package/lib/components/ui/RangeDatePicker.d.ts +78 -0
  176. package/lib/components/ui/RangeDatePicker.js +68 -0
  177. package/lib/components/ui/Select.d.ts +13 -0
  178. package/lib/components/ui/Select.js +57 -0
  179. package/lib/components/ui/Separator.d.ts +4 -0
  180. package/lib/components/ui/Separator.js +7 -0
  181. package/lib/components/ui/Sheet.d.ts +26 -0
  182. package/lib/components/ui/Sheet.js +37 -0
  183. package/lib/components/ui/StatusCell.d.ts +9 -0
  184. package/lib/components/ui/StatusCell.js +6 -0
  185. package/lib/components/ui/Switch.d.ts +10 -0
  186. package/lib/components/ui/Switch.js +22 -0
  187. package/lib/components/ui/Tab.d.ts +15 -0
  188. package/lib/components/ui/Tab.js +13 -0
  189. package/lib/components/ui/TableDownload.d.ts +11 -0
  190. package/lib/components/ui/TableDownload.js +82 -0
  191. package/lib/components/ui/TailwindIndicator.d.ts +1 -0
  192. package/lib/components/ui/TailwindIndicator.js +6 -0
  193. package/lib/components/ui/TextField.d.ts +60 -0
  194. package/lib/components/ui/TextField.js +42 -0
  195. package/lib/components/ui/Textarea.d.ts +5 -0
  196. package/lib/components/ui/Textarea.js +8 -0
  197. package/lib/components/ui/Toast.d.ts +12 -0
  198. package/lib/components/ui/Toast.js +25 -0
  199. package/lib/components/ui/UploadField.d.ts +15 -0
  200. package/lib/components/ui/UploadField.js +45 -0
  201. package/lib/components/ui/VerticalTab.d.ts +16 -0
  202. package/lib/components/ui/VerticalTab.js +13 -0
  203. package/lib/components/ui/index.d.ts +49 -0
  204. package/lib/components/ui/index.js +47 -0
  205. package/lib/context/BreadcrumbContext.d.ts +28 -0
  206. package/lib/context/BreadcrumbContext.js +238 -0
  207. package/lib/context/FormEngineDrawerProvider.d.ts +21 -0
  208. package/lib/context/FormEngineDrawerProvider.js +38 -0
  209. package/lib/context/MultiFormEngineDrawerProvider.d.ts +25 -0
  210. package/lib/context/MultiFormEngineDrawerProvider.js +89 -0
  211. package/lib/context/SidebarContext.d.ts +65 -0
  212. package/lib/context/SidebarContext.js +47 -0
  213. package/lib/context/ToastContext.d.ts +17 -0
  214. package/lib/context/ToastContext.js +29 -0
  215. package/lib/context/index.d.ts +5 -0
  216. package/lib/context/index.js +5 -0
  217. package/lib/dashboard-visuals/components/BaseChart.d.ts +55 -0
  218. package/lib/dashboard-visuals/components/BaseChart.js +201 -0
  219. package/lib/dashboard-visuals/components/CardWrapper.d.ts +10 -0
  220. package/lib/dashboard-visuals/components/CardWrapper.js +13 -0
  221. package/lib/dashboard-visuals/components/ChartDetailsModal.d.ts +57 -0
  222. package/lib/dashboard-visuals/components/ChartDetailsModal.js +27 -0
  223. package/lib/dashboard-visuals/components/ChartDetailsModalWrapper.d.ts +29 -0
  224. package/lib/dashboard-visuals/components/ChartDetailsModalWrapper.js +4 -0
  225. package/lib/dashboard-visuals/components/ChartFormatter.d.ts +22 -0
  226. package/lib/dashboard-visuals/components/ChartFormatter.js +46 -0
  227. package/lib/dashboard-visuals/components/ChartWrapper.d.ts +11 -0
  228. package/lib/dashboard-visuals/components/ChartWrapper.js +14 -0
  229. package/lib/dashboard-visuals/components/DashboardFilter.d.ts +8 -0
  230. package/lib/dashboard-visuals/components/DashboardFilter.js +17 -0
  231. package/lib/dashboard-visuals/components/DataTable.d.ts +3 -0
  232. package/lib/dashboard-visuals/components/DataTable.js +57 -0
  233. package/lib/dashboard-visuals/components/EmptyState.d.ts +6 -0
  234. package/lib/dashboard-visuals/components/EmptyState.js +6 -0
  235. package/lib/dashboard-visuals/components/ErrorState.d.ts +7 -0
  236. package/lib/dashboard-visuals/components/ErrorState.js +5 -0
  237. package/lib/dashboard-visuals/components/FilterComponentSkeleton.d.ts +3 -0
  238. package/lib/dashboard-visuals/components/FilterComponentSkeleton.js +11 -0
  239. package/lib/dashboard-visuals/components/Pagination.d.ts +10 -0
  240. package/lib/dashboard-visuals/components/Pagination.js +7 -0
  241. package/lib/dashboard-visuals/components/Switch.d.ts +8 -0
  242. package/lib/dashboard-visuals/components/Switch.js +10 -0
  243. package/lib/dashboard-visuals/components/TileSkeleton.d.ts +2 -0
  244. package/lib/dashboard-visuals/components/TileSkeleton.js +5 -0
  245. package/lib/dashboard-visuals/components/molecules/Analytics.d.ts +11 -0
  246. package/lib/dashboard-visuals/components/molecules/Analytics.js +9 -0
  247. package/lib/dashboard-visuals/components/molecules/DataGrid.d.ts +15 -0
  248. package/lib/dashboard-visuals/components/molecules/DataGrid.js +124 -0
  249. package/lib/dashboard-visuals/components/molecules/NoChartData.d.ts +6 -0
  250. package/lib/dashboard-visuals/components/molecules/NoChartData.js +6 -0
  251. package/lib/dashboard-visuals/components/molecules/VisualChart.d.ts +16 -0
  252. package/lib/dashboard-visuals/components/molecules/VisualChart.js +8 -0
  253. package/lib/dashboard-visuals/components/types.d.ts +62 -0
  254. package/lib/dashboard-visuals/components/types.js +1 -0
  255. package/lib/dashboard-visuals/hooks/useChartData.d.ts +15 -0
  256. package/lib/dashboard-visuals/hooks/useChartData.js +82 -0
  257. package/lib/dashboard-visuals/hooks/useTooltipFormatter.d.ts +13 -0
  258. package/lib/dashboard-visuals/hooks/useTooltipFormatter.js +10 -0
  259. package/lib/dashboard-visuals/index.d.ts +39 -0
  260. package/lib/dashboard-visuals/index.js +168 -0
  261. package/lib/dashboard-visuals/types/index.d.ts +83 -0
  262. package/lib/dashboard-visuals/types/index.js +1 -0
  263. package/lib/dashboard-visuals/types/metricDetailData.d.ts +25 -0
  264. package/lib/dashboard-visuals/types/metricDetailData.js +1 -0
  265. package/lib/dashboard-visuals/utils/api.d.ts +5 -0
  266. package/lib/dashboard-visuals/utils/api.js +6 -0
  267. package/lib/dashboard-visuals/utils/chartOptions.d.ts +481 -0
  268. package/lib/dashboard-visuals/utils/chartOptions.js +393 -0
  269. package/lib/dashboard-visuals/utils/chunkArray.d.ts +1 -0
  270. package/lib/dashboard-visuals/utils/chunkArray.js +7 -0
  271. package/lib/dashboard-visuals/utils/defaultColors.d.ts +1 -0
  272. package/lib/dashboard-visuals/utils/defaultColors.js +1 -0
  273. package/lib/dashboard-visuals/utils/formatUtil.d.ts +203 -0
  274. package/lib/dashboard-visuals/utils/formatUtil.js +472 -0
  275. package/lib/dashboard-visuals/utils/gridUtil.d.ts +11 -0
  276. package/lib/dashboard-visuals/utils/gridUtil.js +32 -0
  277. package/lib/dashboard-visuals/utils/index.d.ts +6 -0
  278. package/lib/dashboard-visuals/utils/index.js +6 -0
  279. package/lib/dashboard-visuals/utils/tooltipUtils.d.ts +11 -0
  280. package/lib/dashboard-visuals/utils/tooltipUtils.js +180 -0
  281. package/lib/dashboard-visuals/visualRegistry.d.ts +4 -0
  282. package/lib/dashboard-visuals/visualRegistry.js +41 -0
  283. package/lib/dashboard-visuals/visuals/BarChart.d.ts +58 -0
  284. package/lib/dashboard-visuals/visuals/BarChart.js +95 -0
  285. package/lib/dashboard-visuals/visuals/BarLineHybridChart.d.ts +33 -0
  286. package/lib/dashboard-visuals/visuals/BarLineHybridChart.js +60 -0
  287. package/lib/dashboard-visuals/visuals/BubbleChart.d.ts +25 -0
  288. package/lib/dashboard-visuals/visuals/BubbleChart.js +101 -0
  289. package/lib/dashboard-visuals/visuals/DistributionChart.d.ts +11 -0
  290. package/lib/dashboard-visuals/visuals/DistributionChart.js +48 -0
  291. package/lib/dashboard-visuals/visuals/DonutChart.d.ts +50 -0
  292. package/lib/dashboard-visuals/visuals/DonutChart.js +105 -0
  293. package/lib/dashboard-visuals/visuals/GaugeChart.d.ts +32 -0
  294. package/lib/dashboard-visuals/visuals/GaugeChart.js +53 -0
  295. package/lib/dashboard-visuals/visuals/GroupedBarChart.d.ts +47 -0
  296. package/lib/dashboard-visuals/visuals/GroupedBarChart.js +131 -0
  297. package/lib/dashboard-visuals/visuals/HeatmapChart.d.ts +79 -0
  298. package/lib/dashboard-visuals/visuals/HeatmapChart.js +146 -0
  299. package/lib/dashboard-visuals/visuals/HorizontalBarChart.d.ts +50 -0
  300. package/lib/dashboard-visuals/visuals/HorizontalBarChart.js +131 -0
  301. package/lib/dashboard-visuals/visuals/ItemPerformanceCard.d.ts +30 -0
  302. package/lib/dashboard-visuals/visuals/ItemPerformanceCard.js +31 -0
  303. package/lib/dashboard-visuals/visuals/LineChart.d.ts +56 -0
  304. package/lib/dashboard-visuals/visuals/LineChart.js +80 -0
  305. package/lib/dashboard-visuals/visuals/LineGraph.d.ts +50 -0
  306. package/lib/dashboard-visuals/visuals/LineGraph.js +189 -0
  307. package/lib/dashboard-visuals/visuals/MetricSummaryCard.d.ts +14 -0
  308. package/lib/dashboard-visuals/visuals/MetricSummaryCard.js +8 -0
  309. package/lib/dashboard-visuals/visuals/MultiGaugeChart.d.ts +39 -0
  310. package/lib/dashboard-visuals/visuals/MultiGaugeChart.js +119 -0
  311. package/lib/dashboard-visuals/visuals/PieChart.d.ts +59 -0
  312. package/lib/dashboard-visuals/visuals/PieChart.js +194 -0
  313. package/lib/dashboard-visuals/visuals/SelectedEventTile.d.ts +14 -0
  314. package/lib/dashboard-visuals/visuals/SelectedEventTile.js +35 -0
  315. package/lib/dashboard-visuals/visuals/SpeedometerChart.d.ts +53 -0
  316. package/lib/dashboard-visuals/visuals/SpeedometerChart.js +94 -0
  317. package/lib/dashboard-visuals/visuals/Table.d.ts +26 -0
  318. package/lib/dashboard-visuals/visuals/Table.js +113 -0
  319. package/lib/dashboard-visuals/visuals/Tile.d.ts +16 -0
  320. package/lib/dashboard-visuals/visuals/Tile.js +16 -0
  321. package/lib/dashboard-visuals/visuals/TreeMap.d.ts +25 -0
  322. package/lib/dashboard-visuals/visuals/TreeMap.js +45 -0
  323. package/lib/dashboard-visuals/visuals/WaterfallChart.d.ts +52 -0
  324. package/lib/dashboard-visuals/visuals/WaterfallChart.js +266 -0
  325. package/lib/form-engine/Form.d.ts +4 -0
  326. package/lib/form-engine/Form.js +14 -0
  327. package/lib/form-engine/FormEngine.d.ts +3 -0
  328. package/lib/form-engine/FormEngine.js +121 -0
  329. package/lib/form-engine/components/FieldWrapper.d.ts +18 -0
  330. package/lib/form-engine/components/FieldWrapper.js +63 -0
  331. package/lib/form-engine/components/index.d.ts +2 -0
  332. package/lib/form-engine/components/index.js +2 -0
  333. package/lib/form-engine/components/inputs/card-expiry-input/CardExpiryInput.d.ts +16 -0
  334. package/lib/form-engine/components/inputs/card-expiry-input/CardExpiryInput.js +48 -0
  335. package/lib/form-engine/components/inputs/checkbox-input/CheckboxInput.d.ts +4 -0
  336. package/lib/form-engine/components/inputs/checkbox-input/CheckboxInput.js +5 -0
  337. package/lib/form-engine/components/inputs/credit-card-input/CreditCardInput.d.ts +4 -0
  338. package/lib/form-engine/components/inputs/credit-card-input/CreditCardInput.js +82 -0
  339. package/lib/form-engine/components/inputs/date-input/DateInput.d.ts +4 -0
  340. package/lib/form-engine/components/inputs/date-input/DateInput.js +7 -0
  341. package/lib/form-engine/components/inputs/date-input/index.d.ts +1 -0
  342. package/lib/form-engine/components/inputs/date-input/index.js +1 -0
  343. package/lib/form-engine/components/inputs/email-input/EmailInput.d.ts +4 -0
  344. package/lib/form-engine/components/inputs/email-input/EmailInput.js +5 -0
  345. package/lib/form-engine/components/inputs/email-input/index.d.ts +1 -0
  346. package/lib/form-engine/components/inputs/email-input/index.js +1 -0
  347. package/lib/form-engine/components/inputs/index.d.ts +13 -0
  348. package/lib/form-engine/components/inputs/index.js +13 -0
  349. package/lib/form-engine/components/inputs/label-input/LabelInput.d.ts +4 -0
  350. package/lib/form-engine/components/inputs/label-input/LabelInput.js +7 -0
  351. package/lib/form-engine/components/inputs/label-input/index.d.ts +1 -0
  352. package/lib/form-engine/components/inputs/label-input/index.js +1 -0
  353. package/lib/form-engine/components/inputs/multi-select-input/MultiSelectInput.d.ts +4 -0
  354. package/lib/form-engine/components/inputs/multi-select-input/MultiSelectInput.js +5 -0
  355. package/lib/form-engine/components/inputs/number-input/NumberInput.d.ts +4 -0
  356. package/lib/form-engine/components/inputs/number-input/NumberInput.js +5 -0
  357. package/lib/form-engine/components/inputs/number-input/index.d.ts +1 -0
  358. package/lib/form-engine/components/inputs/number-input/index.js +1 -0
  359. package/lib/form-engine/components/inputs/password-input/PasswordInput.d.ts +4 -0
  360. package/lib/form-engine/components/inputs/password-input/PasswordInput.js +9 -0
  361. package/lib/form-engine/components/inputs/password-input/index.d.ts +1 -0
  362. package/lib/form-engine/components/inputs/password-input/index.js +1 -0
  363. package/lib/form-engine/components/inputs/radio-button/RadioInput.d.ts +4 -0
  364. package/lib/form-engine/components/inputs/radio-button/RadioInput.js +6 -0
  365. package/lib/form-engine/components/inputs/radio-button/index.d.ts +1 -0
  366. package/lib/form-engine/components/inputs/radio-button/index.js +1 -0
  367. package/lib/form-engine/components/inputs/select/SelectInput.d.ts +4 -0
  368. package/lib/form-engine/components/inputs/select/SelectInput.js +6 -0
  369. package/lib/form-engine/components/inputs/select/index.d.ts +1 -0
  370. package/lib/form-engine/components/inputs/select/index.js +1 -0
  371. package/lib/form-engine/components/inputs/textarea-input/TextareaInput.d.ts +4 -0
  372. package/lib/form-engine/components/inputs/textarea-input/TextareaInput.js +5 -0
  373. package/lib/form-engine/components/inputs/textarea-input/index.d.ts +1 -0
  374. package/lib/form-engine/components/inputs/textarea-input/index.js +1 -0
  375. package/lib/form-engine/components/inputs/time-input/TimeInput.d.ts +4 -0
  376. package/lib/form-engine/components/inputs/time-input/TimeInput.js +5 -0
  377. package/lib/form-engine/components/inputs/time-input/index.d.ts +1 -0
  378. package/lib/form-engine/components/inputs/time-input/index.js +1 -0
  379. package/lib/form-engine/components/inputs/toggle-switch-input/ToggleSwitchInput.d.ts +4 -0
  380. package/lib/form-engine/components/inputs/toggle-switch-input/ToggleSwitchInput.js +7 -0
  381. package/lib/form-engine/components/inputs/toggle-switch-input/index.d.ts +1 -0
  382. package/lib/form-engine/components/inputs/toggle-switch-input/index.js +1 -0
  383. package/lib/form-engine/components/inputs/upload-field/UploadFieldForm.d.ts +4 -0
  384. package/lib/form-engine/components/inputs/upload-field/UploadFieldForm.js +59 -0
  385. package/lib/form-engine/components/inputs/upload-field/index.d.ts +1 -0
  386. package/lib/form-engine/components/inputs/upload-field/index.js +1 -0
  387. package/lib/form-engine/hooks/useFormPersistence.d.ts +11 -0
  388. package/lib/form-engine/hooks/useFormPersistence.js +46 -0
  389. package/lib/form-engine/index.d.ts +5 -0
  390. package/lib/form-engine/index.js +5 -0
  391. package/lib/form-engine/registry/RegisterComponents.d.ts +1 -0
  392. package/lib/form-engine/registry/RegisterComponents.js +35 -0
  393. package/lib/form-engine/registry/Registry.d.ts +5 -0
  394. package/lib/form-engine/registry/Registry.js +13 -0
  395. package/lib/form-engine/registry/index.d.ts +2 -0
  396. package/lib/form-engine/registry/index.js +2 -0
  397. package/lib/form-engine/types/index.d.ts +311 -0
  398. package/lib/form-engine/types/index.js +1 -0
  399. package/lib/helpers/index.d.ts +2 -0
  400. package/lib/helpers/index.js +2 -0
  401. package/lib/helpers/utils.d.ts +37 -0
  402. package/lib/helpers/utils.js +77 -0
  403. package/lib/helpers/validations.d.ts +80 -0
  404. package/lib/helpers/validations.js +39 -0
  405. package/lib/index.d.ts +21 -0
  406. package/lib/index.js +30 -0
  407. package/lib/mocks/mockApiRequestsConfig.d.ts +2 -0
  408. package/lib/mocks/mockApiRequestsConfig.js +343 -0
  409. package/lib/pagamio-drawer/TopUpWalletDrawer/TopUpWalletContent.d.ts +14 -0
  410. package/lib/pagamio-drawer/TopUpWalletDrawer/TopUpWalletContent.js +40 -0
  411. package/lib/pagamio-drawer/TopUpWalletDrawer/index.d.ts +11 -0
  412. package/lib/pagamio-drawer/TopUpWalletDrawer/index.js +7 -0
  413. package/lib/pagamio-drawer/components/BaseDrawer.d.ts +11 -0
  414. package/lib/pagamio-drawer/components/BaseDrawer.js +10 -0
  415. package/lib/pagamio-drawer/components/DrawerContent.d.ts +27 -0
  416. package/lib/pagamio-drawer/components/DrawerContent.js +237 -0
  417. package/lib/pagamio-drawer/index.d.ts +22 -0
  418. package/lib/pagamio-drawer/index.js +133 -0
  419. package/lib/pagamio-table/data-table/ExportButton.d.ts +57 -0
  420. package/lib/pagamio-table/data-table/ExportButton.js +96 -0
  421. package/lib/pagamio-table/data-table/MantineCoreTable.d.ts +44 -0
  422. package/lib/pagamio-table/data-table/MantineCoreTable.js +129 -0
  423. package/lib/pagamio-table/data-table/Pagination.d.ts +10 -0
  424. package/lib/pagamio-table/data-table/Pagination.js +5 -0
  425. package/lib/pagamio-table/data-table/TableDownload.d.ts +8 -0
  426. package/lib/pagamio-table/data-table/TableDownload.js +81 -0
  427. package/lib/pagamio-table/data-table/TableToolbar.d.ts +3 -0
  428. package/lib/pagamio-table/data-table/TableToolbar.js +16 -0
  429. package/lib/pagamio-table/data-table/exportUtils.d.ts +42 -0
  430. package/lib/pagamio-table/data-table/exportUtils.js +782 -0
  431. package/lib/pagamio-table/data-table/index.d.ts +5 -0
  432. package/lib/pagamio-table/data-table/index.js +11 -0
  433. package/lib/pagamio-table/data-table/pdfExportUtils.d.ts +111 -0
  434. package/lib/pagamio-table/data-table/pdfExportUtils.js +113 -0
  435. package/lib/pagamio-table/data-table/types.d.ts +169 -0
  436. package/lib/pagamio-table/data-table/types.js +1 -0
  437. package/lib/pagamio-table/index.d.ts +4 -0
  438. package/lib/pagamio-table/index.js +4 -0
  439. package/lib/pagamio-table/utils/functionHelper.d.ts +12 -0
  440. package/lib/pagamio-table/utils/functionHelper.js +24 -0
  441. package/lib/pagamio-table/utils/index.d.ts +1 -0
  442. package/lib/pagamio-table/utils/index.js +1 -0
  443. package/lib/rbac/hooks.d.ts +39 -0
  444. package/lib/rbac/hooks.js +51 -0
  445. package/lib/rbac/index.d.ts +8 -0
  446. package/lib/rbac/index.js +11 -0
  447. package/lib/rbac/store.d.ts +24 -0
  448. package/lib/rbac/store.js +37 -0
  449. package/lib/rbac/types.d.ts +39 -0
  450. package/lib/rbac/types.js +4 -0
  451. package/lib/rbac/utils.d.ts +44 -0
  452. package/lib/rbac/utils.js +117 -0
  453. package/lib/shared/constants/index.d.ts +2 -0
  454. package/lib/shared/constants/index.js +2 -0
  455. package/lib/shared/hooks/index.d.ts +4 -0
  456. package/lib/shared/hooks/index.js +4 -0
  457. package/lib/shared/hooks/useAnyDrawerOpen.d.ts +4 -0
  458. package/lib/shared/hooks/useAnyDrawerOpen.js +18 -0
  459. package/lib/shared/hooks/useContainerWidth.d.ts +2 -0
  460. package/lib/shared/hooks/useContainerWidth.js +18 -0
  461. package/lib/shared/hooks/useImageUpload.d.ts +15 -0
  462. package/lib/shared/hooks/useImageUpload.js +66 -0
  463. package/lib/shared/hooks/useMediaQueries.d.ts +5 -0
  464. package/lib/shared/hooks/useMediaQueries.js +35 -0
  465. package/lib/shared/hooks/usePagamioTable.d.ts +158 -0
  466. package/lib/shared/hooks/usePagamioTable.js +475 -0
  467. package/lib/shared/hooks/useSessionTimer.d.ts +33 -0
  468. package/lib/shared/hooks/useSessionTimer.js +96 -0
  469. package/lib/shared/index.d.ts +4 -0
  470. package/lib/shared/index.js +4 -0
  471. package/lib/shared/types/index.d.ts +1 -0
  472. package/lib/shared/types/index.js +1 -0
  473. package/lib/shared/url/index.d.ts +9 -0
  474. package/lib/shared/url/index.js +20 -0
  475. package/lib/shared/utils/filterUtils.d.ts +5 -0
  476. package/lib/shared/utils/filterUtils.js +31 -0
  477. package/lib/shared/utils/functionHelper.d.ts +27 -0
  478. package/lib/shared/utils/functionHelper.js +124 -0
  479. package/lib/shared/utils/index.d.ts +2 -0
  480. package/lib/shared/utils/index.js +2 -0
  481. package/lib/shared/utils/localStorage.d.ts +53 -0
  482. package/lib/shared/utils/localStorage.js +139 -0
  483. package/lib/styles.css +6247 -0
  484. package/lib/translations/components/LocaleSwitcher.d.ts +7 -0
  485. package/lib/translations/components/LocaleSwitcher.js +18 -0
  486. package/lib/translations/components/index.d.ts +1 -0
  487. package/lib/translations/components/index.js +1 -0
  488. package/lib/translations/context/TranslationContext.d.ts +5 -0
  489. package/lib/translations/context/TranslationContext.js +151 -0
  490. package/lib/translations/context/index.d.ts +1 -0
  491. package/lib/translations/context/index.js +1 -0
  492. package/lib/translations/hooks/index.d.ts +2 -0
  493. package/lib/translations/hooks/index.js +2 -0
  494. package/lib/translations/hooks/useLibTranslations.d.ts +7 -0
  495. package/lib/translations/hooks/useLibTranslations.js +46 -0
  496. package/lib/translations/hooks/useTranslation.d.ts +7 -0
  497. package/lib/translations/hooks/useTranslation.js +11 -0
  498. package/lib/translations/index.d.ts +91 -0
  499. package/lib/translations/index.js +11 -0
  500. package/lib/translations/locales/en.json +21 -0
  501. package/lib/translations/locales/es.json +21 -0
  502. package/lib/translations/locales/fr.json +21 -0
  503. package/lib/translations/locales/pt.json +21 -0
  504. package/lib/translations/types/index.d.ts +24 -0
  505. package/lib/translations/types/index.js +1 -0
  506. package/lib/translations/utils/index.d.ts +6 -0
  507. package/lib/translations/utils/index.js +25 -0
  508. package/package.json +9 -1
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ interface LocaleSwitcherProps {
3
+ className?: string;
4
+ localeNames?: Record<string, string>;
5
+ }
6
+ export declare const LocaleSwitcher: React.FC<LocaleSwitcherProps>;
7
+ export {};
@@ -0,0 +1,18 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Dropdown } from 'flowbite-react';
3
+ import { useTranslation } from '../hooks';
4
+ export const LocaleSwitcher = ({ className, localeNames = {
5
+ en: 'English',
6
+ es: 'Español',
7
+ fr: 'Français',
8
+ pt: 'Português',
9
+ }, }) => {
10
+ const { locale, setLocale, availableLocales } = useTranslation();
11
+ const options = availableLocales
12
+ .filter((code) => localeNames[code])
13
+ .map((code) => ({
14
+ value: code,
15
+ label: localeNames[code] ?? code,
16
+ }));
17
+ return (_jsx(Dropdown, { style: { backgroundColor: 'white', color: 'white' }, label: localeNames[locale] ?? locale, className: `min-w-[120px] bg-white text-black z-[100] text-sm ${className ?? ''}`, inline: true, children: options.map((option) => (_jsx(Dropdown.Item, { onClick: () => setLocale(option.value), children: option.label }, option.value))) }));
18
+ };
@@ -0,0 +1 @@
1
+ export * from './LocaleSwitcher';
@@ -0,0 +1 @@
1
+ export * from './LocaleSwitcher';
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import type { TranslationContextType, TranslationProviderProps } from '../types';
3
+ export declare const TranslationContext: React.Context<TranslationContextType>;
4
+ export declare const TranslationProvider: React.FC<TranslationProviderProps>;
5
+ export declare const useTranslationContext: () => TranslationContextType;
@@ -0,0 +1,151 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React, { createContext, useContext, useEffect, useState } from 'react';
3
+ import { loadTranslations } from '../utils';
4
+ const DEFAULT_LOCALE = 'en';
5
+ const LOCALE_STORAGE_KEY = 'pagamio-locale';
6
+ const defaultContextValue = {
7
+ locale: DEFAULT_LOCALE,
8
+ setLocale: () => { },
9
+ t: (key, defaultValue, variables) => defaultValue ?? key,
10
+ isLoading: true,
11
+ availableLocales: [DEFAULT_LOCALE],
12
+ };
13
+ export const TranslationContext = createContext(defaultContextValue);
14
+ export const TranslationProvider = ({ children, defaultLocale = DEFAULT_LOCALE, localeData, loadPath, }) => {
15
+ // Get initial locale from localStorage or use browser's language or fallback to default
16
+ const getInitialLocale = () => {
17
+ if (typeof window === 'undefined')
18
+ return defaultLocale;
19
+ try {
20
+ const savedLocale = localStorage.getItem(LOCALE_STORAGE_KEY);
21
+ if (savedLocale)
22
+ return savedLocale;
23
+ // Try to use browser language as fallback
24
+ const browserLang = navigator.language.split('-')[0];
25
+ return browserLang || defaultLocale;
26
+ }
27
+ catch (e) {
28
+ // In case localStorage is not available (e.g., incognito mode)
29
+ console.log('Failed to access localStorage:', e);
30
+ return defaultLocale;
31
+ }
32
+ };
33
+ const [localeState, setLocaleState] = useState(getInitialLocale);
34
+ const [translations, setTranslations] = useState({});
35
+ const [isLoading, setIsLoading] = useState(true);
36
+ const [availableLocales, setAvailableLocales] = useState([defaultLocale]);
37
+ // Custom setLocale function that also updates localStorage
38
+ const setLocale = (newLocale) => {
39
+ try {
40
+ localStorage.setItem(LOCALE_STORAGE_KEY, newLocale);
41
+ }
42
+ catch (e) {
43
+ console.warn('Failed to store locale preference:', e);
44
+ }
45
+ setLocaleState(newLocale);
46
+ };
47
+ useEffect(() => {
48
+ // If locale data is provided directly, use it
49
+ if (localeData) {
50
+ const translationsMap = localeData.reduce((acc, { locale, messages }) => {
51
+ acc[locale] = messages;
52
+ return acc;
53
+ }, {});
54
+ setTranslations(translationsMap);
55
+ setAvailableLocales(localeData.map((data) => data.locale));
56
+ setIsLoading(false);
57
+ }
58
+ // Otherwise load from file path if provided
59
+ else if (loadPath) {
60
+ setIsLoading(true);
61
+ loadTranslations(localeState, loadPath)
62
+ .then(({ messages, availableLocales }) => {
63
+ setTranslations((prevTranslations) => ({
64
+ ...prevTranslations,
65
+ [localeState]: messages,
66
+ }));
67
+ setAvailableLocales(availableLocales);
68
+ setIsLoading(false);
69
+ })
70
+ .catch((error) => {
71
+ console.error('Failed to load translations:', error);
72
+ setIsLoading(false);
73
+ });
74
+ }
75
+ else {
76
+ setIsLoading(false);
77
+ }
78
+ }, [localeData, loadPath]);
79
+ useEffect(() => {
80
+ if (localeData && localeState !== defaultLocale) {
81
+ // Make sure we have the translations for the current locale loaded
82
+ const localeExists = localeData.some((data) => data.locale === localeState);
83
+ if (localeExists && !translations[localeState]) {
84
+ const localeMessages = localeData.find((data) => data.locale === localeState)?.messages;
85
+ if (localeMessages) {
86
+ setTranslations((prev) => ({
87
+ ...prev,
88
+ [localeState]: localeMessages,
89
+ }));
90
+ }
91
+ }
92
+ }
93
+ }, [localeState, localeData, translations]);
94
+ // When locale changes, load translations if they're not already loaded
95
+ useEffect(() => {
96
+ if (!translations[localeState] && loadPath) {
97
+ setIsLoading(true);
98
+ loadTranslations(localeState, loadPath)
99
+ .then(({ messages }) => {
100
+ setTranslations((prevTranslations) => ({
101
+ ...prevTranslations,
102
+ [localeState]: messages,
103
+ }));
104
+ setIsLoading(false);
105
+ })
106
+ .catch((error) => {
107
+ console.error('Failed to load translations:', error);
108
+ setIsLoading(false);
109
+ });
110
+ }
111
+ }, [localeState, loadPath, translations]);
112
+ const getNestedTranslation = (obj, path) => {
113
+ let current = obj;
114
+ for (const segment of path) {
115
+ if (current[segment] === undefined) {
116
+ return undefined;
117
+ }
118
+ current = current[segment];
119
+ }
120
+ return typeof current === 'string' ? current : undefined;
121
+ };
122
+ const t = (key, defaultValue, variables) => {
123
+ const currentTranslations = translations[localeState] ?? {};
124
+ const keyPath = key.split('.');
125
+ let result = getNestedTranslation(currentTranslations, keyPath);
126
+ if (!result) {
127
+ if (defaultValue)
128
+ result = defaultValue;
129
+ else {
130
+ console.warn(`Translation key not found: ${key}`);
131
+ result = key;
132
+ }
133
+ }
134
+ // Replace variables in the string if provided
135
+ if (variables && result) {
136
+ Object.entries(variables).forEach(([varName, value]) => {
137
+ result = result.replace(new RegExp(`{${varName}}`, 'g'), String(value));
138
+ });
139
+ }
140
+ return result;
141
+ };
142
+ const contextValue = React.useMemo(() => ({
143
+ locale: localeState,
144
+ setLocale,
145
+ t,
146
+ isLoading,
147
+ availableLocales,
148
+ }), [localeState, t, isLoading, availableLocales]);
149
+ return _jsx(TranslationContext.Provider, { value: contextValue, children: children });
150
+ };
151
+ export const useTranslationContext = () => useContext(TranslationContext);
@@ -0,0 +1 @@
1
+ export * from './TranslationContext';
@@ -0,0 +1 @@
1
+ export * from './TranslationContext';
@@ -0,0 +1,2 @@
1
+ export * from './useTranslation';
2
+ export * from './useLibTranslations';
@@ -0,0 +1,2 @@
1
+ export * from './useTranslation';
2
+ export * from './useLibTranslations';
@@ -0,0 +1,7 @@
1
+ import type { LibTranslationKey } from '../types';
2
+ /**
3
+ * Hook for accessing library-specific translations
4
+ */
5
+ export declare const useLibTranslations: () => {
6
+ tLib: (key: LibTranslationKey, defaultValue?: string, variables?: Record<string, any>) => string;
7
+ };
@@ -0,0 +1,46 @@
1
+ import { useEffect, useState } from 'react';
2
+ import { useTranslation } from './useTranslation';
3
+ // Default English translations as fallback
4
+ const defaultTranslations = {
5
+ changePassword: 'Change Password',
6
+ signOut: 'Sign Out',
7
+ search: 'Search...',
8
+ cancel: 'Cancel',
9
+ submit: 'Submit',
10
+ save: 'Save',
11
+ };
12
+ /**
13
+ * Hook for accessing library-specific translations
14
+ */
15
+ export const useLibTranslations = () => {
16
+ const { t, locale } = useTranslation();
17
+ const [libTranslations, setLibTranslations] = useState(defaultTranslations);
18
+ // Load library translations based on current locale
19
+ useEffect(() => {
20
+ // Dynamic import of library locale files based on current language
21
+ import(`../locales/${locale}.json`)
22
+ .then((translations) => {
23
+ setLibTranslations((prev) => ({
24
+ ...prev,
25
+ ...translations.default, // Extract keys that match LibTranslationKey
26
+ }));
27
+ })
28
+ .catch((error) => {
29
+ console.warn(`Failed to load library translations for ${locale}, using fallbacks`, error);
30
+ });
31
+ }, [locale]);
32
+ const tLib = (key, defaultValue, variables) => {
33
+ // First check in library translations
34
+ if (libTranslations[key]) {
35
+ return libTranslations[key];
36
+ }
37
+ // Fall back to default library translations
38
+ if (defaultTranslations[key]) {
39
+ return defaultTranslations[key];
40
+ }
41
+ // As a last resort, try the general translation system
42
+ // Return the translated text or key as final fallback
43
+ return t(key, defaultValue, variables);
44
+ };
45
+ return { tLib };
46
+ };
@@ -0,0 +1,7 @@
1
+ export declare const useTranslation: () => {
2
+ t: (key: string, defaultValue?: string, variables?: Record<string, any>) => string;
3
+ locale: string;
4
+ setLocale: (locale: string) => void;
5
+ isLoading: boolean;
6
+ availableLocales: string[];
7
+ };
@@ -0,0 +1,11 @@
1
+ import { useTranslationContext } from '../context';
2
+ export const useTranslation = () => {
3
+ const { t, locale, setLocale, isLoading, availableLocales } = useTranslationContext();
4
+ return {
5
+ t,
6
+ locale,
7
+ setLocale,
8
+ isLoading,
9
+ availableLocales,
10
+ };
11
+ };
@@ -0,0 +1,91 @@
1
+ export * from './context';
2
+ export * from './hooks';
3
+ export * from './utils';
4
+ export * from './types';
5
+ export * from './components';
6
+ export declare const locales: {
7
+ en: {
8
+ sidebar: {
9
+ toggle: string;
10
+ mobileAriaLabel: string;
11
+ searchPlaceholder: string;
12
+ desktopAriaLabel: string;
13
+ };
14
+ theme: {
15
+ toggleLight: string;
16
+ toggleDark: string;
17
+ };
18
+ userProfile: string;
19
+ changePassword: string;
20
+ signOut: string;
21
+ sessionExpiryModal: {
22
+ title: string;
23
+ message: string;
24
+ dismiss: string;
25
+ renew: string;
26
+ };
27
+ };
28
+ es: {
29
+ sidebar: {
30
+ toggle: string;
31
+ mobileAriaLabel: string;
32
+ searchPlaceholder: string;
33
+ desktopAriaLabel: string;
34
+ };
35
+ theme: {
36
+ toggleLight: string;
37
+ toggleDark: string;
38
+ };
39
+ userProfile: string;
40
+ changePassword: string;
41
+ signOut: string;
42
+ sessionExpiryModal: {
43
+ title: string;
44
+ message: string;
45
+ dismiss: string;
46
+ renew: string;
47
+ };
48
+ };
49
+ fr: {
50
+ sidebar: {
51
+ toggle: string;
52
+ mobileAriaLabel: string;
53
+ searchPlaceholder: string;
54
+ desktopAriaLabel: string;
55
+ };
56
+ theme: {
57
+ toggleLight: string;
58
+ toggleDark: string;
59
+ };
60
+ userProfile: string;
61
+ changePassword: string;
62
+ signOut: string;
63
+ sessionExpiryModal: {
64
+ title: string;
65
+ message: string;
66
+ dismiss: string;
67
+ renew: string;
68
+ };
69
+ };
70
+ pt: {
71
+ sidebar: {
72
+ toggle: string;
73
+ mobileAriaLabel: string;
74
+ searchPlaceholder: string;
75
+ desktopAriaLabel: string;
76
+ };
77
+ theme: {
78
+ toggleLight: string;
79
+ toggleDark: string;
80
+ };
81
+ userProfile: string;
82
+ changePassword: string;
83
+ signOut: string;
84
+ sessionExpiryModal: {
85
+ title: string;
86
+ message: string;
87
+ dismiss: string;
88
+ renew: string;
89
+ };
90
+ };
91
+ };
@@ -0,0 +1,11 @@
1
+ // Export locale files
2
+ import en from './locales/en.json';
3
+ import es from './locales/es.json';
4
+ import fr from './locales/fr.json';
5
+ import pt from './locales/pt.json';
6
+ export * from './context';
7
+ export * from './hooks';
8
+ export * from './utils';
9
+ export * from './types';
10
+ export * from './components';
11
+ export const locales = { en, es, fr, pt };
@@ -0,0 +1,21 @@
1
+ {
2
+ "sidebar": {
3
+ "toggle": "Toggle sidebar",
4
+ "mobileAriaLabel": "Sidebar with multi-level dropdown example",
5
+ "searchPlaceholder": "Search",
6
+ "desktopAriaLabel": "Sidebar with multi-level dropdown example"
7
+ },
8
+ "theme": {
9
+ "toggleLight": "Toggle light mode",
10
+ "toggleDark": "Toggle dark mode"
11
+ },
12
+ "userProfile": "User Profile",
13
+ "changePassword": "Change Password",
14
+ "signOut": "Sign Out",
15
+ "sessionExpiryModal": {
16
+ "title": "Session Expiring Soon",
17
+ "message": "Your session will expire in {seconds} seconds. Please save your work or renew your session.",
18
+ "dismiss": "Dismiss",
19
+ "renew": "Renew Session"
20
+ }
21
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "sidebar": {
3
+ "toggle": "Alternar barra lateral",
4
+ "mobileAriaLabel": "Barra lateral con ejemplo de menú desplegable multinivel",
5
+ "searchPlaceholder": "Buscar",
6
+ "desktopAriaLabel": "Barra lateral con ejemplo de menú desplegable multinivel"
7
+ },
8
+ "theme": {
9
+ "toggleLight": "Cambiar a modo claro",
10
+ "toggleDark": "Cambiar a modo oscuro"
11
+ },
12
+ "userProfile": "Perfil de Usuario",
13
+ "changePassword": "Cambiar Contraseña",
14
+ "signOut": "Cerrar Sesión",
15
+ "sessionExpiryModal": {
16
+ "title": "Sesión a punto de expirar",
17
+ "message": "Tu sesión expirará en {seconds} segundos. Por favor, guarda tu trabajo o renueva tu sesión.",
18
+ "dismiss": "Descartar",
19
+ "renew": "Renovar Sesión"
20
+ }
21
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "sidebar": {
3
+ "toggle": "Alternar barra lateral",
4
+ "mobileAriaLabel": "Barra lateral com exemplo de menu suspenso multinível",
5
+ "searchPlaceholder": "Buscar",
6
+ "desktopAriaLabel": "Barra lateral com exemplo de menu suspenso multinível"
7
+ },
8
+ "theme": {
9
+ "toggleLight": "Ativar modo claro",
10
+ "toggleDark": "Ativar modo escuro"
11
+ },
12
+ "userProfile": "Perfil do Usuário",
13
+ "changePassword": "Alterar Senha",
14
+ "signOut": "Sair",
15
+ "sessionExpiryModal": {
16
+ "title": "Sessão Expirando em Breve",
17
+ "message": "Sua sessão expirará em {seconds} segundos. Por favor, salve seu trabalho ou renove sua sessão.",
18
+ "dismiss": "Dispensar",
19
+ "renew": "Renovar Sessão"
20
+ }
21
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "sidebar": {
3
+ "toggle": "Toggle sidebar",
4
+ "mobileAriaLabel": "Sidebar with multi-level dropdown example",
5
+ "searchPlaceholder": "Search",
6
+ "desktopAriaLabel": "Sidebar with multi-level dropdown example"
7
+ },
8
+ "theme": {
9
+ "toggleLight": "Toggle light mode",
10
+ "toggleDark": "Toggle dark mode"
11
+ },
12
+ "userProfile": "User Profile",
13
+ "changePassword": "Change Password",
14
+ "signOut": "Sign Out",
15
+ "sessionExpiryModal": {
16
+ "title": "Session Expiring Soon",
17
+ "message": "Your session will expire in {seconds} seconds. Please save your work or renew your session.",
18
+ "dismiss": "Dismiss",
19
+ "renew": "Renew Session"
20
+ }
21
+ }
@@ -0,0 +1,24 @@
1
+ import type React from 'react';
2
+ export interface TranslationDictionary {
3
+ [key: string]: string | TranslationDictionary;
4
+ }
5
+ export interface LocaleData {
6
+ locale: string;
7
+ messages: TranslationDictionary;
8
+ }
9
+ export interface TranslationContextType {
10
+ locale: string;
11
+ setLocale: (locale: string) => void;
12
+ t: (key: string, defaultValue?: string, variables?: Record<string, any>) => string;
13
+ isLoading: boolean;
14
+ availableLocales: string[];
15
+ }
16
+ export interface TranslationProviderProps {
17
+ children: React.ReactNode;
18
+ defaultLocale?: string;
19
+ localeData?: LocaleData[];
20
+ loadPath?: string;
21
+ }
22
+ export type LibTranslationKey = 'changePassword' | 'signOut' | 'search' | 'cancel' | 'submit' | 'save' | (string & {
23
+ __brand?: 'LibTranslationKey';
24
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,6 @@
1
+ import type { TranslationDictionary } from '../types';
2
+ export declare const loadTranslations: (locale: string, loadPath: string) => Promise<{
3
+ messages: TranslationDictionary;
4
+ availableLocales: string[];
5
+ }>;
6
+ export declare const detectBrowserLocale: () => string;
@@ -0,0 +1,25 @@
1
+ export const loadTranslations = async (locale, loadPath) => {
2
+ try {
3
+ // Replace this with your actual loading logic
4
+ const response = await fetch(`${loadPath}/${locale}.json`);
5
+ if (!response.ok) {
6
+ throw new Error(`Failed to load translations for locale ${locale}`);
7
+ }
8
+ const messages = await response.json();
9
+ // Get available locales by listing directory or from an endpoint
10
+ // This is just a placeholder - implement based on your needs
11
+ const localesResponse = await fetch(`${loadPath}/locales.json`);
12
+ const availableLocales = localesResponse.ok ? await localesResponse.json() : [locale];
13
+ return { messages, availableLocales };
14
+ }
15
+ catch (error) {
16
+ console.error(`Error loading translations for ${locale}:`, error);
17
+ return { messages: {}, availableLocales: [locale] };
18
+ }
19
+ };
20
+ export const detectBrowserLocale = () => {
21
+ if (typeof window === 'undefined') {
22
+ return 'en'; // Default for SSR
23
+ }
24
+ return (navigator.language ?? navigator.browserLanguage ?? navigator.userLanguage ?? 'en').split('-')[0];
25
+ };
package/package.json CHANGED
@@ -1,7 +1,15 @@
1
1
  {
2
2
  "name": "@pagamio/frontend-commons-lib",
3
3
  "description": "Pagamio library for Frontend reusable components like the form engine and table container",
4
- "version": "0.8.175",
4
+ "version": "0.8.183",
5
+ "publishConfig": {
6
+ "access": "public",
7
+ "provenance": true
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/PAGAMIO/pagamio-frontend-commons-lib.git"
12
+ },
5
13
  "private": false,
6
14
  "main": "lib/index.js",
7
15
  "module": "lib/index.js",