@axelor/aos-mobile-core 6.4.2 → 6.4.3

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 (35) hide show
  1. package/lib/api/login-api.d.ts +2 -1
  2. package/lib/api/login-api.js +4 -2
  3. package/lib/api/login-api.js.map +1 -1
  4. package/lib/api/metafile-api.d.ts +6 -0
  5. package/lib/api/metafile-api.js +33 -0
  6. package/lib/api/metafile-api.js.map +1 -1
  7. package/lib/components/molecules/UploadFileInput/UploadFileInput.d.ts +6 -0
  8. package/lib/components/molecules/UploadFileInput/UploadFileInput.js +71 -0
  9. package/lib/components/molecules/UploadFileInput/UploadFileInput.js.map +1 -0
  10. package/lib/components/molecules/index.d.ts +1 -0
  11. package/lib/components/molecules/index.js +1 -0
  12. package/lib/components/molecules/index.js.map +1 -1
  13. package/lib/components/organisms/ScannerAutocompleteSearch/ScannerAutocompleteSearch.js +5 -0
  14. package/lib/components/organisms/ScannerAutocompleteSearch/ScannerAutocompleteSearch.js.map +1 -1
  15. package/lib/features/authSlice.d.ts +8 -4
  16. package/lib/features/authSlice.js +19 -8
  17. package/lib/features/authSlice.js.map +1 -1
  18. package/lib/i18n/translations/en.json +1 -0
  19. package/lib/i18n/translations/fr.json +1 -0
  20. package/lib/index.d.ts +1 -0
  21. package/lib/index.js +1 -0
  22. package/lib/index.js.map +1 -1
  23. package/lib/middlewares/index.d.ts +1 -0
  24. package/lib/middlewares/index.js +19 -0
  25. package/lib/middlewares/index.js.map +1 -0
  26. package/lib/middlewares/translation.d.ts +2 -0
  27. package/lib/middlewares/translation.js +48 -0
  28. package/lib/middlewares/translation.js.map +1 -0
  29. package/lib/utils/index.d.ts +1 -1
  30. package/lib/utils/index.js +1 -1
  31. package/lib/utils/index.js.map +1 -1
  32. package/lib/utils/object.d.ts +1 -0
  33. package/lib/utils/object.js +4 -2
  34. package/lib/utils/object.js.map +1 -1
  35. package/package.json +7 -5
@@ -1,6 +1,7 @@
1
1
  export declare function loginApi(url: string, username: string, password: string): Promise<{
2
2
  token: string;
3
3
  jsessionId: string;
4
- interceptorId: number;
4
+ requestInterceptorId: number;
5
+ responseInterceptorId: number;
5
6
  }>;
6
7
  export declare function getActiveUserId(): Promise<any>;
@@ -16,6 +16,7 @@
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
18
  import axios from 'axios';
19
+ import { translationMiddleware } from '../middlewares/translation';
19
20
  const loginPath = '/callback';
20
21
  export async function loginApi(url, username, password) {
21
22
  return axios
@@ -26,12 +27,13 @@ export async function loginApi(url, username, password) {
26
27
  if (token == null) {
27
28
  throw new Error('X-CSRF-Token is not exposed in remote header');
28
29
  }
29
- const interceptorId = axios.interceptors.request.use(config => {
30
+ const requestInterceptorId = axios.interceptors.request.use(config => {
30
31
  config.baseURL = url;
31
32
  config.headers['x-csrf-token'] = token;
32
33
  return config;
33
34
  });
34
- return { token, jsessionId, interceptorId };
35
+ const responseInterceptorId = axios.interceptors.response.use(_response => translationMiddleware(_response));
36
+ return { token, jsessionId, requestInterceptorId, responseInterceptorId };
35
37
  });
36
38
  }
37
39
  export async function getActiveUserId() {
@@ -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;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"}
1
+ {"version":3,"file":"login-api.js","sourceRoot":"","sources":["../../src/api/login-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,qBAAqB,EAAC,MAAM,4BAA4B,CAAC;AAEjE,MAAM,SAAS,GAAG,WAAW,CAAC;AAE9B,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,GAAW,EACX,QAAgB,EAChB,QAAgB;IAOhB,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,oBAAoB,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YACnE,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,MAAM,qBAAqB,GAAG,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CACxE,qBAAqB,CAAC,SAAS,CAAC,CACjC,CAAC;QAEF,OAAO,EAAC,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,qBAAqB,EAAC,CAAC;IAC1E,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"}
@@ -1,6 +1,12 @@
1
+ import { DocumentPickerResponse } from 'react-native-document-picker';
1
2
  interface fetchFileDetailsProps {
2
3
  listFiles: [any];
3
4
  isMetaFile?: boolean;
4
5
  }
5
6
  export declare function fetchFileDetails({ listFiles, isMetaFile, }: fetchFileDetailsProps): Promise<any>;
7
+ export declare function uploadFile(file: DocumentPickerResponse, { baseUrl, jsessionId, token }: {
8
+ baseUrl: any;
9
+ jsessionId: any;
10
+ token: any;
11
+ }): Promise<any>;
6
12
  export {};
@@ -16,6 +16,8 @@
16
16
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
17
  */
18
18
  import { axiosApiProvider } from '../axios/AxiosApi';
19
+ import RNFS from 'react-native-fs';
20
+ import RNFetchBlob from 'rn-fetch-blob';
19
21
  const MetaFileFields = ['id', 'fileName', 'createdOn'];
20
22
  const createCriteria = listFiles => {
21
23
  if (listFiles != null) {
@@ -47,4 +49,35 @@ export async function fetchFileDetails({ listFiles, isMetaFile, }) {
47
49
  },
48
50
  });
49
51
  }
52
+ export async function uploadFile(file, { baseUrl, jsessionId, token }) {
53
+ if (file == null) {
54
+ return;
55
+ }
56
+ return new Promise(async (resolve, reject) => {
57
+ try {
58
+ const base64Data = await RNFS.readFile(file.uri, 'base64');
59
+ const headers = {
60
+ 'Content-Type': 'application/octet-stream',
61
+ 'Content-Length': String(file.size),
62
+ 'X-File-Name': file.name,
63
+ 'X-File-Type': file.type,
64
+ 'X-File-Size': String(file.size),
65
+ 'X-File-Offset': String(0),
66
+ 'x-csrf-token': token,
67
+ Cookie: `CSRF-TOKEN=${token}; ${jsessionId}`,
68
+ };
69
+ const response = await RNFetchBlob.fetch('POST', `${baseUrl}ws/files/upload`, headers, base64Data);
70
+ const metaFile = JSON.parse(response.data);
71
+ if (Object.keys(metaFile).includes('id')) {
72
+ resolve(metaFile);
73
+ }
74
+ else {
75
+ throw Error('no metafile created');
76
+ }
77
+ }
78
+ catch (error) {
79
+ reject(error);
80
+ }
81
+ });
82
+ }
50
83
  //# sourceMappingURL=metafile-api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metafile-api.js","sourceRoot":"","sources":["../../src/api/metafile-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAEnD,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AAEvD,MAAM,cAAc,GAAG,SAAS,CAAC,EAAE;IACjC,IAAI,SAAS,IAAI,IAAI,EAAE;QACrB,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,SAAS,CAAC,IAAI,CAAC,EAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,EAAC,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;KAClB;AACH,CAAC,CAAC;AAOF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,EACrC,SAAS,EACT,UAAU,GACY;IACtB,MAAM,KAAK,GAAG,UAAU;QACtB,CAAC,CAAC,6BAA6B;QAC/B,CAAC,CAAC,2BAA2B,CAAC;IAChC,OAAO,gBAAgB,CAAC,IAAI,CAAC;QAC3B,GAAG,EAAE,YAAY,KAAK,SAAS;QAC/B,IAAI,EAAE;YACJ,IAAI,EAAE;gBACJ,QAAQ,EAAE;oBACR;wBACE,QAAQ,EAAE,IAAI;wBACd,QAAQ,EAAE,cAAc,CAAC,SAAS,CAAC;qBACpC;iBACF;aACF;YACD,MAAM,EAAE,cAAc;YACtB,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,CAAC;SACV;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"metafile-api.js","sourceRoot":"","sources":["../../src/api/metafile-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,gBAAgB,EAAC,MAAM,mBAAmB,CAAC;AAEnD,OAAO,IAAI,MAAM,iBAAiB,CAAC;AACnC,OAAO,WAAW,MAAM,eAAe,CAAC;AAExC,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AAEvD,MAAM,cAAc,GAAG,SAAS,CAAC,EAAE;IACjC,IAAI,SAAS,IAAI,IAAI,EAAE;QACrB,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,SAAS,CAAC,IAAI,CAAC,EAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,EAAC,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;KAClB;AACH,CAAC,CAAC;AAOF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,EACrC,SAAS,EACT,UAAU,GACY;IACtB,MAAM,KAAK,GAAG,UAAU;QACtB,CAAC,CAAC,6BAA6B;QAC/B,CAAC,CAAC,2BAA2B,CAAC;IAChC,OAAO,gBAAgB,CAAC,IAAI,CAAC;QAC3B,GAAG,EAAE,YAAY,KAAK,SAAS;QAC/B,IAAI,EAAE;YACJ,IAAI,EAAE;gBACJ,QAAQ,EAAE;oBACR;wBACE,QAAQ,EAAE,IAAI;wBACd,QAAQ,EAAE,cAAc,CAAC,SAAS,CAAC;qBACpC;iBACF;aACF;YACD,MAAM,EAAE,cAAc;YACtB,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,CAAC;SACV;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAA4B,EAC5B,EAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAC;IAE5B,IAAI,IAAI,IAAI,IAAI,EAAE;QAChB,OAAO;KACR;IAED,OAAO,IAAI,OAAO,CAAM,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;QAChD,IAAI;YACF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAE3D,MAAM,OAAO,GAAG;gBACd,cAAc,EAAE,0BAA0B;gBAC1C,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;gBACnC,aAAa,EAAE,IAAI,CAAC,IAAI;gBACxB,aAAa,EAAE,IAAI,CAAC,IAAI;gBACxB,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;gBAChC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;gBAC1B,cAAc,EAAE,KAAK;gBACrB,MAAM,EAAE,cAAc,KAAK,KAAK,UAAU,EAAE;aAC7C,CAAC;YAEF,MAAM,QAAQ,GAAQ,MAAM,WAAW,CAAC,KAAK,CAC3C,MAAM,EACN,GAAG,OAAO,iBAAiB,EAC3B,OAAO,EACP,UAAU,CACX,CAAC;YAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAE3C,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACxC,OAAO,CAAC,QAAQ,CAAC,CAAC;aACnB;iBAAM;gBACL,MAAM,KAAK,CAAC,qBAAqB,CAAC,CAAC;aACpC;SACF;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,CAAC,KAAK,CAAC,CAAC;SACf;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,6 @@
1
+ interface UploadFileInputProps {
2
+ style?: any;
3
+ onUpload?: (file: any) => void;
4
+ }
5
+ declare const UploadFileInput: ({ style, onUpload, }: UploadFileInputProps) => JSX.Element;
6
+ export default UploadFileInput;
@@ -0,0 +1,71 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import React, { useState } from 'react';
19
+ import { StyleSheet, View } from 'react-native';
20
+ import { useSelector } from 'react-redux';
21
+ import DocumentPicker from 'react-native-document-picker';
22
+ import { CircleButton, Text } from '@axelor/aos-mobile-ui';
23
+ import { uploadFile } from '../../../api/metafile-api';
24
+ import { useTranslator } from '../../../i18n';
25
+ const UploadFileInput = ({ style, onUpload = console.log, }) => {
26
+ const I18n = useTranslator();
27
+ const { baseUrl, token, jsessionId } = useSelector((state) => state.auth);
28
+ const [selectedFile, setSelectedFile] = useState(null);
29
+ const handleDocumentPick = async () => {
30
+ try {
31
+ const file = await DocumentPicker.pickSingle({
32
+ type: [DocumentPicker.types.allFiles, DocumentPicker.types.images],
33
+ });
34
+ setSelectedFile(file);
35
+ handleFileUpload(file);
36
+ }
37
+ catch (error) {
38
+ console.log('Document picking error:', error);
39
+ }
40
+ };
41
+ const handleFileUpload = async (file) => {
42
+ try {
43
+ const response = await uploadFile(file, { baseUrl, token, jsessionId });
44
+ onUpload(response);
45
+ }
46
+ catch (error) {
47
+ console.log('Could not upload the file:', error);
48
+ }
49
+ };
50
+ return (<View style={[styles.container, style]}>
51
+ <Text style={styles.fileName}>
52
+ {selectedFile ? selectedFile.name : I18n.t('Base_ChooseFile')}
53
+ </Text>
54
+ <CircleButton iconName="plus" size={30} onPress={handleDocumentPick}/>
55
+ </View>);
56
+ };
57
+ const styles = StyleSheet.create({
58
+ container: {
59
+ width: '100%',
60
+ flexDirection: 'row',
61
+ justifyContent: 'space-between',
62
+ alignItems: 'center',
63
+ marginVertical: 5,
64
+ paddingHorizontal: 18,
65
+ },
66
+ fileName: {
67
+ width: '90%',
68
+ },
69
+ });
70
+ export default UploadFileInput;
71
+ //# sourceMappingURL=UploadFileInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UploadFileInput.js","sourceRoot":"","sources":["../../../../src/components/molecules/UploadFileInput/UploadFileInput.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAC;AACtC,OAAO,EAAC,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAC,WAAW,EAAC,MAAM,aAAa,CAAC;AACxC,OAAO,cAEN,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAC,YAAY,EAAE,IAAI,EAAC,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAC,UAAU,EAAC,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAC,aAAa,EAAC,MAAM,eAAe,CAAC;AAO5C,MAAM,eAAe,GAAG,CAAC,EACvB,KAAK,EACL,QAAQ,GAAG,OAAO,CAAC,GAAG,GACD,EAAE,EAAE;IACzB,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAE7B,MAAM,EAAC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAC,GAAG,WAAW,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAE7E,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEvD,MAAM,kBAAkB,GAAG,KAAK,IAAI,EAAE;QACpC,IAAI;YACF,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,UAAU,CAAC;gBAC3C,IAAI,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC;aACnE,CAAC,CAAC;YAEH,eAAe,CAAC,IAAI,CAAC,CAAC;YAEtB,gBAAgB,CAAC,IAAI,CAAC,CAAC;SACxB;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;SAC/C;IACH,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,KAAK,EAAE,IAA4B,EAAE,EAAE;QAC9D,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,EAAC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAC,CAAC,CAAC;YACtE,QAAQ,CAAC,QAAQ,CAAC,CAAC;SACpB;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;SAClD;IACH,CAAC,CAAC;IAEF,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CACrC;MAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAC3B;QAAA,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAC/D;MAAA,EAAE,IAAI,CACN;MAAA,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC,EACtE;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE;QACT,KAAK,EAAE,MAAM;QACb,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,eAAe;QAC/B,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,CAAC;QACjB,iBAAiB,EAAE,EAAE;KACtB;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,KAAK;KACb;CACF,CAAC,CAAC;AAEH,eAAe,eAAe,CAAC"}
@@ -6,3 +6,4 @@ export { default as InputBarCodeCard } from "./InputBarCodeCard/InputBarCodeCard
6
6
  export { default as LoginButton } from "./LoginButton/LoginButton";
7
7
  export { default as MailMessageReadIcon } from "./MailMessageReadIcon/MailMessageReadIcon";
8
8
  export { default as TrackItem } from "./TrackItem/TrackItem";
9
+ export { default as UploadFileInput } from "./UploadFileInput/UploadFileInput";
@@ -23,4 +23,5 @@ export { default as InputBarCodeCard } from './InputBarCodeCard/InputBarCodeCard
23
23
  export { default as LoginButton } from './LoginButton/LoginButton';
24
24
  export { default as MailMessageReadIcon } from './MailMessageReadIcon/MailMessageReadIcon';
25
25
  export { default as TrackItem } from './TrackItem/TrackItem';
26
+ export { default as UploadFileInput } from './UploadFileInput/UploadFileInput';
26
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/molecules/index.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAC,OAAO,IAAI,oBAAoB,EAAC,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAC,OAAO,IAAI,gBAAgB,EAAC,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/molecules/index.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAC,OAAO,IAAI,oBAAoB,EAAC,MAAM,8CAA8C,CAAC;AAC7F,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAC,OAAO,IAAI,gBAAgB,EAAC,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,mCAAmC,CAAC"}
@@ -36,6 +36,11 @@ const ScannerAutocompleteSearch = ({ objectList, value, onChangeValue, fetchData
36
36
  }
37
37
  }, [scanData, scannedValue]);
38
38
  const Colors = useThemeColor();
39
+ useEffect(() => {
40
+ if (value) {
41
+ setSearchText(value);
42
+ }
43
+ }, [value]);
39
44
  return (<AutoCompleteSearch selectLastItem={selectLastItem} objectList={objectList} value={searchText} onChangeValue={result => {
40
45
  setSearchText(result);
41
46
  onChangeValue(result);
@@ -1 +1 @@
1
- {"version":3,"file":"ScannerAutocompleteSearch.js","sourceRoot":"","sources":["../../../../src/components/organisms/ScannerAutocompleteSearch/ScannerAutocompleteSearch.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,QAAQ,EAAE,SAAS,EAAC,MAAM,OAAO,CAAC;AACjD,OAAO,EAAC,kBAAkB,EAAE,aAAa,EAAC,MAAM,uBAAuB,CAAC;AACxE,OAAO,EACL,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAC,0BAA0B,EAAC,MAAM,sCAAsC,CAAC;AAChF,OAAO,EACL,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,mCAAmC,CAAC;AAkB3C,MAAM,yBAAyB,GAAG,CAAC,EACjC,UAAU,EACV,KAAK,EACL,aAAa,EACb,SAAS,EACT,YAAY,EACZ,WAAW,EACX,aAAa,EACb,OAAO,GAAG,KAAK,EACf,iBAAiB,GAAG,KAAK,EACzB,QAAQ,GAAG,KAAK,EAChB,SAAS,GAAG,KAAK,EACjB,cAAc,GAAG,IAAI,EACrB,KAAK,GACmB,EAAE,EAAE;IAC5B,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,EAAC,SAAS,EAAE,OAAO,EAAC,GAAG,kBAAkB,EAAE,CAAC;IAClD,MAAM,YAAY,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,0BAA0B,CAAC,aAAa,CAAC,CAAC;IAC3D,MAAM,EAAC,MAAM,EAAE,WAAW,EAAC,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC9D,MAAM,EAAC,MAAM,EAAE,aAAa,EAAC,GAAG,yBAAyB,CAAC,aAAa,CAAC,CAAC;IAEzE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,YAAY,EAAE;YAChB,aAAa,CAAC,YAAY,CAAC,CAAC;SAC7B;aAAM,IAAI,QAAQ,EAAE,KAAK,IAAI,IAAI,EAAE;YAClC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SAC/B;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;IAE7B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,OAAO,CACL,CAAC,kBAAkB,CACjB,cAAc,CAAC,CAAC,cAAc,CAAC,CAC/B,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,KAAK,CAAC,CAAC,UAAU,CAAC,CAClB,aAAa,CAAC,CAAC,MAAM,CAAC,EAAE;YACtB,aAAa,CAAC,MAAM,CAAC,CAAC;YACtB,aAAa,CAAC,MAAM,CAAC,CAAC;QACxB,CAAC,CAAC,CACF,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,YAAY,CAAC,CAAC,YAAY,CAAC,CAC3B,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,iBAAiB,CAAC,CAAC,iBAAiB,CAAC,CACrC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,SAAS,CAAC,CAAC,SAAS,CAAC,CACrB,WAAW,CAAC,CAAC,aAAa,CAAC,CAC3B,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,aAAa,CAAC,CACZ,SAAS,IAAI,OAAO,KAAK,aAAa;YACpC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU;YAChC,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAC1C,CACD,KAAK,CAAC,CAAC,KAAK,CAAC,EACb,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
1
+ {"version":3,"file":"ScannerAutocompleteSearch.js","sourceRoot":"","sources":["../../../../src/components/organisms/ScannerAutocompleteSearch/ScannerAutocompleteSearch.tsx"],"names":[],"mappings":"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"}
@@ -3,7 +3,8 @@ export const login: import("@reduxjs/toolkit").AsyncThunk<{
3
3
  token: string;
4
4
  jsessionId: string;
5
5
  userId: any;
6
- interceptorId: number;
6
+ requestInterceptorId: number;
7
+ responseInterceptorId: number;
7
8
  }, void, {
8
9
  state?: unknown;
9
10
  dispatch?: import("redux").Dispatch<import("redux").AnyAction>;
@@ -31,7 +32,8 @@ export const authSlice: import("@reduxjs/toolkit").Slice<{
31
32
  baseUrl: any;
32
33
  token: any;
33
34
  jsessionId: any;
34
- interceptorId: any;
35
+ requestInterceptorId: any;
36
+ responseInterceptorId: any;
35
37
  error: any;
36
38
  }, import("@reduxjs/toolkit").SliceCaseReducers<{
37
39
  loading: boolean;
@@ -40,7 +42,8 @@ export const authSlice: import("@reduxjs/toolkit").Slice<{
40
42
  baseUrl: any;
41
43
  token: any;
42
44
  jsessionId: any;
43
- interceptorId: any;
45
+ requestInterceptorId: any;
46
+ responseInterceptorId: any;
44
47
  error: any;
45
48
  }>, "auth">;
46
49
  export const authReducer: import("redux").Reducer<{
@@ -50,6 +53,7 @@ export const authReducer: import("redux").Reducer<{
50
53
  baseUrl: any;
51
54
  token: any;
52
55
  jsessionId: any;
53
- interceptorId: any;
56
+ requestInterceptorId: any;
57
+ responseInterceptorId: any;
54
58
  error: any;
55
59
  }, import("redux").AnyAction>;
@@ -23,14 +23,22 @@ import { testUrl } from '../utils/api';
23
23
  import { URL_STORAGE_KEY } from '../utils/storage-keys';
24
24
  export const login = createAsyncThunk('auth/login', async ({ url, username, password }) => {
25
25
  const urlWithProtocol = await testUrl(url);
26
- const { token, jsessionId, interceptorId } = await loginApi(urlWithProtocol, username, password);
26
+ const { token, jsessionId, requestInterceptorId, responseInterceptorId } = await loginApi(urlWithProtocol, username, password);
27
27
  const userId = await getActiveUserId();
28
28
  storage.setItem(URL_STORAGE_KEY, urlWithProtocol);
29
- return { url: urlWithProtocol, token, jsessionId, userId, interceptorId };
29
+ return {
30
+ url: urlWithProtocol,
31
+ token,
32
+ jsessionId,
33
+ userId,
34
+ requestInterceptorId,
35
+ responseInterceptorId,
36
+ };
30
37
  });
31
38
  export const logout = createAsyncThunk('auth/logout', async function (data, { getState }) {
32
- const interceptorId = getState()?.auth?.interceptorId;
33
- axios.interceptors.request.eject(interceptorId);
39
+ const { requestInterceptorId, responseInterceptorId } = getState()?.auth;
40
+ axios.interceptors.request.eject(requestInterceptorId);
41
+ axios.interceptors.request.eject(responseInterceptorId);
34
42
  return;
35
43
  });
36
44
  const initialState = {
@@ -40,7 +48,8 @@ const initialState = {
40
48
  baseUrl: null,
41
49
  token: null,
42
50
  jsessionId: null,
43
- interceptorId: null,
51
+ requestInterceptorId: null,
52
+ responseInterceptorId: null,
44
53
  error: null,
45
54
  };
46
55
  export const authSlice = createSlice({
@@ -55,7 +64,7 @@ export const authSlice = createSlice({
55
64
  state.error = null;
56
65
  });
57
66
  builder.addCase(login.fulfilled, (state, action) => {
58
- const { url, token, jsessionId, userId, interceptorId } = action.payload;
67
+ const { url, token, jsessionId, userId, requestInterceptorId, responseInterceptorId, } = action.payload;
59
68
  state.logged = token != null;
60
69
  state.loading = false;
61
70
  state.userId = userId;
@@ -63,7 +72,8 @@ export const authSlice = createSlice({
63
72
  state.token = token;
64
73
  state.jsessionId = jsessionId;
65
74
  state.error = null;
66
- state.interceptorId = interceptorId;
75
+ state.requestInterceptorId = requestInterceptorId;
76
+ state.responseInterceptorId = responseInterceptorId;
67
77
  });
68
78
  builder.addCase(login.rejected, (state, action) => {
69
79
  state.loading = false;
@@ -76,7 +86,8 @@ export const authSlice = createSlice({
76
86
  state.token = null;
77
87
  state.jsessionId = null;
78
88
  state.error = null;
79
- state.interceptorId = null;
89
+ state.requestInterceptorId = null;
90
+ state.responseInterceptorId = null;
80
91
  });
81
92
  },
82
93
  });
@@ -1 +1 @@
1
- {"version":3,"file":"authSlice.js","sourceRoot":"","sources":["../../src/features/authSlice.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authSlice.js","sourceRoot":"","sources":["../../src/features/authSlice.js"],"names":[],"mappings":"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"}
@@ -32,6 +32,7 @@
32
32
  "Base_Cancel": "Cancel",
33
33
  "Base_Content": "Content",
34
34
  "Base_ViewAll": "View all",
35
+ "Base_ChooseFile": "Choose a file",
35
36
  "Base_NoAppConfigured": "No module configured on your application, please contact an administrator.",
36
37
  "Base_Unknown": "Unknown",
37
38
  "Base_Next": "Next",
@@ -32,6 +32,7 @@
32
32
  "Base_Cancel": "Annuler",
33
33
  "Base_Content": "Contenu",
34
34
  "Base_ViewAll": "Tout voir",
35
+ "Base_ChooseFile": "Choisir un fichier",
35
36
  "Base_NoAppConfigured": "Votre application n'est pas configurée, merci de contacter un administrateur.",
36
37
  "Base_Unknown": "Inconnue",
37
38
  "Base_Next": "Suivant",
package/lib/index.d.ts CHANGED
@@ -9,6 +9,7 @@ export { axiosApiProvider } from './axios/AxiosApi';
9
9
  export { getApiResponseData, getFirstData, handlerApiCall, handlerError, } from './api/utils';
10
10
  export { useScannedValueByKey, useScannerSelector, enableScan, scanValue, disableScan, default as scannerReducer, } from './features/scannerSlice';
11
11
  export { useCameraSelector, useCameraValueByKey, enableCamera, takePhoto, disableCamera, default as cameraReducer, } from './features/cameraSlice';
12
+ export { uploadFile } from './api/metafile-api';
12
13
  export { useDispatch, useSelector } from './redux/hooks';
13
14
  export * from './components';
14
15
  export * from './tools';
package/lib/index.js CHANGED
@@ -26,6 +26,7 @@ export { axiosApiProvider } from './axios/AxiosApi';
26
26
  export { getApiResponseData, getFirstData, handlerApiCall, handlerError, } from './api/utils';
27
27
  export { useScannedValueByKey, useScannerSelector, enableScan, scanValue, disableScan, default as scannerReducer, } from './features/scannerSlice';
28
28
  export { useCameraSelector, useCameraValueByKey, enableCamera, takePhoto, disableCamera, default as cameraReducer, } from './features/cameraSlice';
29
+ export { uploadFile } from './api/metafile-api';
29
30
  export { useDispatch, useSelector } from './redux/hooks';
30
31
  export * from './components';
31
32
  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,MAAM,EAAC,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAClD,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,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,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"}
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,MAAM,EAAC,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAClD,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,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,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"}
@@ -0,0 +1 @@
1
+ export * from './translation';
@@ -0,0 +1,19 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ export * from './translation';
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/middlewares/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,cAAc,eAAe,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { AxiosResponse } from 'axios';
2
+ export declare const translationMiddleware: (response: AxiosResponse) => AxiosResponse;
@@ -0,0 +1,48 @@
1
+ /*
2
+ * Axelor Business Solutions
3
+ *
4
+ * Copyright (C) 2023 Axelor (<http://axelor.com>).
5
+ *
6
+ * This program is free software: you can redistribute it and/or modify
7
+ * it under the terms of the GNU Affero General Public License, version 3,
8
+ * as published by the Free Software Foundation.
9
+ *
10
+ * This program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
+ * GNU Affero General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Affero General Public License
16
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
17
+ */
18
+ import { isPlainObject } from '../utils';
19
+ export const translationMiddleware = (response) => {
20
+ if (response?.data?.data) {
21
+ response.data.data = parseTranslation(response.data.data);
22
+ }
23
+ return response;
24
+ };
25
+ const parseTranslation = (data, cache = new Map()) => {
26
+ if (Array.isArray(data)) {
27
+ return data.map(value => parseTranslation(value, cache));
28
+ }
29
+ if (isPlainObject(data)) {
30
+ if (cache.has(data)) {
31
+ return cache.get(data);
32
+ }
33
+ const updatedItem = {};
34
+ for (const [key, value] of Object.entries(data)) {
35
+ if (key.startsWith('$t:')) {
36
+ const translationKey = key.slice(3);
37
+ updatedItem[translationKey] = value;
38
+ }
39
+ else if (!(key in updatedItem)) {
40
+ updatedItem[key] = parseTranslation(value, cache);
41
+ }
42
+ }
43
+ cache.set(data, updatedItem);
44
+ return updatedItem;
45
+ }
46
+ return data;
47
+ };
48
+ //# sourceMappingURL=translation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"translation.js","sourceRoot":"","sources":["../../src/middlewares/translation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAC,aAAa,EAAC,MAAM,UAAU,CAAC;AAEvC,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,QAAuB,EACR,EAAE;IACjB,IAAI,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE;QACxB,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC3D;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,IAAS,EAAE,KAAK,GAAG,IAAI,GAAG,EAAE,EAAO,EAAE;IAC7D,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACvB,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;KAC1D;IAED,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE;QACvB,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACnB,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;SACxB;QAED,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC/C,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;gBACzB,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACpC,WAAW,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC;aACrC;iBAAM,IAAI,CAAC,CAAC,GAAG,IAAI,WAAW,CAAC,EAAE;gBAChC,WAAW,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;aACnD;SACF;QAED,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC7B,OAAO,WAAW,CAAC;KACpB;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
@@ -4,7 +4,7 @@ export { displayItemName } from './displayers';
4
4
  export { formatDate, formatDateTime, formatTime, formatScan, formatURL, } from './formatters';
5
5
  export { filterList, filterListContain, getFromList } from './list';
6
6
  export { calculateDiff, formatDuration, formatTwoNumber, getIntegerPart, } from './time';
7
- export { areObjectsEquals, isEmpty, fetchJsonField, filterObjectsFields, pickFieldsOfObject, } from './object';
7
+ export { areObjectsEquals, isEmpty, fetchJsonField, filterObjectsFields, pickFieldsOfObject, isPlainObject, } from './object';
8
8
  export { showToastMessage } from './show-toast-message';
9
9
  export { checkNullString, isHtml, splitInTwo, stringNoAccent } from './string';
10
10
  export { filterChip } from './filter';
@@ -21,7 +21,7 @@ export { displayItemName } from './displayers';
21
21
  export { formatDate, formatDateTime, formatTime, formatScan, formatURL, } from './formatters';
22
22
  export { filterList, filterListContain, getFromList } from './list';
23
23
  export { calculateDiff, formatDuration, formatTwoNumber, getIntegerPart, } from './time';
24
- export { areObjectsEquals, isEmpty, fetchJsonField, filterObjectsFields, pickFieldsOfObject, } from './object';
24
+ export { areObjectsEquals, isEmpty, fetchJsonField, filterObjectsFields, pickFieldsOfObject, isPlainObject, } from './object';
25
25
  export { showToastMessage } from './show-toast-message';
26
26
  export { checkNullString, isHtml, splitInTwo, stringNoAccent } from './string';
27
27
  export { filterChip } from './filter';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,iBAAiB,EAAC,MAAM,UAAU,CAAC;AAC3C,OAAO,EACL,MAAM,EACN,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,aAAa,GACd,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAC7C,OAAO,EACL,UAAU,EACV,cAAc,EACd,UAAU,EACV,UAAU,EACV,SAAS,GACV,MAAM,cAAc,CAAC;AACtB,OAAO,EAAC,UAAU,EAAE,iBAAiB,EAAE,WAAW,EAAC,MAAM,QAAQ,CAAC;AAClE,OAAO,EACL,aAAa,EACb,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,QAAQ,CAAC;AAChB,OAAO,EACL,gBAAgB,EAChB,OAAO,EACP,cAAc,EACd,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAC,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAC,MAAM,UAAU,CAAC;AAC7E,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,iBAAiB,EAAC,MAAM,UAAU,CAAC;AAC3C,OAAO,EACL,MAAM,EACN,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,aAAa,GACd,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAC7C,OAAO,EACL,UAAU,EACV,cAAc,EACd,UAAU,EACV,UAAU,EACV,SAAS,GACV,MAAM,cAAc,CAAC;AACtB,OAAO,EAAC,UAAU,EAAE,iBAAiB,EAAE,WAAW,EAAC,MAAM,QAAQ,CAAC;AAClE,OAAO,EACL,aAAa,EACb,cAAc,EACd,eAAe,EACf,cAAc,GACf,MAAM,QAAQ,CAAC;AAChB,OAAO,EACL,gBAAgB,EAChB,OAAO,EACP,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAC,eAAe,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAC,MAAM,UAAU,CAAC;AAC7E,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC"}
@@ -3,3 +3,4 @@ export declare const isEmpty: (obj: any) => boolean;
3
3
  export declare function fetchJsonField(object: any, fieldName: string): any;
4
4
  export declare function pickFieldsOfObject(object: any, fields: any): any;
5
5
  export declare function filterObjectsFields(data: any[], fields: string[]): any[];
6
+ export declare const isPlainObject: (val: any) => boolean;
@@ -31,8 +31,9 @@ export function areObjectsEquals(object1, object2) {
31
31
  }
32
32
  }
33
33
  }
34
- export const isEmpty = obj => Object.keys(obj).length === 0 &&
35
- Object.getPrototypeOf(obj) === Object.prototype;
34
+ export const isEmpty = obj => obj == null ||
35
+ (Object.keys(obj).length === 0 &&
36
+ Object.getPrototypeOf(obj) === Object.prototype);
36
37
  export function fetchJsonField(object, fieldName) {
37
38
  if (object == null) {
38
39
  return undefined;
@@ -55,4 +56,5 @@ export function filterObjectsFields(data, fields) {
55
56
  }
56
57
  return data.map(object => pickFieldsOfObject(object, fields));
57
58
  }
59
+ export const isPlainObject = val => !!val && typeof val === 'object' && val.constructor === Object;
58
60
  //# sourceMappingURL=object.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"object.js","sourceRoot":"","sources":["../../src/utils/object.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,cAAc,EAAC,MAAM,UAAU,CAAC;AAExC,MAAM,UAAU,gBAAgB,CAAC,OAAO,EAAE,OAAO;IAC/C,IAAI,OAAO,OAAO,KAAK,OAAO,OAAO,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,EAAE;QAC3E,OAAO,KAAK,CAAC;KACd;SAAM;QACL,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,OAAO,cAAc,CAAC,OAAO,CAAC;iBAC3B,WAAW,EAAE;iBACb,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;SACpD;aAAM;YACL,OAAO,OAAO,KAAK,OAAO,CAAC;SAC5B;KACF;AACH,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC,EAAE,CAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC;IAC7B,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,SAAS,CAAC;AAElD,MAAM,UAAU,cAAc,CAAC,MAAW,EAAE,SAAiB;IAC3D,IAAI,MAAM,IAAI,IAAI,EAAE;QAClB,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QACzD,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;KAC1B;IAED,MAAM,UAAU,GAAa,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClD,OAAO,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAM,EAAE,MAAM;IAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,MAAM,EAAE,KAAK;QAC1C,MAAM,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC9C,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAW,EAAE,MAAgB;IAC/D,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,EAAE,MAAM,KAAK,CAAC,EAAE;QAC1C,OAAO,IAAI,CAAC;KACb;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAChE,CAAC"}
1
+ {"version":3,"file":"object.js","sourceRoot":"","sources":["../../src/utils/object.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,cAAc,EAAC,MAAM,UAAU,CAAC;AAExC,MAAM,UAAU,gBAAgB,CAAC,OAAO,EAAE,OAAO;IAC/C,IAAI,OAAO,OAAO,KAAK,OAAO,OAAO,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,EAAE;QAC3E,OAAO,KAAK,CAAC;KACd;SAAM;QACL,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,OAAO,cAAc,CAAC,OAAO,CAAC;iBAC3B,WAAW,EAAE;iBACb,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;SACpD;aAAM;YACL,OAAO,OAAO,KAAK,OAAO,CAAC;SAC5B;KACF;AACH,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC,EAAE,CAC3B,GAAG,IAAI,IAAI;IACX,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC;QAC5B,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,SAAS,CAAC,CAAC;AAErD,MAAM,UAAU,cAAc,CAAC,MAAW,EAAE,SAAiB;IAC3D,IAAI,MAAM,IAAI,IAAI,EAAE;QAClB,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QACzD,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;KAC1B;IAED,MAAM,UAAU,GAAa,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClD,OAAO,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAM,EAAE,MAAM;IAC/C,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,MAAM,EAAE,KAAK;QAC1C,MAAM,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC9C,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAW,EAAE,MAAgB;IAC/D,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,EAAE,MAAM,KAAK,CAAC,EAAE;QAC1C,OAAO,IAAI,CAAC;KACb;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAC,EAAE,CACjC,CAAC,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,WAAW,KAAK,MAAM,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@axelor/aos-mobile-core",
3
- "version": "6.4.2",
3
+ "version": "6.4.3",
4
4
  "author": "Axelor",
5
5
  "license": "AGPL-3.0-only",
6
6
  "publishConfig": {
@@ -31,8 +31,8 @@
31
31
  "react": "18.2.0",
32
32
  "react-i18next": "^11.18.6",
33
33
  "react-native": "0.68.1",
34
- "react-native-date-picker": "^4.2.6",
35
34
  "react-native-datawedge-intents": "^0.1.8",
35
+ "react-native-date-picker": "^4.2.6",
36
36
  "react-native-device-info": "^10.3.0",
37
37
  "react-native-document-picker": "8.1.3",
38
38
  "react-native-file-viewer": "^2.1.5",
@@ -44,6 +44,7 @@
44
44
  "react-native-static-safe-area-insets": "^2.2.0",
45
45
  "react-native-toast-message": "^2.1.5",
46
46
  "react-native-vision-camera": "^2.13.5",
47
+ "rn-fetch-blob": "0.13.0-beta.1",
47
48
  "vision-camera-code-scanner": "^0.2.0"
48
49
  },
49
50
  "devDependencies": {
@@ -63,8 +64,8 @@
63
64
  "react": "18.2.0",
64
65
  "react-i18next": "^11.18.6",
65
66
  "react-native": "0.68.1",
66
- "react-native-date-picker": "^4.2.6",
67
67
  "react-native-datawedge-intents": "^0.1.8",
68
+ "react-native-date-picker": "^4.2.6",
68
69
  "react-native-device-info": "^10.3.0",
69
70
  "react-native-document-picker": "8.1.3",
70
71
  "react-native-file-viewer": "^2.1.5",
@@ -77,11 +78,12 @@
77
78
  "react-native-static-safe-area-insets": "^2.2.0",
78
79
  "react-native-toast-message": "^2.1.5",
79
80
  "react-native-vision-camera": "^2.13.5",
81
+ "rn-fetch-blob": "0.13.0-beta.1",
80
82
  "vision-camera-code-scanner": "^0.2.0"
81
83
  },
82
84
  "dependencies": {
83
- "@axelor/aos-mobile-error": "6.4.2",
84
- "@axelor/aos-mobile-ui": "6.4.2",
85
+ "@axelor/aos-mobile-error": "6.4.3",
86
+ "@axelor/aos-mobile-ui": "6.4.3",
85
87
  "@react-navigation/drawer": "6.4.1",
86
88
  "@react-navigation/native": "6.0.10",
87
89
  "@react-navigation/native-stack": "6.6.1",