@axelor/aos-mobile-core 7.0.3 → 7.0.5

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 (254) hide show
  1. package/lib/api/metafile-api.d.ts +13 -1
  2. package/lib/api/metafile-api.js +19 -5
  3. package/lib/api/metafile-api.js.map +1 -1
  4. package/lib/api/mobile-config-api.js +9 -15
  5. package/lib/api/mobile-config-api.js.map +1 -1
  6. package/lib/api/model-api.d.ts +4 -0
  7. package/lib/api/model-api.js +28 -0
  8. package/lib/api/model-api.js.map +1 -0
  9. package/lib/apiProviders/utils.d.ts +7 -7
  10. package/lib/apiProviders/utils.js +31 -23
  11. package/lib/apiProviders/utils.js.map +1 -1
  12. package/lib/app/Module.d.ts +15 -2
  13. package/lib/auth/api/user-api.js +5 -3
  14. package/lib/auth/api/user-api.js.map +1 -1
  15. package/lib/auth/features/companySlice.d.ts +1 -1
  16. package/lib/auth/features/configSlice.d.ts +1 -1
  17. package/lib/auth/features/languageSlice.d.ts +1 -1
  18. package/lib/auth/features/userSlice.d.ts +1 -1
  19. package/lib/auth/features/userSlice.js +7 -5
  20. package/lib/auth/features/userSlice.js.map +1 -1
  21. package/lib/auth/i18n/en.json +0 -16
  22. package/lib/auth/i18n/fr.json +0 -16
  23. package/lib/auth/index.js +1 -0
  24. package/lib/auth/index.js.map +1 -1
  25. package/lib/auth/models/objectFields.js +14 -0
  26. package/lib/auth/models/objectFields.js.map +1 -1
  27. package/lib/components/external/Camera/Camera.js +15 -5
  28. package/lib/components/external/Camera/Camera.js.map +1 -1
  29. package/lib/components/external/Camera/CaptureButton.d.ts +2 -1
  30. package/lib/components/external/Camera/CaptureButton.js +3 -3
  31. package/lib/components/external/Camera/CaptureButton.js.map +1 -1
  32. package/lib/components/external/Stopwatch/Stopwatch.d.ts +5 -1
  33. package/lib/components/external/Stopwatch/Stopwatch.js +41 -11
  34. package/lib/components/external/Stopwatch/Stopwatch.js.map +1 -1
  35. package/lib/components/external/Timer/Timer.d.ts +3 -2
  36. package/lib/components/external/Timer/Timer.js +5 -4
  37. package/lib/components/external/Timer/Timer.js.map +1 -1
  38. package/lib/components/molecules/CameraButton/CameraButton.d.ts +12 -0
  39. package/lib/components/molecules/CameraButton/CameraButton.js +87 -0
  40. package/lib/components/molecules/CameraButton/CameraButton.js.map +1 -0
  41. package/lib/components/molecules/UploadFileInput/UploadFileInput.d.ts +13 -2
  42. package/lib/components/molecules/UploadFileInput/UploadFileInput.js +183 -20
  43. package/lib/components/molecules/UploadFileInput/UploadFileInput.js.map +1 -1
  44. package/lib/components/molecules/index.d.ts +1 -3
  45. package/lib/components/molecules/index.js +1 -3
  46. package/lib/components/molecules/index.js.map +1 -1
  47. package/lib/components/organisms/DateInput/DateInput.d.ts +2 -1
  48. package/lib/components/organisms/DateInput/DateInput.js +8 -5
  49. package/lib/components/organisms/DateInput/DateInput.js.map +1 -1
  50. package/lib/components/organisms/HeaderOptionsMenu/HeaderOptionsMenu.d.ts +2 -1
  51. package/lib/components/organisms/HeaderOptionsMenu/HeaderOptionsMenu.js +5 -4
  52. package/lib/components/organisms/HeaderOptionsMenu/HeaderOptionsMenu.js.map +1 -1
  53. package/lib/components/organisms/index.d.ts +1 -6
  54. package/lib/components/organisms/index.js +1 -6
  55. package/lib/components/organisms/index.js.map +1 -1
  56. package/lib/components/templates/AttachedFilesView/AttachedFilesView.js +1 -1
  57. package/lib/components/templates/AttachedFilesView/AttachedFilesView.js.map +1 -1
  58. package/lib/components/templates/index.d.ts +0 -3
  59. package/lib/components/templates/index.js +0 -3
  60. package/lib/components/templates/index.js.map +1 -1
  61. package/lib/config/routes.d.ts +16 -16
  62. package/lib/features/attachedFilesSlice.d.ts +1 -1
  63. package/lib/features/authSlice.d.ts +1 -1
  64. package/lib/features/cameraScannerSlice.d.ts +2 -2
  65. package/lib/features/cameraScannerSlice.js +4 -1
  66. package/lib/features/cameraScannerSlice.js.map +1 -1
  67. package/lib/features/cameraSlice.d.ts +13 -4
  68. package/lib/features/cameraSlice.js +4 -1
  69. package/lib/features/cameraSlice.js.map +1 -1
  70. package/lib/features/mailMessageSlice.d.ts +1 -1
  71. package/lib/features/menuConfigSlice.d.ts +1 -1
  72. package/lib/features/metaModuleSlice.d.ts +1 -1
  73. package/lib/features/metafileSlice.d.ts +1 -1
  74. package/lib/features/mobileConfigSlice.d.ts +1 -1
  75. package/lib/features/onlineSlice.d.ts +1 -1
  76. package/lib/features/scannerSlice.d.ts +2 -2
  77. package/lib/features/scannerSlice.js +4 -1
  78. package/lib/features/scannerSlice.js.map +1 -1
  79. package/lib/header/HeaderActionsProvider.d.ts +3 -4
  80. package/lib/header/HeaderActionsProvider.js +16 -10
  81. package/lib/header/HeaderActionsProvider.js.map +1 -1
  82. package/lib/header/hooks.d.ts +15 -1
  83. package/lib/header/hooks.js +28 -2
  84. package/lib/header/hooks.js.map +1 -1
  85. package/lib/header/index.d.ts +2 -1
  86. package/lib/header/index.js +2 -1
  87. package/lib/header/index.js.map +1 -1
  88. package/lib/header/types.d.ts +1 -0
  89. package/lib/i18n/component/Translator.d.ts +1 -1
  90. package/lib/i18n/hooks/use-translator.d.ts +1 -1
  91. package/lib/i18n/hooks/use-translator.js +3 -1
  92. package/lib/i18n/hooks/use-translator.js.map +1 -1
  93. package/lib/i18n/translations/en.json +35 -4
  94. package/lib/i18n/translations/fr.json +35 -4
  95. package/lib/index.d.ts +2 -2
  96. package/lib/index.js +2 -2
  97. package/lib/index.js.map +1 -1
  98. package/lib/navigator/Navigator.d.ts +1 -1
  99. package/lib/navigator/Navigator.js +21 -25
  100. package/lib/navigator/Navigator.js.map +1 -1
  101. package/lib/navigator/drawer/DrawerContent.js +39 -21
  102. package/lib/navigator/drawer/DrawerContent.js.map +1 -1
  103. package/lib/navigator/drawer/Header.js +26 -6
  104. package/lib/navigator/drawer/Header.js.map +1 -1
  105. package/lib/navigator/drawer/Menu.d.ts +2 -1
  106. package/lib/navigator/drawer/Menu.js +42 -17
  107. package/lib/navigator/drawer/Menu.js.map +1 -1
  108. package/lib/navigator/drawer/MenuItem.d.ts +8 -5
  109. package/lib/navigator/drawer/MenuItem.js +11 -51
  110. package/lib/navigator/drawer/MenuItem.js.map +1 -1
  111. package/lib/navigator/drawer/MenuItemEntry.d.ts +12 -0
  112. package/lib/navigator/drawer/MenuItemEntry.js +89 -0
  113. package/lib/navigator/drawer/MenuItemEntry.js.map +1 -0
  114. package/lib/navigator/drawer/SubMenuItem.d.ts +7 -0
  115. package/lib/navigator/drawer/SubMenuItem.js +34 -0
  116. package/lib/navigator/drawer/SubMenuItem.js.map +1 -0
  117. package/lib/navigator/drawer/SubMenuItemList.d.ts +10 -0
  118. package/lib/navigator/drawer/SubMenuItemList.js +46 -0
  119. package/lib/navigator/drawer/SubMenuItemList.js.map +1 -0
  120. package/lib/navigator/menu.helper.d.ts +9 -0
  121. package/lib/navigator/menu.helper.js +92 -0
  122. package/lib/navigator/menu.helper.js.map +1 -1
  123. package/lib/navigator/module.helper.d.ts +5 -0
  124. package/lib/navigator/module.helper.js +37 -1
  125. package/lib/navigator/module.helper.js.map +1 -1
  126. package/lib/redux/store.d.ts +1 -1
  127. package/lib/screens/BarcodeDisplayScreen.d.ts +4 -0
  128. package/lib/screens/BarcodeDisplayScreen.js +54 -0
  129. package/lib/screens/BarcodeDisplayScreen.js.map +1 -0
  130. package/lib/screens/LoginScreen.js +47 -73
  131. package/lib/screens/LoginScreen.js.map +1 -1
  132. package/lib/screens/SessionManagementScreen.js +41 -21
  133. package/lib/screens/SessionManagementScreen.js.map +1 -1
  134. package/lib/screens/index.d.ts +38 -0
  135. package/lib/screens/index.js +47 -0
  136. package/lib/screens/index.js.map +1 -0
  137. package/lib/sessions/SessionStorage.d.ts +4 -5
  138. package/lib/sessions/SessionStorage.js +30 -22
  139. package/lib/sessions/SessionStorage.js.map +1 -1
  140. package/lib/sessions/components/alerts/PopupCreateSession.d.ts +10 -0
  141. package/lib/sessions/components/alerts/PopupCreateSession.js +137 -0
  142. package/lib/sessions/components/alerts/PopupCreateSession.js.map +1 -0
  143. package/lib/sessions/components/alerts/PopupEditSession.d.ts +8 -0
  144. package/lib/sessions/components/alerts/PopupEditSession.js +84 -0
  145. package/lib/sessions/components/alerts/PopupEditSession.js.map +1 -0
  146. package/lib/sessions/components/alerts/PopupSession.d.ts +9 -0
  147. package/lib/sessions/components/alerts/PopupSession.js +84 -0
  148. package/lib/sessions/components/alerts/PopupSession.js.map +1 -0
  149. package/lib/sessions/components/alerts/index.d.ts +3 -0
  150. package/lib/sessions/components/alerts/index.js +21 -0
  151. package/lib/sessions/components/alerts/index.js.map +1 -0
  152. package/lib/sessions/components/buttons/DisabledButton.d.ts +7 -0
  153. package/lib/{components/molecules/LoginButton/LoginButton.js → sessions/components/buttons/DisabledButton.js} +5 -5
  154. package/lib/sessions/components/buttons/DisabledButton.js.map +1 -0
  155. package/lib/sessions/components/buttons/LoginButton.js +24 -0
  156. package/lib/sessions/components/buttons/LoginButton.js.map +1 -0
  157. package/lib/sessions/components/buttons/UpdateButton.d.ts +6 -0
  158. package/lib/sessions/components/buttons/UpdateButton.js +24 -0
  159. package/lib/sessions/components/buttons/UpdateButton.js.map +1 -0
  160. package/lib/sessions/components/buttons/index.d.ts +3 -0
  161. package/lib/sessions/components/buttons/index.js +21 -0
  162. package/lib/sessions/components/buttons/index.js.map +1 -0
  163. package/lib/sessions/components/display/LogoImage.js.map +1 -0
  164. package/lib/sessions/components/display/SessionCard.d.ts +9 -0
  165. package/lib/sessions/components/display/SessionCard.js +185 -0
  166. package/lib/sessions/components/display/SessionCard.js.map +1 -0
  167. package/lib/sessions/components/display/SessionListCard.d.ts +10 -0
  168. package/lib/sessions/components/display/SessionListCard.js +75 -0
  169. package/lib/sessions/components/display/SessionListCard.js.map +1 -0
  170. package/lib/sessions/components/display/index.d.ts +3 -0
  171. package/lib/sessions/components/display/index.js +21 -0
  172. package/lib/sessions/components/display/index.js.map +1 -0
  173. package/lib/{components/molecules/ErrorText → sessions/components/error}/ErrorText.js +2 -2
  174. package/lib/sessions/components/error/ErrorText.js.map +1 -0
  175. package/lib/sessions/components/error/index.d.ts +1 -0
  176. package/lib/sessions/components/error/index.js +19 -0
  177. package/lib/sessions/components/error/index.js.map +1 -0
  178. package/lib/sessions/components/index.d.ts +5 -0
  179. package/lib/sessions/components/index.js +23 -0
  180. package/lib/sessions/components/index.js.map +1 -0
  181. package/lib/sessions/components/inputs/DefaultCheckbox.d.ts +8 -0
  182. package/lib/sessions/components/inputs/DefaultCheckbox.js +36 -0
  183. package/lib/sessions/components/inputs/DefaultCheckbox.js.map +1 -0
  184. package/lib/{components/organisms/PasswordInput → sessions/components/inputs}/PasswordInput.d.ts +2 -1
  185. package/lib/{components/organisms/PasswordInput → sessions/components/inputs}/PasswordInput.js +5 -2
  186. package/lib/sessions/components/inputs/PasswordInput.js.map +1 -0
  187. package/lib/sessions/components/inputs/SessionInputs.d.ts +13 -0
  188. package/lib/sessions/components/inputs/SessionInputs.js +180 -0
  189. package/lib/sessions/components/inputs/SessionInputs.js.map +1 -0
  190. package/lib/{components/organisms/SessionNameInput → sessions/components/inputs}/SessionNameInput.d.ts +2 -1
  191. package/lib/{components/organisms/SessionNameInput → sessions/components/inputs}/SessionNameInput.js +5 -2
  192. package/lib/sessions/components/inputs/SessionNameInput.js.map +1 -0
  193. package/lib/{components/organisms/UrlInput → sessions/components/inputs}/UrlInput.d.ts +2 -1
  194. package/lib/{components/organisms/UrlInput → sessions/components/inputs}/UrlInput.js +14 -3
  195. package/lib/sessions/components/inputs/UrlInput.js.map +1 -0
  196. package/lib/{components/organisms/UsernameInput → sessions/components/inputs}/UsernameInput.js +10 -2
  197. package/lib/sessions/components/inputs/UsernameInput.js.map +1 -0
  198. package/lib/sessions/components/inputs/index.d.ts +6 -0
  199. package/lib/sessions/components/inputs/index.js +24 -0
  200. package/lib/sessions/components/inputs/index.js.map +1 -0
  201. package/lib/sessions/hook.d.ts +1 -1
  202. package/lib/sessions/hook.js +5 -5
  203. package/lib/sessions/hook.js.map +1 -1
  204. package/lib/sessions/index.d.ts +2 -1
  205. package/lib/sessions/index.js +2 -1
  206. package/lib/sessions/index.js.map +1 -1
  207. package/lib/sessions/type.d.ts +2 -1
  208. package/lib/sessions/type.js.map +1 -1
  209. package/lib/sessions/utils.d.ts +2 -1
  210. package/lib/sessions/utils.js +26 -7
  211. package/lib/sessions/utils.js.map +1 -1
  212. package/lib/tools/ContactProvider.d.ts +9 -0
  213. package/lib/tools/ContactProvider.js +98 -0
  214. package/lib/tools/ContactProvider.js.map +1 -0
  215. package/lib/tools/contact.helper.d.ts +21 -0
  216. package/lib/tools/contact.helper.js +136 -0
  217. package/lib/tools/contact.helper.js.map +1 -0
  218. package/lib/tools/index.d.ts +1 -0
  219. package/lib/tools/index.js +1 -0
  220. package/lib/tools/index.js.map +1 -1
  221. package/lib/utils/date.d.ts +16 -0
  222. package/lib/utils/date.js +41 -0
  223. package/lib/utils/date.js.map +1 -1
  224. package/lib/utils/index.d.ts +1 -1
  225. package/lib/utils/index.js +1 -1
  226. package/lib/utils/index.js.map +1 -1
  227. package/package.json +12 -10
  228. package/lib/components/molecules/ErrorText/ErrorText.js.map +0 -1
  229. package/lib/components/molecules/LoginButton/LoginButton.js.map +0 -1
  230. package/lib/components/molecules/SessionNumberIndicator/SessionNumberIndicator.d.ts +0 -4
  231. package/lib/components/molecules/SessionNumberIndicator/SessionNumberIndicator.js +0 -44
  232. package/lib/components/molecules/SessionNumberIndicator/SessionNumberIndicator.js.map +0 -1
  233. package/lib/components/organisms/LogoImage/LogoImage.js.map +0 -1
  234. package/lib/components/organisms/PasswordInput/PasswordInput.js.map +0 -1
  235. package/lib/components/organisms/SessionButtons/SessionButtons.d.ts +0 -17
  236. package/lib/components/organisms/SessionButtons/SessionButtons.js +0 -93
  237. package/lib/components/organisms/SessionButtons/SessionButtons.js.map +0 -1
  238. package/lib/components/organisms/SessionNameInput/SessionNameInput.js.map +0 -1
  239. package/lib/components/organisms/UrlInput/UrlInput.js.map +0 -1
  240. package/lib/components/organisms/UsernameInput/UsernameInput.js.map +0 -1
  241. package/lib/components/templates/PopupCreateSession/PopupCreateSession.d.ts +0 -10
  242. package/lib/components/templates/PopupCreateSession/PopupCreateSession.js +0 -171
  243. package/lib/components/templates/PopupCreateSession/PopupCreateSession.js.map +0 -1
  244. package/lib/components/templates/PopupSession/PopupSession.d.ts +0 -8
  245. package/lib/components/templates/PopupSession/PopupSession.js +0 -135
  246. package/lib/components/templates/PopupSession/PopupSession.js.map +0 -1
  247. package/lib/components/templates/PopupSessionList/PopupSessionList.d.ts +0 -7
  248. package/lib/components/templates/PopupSessionList/PopupSessionList.js +0 -107
  249. package/lib/components/templates/PopupSessionList/PopupSessionList.js.map +0 -1
  250. /package/lib/{components/molecules/LoginButton → sessions/components/buttons}/LoginButton.d.ts +0 -0
  251. /package/lib/{components/organisms/LogoImage → sessions/components/display}/LogoImage.d.ts +0 -0
  252. /package/lib/{components/organisms/LogoImage → sessions/components/display}/LogoImage.js +0 -0
  253. /package/lib/{components/molecules/ErrorText → sessions/components/error}/ErrorText.d.ts +0 -0
  254. /package/lib/{components/organisms/UsernameInput → sessions/components/inputs}/UsernameInput.d.ts +0 -0
@@ -27,9 +27,6 @@ class HeaderActionsProvider {
27
27
  register(callBack) {
28
28
  this.refreshCallBack = callBack;
29
29
  }
30
- updateState() {
31
- this.refreshCallBack(this.headerActions);
32
- }
33
30
  registerModel(key, options) {
34
31
  if (!Object.keys(this.headerActions).includes(key)) {
35
32
  this.headerActions[key] = options;
@@ -42,19 +39,28 @@ class HeaderActionsProvider {
42
39
  actions: mergeActions(oldOptions.actions, options.actions),
43
40
  };
44
41
  }
45
- this.updateState();
42
+ this.refreshCallBack(key, this.headerActions[key]);
46
43
  }
47
44
  getHeaderOptions(key) {
48
45
  return fetchOptionsOfHeaderKey(this.headerActions, key);
49
46
  }
50
47
  }
51
48
  export const headerActionsProvider = new HeaderActionsProvider();
52
- export const useHeaderOptions = (modelKey) => {
53
- const [header, setHeader] = useState();
54
- useEffect(() => {
55
- headerActionsProvider.register(setHeader);
49
+ export const useHeaderActions = () => {
50
+ const [headers, setHeaders] = useState();
51
+ const refreshData = useCallback((key, options) => {
52
+ setHeaders(_current => {
53
+ if (_current?.[key] === options) {
54
+ return _current;
55
+ }
56
+ const updatedHeaders = _current != null ? { ..._current } : {};
57
+ updatedHeaders[key] = options;
58
+ return updatedHeaders;
59
+ });
56
60
  }, []);
57
- const getHeaderOptionsOfModel = useCallback(key => fetchOptionsOfHeaderKey(header, key), [header]);
58
- return useMemo(() => ({ options: getHeaderOptionsOfModel(modelKey) }), [getHeaderOptionsOfModel, modelKey]);
61
+ useEffect(() => {
62
+ headerActionsProvider.register(refreshData);
63
+ }, [refreshData]);
64
+ return useMemo(() => ({ headers }), [headers]);
59
65
  };
60
66
  //# sourceMappingURL=HeaderActionsProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderActionsProvider.js","sourceRoot":"","sources":["../../src/header/HeaderActionsProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAEhE,OAAO,EAAC,uBAAuB,EAAE,YAAY,EAAC,MAAM,SAAS,CAAC;AAE9D,MAAM,qBAAqB;IACjB,aAAa,CAAgB;IAC7B,eAAe,CAAW;IAElC;QACE,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,eAAe,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;IAClC,CAAC;IAED,QAAQ,CAAC,QAAQ;QACf,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;IAClC,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC;IAED,aAAa,CAAC,GAAW,EAAE,OAAsB;QAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAClD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;SACnC;aAAM;YACL,MAAM,UAAU,GAAG,EAAC,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAC,CAAC;YAChD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG;gBACxB,GAAG,UAAU;gBACb,GAAG,OAAO;gBACV,OAAO,EAAE,YAAY,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC;aAC3D,CAAC;SACH;QACD,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,gBAAgB,CAAC,GAAW;QAC1B,OAAO,uBAAuB,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;IAC1D,CAAC;CACF;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,qBAAqB,EAAE,CAAC;AAEjE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAE,EAAE;IACnD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,EAAE,CAAC;IAEvC,SAAS,CAAC,GAAG,EAAE;QACb,qBAAqB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,uBAAuB,GAAG,WAAW,CACzC,GAAG,CAAC,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3C,CAAC,MAAM,CAAC,CACT,CAAC;IAEF,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC,EAAC,OAAO,EAAE,uBAAuB,CAAC,QAAQ,CAAC,EAAC,CAAC,EACpD,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CACpC,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"HeaderActionsProvider.js","sourceRoot":"","sources":["../../src/header/HeaderActionsProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAEhE,OAAO,EAAC,uBAAuB,EAAE,YAAY,EAAC,MAAM,SAAS,CAAC;AAE9D,MAAM,qBAAqB;IACjB,aAAa,CAAgB;IAC7B,eAAe,CAAW;IAElC;QACE,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,eAAe,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;IAClC,CAAC;IAED,QAAQ,CAAC,QAAQ;QACf,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC;IAClC,CAAC;IAED,aAAa,CAAC,GAAW,EAAE,OAAsB;QAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YAClD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;SACnC;aAAM;YACL,MAAM,UAAU,GAAG,EAAC,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAC,CAAC;YAChD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG;gBACxB,GAAG,UAAU;gBACb,GAAG,OAAO;gBACV,OAAO,EAAE,YAAY,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC;aAC3D,CAAC;SACH;QAED,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,gBAAgB,CAAC,GAAW;QAC1B,OAAO,uBAAuB,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;IAC1D,CAAC;CACF;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,qBAAqB,EAAE,CAAC;AAEjE,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAA6B,EAAE;IAC7D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,EAAiB,CAAC;IAExD,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,GAAW,EAAE,OAAsB,EAAE,EAAE;QACtE,UAAU,CAAC,QAAQ,CAAC,EAAE;YACpB,IAAI,QAAQ,EAAE,CAAC,GAAG,CAAC,KAAK,OAAO,EAAE;gBAC/B,OAAO,QAAQ,CAAC;aACjB;YAED,MAAM,cAAc,GAAG,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAC,GAAG,QAAQ,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAE7D,cAAc,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;YAE9B,OAAO,cAAc,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,qBAAqB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAC,OAAO,EAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/C,CAAC,CAAC"}
@@ -1,8 +1,9 @@
1
- export function useBasicActions({ model, modelId, disableMailMessages, attachedFileScreenTitle, }: {
1
+ export function useBasicActions({ model, modelId, disableMailMessages, attachedFileScreenTitle, barcodeFieldname, }: {
2
2
  model: any;
3
3
  modelId: any;
4
4
  disableMailMessages: any;
5
5
  attachedFileScreenTitle: any;
6
+ barcodeFieldname?: string;
6
7
  }): {
7
8
  mailMessagesAction: {
8
9
  key: string;
@@ -25,6 +26,15 @@ export function useBasicActions({ model, modelId, disableMailMessages, attachedF
25
26
  onPress: () => void;
26
27
  showInHeader: boolean;
27
28
  };
29
+ barcodeAction: {
30
+ key: string;
31
+ order: number;
32
+ title: string;
33
+ iconName: string;
34
+ hideIf: boolean;
35
+ onPress: () => void;
36
+ showInHeader: boolean;
37
+ };
28
38
  } | {
29
39
  mailMessagesAction: {
30
40
  key: string;
@@ -34,4 +44,8 @@ export function useBasicActions({ model, modelId, disableMailMessages, attachedF
34
44
  key: string;
35
45
  hideIf: boolean;
36
46
  };
47
+ barcodeAction: {
48
+ key: string;
49
+ hideIf: boolean;
50
+ };
37
51
  };
@@ -22,13 +22,15 @@ import { countAttachmentFiles } from '../features/attachedFilesSlice';
22
22
  import { countUnreadMailMessages } from '../features/mailMessageSlice';
23
23
  import { useTranslator } from '../i18n';
24
24
  import { checkNullString } from '../utils';
25
- export const useBasicActions = ({ model, modelId, disableMailMessages, attachedFileScreenTitle, }) => {
25
+ import { fetchModel } from '../api/model-api';
26
+ export const useBasicActions = ({ model, modelId, disableMailMessages, attachedFileScreenTitle, barcodeFieldname = 'barCode', }) => {
26
27
  const navigation = useNavigation();
27
28
  const I18n = useTranslator();
28
29
  const dispatch = useDispatch();
29
30
  const { attachments } = useSelector(state => state.attachedFiles);
30
31
  const { unreadMessages } = useSelector(state => state.mailMessages);
31
32
  const [disableAttachementFiles, setDisableAttachementFiles] = useState(true);
33
+ const [disableBarcode, setDisableBarcode] = useState(true);
32
34
  const modelConfigured = useMemo(() => !checkNullString(model) && modelId != null, [model, modelId]);
33
35
  const countUnreadMessagesAPI = useCallback(() => {
34
36
  if (modelConfigured) {
@@ -49,6 +51,13 @@ export const useBasicActions = ({ model, modelId, disableMailMessages, attachedF
49
51
  useEffect(() => {
50
52
  setDisableAttachementFiles(attachments === 0);
51
53
  }, [attachments]);
54
+ useEffect(() => {
55
+ fetchModel({ model, modelId })
56
+ .catch(() => {
57
+ setDisableBarcode(true);
58
+ })
59
+ .then(object => setDisableBarcode(object?.[barcodeFieldname] == null));
60
+ }, [barcodeFieldname, model, modelId]);
52
61
  const mailMessagesAction = useMemo(() => {
53
62
  return {
54
63
  key: 'mailMessages',
@@ -89,17 +98,34 @@ export const useBasicActions = ({ model, modelId, disableMailMessages, attachedF
89
98
  modelId,
90
99
  navigation,
91
100
  ]);
101
+ const barcodeAction = useMemo(() => {
102
+ return {
103
+ key: 'barcode',
104
+ order: 30,
105
+ title: I18n.t('Base_Barcode'),
106
+ iconName: 'qrcode',
107
+ hideIf: disableBarcode,
108
+ onPress: () => navigation.navigate('BarcodeDisplayScreen', {
109
+ model,
110
+ modelId,
111
+ barcodeFieldname,
112
+ }),
113
+ showInHeader: true,
114
+ };
115
+ }, [I18n, barcodeFieldname, disableBarcode, model, modelId, navigation]);
92
116
  return useMemo(() => {
93
117
  if (modelConfigured) {
94
118
  return {
95
119
  mailMessagesAction,
96
120
  attachedFilesAction,
121
+ barcodeAction,
97
122
  };
98
123
  }
99
124
  return {
100
125
  mailMessagesAction: { key: 'mailMessages', hideIf: true },
101
126
  attachedFilesAction: { key: 'attachedFiles', hideIf: true },
127
+ barcodeAction: { key: 'barcode', hideIf: true },
102
128
  };
103
- }, [attachedFilesAction, mailMessagesAction, modelConfigured]);
129
+ }, [attachedFilesAction, mailMessagesAction, modelConfigured, barcodeAction]);
104
130
  };
105
131
  //# sourceMappingURL=hooks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/header/hooks.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/header/hooks.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAChE,OAAO,EAAC,WAAW,EAAE,WAAW,EAAC,MAAM,aAAa,CAAC;AACrD,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,uBAAuB,EAAC,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAC,aAAa,EAAC,MAAM,SAAS,CAAC;AACtC,OAAO,EAAC,eAAe,EAAC,MAAM,UAAU,CAAC;AACzC,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAC;AAE5C,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAC9B,KAAK,EACL,OAAO,EACP,mBAAmB,EACnB,uBAAuB,EACvB,gBAAgB,GAAG,SAAS,GAC7B,EAAE,EAAE;IACH,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,EAAC,WAAW,EAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAChE,MAAM,EAAC,cAAc,EAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAElE,MAAM,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7E,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE3D,MAAM,eAAe,GAAG,OAAO,CAC7B,GAAG,EAAE,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,OAAO,IAAI,IAAI,EAChD,CAAC,KAAK,EAAE,OAAO,CAAC,CACjB,CAAC;IAEF,MAAM,sBAAsB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9C,IAAI,eAAe,EAAE;YACnB,QAAQ,CAAC,uBAAuB,CAAC,EAAC,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC,CAAC;SACrD;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;IAEhD,MAAM,mBAAmB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC3C,IAAI,eAAe,EAAE;YACnB,QAAQ,CAAC,oBAAoB,CAAC,EAAC,KAAK,EAAE,OAAO,EAAC,CAAC,CAAC,CAAC;SAClD;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;IAEhD,SAAS,CAAC,GAAG,EAAE;QACb,sBAAsB,EAAE,CAAC;IAC3B,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAE7B,SAAS,CAAC,GAAG,EAAE;QACb,mBAAmB,EAAE,CAAC;IACxB,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAE1B,SAAS,CAAC,GAAG,EAAE;QACb,0BAA0B,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC;IAChD,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,EAAC,KAAK,EAAE,OAAO,EAAC,CAAC;aACzB,KAAK,CAAC,GAAG,EAAE;YACV,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC,CAAC;aACD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;IAC3E,CAAC,EAAE,CAAC,gBAAgB,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IAEvC,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,EAAE;QACtC,OAAO;YACL,GAAG,EAAE,cAAc;YACnB,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,GAAG,EAAE,CACZ,UAAU,CAAC,QAAQ,CAAC,mBAAmB,EAAE;gBACvC,KAAK;gBACL,OAAO;aACR,CAAC;YACJ,MAAM,EAAE,mBAAmB;YAC3B,SAAS,EAAE,cAAc;YACzB,QAAQ,EAAE,MAAM;YAChB,YAAY,EAAE,KAAK;YACnB,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC;YAClC,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;IAE5E,MAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,EAAE;QACvC,OAAO;YACL,GAAG,EAAE,eAAe;YACpB,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC;YACnC,QAAQ,EAAE,WAAW;YACrB,SAAS,EAAE,WAAW;YACtB,MAAM,EAAE,uBAAuB;YAC/B,OAAO,EAAE,GAAG,EAAE,CACZ,UAAU,CAAC,QAAQ,CAAC,qBAAqB,EAAE;gBACzC,KAAK;gBACL,OAAO;gBACP,WAAW,EAAE,uBAAuB;aACrC,CAAC;YACJ,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC,EAAE;QACD,IAAI;QACJ,uBAAuB;QACvB,WAAW;QACX,uBAAuB;QACvB,KAAK;QACL,OAAO;QACP,UAAU;KACX,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,OAAO;YACL,GAAG,EAAE,SAAS;YACd,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC;YAC7B,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,cAAc;YACtB,OAAO,EAAE,GAAG,EAAE,CACZ,UAAU,CAAC,QAAQ,CAAC,sBAAsB,EAAE;gBAC1C,KAAK;gBACL,OAAO;gBACP,gBAAgB;aACjB,CAAC;YACJ,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IAEzE,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,IAAI,eAAe,EAAE;YACnB,OAAO;gBACL,kBAAkB;gBAClB,mBAAmB;gBACnB,aAAa;aACd,CAAC;SACH;QAED,OAAO;YACL,kBAAkB,EAAE,EAAC,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAC;YACvD,mBAAmB,EAAE,EAAC,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,EAAC;YACzD,aAAa,EAAE,EAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAC;SAC9C,CAAC;IACJ,CAAC,EAAE,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC;AAChF,CAAC,CAAC"}
@@ -1,5 +1,6 @@
1
- export { headerActionsProvider, useHeaderOptions } from './HeaderActionsProvider';
1
+ export { headerActionsProvider, useHeaderActions } from './HeaderActionsProvider';
2
2
  export { useBasicActions } from './hooks';
3
3
  export { HeaderActions, HeaderOptions, ActionType, HeaderBandItem, } from './types';
4
4
  export { HeaderBandProvider, useHeaderBand } from './HeaderBandContext';
5
5
  export { HeaderBandHelper } from './header-band-context.helper';
6
+ export { fetchOptionsOfHeaderKey } from './utils';
@@ -15,8 +15,9 @@
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 { headerActionsProvider, useHeaderOptions } from './HeaderActionsProvider';
18
+ export { headerActionsProvider, useHeaderActions } from './HeaderActionsProvider';
19
19
  export { useBasicActions } from './hooks';
20
20
  export { HeaderBandProvider, useHeaderBand } from './HeaderBandContext';
21
21
  export { HeaderBandHelper } from './header-band-context.helper';
22
+ export { fetchOptionsOfHeaderKey } from './utils';
22
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/header/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,qBAAqB,EAAE,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAAC,eAAe,EAAC,MAAM,SAAS,CAAC;AAOxC,OAAO,EAAC,kBAAkB,EAAE,aAAa,EAAC,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAC,gBAAgB,EAAC,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/header/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,qBAAqB,EAAE,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAAC,eAAe,EAAC,MAAM,SAAS,CAAC;AAOxC,OAAO,EAAC,kBAAkB,EAAE,aAAa,EAAC,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAC,gBAAgB,EAAC,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAC,uBAAuB,EAAC,MAAM,SAAS,CAAC"}
@@ -7,6 +7,7 @@ export interface HeaderOptions {
7
7
  modelId?: number;
8
8
  disableMailMessages?: boolean;
9
9
  attachedFileScreenTitle?: string;
10
+ barcodeFieldname?: string;
10
11
  headerTitle?: string;
11
12
  actions?: ActionType[];
12
13
  }
@@ -1,5 +1,5 @@
1
1
  export function getTranslations(language: any): any;
2
- export const selectLanguage: ((state: any) => any) & import("reselect").OutputSelectorFields<(args_0: any) => any, {
2
+ export const selectLanguage: ((state: any, ...params: any[]) => any) & import("reselect").OutputSelectorFields<(...args: readonly unknown[]) => any, {
3
3
  clearCache: () => void;
4
4
  }> & {
5
5
  clearCache: () => void;
@@ -1,5 +1,5 @@
1
1
  export interface TranslatorProps {
2
- t: (key: string) => string;
2
+ t: (key: string, values?: any) => string;
3
3
  }
4
4
  declare function useTranslator(): TranslatorProps;
5
5
  export default useTranslator;
@@ -18,7 +18,9 @@
18
18
  import { useMemo } from 'react';
19
19
  import { i18nProvider } from '../i18n';
20
20
  function useTranslator() {
21
- return useMemo(() => ({ t: i18nProvider?.i18n ? i18nProvider.i18n.t : value => value }), []);
21
+ return useMemo(() => ({ t: i18nProvider?.i18n ? i18nProvider.i18n.t : value => value }),
22
+ // eslint-disable-next-line react-hooks/exhaustive-deps
23
+ [i18nProvider.i18n.language]);
22
24
  }
23
25
  export default useTranslator;
24
26
  //# sourceMappingURL=use-translator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-translator.js","sourceRoot":"","sources":["../../../src/i18n/hooks/use-translator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAC,YAAY,EAAC,MAAM,SAAS,CAAC;AAMrC,SAAS,aAAa;IACpB,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC,EAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAC,CAAC,EACtE,EAAE,CACH,CAAC;AACJ,CAAC;AAED,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"use-translator.js","sourceRoot":"","sources":["../../../src/i18n/hooks/use-translator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAC,YAAY,EAAC,MAAM,SAAS,CAAC;AAMrC,SAAS,aAAa;IACpB,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC,EAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAC,CAAC;IACtE,uDAAuD;IACvD,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC7B,CAAC;AACJ,CAAC;AAED,eAAe,aAAa,CAAC"}
@@ -34,6 +34,7 @@
34
34
  "Base_Content": "Content",
35
35
  "Base_ViewAll": "View all",
36
36
  "Base_ChooseFile": "Choose a file",
37
+ "Base_FileSizeUploadError": "File is too big, max size is {{maxSize}}.",
37
38
  "Base_NoAppConfigured": "No module configured on your application, please contact an administrator.",
38
39
  "Base_MinimalRequiredVersion": "The current version is below the minimum required version, please update your application.",
39
40
  "Base_Contact_Admin": "Please contact an administrator.",
@@ -43,6 +44,7 @@
43
44
  "Base_Real": "Real",
44
45
  "Base_Large": "Large",
45
46
  "Base_Small": "Small",
47
+ "Base_Barcode": "Barcode",
46
48
  "Base_MailMessages": "Mail messages",
47
49
  "Base_Comment": "Comment",
48
50
  "Base_MailMessages_CommentInput_Placeholder": "Enter a comment",
@@ -65,11 +67,21 @@
65
67
  "Base_Failed_To": "Failed to",
66
68
  "Base_Offline_Mode": "The internet connection is disabled",
67
69
  "Base_Compatibily_Error": "This app isn't compatible with web application (v{{compatibility.moduleVersion}}).",
68
- "Base_Compatibily_ErrorDetails": "This menu item is not compatible with the current web ERP configuration. This menu entry requires the {{compatibility.moduleName}} application to be installed on the web instance with a version between {{compatibility.downToVersion}} and {{compatibility.upToVersion}}. The currently installed web version of the application is {{compatibility.moduleVersion}}.",
70
+ "Base_Compatibily_ErrorDetails": "This menu item is not compatible with the current web ERP configuration. This menu entry requires the {{compatibility.moduleName}} application to be installed on the web instance with a version higher than {{compatibility.downToVersion}} and strictly less than {{compatibility.upToVersion}}. The currently installed web version of the application is {{compatibility.moduleVersion}}.",
69
71
  "Base_Compatibily_NotFound": "The {{compatibility.moduleName}} web application cannot be found.",
70
- "Base_Compatibily_NotFoundDetails": "This menu item is not compatible with the current web ERP configuration. This menu entry requires the {{compatibility.moduleName}} application to be installed on the web instance with a version between {{compatibility.downToVersion}} and {{compatibility.upToVersion}}. The application is not installed on the web instance.",
71
- "Auth_WrongPasswordOrUserName": "Wrong username or password",
72
- "Auth_InvalidUrl": "Invalid url",
72
+ "Base_Compatibily_NotFoundDetails": "This menu item is not compatible with the current web ERP configuration. This menu entry requires the {{compatibility.moduleName}} application to be installed on the web instance with a version higher than {{compatibility.downToVersion}} and strictly less than {{compatibility.upToVersion}}. The application is not installed on the web instance.",
73
+ "Base_Connection_Login": "Login",
74
+ "Base_Connection_SessionName": "Session name",
75
+ "Base_Connection_Url": "Url",
76
+ "Base_Connection_Username": "Username",
77
+ "Base_Connection_Password": "Password",
78
+ "Base_Connection_Update": "Update",
79
+ "Base_Connection_SessionNameAlreadyExist": "Session name already exists",
80
+ "Base_Connection_WrongPasswordOrUserName": "Wrong username or password",
81
+ "Base_Connection_InvalidUrl": "Invalid url",
82
+ "Base_Connection_CreateSession": "Create a session",
83
+ "Base_Connection_EditSession": "Edit session",
84
+ "Base_Connection_DefaultSession": "Default session ?",
73
85
  "User_BlockConnection": "Stop internet connection",
74
86
  "Stopwatch_Status_Ready": "Ready",
75
87
  "Stopwatch_Status_InProgress": "InProgress",
@@ -77,6 +89,25 @@
77
89
  "Stopwatch_Status_Finished": "Finished",
78
90
  "Stopwatch_Status_Canceled": "Canceled",
79
91
  "Stopwatch_TimerFormat": "mm:ss",
92
+ "Base_Day_Sun": "Sun",
93
+ "Base_Day_Mon": "Mon",
94
+ "Base_Day_Tue": "Tue",
95
+ "Base_Day_Wed": "Wed",
96
+ "Base_Day_Thu": "Thu",
97
+ "Base_Day_Fri": "Fri",
98
+ "Base_Day_Sat": "Sat",
99
+ "Base_Month_Jan": "Jan",
100
+ "Base_Month_Feb": "Feb",
101
+ "Base_Month_Mar": "Mar",
102
+ "Base_Month_Apr": "Apr",
103
+ "Base_Month_May": "May",
104
+ "Base_Month_Jun": "Jun",
105
+ "Base_Month_Jul": "Jul",
106
+ "Base_Month_Aug": "Aug",
107
+ "Base_Month_Sep": "Sept",
108
+ "Base_Month_Oct": "Oct",
109
+ "Base_Month_Nov": "Nov",
110
+ "Base_Month_Dec": "Dec",
80
111
  "Base_SliceAction_FetchAttachedFiles": "fetch attached files",
81
112
  "Base_SliceAction_FetchFilesDetails": "fetch file details",
82
113
  "Base_SliceAction_FetchMetaModule": "fetch meta modules",
@@ -34,6 +34,7 @@
34
34
  "Base_Content": "Contenu",
35
35
  "Base_ViewAll": "Tout voir",
36
36
  "Base_ChooseFile": "Choisir un fichier",
37
+ "Base_FileSizeUploadError": "Le fichier est trop lourd, la taille maximale est {{maxSize}}.",
37
38
  "Base_NoAppConfigured": "Votre application n'est pas configurée, merci de contacter un administrateur.",
38
39
  "Base_MinimalRequiredVersion": "La version actuelle est en dessous de la version minimale requise, merci de mettre à jour votre application.",
39
40
  "Base_Contact_Admin": "Merci de contacter un administrateur.",
@@ -43,6 +44,7 @@
43
44
  "Base_Real": "Réelle",
44
45
  "Base_Large": "Large",
45
46
  "Base_Small": "Petit",
47
+ "Base_Barcode": "Code-barre",
46
48
  "Base_MailMessages": "Suivi des notifications",
47
49
  "Base_Comment": "Commentaire",
48
50
  "Base_MailMessages_CommentInput_Placeholder": "Entrez votre commentaire",
@@ -65,11 +67,21 @@
65
67
  "Base_Failed_To": "N'a pas réussi à effectuer l'action :",
66
68
  "Base_Offline_Mode": "La connexion internet est désactivée",
67
69
  "Base_Compatibily_Error": "Cette app n'est pas compatible avec l'application web (v{{compatibility.moduleVersion}}).",
68
- "Base_Compatibily_ErrorDetails": "Cette entrée de menu n'est pas compatible avec la configuration de l'ERP web actuelle. Cette entrée de menu nécessite que l'application {{compatibility.moduleName}} soit installée sur l'instance web avec une version comprise entre {{compatibility.downToVersion}} et {{compatibility.upToVersion}}. La version web installée de l'application est actuellement la {{compatibility.moduleVersion}}.",
70
+ "Base_Compatibily_ErrorDetails": "Cette entrée de menu n'est pas compatible avec la configuration de l'ERP web actuelle. Cette entrée de menu nécessite que l'application {{compatibility.moduleName}} soit installée sur l'instance web avec une version supérieure à {{compatibility.downToVersion}} et strictement inférieure à {{compatibility.upToVersion}}. La version web installée de l'application est actuellement la {{compatibility.moduleVersion}}.",
69
71
  "Base_Compatibily_NotFound": "L'application web {{compatibility.moduleName}} est introuvable.",
70
- "Base_Compatibily_NotFoundDetails": "Cette entrée de menu n'est pas compatible avec la configuration de l'ERP web actuelle. Cette entrée de menu nécessite que l'application {{compatibility.moduleName}} soit installée sur l'instance web avec une version comprise entre {{compatibility.downToVersion}} et {{compatibility.upToVersion}}. L'application n'est pas installée sur l'instance web.",
71
- "Auth_WrongPasswordOrUserName": "Mauvais nom d'utilisateur ou mot de passe",
72
- "Auth_InvalidUrl": "Url non valide",
72
+ "Base_Compatibily_NotFoundDetails": "Cette entrée de menu n'est pas compatible avec la configuration de l'ERP web actuelle. Cette entrée de menu nécessite que l'application {{compatibility.moduleName}} soit installée sur l'instance web avec une version supérieure à {{compatibility.downToVersion}} et strictement inférieure à {{compatibility.upToVersion}}. L'application n'est pas installée sur l'instance web.",
73
+ "Base_Connection_Login": "Se connecter",
74
+ "Base_Connection_SessionName": "Nom de la session",
75
+ "Base_Connection_Url": "Url",
76
+ "Base_Connection_Username": "Nom utilisateur",
77
+ "Base_Connection_Password": "Mot de passe",
78
+ "Base_Connection_Update": "Mettre à jour",
79
+ "Base_Connection_SessionNameAlreadyExist": "Ce nom de session existe déjà",
80
+ "Base_Connection_WrongPasswordOrUserName": "Mauvais nom d'utilisateur ou mot de passe",
81
+ "Base_Connection_InvalidUrl": "Url non valide",
82
+ "Base_Connection_CreateSession": "Créer une session",
83
+ "Base_Connection_EditSession": "Editer la session",
84
+ "Base_Connection_DefaultSession": "Session par défaut ?",
73
85
  "User_BlockConnection": "Bloquer la connexion internet",
74
86
  "Stopwatch_Status_Ready": "Prêt",
75
87
  "Stopwatch_Status_InProgress": "En cours",
@@ -77,6 +89,25 @@
77
89
  "Stopwatch_Status_Finished": "Terminé",
78
90
  "Stopwatch_Status_Canceled": "Annulé",
79
91
  "Stopwatch_TimerFormat": "mm:ss",
92
+ "Base_Day_Sun": "Dim.",
93
+ "Base_Day_Mon": "Lun.",
94
+ "Base_Day_Tue": "Mar.",
95
+ "Base_Day_Wed": "Mer.",
96
+ "Base_Day_Thu": "Jeu.",
97
+ "Base_Day_Fri": "Ven.",
98
+ "Base_Day_Sat": "Sam.",
99
+ "Base_Month_Jan": "Janv.",
100
+ "Base_Month_Feb": "Fev.",
101
+ "Base_Month_Mar": "Mars",
102
+ "Base_Month_Apr": "Avr.",
103
+ "Base_Month_May": "Mai",
104
+ "Base_Month_Jun": "Juin",
105
+ "Base_Month_Jul": "Juill.",
106
+ "Base_Month_Aug": "Août",
107
+ "Base_Month_Sep": "Sept.",
108
+ "Base_Month_Oct": "Oct.",
109
+ "Base_Month_Nov": "Nov.",
110
+ "Base_Month_Dec": "Déc.",
80
111
  "Base_SliceAction_FetchAttachedFiles": "récupération des fichiers joints",
81
112
  "Base_SliceAction_FetchFilesDetails": "récupération des détails du fichier",
82
113
  "Base_SliceAction_FetchMetaModule": "récupération des modules",
package/lib/index.d.ts CHANGED
@@ -7,10 +7,10 @@ export { useEffectDebugger } from './hooks/use-effect-debugger';
7
7
  export { login, logout } from './features/authSlice';
8
8
  export * from './apiProviders';
9
9
  export { useScannedValueByKey, useScannerSelector, enableScan, scanValue, disableScan, default as scannerReducer, } from './features/scannerSlice';
10
- export { useCameraSelector, useCameraValueByKey, enableCamera, takePhoto, disableCamera, default as cameraReducer, } from './features/cameraSlice';
10
+ export { useCameraSelector, useCameraValueByKey, enableCamera, takePhoto, clearPhoto, disableCamera, default as cameraReducer, } from './features/cameraSlice';
11
11
  export { useEffectOnline, useOnline, enable as enableOnline, disable as disableOnline, } from './features/onlineSlice';
12
12
  export { getNetInfo } from './api/net-info-utils';
13
- export { uploadFile } from './api/metafile-api';
13
+ export { uploadFile, uploadBase64 } from './api/metafile-api';
14
14
  export { useDispatch, useSelector } from './redux/hooks';
15
15
  export * from './components';
16
16
  export * from './tools';
package/lib/index.js CHANGED
@@ -24,10 +24,10 @@ export { useEffectDebugger } from './hooks/use-effect-debugger';
24
24
  export { login, logout } from './features/authSlice';
25
25
  export * from './apiProviders';
26
26
  export { useScannedValueByKey, useScannerSelector, enableScan, scanValue, disableScan, default as scannerReducer, } from './features/scannerSlice';
27
- export { useCameraSelector, useCameraValueByKey, enableCamera, takePhoto, disableCamera, default as cameraReducer, } from './features/cameraSlice';
27
+ export { useCameraSelector, useCameraValueByKey, enableCamera, takePhoto, clearPhoto, disableCamera, default as cameraReducer, } from './features/cameraSlice';
28
28
  export { useEffectOnline, useOnline, enable as enableOnline, disable as disableOnline, } from './features/onlineSlice';
29
29
  export { getNetInfo } from './api/net-info-utils';
30
- export { uploadFile } from './api/metafile-api';
30
+ export { uploadFile, uploadBase64 } from './api/metafile-api';
31
31
  export { useDispatch, useSelector } from './redux/hooks';
32
32
  export * from './components';
33
33
  export * from './tools';
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,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAC3D,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,EAAC,iBAAiB,EAAC,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAC,KAAK,EAAE,MAAM,EAAC,MAAM,sBAAsB,CAAC;AACnD,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,WAAW,EACX,OAAO,IAAI,cAAc,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,SAAS,EACT,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,EAAC,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAC,WAAW,EAAE,WAAW,EAAC,MAAM,eAAe,CAAC;AACvD,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,OAAO,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,cAAc,OAAO,CAAC;AACtB,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAC3D,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,EAAC,iBAAiB,EAAC,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAC,KAAK,EAAE,MAAM,EAAC,MAAM,sBAAsB,CAAC;AACnD,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,WAAW,EACX,OAAO,IAAI,cAAc,GAC1B,MAAM,yBAAyB,CAAC;AACjC,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,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,OAAO,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC"}
@@ -4,7 +4,7 @@ export const ModuleNavigatorContext: React.Context<{
4
4
  modulesScreens: {};
5
5
  }>;
6
6
  export default Navigator;
7
- import React from "react";
7
+ import React from 'react';
8
8
  declare function Navigator({ modules, mainMenu, onRefresh, version, versionCheckConfig, }: {
9
9
  modules: any;
10
10
  mainMenu: any;
@@ -22,13 +22,12 @@ import { createStackNavigator } from '@react-navigation/stack';
22
22
  import { useThemeColor } from '@axelor/aos-mobile-ui';
23
23
  import DrawerContent from './drawer/DrawerContent';
24
24
  import { filterAuthorizedModules, getDefaultModule, manageOverridingMenus, manageWebCompatibility, moduleHasMenus, updateAccessibleMenus, } from './module.helper';
25
- import { getMenuTitle } from './menu.helper';
25
+ import { manageSubMenusOverriding, getMenuTitle, hasSubMenus, } from './menu.helper';
26
26
  import useTranslator from '../i18n/hooks/use-translator';
27
27
  import { useDispatch, useSelector } from 'react-redux';
28
28
  import { fetchMenuConfig } from '../features/menuConfigSlice';
29
29
  import { fetchMobileConfig } from '../features/mobileConfigSlice';
30
- import AttachedFilesScreen from '../screens/AttachedFilesScreen';
31
- import MailMessageScreen from '../screens/MailMessageScreen';
30
+ import BaseScreen from '../screens';
32
31
  import Header from './drawer/Header';
33
32
  import { fetchMetaModules } from '../features/metaModuleSlice';
34
33
  const Drawer = createDrawerNavigator();
@@ -46,7 +45,7 @@ const Navigator = ({ modules, mainMenu, onRefresh, version, versionCheckConfig,
46
45
  const I18n = useTranslator();
47
46
  const Colors = useThemeColor();
48
47
  const dispatch = useDispatch();
49
- const enabledModule = useMemo(() => manageWebCompatibility(manageOverridingMenus(filterAuthorizedModules(modules, mobileConfigs, user)), metaModules), [metaModules, mobileConfigs, modules, user]);
48
+ const enabledModule = useMemo(() => manageWebCompatibility(manageOverridingMenus(manageSubMenusOverriding(filterAuthorizedModules(modules, mobileConfigs, user))), metaModules), [metaModules, mobileConfigs, modules, user]);
50
49
  const [activeModule, setActiveModule] = useState(getDefaultModule(enabledModule, mainMenu));
51
50
  useEffect(() => {
52
51
  dispatch(fetchMobileConfig());
@@ -63,22 +62,7 @@ const Navigator = ({ modules, mainMenu, onRefresh, version, versionCheckConfig,
63
62
  .reduce((menus, _module) => ({ ...menus, ..._module.menus }), {});
64
63
  }, [enabledModule, restrictedMenus, user]);
65
64
  const modulesScreens = useMemo(() => modules.reduce((screens, module) => ({ ...screens, ...module.screens }), {
66
- AttachedFilesScreen: {
67
- title: 'Base_AttachedFiles',
68
- component: AttachedFilesScreen,
69
- actionID: 'core_attachedFiles_details',
70
- options: {
71
- shadedHeader: false,
72
- },
73
- },
74
- MailMessageScreen: {
75
- title: 'Base_MailMessages',
76
- component: MailMessageScreen,
77
- actionID: 'core_mailMessage_details',
78
- options: {
79
- shadedHeader: false,
80
- },
81
- },
65
+ ...BaseScreen,
82
66
  }), [modules]);
83
67
  const ModulesScreensStackNavigator = useCallback(({ initialRouteName, ...rest }) => (<Stack.Navigator {...rest} initialRouteName={initialRouteName}>
84
68
  {Object.entries(modulesScreens).map(([key, { component, title, actionID, options = { shadedHeader: true } },]) => {
@@ -110,11 +94,23 @@ const Navigator = ({ modules, mainMenu, onRefresh, version, versionCheckConfig,
110
94
  width: isLargeScreen ? windowWidth * 0.5 : windowWidth * 0.8,
111
95
  },
112
96
  }} drawerContent={props => (<DrawerContent {...props} modules={enabledModule} onModuleClick={changeActiveModule} onRefresh={onRefresh} version={version} versionCheckConfig={versionCheckConfig}/>)}>
113
- {Object.entries(modulesMenus).map(([key, menu]) => (<Drawer.Screen key={key} name={key} options={{
114
- title: getMenuTitle(menu, { I18n }),
115
- }}>
116
- {props => (<ModulesScreensStackNavigator {...props} initialRouteName={menu.screen}/>)}
117
- </Drawer.Screen>))}
97
+ {Object.entries(modulesMenus).map(([key, menu], index) => {
98
+ return (<React.Fragment key={index}>
99
+ <Drawer.Screen key={key} name={key} options={{
100
+ title: getMenuTitle(menu, { I18n }),
101
+ }}>
102
+ {props => menu.screen && (<ModulesScreensStackNavigator {...props} initialRouteName={menu.screen}/>)}
103
+ </Drawer.Screen>
104
+ {hasSubMenus(menu) &&
105
+ Object.entries(menu.subMenus).map(([subMenukey, subMenu]) => {
106
+ return (<Drawer.Screen key={subMenukey} name={subMenukey} options={{
107
+ title: getMenuTitle(subMenu, { I18n }),
108
+ }}>
109
+ {props => (<ModulesScreensStackNavigator {...props} initialRouteName={subMenu.screen}/>)}
110
+ </Drawer.Screen>);
111
+ })}
112
+ </React.Fragment>);
113
+ })}
118
114
  </Drawer.Navigator>
119
115
  </ModuleNavigatorContext.Provider>);
120
116
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Navigator.js","sourceRoot":"","sources":["../../src/navigator/Navigator.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Navigator.js","sourceRoot":"","sources":["../../src/navigator/Navigator.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EACZ,aAAa,EACb,WAAW,EACX,SAAS,EACT,OAAO,EACP,QAAQ,GACT,MAAM,OAAO,CAAC;AACf,OAAO,EAAC,UAAU,EAAE,QAAQ,EAAC,MAAM,cAAc,CAAC;AAClD,OAAO,EAAC,qBAAqB,EAAC,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAC,oBAAoB,EAAC,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AACpD,OAAO,aAAa,MAAM,wBAAwB,CAAC;AACnD,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,GACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,wBAAwB,EACxB,YAAY,EACZ,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,aAAa,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAC,WAAW,EAAE,WAAW,EAAC,MAAM,aAAa,CAAC;AACrD,OAAO,EAAC,eAAe,EAAC,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAC,iBAAiB,EAAC,MAAM,+BAA+B,CAAC;AAChE,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAC,gBAAgB,EAAC,MAAM,6BAA6B,CAAC;AAE7D,MAAM,MAAM,GAAG,qBAAqB,EAAE,CAAC;AACvC,MAAM,KAAK,GAAG,oBAAoB,EAAE,CAAC;AAErC,MAAM,CAAC,MAAM,sBAAsB,GAAG,aAAa,CAAC;IAClD,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,EAAE;IAChB,cAAc,EAAE,EAAE;CACnB,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,CAAC,EACjB,OAAO,EACP,QAAQ,EACR,SAAS,EACT,OAAO,EACP,kBAAkB,GACnB,EAAE,EAAE;IACH,MAAM,EAAC,IAAI,EAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAChD,MAAM,EAAC,eAAe,EAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACjE,MAAM,EAAC,aAAa,EAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACjE,MAAM,EAAC,WAAW,EAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAE7D,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,aAAa,GAAG,OAAO,CAC3B,GAAG,EAAE,CACH,sBAAsB,CACpB,qBAAqB,CACnB,wBAAwB,CACtB,uBAAuB,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,CAAC,CACtD,CACF,EACD,WAAW,CACZ,EACH,CAAC,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,CAC5C,CAAC;IAEF,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAC9C,gBAAgB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAC1C,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC9B,QAAQ,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC7B,QAAQ,CAAC,eAAe,EAAE,CAAC,CAAC;IAC9B,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,kBAAkB,GAAG,WAAW,CACpC,UAAU,CAAC,EAAE;QACX,eAAe,CACb,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC,CAC3D,CAAC;IACJ,CAAC,EACD,CAAC,aAAa,CAAC,CAChB,CAAC;IAEF,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE;QAChC,OAAO,aAAa;aACjB,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,qBAAqB,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;aACrE,MAAM,CAAC,cAAc,CAAC;aACtB,MAAM,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,EAAC,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,EAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC,EAAE,CAAC,aAAa,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC,CAAC;IAE3C,MAAM,cAAc,GAAG,OAAO,CAC5B,GAAG,EAAE,CACH,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,EAAC,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO,EAAC,CAAC,EAAE;QACrE,GAAG,UAAU;KACd,CAAC,EACJ,CAAC,OAAO,CAAC,CACV,CAAC;IAEF,MAAM,4BAA4B,GAAG,WAAW,CAC9C,CAAC,EAAC,gBAAgB,EAAE,GAAG,IAAI,EAAC,EAAE,EAAE,CAAC,CAC/B,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CAC5D;QAAA,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,GAAG,CACjC,CAAC,CACC,GAAG,EACH,EAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,GAAG,EAAC,YAAY,EAAE,IAAI,EAAC,EAAC,EAC7D,EAAE,EAAE;YACH,OAAO,CACL,CAAC,KAAK,CAAC,MAAM,CACX,GAAG,CAAC,CAAC,GAAG,CAAC,CACT,IAAI,CAAC,CAAC,GAAG,CAAC,CACV,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,OAAO,CAAC,CAAC;oBACP,WAAW,EAAE;wBACX;4BACE,SAAS,EAAE,CAAC;yBACb;wBACD,QAAQ,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC,OAAO,EAAE,YAAY;4BAC7C,CAAC,CAAC;gCACE,aAAa,EAAE,CAAC;6BACjB;4BACH,CAAC,CAAC,IAAI;qBACT;oBACD,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI;oBACtB,WAAW,EAAE,GAAG,EAAE,CAAC,IAAI;oBACvB,gBAAgB,EAAE,EAAC,KAAK,EAAE,MAAM,EAAC;oBACjC,WAAW,EAAE,GAAG,EAAE,CAAC,CACjB,CAAC,MAAM,CACL,UAAU,CAAC,CAAC,gBAAgB,KAAK,GAAG,CAAC,CACrC,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,YAAY,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,EACpC,CACH;iBACF,CAAC,EACF,CACH,CAAC;QACJ,CAAC,CACF,CACH;MAAA,EAAE,KAAK,CAAC,SAAS,CAAC,CACnB,EACD,CAAC,cAAc,CAAC,CACjB,CAAC;IAEF,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;IACnD,MAAM,aAAa,GAAG,WAAW,IAAI,GAAG,CAAC;IAEzC,OAAO,CACL,CAAC,sBAAsB,CAAC,QAAQ,CAC9B,KAAK,CAAC,CAAC,EAAC,YAAY,EAAE,YAAY,EAAE,cAAc,EAAC,CAAC,CACpD;MAAA,CAAC,MAAM,CAAC,SAAS,CACf,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CAC3B,aAAa,CAAC,CAAC;YACb,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE;gBACX,eAAe,EAAE,MAAM,CAAC,eAAe;gBACvC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,GAAG,GAAG;aAC7D;SACF,CAAC,CACF,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CACtB,CAAC,aAAa,CACZ,IAAI,KAAK,CAAC,CACV,OAAO,CAAC,CAAC,aAAa,CAAC,CACvB,aAAa,CAAC,CAAC,kBAAkB,CAAC,CAClC,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,EACvC,CACH,CAAC,CACF;QAAA,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE;YACvD,OAAO,CACL,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CACzB;cAAA,CAAC,MAAM,CAAC,MAAM,CACZ,GAAG,CAAC,CAAC,GAAG,CAAC,CACT,IAAI,CAAC,CAAC,GAAG,CAAC,CACV,OAAO,CAAC,CAAC;oBACP,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE,EAAC,IAAI,EAAC,CAAC;iBAClC,CAAC,CACF;gBAAA,CAAC,KAAK,CAAC,EAAE,CACP,IAAI,CAAC,MAAM,IAAI,CACb,CAAC,4BAA4B,CAC3B,IAAI,KAAK,CAAC,CACV,gBAAgB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAC9B,CACH,CAEL;cAAA,EAAE,MAAM,CAAC,MAAM,CACf;cAAA,CAAC,WAAW,CAAC,IAAI,CAAC;oBAChB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,EAAE;wBAC1D,OAAO,CACL,CAAC,MAAM,CAAC,MAAM,CACZ,GAAG,CAAC,CAAC,UAAU,CAAC,CAChB,IAAI,CAAC,CAAC,UAAU,CAAC,CACjB,OAAO,CAAC,CAAC;gCACP,KAAK,EAAE,YAAY,CAAC,OAAO,EAAE,EAAC,IAAI,EAAC,CAAC;6BACrC,CAAC,CACF;sBAAA,CAAC,KAAK,CAAC,EAAE,CAAC,CACR,CAAC,4BAA4B,CAC3B,IAAI,KAAK,CAAC,CACV,gBAAgB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EACjC,CACH,CACH;oBAAA,EAAE,MAAM,CAAC,MAAM,CAAC,CACjB,CAAC;oBACJ,CAAC,CAAC,CACN;YAAA,EAAE,KAAK,CAAC,QAAQ,CAAC,CAClB,CAAC;QACJ,CAAC,CAAC,CACJ;MAAA,EAAE,MAAM,CAAC,SAAS,CACpB;IAAA,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CACnC,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC"}