@axelor/aos-mobile-core 6.4.0 → 6.4.2
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.
- package/README.md +24 -18
- package/lib/api/login-api.d.ts +1 -0
- package/lib/api/login-api.js +2 -2
- package/lib/api/login-api.js.map +1 -1
- package/lib/api/mobile-config-api.js +30 -5
- package/lib/api/mobile-config-api.js.map +1 -1
- package/lib/api/utils.js +9 -10
- package/lib/api/utils.js.map +1 -1
- package/lib/app/Application.d.ts +17 -2
- package/lib/app/Application.js +6 -3
- package/lib/app/Application.js.map +1 -1
- package/lib/app/ContextedApplication.d.ts +15 -1
- package/lib/app/ContextedApplication.js +6 -4
- package/lib/app/ContextedApplication.js.map +1 -1
- package/lib/app/ContextsProvider.d.ts +2 -1
- package/lib/app/ContextsProvider.js +9 -4
- package/lib/app/ContextsProvider.js.map +1 -1
- package/lib/app/Module.d.ts +9 -6
- package/lib/app/RootNavigator.d.ts +3 -1
- package/lib/app/RootNavigator.js +7 -3
- package/lib/app/RootNavigator.js.map +1 -1
- package/lib/auth/features/companySlice.js +1 -1
- package/lib/auth/features/companySlice.js.map +1 -1
- package/lib/auth/features/configSlice.js +2 -2
- package/lib/auth/features/configSlice.js.map +1 -1
- package/lib/auth/features/languageSlice.js +1 -1
- package/lib/auth/features/languageSlice.js.map +1 -1
- package/lib/auth/features/userSlice.js +2 -2
- package/lib/auth/features/userSlice.js.map +1 -1
- package/lib/auth/i18n/en.json +7 -1
- package/lib/auth/i18n/fr.json +7 -1
- package/lib/auth/screens/SettingsScreen.d.ts +2 -1
- package/lib/auth/screens/SettingsScreen.js +19 -5
- package/lib/auth/screens/SettingsScreen.js.map +1 -1
- package/lib/auth/screens/UserScreen.js +1 -1
- package/lib/auth/screens/UserScreen.js.map +1 -1
- package/lib/components/external/Camera/Camera.js +1 -1
- package/lib/components/external/Camera/Camera.js.map +1 -1
- package/lib/components/external/CameraScanner/CameraScanner.d.ts +1 -9
- package/lib/components/external/CameraScanner/CameraScanner.js +26 -28
- package/lib/components/external/CameraScanner/CameraScanner.js.map +1 -1
- package/lib/components/external/CodeHighlighter/CodeHighlighter.d.ts +9 -0
- package/lib/components/external/CodeHighlighter/CodeHighlighter.js +30 -0
- package/lib/components/external/CodeHighlighter/CodeHighlighter.js.map +1 -0
- package/lib/components/external/CodeHighlighter/code-highlighter.helper.d.ts +39 -0
- package/lib/components/external/CodeHighlighter/code-highlighter.helper.js +60 -0
- package/lib/components/external/CodeHighlighter/code-highlighter.helper.js.map +1 -0
- package/lib/components/external/PlanningView/PlanningView.d.ts +5 -4
- package/lib/components/external/PlanningView/PlanningView.js +65 -21
- package/lib/components/external/PlanningView/PlanningView.js.map +1 -1
- package/lib/components/external/PlanningView/agenda.helpers.d.ts +15 -2
- package/lib/components/external/PlanningView/agenda.helpers.js +69 -9
- package/lib/components/external/PlanningView/agenda.helpers.js.map +1 -1
- package/lib/components/external/Scanner/Scanner.js +10 -6
- package/lib/components/external/Scanner/Scanner.js.map +1 -1
- package/lib/components/external/index.d.ts +2 -0
- package/lib/components/external/index.js +2 -0
- package/lib/components/external/index.js.map +1 -1
- package/lib/components/molecules/DatePicker/DatePicker.d.ts +8 -0
- package/lib/components/molecules/DatePicker/DatePicker.js +33 -0
- package/lib/components/molecules/DatePicker/DatePicker.js.map +1 -0
- package/lib/components/molecules/ErrorText/ErrorText.d.ts +2 -2
- package/lib/components/molecules/ErrorText/ErrorText.js +53 -7
- package/lib/components/molecules/ErrorText/ErrorText.js.map +1 -1
- package/lib/components/molecules/InputBarCodeCard/InputBarCodeCard.d.ts +3 -1
- package/lib/components/molecules/InputBarCodeCard/InputBarCodeCard.js +22 -40
- package/lib/components/molecules/InputBarCodeCard/InputBarCodeCard.js.map +1 -1
- package/lib/components/molecules/LoginButton/LoginButton.d.ts +2 -1
- package/lib/components/molecules/LoginButton/LoginButton.js +4 -3
- package/lib/components/molecules/LoginButton/LoginButton.js.map +1 -1
- package/lib/components/molecules/index.d.ts +1 -0
- package/lib/components/molecules/index.js +1 -0
- package/lib/components/molecules/index.js.map +1 -1
- package/lib/components/organisms/AutoCompleteSearchInput/AutoCompleteSearchInput.d.ts +17 -0
- package/lib/components/organisms/AutoCompleteSearchInput/AutoCompleteSearchInput.js +61 -0
- package/lib/components/organisms/AutoCompleteSearchInput/AutoCompleteSearchInput.js.map +1 -0
- package/lib/components/organisms/DateInput/DateInput.d.ts +11 -0
- package/lib/components/organisms/DateInput/DateInput.js +137 -0
- package/lib/components/organisms/DateInput/DateInput.js.map +1 -0
- package/lib/components/organisms/DateInput/date-input.helper.d.ts +17 -0
- package/lib/components/organisms/DateInput/date-input.helper.js +63 -0
- package/lib/components/organisms/DateInput/date-input.helper.js.map +1 -0
- package/lib/components/organisms/MailMessageCommentCard/MailMessageCommentCard.js +6 -9
- package/lib/components/organisms/MailMessageCommentCard/MailMessageCommentCard.js.map +1 -1
- package/lib/components/organisms/PasswordInput/PasswordInput.js +1 -1
- package/lib/components/organisms/PasswordInput/PasswordInput.js.map +1 -1
- package/lib/components/organisms/ScannerAutocompleteSearch/ScannerAutocompleteSearch.d.ts +2 -2
- package/lib/components/organisms/ScannerAutocompleteSearch/ScannerAutocompleteSearch.js +12 -33
- package/lib/components/organisms/ScannerAutocompleteSearch/ScannerAutocompleteSearch.js.map +1 -1
- package/lib/components/organisms/UrlInput/UrlInput.js +1 -1
- package/lib/components/organisms/UrlInput/UrlInput.js.map +1 -1
- package/lib/components/organisms/UsernameInput/UsernameInput.d.ts +5 -1
- package/lib/components/organisms/UsernameInput/UsernameInput.js +10 -3
- package/lib/components/organisms/UsernameInput/UsernameInput.js.map +1 -1
- package/lib/components/organisms/index.d.ts +2 -0
- package/lib/components/organisms/index.js +2 -0
- package/lib/components/organisms/index.js.map +1 -1
- package/lib/components/templates/AttachedFilesView/AttachedFilesView.js +14 -20
- package/lib/components/templates/AttachedFilesView/AttachedFilesView.js.map +1 -1
- package/lib/components/templates/MailMessageView/MailMessageView.js +2 -2
- package/lib/components/templates/MailMessageView/MailMessageView.js.map +1 -1
- package/lib/features/attachedFilesSlice.js +3 -3
- package/lib/features/attachedFilesSlice.js.map +1 -1
- package/lib/features/authSlice.d.ts +24 -13
- package/lib/features/authSlice.js +27 -10
- package/lib/features/authSlice.js.map +1 -1
- package/lib/features/cameraScannerSlice.d.ts +18 -0
- package/lib/features/cameraScannerSlice.js +53 -0
- package/lib/features/cameraScannerSlice.js.map +1 -0
- package/lib/features/index.d.ts +1 -0
- package/lib/features/index.js +1 -0
- package/lib/features/index.js.map +1 -1
- package/lib/features/mailMessageSlice.js +10 -10
- package/lib/features/mailMessageSlice.js.map +1 -1
- package/lib/features/menuConfigSlice.js +1 -1
- package/lib/features/menuConfigSlice.js.map +1 -1
- package/lib/features/metafileSlice.js +1 -1
- package/lib/features/metafileSlice.js.map +1 -1
- package/lib/features/mobileConfigSlice.js +1 -1
- package/lib/features/mobileConfigSlice.js.map +1 -1
- package/lib/hooks/use-scan-activator.d.ts +9 -0
- package/lib/hooks/use-scan-activator.js +60 -0
- package/lib/hooks/use-scan-activator.js.map +1 -0
- package/lib/i18n/component/Translator.d.ts +3 -1
- package/lib/i18n/helpers/langages.d.ts +7 -3
- package/lib/i18n/helpers/langages.js.map +1 -1
- package/lib/i18n/i18n.d.ts +4 -3
- package/lib/i18n/i18n.js +5 -5
- package/lib/i18n/i18n.js.map +1 -1
- package/lib/i18n/translations/en.json +28 -1
- package/lib/i18n/translations/fr.json +28 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/navigator/Navigator.d.ts +2 -1
- package/lib/navigator/Navigator.js +18 -4
- package/lib/navigator/Navigator.js.map +1 -1
- package/lib/navigator/drawer/BackIcon.js +6 -3
- package/lib/navigator/drawer/BackIcon.js.map +1 -1
- package/lib/navigator/drawer/DrawerContent.d.ts +2 -1
- package/lib/navigator/drawer/DrawerContent.js +18 -13
- package/lib/navigator/drawer/DrawerContent.js.map +1 -1
- package/lib/navigator/drawer/DrawerToggleButton.js +6 -3
- package/lib/navigator/drawer/DrawerToggleButton.js.map +1 -1
- package/lib/navigator/module.helper.d.ts +1 -0
- package/lib/navigator/module.helper.js +8 -2
- package/lib/navigator/module.helper.js.map +1 -1
- package/lib/screens/LoginScreen.js +82 -49
- package/lib/screens/LoginScreen.js.map +1 -1
- package/lib/storage/Storage.d.ts +5 -1
- package/lib/storage/Storage.js +7 -1
- package/lib/storage/Storage.js.map +1 -1
- package/lib/tools/FilePicker.d.ts +1 -0
- package/lib/tools/FilePicker.js +42 -0
- package/lib/tools/FilePicker.js.map +1 -0
- package/lib/utils/api.d.ts +2 -0
- package/lib/utils/api.js +47 -0
- package/lib/utils/api.js.map +1 -0
- package/lib/utils/date.d.ts +3 -0
- package/lib/utils/date.js +16 -0
- package/lib/utils/date.js.map +1 -1
- package/lib/utils/filter.d.ts +9 -0
- package/lib/utils/filter.js +31 -0
- package/lib/utils/filter.js.map +1 -0
- package/lib/utils/formatters.d.ts +1 -0
- package/lib/utils/formatters.js +24 -0
- package/lib/utils/formatters.js.map +1 -1
- package/lib/utils/index.d.ts +6 -5
- package/lib/utils/index.js +6 -5
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/object.d.ts +3 -0
- package/lib/utils/object.js +22 -0
- package/lib/utils/object.js.map +1 -1
- package/lib/utils/storage-keys.d.ts +1 -0
- package/lib/utils/storage-keys.js +19 -0
- package/lib/utils/storage-keys.js.map +1 -0
- package/lib/utils/string.d.ts +1 -1
- package/lib/utils/string.js +1 -1
- package/lib/utils/string.js.map +1 -1
- package/package.json +10 -5
package/README.md
CHANGED
|
@@ -6,17 +6,18 @@
|
|
|
6
6
|
|
|
7
7
|
## Presentation
|
|
8
8
|
|
|
9
|
-
This package was developed for the [Axelor Open Mobile](https://github.com/axelor/axelor-mobile) application.
|
|
9
|
+
This package was developed for the [Axelor Open Mobile](https://github.com/axelor/axelor-mobile) application.
|
|
10
10
|
|
|
11
11
|
It contains:
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
12
|
+
|
|
13
|
+
- API providers
|
|
14
|
+
- Auth module with login and user screens
|
|
15
|
+
- Translations management system
|
|
16
|
+
- Various helper tools : clipboard, file viewer, external app management
|
|
17
|
+
- Management of MailMessages and attaches files on objects
|
|
18
|
+
- AOS linked components or using external libraries : Camera, Scanner, PlanningView, Stopwatch, ...
|
|
19
|
+
- Menu management
|
|
20
|
+
- Storage management
|
|
20
21
|
|
|
21
22
|
## Usage
|
|
22
23
|
|
|
@@ -29,6 +30,7 @@ yarn add @axelor/aos-mobile-core
|
|
|
29
30
|
Compatibility with React v18.2.x and React Native v0.68.x.
|
|
30
31
|
|
|
31
32
|
This package has a few required libraries as peer dependencies:
|
|
33
|
+
|
|
32
34
|
- [@react-native-clipboard/clipboard](https://www.npmjs.com/package/@react-native-clipboard/clipboard)
|
|
33
35
|
- [axios](https://www.npmjs.com/package/axios)
|
|
34
36
|
- [i18next](https://www.npmjs.com/package/i18next)
|
|
@@ -46,7 +48,7 @@ This package has a few required libraries as peer dependencies:
|
|
|
46
48
|
- [react-native-vision-camera](https://www.npmjs.com/package/react-native-vision-camera)
|
|
47
49
|
- [vision-camera-code-scanner](https://www.npmjs.com/package/vision-camera-code-scanner)
|
|
48
50
|
|
|
49
|
-
### Create an application
|
|
51
|
+
### Create an application
|
|
50
52
|
|
|
51
53
|
The component Application enables you to create an application really simply :
|
|
52
54
|
|
|
@@ -99,7 +101,7 @@ interface Module {
|
|
|
99
101
|
}
|
|
100
102
|
```
|
|
101
103
|
|
|
102
|
-
### Perform request
|
|
104
|
+
### Perform request
|
|
103
105
|
|
|
104
106
|
This package provides a tool for making HTTP requests. This tool is based on axios. To use it, simply import the provider and use the appropriate method:
|
|
105
107
|
|
|
@@ -179,7 +181,8 @@ const updateLanguage = useCallback(
|
|
|
179
181
|
### Helper tools
|
|
180
182
|
|
|
181
183
|
This package provides several helpers such as:
|
|
182
|
-
|
|
184
|
+
|
|
185
|
+
- Clipboard provider
|
|
183
186
|
|
|
184
187
|
To copy something to the user's clipboard, just call the clipboardProvider.copyToClipboard with the string value of what you want to copy:
|
|
185
188
|
|
|
@@ -206,7 +209,7 @@ const Colors = useThemeColor();
|
|
|
206
209
|
)}
|
|
207
210
|
```
|
|
208
211
|
|
|
209
|
-
|
|
212
|
+
- Open a file in an external app
|
|
210
213
|
|
|
211
214
|
This package provides a tool to open files from the server, either MetaFile or DMSFile, in the application dedicated to the latter type on the phone.
|
|
212
215
|
|
|
@@ -214,7 +217,7 @@ To do this, simply use the openFileInExternalApp function of the package with th
|
|
|
214
217
|
|
|
215
218
|
```typescript
|
|
216
219
|
import {openFileInExternalApp, useSelector, useTranslator} from '@axelor/aos-mobile-core';
|
|
217
|
-
|
|
220
|
+
|
|
218
221
|
...
|
|
219
222
|
|
|
220
223
|
const {baseUrl, token, jsessionId} = useSelector(state => state.auth);
|
|
@@ -231,9 +234,10 @@ const handleShowFile = async item => {
|
|
|
231
234
|
};
|
|
232
235
|
```
|
|
233
236
|
|
|
234
|
-
|
|
237
|
+
- Open an external app with contact informations
|
|
235
238
|
|
|
236
239
|
To have the contact applications (call, email, maps, ...), just use the linkingProvider with the dedicated method:
|
|
240
|
+
|
|
237
241
|
1. URL management: `openURL(url: string, error: {title: string; message: string})`
|
|
238
242
|
2. Browser management: `openBrowser(url: string)`
|
|
239
243
|
3. Call management: `openCallApp(tel: string)`
|
|
@@ -241,8 +245,8 @@ To have the contact applications (call, email, maps, ...), just use the linkingP
|
|
|
241
245
|
5. Email management: `openMailApp(email: string, subject?: string, body?: string, to?: string, cc?: string, bcc?: string)`
|
|
242
246
|
6. Maps management: `openMapApp(address?: string, destination?: string, latitude?: number, longitude?: number, transportType: string)`
|
|
243
247
|
|
|
244
|
-
|
|
245
248
|
An example with maps app:
|
|
249
|
+
|
|
246
250
|
```typescript
|
|
247
251
|
import {linkingProvider} from '@axelor/aos-mobile-core';
|
|
248
252
|
import {Icon, useThemeColor} from '@axelor/aos-mobile-ui';
|
|
@@ -267,11 +271,13 @@ const Colors = useThemeColor();
|
|
|
267
271
|
```
|
|
268
272
|
|
|
269
273
|
### Add MailMessages and attached files
|
|
270
|
-
|
|
274
|
+
|
|
275
|
+
- Management of MailMessages and attaches files on objects
|
|
271
276
|
|
|
272
277
|
This package provides a component to add MailMessages and file attachments functionality to the header. This component also allows to display its children if there are any as a dropdown menu.
|
|
273
278
|
|
|
274
279
|
For the first two functionalities of this component, it is necessary to provide in props the name of the object model ("com.axelor.apps.stock.db.StockCorrection" for the stock corrections for example), the id of the current object, and the navigation attribute to go on the dedicated screens:
|
|
280
|
+
|
|
275
281
|
```typescript
|
|
276
282
|
import {HeaderOptionsMenu} from '@axelor/aos-mobile-core';
|
|
277
283
|
import {DropdownMenuItem} from '@axelor/aos-mobile-ui';
|
|
@@ -303,7 +309,7 @@ An example of rendering:
|
|
|
303
309
|
|
|
304
310
|
### Components
|
|
305
311
|
|
|
306
|
-
This package also provides a number of components linked to Axelor Open Suite (AOS) or requiring external libraries such as the camera, the calendar view or the stopwatch.
|
|
312
|
+
This package also provides a number of components linked to Axelor Open Suite (AOS) or requiring external libraries such as the camera, the calendar view or the stopwatch.
|
|
307
313
|
|
|
308
314
|
## Developpment
|
|
309
315
|
|
package/lib/api/login-api.d.ts
CHANGED
package/lib/api/login-api.js
CHANGED
|
@@ -26,12 +26,12 @@ export async function loginApi(url, username, password) {
|
|
|
26
26
|
if (token == null) {
|
|
27
27
|
throw new Error('X-CSRF-Token is not exposed in remote header');
|
|
28
28
|
}
|
|
29
|
-
axios.interceptors.request.use(config => {
|
|
29
|
+
const interceptorId = axios.interceptors.request.use(config => {
|
|
30
30
|
config.baseURL = url;
|
|
31
31
|
config.headers['x-csrf-token'] = token;
|
|
32
32
|
return config;
|
|
33
33
|
});
|
|
34
|
-
return { token, jsessionId };
|
|
34
|
+
return { token, jsessionId, interceptorId };
|
|
35
35
|
});
|
|
36
36
|
}
|
|
37
37
|
export async function getActiveUserId() {
|
package/lib/api/login-api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login-api.js","sourceRoot":"","sources":["../../src/api/login-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,SAAS,GAAG,WAAW,CAAC;AAE9B,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,GAAW,EACX,QAAgB,EAChB,QAAgB;IAEhB,OAAO,KAAK;SACT,IAAI,CAAC,GAAG,GAAG,GAAG,SAAS,EAAE,EAAE,EAAC,QAAQ,EAAE,QAAQ,EAAC,CAAC;SAChD,IAAI,CAAC,QAAQ,CAAC,EAAE;QACf,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,IAAI,KAAK,IAAI,IAAI,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;SACjE;
|
|
1
|
+
{"version":3,"file":"login-api.js","sourceRoot":"","sources":["../../src/api/login-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,SAAS,GAAG,WAAW,CAAC;AAE9B,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,GAAW,EACX,QAAgB,EAChB,QAAgB;IAEhB,OAAO,KAAK;SACT,IAAI,CAAC,GAAG,GAAG,GAAG,SAAS,EAAE,EAAE,EAAC,QAAQ,EAAE,QAAQ,EAAC,CAAC;SAChD,IAAI,CAAC,QAAQ,CAAC,EAAE;QACf,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,IAAI,KAAK,IAAI,IAAI,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;SACjE;QAED,MAAM,aAAa,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YAC5D,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC;YACrB,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC;YACvC,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,OAAO,EAAC,KAAK,EAAE,UAAU,EAAE,aAAa,EAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;AACP,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACjD,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC"}
|
|
@@ -16,16 +16,41 @@
|
|
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
18
|
import { axiosApiProvider } from '../axios/AxiosApi';
|
|
19
|
+
function emptyResponse() {
|
|
20
|
+
return { data: { data: [] } };
|
|
21
|
+
}
|
|
19
22
|
export async function getMobileConfigs() {
|
|
20
23
|
return axiosApiProvider
|
|
21
|
-
.
|
|
22
|
-
url: '/ws/rest/com.axelor.apps.
|
|
24
|
+
.post({
|
|
25
|
+
url: '/ws/rest/com.axelor.apps.base.db.App/search',
|
|
26
|
+
data: {
|
|
27
|
+
data: {
|
|
28
|
+
criteria: [
|
|
29
|
+
{
|
|
30
|
+
fieldName: 'code',
|
|
31
|
+
operator: '=',
|
|
32
|
+
value: 'mobile-settings',
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
},
|
|
36
|
+
fields: ['active'],
|
|
37
|
+
},
|
|
23
38
|
})
|
|
24
39
|
.then(res => {
|
|
25
|
-
if (res?.status
|
|
26
|
-
|
|
40
|
+
if ((res?.status === 0 || res?.status === 200) &&
|
|
41
|
+
res?.data?.data?.[0].active) {
|
|
42
|
+
return axiosApiProvider
|
|
43
|
+
.get({
|
|
44
|
+
url: '/ws/rest/com.axelor.apps.mobilesettings.db.MobileConfig',
|
|
45
|
+
})
|
|
46
|
+
.then(_res => {
|
|
47
|
+
if (_res?.status === 0 || _res?.status === 200) {
|
|
48
|
+
return _res;
|
|
49
|
+
}
|
|
50
|
+
return emptyResponse();
|
|
51
|
+
});
|
|
27
52
|
}
|
|
28
|
-
return
|
|
53
|
+
return emptyResponse();
|
|
29
54
|
});
|
|
30
55
|
}
|
|
31
56
|
//# sourceMappingURL=mobile-config-api.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mobile-config-api.js","sourceRoot":"","sources":["../../src/api/mobile-config-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAEnD,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,OAAO,gBAAgB;SACpB,
|
|
1
|
+
{"version":3,"file":"mobile-config-api.js","sourceRoot":"","sources":["../../src/api/mobile-config-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAEnD,SAAS,aAAa;IACpB,OAAO,EAAC,IAAI,EAAE,EAAC,IAAI,EAAE,EAAE,EAAC,EAAC,CAAC;AAC5B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,OAAO,gBAAgB;SACpB,IAAI,CAAC;QACJ,GAAG,EAAE,6CAA6C;QAClD,IAAI,EAAE;YACJ,IAAI,EAAE;gBACJ,QAAQ,EAAE;oBACR;wBACE,SAAS,EAAE,MAAM;wBACjB,QAAQ,EAAE,GAAG;wBACb,KAAK,EAAE,iBAAiB;qBACzB;iBACF;aACF;YACD,MAAM,EAAE,CAAC,QAAQ,CAAC;SACnB;KACF,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,EAAE;QACV,IACE,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,IAAI,GAAG,EAAE,MAAM,KAAK,GAAG,CAAC;YAC1C,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAC3B;YACA,OAAO,gBAAgB;iBACpB,GAAG,CAAC;gBACH,GAAG,EAAE,yDAAyD;aAC/D,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,EAAE;gBACX,IAAI,IAAI,EAAE,MAAM,KAAK,CAAC,IAAI,IAAI,EAAE,MAAM,KAAK,GAAG,EAAE;oBAC9C,OAAO,IAAI,CAAC;iBACb;gBACD,OAAO,aAAa,EAAE,CAAC;YACzB,CAAC,CAAC,CAAC;SACN;QACD,OAAO,aAAa,EAAE,CAAC;IACzB,CAAC,CAAC,CAAC;AACP,CAAC"}
|
package/lib/api/utils.js
CHANGED
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
*/
|
|
18
18
|
import Toast from 'react-native-toast-message';
|
|
19
19
|
import { traceError } from './traceback-api';
|
|
20
|
+
import { i18nProvider } from '../i18n';
|
|
20
21
|
export const getApiResponseData = (response, { isArrayResponse = true }) => {
|
|
21
22
|
if (response.data && response.data.object != null) {
|
|
22
23
|
return response.data.object;
|
|
@@ -25,7 +26,6 @@ export const getApiResponseData = (response, { isArrayResponse = true }) => {
|
|
|
25
26
|
? response?.data?.data
|
|
26
27
|
: getFirstData(response?.data?.data);
|
|
27
28
|
};
|
|
28
|
-
const getApiResponseCode = response => response?.data?.codeStatus || response?.status;
|
|
29
29
|
const getApiResponseMessage = response => response?.data?.messageStatus || response?.statusTxt;
|
|
30
30
|
const getApiResponseTotal = response => response?.data?.total || 0;
|
|
31
31
|
export const getFirstData = data => {
|
|
@@ -53,8 +53,8 @@ const manageError = (error, action, userId, { showErrorToast = true, errorTracin
|
|
|
53
53
|
type: 'error',
|
|
54
54
|
position: 'bottom',
|
|
55
55
|
bottomOffset: 20,
|
|
56
|
-
text1:
|
|
57
|
-
text2:
|
|
56
|
+
text1: `${i18nProvider.i18n.t('Base_Error')} ${code}`,
|
|
57
|
+
text2: `${i18nProvider.i18n.t('Base_Failed_To')} ${i18nProvider.i18n.t(action)}: ${message}.`,
|
|
58
58
|
});
|
|
59
59
|
}
|
|
60
60
|
}
|
|
@@ -65,9 +65,8 @@ export const handlerError = (message, { getState = () => { } }, { showErrorToast
|
|
|
65
65
|
errorTracing,
|
|
66
66
|
});
|
|
67
67
|
};
|
|
68
|
-
const manageSucess = (response, { showToast = false, isArrayResponse, returnTotal = false }) => {
|
|
68
|
+
const manageSucess = (response, action, { showToast = false, isArrayResponse, returnTotal = false }) => {
|
|
69
69
|
const data = getApiResponseData(response, { isArrayResponse });
|
|
70
|
-
const code = getApiResponseCode(response);
|
|
71
70
|
const message = getApiResponseMessage(response);
|
|
72
71
|
const total = getApiResponseTotal(response);
|
|
73
72
|
if (showToast) {
|
|
@@ -75,18 +74,18 @@ const manageSucess = (response, { showToast = false, isArrayResponse, returnTota
|
|
|
75
74
|
type: 'success',
|
|
76
75
|
position: 'bottom',
|
|
77
76
|
bottomOffset: 20,
|
|
78
|
-
text1:
|
|
79
|
-
text2: `${message ? message :
|
|
77
|
+
text1: i18nProvider.i18n.t('Base_Success'),
|
|
78
|
+
text2: `${message ? message : i18nProvider.i18n.t(action)}.`,
|
|
80
79
|
});
|
|
81
80
|
}
|
|
82
81
|
return returnTotal ? total : data;
|
|
83
82
|
};
|
|
84
|
-
const handlerSuccess = ({ showToast, isArrayResponse, returnTotal }) => {
|
|
85
|
-
return response => manageSucess(response, { showToast, isArrayResponse, returnTotal });
|
|
83
|
+
const handlerSuccess = (action, { showToast, isArrayResponse, returnTotal }) => {
|
|
84
|
+
return response => manageSucess(response, action, { showToast, isArrayResponse, returnTotal });
|
|
86
85
|
};
|
|
87
86
|
export const handlerApiCall = ({ fetchFunction, data, action, getState, responseOptions: { showToast = false, isArrayResponse = false, returnTotal = false, }, errorOptions = { showErrorToast: true, errorTracing: true }, }) => {
|
|
88
87
|
return fetchFunction(data)
|
|
89
88
|
.catch(handlerError(action, { getState }, errorOptions))
|
|
90
|
-
.then(handlerSuccess({ showToast, isArrayResponse, returnTotal }));
|
|
89
|
+
.then(handlerSuccess(action, { showToast, isArrayResponse, returnTotal }));
|
|
91
90
|
};
|
|
92
91
|
//# sourceMappingURL=utils.js.map
|
package/lib/api/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/api/utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,4BAA4B,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/api/utils.ts"],"names":[],"mappings":"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"}
|
package/lib/app/Application.d.ts
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
import { Theme, Writing } from '@axelor/aos-mobile-ui';
|
|
2
2
|
import { Module } from './Module';
|
|
3
|
+
interface proxy {
|
|
4
|
+
defaultUrl: string;
|
|
5
|
+
defaultUsername: string;
|
|
6
|
+
defaultPassword: string;
|
|
7
|
+
}
|
|
8
|
+
interface releaseConfig {
|
|
9
|
+
url: string;
|
|
10
|
+
showUrlInput: boolean;
|
|
11
|
+
}
|
|
12
|
+
interface appConfig {
|
|
13
|
+
testInstanceConfig: proxy;
|
|
14
|
+
releaseInstanceConfig: releaseConfig;
|
|
15
|
+
defaultLanguage: string;
|
|
16
|
+
}
|
|
3
17
|
interface ApplicationProps {
|
|
4
18
|
modules: Module[];
|
|
5
19
|
mainMenu?: string;
|
|
@@ -9,7 +23,8 @@ interface ApplicationProps {
|
|
|
9
23
|
defaultTheme?: Theme;
|
|
10
24
|
writingThemes?: Writing[];
|
|
11
25
|
defaultWritingTheme?: Writing;
|
|
12
|
-
showModulesSubtitle
|
|
26
|
+
showModulesSubtitle?: boolean;
|
|
27
|
+
configuration?: appConfig;
|
|
13
28
|
}
|
|
14
|
-
declare const Application: ({ modules: modulesProvided, mainMenu, additionalsReducers, version, themes, defaultTheme, writingThemes, defaultWritingTheme, showModulesSubtitle, }: ApplicationProps) => JSX.Element;
|
|
29
|
+
declare const Application: ({ modules: modulesProvided, mainMenu, additionalsReducers, version, themes, defaultTheme, writingThemes, defaultWritingTheme, showModulesSubtitle, configuration, }: ApplicationProps) => JSX.Element;
|
|
15
30
|
export default Application;
|
package/lib/app/Application.js
CHANGED
|
@@ -19,10 +19,13 @@ import React, { useRef } from 'react';
|
|
|
19
19
|
import ContextsProvider from './ContextsProvider';
|
|
20
20
|
import ContextedApplication from './ContextedApplication';
|
|
21
21
|
import { authModule } from '../auth';
|
|
22
|
-
const Application = ({ modules: modulesProvided, mainMenu, additionalsReducers, version, themes, defaultTheme, writingThemes, defaultWritingTheme, showModulesSubtitle = false, }) => {
|
|
22
|
+
const Application = ({ modules: modulesProvided, mainMenu, additionalsReducers, version, themes, defaultTheme, writingThemes, defaultWritingTheme, showModulesSubtitle = false, configuration, }) => {
|
|
23
23
|
const modules = useRef([authModule, ...modulesProvided]).current;
|
|
24
|
-
return (<ContextsProvider modules={modules} additionalsReducers={additionalsReducers} defaultTheme={defaultTheme} themes={themes} defaultWritingTheme={defaultWritingTheme} writingThemes={writingThemes}>
|
|
25
|
-
<ContextedApplication modules={modules} mainMenu={mainMenu} version={version} showModulesSubtitle={showModulesSubtitle}
|
|
24
|
+
return (<ContextsProvider modules={modules} additionalsReducers={additionalsReducers} defaultTheme={defaultTheme} themes={themes} defaultWritingTheme={defaultWritingTheme} writingThemes={writingThemes} defaultLanguage={configuration?.defaultLanguage}>
|
|
25
|
+
<ContextedApplication modules={modules} mainMenu={mainMenu} version={version} showModulesSubtitle={showModulesSubtitle} configuration={{
|
|
26
|
+
testInstanceConfig: configuration?.testInstanceConfig,
|
|
27
|
+
releaseInstanceConfig: configuration?.releaseInstanceConfig,
|
|
28
|
+
}}/>
|
|
26
29
|
</ContextsProvider>);
|
|
27
30
|
};
|
|
28
31
|
export default Application;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Application.js","sourceRoot":"","sources":["../../src/app/Application.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,MAAM,EAAC,MAAM,OAAO,CAAC;AAGpC,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"Application.js","sourceRoot":"","sources":["../../src/app/Application.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,MAAM,EAAC,MAAM,OAAO,CAAC;AAGpC,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AAgCnC,MAAM,WAAW,GAAG,CAAC,EACnB,OAAO,EAAE,eAAe,EACxB,QAAQ,EACR,mBAAmB,EACnB,OAAO,EACP,MAAM,EACN,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,mBAAmB,GAAG,KAAK,EAC3B,aAAa,GACI,EAAE,EAAE;IACrB,MAAM,OAAO,GAAa,MAAM,CAAC,CAAC,UAAU,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC;IAE3E,OAAO,CACL,CAAC,gBAAgB,CACf,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,mBAAmB,CAAC,CAAC,mBAAmB,CAAC,CACzC,YAAY,CAAC,CAAC,YAAY,CAAC,CAC3B,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,mBAAmB,CAAC,CAAC,mBAAmB,CAAC,CACzC,aAAa,CAAC,CAAC,aAAa,CAAC,CAC7B,eAAe,CAAC,CAAC,aAAa,EAAE,eAAe,CAAC,CAChD;MAAA,CAAC,oBAAoB,CACnB,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,mBAAmB,CAAC,CAAC,mBAAmB,CAAC,CACzC,aAAa,CAAC,CAAC;YACb,kBAAkB,EAAE,aAAa,EAAE,kBAAkB;YACrD,qBAAqB,EAAE,aAAa,EAAE,qBAAqB;SAC5D,CAAC,EAEN;IAAA,EAAE,gBAAgB,CAAC,CACpB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -1,9 +1,23 @@
|
|
|
1
1
|
import { Module } from './Module';
|
|
2
|
+
interface proxy {
|
|
3
|
+
defaultUrl: string;
|
|
4
|
+
defaultUsername: string;
|
|
5
|
+
defaultPassword: string;
|
|
6
|
+
}
|
|
7
|
+
interface releaseConfig {
|
|
8
|
+
url: string;
|
|
9
|
+
showUrlInput: boolean;
|
|
10
|
+
}
|
|
11
|
+
interface instanceConfig {
|
|
12
|
+
testInstanceConfig: proxy;
|
|
13
|
+
releaseInstanceConfig: releaseConfig;
|
|
14
|
+
}
|
|
2
15
|
interface ContextedApplicationProps {
|
|
3
16
|
modules: Module[];
|
|
4
17
|
mainMenu?: string;
|
|
5
18
|
version: string;
|
|
6
19
|
showModulesSubtitle: boolean;
|
|
20
|
+
configuration?: instanceConfig;
|
|
7
21
|
}
|
|
8
|
-
declare const ContextedApplication: ({ modules, mainMenu, version, showModulesSubtitle, }: ContextedApplicationProps) => JSX.Element;
|
|
22
|
+
declare const ContextedApplication: ({ modules, mainMenu, version, showModulesSubtitle, configuration, }: ContextedApplicationProps) => JSX.Element;
|
|
9
23
|
export default ContextedApplication;
|
|
@@ -15,7 +15,7 @@
|
|
|
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, { useCallback, useMemo } from 'react';
|
|
18
|
+
import React, { useCallback, useMemo, useState } from 'react';
|
|
19
19
|
import { StyleSheet } from 'react-native';
|
|
20
20
|
import Toast, { BaseToast, ErrorToast } from 'react-native-toast-message';
|
|
21
21
|
import { NavigationContainer } from '@react-navigation/native';
|
|
@@ -26,10 +26,11 @@ import RootNavigator from './RootNavigator';
|
|
|
26
26
|
import Translator from '../i18n/component/Translator';
|
|
27
27
|
import { getActiveUserId } from '../api/login-api';
|
|
28
28
|
import ErrorScreen from '../screens/ErrorScreen';
|
|
29
|
-
import { Camera, Scanner } from '../components';
|
|
30
|
-
const ContextedApplication = ({ modules, mainMenu, version, showModulesSubtitle = false, }) => {
|
|
29
|
+
import { Camera, CameraScanner, Scanner } from '../components';
|
|
30
|
+
const ContextedApplication = ({ modules, mainMenu, version, showModulesSubtitle = false, configuration, }) => {
|
|
31
31
|
const Colors = useThemeColor();
|
|
32
32
|
const styles = useMemo(() => getStyles(Colors), [Colors]);
|
|
33
|
+
const [, setRefresh] = useState(false);
|
|
33
34
|
const toastConfig = {
|
|
34
35
|
success: props => (<BaseToast {...props} style={[styles.success, styles.toast]} contentContainerStyle={styles.toastContent} text1Style={styles.title} text2Style={styles.detail} text2NumberOfLines={3}/>),
|
|
35
36
|
error: props => (<ErrorToast {...props} style={[styles.error, styles.toast]} contentContainerStyle={styles.toastContent} text1Style={styles.title} text2Style={styles.detail} text2NumberOfLines={3}/>),
|
|
@@ -39,13 +40,14 @@ const ContextedApplication = ({ modules, mainMenu, version, showModulesSubtitle
|
|
|
39
40
|
}, []);
|
|
40
41
|
return (<>
|
|
41
42
|
<Camera />
|
|
43
|
+
<CameraScanner />
|
|
42
44
|
<Scanner />
|
|
43
45
|
<Translator />
|
|
44
46
|
<ErrorBoundary errorScreen={ErrorScreen} userIdfetcher={getActiveUserId} putMethod={traceBackPutMethod}>
|
|
45
47
|
<NavigationContainer>
|
|
46
48
|
<HeaderIndicator />
|
|
47
49
|
<LoadingIndicator />
|
|
48
|
-
<RootNavigator modules={modules} mainMenu={mainMenu} version={version} showModulesSubtitle={showModulesSubtitle}/>
|
|
50
|
+
<RootNavigator modules={modules} mainMenu={mainMenu} version={version} showModulesSubtitle={showModulesSubtitle} onRefresh={() => setRefresh(_current => !_current)} configuration={configuration}/>
|
|
49
51
|
</NavigationContainer>
|
|
50
52
|
</ErrorBoundary>
|
|
51
53
|
<Toast config={toastConfig}/>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextedApplication.js","sourceRoot":"","sources":["../../src/app/ContextedApplication.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAE,OAAO,EAAC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ContextedApplication.js","sourceRoot":"","sources":["../../src/app/ContextedApplication.tsx"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ interface ContextsProviderProps {
|
|
|
9
9
|
writingThemes?: Writing[];
|
|
10
10
|
defaultWritingTheme?: Writing;
|
|
11
11
|
children: React.ReactNode;
|
|
12
|
+
defaultLanguage: string;
|
|
12
13
|
}
|
|
13
|
-
declare const ContextsProvider: ({ modules, additionalsReducers, themes, defaultTheme, writingThemes, defaultWritingTheme, children, }: ContextsProviderProps) => JSX.Element;
|
|
14
|
+
declare const ContextsProvider: ({ modules, additionalsReducers, themes, defaultTheme, writingThemes, defaultWritingTheme, children, defaultLanguage, }: ContextsProviderProps) => JSX.Element;
|
|
14
15
|
export default ContextsProvider;
|
|
@@ -23,9 +23,11 @@ import enTranslation from '../i18n/translations/en.json';
|
|
|
23
23
|
import frTranslation from '../i18n/translations/fr.json';
|
|
24
24
|
import { configGlobalStore } from '../redux/store';
|
|
25
25
|
const ApplicationContext = createContext(null);
|
|
26
|
-
const ContextsProvider = ({ modules, additionalsReducers, themes, defaultTheme, writingThemes, defaultWritingTheme, children, }) => {
|
|
26
|
+
const ContextsProvider = ({ modules, additionalsReducers, themes, defaultTheme, writingThemes, defaultWritingTheme, children, defaultLanguage = 'en', }) => {
|
|
27
27
|
const [loading, setLoading] = useState(true);
|
|
28
|
-
const appTranslations = useMemo(() => modules
|
|
28
|
+
const appTranslations = useMemo(() => modules
|
|
29
|
+
.filter(_module => _module.translations)
|
|
30
|
+
.reduce((translations, _module) => ({
|
|
29
31
|
en: { ...translations.en, ..._module.translations?.en },
|
|
30
32
|
fr: { ...translations.fr, ..._module.translations?.fr },
|
|
31
33
|
}), { en: enTranslation, fr: frTranslation }), [modules]);
|
|
@@ -35,12 +37,15 @@ const ContextsProvider = ({ modules, additionalsReducers, themes, defaultTheme,
|
|
|
35
37
|
{ lng: 'en', translationsObject: appTranslations.en },
|
|
36
38
|
{ lng: 'fr', translationsObject: appTranslations.fr },
|
|
37
39
|
],
|
|
40
|
+
defaultLanguage: defaultLanguage,
|
|
38
41
|
});
|
|
39
42
|
setLoading(false);
|
|
40
|
-
// I18n should be initialize only once
|
|
43
|
+
// NOTE: I18n should be initialize only once
|
|
41
44
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
42
45
|
}, []);
|
|
43
|
-
const externalsReducers = useMemo(() => modules
|
|
46
|
+
const externalsReducers = useMemo(() => modules
|
|
47
|
+
.filter(_module => _module.reducers)
|
|
48
|
+
.reduce((reducers, _module) => ({ ...reducers, ..._module.reducers }), {
|
|
44
49
|
...additionalsReducers,
|
|
45
50
|
}), [additionalsReducers, modules]);
|
|
46
51
|
const store = useMemo(() => configGlobalStore(externalsReducers), [externalsReducers]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContextsProvider.js","sourceRoot":"","sources":["../../src/app/ContextsProvider.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AACzE,OAAO,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAC;AACrC,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,aAAa,EACb,oBAAoB,GAGrB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,aAAa,MAAM,8BAA8B,CAAC;AACzD,OAAO,aAAa,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAC,iBAAiB,EAAC,MAAM,gBAAgB,CAAC;AAEjD,MAAM,kBAAkB,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ContextsProvider.js","sourceRoot":"","sources":["../../src/app/ContextsProvider.tsx"],"names":[],"mappings":"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"}
|
package/lib/app/Module.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import { Reducer } from '@reduxjs/toolkit';
|
|
2
3
|
export interface Module {
|
|
3
4
|
name: string;
|
|
4
|
-
title
|
|
5
|
-
subtitle
|
|
6
|
-
icon
|
|
5
|
+
title?: string;
|
|
6
|
+
subtitle?: string;
|
|
7
|
+
icon?: string;
|
|
7
8
|
disabled?: boolean;
|
|
8
|
-
menus
|
|
9
|
+
menus?: {
|
|
9
10
|
[screenKey: string]: {
|
|
10
11
|
title: string;
|
|
11
12
|
icon: string;
|
|
@@ -13,7 +14,7 @@ export interface Module {
|
|
|
13
14
|
disabled?: boolean;
|
|
14
15
|
};
|
|
15
16
|
};
|
|
16
|
-
screens
|
|
17
|
+
screens?: {
|
|
17
18
|
[screenKey: string]: React.FC<any> | {
|
|
18
19
|
component: React.FC<any>;
|
|
19
20
|
title: string;
|
|
@@ -22,5 +23,7 @@ export interface Module {
|
|
|
22
23
|
translations?: {
|
|
23
24
|
[languageKey: string]: any;
|
|
24
25
|
};
|
|
25
|
-
reducers?:
|
|
26
|
+
reducers?: {
|
|
27
|
+
[key: string]: Reducer;
|
|
28
|
+
};
|
|
26
29
|
}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
export default RootNavigator;
|
|
2
|
-
declare function RootNavigator({ modules, mainMenu, version, showModulesSubtitle, }: {
|
|
2
|
+
declare function RootNavigator({ modules, mainMenu, version, showModulesSubtitle, onRefresh, configuration, }: {
|
|
3
3
|
modules: any;
|
|
4
4
|
mainMenu: any;
|
|
5
5
|
version: any;
|
|
6
6
|
showModulesSubtitle?: boolean;
|
|
7
|
+
onRefresh: any;
|
|
8
|
+
configuration: any;
|
|
7
9
|
}): JSX.Element;
|
package/lib/app/RootNavigator.js
CHANGED
|
@@ -24,12 +24,12 @@ import { useConfig, useThemeColor } from '@axelor/aos-mobile-ui';
|
|
|
24
24
|
import { getNetInfo } from '../api/net-info-utils';
|
|
25
25
|
import useTranslator from '../i18n/hooks/use-translator';
|
|
26
26
|
const { Navigator, Screen } = createNativeStackNavigator();
|
|
27
|
-
const RootNavigator = ({ modules, mainMenu, version, showModulesSubtitle = false, }) => {
|
|
27
|
+
const RootNavigator = ({ modules, mainMenu, version, showModulesSubtitle = false, onRefresh, configuration, }) => {
|
|
28
28
|
const Colors = useThemeColor();
|
|
29
29
|
const I18n = useTranslator();
|
|
30
30
|
const { isHeaderIndicatorVisible, setIsHeaderIndicatorVisible, setHeaderIndicatorState, } = useConfig();
|
|
31
31
|
const { logged } = useSelector(state => state.auth);
|
|
32
|
-
const AppNavigator = useCallback(() => (<CoreNavigator modules={modules} mainMenu={mainMenu} showModulesSubtitle={showModulesSubtitle}/>), [modules, mainMenu, showModulesSubtitle]);
|
|
32
|
+
const AppNavigator = useCallback(() => (<CoreNavigator modules={modules} mainMenu={mainMenu} showModulesSubtitle={showModulesSubtitle} onRefresh={onRefresh}/>), [modules, mainMenu, showModulesSubtitle, onRefresh]);
|
|
33
33
|
const checkInternetConnection = useCallback(async () => {
|
|
34
34
|
const { isConnected } = await getNetInfo();
|
|
35
35
|
if (!isConnected) {
|
|
@@ -62,7 +62,11 @@ const RootNavigator = ({ modules, mainMenu, version, showModulesSubtitle = false
|
|
|
62
62
|
return () => clearInterval(interval.current);
|
|
63
63
|
}, [checkInternetConnection]);
|
|
64
64
|
return (<Navigator screenOptions={{ headerShown: false }}>
|
|
65
|
-
{!logged ? (<Screen name="LoginScreen" component={LoginScreen} initialParams={{
|
|
65
|
+
{!logged ? (<Screen name="LoginScreen" component={LoginScreen} initialParams={{
|
|
66
|
+
version,
|
|
67
|
+
testInstanceConfig: configuration?.testInstanceConfig,
|
|
68
|
+
releaseInstanceConfig: configuration?.releaseInstanceConfig,
|
|
69
|
+
}}/>) : (<Screen name="AppNavigator" component={AppNavigator}/>)}
|
|
66
70
|
</Navigator>);
|
|
67
71
|
};
|
|
68
72
|
export default RootNavigator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RootNavigator.js","sourceRoot":"","sources":["../../src/app/RootNavigator.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAE,SAAS,EAAC,MAAM,OAAO,CAAC;AACpD,OAAO,EAAC,WAAW,EAAC,MAAM,aAAa,CAAC;AACxC,OAAO,EAAC,0BAA0B,EAAC,MAAM,gCAAgC,CAAC;AAC1E,OAAO,WAAW,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAC,SAAS,EAAE,aAAa,EAAC,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAC,UAAU,EAAC,MAAM,uBAAuB,CAAC;AACjD,OAAO,aAAa,MAAM,8BAA8B,CAAC;AAEzD,MAAM,EAAC,SAAS,EAAE,MAAM,EAAC,GAAG,0BAA0B,EAAE,CAAC;AAEzD,MAAM,aAAa,GAAG,CAAC,EACrB,OAAO,EACP,QAAQ,EACR,OAAO,EACP,mBAAmB,GAAG,KAAK,
|
|
1
|
+
{"version":3,"file":"RootNavigator.js","sourceRoot":"","sources":["../../src/app/RootNavigator.js"],"names":[],"mappings":"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"}
|
|
@@ -22,7 +22,7 @@ export const fetchCompanies = createAsyncThunk('company/fetchCompany', async fun
|
|
|
22
22
|
return handlerApiCall({
|
|
23
23
|
fetchFunction: searchCompany,
|
|
24
24
|
data,
|
|
25
|
-
action: '
|
|
25
|
+
action: 'Auth_SliceAction_FetchCompanies',
|
|
26
26
|
getState,
|
|
27
27
|
responseOptions: { isArrayResponse: true },
|
|
28
28
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"companySlice.js","sourceRoot":"","sources":["../../../src/auth/features/companySlice.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAC,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,cAAc,GAAG,gBAAgB,CAC5C,sBAAsB,EACtB,KAAK,WAAW,IAAI,GAAG,EAAE,EAAE,EAAC,QAAQ,EAAC;IACnC,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,aAAa;QAC5B,IAAI;QACJ,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"companySlice.js","sourceRoot":"","sources":["../../../src/auth/features/companySlice.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAC,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAEjD,MAAM,CAAC,MAAM,cAAc,GAAG,gBAAgB,CAC5C,sBAAsB,EACtB,KAAK,WAAW,IAAI,GAAG,EAAE,EAAE,EAAC,QAAQ,EAAC;IACnC,OAAO,cAAc,CAAC;QACpB,aAAa,EAAE,aAAa;QAC5B,IAAI;QACJ,MAAM,EAAE,iCAAiC;QACzC,QAAQ;QACR,eAAe,EAAE,EAAC,eAAe,EAAE,IAAI,EAAC;KACzC,CAAC,CAAC;AACL,CAAC,CACF,CAAC;AAEF,MAAM,YAAY,GAAG;IACnB,OAAO,EAAE,KAAK;IACd,WAAW,EAAE,EAAE;CAChB,CAAC;AAEF,MAAM,YAAY,GAAG,WAAW,CAAC;IAC/B,IAAI,EAAE,SAAS;IACf,YAAY;IACZ,aAAa,EAAE,OAAO,CAAC,EAAE;QACvB,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YAC9C,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAC1D,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;YACtB,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC"}
|
|
@@ -22,7 +22,7 @@ export const fetchBaseConfig = createAsyncThunk('base/fetchBaseConfig', async fu
|
|
|
22
22
|
return handlerApiCall({
|
|
23
23
|
fetchFunction: getBaseConfig,
|
|
24
24
|
data,
|
|
25
|
-
action: '
|
|
25
|
+
action: 'Auth_SliceAction_FetchBaseConfig',
|
|
26
26
|
getState,
|
|
27
27
|
responseOptions: { isArrayResponse: false },
|
|
28
28
|
});
|
|
@@ -34,7 +34,7 @@ export const fetchMobileSettings = createAsyncThunk('mobile-settings/fetchMobile
|
|
|
34
34
|
return handlerApiCall({
|
|
35
35
|
fetchFunction: getMobileSettings,
|
|
36
36
|
data,
|
|
37
|
-
action: '
|
|
37
|
+
action: 'Auth_SliceAction_FetchAppMobileSettings',
|
|
38
38
|
getState,
|
|
39
39
|
responseOptions: { isArrayResponse: false },
|
|
40
40
|
});
|