@axelor/aos-mobile-core 7.0.2 → 7.0.4
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/lib/api/metafile-api.d.ts +3 -1
- package/lib/api/metafile-api.js +10 -2
- package/lib/api/metafile-api.js.map +1 -1
- package/lib/apiProviders/utils.d.ts +7 -7
- package/lib/apiProviders/utils.js +18 -22
- package/lib/apiProviders/utils.js.map +1 -1
- package/lib/app/Module.d.ts +15 -2
- package/lib/auth/api/user-api.js +5 -3
- package/lib/auth/api/user-api.js.map +1 -1
- package/lib/auth/features/userSlice.js +7 -1
- package/lib/auth/features/userSlice.js.map +1 -1
- package/lib/auth/i18n/en.json +0 -16
- package/lib/auth/i18n/fr.json +0 -16
- package/lib/auth/index.js +1 -0
- package/lib/auth/index.js.map +1 -1
- package/lib/auth/models/objectFields.js +14 -0
- package/lib/auth/models/objectFields.js.map +1 -1
- package/lib/auth/screens/UserScreen.js +6 -6
- package/lib/auth/screens/UserScreen.js.map +1 -1
- package/lib/components/molecules/UploadFileInput/UploadFileInput.d.ts +11 -2
- package/lib/components/molecules/UploadFileInput/UploadFileInput.js +128 -19
- package/lib/components/molecules/UploadFileInput/UploadFileInput.js.map +1 -1
- package/lib/components/molecules/index.d.ts +0 -3
- package/lib/components/molecules/index.js +0 -3
- package/lib/components/molecules/index.js.map +1 -1
- package/lib/components/organisms/DateInput/DateInput.d.ts +2 -1
- package/lib/components/organisms/DateInput/DateInput.js +10 -12
- package/lib/components/organisms/DateInput/DateInput.js.map +1 -1
- package/lib/components/organisms/index.d.ts +1 -6
- package/lib/components/organisms/index.js +1 -6
- package/lib/components/organisms/index.js.map +1 -1
- package/lib/components/templates/index.d.ts +0 -3
- package/lib/components/templates/index.js +0 -3
- package/lib/components/templates/index.js.map +1 -1
- package/lib/header/HeaderActionsProvider.d.ts +3 -4
- package/lib/header/HeaderActionsProvider.js +16 -10
- package/lib/header/HeaderActionsProvider.js.map +1 -1
- package/lib/header/index.d.ts +2 -1
- package/lib/header/index.js +2 -1
- package/lib/header/index.js.map +1 -1
- package/lib/i18n/hooks/use-translator.d.ts +1 -1
- package/lib/i18n/translations/en.json +34 -4
- package/lib/i18n/translations/fr.json +34 -4
- package/lib/navigator/Navigator.js +19 -7
- package/lib/navigator/Navigator.js.map +1 -1
- package/lib/navigator/drawer/DrawerContent.js +42 -31
- package/lib/navigator/drawer/DrawerContent.js.map +1 -1
- package/lib/navigator/drawer/Header.js +26 -6
- package/lib/navigator/drawer/Header.js.map +1 -1
- package/lib/navigator/drawer/Menu.d.ts +2 -1
- package/lib/navigator/drawer/Menu.js +42 -17
- package/lib/navigator/drawer/Menu.js.map +1 -1
- package/lib/navigator/drawer/MenuItem.d.ts +8 -5
- package/lib/navigator/drawer/MenuItem.js +11 -51
- package/lib/navigator/drawer/MenuItem.js.map +1 -1
- package/lib/navigator/drawer/MenuItemEntry.d.ts +12 -0
- package/lib/navigator/drawer/MenuItemEntry.js +89 -0
- package/lib/navigator/drawer/MenuItemEntry.js.map +1 -0
- package/lib/navigator/drawer/SubMenuItem.d.ts +7 -0
- package/lib/navigator/drawer/SubMenuItem.js +34 -0
- package/lib/navigator/drawer/SubMenuItem.js.map +1 -0
- package/lib/navigator/drawer/SubMenuItemList.d.ts +10 -0
- package/lib/navigator/drawer/SubMenuItemList.js +46 -0
- package/lib/navigator/drawer/SubMenuItemList.js.map +1 -0
- package/lib/navigator/menu.helper.d.ts +9 -0
- package/lib/navigator/menu.helper.js +96 -3
- package/lib/navigator/menu.helper.js.map +1 -1
- package/lib/navigator/module.helper.d.ts +5 -0
- package/lib/navigator/module.helper.js +37 -1
- package/lib/navigator/module.helper.js.map +1 -1
- package/lib/screens/LoginScreen.js +47 -73
- package/lib/screens/LoginScreen.js.map +1 -1
- package/lib/screens/SessionManagementScreen.js +41 -21
- package/lib/screens/SessionManagementScreen.js.map +1 -1
- package/lib/sessions/SessionStorage.d.ts +4 -5
- package/lib/sessions/SessionStorage.js +30 -22
- package/lib/sessions/SessionStorage.js.map +1 -1
- package/lib/{components/templates/PopupCreateSession → sessions/components/alerts}/PopupCreateSession.d.ts +2 -2
- package/lib/sessions/components/alerts/PopupCreateSession.js +128 -0
- package/lib/sessions/components/alerts/PopupCreateSession.js.map +1 -0
- package/lib/sessions/components/alerts/PopupEditSession.d.ts +8 -0
- package/lib/sessions/components/alerts/PopupEditSession.js +83 -0
- package/lib/sessions/components/alerts/PopupEditSession.js.map +1 -0
- package/lib/sessions/components/alerts/PopupSession.d.ts +9 -0
- package/lib/sessions/components/alerts/PopupSession.js +84 -0
- package/lib/sessions/components/alerts/PopupSession.js.map +1 -0
- package/lib/sessions/components/alerts/index.d.ts +3 -0
- package/lib/sessions/components/alerts/index.js +21 -0
- package/lib/sessions/components/alerts/index.js.map +1 -0
- package/lib/sessions/components/buttons/DisabledButton.d.ts +7 -0
- package/lib/{components/molecules/LoginButton/LoginButton.js → sessions/components/buttons/DisabledButton.js} +5 -5
- package/lib/sessions/components/buttons/DisabledButton.js.map +1 -0
- package/lib/sessions/components/buttons/LoginButton.js +24 -0
- package/lib/sessions/components/buttons/LoginButton.js.map +1 -0
- package/lib/sessions/components/buttons/UpdateButton.d.ts +6 -0
- package/lib/sessions/components/buttons/UpdateButton.js +24 -0
- package/lib/sessions/components/buttons/UpdateButton.js.map +1 -0
- package/lib/sessions/components/buttons/index.d.ts +3 -0
- package/lib/sessions/components/buttons/index.js +21 -0
- package/lib/sessions/components/buttons/index.js.map +1 -0
- package/lib/sessions/components/display/LogoImage.js.map +1 -0
- package/lib/sessions/components/display/SessionCard.d.ts +9 -0
- package/lib/sessions/components/display/SessionCard.js +185 -0
- package/lib/sessions/components/display/SessionCard.js.map +1 -0
- package/lib/sessions/components/display/SessionListCard.d.ts +10 -0
- package/lib/sessions/components/display/SessionListCard.js +78 -0
- package/lib/sessions/components/display/SessionListCard.js.map +1 -0
- package/lib/sessions/components/display/index.d.ts +3 -0
- package/lib/sessions/components/display/index.js +21 -0
- package/lib/sessions/components/display/index.js.map +1 -0
- package/lib/{components/molecules/ErrorText → sessions/components/error}/ErrorText.js +2 -2
- package/lib/sessions/components/error/ErrorText.js.map +1 -0
- package/lib/sessions/components/error/index.d.ts +1 -0
- package/lib/sessions/components/error/index.js +19 -0
- package/lib/sessions/components/error/index.js.map +1 -0
- package/lib/sessions/components/index.d.ts +5 -0
- package/lib/sessions/components/index.js +23 -0
- package/lib/sessions/components/index.js.map +1 -0
- package/lib/sessions/components/inputs/DefaultCheckbox.d.ts +8 -0
- package/lib/sessions/components/inputs/DefaultCheckbox.js +36 -0
- package/lib/sessions/components/inputs/DefaultCheckbox.js.map +1 -0
- package/lib/{components/organisms/PasswordInput → sessions/components/inputs}/PasswordInput.d.ts +2 -1
- package/lib/{components/organisms/PasswordInput → sessions/components/inputs}/PasswordInput.js +5 -2
- package/lib/sessions/components/inputs/PasswordInput.js.map +1 -0
- package/lib/sessions/components/inputs/SessionInputs.d.ts +12 -0
- package/lib/sessions/components/inputs/SessionInputs.js +177 -0
- package/lib/sessions/components/inputs/SessionInputs.js.map +1 -0
- package/lib/{components/organisms/SessionNameInput → sessions/components/inputs}/SessionNameInput.d.ts +2 -1
- package/lib/{components/organisms/SessionNameInput → sessions/components/inputs}/SessionNameInput.js +5 -2
- package/lib/sessions/components/inputs/SessionNameInput.js.map +1 -0
- package/lib/{components/organisms/UrlInput → sessions/components/inputs}/UrlInput.d.ts +2 -1
- package/lib/{components/organisms/UrlInput → sessions/components/inputs}/UrlInput.js +14 -3
- package/lib/sessions/components/inputs/UrlInput.js.map +1 -0
- package/lib/{components/organisms/UsernameInput → sessions/components/inputs}/UsernameInput.js +10 -2
- package/lib/sessions/components/inputs/UsernameInput.js.map +1 -0
- package/lib/sessions/components/inputs/index.d.ts +6 -0
- package/lib/sessions/components/inputs/index.js +24 -0
- package/lib/sessions/components/inputs/index.js.map +1 -0
- package/lib/sessions/hook.d.ts +1 -1
- package/lib/sessions/hook.js +5 -5
- package/lib/sessions/hook.js.map +1 -1
- package/lib/sessions/index.d.ts +2 -1
- package/lib/sessions/index.js +2 -1
- package/lib/sessions/index.js.map +1 -1
- package/lib/sessions/type.d.ts +2 -1
- package/lib/sessions/type.js.map +1 -1
- package/lib/sessions/utils.d.ts +2 -1
- package/lib/sessions/utils.js +26 -7
- package/lib/sessions/utils.js.map +1 -1
- package/lib/tools/ContactProvider.d.ts +9 -0
- package/lib/tools/ContactProvider.js +98 -0
- package/lib/tools/ContactProvider.js.map +1 -0
- package/lib/tools/contact.helper.d.ts +21 -0
- package/lib/tools/contact.helper.js +136 -0
- package/lib/tools/contact.helper.js.map +1 -0
- package/lib/tools/index.d.ts +1 -0
- package/lib/tools/index.js +1 -0
- package/lib/tools/index.js.map +1 -1
- package/lib/utils/date.d.ts +16 -0
- package/lib/utils/date.js +41 -0
- package/lib/utils/date.js.map +1 -1
- package/lib/utils/image.d.ts +3 -0
- package/lib/utils/image.js +11 -3
- package/lib/utils/image.js.map +1 -1
- package/lib/utils/index.d.ts +2 -2
- package/lib/utils/index.js +2 -2
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/string.d.ts +1 -0
- package/lib/utils/string.js +20 -0
- package/lib/utils/string.js.map +1 -1
- package/package.json +8 -5
- package/lib/components/molecules/ErrorText/ErrorText.js.map +0 -1
- package/lib/components/molecules/LoginButton/LoginButton.js.map +0 -1
- package/lib/components/molecules/SessionNumberIndicator/SessionNumberIndicator.d.ts +0 -4
- package/lib/components/molecules/SessionNumberIndicator/SessionNumberIndicator.js +0 -44
- package/lib/components/molecules/SessionNumberIndicator/SessionNumberIndicator.js.map +0 -1
- package/lib/components/organisms/LogoImage/LogoImage.js.map +0 -1
- package/lib/components/organisms/PasswordInput/PasswordInput.js.map +0 -1
- package/lib/components/organisms/SessionButtons/SessionButtons.d.ts +0 -17
- package/lib/components/organisms/SessionButtons/SessionButtons.js +0 -93
- package/lib/components/organisms/SessionButtons/SessionButtons.js.map +0 -1
- package/lib/components/organisms/SessionNameInput/SessionNameInput.js.map +0 -1
- package/lib/components/organisms/UrlInput/UrlInput.js.map +0 -1
- package/lib/components/organisms/UsernameInput/UsernameInput.js.map +0 -1
- package/lib/components/templates/PopupCreateSession/PopupCreateSession.js +0 -171
- package/lib/components/templates/PopupCreateSession/PopupCreateSession.js.map +0 -1
- package/lib/components/templates/PopupSession/PopupSession.d.ts +0 -8
- package/lib/components/templates/PopupSession/PopupSession.js +0 -135
- package/lib/components/templates/PopupSession/PopupSession.js.map +0 -1
- package/lib/components/templates/PopupSessionList/PopupSessionList.d.ts +0 -7
- package/lib/components/templates/PopupSessionList/PopupSessionList.js +0 -107
- package/lib/components/templates/PopupSessionList/PopupSessionList.js.map +0 -1
- /package/lib/{components/molecules/LoginButton → sessions/components/buttons}/LoginButton.d.ts +0 -0
- /package/lib/{components/organisms/LogoImage → sessions/components/display}/LogoImage.d.ts +0 -0
- /package/lib/{components/organisms/LogoImage → sessions/components/display}/LogoImage.js +0 -0
- /package/lib/{components/molecules/ErrorText → sessions/components/error}/ErrorText.d.ts +0 -0
- /package/lib/{components/organisms/UsernameInput → sessions/components/inputs}/UsernameInput.d.ts +0 -0
|
@@ -0,0 +1,78 @@
|
|
|
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, { useMemo } from 'react';
|
|
19
|
+
import { ScrollView, StyleSheet, View, Dimensions } from 'react-native';
|
|
20
|
+
import { useThemeColor, Icon } from '@axelor/aos-mobile-ui';
|
|
21
|
+
import { SessionCard } from '../../components';
|
|
22
|
+
const SessionListCard = ({ logoFile, sessionList, changeActiveSession, openConnection, openEdition, openCreation, session, }) => {
|
|
23
|
+
const Colors = useThemeColor();
|
|
24
|
+
const sessions = useMemo(() => sessionList, [sessionList]);
|
|
25
|
+
const styles = useMemo(() => getStyles(Colors), [Colors]);
|
|
26
|
+
if (!Array.isArray(sessions) || sessions?.length === 0) {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
29
|
+
return (<View style={styles.container}>
|
|
30
|
+
<View style={styles.iconContainer}>
|
|
31
|
+
<Icon name="plus" style={styles.iconPlus} touchable={true} onPress={openCreation}/>
|
|
32
|
+
</View>
|
|
33
|
+
<ScrollView contentContainerStyle={styles.contentContainer} style={styles.scrollView}>
|
|
34
|
+
{sessions.map(_session => (<SessionCard key={_session.id} session={_session} changeActiveSession={changeActiveSession} openConnection={openConnection} openEdition={openEdition} isUnactive={_session.id !== session?.id} logoFile={logoFile}/>))}
|
|
35
|
+
</ScrollView>
|
|
36
|
+
</View>);
|
|
37
|
+
};
|
|
38
|
+
const getStyles = Colors => StyleSheet.create({
|
|
39
|
+
container: {
|
|
40
|
+
maxHeight: Dimensions.get('window').height * 0.45,
|
|
41
|
+
width: '100%',
|
|
42
|
+
},
|
|
43
|
+
scrollView: {
|
|
44
|
+
width: '100%',
|
|
45
|
+
},
|
|
46
|
+
contentContainer: {
|
|
47
|
+
alignItems: 'center',
|
|
48
|
+
paddingHorizontal: '5%',
|
|
49
|
+
},
|
|
50
|
+
iconContainer: {
|
|
51
|
+
alignSelf: 'flex-end',
|
|
52
|
+
flexDirection: 'row',
|
|
53
|
+
marginRight: 20,
|
|
54
|
+
},
|
|
55
|
+
icon: {
|
|
56
|
+
marginHorizontal: 4,
|
|
57
|
+
},
|
|
58
|
+
details: {
|
|
59
|
+
fontStyle: 'italic',
|
|
60
|
+
},
|
|
61
|
+
iconPlus: {
|
|
62
|
+
margin: 4,
|
|
63
|
+
alignSelf: 'center',
|
|
64
|
+
justifyContent: 'center',
|
|
65
|
+
alignItems: 'center',
|
|
66
|
+
backgroundColor: Colors.secondaryColor_dark.foreground,
|
|
67
|
+
borderWidth: 1,
|
|
68
|
+
borderColor: Colors.primaryColor.background,
|
|
69
|
+
borderRadius: 10,
|
|
70
|
+
width: 30,
|
|
71
|
+
height: 30,
|
|
72
|
+
},
|
|
73
|
+
textIndicationStyle: {
|
|
74
|
+
width: Dimensions.get('window').width * 0.65,
|
|
75
|
+
},
|
|
76
|
+
});
|
|
77
|
+
export default SessionListCard;
|
|
78
|
+
//# sourceMappingURL=SessionListCard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionListCard.js","sourceRoot":"","sources":["../../../../src/sessions/components/display/SessionListCard.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
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 { default as LogoImage } from './LogoImage';
|
|
19
|
+
export { default as SessionCard } from './SessionCard';
|
|
20
|
+
export { default as SessionListCard } from './SessionListCard';
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/sessions/components/display/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,aAAa,CAAC;AACjD,OAAO,EAAC,OAAO,IAAI,WAAW,EAAC,MAAM,eAAe,CAAC;AACrD,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,mBAAmB,CAAC"}
|
|
@@ -33,10 +33,10 @@ const ErrorText = ({ error, style }) => {
|
|
|
33
33
|
}, [error]);
|
|
34
34
|
const errorMessage = useMemo(() => {
|
|
35
35
|
if (errorCode === LOGIN_ERROR) {
|
|
36
|
-
return I18n.t('
|
|
36
|
+
return I18n.t('Base_Connection_WrongPasswordOrUserName');
|
|
37
37
|
}
|
|
38
38
|
if (errorCode === URL_ERROR) {
|
|
39
|
-
return `${I18n.t('
|
|
39
|
+
return `${I18n.t('Base_Connection_InvalidUrl')}: ${error.url}`;
|
|
40
40
|
}
|
|
41
41
|
return error?.message;
|
|
42
42
|
}, [I18n, error, errorCode]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorText.js","sourceRoot":"","sources":["../../../../src/sessions/components/error/ErrorText.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,EAAC,WAAW,EAAC,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAC,aAAa,EAAC,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,MAAM,gBAAgB,GAAG,SAAS,CAAC;AACnC,MAAM,WAAW,GAAG,GAAG,CAAC;AACxB,MAAM,SAAS,GAAG,GAAG,CAAC;AAEtB,MAAM,SAAS,GAAG,CAAC,EAAC,KAAK,EAAE,KAAK,EAAC,EAAE,EAAE;IACnC,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAE7B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE;QAC7B,IAAI,KAAK,EAAE,OAAO,IAAI,IAAI,EAAE;YAC1B,OAAO,IAAI,CAAC;SACb;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;QAE7D,OAAO,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAC9D,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE;QAChC,IAAI,SAAS,KAAK,WAAW,EAAE;YAC7B,OAAO,IAAI,CAAC,CAAC,CAAC,yCAAyC,CAAC,CAAC;SAC1D;QAED,IAAI,SAAS,KAAK,SAAS,EAAE;YAC3B,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,4BAA4B,CAAC,KAAK,KAAK,CAAC,GAAG,EAAE,CAAC;SAChE;QAED,OAAO,KAAK,EAAE,OAAO,CAAC;IACxB,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IAE7B,IAAI,KAAK,IAAI,IAAI,EAAE;QACjB,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,EAAG,CACzE,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM;KACd;CACF,CAAC,CAAC;AAEH,eAAe,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as ErrorText } from './ErrorText';
|
|
@@ -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 { default as ErrorText } from './ErrorText';
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/sessions/components/error/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
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 './alerts';
|
|
19
|
+
export * from './buttons';
|
|
20
|
+
export * from './display';
|
|
21
|
+
export * from './error';
|
|
22
|
+
export * from './inputs';
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sessions/components/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
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 from 'react';
|
|
19
|
+
import { StyleSheet } from 'react-native';
|
|
20
|
+
import { Checkbox } from '@axelor/aos-mobile-ui';
|
|
21
|
+
import { useTranslator } from '../../../i18n';
|
|
22
|
+
const DefaultCheckbox = ({ style, value, onChange, hidden = false }) => {
|
|
23
|
+
const I18n = useTranslator();
|
|
24
|
+
if (hidden) {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
return (<Checkbox title={I18n.t('Base_Connection_DefaultSession')} isDefaultChecked={value} onChange={onChange} iconSize={30} style={[styles.checkbox, style]}/>);
|
|
28
|
+
};
|
|
29
|
+
const styles = StyleSheet.create({
|
|
30
|
+
checkbox: {
|
|
31
|
+
alignSelf: 'flex-start',
|
|
32
|
+
marginLeft: 20,
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
export default DefaultCheckbox;
|
|
36
|
+
//# sourceMappingURL=DefaultCheckbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultCheckbox.js","sourceRoot":"","sources":["../../../../src/sessions/components/inputs/DefaultCheckbox.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAC,aAAa,EAAC,MAAM,eAAe,CAAC;AAS5C,MAAM,eAAe,GAAG,CAAC,EAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,EAAQ,EAAE,EAAE;IAC1E,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAE7B,IAAI,MAAM,EAAE;QACV,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,CAAC,QAAQ,CACP,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAChD,gBAAgB,CAAC,CAAC,KAAK,CAAC,CACxB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,QAAQ,CAAC,CAAC,EAAE,CAAC,CACb,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,EAChC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,QAAQ,EAAE;QACR,SAAS,EAAE,YAAY;QACvB,UAAU,EAAE,EAAE;KACf;CACF,CAAC,CAAC;AAEH,eAAe,eAAe,CAAC"}
|
package/lib/{components/organisms/PasswordInput → sessions/components/inputs}/PasswordInput.d.ts
RENAMED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
export default PasswordInput;
|
|
2
|
-
declare function PasswordInput({ style, value, onChange, readOnly, showRequiredFields, }: {
|
|
2
|
+
declare function PasswordInput({ style, value, onChange, readOnly, showRequiredFields, hidden, }: {
|
|
3
3
|
style: any;
|
|
4
4
|
value: any;
|
|
5
5
|
onChange: any;
|
|
6
6
|
readOnly: any;
|
|
7
7
|
showRequiredFields?: boolean;
|
|
8
|
+
hidden?: boolean;
|
|
8
9
|
}): JSX.Element;
|
package/lib/{components/organisms/PasswordInput → sessions/components/inputs}/PasswordInput.js
RENAMED
|
@@ -20,12 +20,15 @@ import { StyleSheet } from 'react-native';
|
|
|
20
20
|
import { getCommonStyles, Icon, IconInput, useThemeColor, } from '@axelor/aos-mobile-ui';
|
|
21
21
|
import useTranslator from '../../../i18n/hooks/use-translator';
|
|
22
22
|
import { checkNullString } from '../../../utils';
|
|
23
|
-
const PasswordInput = ({ style, value, onChange, readOnly, showRequiredFields = false, }) => {
|
|
23
|
+
const PasswordInput = ({ style, value, onChange, readOnly, showRequiredFields = false, hidden = false, }) => {
|
|
24
24
|
const I18n = useTranslator();
|
|
25
25
|
const Colors = useThemeColor();
|
|
26
26
|
const [visible, setVisible] = useState(false);
|
|
27
27
|
const commonStyles = useMemo(() => getCommonStyles(Colors, checkNullString(value)), [Colors, value]);
|
|
28
|
-
|
|
28
|
+
if (hidden) {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
return (<IconInput style={[style, showRequiredFields ? commonStyles.inputFocused : null]} value={value} onChange={onChange} readOnly={readOnly} required={true} secureTextEntry={!visible} placeholder={I18n.t('Base_Connection_Password')} leftIconsList={[<Icon name="key" size={17} style={styles.icon}/>]} rightIconsList={[
|
|
29
32
|
<Icon name={visible ? 'eye' : 'eye-slash'} size={17} touchable={true} onPress={() => setVisible(!visible)} style={styles.icon}/>,
|
|
30
33
|
]}/>);
|
|
31
34
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PasswordInput.js","sourceRoot":"","sources":["../../../../src/sessions/components/inputs/PasswordInput.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EACL,eAAe,EACf,IAAI,EACJ,SAAS,EACT,aAAa,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,aAAa,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAE/C,MAAM,aAAa,GAAG,CAAC,EACrB,KAAK,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,kBAAkB,GAAG,KAAK,EAC1B,MAAM,GAAG,KAAK,GACf,EAAE,EAAE;IACH,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE9C,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,EACrD,CAAC,MAAM,EAAE,KAAK,CAAC,CAChB,CAAC;IAEF,IAAI,MAAM,EAAE;QACV,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,CAAC,SAAS,CACR,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CACtE,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,QAAQ,CAAC,CAAC,IAAI,CAAC,CACf,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,CAC1B,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAChD,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC,CACnE,cAAc,CAAC,CAAC;YACd,CAAC,IAAI,CACH,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CACpC,IAAI,CAAC,CAAC,EAAE,CAAC,CACT,SAAS,CAAC,CAAC,IAAI,CAAC,CAChB,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CACpC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EACnB;SACH,CAAC,EACF,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,IAAI,EAAE;QACJ,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,CAAC;KACV;CACF,CAAC,CAAC;AAEH,eAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export default SessionInputs;
|
|
2
|
+
declare function SessionInputs({ style, sessionList, session, showUrlInput, loading, mode, showPopup, onValidation, hidden, }: {
|
|
3
|
+
style: any;
|
|
4
|
+
sessionList: any;
|
|
5
|
+
session: any;
|
|
6
|
+
showUrlInput: any;
|
|
7
|
+
loading: any;
|
|
8
|
+
mode: any;
|
|
9
|
+
showPopup: any;
|
|
10
|
+
onValidation: any;
|
|
11
|
+
hidden: any;
|
|
12
|
+
}): JSX.Element;
|
|
@@ -0,0 +1,177 @@
|
|
|
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, { useCallback, useEffect, useMemo, useState } from 'react';
|
|
19
|
+
import { ActivityIndicator, StyleSheet, View } from 'react-native';
|
|
20
|
+
import { useDispatch } from 'react-redux';
|
|
21
|
+
import DeviceInfo from 'react-native-device-info';
|
|
22
|
+
import { WarningCard, checkNullString, useThemeColor, } from '@axelor/aos-mobile-ui';
|
|
23
|
+
import { DefaultCheckbox, SessionNameInput, UrlInput, UsernameInput, PasswordInput, } from '../inputs';
|
|
24
|
+
import { useScanActivator, useScannerDeviceActivator, } from '../../../hooks/use-scan-activator';
|
|
25
|
+
import { useScannedValueByKey, useScannerSelector, } from '../../../features/scannerSlice';
|
|
26
|
+
import { useCameraScannerValueByKey } from '../../../features/cameraScannerSlice';
|
|
27
|
+
import { isUrlValid } from '../../../features/authSlice';
|
|
28
|
+
import { LoginButton, UpdateButton } from '../buttons';
|
|
29
|
+
import { useTranslator } from '../../../i18n';
|
|
30
|
+
const getScanKey = mode => `urlUsername_${mode}_inputs`;
|
|
31
|
+
const MODE = {
|
|
32
|
+
creation: 'creation',
|
|
33
|
+
edition: 'edition',
|
|
34
|
+
connection: 'connection',
|
|
35
|
+
unique: 'unique',
|
|
36
|
+
};
|
|
37
|
+
const FIELDS = {
|
|
38
|
+
name: 'name',
|
|
39
|
+
url: 'url',
|
|
40
|
+
username: 'username',
|
|
41
|
+
password: 'password',
|
|
42
|
+
isDefault: 'isDefault',
|
|
43
|
+
};
|
|
44
|
+
const SessionInputs = ({ style, sessionList, session, showUrlInput, loading, mode, showPopup, onValidation, hidden, }) => {
|
|
45
|
+
const Colors = useThemeColor();
|
|
46
|
+
const I18n = useTranslator();
|
|
47
|
+
const dispatch = useDispatch();
|
|
48
|
+
const _scanKey = useMemo(() => getScanKey(mode), [mode]);
|
|
49
|
+
const { enable: onScanPress } = useScanActivator(_scanKey);
|
|
50
|
+
const { enable: enableScanner } = useScannerDeviceActivator(_scanKey);
|
|
51
|
+
const { isEnabled, scanKey } = useScannerSelector();
|
|
52
|
+
const scannedValue = useScannedValueByKey(_scanKey);
|
|
53
|
+
const scanData = useCameraScannerValueByKey(_scanKey);
|
|
54
|
+
const [showRequiredFields, setShowRequiredFields] = useState(false);
|
|
55
|
+
const [form, setForm] = useState({
|
|
56
|
+
name: session?.name,
|
|
57
|
+
url: session?.url,
|
|
58
|
+
username: session?.username,
|
|
59
|
+
password: session?.password,
|
|
60
|
+
isDefault: session?.isDefault,
|
|
61
|
+
});
|
|
62
|
+
useEffect(() => {
|
|
63
|
+
if (session != null &&
|
|
64
|
+
!loading &&
|
|
65
|
+
mode !== MODE.creation &&
|
|
66
|
+
mode !== MODE.unique) {
|
|
67
|
+
setForm({ ...session });
|
|
68
|
+
}
|
|
69
|
+
}, [loading, mode, session]);
|
|
70
|
+
const handleFieldChange = useCallback((value, fieldName) => {
|
|
71
|
+
setForm(_current => {
|
|
72
|
+
const old = _current == null ? {} : { ..._current };
|
|
73
|
+
if (mode === MODE.unique) {
|
|
74
|
+
return { ...old, [fieldName]: value };
|
|
75
|
+
}
|
|
76
|
+
if (fieldName !== FIELDS.password && mode !== MODE.connection) {
|
|
77
|
+
return { ...old, [fieldName]: value };
|
|
78
|
+
}
|
|
79
|
+
if (fieldName === FIELDS.password && mode !== MODE.edition) {
|
|
80
|
+
return { ...old, [fieldName]: value };
|
|
81
|
+
}
|
|
82
|
+
return _current;
|
|
83
|
+
});
|
|
84
|
+
}, [mode]);
|
|
85
|
+
const parseQrCode = useCallback(scanValue => {
|
|
86
|
+
if (scanValue.includes('username') === true) {
|
|
87
|
+
const parseScannnedData = JSON.parse(scanValue);
|
|
88
|
+
handleFieldChange(parseScannnedData.url, FIELDS.url);
|
|
89
|
+
handleFieldChange(parseScannnedData.username, FIELDS.username);
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
handleFieldChange(scanValue, FIELDS.url);
|
|
93
|
+
}
|
|
94
|
+
showPopup(true);
|
|
95
|
+
}, [handleFieldChange, showPopup]);
|
|
96
|
+
useEffect(() => {
|
|
97
|
+
if (scannedValue) {
|
|
98
|
+
parseQrCode(scannedValue);
|
|
99
|
+
}
|
|
100
|
+
else if (scanData?.value != null) {
|
|
101
|
+
parseQrCode(scanData?.value);
|
|
102
|
+
}
|
|
103
|
+
}, [parseQrCode, scanData, scannedValue]);
|
|
104
|
+
const handleScanPress = useCallback(() => {
|
|
105
|
+
DeviceInfo.getManufacturer()
|
|
106
|
+
.then(manufacturer => {
|
|
107
|
+
if (manufacturer !== 'Zebra Technologies') {
|
|
108
|
+
showPopup(false);
|
|
109
|
+
}
|
|
110
|
+
})
|
|
111
|
+
.then(() => onScanPress());
|
|
112
|
+
}, [onScanPress, showPopup]);
|
|
113
|
+
const handleTestUrl = useCallback(() => {
|
|
114
|
+
dispatch(isUrlValid({ url: form?.url }));
|
|
115
|
+
}, [dispatch, form?.url]);
|
|
116
|
+
const nameSessionAlreadyExist = useMemo(() => {
|
|
117
|
+
if (!Array.isArray(sessionList) || sessionList?.length === 0) {
|
|
118
|
+
return false;
|
|
119
|
+
}
|
|
120
|
+
return sessionList.some(_session => _session.name === form?.name && _session.id !== form?.id);
|
|
121
|
+
}, [form, sessionList]);
|
|
122
|
+
const disabled = useMemo(() => {
|
|
123
|
+
if (loading ||
|
|
124
|
+
checkNullString(form?.name) ||
|
|
125
|
+
checkNullString(form?.url) ||
|
|
126
|
+
checkNullString(form?.username) ||
|
|
127
|
+
nameSessionAlreadyExist) {
|
|
128
|
+
return true;
|
|
129
|
+
}
|
|
130
|
+
else if (mode !== MODE.edition) {
|
|
131
|
+
return checkNullString(form?.password);
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
return false;
|
|
135
|
+
}
|
|
136
|
+
}, [
|
|
137
|
+
loading,
|
|
138
|
+
form?.name,
|
|
139
|
+
form?.url,
|
|
140
|
+
form?.username,
|
|
141
|
+
form?.password,
|
|
142
|
+
mode,
|
|
143
|
+
nameSessionAlreadyExist,
|
|
144
|
+
]);
|
|
145
|
+
if (hidden) {
|
|
146
|
+
return null;
|
|
147
|
+
}
|
|
148
|
+
return (<View style={style}>
|
|
149
|
+
<View>
|
|
150
|
+
{!loading && nameSessionAlreadyExist && (<WarningCard style={styles.warningCard} errorMessage={I18n.t('Base_Connection_SessionNameAlreadyExist')}/>)}
|
|
151
|
+
</View>
|
|
152
|
+
<SessionNameInput value={form?.name} onChange={_value => handleFieldChange(_value, FIELDS.name)} style={styles.input} showRequiredFields={showRequiredFields} hidden={mode === MODE.connection || mode === MODE.unique}/>
|
|
153
|
+
<UrlInput value={form?.url} onChange={_value => handleFieldChange(_value, FIELDS.url)} readOnly={mode === MODE.connection} onScanPress={handleScanPress} onSelection={enableScanner} onEndFocus={handleTestUrl} scanIconColor={isEnabled && scanKey === _scanKey
|
|
154
|
+
? Colors.primaryColor.background
|
|
155
|
+
: Colors.secondaryColor_dark.background} style={styles.input} showRequiredFields={showRequiredFields} hidden={!showUrlInput}/>
|
|
156
|
+
<UsernameInput value={form?.username} onChange={_value => handleFieldChange(_value, FIELDS.username)} readOnly={mode === MODE.connection} showScanIcon={!showUrlInput} onScanPress={handleScanPress} onSelection={enableScanner} scanIconColor={isEnabled && scanKey === getScanKey(mode)
|
|
157
|
+
? Colors.primaryColor.background
|
|
158
|
+
: Colors.secondaryColor_dark.background} style={styles.input} showRequiredFields={showRequiredFields}/>
|
|
159
|
+
<PasswordInput value={form?.password} onChange={_value => handleFieldChange(_value, FIELDS.password)} readOnly={loading} style={styles.input} showRequiredFields={showRequiredFields} hidden={mode === MODE.edition}/>
|
|
160
|
+
<DefaultCheckbox value={form?.isDefault} onChange={_value => handleFieldChange(_value, FIELDS.isDefault)} hidden={mode === MODE.connection || mode === MODE.unique}/>
|
|
161
|
+
{loading ? (<ActivityIndicator size="large"/>) : ((mode === MODE.edition ? UpdateButton : LoginButton)({
|
|
162
|
+
onPress: () => onValidation(form),
|
|
163
|
+
onDisabledPress: () => setShowRequiredFields(true),
|
|
164
|
+
disabled,
|
|
165
|
+
}))}
|
|
166
|
+
</View>);
|
|
167
|
+
};
|
|
168
|
+
const styles = StyleSheet.create({
|
|
169
|
+
input: {
|
|
170
|
+
width: '100%',
|
|
171
|
+
},
|
|
172
|
+
warningCard: {
|
|
173
|
+
width: '90%',
|
|
174
|
+
},
|
|
175
|
+
});
|
|
176
|
+
export default SessionInputs;
|
|
177
|
+
//# sourceMappingURL=SessionInputs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionInputs.js","sourceRoot":"","sources":["../../../../src/sessions/components/inputs/SessionInputs.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AACvE,OAAO,EAAC,iBAAiB,EAAE,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AACjE,OAAO,EAAC,WAAW,EAAC,MAAM,aAAa,CAAC;AACxC,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,EACL,WAAW,EACX,eAAe,EACf,aAAa,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACR,aAAa,EACb,aAAa,GACd,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAC,0BAA0B,EAAC,MAAM,sCAAsC,CAAC;AAChF,OAAO,EAAC,UAAU,EAAC,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAC,WAAW,EAAE,YAAY,EAAC,MAAM,YAAY,CAAC;AACrD,OAAO,EAAC,aAAa,EAAC,MAAM,eAAe,CAAC;AAE5C,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,eAAe,IAAI,SAAS,CAAC;AAExD,MAAM,IAAI,GAAG;IACX,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,YAAY;IACxB,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,MAAM,MAAM,GAAG;IACb,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;CACvB,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,EACrB,KAAK,EACL,WAAW,EACX,OAAO,EACP,YAAY,EACZ,OAAO,EACP,IAAI,EACJ,SAAS,EACT,YAAY,EACZ,MAAM,GACP,EAAE,EAAE;IACH,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEzD,MAAM,EAAC,MAAM,EAAE,WAAW,EAAC,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACzD,MAAM,EAAC,MAAM,EAAE,aAAa,EAAC,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;IACpE,MAAM,EAAC,SAAS,EAAE,OAAO,EAAC,GAAG,kBAAkB,EAAE,CAAC;IAClD,MAAM,YAAY,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IAEtD,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC;QAC/B,IAAI,EAAE,OAAO,EAAE,IAAI;QACnB,GAAG,EAAE,OAAO,EAAE,GAAG;QACjB,QAAQ,EAAE,OAAO,EAAE,QAAQ;QAC3B,QAAQ,EAAE,OAAO,EAAE,QAAQ;QAC3B,SAAS,EAAE,OAAO,EAAE,SAAS;KAC9B,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,IACE,OAAO,IAAI,IAAI;YACf,CAAC,OAAO;YACR,IAAI,KAAK,IAAI,CAAC,QAAQ;YACtB,IAAI,KAAK,IAAI,CAAC,MAAM,EACpB;YACA,OAAO,CAAC,EAAC,GAAG,OAAO,EAAC,CAAC,CAAC;SACvB;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAE7B,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;QACnB,OAAO,CAAC,QAAQ,CAAC,EAAE;YACjB,MAAM,GAAG,GAAG,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAC,GAAG,QAAQ,EAAC,CAAC;YAClD,IAAI,IAAI,KAAK,IAAI,CAAC,MAAM,EAAE;gBACxB,OAAO,EAAC,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAC,CAAC;aACrC;YAED,IAAI,SAAS,KAAK,MAAM,CAAC,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,UAAU,EAAE;gBAC7D,OAAO,EAAC,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAC,CAAC;aACrC;YAED,IAAI,SAAS,KAAK,MAAM,CAAC,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,EAAE;gBAC1D,OAAO,EAAC,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAC,CAAC;aACrC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC,EACD,CAAC,IAAI,CAAC,CACP,CAAC;IAEF,MAAM,WAAW,GAAG,WAAW,CAC7B,SAAS,CAAC,EAAE;QACV,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE;YAC3C,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAChD,iBAAiB,CAAC,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;YACrD,iBAAiB,CAAC,iBAAiB,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;SAChE;aAAM;YACL,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;SAC1C;QACD,SAAS,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC,EACD,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAC/B,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,YAAY,EAAE;YAChB,WAAW,CAAC,YAAY,CAAC,CAAC;SAC3B;aAAM,IAAI,QAAQ,EAAE,KAAK,IAAI,IAAI,EAAE;YAClC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;SAC9B;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;IAE1C,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,EAAE;QACvC,UAAU,CAAC,eAAe,EAAE;aACzB,IAAI,CAAC,YAAY,CAAC,EAAE;YACnB,IAAI,YAAY,KAAK,oBAAoB,EAAE;gBACzC,SAAS,CAAC,KAAK,CAAC,CAAC;aAClB;QACH,CAAC,CAAC;aACD,IAAI,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IAC/B,CAAC,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;IAE7B,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;QACrC,QAAQ,CAAC,UAAU,CAAC,EAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAC,CAAC,CAAC,CAAC;IACzC,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;IAE1B,MAAM,uBAAuB,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,EAAE,MAAM,KAAK,CAAC,EAAE;YAC5D,OAAO,KAAK,CAAC;SACd;QAED,OAAO,WAAW,CAAC,IAAI,CACrB,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE,IAAI,IAAI,QAAQ,CAAC,EAAE,KAAK,IAAI,EAAE,EAAE,CACrE,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;IAExB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,IACE,OAAO;YACP,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC;YAC3B,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC;YAC1B,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC;YAC/B,uBAAuB,EACvB;YACA,OAAO,IAAI,CAAC;SACb;aAAM,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,EAAE;YAChC,OAAO,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;SACxC;aAAM;YACL,OAAO,KAAK,CAAC;SACd;IACH,CAAC,EAAE;QACD,OAAO;QACP,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,GAAG;QACT,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,IAAI;QACJ,uBAAuB;KACxB,CAAC,CAAC;IAEH,IAAI,MAAM,EAAE;QACV,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CACjB;MAAA,CAAC,IAAI,CACH;QAAA,CAAC,CAAC,OAAO,IAAI,uBAAuB,IAAI,CACtC,CAAC,WAAW,CACV,KAAK,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAC1B,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,yCAAyC,CAAC,CAAC,EAChE,CACH,CACH;MAAA,EAAE,IAAI,CACN;MAAA,CAAC,gBAAgB,CACf,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAClB,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAC3D,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACpB,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CACvC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,IAAI,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,EAE3D;MAAA,CAAC,QAAQ,CACP,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CACjB,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAC1D,QAAQ,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC,CACnC,WAAW,CAAC,CAAC,eAAe,CAAC,CAC7B,WAAW,CAAC,CAAC,aAAa,CAAC,CAC3B,UAAU,CAAC,CAAC,aAAa,CAAC,CAC1B,aAAa,CAAC,CACZ,SAAS,IAAI,OAAO,KAAK,QAAQ;YAC/B,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU;YAChC,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAC1C,CACD,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACpB,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CACvC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,EAExB;MAAA,CAAC,aAAa,CACZ,KAAK,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CACtB,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAC/D,QAAQ,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC,CACnC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAC5B,WAAW,CAAC,CAAC,eAAe,CAAC,CAC7B,WAAW,CAAC,CAAC,aAAa,CAAC,CAC3B,aAAa,CAAC,CACZ,SAAS,IAAI,OAAO,KAAK,UAAU,CAAC,IAAI,CAAC;YACvC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU;YAChC,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAC1C,CACD,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACpB,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,EAEzC;MAAA,CAAC,aAAa,CACZ,KAAK,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,CACtB,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAC/D,QAAQ,CAAC,CAAC,OAAO,CAAC,CAClB,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACpB,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CACvC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,EAEhC;MAAA,CAAC,eAAe,CACd,KAAK,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CACvB,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAChE,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,IAAI,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,EAE3D;MAAA,CAAC,OAAO,CAAC,CAAC,CAAC,CACT,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAG,CACnC,CAAC,CAAC,CAAC,CACF,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACnD,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC;YACjC,eAAe,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC;YAClD,QAAQ;SACT,CAAC,CACH,CACH;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,KAAK,EAAE;QACL,KAAK,EAAE,MAAM;KACd;IACD,WAAW,EAAE;QACX,KAAK,EAAE,KAAK;KACb;CACF,CAAC,CAAC;AAEH,eAAe,aAAa,CAAC"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
export default SessionNameInput;
|
|
2
|
-
declare function SessionNameInput({ style, value, onChange, readOnly, showRequiredFields, }: {
|
|
2
|
+
declare function SessionNameInput({ style, value, onChange, readOnly, showRequiredFields, hidden, }: {
|
|
3
3
|
style: any;
|
|
4
4
|
value: any;
|
|
5
5
|
onChange: any;
|
|
6
6
|
readOnly: any;
|
|
7
7
|
showRequiredFields?: boolean;
|
|
8
|
+
hidden?: boolean;
|
|
8
9
|
}): JSX.Element;
|
package/lib/{components/organisms/SessionNameInput → sessions/components/inputs}/SessionNameInput.js
RENAMED
|
@@ -20,11 +20,14 @@ import { StyleSheet } from 'react-native';
|
|
|
20
20
|
import { getCommonStyles, Icon, IconInput, useThemeColor, } from '@axelor/aos-mobile-ui';
|
|
21
21
|
import useTranslator from '../../../i18n/hooks/use-translator';
|
|
22
22
|
import { checkNullString } from '../../../utils';
|
|
23
|
-
const SessionNameInput = ({ style, value, onChange, readOnly, showRequiredFields = false, }) => {
|
|
23
|
+
const SessionNameInput = ({ style, value, onChange, readOnly, showRequiredFields = false, hidden = false, }) => {
|
|
24
24
|
const I18n = useTranslator();
|
|
25
25
|
const Colors = useThemeColor();
|
|
26
26
|
const commonStyles = useMemo(() => getCommonStyles(Colors, checkNullString(value)), [Colors, value]);
|
|
27
|
-
|
|
27
|
+
if (hidden) {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
return (<IconInput style={[style, showRequiredFields ? commonStyles.inputFocused : null]} value={value} onChange={onChange} readOnly={readOnly} placeholder={I18n.t('Base_Connection_SessionName')} leftIconsList={[<Icon name="tag" size={17} style={styles.icon}/>]}/>);
|
|
28
31
|
};
|
|
29
32
|
const styles = StyleSheet.create({
|
|
30
33
|
icon: {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionNameInput.js","sourceRoot":"","sources":["../../../../src/sessions/components/inputs/SessionNameInput.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EACL,eAAe,EACf,IAAI,EACJ,SAAS,EACT,aAAa,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,aAAa,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAC,eAAe,EAAC,MAAM,gBAAgB,CAAC;AAE/C,MAAM,gBAAgB,GAAG,CAAC,EACxB,KAAK,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,kBAAkB,GAAG,KAAK,EAC1B,MAAM,GAAG,KAAK,GACf,EAAE,EAAE;IACH,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,EACrD,CAAC,MAAM,EAAE,KAAK,CAAC,CAChB,CAAC;IAEF,IAAI,MAAM,EAAE;QACV,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,CAAC,SAAS,CACR,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CACtE,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CACnD,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC,EACnE,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,IAAI,EAAE;QACJ,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,CAAC;KACV;CACF,CAAC,CAAC;AAEH,eAAe,gBAAgB,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export default UrlInput;
|
|
2
|
-
declare function UrlInput({ style, value, onChange, readOnly, onScanPress, onSelection, onEndFocus, scanIconColor, showRequiredFields, }: {
|
|
2
|
+
declare function UrlInput({ style, value, onChange, readOnly, onScanPress, onSelection, onEndFocus, scanIconColor, showRequiredFields, hidden, }: {
|
|
3
3
|
style: any;
|
|
4
4
|
value: any;
|
|
5
5
|
onChange: any;
|
|
@@ -9,4 +9,5 @@ declare function UrlInput({ style, value, onChange, readOnly, onScanPress, onSel
|
|
|
9
9
|
onEndFocus?: () => void;
|
|
10
10
|
scanIconColor: any;
|
|
11
11
|
showRequiredFields?: boolean;
|
|
12
|
+
hidden?: boolean;
|
|
12
13
|
}): JSX.Element;
|
|
@@ -17,14 +17,20 @@
|
|
|
17
17
|
*/
|
|
18
18
|
import React, { useMemo } from 'react';
|
|
19
19
|
import { StyleSheet } from 'react-native';
|
|
20
|
-
import { getCommonStyles, Icon, IconInput, useThemeColor, } from '@axelor/aos-mobile-ui';
|
|
20
|
+
import { getCommonStyles, Icon, IconInput, LabelText, useThemeColor, } from '@axelor/aos-mobile-ui';
|
|
21
21
|
import useTranslator from '../../../i18n/hooks/use-translator';
|
|
22
22
|
import { checkNullString } from '../../../utils';
|
|
23
|
-
const UrlInput = ({ style, value, onChange, readOnly, onScanPress, onSelection = () => { }, onEndFocus = () => { }, scanIconColor, showRequiredFields = false, }) => {
|
|
23
|
+
const UrlInput = ({ style, value, onChange, readOnly, onScanPress, onSelection = () => { }, onEndFocus = () => { }, scanIconColor, showRequiredFields = false, hidden = false, }) => {
|
|
24
24
|
const Colors = useThemeColor();
|
|
25
25
|
const I18n = useTranslator();
|
|
26
26
|
const commonStyles = useMemo(() => getCommonStyles(Colors, checkNullString(value)), [Colors, value]);
|
|
27
|
-
|
|
27
|
+
if (hidden) {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
if (readOnly) {
|
|
31
|
+
return (<LabelText iconName="link" title={value} style={styles.labText} size={20}/>);
|
|
32
|
+
}
|
|
33
|
+
return (<IconInput style={[style, showRequiredFields ? commonStyles.inputFocused : null]} value={value} onChange={onChange} readOnly={readOnly} required={true} onSelection={onSelection} onEndFocus={onEndFocus} placeholder={I18n.t('Base_Connection_Url')} leftIconsList={[<Icon name="link" size={17} style={styles.icon}/>]} rightIconsList={[
|
|
28
34
|
<Icon name="qrcode" size={20} color={scanIconColor == null
|
|
29
35
|
? Colors.secondaryColor_dark.background
|
|
30
36
|
: scanIconColor} touchable={true} style={styles.icon} onPress={onScanPress} FontAwesome5={false}/>,
|
|
@@ -35,6 +41,11 @@ const styles = StyleSheet.create({
|
|
|
35
41
|
width: '7%',
|
|
36
42
|
margin: 3,
|
|
37
43
|
},
|
|
44
|
+
labText: {
|
|
45
|
+
width: '95%',
|
|
46
|
+
marginVertical: 10,
|
|
47
|
+
marginLeft: 20,
|
|
48
|
+
},
|
|
38
49
|
});
|
|
39
50
|
export default UrlInput;
|
|
40
51
|
//# sourceMappingURL=UrlInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UrlInput.js","sourceRoot":"","sources":["../../../../src/sessions/components/inputs/UrlInput.js"],"names":[],"mappings":"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"}
|
package/lib/{components/organisms/UsernameInput → sessions/components/inputs}/UsernameInput.js
RENAMED
|
@@ -17,14 +17,17 @@
|
|
|
17
17
|
*/
|
|
18
18
|
import React, { useMemo } from 'react';
|
|
19
19
|
import { StyleSheet } from 'react-native';
|
|
20
|
-
import { getCommonStyles, Icon, IconInput, useThemeColor, } from '@axelor/aos-mobile-ui';
|
|
20
|
+
import { getCommonStyles, Icon, IconInput, LabelText, useThemeColor, } from '@axelor/aos-mobile-ui';
|
|
21
21
|
import useTranslator from '../../../i18n/hooks/use-translator';
|
|
22
22
|
import { checkNullString } from '../../../utils';
|
|
23
23
|
const UsernameInput = ({ value, onChange, readOnly, showScanIcon = true, onScanPress, onSelection = () => { }, scanIconColor, style, showRequiredFields = false, }) => {
|
|
24
24
|
const Colors = useThemeColor();
|
|
25
25
|
const I18n = useTranslator();
|
|
26
26
|
const commonStyles = useMemo(() => getCommonStyles(Colors, checkNullString(value)), [Colors, value]);
|
|
27
|
-
|
|
27
|
+
if (readOnly) {
|
|
28
|
+
return (<LabelText iconName="user" title={value} style={styles.labText} size={20}/>);
|
|
29
|
+
}
|
|
30
|
+
return (<IconInput style={[style, showRequiredFields ? commonStyles.inputFocused : null]} value={value} onChange={onChange} readOnly={readOnly} required={true} onSelection={showScanIcon ? onSelection : () => { }} placeholder={I18n.t('Base_Connection_Username')} leftIconsList={[<Icon name="user" size={17} style={styles.icon}/>]} rightIconsList={showScanIcon
|
|
28
31
|
? [
|
|
29
32
|
<Icon name="qrcode" size={20} color={scanIconColor == null
|
|
30
33
|
? Colors.secondaryColor_dark.background
|
|
@@ -37,6 +40,11 @@ const styles = StyleSheet.create({
|
|
|
37
40
|
width: '7%',
|
|
38
41
|
margin: 3,
|
|
39
42
|
},
|
|
43
|
+
labText: {
|
|
44
|
+
width: '95%',
|
|
45
|
+
marginVertical: 10,
|
|
46
|
+
marginLeft: 20,
|
|
47
|
+
},
|
|
40
48
|
});
|
|
41
49
|
export default UsernameInput;
|
|
42
50
|
//# sourceMappingURL=UsernameInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UsernameInput.js","sourceRoot":"","sources":["../../../../src/sessions/components/inputs/UsernameInput.js"],"names":[],"mappings":"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"}
|