@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawerContent.js","sourceRoot":"","sources":["../../../src/navigator/drawer/DrawerContent.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EACZ,MAAM,EACN,UAAU,EACV,OAAO,EACP,SAAS,EACT,WAAW,GACZ,MAAM,OAAO,CAAC;AACf,OAAO,EAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAC1E,OAAO,EAAC,YAAY,EAAC,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAC,IAAI,EAAE,aAAa,EAAC,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"DrawerContent.js","sourceRoot":"","sources":["../../../src/navigator/drawer/DrawerContent.js"],"names":[],"mappings":"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"}
|
|
@@ -16,16 +16,19 @@
|
|
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
18
|
import React from 'react';
|
|
19
|
-
import { StyleSheet } from 'react-native';
|
|
19
|
+
import { StyleSheet, TouchableOpacity } from 'react-native';
|
|
20
20
|
import { DrawerActions, useNavigation } from '@react-navigation/native';
|
|
21
21
|
import { Icon } from '@axelor/aos-mobile-ui';
|
|
22
22
|
const DrawerToggleButton = ({ tintColor }) => {
|
|
23
23
|
const navigation = useNavigation();
|
|
24
|
-
return (<
|
|
24
|
+
return (<TouchableOpacity onPress={() => navigation.dispatch(DrawerActions.toggleDrawer())} style={styles.icon}>
|
|
25
|
+
<Icon name="stream" size={26} color={tintColor}/>
|
|
26
|
+
</TouchableOpacity>);
|
|
25
27
|
};
|
|
26
28
|
const styles = StyleSheet.create({
|
|
27
29
|
icon: {
|
|
28
|
-
|
|
30
|
+
paddingLeft: 14,
|
|
31
|
+
paddingRight: 28,
|
|
29
32
|
},
|
|
30
33
|
});
|
|
31
34
|
export default DrawerToggleButton;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawerToggleButton.js","sourceRoot":"","sources":["../../../src/navigator/drawer/DrawerToggleButton.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"DrawerToggleButton.js","sourceRoot":"","sources":["../../../src/navigator/drawer/DrawerToggleButton.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAE,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAC,aAAa,EAAE,aAAa,EAAC,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAC,IAAI,EAAC,MAAM,uBAAuB,CAAC;AAE3C,MAAM,kBAAkB,GAAG,CAAC,EAAC,SAAS,EAAC,EAAE,EAAE;IACzC,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IAEnC,OAAO,CACL,CAAC,gBAAgB,CACf,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,CAAC,CACjE,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CACnB;MAAA,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,EACjD;IAAA,EAAE,gBAAgB,CAAC,CACpB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,IAAI,EAAE;QACJ,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,EAAE;KACjB;CACF,CAAC,CAAC;AAEH,eAAe,kBAAkB,CAAC"}
|
|
@@ -5,3 +5,4 @@ export function updateAccessibleMenus(_module: any, restrictedMenus: any, user:
|
|
|
5
5
|
export function moduleInMenuFooter(_module: any): boolean;
|
|
6
6
|
export function getDefaultModule(modules: any, mainMenu: any): any;
|
|
7
7
|
export function numberOfModules(modules: any): any;
|
|
8
|
+
export function authModuleFilter(_module: any): boolean;
|
|
@@ -18,7 +18,10 @@
|
|
|
18
18
|
import { isMenuEnabled } from './menu.helper';
|
|
19
19
|
import { userHaveAccessToConfig } from './roles.helper';
|
|
20
20
|
export function filterAuthorizedModules(modules, mobileConfigs, user) {
|
|
21
|
-
if (modules == null ||
|
|
21
|
+
if (modules == null ||
|
|
22
|
+
mobileConfigs == null ||
|
|
23
|
+
!Array.isArray(mobileConfigs) ||
|
|
24
|
+
mobileConfigs?.length === 0) {
|
|
22
25
|
return modules;
|
|
23
26
|
}
|
|
24
27
|
const authorizedModules = [];
|
|
@@ -75,7 +78,7 @@ export function getDefaultModule(modules, mainMenu) {
|
|
|
75
78
|
return firstModulesWithMenus(modules);
|
|
76
79
|
}
|
|
77
80
|
export function numberOfModules(modules) {
|
|
78
|
-
return modules.filter(moduleHasMenus).length;
|
|
81
|
+
return modules.filter(authModuleFilter).filter(moduleHasMenus).length;
|
|
79
82
|
}
|
|
80
83
|
function modulesContainsMenu(modules, menuKey) {
|
|
81
84
|
return modules
|
|
@@ -92,4 +95,7 @@ function firstModulesWithMenus(modules) {
|
|
|
92
95
|
.filter(_module => _module.menus)
|
|
93
96
|
.find(_module => Object.keys(_module.menus).length > 0);
|
|
94
97
|
}
|
|
98
|
+
export function authModuleFilter(_module) {
|
|
99
|
+
return _module.name !== 'Auth';
|
|
100
|
+
}
|
|
95
101
|
//# sourceMappingURL=module.helper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.helper.js","sourceRoot":"","sources":["../../src/navigator/module.helper.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,aAAa,EAAC,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAC,sBAAsB,EAAC,MAAM,gBAAgB,CAAC;AAEtD,MAAM,UAAU,uBAAuB,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI;IAClE,
|
|
1
|
+
{"version":3,"file":"module.helper.js","sourceRoot":"","sources":["../../src/navigator/module.helper.js"],"names":[],"mappings":"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"}
|
|
@@ -15,26 +15,66 @@
|
|
|
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, { useEffect, useState } from 'react';
|
|
19
|
-
import { ActivityIndicator, StyleSheet, View, Dimensions } from 'react-native';
|
|
20
|
-
import { useThemeColor, Text, Screen
|
|
21
|
-
import {
|
|
18
|
+
import React, { useEffect, useMemo, useState } from 'react';
|
|
19
|
+
import { ActivityIndicator, StyleSheet, View, Dimensions, KeyboardAvoidingView, Platform, ScrollView, } from 'react-native';
|
|
20
|
+
import { useThemeColor, Text, Screen } from '@axelor/aos-mobile-ui';
|
|
21
|
+
import { ErrorText, LoginButton, LogoImage, PasswordInput, UrlInput, UsernameInput, } from '../components';
|
|
22
22
|
import { useDispatch, useSelector } from 'react-redux';
|
|
23
23
|
import { login } from '../features/authSlice';
|
|
24
|
-
import {
|
|
24
|
+
import { useScannedValueByKey, useScannerSelector, } from '../features/scannerSlice';
|
|
25
|
+
import { useCameraScannerValueByKey } from '../features/cameraScannerSlice';
|
|
26
|
+
import { useScanActivator, useScannerDeviceActivator, } from '../hooks/use-scan-activator';
|
|
27
|
+
import { checkNullString } from '../utils';
|
|
28
|
+
import { storage } from '../storage/Storage';
|
|
29
|
+
import { URL_STORAGE_KEY } from '../utils/storage-keys';
|
|
25
30
|
const urlScanKey = 'login_url';
|
|
26
31
|
const LoginScreen = ({ route }) => {
|
|
27
|
-
const { loading, error } = useSelector(state => state.auth);
|
|
28
|
-
const [camScan, setCamScan] = useState(false);
|
|
29
|
-
const [scanData, setScanData] = useState(null);
|
|
32
|
+
const { loading, error, baseUrl } = useSelector(state => state.auth);
|
|
30
33
|
const { isEnabled, scanKey } = useScannerSelector();
|
|
31
34
|
const scannedValue = useScannedValueByKey(urlScanKey);
|
|
35
|
+
const scanData = useCameraScannerValueByKey(urlScanKey);
|
|
36
|
+
const { enable: onScanPress } = useScanActivator(urlScanKey);
|
|
37
|
+
const { enable: enableScanner } = useScannerDeviceActivator(urlScanKey);
|
|
32
38
|
const appVersion = route?.params?.version;
|
|
39
|
+
const testInstanceConfig = route?.params?.testInstanceConfig;
|
|
40
|
+
const releaseInstanceConfig = route?.params?.releaseInstanceConfig;
|
|
41
|
+
const urlStorage = storage.getItem(URL_STORAGE_KEY);
|
|
33
42
|
const Colors = useThemeColor();
|
|
34
43
|
const dispatch = useDispatch();
|
|
35
|
-
const
|
|
36
|
-
const
|
|
37
|
-
|
|
44
|
+
const modeDebug = useMemo(() => __DEV__, []);
|
|
45
|
+
const showUrlInput = useMemo(() => {
|
|
46
|
+
if (modeDebug) {
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
return releaseInstanceConfig?.showUrlInput || true;
|
|
51
|
+
}
|
|
52
|
+
}, [modeDebug, releaseInstanceConfig?.showUrlInput]);
|
|
53
|
+
const defaultUrl = useMemo(() => {
|
|
54
|
+
if (urlStorage != null) {
|
|
55
|
+
return urlStorage;
|
|
56
|
+
}
|
|
57
|
+
if (baseUrl != null) {
|
|
58
|
+
return baseUrl;
|
|
59
|
+
}
|
|
60
|
+
if (modeDebug) {
|
|
61
|
+
return testInstanceConfig?.defaultUrl;
|
|
62
|
+
}
|
|
63
|
+
return releaseInstanceConfig?.url;
|
|
64
|
+
}, [
|
|
65
|
+
urlStorage,
|
|
66
|
+
baseUrl,
|
|
67
|
+
modeDebug,
|
|
68
|
+
releaseInstanceConfig?.url,
|
|
69
|
+
testInstanceConfig?.defaultUrl,
|
|
70
|
+
]);
|
|
71
|
+
const [url, setUrl] = useState(defaultUrl || '');
|
|
72
|
+
const [username, setUsername] = useState(modeDebug ? testInstanceConfig?.defaultUsername : '');
|
|
73
|
+
const [password, setPassword] = useState(modeDebug ? testInstanceConfig?.defaultPassword : '');
|
|
74
|
+
const disabledLogin = useMemo(() => checkNullString(url) ||
|
|
75
|
+
checkNullString(username) ||
|
|
76
|
+
checkNullString(password) ||
|
|
77
|
+
loading, [loading, password, url, username]);
|
|
38
78
|
useEffect(() => {
|
|
39
79
|
if (scannedValue) {
|
|
40
80
|
if (scannedValue.includes('username') === true) {
|
|
@@ -46,69 +86,62 @@ const LoginScreen = ({ route }) => {
|
|
|
46
86
|
setUrl(scannedValue);
|
|
47
87
|
}
|
|
48
88
|
}
|
|
49
|
-
else if (scanData
|
|
89
|
+
else if (scanData?.value != null) {
|
|
50
90
|
if (scanData.value.includes('username') === true) {
|
|
51
91
|
const parseScannnedData = JSON.parse(scanData.value);
|
|
52
92
|
setUrl(parseScannnedData.url);
|
|
53
93
|
setUsername(parseScannnedData.username);
|
|
54
|
-
setCamScan(false);
|
|
55
94
|
}
|
|
56
95
|
else {
|
|
57
96
|
setUrl(scanData.value);
|
|
58
|
-
setCamScan(false);
|
|
59
97
|
}
|
|
60
98
|
}
|
|
61
99
|
}, [scanData, scannedValue]);
|
|
62
|
-
return (<Screen
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
100
|
+
return (<Screen>
|
|
101
|
+
<KeyboardAvoidingView behavior={Platform.OS === 'ios' ? 'padding' : 'height'}>
|
|
102
|
+
<ScrollView>
|
|
103
|
+
<View style={styles.container}>
|
|
104
|
+
<View style={styles.imageContainer}>
|
|
105
|
+
<LogoImage url={url}/>
|
|
106
|
+
</View>
|
|
107
|
+
<ErrorText error={error}/>
|
|
108
|
+
{showUrlInput && (<UrlInput value={url} onChange={setUrl} readOnly={loading} onScanPress={onScanPress} onSelection={enableScanner} scanIconColor={isEnabled && scanKey === urlScanKey
|
|
109
|
+
? Colors.primaryColor.background
|
|
110
|
+
: Colors.secondaryColor_dark.background}/>)}
|
|
111
|
+
<UsernameInput value={username} onChange={setUsername} readOnly={loading} showScanIcon={!showUrlInput} onScanPress={onScanPress} onSelection={enableScanner} scanIconColor={isEnabled && scanKey === urlScanKey
|
|
74
112
|
? Colors.primaryColor.background
|
|
75
113
|
: Colors.secondaryColor_dark.background}/>
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
114
|
+
<PasswordInput value={password} onChange={setPassword} readOnly={loading}/>
|
|
115
|
+
<View>
|
|
116
|
+
{loading ? (<ActivityIndicator size="large"/>) : (<LoginButton onPress={() => dispatch(login({ url, username, password }))} disabled={disabledLogin}/>)}
|
|
117
|
+
</View>
|
|
118
|
+
<View style={styles.copyright}>
|
|
119
|
+
<Text>{`© 2005 - ${new Date().getFullYear()} Axelor. All rights reserved.`}</Text>
|
|
120
|
+
<Text>{`Version ${appVersion}`}</Text>
|
|
121
|
+
</View>
|
|
122
|
+
</View>
|
|
123
|
+
</ScrollView>
|
|
124
|
+
</KeyboardAvoidingView>
|
|
85
125
|
</Screen>);
|
|
86
126
|
};
|
|
87
127
|
const styles = StyleSheet.create({
|
|
88
128
|
container: {
|
|
89
|
-
|
|
129
|
+
marginTop: '15%',
|
|
130
|
+
alignItems: 'center',
|
|
131
|
+
height: Dimensions.get('window').height * 0.95,
|
|
90
132
|
},
|
|
91
133
|
imageContainer: {
|
|
92
134
|
alignItems: 'center',
|
|
93
135
|
width: '100%',
|
|
94
136
|
height: '15%',
|
|
95
|
-
marginTop: Dimensions.get('window').height < 500 ? '
|
|
137
|
+
marginTop: Dimensions.get('window').height < 500 ? '15%' : '40%',
|
|
96
138
|
marginBottom: '10%',
|
|
97
139
|
},
|
|
98
|
-
imageSize: {
|
|
99
|
-
flex: 1,
|
|
100
|
-
},
|
|
101
|
-
buttonContainer: {
|
|
102
|
-
flex: 1,
|
|
103
|
-
},
|
|
104
|
-
errorContainer: {
|
|
105
|
-
flex: 1,
|
|
106
|
-
},
|
|
107
140
|
copyright: {
|
|
108
|
-
alignSelf: 'center',
|
|
109
|
-
alignItems: 'center',
|
|
110
141
|
position: 'absolute',
|
|
111
|
-
|
|
142
|
+
alignItems: 'center',
|
|
143
|
+
width: '100%',
|
|
144
|
+
bottom: 0,
|
|
112
145
|
},
|
|
113
146
|
});
|
|
114
147
|
export default LoginScreen;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoginScreen.js","sourceRoot":"","sources":["../../src/screens/LoginScreen.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,SAAS,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"LoginScreen.js","sourceRoot":"","sources":["../../src/screens/LoginScreen.js"],"names":[],"mappings":"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"}
|
package/lib/storage/Storage.d.ts
CHANGED
|
@@ -3,14 +3,18 @@ interface InternalStorage {
|
|
|
3
3
|
getString(key: string): string | undefined;
|
|
4
4
|
contains(key: string): boolean;
|
|
5
5
|
clearAll(): void;
|
|
6
|
+
getAllKeys(): string[];
|
|
7
|
+
delete(key: string): void;
|
|
6
8
|
}
|
|
7
|
-
declare class Storage {
|
|
9
|
+
export declare class Storage {
|
|
8
10
|
private storage;
|
|
9
11
|
constructor(storage: InternalStorage);
|
|
10
12
|
contains(key: string): boolean;
|
|
11
13
|
setItem(key: string, value: any): void;
|
|
12
14
|
getItem(key: string): any;
|
|
15
|
+
getAllKeys(): string[];
|
|
13
16
|
clearAll(): void;
|
|
17
|
+
deleteItem(key: string): void;
|
|
14
18
|
}
|
|
15
19
|
export declare const storage: Storage;
|
|
16
20
|
export declare function useStorage(): Storage;
|
package/lib/storage/Storage.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
18
|
import { MMKV } from 'react-native-mmkv';
|
|
19
|
-
class Storage {
|
|
19
|
+
export class Storage {
|
|
20
20
|
storage;
|
|
21
21
|
constructor(storage) {
|
|
22
22
|
this.storage = storage;
|
|
@@ -42,9 +42,15 @@ class Storage {
|
|
|
42
42
|
return strItem;
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
|
+
getAllKeys() {
|
|
46
|
+
return this.storage.getAllKeys();
|
|
47
|
+
}
|
|
45
48
|
clearAll() {
|
|
46
49
|
this.storage.clearAll();
|
|
47
50
|
}
|
|
51
|
+
deleteItem(key) {
|
|
52
|
+
this.storage.delete(key);
|
|
53
|
+
}
|
|
48
54
|
}
|
|
49
55
|
export const storage = new Storage(new MMKV());
|
|
50
56
|
export function useStorage() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Storage.js","sourceRoot":"","sources":["../../src/storage/Storage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,IAAI,EAAC,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"Storage.js","sourceRoot":"","sources":["../../src/storage/Storage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAWvC,MAAM,OAAO,OAAO;IACE;IAApB,YAAoB,OAAwB;QAAxB,YAAO,GAAP,OAAO,CAAiB;IAAG,CAAC;IAEhD,QAAQ,CAAC,GAAW;QAClB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,OAAO,CAAC,GAAW,EAAE,KAAU;QAC7B,IAAI,KAAK,YAAY,MAAM,IAAI,KAAK,YAAY,KAAK,EAAE;YACrD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;SAC9C;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SAC9B;IACH,CAAC;IAED,OAAO,CAAC,GAAW;QACjB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI;YACF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC;SACb;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,OAAO,CAAC;SAChB;IACH,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;IACnC,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,UAAU,CAAC,GAAW;QACpB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;CACF;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;AAE/C,MAAM,UAAU,UAAU;IACxB,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const handleDocumentSelection: (onChange: any) => Promise<any>;
|
|
@@ -0,0 +1,42 @@
|
|
|
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 DocumentPicker from 'react-native-document-picker';
|
|
19
|
+
import RNFS from 'react-native-fs';
|
|
20
|
+
export const handleDocumentSelection = async (onChange) => {
|
|
21
|
+
try {
|
|
22
|
+
const document = await DocumentPicker.pick({
|
|
23
|
+
presentationStyle: 'fullScreen',
|
|
24
|
+
allowMultiSelection: false,
|
|
25
|
+
type: 'image/*',
|
|
26
|
+
}).then(documentList => {
|
|
27
|
+
if (documentList == null || documentList.length === 0) {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
return documentList[0];
|
|
31
|
+
});
|
|
32
|
+
if (document == null) {
|
|
33
|
+
return onChange(null);
|
|
34
|
+
}
|
|
35
|
+
const fileData = await RNFS.readFile(document.uri, 'base64');
|
|
36
|
+
onChange(`data:${document.type};base64,${fileData}`);
|
|
37
|
+
}
|
|
38
|
+
catch (err) {
|
|
39
|
+
console.warn(err);
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=FilePicker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilePicker.js","sourceRoot":"","sources":["../../src/tools/FilePicker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,IAAI,MAAM,iBAAiB,CAAC;AAEnC,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAAC,QAAQ,EAAC,EAAE;IACtD,IAAI;QACF,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC;YACzC,iBAAiB,EAAE,YAAY;YAC/B,mBAAmB,EAAE,KAAK;YAC1B,IAAI,EAAE,SAAS;SAChB,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YACrB,IAAI,YAAY,IAAI,IAAI,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;gBACrD,OAAO,IAAI,CAAC;aACb;YACD,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,IAAI,QAAQ,IAAI,IAAI,EAAE;YACpB,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;SACvB;QACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC7D,QAAQ,CAAC,QAAQ,QAAQ,CAAC,IAAI,WAAW,QAAQ,EAAE,CAAC,CAAC;KACtD;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACnB;AACH,CAAC,CAAC"}
|
package/lib/utils/api.js
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Axelor Business Solutions
|
|
3
|
+
*
|
|
4
|
+
* Copyright (C) 2023 Axelor (<http://axelor.com>).
|
|
5
|
+
*
|
|
6
|
+
* This program is free software: you can redistribute it and/or modify
|
|
7
|
+
* it under the terms of the GNU Affero General Public License, version 3,
|
|
8
|
+
* as published by the Free Software Foundation.
|
|
9
|
+
*
|
|
10
|
+
* This program is distributed in the hope that it will be useful,
|
|
11
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13
|
+
* GNU Affero General Public License for more details.
|
|
14
|
+
*
|
|
15
|
+
* You should have received a copy of the GNU Affero General Public License
|
|
16
|
+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
+
*/
|
|
18
|
+
import { formatURL as _formatURL } from './formatters';
|
|
19
|
+
const PREFIX_REGEX = /^https?:\/\//;
|
|
20
|
+
const INVALID_URL_CODE = 999;
|
|
21
|
+
export function testUrl(url) {
|
|
22
|
+
return new Promise(async (resolve, reject) => {
|
|
23
|
+
if (!url || typeof url !== 'string') {
|
|
24
|
+
reject(new Error(`Invalid URL: "${url}" ${INVALID_URL_CODE}`));
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
const formatUrl = _formatURL(isHttpUrl(url) ? url.replace(PREFIX_REGEX, '') : url);
|
|
28
|
+
const urlsWithProtocol = ['https', 'http'].map(protocol => `${protocol}://${formatUrl}`);
|
|
29
|
+
for (const urlWithProtocol of urlsWithProtocol) {
|
|
30
|
+
try {
|
|
31
|
+
const response = await fetch(urlWithProtocol);
|
|
32
|
+
if (response.ok) {
|
|
33
|
+
resolve(urlWithProtocol);
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
console.log(`Error fetching ${urlWithProtocol}: ${error}`);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
reject(new Error(`Could not fetch URL: "${url}" ${INVALID_URL_CODE}`));
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
export function isHttpUrl(url) {
|
|
45
|
+
return PREFIX_REGEX.test(url);
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/utils/api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,SAAS,IAAI,UAAU,EAAC,MAAM,cAAc,CAAC;AAErD,MAAM,YAAY,GAAG,cAAc,CAAC;AACpC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAE7B,MAAM,UAAU,OAAO,CAAC,GAAW;IACjC,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YACnC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,GAAG,KAAK,gBAAgB,EAAE,CAAC,CAAC,CAAC;YAC/D,OAAO;SACR;QAED,MAAM,SAAS,GAAG,UAAU,CAC1B,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CACrD,CAAC;QAEF,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GAAG,CAC5C,QAAQ,CAAC,EAAE,CAAC,GAAG,QAAQ,MAAM,SAAS,EAAE,CACzC,CAAC;QAEF,KAAK,MAAM,eAAe,IAAI,gBAAgB,EAAE;YAC9C,IAAI;gBACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,CAAC;gBAC9C,IAAI,QAAQ,CAAC,EAAE,EAAE;oBACf,OAAO,CAAC,eAAe,CAAC,CAAC;oBACzB,OAAO;iBACR;aACF;YAAC,OAAO,KAAK,EAAE;gBACd,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAe,KAAK,KAAK,EAAE,CAAC,CAAC;aAC5D;SACF;QAED,MAAM,CAAC,IAAI,KAAK,CAAC,yBAAyB,GAAG,KAAK,gBAAgB,EAAE,CAAC,CAAC,CAAC;IACzE,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAW;IACnC,OAAO,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChC,CAAC"}
|
package/lib/utils/date.d.ts
CHANGED
|
@@ -2,3 +2,6 @@ export declare const isDate: (date: string) => boolean;
|
|
|
2
2
|
export declare const isDateTime: (date: string) => boolean;
|
|
3
3
|
export declare const getNextMonth: (date: Date) => Date;
|
|
4
4
|
export declare const getPreviousMonth: (date: Date) => Date;
|
|
5
|
+
export declare const sameDate: (date1: Date, date2: Date) => boolean;
|
|
6
|
+
export declare const diffDate: (start: Date, end: Date) => number;
|
|
7
|
+
export declare const incrementDate: (date: Date, days: number) => Date;
|
package/lib/utils/date.js
CHANGED
|
@@ -38,4 +38,20 @@ export const getPreviousMonth = (date) => {
|
|
|
38
38
|
return new Date(date.getFullYear(), date.getMonth() - 1, 1);
|
|
39
39
|
}
|
|
40
40
|
};
|
|
41
|
+
export const sameDate = (date1, date2) => {
|
|
42
|
+
if (date1.getDate() === date2.getDate() &&
|
|
43
|
+
date1.getMonth() === date2.getMonth() &&
|
|
44
|
+
date1.getFullYear() === date2.getFullYear()) {
|
|
45
|
+
return true;
|
|
46
|
+
}
|
|
47
|
+
return false;
|
|
48
|
+
};
|
|
49
|
+
export const diffDate = (start, end) => {
|
|
50
|
+
const _start = moment(start.toISOString());
|
|
51
|
+
const _end = moment(end.toISOString());
|
|
52
|
+
return _end.diff(_start, 'days') + 1;
|
|
53
|
+
};
|
|
54
|
+
export const incrementDate = (date, days) => {
|
|
55
|
+
return new Date(date.getFullYear(), date.getMonth(), date.getDate() + days);
|
|
56
|
+
};
|
|
41
57
|
//# sourceMappingURL=date.js.map
|
package/lib/utils/date.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"date.js","sourceRoot":"","sources":["../../src/utils/date.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAY,EAAW,EAAE;IAC9C,OAAO,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;AACvD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAW,EAAE;IAClD,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,MAAM,GAAG,EAAE,CAAC;AAC3C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAU,EAAQ,EAAE;IAC/C,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;QAC1B,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;KAC/C;SAAM;QACL,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;KAC7D;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAU,EAAQ,EAAE;IACnD,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE;QACzB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;KAChD;SAAM;QACL,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;KAC7D;AACH,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"date.js","sourceRoot":"","sources":["../../src/utils/date.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAY,EAAW,EAAE;IAC9C,OAAO,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;AACvD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAW,EAAE;IAClD,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,MAAM,GAAG,EAAE,CAAC;AAC3C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAU,EAAQ,EAAE;IAC/C,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;QAC1B,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;KAC/C;SAAM;QACL,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;KAC7D;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAU,EAAQ,EAAE;IACnD,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE;QACzB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;KAChD;SAAM;QACL,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;KAC7D;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAW,EAAE,KAAW,EAAW,EAAE;IAC5D,IACE,KAAK,CAAC,OAAO,EAAE,KAAK,KAAK,CAAC,OAAO,EAAE;QACnC,KAAK,CAAC,QAAQ,EAAE,KAAK,KAAK,CAAC,QAAQ,EAAE;QACrC,KAAK,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,EAC3C;QACA,OAAO,IAAI,CAAC;KACb;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAW,EAAE,GAAS,EAAU,EAAE;IACzD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IACvC,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;AACvC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAU,EAAE,IAAY,EAAQ,EAAE;IAC9D,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;AAC9E,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Color } from '@axelor/aos-mobile-ui';
|
|
2
|
+
interface Chip {
|
|
3
|
+
isActive?: boolean;
|
|
4
|
+
color: Color;
|
|
5
|
+
title: string;
|
|
6
|
+
key: string | number;
|
|
7
|
+
}
|
|
8
|
+
export declare function filterChip(listToFilter: any[], listSelectedChip: Chip[], objectParam: string): any[];
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,31 @@
|
|
|
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 function filterChip(listToFilter, listSelectedChip, objectParam) {
|
|
19
|
+
if (listToFilter == null) {
|
|
20
|
+
return listToFilter;
|
|
21
|
+
}
|
|
22
|
+
else if (listSelectedChip !== null && listSelectedChip.length > 0) {
|
|
23
|
+
return listToFilter.filter(item => {
|
|
24
|
+
return listSelectedChip.find(chip => chip?.key === item[objectParam]);
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
return listToFilter;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=filter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../src/utils/filter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAWH,MAAM,UAAU,UAAU,CACxB,YAAmB,EACnB,gBAAwB,EACxB,WAAmB;IAEnB,IAAI,YAAY,IAAI,IAAI,EAAE;QACxB,OAAO,YAAY,CAAC;KACrB;SAAM,IAAI,gBAAgB,KAAK,IAAI,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;QACnE,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YAChC,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;KACJ;SAAM;QACL,OAAO,YAAY,CAAC;KACrB;AACH,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export declare function formatDate(inputDate: any, format: any): any;
|
|
2
2
|
export declare const formatDateTime: (dateTime: any, format: any) => any;
|
|
3
|
+
export declare function formatTime(dateInput: string, format: string): string;
|
|
3
4
|
export declare function formatDuration(duration: number, format: string): string;
|
|
4
5
|
export declare function formatScan(barcodeValue: any, barcodeType: any, config?: boolean): any;
|
|
5
6
|
export declare function formatURL(url: String): String;
|