@axelor/aos-mobile-core 8.3.7 → 8.4.0

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 (318) hide show
  1. package/README.md +2 -312
  2. package/lib/api/aop-filter-api.d.ts +9 -0
  3. package/lib/api/aop-filter-api.js +63 -0
  4. package/lib/api/aop-filter-api.js.map +1 -0
  5. package/lib/api/currency-api.d.ts +1 -0
  6. package/lib/api/currency-api.js +28 -0
  7. package/lib/api/currency-api.js.map +1 -0
  8. package/lib/api/index.d.ts +12 -0
  9. package/lib/api/index.js +30 -0
  10. package/lib/api/index.js.map +1 -0
  11. package/lib/api/login-api.js +2 -2
  12. package/lib/api/login-api.js.map +1 -1
  13. package/lib/api/metafile-api.d.ts +1 -1
  14. package/lib/api/print-template-api.d.ts +1 -1
  15. package/lib/api/print-template-api.js +2 -1
  16. package/lib/api/print-template-api.js.map +1 -1
  17. package/lib/apiProviders/Standard/requests.helper.d.ts +13 -1
  18. package/lib/apiProviders/Standard/requests.helper.js +37 -2
  19. package/lib/apiProviders/Standard/requests.helper.js.map +1 -1
  20. package/lib/apiProviders/middlewares/index.d.ts +2 -1
  21. package/lib/apiProviders/middlewares/index.js +2 -1
  22. package/lib/apiProviders/middlewares/index.js.map +1 -1
  23. package/lib/apiProviders/middlewares/maintenance.d.ts +5 -0
  24. package/lib/apiProviders/middlewares/maintenance.js +63 -0
  25. package/lib/apiProviders/middlewares/maintenance.js.map +1 -0
  26. package/lib/app/Application.d.ts +1 -0
  27. package/lib/app/Application.js +1 -1
  28. package/lib/app/Application.js.map +1 -1
  29. package/lib/app/ContextedApplication.js +4 -2
  30. package/lib/app/ContextedApplication.js.map +1 -1
  31. package/lib/app/ContextsProvider.d.ts +2 -1
  32. package/lib/app/ContextsProvider.js +5 -1
  33. package/lib/app/ContextsProvider.js.map +1 -1
  34. package/lib/app/modules/types.d.ts +2 -2
  35. package/lib/auth/api/config-api.js +1 -1
  36. package/lib/auth/api/config-api.js.map +1 -1
  37. package/lib/components/external/Camera/Camera.js +10 -0
  38. package/lib/components/external/Camera/Camera.js.map +1 -1
  39. package/lib/components/external/Toast/Toast.js +10 -35
  40. package/lib/components/external/Toast/Toast.js.map +1 -1
  41. package/lib/components/external/Toast/ToastDisplay.d.ts +4 -0
  42. package/lib/components/external/Toast/ToastDisplay.js +59 -0
  43. package/lib/components/external/Toast/ToastDisplay.js.map +1 -0
  44. package/lib/components/molecules/UploadFileInput/UploadFileInput.js +35 -52
  45. package/lib/components/molecules/UploadFileInput/UploadFileInput.js.map +1 -1
  46. package/lib/components/molecules/index.d.ts +0 -3
  47. package/lib/components/molecules/index.js +0 -3
  48. package/lib/components/molecules/index.js.map +1 -1
  49. package/lib/components/organisms/DateInput/DateInput.js +1 -4
  50. package/lib/components/organisms/DateInput/DateInput.js.map +1 -1
  51. package/lib/components/organisms/FilterContainer/FilterContainer.d.ts +12 -0
  52. package/lib/components/organisms/FilterContainer/FilterContainer.js +54 -0
  53. package/lib/components/organisms/FilterContainer/FilterContainer.js.map +1 -0
  54. package/lib/components/organisms/PopupFilters/PopupFilters.d.ts +10 -0
  55. package/lib/components/organisms/PopupFilters/PopupFilters.js +73 -0
  56. package/lib/components/organisms/PopupFilters/PopupFilters.js.map +1 -0
  57. package/lib/components/organisms/PopupPrintTemplate/PopupPrintTemplate.d.ts +3 -1
  58. package/lib/components/organisms/PopupPrintTemplate/PopupPrintTemplate.js +20 -34
  59. package/lib/components/organisms/PopupPrintTemplate/PopupPrintTemplate.js.map +1 -1
  60. package/lib/components/organisms/index.d.ts +2 -4
  61. package/lib/components/organisms/index.js +2 -4
  62. package/lib/components/organisms/index.js.map +1 -1
  63. package/lib/components/pages/FormView/FormView.js +2 -0
  64. package/lib/components/pages/FormView/FormView.js.map +1 -1
  65. package/lib/components/templates/SearchListView/SearchListView.js +8 -5
  66. package/lib/components/templates/SearchListView/SearchListView.js.map +1 -1
  67. package/lib/components/templates/index.d.ts +0 -1
  68. package/lib/components/templates/index.js +0 -1
  69. package/lib/components/templates/index.js.map +1 -1
  70. package/lib/features/asyncFunctions-index.d.ts +12 -0
  71. package/lib/features/asyncFunctions-index.js +30 -0
  72. package/lib/features/asyncFunctions-index.js.map +1 -0
  73. package/lib/features/authSlice.js +8 -0
  74. package/lib/features/authSlice.js.map +1 -1
  75. package/lib/features/cameraScannerSlice.d.ts +3 -1
  76. package/lib/features/cameraScannerSlice.js +14 -2
  77. package/lib/features/cameraScannerSlice.js.map +1 -1
  78. package/lib/features/{attachedFilesSlice.d.ts → currencySlice.d.ts} +3 -3
  79. package/lib/features/{attachedFilesSlice.js → currencySlice.js} +20 -15
  80. package/lib/features/currencySlice.js.map +1 -0
  81. package/lib/features/index.d.ts +1 -2
  82. package/lib/features/index.js +1 -2
  83. package/lib/features/index.js.map +1 -1
  84. package/lib/forms/studio/api.helpers.d.ts +1 -1
  85. package/lib/forms/studio/api.helpers.js.map +1 -1
  86. package/lib/header/FilterProvider.d.ts +22 -0
  87. package/lib/header/FilterProvider.js +48 -0
  88. package/lib/header/FilterProvider.js.map +1 -0
  89. package/lib/header/HeaderActionsProvider.d.ts +1 -0
  90. package/lib/header/HeaderActionsProvider.js.map +1 -1
  91. package/lib/header/hooks.d.ts +1 -67
  92. package/lib/header/hooks.js +153 -158
  93. package/lib/header/hooks.js.map +1 -1
  94. package/lib/header/index.d.ts +2 -1
  95. package/lib/header/index.js +1 -0
  96. package/lib/header/index.js.map +1 -1
  97. package/lib/header/types.d.ts +0 -4
  98. package/lib/hooks/index.d.ts +3 -0
  99. package/lib/hooks/index.js +3 -0
  100. package/lib/hooks/index.js.map +1 -1
  101. package/lib/hooks/use-currency-formatter.d.ts +1 -0
  102. package/lib/hooks/use-currency-formatter.js +37 -0
  103. package/lib/hooks/use-currency-formatter.js.map +1 -0
  104. package/lib/hooks/use-header-registers.js +2 -0
  105. package/lib/hooks/use-header-registers.js.map +1 -1
  106. package/lib/hooks/use-mass-scanner.d.ts +15 -0
  107. package/lib/hooks/use-mass-scanner.js +70 -0
  108. package/lib/hooks/use-mass-scanner.js.map +1 -0
  109. package/lib/hooks/use-outdated-version.d.ts +3 -0
  110. package/lib/hooks/use-outdated-version.js +30 -0
  111. package/lib/hooks/use-outdated-version.js.map +1 -0
  112. package/lib/hooks/use-scan-activator.d.ts +8 -3
  113. package/lib/hooks/use-scan-activator.js +42 -22
  114. package/lib/hooks/use-scan-activator.js.map +1 -1
  115. package/lib/i18n/translations/en.json +9 -18
  116. package/lib/i18n/translations/fr.json +9 -18
  117. package/lib/index.d.ts +16 -22
  118. package/lib/index.js +16 -22
  119. package/lib/index.js.map +1 -1
  120. package/lib/models/objectFields.js +9 -0
  121. package/lib/models/objectFields.js.map +1 -1
  122. package/lib/navigator/Navigator.d.ts +3 -6
  123. package/lib/navigator/Navigator.js +17 -19
  124. package/lib/navigator/Navigator.js.map +1 -1
  125. package/lib/navigator/components/DrawerContent.d.ts +13 -0
  126. package/lib/navigator/{drawer → components}/DrawerContent.js +34 -73
  127. package/lib/navigator/components/DrawerContent.js.map +1 -0
  128. package/lib/navigator/components/header/Header.d.ts +9 -0
  129. package/lib/navigator/{drawer → components/header}/Header.js +13 -21
  130. package/lib/navigator/components/header/Header.js.map +1 -0
  131. package/lib/navigator/components/header/HeaderButton.d.ts +6 -0
  132. package/lib/navigator/{drawer/DrawerToggleButton.js → components/header/HeaderButton.js} +10 -10
  133. package/lib/navigator/components/header/HeaderButton.js.map +1 -0
  134. package/lib/navigator/components/header/HeaderOptionMenu.d.ts +13 -0
  135. package/lib/{components/organisms/HeaderOptionsMenu/HeaderOptionsMenu.js → navigator/components/header/HeaderOptionMenu.js} +10 -43
  136. package/lib/navigator/components/header/HeaderOptionMenu.js.map +1 -0
  137. package/lib/navigator/components/header/HeaderOptionMenuItem.js.map +1 -0
  138. package/lib/navigator/components/header/index.d.ts +1 -0
  139. package/lib/navigator/components/header/index.js +19 -0
  140. package/lib/navigator/components/header/index.js.map +1 -0
  141. package/lib/navigator/components/index.d.ts +2 -0
  142. package/lib/navigator/components/index.js +20 -0
  143. package/lib/navigator/components/index.js.map +1 -0
  144. package/lib/navigator/components/menu/AuthMenu.d.ts +8 -0
  145. package/lib/navigator/{drawer/AuthMenuIconButton.js → components/menu/AuthMenu.js} +10 -9
  146. package/lib/navigator/components/menu/AuthMenu.js.map +1 -0
  147. package/lib/navigator/components/menu/Menu.d.ts +13 -0
  148. package/lib/navigator/components/menu/Menu.js +63 -0
  149. package/lib/navigator/components/menu/Menu.js.map +1 -0
  150. package/lib/navigator/components/menu/MenuIconButton.d.ts +14 -0
  151. package/lib/navigator/{drawer → components/menu}/MenuIconButton.js +17 -20
  152. package/lib/navigator/components/menu/MenuIconButton.js.map +1 -0
  153. package/lib/navigator/components/menu/MenuItem.d.ts +14 -0
  154. package/lib/navigator/{drawer → components/menu}/MenuItem.js +6 -6
  155. package/lib/navigator/components/menu/MenuItem.js.map +1 -0
  156. package/lib/navigator/components/menu/MenuItemEntry.d.ts +16 -0
  157. package/lib/navigator/{drawer → components/menu}/MenuItemEntry.js +11 -19
  158. package/lib/navigator/components/menu/MenuItemEntry.js.map +1 -0
  159. package/lib/navigator/components/menu/MenuItemList.d.ts +12 -0
  160. package/lib/navigator/{drawer/Menu.js → components/menu/MenuItemList.js} +5 -46
  161. package/lib/navigator/components/menu/MenuItemList.js.map +1 -0
  162. package/lib/navigator/components/menu/MenuSeparator.d.ts +7 -0
  163. package/lib/navigator/{drawer → components/menu}/MenuSeparator.js +4 -8
  164. package/lib/navigator/components/menu/MenuSeparator.js.map +1 -0
  165. package/lib/navigator/components/menu/MenuTitle.d.ts +8 -0
  166. package/lib/navigator/{drawer → components/menu}/MenuTitle.js +3 -3
  167. package/lib/navigator/components/menu/MenuTitle.js.map +1 -0
  168. package/lib/navigator/components/menu/SubMenuItem.d.ts +9 -0
  169. package/lib/navigator/{drawer → components/menu}/SubMenuItem.js +4 -4
  170. package/lib/navigator/components/menu/SubMenuItem.js.map +1 -0
  171. package/lib/navigator/components/menu/SubMenuItemList.d.ts +12 -0
  172. package/lib/navigator/{drawer → components/menu}/SubMenuItemList.js +5 -5
  173. package/lib/navigator/components/menu/SubMenuItemList.js.map +1 -0
  174. package/lib/navigator/components/menu/index.d.ts +4 -0
  175. package/lib/navigator/components/menu/index.js +22 -0
  176. package/lib/navigator/components/menu/index.js.map +1 -0
  177. package/lib/navigator/helpers/access.helper.d.ts +4 -0
  178. package/lib/navigator/helpers/access.helper.js +121 -0
  179. package/lib/navigator/helpers/access.helper.js.map +1 -0
  180. package/lib/navigator/helpers/compatibility.helper.d.ts +3 -0
  181. package/lib/navigator/helpers/compatibility.helper.js +123 -0
  182. package/lib/navigator/helpers/compatibility.helper.js.map +1 -0
  183. package/lib/navigator/helpers/index.d.ts +6 -0
  184. package/lib/navigator/helpers/index.js +24 -0
  185. package/lib/navigator/helpers/index.js.map +1 -0
  186. package/lib/navigator/helpers/menu.helper.d.ts +56 -0
  187. package/lib/navigator/{menu.helper.js → helpers/menu.helper.js} +17 -22
  188. package/lib/navigator/helpers/menu.helper.js.map +1 -0
  189. package/lib/navigator/helpers/module.helper.d.ts +8 -0
  190. package/lib/navigator/helpers/module.helper.js +58 -0
  191. package/lib/navigator/helpers/module.helper.js.map +1 -0
  192. package/lib/navigator/helpers/navigation-type.d.ts +4 -0
  193. package/lib/navigator/helpers/navigation-type.js +19 -0
  194. package/lib/navigator/helpers/navigation-type.js.map +1 -0
  195. package/lib/navigator/helpers/tool.helper.d.ts +3 -0
  196. package/lib/navigator/helpers/tool.helper.js +44 -0
  197. package/lib/navigator/helpers/tool.helper.js.map +1 -0
  198. package/lib/navigator/index.d.ts +3 -1
  199. package/lib/navigator/index.js +3 -1
  200. package/lib/navigator/index.js.map +1 -1
  201. package/lib/navigator/{ActiveScreenProvider.d.ts → providers/active-screen.d.ts} +1 -1
  202. package/lib/navigator/{ActiveScreenProvider.js → providers/active-screen.js} +3 -3
  203. package/lib/navigator/providers/active-screen.js.map +1 -0
  204. package/lib/navigator/providers/index.d.ts +3 -0
  205. package/lib/navigator/providers/index.js +21 -0
  206. package/lib/navigator/providers/index.js.map +1 -0
  207. package/lib/navigator/providers/module-navigator.d.ts +8 -0
  208. package/lib/{screens/MailMessageScreen.js → navigator/providers/module-navigator.js} +7 -7
  209. package/lib/navigator/providers/module-navigator.js.map +1 -0
  210. package/lib/navigator/{NavigationInformationsProvider.d.ts → providers/navigation-informations.d.ts} +6 -2
  211. package/lib/navigator/{NavigationInformationsProvider.js → providers/navigation-informations.js} +11 -10
  212. package/lib/navigator/providers/navigation-informations.js.map +1 -0
  213. package/lib/screens/ErrorScreen.d.ts +7 -5
  214. package/lib/screens/ErrorScreen.js +26 -4
  215. package/lib/screens/ErrorScreen.js.map +1 -1
  216. package/lib/screens/index.d.ts +10 -33
  217. package/lib/screens/index.js +1 -17
  218. package/lib/screens/index.js.map +1 -1
  219. package/lib/tools/FileDownloader.js +7 -2
  220. package/lib/tools/FileDownloader.js.map +1 -1
  221. package/lib/tools/FilePicker.js +4 -3
  222. package/lib/tools/FilePicker.js.map +1 -1
  223. package/lib/types/index.d.ts +0 -2
  224. package/lib/types/index.js +0 -2
  225. package/lib/types/index.js.map +1 -1
  226. package/lib/utils/date.d.ts +1 -0
  227. package/lib/utils/date.js +4 -1
  228. package/lib/utils/date.js.map +1 -1
  229. package/lib/utils/index.d.ts +2 -2
  230. package/lib/utils/index.js +2 -2
  231. package/lib/utils/index.js.map +1 -1
  232. package/lib/websocket/WebSocketProvider.d.ts +20 -0
  233. package/lib/websocket/WebSocketProvider.js +89 -0
  234. package/lib/websocket/WebSocketProvider.js.map +1 -0
  235. package/lib/websocket/hooks.d.ts +2 -0
  236. package/lib/{navigator/drawer/BackIcon.js → websocket/hooks.js} +8 -17
  237. package/lib/websocket/hooks.js.map +1 -0
  238. package/lib/websocket/index.d.ts +2 -0
  239. package/lib/websocket/index.js +20 -0
  240. package/lib/websocket/index.js.map +1 -0
  241. package/lib/websocket/types.d.ts +13 -0
  242. package/lib/websocket/types.js +26 -0
  243. package/lib/websocket/types.js.map +1 -0
  244. package/package.json +35 -29
  245. package/lib/api/mail-message-api.d.ts +0 -44
  246. package/lib/api/mail-message-api.js +0 -129
  247. package/lib/api/mail-message-api.js.map +0 -1
  248. package/lib/components/molecules/HeaderOptionsMenuItem/HeaderOptionMenuItem.js.map +0 -1
  249. package/lib/components/molecules/MailMessageReadIcon/MailMessageReadIcon.d.ts +0 -12
  250. package/lib/components/molecules/MailMessageReadIcon/MailMessageReadIcon.js +0 -59
  251. package/lib/components/molecules/MailMessageReadIcon/MailMessageReadIcon.js.map +0 -1
  252. package/lib/components/molecules/TrackItem/TrackItem.d.ts +0 -10
  253. package/lib/components/molecules/TrackItem/TrackItem.js +0 -65
  254. package/lib/components/molecules/TrackItem/TrackItem.js.map +0 -1
  255. package/lib/components/organisms/HeaderOptionsMenu/HeaderOptionsMenu.d.ts +0 -13
  256. package/lib/components/organisms/HeaderOptionsMenu/HeaderOptionsMenu.js.map +0 -1
  257. package/lib/components/organisms/MailMessageCard/MailMessageCard.d.ts +0 -17
  258. package/lib/components/organisms/MailMessageCard/MailMessageCard.js +0 -76
  259. package/lib/components/organisms/MailMessageCard/MailMessageCard.js.map +0 -1
  260. package/lib/components/organisms/MailMessageCommentCard/MailMessageCommentCard.d.ts +0 -13
  261. package/lib/components/organisms/MailMessageCommentCard/MailMessageCommentCard.js +0 -138
  262. package/lib/components/organisms/MailMessageCommentCard/MailMessageCommentCard.js.map +0 -1
  263. package/lib/components/organisms/MailMessageNotificationCard/MailMessageNotificationCard.d.ts +0 -17
  264. package/lib/components/organisms/MailMessageNotificationCard/MailMessageNotificationCard.js +0 -81
  265. package/lib/components/organisms/MailMessageNotificationCard/MailMessageNotificationCard.js.map +0 -1
  266. package/lib/components/templates/MailMessageView/MailMessageView.d.ts +0 -10
  267. package/lib/components/templates/MailMessageView/MailMessageView.js +0 -184
  268. package/lib/components/templates/MailMessageView/MailMessageView.js.map +0 -1
  269. package/lib/features/attachedFilesSlice.js.map +0 -1
  270. package/lib/features/mailMessageSlice.d.ts +0 -97
  271. package/lib/features/mailMessageSlice.js +0 -196
  272. package/lib/features/mailMessageSlice.js.map +0 -1
  273. package/lib/navigator/ActiveScreenProvider.js.map +0 -1
  274. package/lib/navigator/NavigationInformationsProvider.js.map +0 -1
  275. package/lib/navigator/drawer/AuthMenuIconButton.d.ts +0 -7
  276. package/lib/navigator/drawer/AuthMenuIconButton.js.map +0 -1
  277. package/lib/navigator/drawer/BackIcon.d.ts +0 -5
  278. package/lib/navigator/drawer/BackIcon.js.map +0 -1
  279. package/lib/navigator/drawer/DrawerContent.d.ts +0 -10
  280. package/lib/navigator/drawer/DrawerContent.js.map +0 -1
  281. package/lib/navigator/drawer/DrawerToggleButton.d.ts +0 -5
  282. package/lib/navigator/drawer/DrawerToggleButton.js.map +0 -1
  283. package/lib/navigator/drawer/Header.d.ts +0 -8
  284. package/lib/navigator/drawer/Header.js.map +0 -1
  285. package/lib/navigator/drawer/Menu.d.ts +0 -10
  286. package/lib/navigator/drawer/Menu.js.map +0 -1
  287. package/lib/navigator/drawer/MenuIconButton.d.ts +0 -12
  288. package/lib/navigator/drawer/MenuIconButton.js.map +0 -1
  289. package/lib/navigator/drawer/MenuItem.d.ts +0 -12
  290. package/lib/navigator/drawer/MenuItem.js.map +0 -1
  291. package/lib/navigator/drawer/MenuItemEntry.d.ts +0 -14
  292. package/lib/navigator/drawer/MenuItemEntry.js.map +0 -1
  293. package/lib/navigator/drawer/MenuSeparator.d.ts +0 -6
  294. package/lib/navigator/drawer/MenuSeparator.js.map +0 -1
  295. package/lib/navigator/drawer/MenuTitle.d.ts +0 -6
  296. package/lib/navigator/drawer/MenuTitle.js.map +0 -1
  297. package/lib/navigator/drawer/SubMenuItem.d.ts +0 -8
  298. package/lib/navigator/drawer/SubMenuItem.js.map +0 -1
  299. package/lib/navigator/drawer/SubMenuItemList.d.ts +0 -11
  300. package/lib/navigator/drawer/SubMenuItemList.js.map +0 -1
  301. package/lib/navigator/menu.helper.d.ts +0 -17
  302. package/lib/navigator/menu.helper.js.map +0 -1
  303. package/lib/navigator/module.helper.d.ts +0 -25
  304. package/lib/navigator/module.helper.js +0 -299
  305. package/lib/navigator/module.helper.js.map +0 -1
  306. package/lib/screens/MailMessageAttachedFilesScreen.d.ts +0 -5
  307. package/lib/screens/MailMessageAttachedFilesScreen.js +0 -68
  308. package/lib/screens/MailMessageAttachedFilesScreen.js.map +0 -1
  309. package/lib/screens/MailMessageScreen.d.ts +0 -5
  310. package/lib/screens/MailMessageScreen.js.map +0 -1
  311. package/lib/types/mail-message-notification-type.d.ts +0 -12
  312. package/lib/types/mail-message-notification-type.js +0 -48
  313. package/lib/types/mail-message-notification-type.js.map +0 -1
  314. package/lib/types/mail-message-type.d.ts +0 -18
  315. package/lib/types/mail-message-type.js +0 -55
  316. package/lib/types/mail-message-type.js.map +0 -1
  317. /package/lib/{components/molecules/HeaderOptionsMenuItem → navigator/components/header}/HeaderOptionMenuItem.d.ts +0 -0
  318. /package/lib/{components/molecules/HeaderOptionsMenuItem → navigator/components/header}/HeaderOptionMenuItem.js +0 -0
@@ -0,0 +1,70 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2025 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 { useCallback, useEffect, useMemo, useRef } from 'react';
19
+ import { useDispatch } from '../redux/hooks';
20
+ import { useCameraScannerValueByKey, clearBarcode, } from '../features/cameraScannerSlice';
21
+ import { clearScan, useScannedValueByKey, useScannerSelector, } from '../features/scannerSlice';
22
+ import { useScanActivator } from './use-scan-activator';
23
+ export const useMassScanner = ({ scanKey, backgroundAction, fallbackAction, scanInterval = 1000, disableOnError = true, }) => {
24
+ const isProcessingRef = useRef(false);
25
+ const timerRef = useRef(null);
26
+ const dispatch = useDispatch();
27
+ const { isEnabled: isScanEnabled, scanKey: activeScanKey } = useScannerSelector();
28
+ const { enable: enableScan, disable: disableScan, isZebraDevice, } = useScanActivator(scanKey, true);
29
+ const scannedBarcode = useCameraScannerValueByKey(scanKey);
30
+ const scannedValue = useScannedValueByKey(scanKey);
31
+ const isEnabled = useMemo(() => isScanEnabled && activeScanKey === scanKey, [activeScanKey, isScanEnabled, scanKey]);
32
+ const processScan = useCallback(async (value, clearAction) => {
33
+ if (isProcessingRef.current)
34
+ return;
35
+ try {
36
+ isProcessingRef.current = true;
37
+ await backgroundAction(value, { disableScan });
38
+ }
39
+ catch (error) {
40
+ if (disableOnError)
41
+ disableScan();
42
+ fallbackAction?.(error);
43
+ }
44
+ finally {
45
+ timerRef.current = setTimeout(() => {
46
+ isProcessingRef.current = false;
47
+ clearAction();
48
+ }, isZebraDevice ? 0 : scanInterval);
49
+ }
50
+ }, [
51
+ backgroundAction,
52
+ disableOnError,
53
+ disableScan,
54
+ fallbackAction,
55
+ isZebraDevice,
56
+ scanInterval,
57
+ ]);
58
+ useEffect(() => {
59
+ if (scannedValue) {
60
+ processScan(scannedValue, () => dispatch(clearScan()));
61
+ }
62
+ }, [dispatch, processScan, scannedValue]);
63
+ useEffect(() => {
64
+ if (scannedBarcode?.value) {
65
+ processScan(scannedBarcode.value, () => dispatch(clearBarcode()));
66
+ }
67
+ }, [dispatch, processScan, scannedBarcode?.value]);
68
+ return useMemo(() => ({ disableScan, enableScan, isEnabled }), [disableScan, enableScan, isEnabled]);
69
+ };
70
+ //# sourceMappingURL=use-mass-scanner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-mass-scanner.js","sourceRoot":"","sources":["../../src/hooks/use-mass-scanner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare const useOutdatedVersion: (versionCheckConfig: any) => {
2
+ isOutdated: boolean;
3
+ };
@@ -0,0 +1,30 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2025 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 '../redux/hooks';
20
+ import { formatVersionString } from '../utils';
21
+ export const useOutdatedVersion = (versionCheckConfig) => {
22
+ const { mobileSettings } = useSelector(state => state.appConfig);
23
+ const { appVersion } = useSelector(state => state.auth);
24
+ const mobileVersion = useMemo(() => formatVersionString(appVersion), [appVersion]);
25
+ const minimalRequiredVersion = useMemo(() => formatVersionString(mobileSettings?.minimalRequiredMobileAppVersion), [mobileSettings]);
26
+ return useMemo(() => ({
27
+ isOutdated: versionCheckConfig?.activate && mobileVersion < minimalRequiredVersion,
28
+ }), [minimalRequiredVersion, mobileVersion, versionCheckConfig?.activate]);
29
+ };
30
+ //# sourceMappingURL=use-outdated-version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-outdated-version.js","sourceRoot":"","sources":["../../src/hooks/use-outdated-version.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAC,mBAAmB,EAAC,MAAM,UAAU,CAAC;AAE7C,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,kBAAuB,EAAE,EAAE;IAC5D,MAAM,EAAC,cAAc,EAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC/D,MAAM,EAAC,UAAU,EAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEtD,MAAM,aAAa,GAAG,OAAO,CAC3B,GAAG,EAAE,CAAC,mBAAmB,CAAC,UAAU,CAAC,EACrC,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,MAAM,sBAAsB,GAAG,OAAO,CACpC,GAAG,EAAE,CAAC,mBAAmB,CAAC,cAAc,EAAE,+BAA+B,CAAC,EAC1E,CAAC,cAAc,CAAC,CACjB,CAAC;IAEF,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,UAAU,EACR,kBAAkB,EAAE,QAAQ,IAAI,aAAa,GAAG,sBAAsB;KACzE,CAAC,EACF,CAAC,sBAAsB,EAAE,aAAa,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CACtE,CAAC;AACJ,CAAC,CAAC"}
@@ -1,9 +1,14 @@
1
- export function useScanActivator(scanKeySearch: any): {
1
+ export declare const useScanActivator: (scanKeySearch: string, isMassScan?: boolean) => {
2
+ disable: () => void;
2
3
  enable: () => void;
4
+ isZebraDevice: boolean;
3
5
  };
4
- export function useScannerDeviceActivator(scanKeySearch: any): {
6
+ export declare const useScannerDeviceActivator: (scanKeySearch: string) => {
5
7
  enable: () => void;
8
+ disable: () => void;
6
9
  };
7
- export function useCameraScannerActivator(scanKeySearch: any): {
10
+ export declare const useCameraScannerActivator: (scanKeySearch: string) => {
8
11
  enable: () => void;
12
+ enableMassCamera: () => void;
13
+ disable: () => void;
9
14
  };
@@ -17,44 +17,64 @@
17
17
  */
18
18
  import { useCallback, useEffect, useMemo, useState } from 'react';
19
19
  import DeviceInfo from 'react-native-device-info';
20
- import { enableCameraScanner } from '../features/cameraScannerSlice';
21
- import { enableScan } from '../features/scannerSlice';
20
+ import { disableCameraScanner, enableCameraScanner, enableMassCameraScanner, } from '../features/cameraScannerSlice';
21
+ import { enableScan, disableScan } from '../features/scannerSlice';
22
22
  import { useDispatch } from '../redux/hooks';
23
- export const useScanActivator = scanKeySearch => {
24
- const { enable: enableScanner } = useScannerDeviceActivator(scanKeySearch);
25
- const { enable: enableCamera } = useCameraScannerActivator(scanKeySearch);
26
- const [isZebraDevice, setDeviceType] = useState(false);
23
+ export const useScanActivator = (scanKeySearch, isMassScan = false) => {
24
+ const { enable: enableScanner, disable: disableScanner } = useScannerDeviceActivator(scanKeySearch);
25
+ const { enable: enableCamera, enableMassCamera, disable: disableCamera, } = useCameraScannerActivator(scanKeySearch);
26
+ const [isZebraDevice, setIsZebraDevice] = useState(false);
27
27
  useEffect(() => {
28
- DeviceInfo.getManufacturer().then(manufacturer => setDeviceType(manufacturer === 'Zebra Technologies'));
28
+ DeviceInfo.getManufacturer().then(manufacturer => setIsZebraDevice(manufacturer === 'Zebra Technologies'));
29
29
  }, []);
30
30
  const enable = useCallback(() => {
31
31
  if (isZebraDevice) {
32
- enableScanner(scanKeySearch);
32
+ enableScanner();
33
+ }
34
+ else if (isMassScan) {
35
+ enableMassCamera();
33
36
  }
34
37
  else {
35
- enableCamera(scanKeySearch);
38
+ enableCamera();
39
+ }
40
+ }, [
41
+ isZebraDevice,
42
+ enableScanner,
43
+ isMassScan,
44
+ enableMassCamera,
45
+ enableCamera,
46
+ ]);
47
+ const disable = useCallback(() => {
48
+ if (isZebraDevice) {
49
+ disableScanner();
36
50
  }
37
- }, [enableCamera, enableScanner, isZebraDevice, scanKeySearch]);
38
- return useMemo(() => ({
39
- enable,
40
- }), [enable]);
51
+ else {
52
+ disableCamera();
53
+ }
54
+ }, [isZebraDevice, disableScanner, disableCamera]);
55
+ return useMemo(() => ({ disable, enable, isZebraDevice }), [disable, enable, isZebraDevice]);
41
56
  };
42
- export const useScannerDeviceActivator = scanKeySearch => {
57
+ export const useScannerDeviceActivator = (scanKeySearch) => {
43
58
  const dispatch = useDispatch();
44
59
  const enable = useCallback(() => {
45
60
  dispatch(enableScan(scanKeySearch));
46
61
  }, [dispatch, scanKeySearch]);
47
- return useMemo(() => ({
48
- enable,
49
- }), [enable]);
62
+ const disable = useCallback(() => {
63
+ dispatch(disableScan());
64
+ }, [dispatch]);
65
+ return useMemo(() => ({ enable, disable }), [disable, enable]);
50
66
  };
51
- export const useCameraScannerActivator = scanKeySearch => {
67
+ export const useCameraScannerActivator = (scanKeySearch) => {
52
68
  const dispatch = useDispatch();
53
- const enable = useCallback(() => {
69
+ const enableCamera = useCallback(() => {
54
70
  dispatch(enableCameraScanner(scanKeySearch));
55
71
  }, [dispatch, scanKeySearch]);
56
- return useMemo(() => ({
57
- enable,
58
- }), [enable]);
72
+ const enableMassCamera = useCallback(() => {
73
+ dispatch(enableMassCameraScanner(scanKeySearch));
74
+ }, [dispatch, scanKeySearch]);
75
+ const disableCamera = useCallback(() => {
76
+ dispatch(disableCameraScanner());
77
+ }, [dispatch]);
78
+ return useMemo(() => ({ enable: enableCamera, enableMassCamera, disable: disableCamera }), [enableCamera, enableMassCamera, disableCamera]);
59
79
  };
60
80
  //# sourceMappingURL=use-scan-activator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-scan-activator.js","sourceRoot":"","sources":["../../src/hooks/use-scan-activator.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAChE,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAC,mBAAmB,EAAC,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAC,EAAE;IAC9C,MAAM,EAAC,MAAM,EAAE,aAAa,EAAC,GAAG,yBAAyB,CAAC,aAAa,CAAC,CAAC;IACzE,MAAM,EAAC,MAAM,EAAE,YAAY,EAAC,GAAG,yBAAyB,CAAC,aAAa,CAAC,CAAC;IAExE,MAAM,CAAC,aAAa,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEvD,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAC/C,aAAa,CAAC,YAAY,KAAK,oBAAoB,CAAC,CACrD,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9B,IAAI,aAAa,EAAE;YACjB,aAAa,CAAC,aAAa,CAAC,CAAC;SAC9B;aAAM;YACL,YAAY,CAAC,aAAa,CAAC,CAAC;SAC7B;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC;IAEhE,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,MAAM;KACP,CAAC,EACF,CAAC,MAAM,CAAC,CACT,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,aAAa,CAAC,EAAE;IACvD,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9B,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;IACtC,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;IAE9B,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,MAAM;KACP,CAAC,EACF,CAAC,MAAM,CAAC,CACT,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,aAAa,CAAC,EAAE;IACvD,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9B,QAAQ,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;IAE9B,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,MAAM;KACP,CAAC,EACF,CAAC,MAAM,CAAC,CACT,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"use-scan-activator.js","sourceRoot":"","sources":["../../src/hooks/use-scan-activator.ts"],"names":[],"mappings":"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"}
@@ -52,15 +52,7 @@
52
52
  "Base_Large": "Large",
53
53
  "Base_Small": "Small",
54
54
  "Base_Barcode": "Barcode",
55
- "Base_MailMessages": "Mail messages",
56
55
  "Base_Comment": "Comment",
57
- "Base_MailMessages_CommentInput_Placeholder": "Enter a comment",
58
- "Base_MailMessages_MarkAllAsRead": "Mark all messages as read",
59
- "Base_MailMessages_Subscribe": "Subscribe",
60
- "Base_MailMessages_Unsubscribe": "Unsubscribe",
61
- "Base_AttachedFiles": "Attached files",
62
- "Base_Question": "Question",
63
- "Base_Unfollow_Confirmation": "Are you sure to unfollow this document?",
64
56
  "Base_NoConnection": "No internet connection",
65
57
  "Base_Information": "Information",
66
58
  "Base_Refresh": "Refresh application",
@@ -136,7 +128,6 @@
136
128
  "Base_Studio_RefreshConfig": "Refresh view",
137
129
  "Base_All": "All",
138
130
  "Base_Comments": "Comments",
139
- "Base_Notifications": "Notifications",
140
131
  "Base_FormNotFound": "The requested form cannot be found, please contact an administrator.",
141
132
  "Base_FormMissingCreateAccess": "You do not have creation rights for this object.",
142
133
  "Base_FormValidation_String": "must be a string",
@@ -193,6 +184,10 @@
193
184
  "Base_Yes": "Yes",
194
185
  "Base_No": "No",
195
186
  "Base_Filter": "Filter",
187
+ "Base_ShowSavedFilter": "See saved filters",
188
+ "Base_SelectFilter": "Select filter",
189
+ "Base_Filters": "Filters",
190
+ "Base_MyFilters": "My filters",
196
191
  "Base_Details": "Details",
197
192
  "Base_Label": "Label",
198
193
  "Base_Value": "Value",
@@ -220,16 +215,11 @@
220
215
  "Base_FileDownload": "Download complete, file saved to your download folder.",
221
216
  "Base_FileDownloadiOS": "Download complete, file saved.",
222
217
  "Base_DownloadPermissionDenied": "The application does not have the necessary permissions to download the file.",
218
+ "Base_StepOfStep": "{{activeStep}} of {{numberOfSteps}}",
219
+ "Base_ReloadApp": "Reload the app",
220
+ "Base_ServerMaintenance": "The ERP server is currently undergoing maintenance. Please try again later.",
223
221
  "Base_SliceAction_FetchFilesDetails": "fetch file details",
224
222
  "Base_SliceAction_FetchMetaModule": "fetch meta modules",
225
- "Base_SliceAction_FetchMailMessages": "fetch mail messages",
226
- "Base_SliceAction_PostMailMessageComment": "post mail message comment",
227
- "Base_SliceAction_FetchModelSubscribers": "fetch model subscribers",
228
- "Base_SliceAction_SubscribeToModel": "subscribe to model",
229
- "Base_SliceAction_UnsubscribeFromModel": "unsubscribe from model",
230
- "Base_SliceAction_CountUnreadMailMessages": "count unread mail messages",
231
- "Base_SliceAction_MarkMailMessageAsRead": "mark mail message as read",
232
- "Base_SliceAction_MarkAllMailMessageAsRead": "mark all mail messages as read",
233
223
  "Base_SliceAction_FetchMobileConfig": "fetch mobile config",
234
224
  "Base_SliceAction_CreateRecord": "create record",
235
225
  "Base_SliceAction_UpdateRecord": "update record",
@@ -241,5 +231,6 @@
241
231
  "Base_SliceAction_UpdateJsonFieldsObject": "update custom fields of object",
242
232
  "Base_SliceAction_FetchAnomalies": "fetch anomalies of object",
243
233
  "Base_SliceAction_SearchUser": "search user",
244
- "Base_SliceAction_SearchPrintingTemplate": "search printing template"
234
+ "Base_SliceAction_SearchPrintingTemplate": "search printing template",
235
+ "Base_SliceAction_FetchAllCurrencies": "fetch currencies"
245
236
  }
@@ -52,15 +52,7 @@
52
52
  "Base_Large": "Large",
53
53
  "Base_Small": "Petit",
54
54
  "Base_Barcode": "Code-barre",
55
- "Base_MailMessages": "Suivi des notifications",
56
55
  "Base_Comment": "Commentaire",
57
- "Base_MailMessages_CommentInput_Placeholder": "Entrez votre commentaire",
58
- "Base_MailMessages_MarkAllAsRead": "Marquer tous les messages comme lus",
59
- "Base_MailMessages_Subscribe": "S'abonner",
60
- "Base_MailMessages_Unsubscribe": "Se désabonner",
61
- "Base_AttachedFiles": "Fichiers attachés",
62
- "Base_Question": "Question",
63
- "Base_Unfollow_Confirmation": "Êtes-vous sûr de vouloir vous désabonner de ce document?",
64
56
  "Base_NoConnection": "Pas de connexion Internet",
65
57
  "Base_Information": "Information",
66
58
  "Base_Refresh": "Actualiser l'application",
@@ -136,7 +128,6 @@
136
128
  "Base_Studio_RefreshConfig": "Actualiser la vue",
137
129
  "Base_All": "Tout",
138
130
  "Base_Comments": "Commentaires",
139
- "Base_Notifications": "Notifications",
140
131
  "Base_FormNotFound": "Le formulaire demandé est introuvable, merci de contacter un administrateur.",
141
132
  "Base_FormMissingCreateAccess": "Vous n'avez pas les droits de création sur cet objet.",
142
133
  "Base_FormValidation_String": "doit être une chaîne de caractères",
@@ -193,6 +184,10 @@
193
184
  "Base_Yes": "Oui",
194
185
  "Base_No": "Non",
195
186
  "Base_Filter": "Filtrer",
187
+ "Base_ShowSavedFilter": "Voir les filtres sauvegardés",
188
+ "Base_SelectFilter": "Sélectionner un filtre",
189
+ "Base_Filters": "Filtres",
190
+ "Base_MyFilters": "Mes filtres",
196
191
  "Base_Details": "Détails",
197
192
  "Base_Label": "Label",
198
193
  "Base_Value": "Valeur",
@@ -220,16 +215,11 @@
220
215
  "Base_FileDownload": "Téléchargement complété, document sauvegardé dans votre dossier téléchargements.",
221
216
  "Base_FileDownloadiOS": "Téléchargement complété, document sauvegardé.",
222
217
  "Base_DownloadPermissionDenied": "L'application ne possède pas les permissions nécessaires au téléchargement du fichier.",
218
+ "Base_StepOfStep": "{{activeStep}} sur {{numberOfSteps}}",
219
+ "Base_ReloadApp": "Recharger l'application",
220
+ "Base_ServerMaintenance": "Le serveur ERP est actuellement en maintenance. Veuillez réessayer ultérieurement.",
223
221
  "Base_SliceAction_FetchFilesDetails": "récupération des détails du fichier",
224
222
  "Base_SliceAction_FetchMetaModule": "récupération des modules",
225
- "Base_SliceAction_FetchMailMessages": "récupération des mail messages",
226
- "Base_SliceAction_PostMailMessageComment": "ajout d'un mail message",
227
- "Base_SliceAction_FetchModelSubscribers": "récupération des abonnés du modèle",
228
- "Base_SliceAction_SubscribeToModel": "abonnement au modèle",
229
- "Base_SliceAction_UnsubscribeFromModel": "désabonnement au modèle",
230
- "Base_SliceAction_CountUnreadMailMessages": "comptage des mail messages non lus",
231
- "Base_SliceAction_MarkMailMessageAsRead": "marquer le message comme lu",
232
- "Base_SliceAction_MarkAllMailMessageAsRead": "marquer tous les messages comme lus",
233
223
  "Base_SliceAction_FetchMobileConfig": "récupération des configs mobile",
234
224
  "Base_SliceAction_CreateRecord": "création de l'objet",
235
225
  "Base_SliceAction_UpdateRecord": "mise à jour de l'objet",
@@ -241,5 +231,6 @@
241
231
  "Base_SliceAction_UpdateJsonFieldsObject": "mise à jour des champs studio de l'objet",
242
232
  "Base_SliceAction_FetchAnomalies": "récupération des anomalies d'un object",
243
233
  "Base_SliceAction_SearchUser": "récupération des utilisateurs",
244
- "Base_SliceAction_SearchPrintingTemplate": "recherche sur les modèles d'impression"
234
+ "Base_SliceAction_SearchPrintingTemplate": "recherche sur les modèles d'impression",
235
+ "Base_SliceAction_FetchAllCurrencies": "récupération des devises"
245
236
  }
package/lib/index.d.ts CHANGED
@@ -1,30 +1,24 @@
1
- export * from './app';
2
- export * from './navigator';
3
- export { configGlobalStore } from './redux/store';
4
- export { storage, Storage, useStorage } from './storage/Storage';
5
- export { traceError } from './api/traceback-api';
6
- export { clearError, isUrlValid, login, logout, setAppVersion, updateAuthState, } from './features/authSlice';
1
+ export * from './api';
7
2
  export * from './apiProviders';
8
- export { useScannedValueByKey, useScannerSelector, enableScan, scanValue, disableScan, clearScan, default as scannerReducer, } from './features/scannerSlice';
9
- export { useCameraScannerSelector, useCameraScannerValueByKey, clearBarcode, enableCameraScanner, scanBarcode, disableCameraScanner, } from './features/cameraScannerSlice';
10
- export { useCameraSelector, useCameraValueByKey, enableCamera, takePhoto, clearPhoto, disableCamera, default as cameraReducer, } from './features/cameraSlice';
11
- export { useEffectOnline, useOnline, enable as enableOnline, disable as disableOnline, } from './features/onlineSlice';
12
- export { getNetInfo } from './api/net-info-utils';
13
- export { uploadFile, uploadBase64 } from './api/metafile-api';
14
- export { useDispatch, useSelector } from './redux/hooks';
15
- export { ejectAxios, getActiveUserInfo, initAxiosWithHeaders, loginApi, logoutApi, } from './api/login-api';
16
- export * from './components';
17
- export * from './tools';
18
- export * from './utils';
19
- export * from './types';
3
+ export * from './app';
20
4
  export * from './auth';
5
+ export * from './components';
6
+ export * from './config';
7
+ export * from './dashboards';
8
+ export * from './features/asyncFunctions-index';
9
+ export * from './forms';
10
+ export * from './header';
21
11
  export * from './hooks';
22
12
  export * from './i18n';
23
13
  export * from './loader';
24
- export * from './config';
25
- export * from './header';
26
- export * from './forms';
27
- export * from './dashboards';
14
+ export * from './navigator';
28
15
  export * from './permissions';
16
+ export { useDispatch, useSelector } from './redux/hooks';
17
+ export { configGlobalStore } from './redux/store';
29
18
  export * from './selections';
30
19
  export * from './sessions';
20
+ export { storage, Storage, useStorage } from './storage/Storage';
21
+ export * from './tools';
22
+ export * from './types';
23
+ export * from './utils';
24
+ export * from './websocket';
package/lib/index.js CHANGED
@@ -15,34 +15,28 @@
15
15
  * You should have received a copy of the GNU Affero General Public License
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
- export * from './app';
19
- export * from './navigator';
20
- export { configGlobalStore } from './redux/store';
21
- export { storage, Storage, useStorage } from './storage/Storage';
22
- export { traceError } from './api/traceback-api';
23
- export { clearError, isUrlValid, login, logout, setAppVersion, updateAuthState, } from './features/authSlice';
18
+ export * from './api';
24
19
  export * from './apiProviders';
25
- export { useScannedValueByKey, useScannerSelector, enableScan, scanValue, disableScan, clearScan, default as scannerReducer, } from './features/scannerSlice';
26
- export { useCameraScannerSelector, useCameraScannerValueByKey, clearBarcode, enableCameraScanner, scanBarcode, disableCameraScanner, } from './features/cameraScannerSlice';
27
- export { useCameraSelector, useCameraValueByKey, enableCamera, takePhoto, clearPhoto, disableCamera, default as cameraReducer, } from './features/cameraSlice';
28
- export { useEffectOnline, useOnline, enable as enableOnline, disable as disableOnline, } from './features/onlineSlice';
29
- export { getNetInfo } from './api/net-info-utils';
30
- export { uploadFile, uploadBase64 } from './api/metafile-api';
31
- export { useDispatch, useSelector } from './redux/hooks';
32
- export { ejectAxios, getActiveUserInfo, initAxiosWithHeaders, loginApi, logoutApi, } from './api/login-api';
33
- export * from './components';
34
- export * from './tools';
35
- export * from './utils';
36
- export * from './types';
20
+ export * from './app';
37
21
  export * from './auth';
22
+ export * from './components';
23
+ export * from './config';
24
+ export * from './dashboards';
25
+ export * from './features/asyncFunctions-index';
26
+ export * from './forms';
27
+ export * from './header';
38
28
  export * from './hooks';
39
29
  export * from './i18n';
40
30
  export * from './loader';
41
- export * from './config';
42
- export * from './header';
43
- export * from './forms';
44
- export * from './dashboards';
31
+ export * from './navigator';
45
32
  export * from './permissions';
33
+ export { useDispatch, useSelector } from './redux/hooks';
34
+ export { configGlobalStore } from './redux/store';
46
35
  export * from './selections';
47
36
  export * from './sessions';
37
+ export { storage, Storage, useStorage } from './storage/Storage';
38
+ export * from './tools';
39
+ export * from './types';
40
+ export * from './utils';
41
+ export * from './websocket';
48
42
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,cAAc,OAAO,CAAC;AACtB,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAC,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAChD,OAAO,EAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAC,UAAU,EAAC,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EACL,UAAU,EACV,UAAU,EACV,KAAK,EACL,MAAM,EACN,aAAa,EACb,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,WAAW,EACX,SAAS,EACT,OAAO,IAAI,cAAc,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAC1B,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,oBAAoB,GACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,SAAS,EACT,UAAU,EACV,aAAa,EACb,OAAO,IAAI,aAAa,GACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,eAAe,EACf,SAAS,EACT,MAAM,IAAI,YAAY,EACtB,OAAO,IAAI,aAAa,GACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAC,UAAU,EAAE,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAC,WAAW,EAAE,WAAW,EAAC,MAAM,eAAe,CAAC;AACvD,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACpB,QAAQ,EACR,SAAS,GACV,MAAM,iBAAiB,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,cAAc,OAAO,CAAC;AACtB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,iCAAiC,CAAC;AAChD,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAC,WAAW,EAAE,WAAW,EAAC,MAAM,eAAe,CAAC;AACvD,OAAO,EAAC,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAChD,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAC/D,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
@@ -53,5 +53,14 @@ export const core_modelAPI = {
53
53
  moduleVersion: schemaContructor.string(),
54
54
  name: schemaContructor.string(),
55
55
  }),
56
+ core_metaFilter: schemaContructor.object({
57
+ filterView: schemaContructor.string(),
58
+ name: schemaContructor.string(),
59
+ title: schemaContructor.string(),
60
+ filterCustom: schemaContructor.string(),
61
+ }),
62
+ core_currency: schemaContructor.object({
63
+ numberOfDecimals: schemaContructor.number(),
64
+ }),
56
65
  };
57
66
  //# sourceMappingURL=objectFields.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"objectFields.js","sourceRoot":"","sources":["../../src/models/objectFields.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAe,gBAAgB,EAAC,MAAM,QAAQ,CAAC;AAEtD,MAAM,CAAC,MAAM,aAAa,GAAiB;IACzC,eAAe,EAAE,gBAAgB,CAAC,MAAM,CAAC;QACvC,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE;QAC/B,aAAa,EAAE,gBAAgB,CAAC,MAAM,EAAE;QACxC,eAAe,EAAE,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC;KAC3E,CAAC;IACF,aAAa,EAAE,gBAAgB,CAAC,MAAM,CAAC;QACrC,QAAQ,EAAE,gBAAgB,CAAC,MAAM,EAAE;QACnC,SAAS,EAAE,gBAAgB,CAAC,MAAM,EAAE;KACrC,CAAC;IACF,kBAAkB,EAAE,gBAAgB,CAAC,MAAM,CAAC;QAC1C,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE;KAChC,CAAC;IACF,SAAS,EAAE,gBAAgB,CAAC,MAAM,CAAC;QACjC,QAAQ,EAAE,gBAAgB,CAAC,MAAM,EAAE;KACpC,CAAC;IACF,gBAAgB,EAAE,gBAAgB,CAAC,MAAM,CAAC;QACxC,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE;QAC/B,MAAM,EAAE,gBAAgB,CAAC,MAAM,EAAE;QACjC,OAAO,EAAE,gBAAgB,CAAC,OAAO,EAAE;QACnC,QAAQ,EAAE,gBAAgB,CAAC,OAAO,EAAE;QACpC,SAAS,EAAE,gBAAgB,CAAC,OAAO,EAAE;QACrC,SAAS,EAAE,gBAAgB,CAAC,OAAO,EAAE;KACtC,CAAC;IACF,uBAAuB,EAAE,gBAAgB,CAAC,MAAM,CAAC;QAC/C,KAAK,EAAE,gBAAgB,CAAC,MAAM,EAAE;QAChC,OAAO,EAAE,gBAAgB,CAAC,OAAO,EAAE;QACnC,QAAQ,EAAE,gBAAgB,CAAC,OAAO,EAAE;QACpC,cAAc,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,MAAM,CACjD,gBAAgB,CAAC,MAAM,CAAC;YACtB,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE;YAC/B,MAAM,EAAE,gBAAgB,CAAC,MAAM,EAAE;SAClC,CAAC,CACH;KACF,CAAC;IACF,WAAW,EAAE,gBAAgB,CAAC,MAAM,CAAC;QACnC,aAAa,EAAE,gBAAgB,CAAC,MAAM,EAAE;QACxC,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE;KAChC,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"objectFields.js","sourceRoot":"","sources":["../../src/models/objectFields.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAe,gBAAgB,EAAC,MAAM,QAAQ,CAAC;AAEtD,MAAM,CAAC,MAAM,aAAa,GAAiB;IACzC,eAAe,EAAE,gBAAgB,CAAC,MAAM,CAAC;QACvC,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE;QAC/B,aAAa,EAAE,gBAAgB,CAAC,MAAM,EAAE;QACxC,eAAe,EAAE,gBAAgB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC;KAC3E,CAAC;IACF,aAAa,EAAE,gBAAgB,CAAC,MAAM,CAAC;QACrC,QAAQ,EAAE,gBAAgB,CAAC,MAAM,EAAE;QACnC,SAAS,EAAE,gBAAgB,CAAC,MAAM,EAAE;KACrC,CAAC;IACF,kBAAkB,EAAE,gBAAgB,CAAC,MAAM,CAAC;QAC1C,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE;KAChC,CAAC;IACF,SAAS,EAAE,gBAAgB,CAAC,MAAM,CAAC;QACjC,QAAQ,EAAE,gBAAgB,CAAC,MAAM,EAAE;KACpC,CAAC;IACF,gBAAgB,EAAE,gBAAgB,CAAC,MAAM,CAAC;QACxC,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE;QAC/B,MAAM,EAAE,gBAAgB,CAAC,MAAM,EAAE;QACjC,OAAO,EAAE,gBAAgB,CAAC,OAAO,EAAE;QACnC,QAAQ,EAAE,gBAAgB,CAAC,OAAO,EAAE;QACpC,SAAS,EAAE,gBAAgB,CAAC,OAAO,EAAE;QACrC,SAAS,EAAE,gBAAgB,CAAC,OAAO,EAAE;KACtC,CAAC;IACF,uBAAuB,EAAE,gBAAgB,CAAC,MAAM,CAAC;QAC/C,KAAK,EAAE,gBAAgB,CAAC,MAAM,EAAE;QAChC,OAAO,EAAE,gBAAgB,CAAC,OAAO,EAAE;QACnC,QAAQ,EAAE,gBAAgB,CAAC,OAAO,EAAE;QACpC,cAAc,EAAE,gBAAgB,CAAC,SAAS,EAAE,CAAC,MAAM,CACjD,gBAAgB,CAAC,MAAM,CAAC;YACtB,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE;YAC/B,MAAM,EAAE,gBAAgB,CAAC,MAAM,EAAE;SAClC,CAAC,CACH;KACF,CAAC;IACF,WAAW,EAAE,gBAAgB,CAAC,MAAM,CAAC;QACnC,aAAa,EAAE,gBAAgB,CAAC,MAAM,EAAE;QACxC,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE;KAChC,CAAC;IACF,eAAe,EAAE,gBAAgB,CAAC,MAAM,CAAC;QACvC,UAAU,EAAE,gBAAgB,CAAC,MAAM,EAAE;QACrC,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE;QAC/B,KAAK,EAAE,gBAAgB,CAAC,MAAM,EAAE;QAChC,YAAY,EAAE,gBAAgB,CAAC,MAAM,EAAE;KACxC,CAAC;IACF,aAAa,EAAE,gBAAgB,CAAC,MAAM,CAAC;QACrC,gBAAgB,EAAE,gBAAgB,CAAC,MAAM,EAAE;KAC5C,CAAC;CACH,CAAC"}
@@ -1,10 +1,7 @@
1
- export const ModuleNavigatorContext: React.Context<{
2
- activeModule: any;
3
- }>;
4
- export default Navigator;
5
1
  import React from 'react';
6
- declare function Navigator({ mainMenu, onRefresh, versionCheckConfig }: {
2
+ declare const Navigator: ({ mainMenu, onRefresh, versionCheckConfig }: {
7
3
  mainMenu: any;
8
4
  onRefresh: any;
9
5
  versionCheckConfig: any;
10
- }): React.JSX.Element;
6
+ }) => React.JSX.Element;
7
+ export default Navigator;
@@ -15,28 +15,25 @@
15
15
  * You should have received a copy of the GNU Affero General Public License
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
- import React, { createContext, useCallback, useEffect, useMemo, useState, } from 'react';
18
+ import React, { useCallback, useEffect, useMemo, useState } from 'react';
19
19
  import { Dimensions, Platform } from 'react-native';
20
20
  import { createDrawerNavigator } from '@react-navigation/drawer';
21
21
  import { createStackNavigator } from '@react-navigation/stack';
22
22
  import { useThemeColor } from '@axelor/aos-mobile-ui';
23
- import DrawerContent from './drawer/DrawerContent';
24
- import { checkModulesMenusAccessibility, getDefaultModule, manageOverridingMenus, manageWebCompatibility, manageWebConfig, moduleHasMenus, } from './module.helper';
25
- import { manageSubMenusOverriding, getMenuTitle, hasSubMenus, formatMenus, } from './menu.helper';
26
- import useTranslator from '../i18n/hooks/use-translator';
27
- import { useDispatch, useSelector } from 'react-redux';
23
+ import { useTranslator } from '../i18n';
24
+ import { useDispatch, useSelector } from '../redux/hooks';
28
25
  import BaseScreen from '../screens';
29
- import Header from './drawer/Header';
30
26
  import { fetchMetaModules } from '../features/metaModuleSlice';
27
+ import { fetchAllCurrencies } from '../features/currencySlice';
31
28
  import { fetchRequiredConfig } from '../features/appConfigSlice';
32
29
  import { usePermissionsFetcher } from '../permissions';
33
- import { navigationInformations } from './NavigationInformationsProvider';
34
30
  import { registerTypes } from '../selections';
35
- import { useModulesInitialisation } from '../app';
36
- import { activeScreenProvider } from './ActiveScreenProvider';
31
+ import { useModulesInitialisation, } from '../app';
32
+ import { activeScreenProvider, ModuleNavigatorContext, navigationInformations, } from './providers';
33
+ import { DrawerContent, Header } from './components';
34
+ import { checkModulesMenusAccessibility, getDefaultModule, manageOverridingMenus, manageWebCompatibility, manageWebConfig, moduleHasMenus, manageSubMenusOverriding, getMenuTitle, hasSubMenus, formatMenus, } from './helpers';
37
35
  const Drawer = createDrawerNavigator();
38
36
  const Stack = createStackNavigator();
39
- export const ModuleNavigatorContext = createContext({ activeModule: null });
40
37
  const Navigator = ({ mainMenu, onRefresh, versionCheckConfig }) => {
41
38
  const I18n = useTranslator();
42
39
  const Colors = useThemeColor();
@@ -65,6 +62,7 @@ const Navigator = ({ mainMenu, onRefresh, versionCheckConfig }) => {
65
62
  }, []);
66
63
  useEffect(() => {
67
64
  dispatch(fetchMetaModules());
65
+ dispatch(fetchAllCurrencies());
68
66
  fetchAllPermission();
69
67
  }, [dispatch, fetchAllPermission]);
70
68
  const changeActiveModule = useCallback(moduleName => {
@@ -82,7 +80,7 @@ const Navigator = ({ mainMenu, onRefresh, versionCheckConfig }) => {
82
80
  navigationInformations.registerScreens(screenArray);
83
81
  return screenArray;
84
82
  }, [modules]);
85
- const ModulesScreensStackNavigator = useCallback(({ initialRouteName, ...rest }) => (<Stack.Navigator {...rest} initialRouteName={initialRouteName} screenListeners={{
83
+ const ModulesScreensStackNavigator = useCallback(({ initialRouteName, ...rest }) => (<Stack.Navigator id={undefined} {...rest} initialRouteName={initialRouteName} screenListeners={{
86
84
  state: e => {
87
85
  activeScreenProvider.registerActiveScreen(e.data?.state);
88
86
  },
@@ -111,7 +109,7 @@ const Navigator = ({ mainMenu, onRefresh, versionCheckConfig }) => {
111
109
  return { windowWidth: _width, isLargeScreen: _width >= 768 };
112
110
  }, []);
113
111
  return (<ModuleNavigatorContext.Provider value={{ activeModule }}>
114
- <Drawer.Navigator initialRouteName={mainMenu} screenOptions={{
112
+ <Drawer.Navigator id={undefined} initialRouteName={mainMenu} screenOptions={{
115
113
  headerShown: false,
116
114
  drawerStyle: {
117
115
  backgroundColor: Colors.backgroundColor,
@@ -121,19 +119,19 @@ const Navigator = ({ mainMenu, onRefresh, versionCheckConfig }) => {
121
119
  {Object.entries(modulesMenus).map(([key, menu], index) => {
122
120
  return (<React.Fragment key={index}>
123
121
  <Drawer.Screen key={key} name={key} options={{
124
- title: getMenuTitle(menu, { I18n }),
125
- unmountOnBlur: true,
122
+ title: getMenuTitle(menu, I18n),
123
+ popToTopOnBlur: true,
126
124
  }}>
127
125
  {props => menu.screen && (<ModulesScreensStackNavigator {...props} initialRouteName={menu.screen}/>)}
128
126
  </Drawer.Screen>
129
127
  {hasSubMenus(menu) &&
130
128
  Object.entries(menu.subMenus).map(([subMenukey, subMenu]) => {
131
129
  return (<Drawer.Screen key={subMenukey} name={subMenukey} options={{
132
- title: getMenuTitle(subMenu, { I18n }),
133
- unmountOnBlur: true,
130
+ title: getMenuTitle(subMenu, I18n),
131
+ popToTopOnBlur: true,
134
132
  }}>
135
- {props => (<ModulesScreensStackNavigator {...props} initialRouteName={subMenu.screen}/>)}
136
- </Drawer.Screen>);
133
+ {props => (<ModulesScreensStackNavigator {...props} initialRouteName={subMenu.screen}/>)}
134
+ </Drawer.Screen>);
137
135
  })}
138
136
  </React.Fragment>);
139
137
  })}