@axelor/aos-mobile-core 0.0.1

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 (361) hide show
  1. package/README.md +310 -0
  2. package/lib/api/attached-files-api.d.ts +8 -0
  3. package/lib/api/attached-files-api.js +51 -0
  4. package/lib/api/attached-files-api.js.map +1 -0
  5. package/lib/api/login-api.d.ts +5 -0
  6. package/lib/api/login-api.js +41 -0
  7. package/lib/api/login-api.js.map +1 -0
  8. package/lib/api/mail-message-api.d.ts +43 -0
  9. package/lib/api/mail-message-api.js +114 -0
  10. package/lib/api/mail-message-api.js.map +1 -0
  11. package/lib/api/menu-config-api.d.ts +5 -0
  12. package/lib/api/menu-config-api.js +68 -0
  13. package/lib/api/menu-config-api.js.map +1 -0
  14. package/lib/api/metafile-api.d.ts +6 -0
  15. package/lib/api/metafile-api.js +50 -0
  16. package/lib/api/metafile-api.js.map +1 -0
  17. package/lib/api/mobile-config-api.d.ts +1 -0
  18. package/lib/api/mobile-config-api.js +31 -0
  19. package/lib/api/mobile-config-api.js.map +1 -0
  20. package/lib/api/net-info-utils.d.ts +5 -0
  21. package/lib/api/net-info-utils.js +29 -0
  22. package/lib/api/net-info-utils.js.map +1 -0
  23. package/lib/api/traceback-api.d.ts +7 -0
  24. package/lib/api/traceback-api.js +35 -0
  25. package/lib/api/traceback-api.js.map +1 -0
  26. package/lib/api/utils.d.ts +25 -0
  27. package/lib/api/utils.js +92 -0
  28. package/lib/api/utils.js.map +1 -0
  29. package/lib/app/Application.d.ts +15 -0
  30. package/lib/app/Application.js +29 -0
  31. package/lib/app/Application.js.map +1 -0
  32. package/lib/app/ContextedApplication.d.ts +9 -0
  33. package/lib/app/ContextedApplication.js +80 -0
  34. package/lib/app/ContextedApplication.js.map +1 -0
  35. package/lib/app/ContextsProvider.d.ts +14 -0
  36. package/lib/app/ContextsProvider.js +63 -0
  37. package/lib/app/ContextsProvider.js.map +1 -0
  38. package/lib/app/Module.d.ts +26 -0
  39. package/lib/app/Module.js +19 -0
  40. package/lib/app/Module.js.map +1 -0
  41. package/lib/app/RootNavigator.d.ts +7 -0
  42. package/lib/app/RootNavigator.js +69 -0
  43. package/lib/app/RootNavigator.js.map +1 -0
  44. package/lib/app/index.d.ts +5 -0
  45. package/lib/app/index.js +22 -0
  46. package/lib/app/index.js.map +1 -0
  47. package/lib/assets/Logo_Axelor.png +0 -0
  48. package/lib/auth/api/company-api.d.ts +1 -0
  49. package/lib/auth/api/company-api.js +31 -0
  50. package/lib/auth/api/company-api.js.map +1 -0
  51. package/lib/auth/api/config-api.d.ts +2 -0
  52. package/lib/auth/api/config-api.js +45 -0
  53. package/lib/auth/api/config-api.js.map +1 -0
  54. package/lib/auth/api/index.d.ts +4 -0
  55. package/lib/auth/api/index.js +22 -0
  56. package/lib/auth/api/index.js.map +1 -0
  57. package/lib/auth/api/language-api.d.ts +1 -0
  58. package/lib/auth/api/language-api.js +24 -0
  59. package/lib/auth/api/language-api.js.map +1 -0
  60. package/lib/auth/api/user-api.d.ts +2 -0
  61. package/lib/auth/api/user-api.js +30 -0
  62. package/lib/auth/api/user-api.js.map +1 -0
  63. package/lib/auth/features/asyncFunctionsIndex.d.ts +4 -0
  64. package/lib/auth/features/asyncFunctionsIndex.js +22 -0
  65. package/lib/auth/features/asyncFunctionsIndex.js.map +1 -0
  66. package/lib/auth/features/companySlice.d.ts +14 -0
  67. package/lib/auth/features/companySlice.js +48 -0
  68. package/lib/auth/features/companySlice.js.map +1 -0
  69. package/lib/auth/features/configSlice.d.ts +37 -0
  70. package/lib/auth/features/configSlice.js +82 -0
  71. package/lib/auth/features/configSlice.js.map +1 -0
  72. package/lib/auth/features/index.d.ts +4 -0
  73. package/lib/auth/features/index.js +22 -0
  74. package/lib/auth/features/index.js.map +1 -0
  75. package/lib/auth/features/languageSlice.d.ts +14 -0
  76. package/lib/auth/features/languageSlice.js +48 -0
  77. package/lib/auth/features/languageSlice.js.map +1 -0
  78. package/lib/auth/features/userSlice.d.ts +27 -0
  79. package/lib/auth/features/userSlice.js +83 -0
  80. package/lib/auth/features/userSlice.js.map +1 -0
  81. package/lib/auth/i18n/en.json +23 -0
  82. package/lib/auth/i18n/fr.json +23 -0
  83. package/lib/auth/index.d.ts +5 -0
  84. package/lib/auth/index.js +55 -0
  85. package/lib/auth/index.js.map +1 -0
  86. package/lib/auth/screens/SettingsScreen.d.ts +4 -0
  87. package/lib/auth/screens/SettingsScreen.js +79 -0
  88. package/lib/auth/screens/SettingsScreen.js.map +1 -0
  89. package/lib/auth/screens/UserScreen.d.ts +5 -0
  90. package/lib/auth/screens/UserScreen.js +116 -0
  91. package/lib/auth/screens/UserScreen.js.map +1 -0
  92. package/lib/auth/screens/index.d.ts +2 -0
  93. package/lib/auth/screens/index.js +20 -0
  94. package/lib/auth/screens/index.js.map +1 -0
  95. package/lib/axios/AxiosApi.d.ts +12 -0
  96. package/lib/axios/AxiosApi.js +32 -0
  97. package/lib/axios/AxiosApi.js.map +1 -0
  98. package/lib/components/external/Camera/Camera.d.ts +2 -0
  99. package/lib/components/external/Camera/Camera.js +148 -0
  100. package/lib/components/external/Camera/Camera.js.map +1 -0
  101. package/lib/components/external/Camera/CaptureButton.d.ts +10 -0
  102. package/lib/components/external/Camera/CaptureButton.js +118 -0
  103. package/lib/components/external/Camera/CaptureButton.js.map +1 -0
  104. package/lib/components/external/CameraScanner/CameraScanner.d.ts +10 -0
  105. package/lib/components/external/CameraScanner/CameraScanner.js +87 -0
  106. package/lib/components/external/CameraScanner/CameraScanner.js.map +1 -0
  107. package/lib/components/external/PlanningView/PlanningView.d.ts +11 -0
  108. package/lib/components/external/PlanningView/PlanningView.js +123 -0
  109. package/lib/components/external/PlanningView/PlanningView.js.map +1 -0
  110. package/lib/components/external/PlanningView/agenda.helpers.d.ts +10 -0
  111. package/lib/components/external/PlanningView/agenda.helpers.js +90 -0
  112. package/lib/components/external/PlanningView/agenda.helpers.js.map +1 -0
  113. package/lib/components/external/Scanner/Scanner.d.ts +2 -0
  114. package/lib/components/external/Scanner/Scanner.js +67 -0
  115. package/lib/components/external/Scanner/Scanner.js.map +1 -0
  116. package/lib/components/external/Stopwatch/Stopwatch.d.ts +18 -0
  117. package/lib/components/external/Stopwatch/Stopwatch.js +114 -0
  118. package/lib/components/external/Stopwatch/Stopwatch.js.map +1 -0
  119. package/lib/components/external/Timer/Timer.d.ts +9 -0
  120. package/lib/components/external/Timer/Timer.js +60 -0
  121. package/lib/components/external/Timer/Timer.js.map +1 -0
  122. package/lib/components/external/index.d.ts +6 -0
  123. package/lib/components/external/index.js +24 -0
  124. package/lib/components/external/index.js.map +1 -0
  125. package/lib/components/index.d.ts +4 -0
  126. package/lib/components/index.js +22 -0
  127. package/lib/components/index.js.map +1 -0
  128. package/lib/components/molecules/ErrorText/ErrorText.d.ts +4 -0
  129. package/lib/components/molecules/ErrorText/ErrorText.js +31 -0
  130. package/lib/components/molecules/ErrorText/ErrorText.js.map +1 -0
  131. package/lib/components/molecules/HeaderOptionsMenuItem/HeaderOptionMenuItem.d.ts +9 -0
  132. package/lib/components/molecules/HeaderOptionsMenuItem/HeaderOptionMenuItem.js +56 -0
  133. package/lib/components/molecules/HeaderOptionsMenuItem/HeaderOptionMenuItem.js.map +1 -0
  134. package/lib/components/molecules/IconSettings/IconSettings.d.ts +4 -0
  135. package/lib/components/molecules/IconSettings/IconSettings.js +31 -0
  136. package/lib/components/molecules/IconSettings/IconSettings.js.map +1 -0
  137. package/lib/components/molecules/InputBarCodeCard/InputBarCodeCard.d.ts +7 -0
  138. package/lib/components/molecules/InputBarCodeCard/InputBarCodeCard.js +84 -0
  139. package/lib/components/molecules/InputBarCodeCard/InputBarCodeCard.js.map +1 -0
  140. package/lib/components/molecules/LoginButton/LoginButton.d.ts +4 -0
  141. package/lib/components/molecules/LoginButton/LoginButton.js +40 -0
  142. package/lib/components/molecules/LoginButton/LoginButton.js.map +1 -0
  143. package/lib/components/molecules/MailMessageReadIcon/MailMessageReadIcon.d.ts +7 -0
  144. package/lib/components/molecules/MailMessageReadIcon/MailMessageReadIcon.js +55 -0
  145. package/lib/components/molecules/MailMessageReadIcon/MailMessageReadIcon.js.map +1 -0
  146. package/lib/components/molecules/TrackItem/TrackItem.d.ts +9 -0
  147. package/lib/components/molecules/TrackItem/TrackItem.js +65 -0
  148. package/lib/components/molecules/TrackItem/TrackItem.js.map +1 -0
  149. package/lib/components/molecules/index.d.ts +7 -0
  150. package/lib/components/molecules/index.js +25 -0
  151. package/lib/components/molecules/index.js.map +1 -0
  152. package/lib/components/organisms/AOSImage/AOSImage.d.ts +15 -0
  153. package/lib/components/organisms/AOSImage/AOSImage.js +37 -0
  154. package/lib/components/organisms/AOSImage/AOSImage.js.map +1 -0
  155. package/lib/components/organisms/AOSImageBubble/AOSImageBubble.d.ts +9 -0
  156. package/lib/components/organisms/AOSImageBubble/AOSImageBubble.js +30 -0
  157. package/lib/components/organisms/AOSImageBubble/AOSImageBubble.js.map +1 -0
  158. package/lib/components/organisms/HeaderOptionsMenu/HeaderOptionsMenu.d.ts +9 -0
  159. package/lib/components/organisms/HeaderOptionsMenu/HeaderOptionsMenu.js +68 -0
  160. package/lib/components/organisms/HeaderOptionsMenu/HeaderOptionsMenu.js.map +1 -0
  161. package/lib/components/organisms/LogoImage/LogoImage.d.ts +4 -0
  162. package/lib/components/organisms/LogoImage/LogoImage.js +52 -0
  163. package/lib/components/organisms/LogoImage/LogoImage.js.map +1 -0
  164. package/lib/components/organisms/MailMessageCard/MailMessageCard.d.ts +17 -0
  165. package/lib/components/organisms/MailMessageCard/MailMessageCard.js +79 -0
  166. package/lib/components/organisms/MailMessageCard/MailMessageCard.js.map +1 -0
  167. package/lib/components/organisms/MailMessageCommentCard/MailMessageCommentCard.d.ts +12 -0
  168. package/lib/components/organisms/MailMessageCommentCard/MailMessageCommentCard.js +139 -0
  169. package/lib/components/organisms/MailMessageCommentCard/MailMessageCommentCard.js.map +1 -0
  170. package/lib/components/organisms/MailMessageNotificationCard/MailMessageNotificationCard.d.ts +15 -0
  171. package/lib/components/organisms/MailMessageNotificationCard/MailMessageNotificationCard.js +79 -0
  172. package/lib/components/organisms/MailMessageNotificationCard/MailMessageNotificationCard.js.map +1 -0
  173. package/lib/components/organisms/PasswordInput/PasswordInput.d.ts +7 -0
  174. package/lib/components/organisms/PasswordInput/PasswordInput.js +36 -0
  175. package/lib/components/organisms/PasswordInput/PasswordInput.js.map +1 -0
  176. package/lib/components/organisms/ScannerAutocompleteSearch/ScannerAutocompleteSearch.d.ts +17 -0
  177. package/lib/components/organisms/ScannerAutocompleteSearch/ScannerAutocompleteSearch.js +68 -0
  178. package/lib/components/organisms/ScannerAutocompleteSearch/ScannerAutocompleteSearch.js.map +1 -0
  179. package/lib/components/organisms/UrlInput/UrlInput.d.ts +10 -0
  180. package/lib/components/organisms/UrlInput/UrlInput.js +38 -0
  181. package/lib/components/organisms/UrlInput/UrlInput.js.map +1 -0
  182. package/lib/components/organisms/UsernameInput/UsernameInput.d.ts +6 -0
  183. package/lib/components/organisms/UsernameInput/UsernameInput.js +33 -0
  184. package/lib/components/organisms/UsernameInput/UsernameInput.js.map +1 -0
  185. package/lib/components/organisms/index.d.ts +11 -0
  186. package/lib/components/organisms/index.js +29 -0
  187. package/lib/components/organisms/index.js.map +1 -0
  188. package/lib/components/templates/AttachedFilesView/AttachedFilesView.d.ts +10 -0
  189. package/lib/components/templates/AttachedFilesView/AttachedFilesView.js +87 -0
  190. package/lib/components/templates/AttachedFilesView/AttachedFilesView.js.map +1 -0
  191. package/lib/components/templates/MailMessageView/MailMessageView.d.ts +6 -0
  192. package/lib/components/templates/MailMessageView/MailMessageView.js +140 -0
  193. package/lib/components/templates/MailMessageView/MailMessageView.js.map +1 -0
  194. package/lib/components/templates/index.d.ts +2 -0
  195. package/lib/components/templates/index.js +20 -0
  196. package/lib/components/templates/index.js.map +1 -0
  197. package/lib/features/attachedFilesSlice.d.ts +35 -0
  198. package/lib/features/attachedFilesSlice.js +82 -0
  199. package/lib/features/attachedFilesSlice.js.map +1 -0
  200. package/lib/features/authSlice.d.ts +44 -0
  201. package/lib/features/authSlice.js +67 -0
  202. package/lib/features/authSlice.js.map +1 -0
  203. package/lib/features/cameraSlice.d.ts +14 -0
  204. package/lib/features/cameraSlice.js +52 -0
  205. package/lib/features/cameraSlice.js.map +1 -0
  206. package/lib/features/index.d.ts +8 -0
  207. package/lib/features/index.js +26 -0
  208. package/lib/features/index.js.map +1 -0
  209. package/lib/features/mailMessageSlice.d.ts +97 -0
  210. package/lib/features/mailMessageSlice.js +219 -0
  211. package/lib/features/mailMessageSlice.js.map +1 -0
  212. package/lib/features/menuConfigSlice.d.ts +14 -0
  213. package/lib/features/menuConfigSlice.js +48 -0
  214. package/lib/features/menuConfigSlice.js.map +1 -0
  215. package/lib/features/metafileSlice.d.ts +14 -0
  216. package/lib/features/metafileSlice.js +48 -0
  217. package/lib/features/metafileSlice.js.map +1 -0
  218. package/lib/features/mobileConfigSlice.d.ts +14 -0
  219. package/lib/features/mobileConfigSlice.js +52 -0
  220. package/lib/features/mobileConfigSlice.js.map +1 -0
  221. package/lib/features/scannerSlice.d.ts +14 -0
  222. package/lib/features/scannerSlice.js +52 -0
  223. package/lib/features/scannerSlice.js.map +1 -0
  224. package/lib/hooks/use-effect-debugger.d.ts +1 -0
  225. package/lib/hooks/use-effect-debugger.js +47 -0
  226. package/lib/hooks/use-effect-debugger.js.map +1 -0
  227. package/lib/i18n/api/translation.d.ts +2 -0
  228. package/lib/i18n/api/translation.js +38 -0
  229. package/lib/i18n/api/translation.js.map +1 -0
  230. package/lib/i18n/component/Translator.d.ts +6 -0
  231. package/lib/i18n/component/Translator.js +74 -0
  232. package/lib/i18n/component/Translator.js.map +1 -0
  233. package/lib/i18n/helpers/langages.d.ts +3 -0
  234. package/lib/i18n/helpers/langages.js +34 -0
  235. package/lib/i18n/helpers/langages.js.map +1 -0
  236. package/lib/i18n/helpers/translations.d.ts +1 -0
  237. package/lib/i18n/helpers/translations.js +24 -0
  238. package/lib/i18n/helpers/translations.js.map +1 -0
  239. package/lib/i18n/hooks/use-translator.d.ts +5 -0
  240. package/lib/i18n/hooks/use-translator.js +24 -0
  241. package/lib/i18n/hooks/use-translator.js.map +1 -0
  242. package/lib/i18n/i18n.d.ts +20 -0
  243. package/lib/i18n/i18n.js +53 -0
  244. package/lib/i18n/i18n.js.map +1 -0
  245. package/lib/i18n/index.d.ts +4 -0
  246. package/lib/i18n/index.js +22 -0
  247. package/lib/i18n/index.js.map +1 -0
  248. package/lib/i18n/translations/en.json +52 -0
  249. package/lib/i18n/translations/fr.json +52 -0
  250. package/lib/index.d.ts +18 -0
  251. package/lib/index.js +36 -0
  252. package/lib/index.js.map +1 -0
  253. package/lib/navigator/Navigator.d.ts +12 -0
  254. package/lib/navigator/Navigator.js +118 -0
  255. package/lib/navigator/Navigator.js.map +1 -0
  256. package/lib/navigator/drawer/AuthMenuIconButton.d.ts +6 -0
  257. package/lib/navigator/drawer/AuthMenuIconButton.js +29 -0
  258. package/lib/navigator/drawer/AuthMenuIconButton.js.map +1 -0
  259. package/lib/navigator/drawer/BackIcon.d.ts +4 -0
  260. package/lib/navigator/drawer/BackIcon.js +32 -0
  261. package/lib/navigator/drawer/BackIcon.js.map +1 -0
  262. package/lib/navigator/drawer/DrawerContent.d.ts +8 -0
  263. package/lib/navigator/drawer/DrawerContent.js +177 -0
  264. package/lib/navigator/drawer/DrawerContent.js.map +1 -0
  265. package/lib/navigator/drawer/DrawerToggleButton.d.ts +4 -0
  266. package/lib/navigator/drawer/DrawerToggleButton.js +32 -0
  267. package/lib/navigator/drawer/DrawerToggleButton.js.map +1 -0
  268. package/lib/navigator/drawer/Menu.d.ts +8 -0
  269. package/lib/navigator/drawer/Menu.js +91 -0
  270. package/lib/navigator/drawer/Menu.js.map +1 -0
  271. package/lib/navigator/drawer/MenuIconButton.d.ts +10 -0
  272. package/lib/navigator/drawer/MenuIconButton.js +64 -0
  273. package/lib/navigator/drawer/MenuIconButton.js.map +1 -0
  274. package/lib/navigator/drawer/MenuItem.d.ts +8 -0
  275. package/lib/navigator/drawer/MenuItem.js +71 -0
  276. package/lib/navigator/drawer/MenuItem.js.map +1 -0
  277. package/lib/navigator/menu.helper.d.ts +8 -0
  278. package/lib/navigator/menu.helper.js +50 -0
  279. package/lib/navigator/menu.helper.js.map +1 -0
  280. package/lib/navigator/module.helper.d.ts +7 -0
  281. package/lib/navigator/module.helper.js +95 -0
  282. package/lib/navigator/module.helper.js.map +1 -0
  283. package/lib/navigator/roles.helper.d.ts +4 -0
  284. package/lib/navigator/roles.helper.js +33 -0
  285. package/lib/navigator/roles.helper.js.map +1 -0
  286. package/lib/redux/hooks.d.ts +5 -0
  287. package/lib/redux/hooks.js +25 -0
  288. package/lib/redux/hooks.js.map +1 -0
  289. package/lib/redux/store.d.ts +1 -0
  290. package/lib/redux/store.js +28 -0
  291. package/lib/redux/store.js.map +1 -0
  292. package/lib/screens/AttachedFilesScreen.d.ts +5 -0
  293. package/lib/screens/AttachedFilesScreen.js +26 -0
  294. package/lib/screens/AttachedFilesScreen.js.map +1 -0
  295. package/lib/screens/ErrorScreen.d.ts +5 -0
  296. package/lib/screens/ErrorScreen.js +46 -0
  297. package/lib/screens/ErrorScreen.js.map +1 -0
  298. package/lib/screens/LoginScreen.d.ts +4 -0
  299. package/lib/screens/LoginScreen.js +115 -0
  300. package/lib/screens/LoginScreen.js.map +1 -0
  301. package/lib/screens/MailMessageScreen.d.ts +5 -0
  302. package/lib/screens/MailMessageScreen.js +25 -0
  303. package/lib/screens/MailMessageScreen.js.map +1 -0
  304. package/lib/storage/Storage.d.ts +17 -0
  305. package/lib/storage/Storage.js +53 -0
  306. package/lib/storage/Storage.js.map +1 -0
  307. package/lib/tools/ClipboardProvider.d.ts +7 -0
  308. package/lib/tools/ClipboardProvider.js +59 -0
  309. package/lib/tools/ClipboardProvider.js.map +1 -0
  310. package/lib/tools/FileViewer.d.ts +13 -0
  311. package/lib/tools/FileViewer.js +48 -0
  312. package/lib/tools/FileViewer.js.map +1 -0
  313. package/lib/tools/LinkingProvider.d.ts +17 -0
  314. package/lib/tools/LinkingProvider.js +94 -0
  315. package/lib/tools/LinkingProvider.js.map +1 -0
  316. package/lib/tools/index.d.ts +3 -0
  317. package/lib/tools/index.js +21 -0
  318. package/lib/tools/index.js.map +1 -0
  319. package/lib/tools/linking.helper.d.ts +25 -0
  320. package/lib/tools/linking.helper.js +70 -0
  321. package/lib/tools/linking.helper.js.map +1 -0
  322. package/lib/types/index.d.ts +2 -0
  323. package/lib/types/index.js +20 -0
  324. package/lib/types/index.js.map +1 -0
  325. package/lib/types/mail-message-notification-type.d.ts +12 -0
  326. package/lib/types/mail-message-notification-type.js +48 -0
  327. package/lib/types/mail-message-notification-type.js.map +1 -0
  328. package/lib/types/stopwatch-type.d.ts +14 -0
  329. package/lib/types/stopwatch-type.js +64 -0
  330. package/lib/types/stopwatch-type.js.map +1 -0
  331. package/lib/utils/agenda.d.ts +1 -0
  332. package/lib/utils/agenda.js +28 -0
  333. package/lib/utils/agenda.js.map +1 -0
  334. package/lib/utils/date.d.ts +4 -0
  335. package/lib/utils/date.js +41 -0
  336. package/lib/utils/date.js.map +1 -0
  337. package/lib/utils/displayers.d.ts +1 -0
  338. package/lib/utils/displayers.js +19 -0
  339. package/lib/utils/displayers.js.map +1 -0
  340. package/lib/utils/formatters.d.ts +5 -0
  341. package/lib/utils/formatters.js +74 -0
  342. package/lib/utils/formatters.js.map +1 -0
  343. package/lib/utils/index.d.ts +9 -0
  344. package/lib/utils/index.js +27 -0
  345. package/lib/utils/index.js.map +1 -0
  346. package/lib/utils/list.d.ts +3 -0
  347. package/lib/utils/list.js +101 -0
  348. package/lib/utils/list.js.map +1 -0
  349. package/lib/utils/object.d.ts +2 -0
  350. package/lib/utils/object.js +36 -0
  351. package/lib/utils/object.js.map +1 -0
  352. package/lib/utils/show-toast-message.d.ts +2 -0
  353. package/lib/utils/show-toast-message.js +22 -0
  354. package/lib/utils/show-toast-message.js.map +1 -0
  355. package/lib/utils/string.d.ts +4 -0
  356. package/lib/utils/string.js +54 -0
  357. package/lib/utils/string.js.map +1 -0
  358. package/lib/utils/time.d.ts +4 -0
  359. package/lib/utils/time.js +78 -0
  360. package/lib/utils/time.js.map +1 -0
  361. package/package.json +95 -0
@@ -0,0 +1,97 @@
1
+ export const getMailMessages: import("@reduxjs/toolkit").AsyncThunk<any, void, {
2
+ state?: unknown;
3
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
4
+ extra?: unknown;
5
+ rejectValue?: unknown;
6
+ serializedErrorType?: unknown;
7
+ pendingMeta?: unknown;
8
+ fulfilledMeta?: unknown;
9
+ rejectedMeta?: unknown;
10
+ }>;
11
+ export const sendMailMessageComment: import("@reduxjs/toolkit").AsyncThunk<any, void, {
12
+ state?: unknown;
13
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
14
+ extra?: unknown;
15
+ rejectValue?: unknown;
16
+ serializedErrorType?: unknown;
17
+ pendingMeta?: unknown;
18
+ fulfilledMeta?: unknown;
19
+ rejectedMeta?: unknown;
20
+ }>;
21
+ export const getModelSubscribers: import("@reduxjs/toolkit").AsyncThunk<any, void, {
22
+ state?: unknown;
23
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
24
+ extra?: unknown;
25
+ rejectValue?: unknown;
26
+ serializedErrorType?: unknown;
27
+ pendingMeta?: unknown;
28
+ fulfilledMeta?: unknown;
29
+ rejectedMeta?: unknown;
30
+ }>;
31
+ export const modelSubscribeRequest: import("@reduxjs/toolkit").AsyncThunk<any, void, {
32
+ state?: unknown;
33
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
34
+ extra?: unknown;
35
+ rejectValue?: unknown;
36
+ serializedErrorType?: unknown;
37
+ pendingMeta?: unknown;
38
+ fulfilledMeta?: unknown;
39
+ rejectedMeta?: unknown;
40
+ }>;
41
+ export const modelUnsubscribeRequest: import("@reduxjs/toolkit").AsyncThunk<any, void, {
42
+ state?: unknown;
43
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
44
+ extra?: unknown;
45
+ rejectValue?: unknown;
46
+ serializedErrorType?: unknown;
47
+ pendingMeta?: unknown;
48
+ fulfilledMeta?: unknown;
49
+ rejectedMeta?: unknown;
50
+ }>;
51
+ export const countUnreadMailMessages: import("@reduxjs/toolkit").AsyncThunk<any, void, {
52
+ state?: unknown;
53
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
54
+ extra?: unknown;
55
+ rejectValue?: unknown;
56
+ serializedErrorType?: unknown;
57
+ pendingMeta?: unknown;
58
+ fulfilledMeta?: unknown;
59
+ rejectedMeta?: unknown;
60
+ }>;
61
+ export const markMailMessageAsRead: import("@reduxjs/toolkit").AsyncThunk<{
62
+ unreadMessages: any;
63
+ mailMessagesList: any;
64
+ }, void, {
65
+ state?: unknown;
66
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
67
+ extra?: unknown;
68
+ rejectValue?: unknown;
69
+ serializedErrorType?: unknown;
70
+ pendingMeta?: unknown;
71
+ fulfilledMeta?: unknown;
72
+ rejectedMeta?: unknown;
73
+ }>;
74
+ export const markAllMailMessageAsRead: import("@reduxjs/toolkit").AsyncThunk<{
75
+ unreadMessages: any;
76
+ mailMessagesList: any;
77
+ }, void, {
78
+ state?: unknown;
79
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
80
+ extra?: unknown;
81
+ rejectValue?: unknown;
82
+ serializedErrorType?: unknown;
83
+ pendingMeta?: unknown;
84
+ fulfilledMeta?: unknown;
85
+ rejectedMeta?: unknown;
86
+ }>;
87
+ export const mailMessagesReducer: import("redux").Reducer<{
88
+ loading: boolean;
89
+ loadingFollowers: boolean;
90
+ moreLoading: boolean;
91
+ isListEnd: boolean;
92
+ mailMessagesList: any[];
93
+ modelFollowersList: any[];
94
+ reload: boolean;
95
+ reloadFollowers: boolean;
96
+ unreadMessages: number;
97
+ }, import("redux").AnyAction>;
@@ -0,0 +1,219 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
19
+ import { fetchMailMessages, fetchModelSubscribers, postMailMessageComment, realAllMailMessages, readMailMessage, subscribeRequest, unsubscribeRequest, countUnreadMessages, } from '../api/mail-message-api';
20
+ import { handlerApiCall } from '../api/utils';
21
+ export const getMailMessages = createAsyncThunk('mailMessages/getMailMessages', async function (data, { getState }) {
22
+ return handlerApiCall({
23
+ fetchFunction: fetchMailMessages,
24
+ data: data,
25
+ action: 'fetch mail messages',
26
+ getState: getState,
27
+ responseOptions: { isArrayResponse: true },
28
+ });
29
+ });
30
+ export const sendMailMessageComment = createAsyncThunk('mailMessages/sendMailMessageComment', async function (data, { getState }) {
31
+ return handlerApiCall({
32
+ fetchFunction: postMailMessageComment,
33
+ data: data,
34
+ action: 'post mail message comment',
35
+ getState: getState,
36
+ responseOptions: { isArrayResponse: false },
37
+ });
38
+ });
39
+ export const getModelSubscribers = createAsyncThunk('mailMessages/getModelSubscribers', async function (data, { getState }) {
40
+ return handlerApiCall({
41
+ fetchFunction: fetchModelSubscribers,
42
+ data: data,
43
+ action: 'fetch model subscribers',
44
+ getState: getState,
45
+ responseOptions: { isArrayResponse: true },
46
+ });
47
+ });
48
+ export const modelSubscribeRequest = createAsyncThunk('mailMessages/modelSubscribeRequest', async function (data, { getState }) {
49
+ return handlerApiCall({
50
+ fetchFunction: subscribeRequest,
51
+ data: data,
52
+ action: 'model subscribe request',
53
+ getState: getState,
54
+ responseOptions: { isArrayResponse: false },
55
+ });
56
+ });
57
+ export const modelUnsubscribeRequest = createAsyncThunk('mailMessages/modelUnsubscribeRequest', async function (data, { getState }) {
58
+ return handlerApiCall({
59
+ fetchFunction: unsubscribeRequest,
60
+ data: data,
61
+ action: 'model unsubscribe request',
62
+ getState: getState,
63
+ responseOptions: { isArrayResponse: false },
64
+ });
65
+ });
66
+ export const countUnreadMailMessages = createAsyncThunk('mailMessages/countUnreadMailMessages', async function (data, { getState }) {
67
+ return handlerApiCall({
68
+ fetchFunction: countUnreadMessages,
69
+ data: data,
70
+ action: 'count unread mail messages',
71
+ getState: getState,
72
+ responseOptions: { isArrayResponse: true, returnTotal: true },
73
+ });
74
+ });
75
+ export const markMailMessageAsRead = createAsyncThunk('mailMessages/markMailMessageAsRead', async function (data, { getState }) {
76
+ const fetchMailMessageData = { model: data?.model, modelId: data?.modelId };
77
+ return handlerApiCall({
78
+ fetchFunction: readMailMessage,
79
+ data: data,
80
+ action: 'mark mail message as read',
81
+ getState: getState,
82
+ responseOptions: { returnTotal: true },
83
+ }).then(result => {
84
+ const unreadMessages = result;
85
+ return handlerApiCall({
86
+ fetchFunction: fetchMailMessages,
87
+ data: {
88
+ model: fetchMailMessageData.model,
89
+ modelId: fetchMailMessageData.modelId,
90
+ page: 0,
91
+ },
92
+ action: 'fetch mail messages',
93
+ getState: getState,
94
+ responseOptions: { isArrayResponse: true },
95
+ }).then(mailMessages => ({
96
+ unreadMessages: unreadMessages,
97
+ mailMessagesList: mailMessages,
98
+ }));
99
+ });
100
+ });
101
+ export const markAllMailMessageAsRead = createAsyncThunk('mailMessages/markAllMailMessageAsRead', async function (data, { getState }) {
102
+ const fetchMailMessageData = { model: data?.model, modelId: data?.modelId };
103
+ return handlerApiCall({
104
+ fetchFunction: realAllMailMessages,
105
+ data: data,
106
+ action: 'mark mail message as read',
107
+ getState: getState,
108
+ responseOptions: { returnTotal: true },
109
+ }).then(result => {
110
+ const unreadMessages = result;
111
+ return handlerApiCall({
112
+ fetchFunction: fetchMailMessages,
113
+ data: {
114
+ model: fetchMailMessageData.model,
115
+ modelId: fetchMailMessageData.modelId,
116
+ page: 0,
117
+ },
118
+ action: 'fetch mail messages',
119
+ getState: getState,
120
+ responseOptions: { isArrayResponse: true },
121
+ }).then(mailMessages => ({
122
+ unreadMessages: unreadMessages,
123
+ mailMessagesList: mailMessages,
124
+ }));
125
+ });
126
+ });
127
+ const initialState = {
128
+ loading: false,
129
+ loadingFollowers: false,
130
+ moreLoading: false,
131
+ isListEnd: false,
132
+ mailMessagesList: [],
133
+ modelFollowersList: [],
134
+ reload: false,
135
+ reloadFollowers: false,
136
+ unreadMessages: 0,
137
+ };
138
+ const mailMessagesSlice = createSlice({
139
+ name: 'mailMessages',
140
+ initialState,
141
+ extraReducers: builder => {
142
+ builder.addCase(getMailMessages.pending, (state, action) => {
143
+ state.reload = false;
144
+ if (action.meta.arg.page === 0) {
145
+ state.loading = true;
146
+ }
147
+ else {
148
+ state.moreLoading = true;
149
+ }
150
+ });
151
+ builder.addCase(getMailMessages.fulfilled, (state, action) => {
152
+ state.loading = false;
153
+ state.moreLoading = false;
154
+ if (action.meta.arg.page === 0 || action.meta.arg.page == null) {
155
+ state.mailMessagesList = action.payload;
156
+ state.isListEnd = false;
157
+ }
158
+ else {
159
+ if (action.payload != null) {
160
+ state.isListEnd = false;
161
+ state.mailMessagesList = [
162
+ ...state.mailMessagesList,
163
+ ...action.payload,
164
+ ];
165
+ }
166
+ else {
167
+ state.isListEnd = true;
168
+ }
169
+ }
170
+ });
171
+ builder.addCase(sendMailMessageComment.pending, (state, action) => {
172
+ state.reload = false;
173
+ });
174
+ builder.addCase(sendMailMessageComment.fulfilled, (state, action) => {
175
+ state.reload = true;
176
+ });
177
+ builder.addCase(getModelSubscribers.pending, (state, action) => {
178
+ state.loadingFollowers = true;
179
+ state.reloadFollowers = false;
180
+ });
181
+ builder.addCase(getModelSubscribers.fulfilled, (state, action) => {
182
+ state.loadingFollowers = false;
183
+ state.modelFollowersList = action.payload ? action.payload : [];
184
+ });
185
+ builder.addCase(modelSubscribeRequest.pending, (state, action) => {
186
+ state.loadingFollowers = true;
187
+ });
188
+ builder.addCase(modelSubscribeRequest.fulfilled, (state, action) => {
189
+ state.loadingFollowers = false;
190
+ state.reloadFollowers = true;
191
+ });
192
+ builder.addCase(modelUnsubscribeRequest.pending, (state, action) => {
193
+ state.loadingFollowers = true;
194
+ });
195
+ builder.addCase(modelUnsubscribeRequest.fulfilled, (state, action) => {
196
+ state.loadingFollowers = false;
197
+ state.reloadFollowers = true;
198
+ });
199
+ builder.addCase(countUnreadMailMessages.fulfilled, (state, action) => {
200
+ state.unreadMessages = action.payload;
201
+ });
202
+ builder.addCase(markMailMessageAsRead.fulfilled, (state, action) => {
203
+ state.loading = false;
204
+ state.moreLoading = false;
205
+ state.mailMessagesList = action.payload.mailMessagesList;
206
+ state.isListEnd = false;
207
+ state.unreadMessages = action.payload.unreadMessages;
208
+ });
209
+ builder.addCase(markAllMailMessageAsRead.fulfilled, (state, action) => {
210
+ state.loading = false;
211
+ state.moreLoading = false;
212
+ state.mailMessagesList = action.payload.mailMessagesList;
213
+ state.isListEnd = false;
214
+ state.unreadMessages = action.payload.unreadMessages;
215
+ });
216
+ },
217
+ });
218
+ export const mailMessagesReducer = mailMessagesSlice.reducer;
219
+ //# sourceMappingURL=mailMessageSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mailMessageSlice.js","sourceRoot":"","sources":["../../src/features/mailMessageSlice.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ export const fetchMenuConfig: import("@reduxjs/toolkit").AsyncThunk<any, void, {
2
+ state?: unknown;
3
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
4
+ extra?: unknown;
5
+ rejectValue?: unknown;
6
+ serializedErrorType?: unknown;
7
+ pendingMeta?: unknown;
8
+ fulfilledMeta?: unknown;
9
+ rejectedMeta?: unknown;
10
+ }>;
11
+ export const menuConfigReducer: import("redux").Reducer<{
12
+ loadingConfig: boolean;
13
+ restrictedMenus: any[];
14
+ }, import("redux").AnyAction>;
@@ -0,0 +1,48 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
19
+ import { getModulesConfig } from '../api/menu-config-api';
20
+ import { handlerApiCall } from '../api/utils';
21
+ export const fetchMenuConfig = createAsyncThunk('menuConfig/fetchMenuConfig', async function (data = {}, { getState }) {
22
+ return handlerApiCall({
23
+ fetchFunction: getModulesConfig,
24
+ data,
25
+ action: 'fetch menu config',
26
+ getState,
27
+ responseOptions: { isArrayResponse: true },
28
+ });
29
+ });
30
+ const initialState = {
31
+ loadingConfig: false,
32
+ restrictedMenus: [],
33
+ };
34
+ const menuConfigSlice = createSlice({
35
+ name: 'menuConfig',
36
+ initialState,
37
+ extraReducers: builder => {
38
+ builder.addCase(fetchMenuConfig.pending, state => {
39
+ state.loadingConfig = true;
40
+ });
41
+ builder.addCase(fetchMenuConfig.fulfilled, (state, action) => {
42
+ state.loadingConfig = false;
43
+ state.restrictedMenus = [...action.payload];
44
+ });
45
+ },
46
+ });
47
+ export const menuConfigReducer = menuConfigSlice.reducer;
48
+ //# sourceMappingURL=menuConfigSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menuConfigSlice.js","sourceRoot":"","sources":["../../src/features/menuConfigSlice.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAC,gBAAgB,EAAC,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAE5C,MAAM,CAAC,MAAM,eAAe,GAAG,gBAAgB,CAC7C,4BAA4B,EAC5B,KAAK,WAAW,IAAI,GAAG,EAAE,EAAE,EAAC,QAAQ,EAAC;IACnC,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,gBAAgB;QAC/B,IAAI;QACJ,MAAM,EAAE,mBAAmB;QAC3B,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,IAAI,EAAC;KACzC,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,MAAM,YAAY,GAAG;IACnB,aAAa,EAAE,KAAK;IACpB,eAAe,EAAE,EAAE;CACpB,CAAC;AAEF,MAAM,eAAe,GAAG,WAAW,CAAC;IAClC,IAAI,EAAE,YAAY;IAClB,YAAY;IACZ,aAAa,EAAE,OAAO,CAAC,EAAE;QACvB,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YAC/C,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC3D,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC;YAC5B,KAAK,CAAC,eAAe,GAAG,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,eAAe,CAAC,OAAO,CAAC"}
@@ -0,0 +1,14 @@
1
+ export const getFileDetails: import("@reduxjs/toolkit").AsyncThunk<any, void, {
2
+ state?: unknown;
3
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
4
+ extra?: unknown;
5
+ rejectValue?: unknown;
6
+ serializedErrorType?: unknown;
7
+ pendingMeta?: unknown;
8
+ fulfilledMeta?: unknown;
9
+ rejectedMeta?: unknown;
10
+ }>;
11
+ export const metafileReducer: import("redux").Reducer<{
12
+ loadingMetafile: boolean;
13
+ metafile: {};
14
+ }, import("redux").AnyAction>;
@@ -0,0 +1,48 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
19
+ import { handlerApiCall } from '../api/utils';
20
+ import { fetchFileDetails } from '../api/metafile-api';
21
+ export const getFileDetails = createAsyncThunk('metafile/getFileDetails', async function (metafileId, { getState }) {
22
+ return handlerApiCall({
23
+ fetchFunction: fetchFileDetails,
24
+ data: metafileId,
25
+ action: 'fetch metafile details',
26
+ getState,
27
+ responseOptions: { isArrayResponse: true },
28
+ });
29
+ });
30
+ const initialState = {
31
+ loadingMetafile: false,
32
+ metafile: {},
33
+ };
34
+ const metafileSlice = createSlice({
35
+ name: 'metafile',
36
+ initialState,
37
+ extraReducers: builder => {
38
+ builder.addCase(getFileDetails.pending, state => {
39
+ state.loadingMetafile = true;
40
+ });
41
+ builder.addCase(getFileDetails.fulfilled, (state, action) => {
42
+ state.loadingMetafile = false;
43
+ state.metafile = action.payload;
44
+ });
45
+ },
46
+ });
47
+ export const metafileReducer = metafileSlice.reducer;
48
+ //# sourceMappingURL=metafileSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metafileSlice.js","sourceRoot":"","sources":["../../src/features/metafileSlice.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAC,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAErD,MAAM,CAAC,MAAM,cAAc,GAAG,gBAAgB,CAC5C,yBAAyB,EACzB,KAAK,WAAW,UAAU,EAAE,EAAC,QAAQ,EAAC;IACpC,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,gBAAgB;QAC/B,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE,wBAAwB;QAChC,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,IAAI,EAAC;KACzC,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,MAAM,YAAY,GAAG;IACnB,eAAe,EAAE,KAAK;IACtB,QAAQ,EAAE,EAAE;CACb,CAAC;AAEF,MAAM,aAAa,GAAG,WAAW,CAAC;IAChC,IAAI,EAAE,UAAU;IAChB,YAAY;IACZ,aAAa,EAAE,OAAO,CAAC,EAAE;QACvB,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YAC9C,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC1D,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC;YAC9B,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC"}
@@ -0,0 +1,14 @@
1
+ export const fetchMobileConfig: import("@reduxjs/toolkit").AsyncThunk<any, void, {
2
+ state?: unknown;
3
+ dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
4
+ extra?: unknown;
5
+ rejectValue?: unknown;
6
+ serializedErrorType?: unknown;
7
+ pendingMeta?: unknown;
8
+ fulfilledMeta?: unknown;
9
+ rejectedMeta?: unknown;
10
+ }>;
11
+ export const mobileConfigReducer: import("redux").Reducer<{
12
+ loadingConfig: boolean;
13
+ mobileConfigs: any[];
14
+ }, import("redux").AnyAction>;
@@ -0,0 +1,52 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import { createAsyncThunk, createSlice } from '@reduxjs/toolkit';
19
+ import { getMobileConfigs } from '../api/mobile-config-api';
20
+ import { handlerApiCall } from '../api/utils';
21
+ export const fetchMobileConfig = createAsyncThunk('mobileConfig/fetchMobileConfig', async function (data = {}, { getState }) {
22
+ return handlerApiCall({
23
+ fetchFunction: getMobileConfigs,
24
+ data,
25
+ action: 'fetch mobile configs',
26
+ getState,
27
+ responseOptions: { isArrayResponse: true },
28
+ errorOptions: { showErrorToast: false, errorTracing: false },
29
+ });
30
+ });
31
+ const initialState = {
32
+ loadingConfig: false,
33
+ mobileConfigs: [],
34
+ };
35
+ const mobileConfigSlice = createSlice({
36
+ name: 'mobileConfig',
37
+ initialState,
38
+ extraReducers: builder => {
39
+ builder.addCase(fetchMobileConfig.pending, state => {
40
+ state.loadingConfig = true;
41
+ });
42
+ builder.addCase(fetchMobileConfig.rejected, state => {
43
+ state.loadingConfig = false;
44
+ });
45
+ builder.addCase(fetchMobileConfig.fulfilled, (state, action) => {
46
+ state.loadingConfig = false;
47
+ state.mobileConfigs = action.payload;
48
+ });
49
+ },
50
+ });
51
+ export const mobileConfigReducer = mobileConfigSlice.reducer;
52
+ //# sourceMappingURL=mobileConfigSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mobileConfigSlice.js","sourceRoot":"","sources":["../../src/features/mobileConfigSlice.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAC,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AAE5C,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAC/C,gCAAgC,EAChC,KAAK,WAAW,IAAI,GAAG,EAAE,EAAE,EAAC,QAAQ,EAAC;IACnC,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,gBAAgB;QAC/B,IAAI;QACJ,MAAM,EAAE,sBAAsB;QAC9B,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,IAAI,EAAC;QACxC,YAAY,EAAE,EAAC,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAC;KAC3D,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,MAAM,YAAY,GAAG;IACnB,aAAa,EAAE,KAAK;IACpB,aAAa,EAAE,EAAE;CAClB,CAAC;AAEF,MAAM,iBAAiB,GAAG,WAAW,CAAC;IACpC,IAAI,EAAE,cAAc;IACpB,YAAY;IACZ,aAAa,EAAE,OAAO,CAAC,EAAE;QACvB,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YACjD,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE;YAClD,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC;QAC9B,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC7D,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC;YAC5B,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,OAAO,CAAC"}
@@ -0,0 +1,14 @@
1
+ interface ScannerSliceState {
2
+ isEnabled: boolean;
3
+ scanKey: string | null;
4
+ scannedValue: string | null;
5
+ }
6
+ export declare const enableScan: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "scanner/enableScan">, scanValue: import("@reduxjs/toolkit").ActionCreatorWithPayload<any, "scanner/scanValue">, disableScan: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"scanner/disableScan">;
7
+ export declare const useScannerSelector: () => ScannerSliceState;
8
+ export declare const useScannedValueByKey: (key: string) => string | null;
9
+ declare const _default: import("redux").Reducer<{
10
+ isEnabled: boolean;
11
+ scanKey: any;
12
+ scannedValue: any;
13
+ }, import("redux").AnyAction>;
14
+ export default _default;
@@ -0,0 +1,52 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import { useMemo } from 'react';
19
+ import { useSelector } from 'react-redux';
20
+ import { createSlice } from '@reduxjs/toolkit';
21
+ const scannerSlice = createSlice({
22
+ name: 'scanner',
23
+ initialState: {
24
+ isEnabled: false,
25
+ scanKey: null,
26
+ scannedValue: null,
27
+ },
28
+ reducers: {
29
+ enableScan(state, action) {
30
+ state.isEnabled = true;
31
+ state.scanKey = action.payload;
32
+ state.scannedValue = null;
33
+ },
34
+ scanValue(state, action) {
35
+ state.scannedValue = action.payload;
36
+ },
37
+ disableScan(state) {
38
+ state.isEnabled = false;
39
+ state.scanKey = null;
40
+ state.scannedValue = null;
41
+ },
42
+ },
43
+ });
44
+ export const { enableScan, scanValue, disableScan } = scannerSlice.actions;
45
+ const selectScanner = state => state.scanner;
46
+ export const useScannerSelector = () => useSelector(selectScanner);
47
+ export const useScannedValueByKey = key => {
48
+ const { scanKey, scannedValue } = useScannerSelector();
49
+ return useMemo(() => (key === scanKey ? scannedValue : null), [scanKey, key, scannedValue]);
50
+ };
51
+ export default scannerSlice.reducer;
52
+ //# sourceMappingURL=scannerSlice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scannerSlice.js","sourceRoot":"","sources":["../../src/features/scannerSlice.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAC,WAAW,EAAC,MAAM,aAAa,CAAC;AACxC,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAQ7C,MAAM,YAAY,GAAG,WAAW,CAAC;IAC/B,IAAI,EAAE,SAAS;IACf,YAAY,EAAE;QACZ,SAAS,EAAE,KAAK;QAChB,OAAO,EAAE,IAAI;QACb,YAAY,EAAE,IAAI;KACnB;IACD,QAAQ,EAAE;QACR,UAAU,CAAC,KAAK,EAAE,MAAM;YACtB,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;YACvB,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;YAC/B,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;QAC5B,CAAC;QACD,SAAS,CAAC,KAAK,EAAE,MAAM;YACrB,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC;QACtC,CAAC;QACD,WAAW,CAAC,KAAK;YACf,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC;YACxB,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;YACrB,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;QAC5B,CAAC;KACF;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,EAAC,UAAU,EAAE,SAAS,EAAE,WAAW,EAAC,GAAG,YAAY,CAAC,OAAO,CAAC;AAEzE,MAAM,aAAa,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;AAE7C,MAAM,CAAC,MAAM,kBAAkB,GAA4B,GAAG,EAAE,CAC9D,WAAW,CAAC,aAAa,CAAC,CAAC;AAE7B,MAAM,CAAC,MAAM,oBAAoB,GAAmC,GAAG,CAAC,EAAE;IACxE,MAAM,EAAC,OAAO,EAAE,YAAY,EAAC,GAAG,kBAAkB,EAAE,CAAC;IACrD,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,EAC7C,CAAC,OAAO,EAAE,GAAG,EAAE,YAAY,CAAC,CAC7B,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC,OAAO,CAAC"}
@@ -0,0 +1 @@
1
+ export function useEffectDebugger(effectHook: any, dependencies: any, dependencyNames?: any[]): void;
@@ -0,0 +1,47 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import { useEffect, useRef } from 'react';
19
+ const usePrevious = (value, initialValue) => {
20
+ const ref = useRef(initialValue);
21
+ useEffect(() => {
22
+ ref.current = value;
23
+ });
24
+ return ref.current;
25
+ };
26
+ export const useEffectDebugger = (effectHook, dependencies, dependencyNames = []) => {
27
+ const previousDeps = usePrevious(dependencies, []);
28
+ const changedDeps = dependencies.reduce((accum, dependency, index) => {
29
+ if (dependency !== previousDeps[index]) {
30
+ const keyName = dependencyNames[index] || index;
31
+ return {
32
+ ...accum,
33
+ [keyName]: {
34
+ before: previousDeps[index],
35
+ after: dependency,
36
+ },
37
+ };
38
+ }
39
+ return accum;
40
+ }, {});
41
+ if (Object.keys(changedDeps).length) {
42
+ console.log('[use-effect-debugger] ', changedDeps);
43
+ }
44
+ // eslint-disable-next-line react-hooks/exhaustive-deps
45
+ useEffect(effectHook, dependencies);
46
+ };
47
+ //# sourceMappingURL=use-effect-debugger.js.map