@eohjsc/react-native-smart-city 0.7.3-rc11 → 0.7.3-rc13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/package.json +1 -1
  2. package/src/commons/ActionGroup/NumberUpDownActionTemplate.js +3 -3
  3. package/src/commons/ActionGroup/OnOffSmartLock/AutoLock/ButtonWrapper.js +3 -3
  4. package/src/commons/ActionGroup/OnOffSmartLock/PasscodeList/index.js +3 -3
  5. package/src/commons/ActionGroup/OnOffSmartLock/SetupGeneratePasscode/ButtonWrapper.js +2 -2
  6. package/src/commons/ActionGroup/OnOffTemplate/OnOffSimpleTemplate.js +2 -2
  7. package/src/commons/ActionGroup/OptionsDropdownActionTemplate.js +2 -2
  8. package/src/commons/ActionGroup/SmartTiviActionTemplate/SmartTiviActionTemplate.js +2 -2
  9. package/src/commons/ActionGroup/SmartTiviActionTemplate/component/CircleButton.js +5 -5
  10. package/src/commons/ActionGroup/SmartTiviActionTemplate/component/ControlPlay.js +5 -5
  11. package/src/commons/ActionGroup/TerminalBoxTemplate.js +2 -2
  12. package/src/commons/ActionGroup/TextBoxTemplate.js +2 -2
  13. package/src/commons/ActionGroup/TimerActionTemplate.js +6 -3
  14. package/src/commons/ActionGroup/TwoButtonTemplate/index.js +2 -2
  15. package/src/commons/BackDefault/index.js +2 -2
  16. package/src/commons/ButtonPopup/index.js +2 -2
  17. package/src/commons/DateTimeRangeChange/DateTimeButton.js +2 -2
  18. package/src/commons/Device/ConnectedViewHeader.js +2 -2
  19. package/src/commons/Device/Emergency/EmergencyDetail.js +3 -3
  20. package/src/commons/Device/FlatListItems.js +3 -3
  21. package/src/commons/Device/Hanet/ItemHanetDevice.js +3 -3
  22. package/src/commons/Device/ItemAddNew/index.js +2 -2
  23. package/src/commons/Device/ItemDevice.js +2 -2
  24. package/src/commons/Device/SonosSpeaker/index.js +3 -3
  25. package/src/commons/Device/WaterPurifierStatus/AlertStatusMachine.js +2 -2
  26. package/src/commons/Device/WaterQualitySensor/QualityIndicatorsItem.js +6 -2
  27. package/src/commons/DisplayChecking/index.js +2 -2
  28. package/src/commons/EmergencyButton/AlertSendConfirm.js +2 -2
  29. package/src/commons/FieldTemplate/ChooseUserField/index.js +2 -2
  30. package/src/commons/Header/HeaderCustom.js +2 -2
  31. package/src/commons/HeaderAni/index.js +2 -2
  32. package/src/commons/NavBar/index.js +2 -2
  33. package/src/commons/OneTapTemplate/NumberUpDownActionTemplate.js +3 -3
  34. package/src/commons/SearchLocation/index.js +3 -3
  35. package/src/commons/SelectActionCard/index.js +2 -2
  36. package/src/commons/SelectSubUnit/index.js +6 -2
  37. package/src/commons/Sharing/BtnRemoveMember.js +2 -2
  38. package/src/commons/Sharing/StationDevicePermissions.js +2 -2
  39. package/src/commons/SubUnit/DeviceTemplate/ConfigAndEvaluation/ConfigAndEvaluation.js +2 -2
  40. package/src/commons/SubUnit/DeviceTemplate/ConfigValue/ConfigValue.js +2 -2
  41. package/src/commons/SubUnit/DeviceTemplate/EvaluationOverConfig/EvaluationOverConfig.js +2 -2
  42. package/src/commons/SubUnit/OneTap/ItemOneTap.js +2 -2
  43. package/src/commons/Unit/HeaderUnit/index.js +3 -3
  44. package/src/commons/Unit/SharedUnit.js +7 -7
  45. package/src/configs/Theme.js +1 -1
  46. package/src/navigations/EmergencyContactsStack.js +2 -2
  47. package/src/navigations/SharedStack.js +2 -0
  48. package/src/navigations/UnitStack.js +2 -2
  49. package/src/screens/ActivityLog/index.js +2 -2
  50. package/src/screens/AddLocationMaps/index.js +3 -3
  51. package/src/screens/AddNewGateway/RenameNewDevices.js +2 -2
  52. package/src/screens/Automate/AddNewAction/ChooseAction.js +17 -3
  53. package/src/screens/Automate/AddNewAction/ChooseConfig.js +7 -6
  54. package/src/screens/Automate/AddNewAction/NewActionWrapper.js +2 -2
  55. package/src/screens/Automate/AddNewAction/SelectControlDevices.js +27 -17
  56. package/src/screens/Automate/AddNewAction/SelectMonitorDevices.js +17 -10
  57. package/src/screens/Automate/AddNewAction/SetupConfigCondition.js +7 -2
  58. package/src/screens/Automate/AddNewAction/SetupScriptDelay.js +1 -1
  59. package/src/screens/Automate/AddNewAction/SetupScriptNotify.js +3 -3
  60. package/src/screens/Automate/AddNewAction/__test__/SetupScriptNotify.test.js +29 -0
  61. package/src/screens/Automate/AddNewAutoSmart/AddTypeSmart.js +7 -7
  62. package/src/screens/Automate/ScriptDetail/Components/AddActionScript.js +14 -6
  63. package/src/screens/Automate/ScriptDetail/__test__/index.test.js +2 -0
  64. package/src/screens/Automate/ScriptDetail/index.js +3 -3
  65. package/src/screens/Automate/Styles/indexStyles.js +1 -1
  66. package/src/screens/Automate/index.js +36 -33
  67. package/src/screens/Device/EditDevice/index.js +2 -2
  68. package/src/screens/Device/__test__/detail.test.js +3 -3
  69. package/src/screens/Device/detail.js +7 -7
  70. package/src/screens/Drawer/index.js +3 -3
  71. package/src/screens/EmergencyContacts/EmergencyContactsList.js +8 -4
  72. package/src/screens/EmergencyContacts/EmergencyContactsSelectContacts.js +3 -3
  73. package/src/screens/EmergencySetting/components/DropDownItem.js +2 -2
  74. package/src/screens/GuestInfo/components/RowGuestInfo.js +2 -2
  75. package/src/screens/GuestInfo/index.js +2 -2
  76. package/src/screens/HanetCamera/ManageAccess.js +3 -3
  77. package/src/screens/HanetCamera/MemberInfo.js +2 -2
  78. package/src/screens/HanetCamera/components/RequestFaceIDPopup.js +2 -2
  79. package/src/screens/ManageAccess/index.js +3 -3
  80. package/src/screens/Notification/index.js +3 -3
  81. package/src/screens/ScanChipQR/components/QRScan/index.js +3 -3
  82. package/src/screens/SelectUnit/index.js +3 -3
  83. package/src/screens/SharedUnit/TabHeader.js +2 -2
  84. package/src/screens/Sharing/Components/EndDevice.js +3 -3
  85. package/src/screens/Sharing/UnitMemberList.js +2 -2
  86. package/src/screens/SmartAccount/SuccessfullyConnected/index.js +2 -2
  87. package/src/screens/SmartIr/__test__/GroupButtonByType.test.js +3 -2
  88. package/src/screens/SmartIr/components/GroupButtonByType/GroupButtonByType.js +2 -2
  89. package/src/screens/SmartIr/components/SelectBrand.js +2 -2
  90. package/src/screens/SubUnit/EditSubUnit.js +2 -2
  91. package/src/screens/SubUnit/ManageSubUnit.js +3 -3
  92. package/src/screens/Unit/SelectAddToFavorites.js +2 -2
  93. package/src/screens/Unit/SelectAddress.js +3 -3
  94. package/src/screens/Unit/components/AutomateScript/index.js +2 -2
  95. package/src/screens/Unit/components/ButtonWrapper/index.js +3 -3
  96. package/src/screens/Unit/components/Header/index.js +2 -2
  97. package/src/screens/Unit/components/SharedUnit/index.js +5 -5
  98. package/src/screens/UnitSummary/components/AirQuality/index.js +2 -2
  99. package/src/screens/UnitSummary/components/WaterQuality/Item/index.js +2 -2
  100. package/src/screens/UnitSummary/index.js +3 -3
  101. package/src/utils/I18n/translations/vi.js +2 -0
@@ -7,7 +7,7 @@ import RowGuestInfo from './components/RowGuestInfo';
7
7
  import HeaderGuestInfo from './components/HeaderGuestInfo';
8
8
  import AccessScheduleSheet from './components/AccessScheduleSheet';
9
9
  import { CircleView } from '../../commons/CircleView';
10
- import AntDesign from 'react-native-vector-icons/AntDesign';
10
+ import { IconOutline } from '@ant-design/icons-react-native';
11
11
  import Text from '../../commons/Text';
12
12
  import { useBoolean } from '../../hooks/Common';
13
13
  import { axiosGet, axiosPut } from '../../utils/Apis/axios';
@@ -113,7 +113,7 @@ const GuestInfo = ({ route }) => {
113
113
  />
114
114
  ) : (
115
115
  <CircleView size={88} center style={styles.avatar}>
116
- <AntDesign name="user" size={44} color={Colors.Pink1} />
116
+ <IconOutline name="user" size={44} color={Colors.Pink1} />
117
117
  </CircleView>
118
118
  )}
119
119
  <Text type="H3" bold>
@@ -1,7 +1,7 @@
1
1
  import React, { useCallback, useMemo } from 'react';
2
2
  import { View, TouchableOpacity, Image, FlatList } from 'react-native';
3
3
  import { useNavigation } from '@react-navigation/native';
4
- import AntDesign from 'react-native-vector-icons/AntDesign';
4
+ import { IconOutline } from '@ant-design/icons-react-native';
5
5
  import { HeaderCustom } from '../../commons/Header';
6
6
  import Text from '../../commons/Text';
7
7
  import RequestFaceIDPopup from './components/RequestFaceIDPopup';
@@ -74,7 +74,7 @@ const HanetManageAccess = ({ route }) => {
74
74
  {' '}
75
75
  {item.name}
76
76
  </Text>
77
- <AntDesign name="right" size={20} color={Colors.Gray6} />
77
+ <IconOutline name="right" size={20} color={Colors.Gray6} />
78
78
  </TouchableOpacity>
79
79
  );
80
80
  },
@@ -89,7 +89,7 @@ const HanetManageAccess = ({ route }) => {
89
89
  onPress={setShowAddMemberModal}
90
90
  accessibilityLabel={AccessibilityLabel.HANET_MANAGE_ACCESS_ADD_BUTTON}
91
91
  >
92
- <AntDesign name={'plus'} size={27} color={Colors.Black} />
92
+ <IconOutline name={'plus'} size={27} color={Colors.Black} />
93
93
  </TouchableOpacity>
94
94
  </View>
95
95
  ),
@@ -1,7 +1,7 @@
1
1
  import React, { useEffect, useState } from 'react';
2
2
  import { View, TouchableOpacity, Image } from 'react-native';
3
3
  import { useNavigation } from '@react-navigation/native';
4
- import AntDesign from 'react-native-vector-icons/AntDesign';
4
+ import { IconOutline } from '@ant-design/icons-react-native';
5
5
 
6
6
  import { HeaderCustom } from '../../commons/Header';
7
7
  import { AlertAction, FullLoading } from '../../commons';
@@ -173,7 +173,7 @@ const HanetMemberInfo = ({ route }) => {
173
173
  onPress={setShowSetFaceIDModal}
174
174
  style={[styles.row, !!error && { borderBottomColor: Colors.Red6 }]}
175
175
  >
176
- <AntDesign name="camera" size={27} color={Colors.Primary} />
176
+ <IconOutline name="camera" size={27} color={Colors.Primary} />
177
177
  <Text
178
178
  type="Body"
179
179
  bold
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { TouchableOpacity, StyleSheet } from 'react-native';
3
3
  import ImagePicker from 'react-native-image-crop-picker';
4
- import AntDesign from 'react-native-vector-icons/AntDesign';
4
+ import { IconOutline } from '@ant-design/icons-react-native';
5
5
  import Text from '../../../commons/Text';
6
6
  import BottomSheet from '../../../commons/BottomSheet';
7
7
  import { Colors } from '../../../configs';
@@ -19,7 +19,7 @@ const RequestFaceIDPopup = ({
19
19
  const t = useTranslations();
20
20
  const options = [
21
21
  {
22
- icon: <AntDesign name="camera" color={Colors.Gray9} size={27} />,
22
+ icon: <IconOutline name="camera" color={Colors.Gray9} size={27} />,
23
23
  text: t('capture_image'),
24
24
  onChoose: () => {
25
25
  setHide();
@@ -9,7 +9,7 @@ import {
9
9
  import { useNavigation, useIsFocused } from '@react-navigation/native';
10
10
  import { useTranslations } from '../../hooks/Common/useTranslations';
11
11
  import { HeaderCustom } from '../../commons/Header';
12
- import AntDesign from 'react-native-vector-icons/AntDesign';
12
+ import { IconOutline } from '@ant-design/icons-react-native';
13
13
  import styles from './styles/ManageAccessStyles';
14
14
  import { Colors } from '../../configs';
15
15
  import Text from '../../commons/Text';
@@ -75,7 +75,7 @@ const ManageAccessScreen = memo(({ route }) => {
75
75
  // accessibilityLabel={AccessibilityLabel.SIDE_MENU_AVATAR_USER}
76
76
  />
77
77
  ) : (
78
- <AntDesign
78
+ <IconOutline
79
79
  name="user"
80
80
  size={20}
81
81
  color={Colors.White}
@@ -90,7 +90,7 @@ const ManageAccessScreen = memo(({ route }) => {
90
90
  subtext={item.schedule}
91
91
  onPress={() => goToGuestInfo(item.id)}
92
92
  rightComponent={
93
- <AntDesign
93
+ <IconOutline
94
94
  name="right"
95
95
  size={20}
96
96
  color={Colors.Gray6}
@@ -1,6 +1,6 @@
1
1
  import React, { memo, useMemo, useState, useCallback, useEffect } from 'react';
2
2
  import { View, TouchableOpacity } from 'react-native';
3
- import AntDesign from 'react-native-vector-icons/AntDesign';
3
+ import { IconOutline } from '@ant-design/icons-react-native';
4
4
  import { useFocusEffect } from '@react-navigation/native';
5
5
 
6
6
  import styles from './styles/indexStyles';
@@ -33,7 +33,7 @@ const Notification = memo(() => {
33
33
  notImplemented(t);
34
34
  }}
35
35
  >
36
- <AntDesign name={'plus'} size={27} color={Colors.Black} />
36
+ <IconOutline name={'plus'} size={27} color={Colors.Black} />
37
37
  </TouchableOpacity>
38
38
 
39
39
  <TouchableOpacity
@@ -41,7 +41,7 @@ const Notification = memo(() => {
41
41
  notImplemented(t);
42
42
  }}
43
43
  >
44
- <AntDesign name={'search1'} size={27} color={Colors.Black} />
44
+ <IconOutline name={'search'} size={27} color={Colors.Black} />
45
45
  </TouchableOpacity>
46
46
  </View>
47
47
  ),
@@ -7,7 +7,7 @@ import {
7
7
  Dimensions,
8
8
  TouchableOpacity,
9
9
  } from 'react-native';
10
- import AntDesign from 'react-native-vector-icons/AntDesign';
10
+ import { IconOutline } from '@ant-design/icons-react-native';
11
11
  import { RNCamera } from 'react-native-camera';
12
12
  import { getStatusBarHeight } from 'react-native-iphone-x-helper';
13
13
  import { useTranslations } from '../../../../hooks/Common/useTranslations';
@@ -36,7 +36,7 @@ const VerifyingQRCode = memo(() => {
36
36
  <View style={styles.maskOuter}>
37
37
  <TouchableOpacity style={[styles.viewVerifying, styles.buttonShadow]}>
38
38
  <Loading
39
- icon={<AntDesign name={'sync'} color={Colors.Green6} size={16} />}
39
+ icon={<IconOutline name={'sync'} color={Colors.Green6} size={16} />}
40
40
  />
41
41
  <Text type={'Body'} style={styles.text}>
42
42
  {t('verify_qr_code')}
@@ -117,7 +117,7 @@ const QRScan = ({ isScanReady = true, onScan }) => {
117
117
  borderColor={Colors.Gray4}
118
118
  style={styles.buttonClose}
119
119
  >
120
- <AntDesign name={'close'} size={24} co />
120
+ <IconOutline name={'close'} size={24} co />
121
121
  </CircleButton>
122
122
  {loading && <VerifyingQRCode />}
123
123
  </View>
@@ -1,6 +1,6 @@
1
1
  import React, { useMemo, useState, useCallback, useEffect } from 'react';
2
2
  import { View, TouchableOpacity, FlatList } from 'react-native';
3
- import AntDesign from 'react-native-vector-icons/AntDesign';
3
+ import { IconOutline } from '@ant-design/icons-react-native';
4
4
  import WrapHeaderScrollable from '../../commons/Sharing/WrapHeaderScrollable';
5
5
  import { API, Colors } from '../../configs';
6
6
  import Text from '../../commons/Text';
@@ -76,7 +76,7 @@ const SelectUnit = () => {
76
76
  isAutomateTab,
77
77
  isMultiUnits,
78
78
  routeName,
79
- unit: selectedItem,
79
+ multiUnit: selectedItem,
80
80
  automateId,
81
81
  scriptName,
82
82
  oldType,
@@ -132,7 +132,7 @@ const SelectUnit = () => {
132
132
  accessibilityLabel={AccessibilityLabel.ICON_CLOSE}
133
133
  >
134
134
  <View style={styles.buttonClose}>
135
- <AntDesign name={'close'} size={24} color={Colors.Black} />
135
+ <IconOutline name={'close'} size={24} color={Colors.Black} />
136
136
  </View>
137
137
  </TouchableOpacity>
138
138
  ),
@@ -1,6 +1,6 @@
1
1
  import React, { useState, useEffect } from 'react';
2
2
  import { View, TouchableOpacity } from 'react-native';
3
- import AntDesign from 'react-native-vector-icons/AntDesign';
3
+ import { IconOutline } from '@ant-design/icons-react-native';
4
4
  import { useTranslations } from '../../hooks/Common/useTranslations';
5
5
 
6
6
  import Text from '../../commons/Text';
@@ -54,7 +54,7 @@ const TabHeader = ({ current, getCurrentTab, showModal, textFilter }) => {
54
54
  <Text style={styles.sortBy}>
55
55
  {t('sort_by') + ': '} {textFilter}
56
56
  </Text>
57
- <AntDesign name="arrowdown" size={10} />
57
+ <IconOutline name="arrowdown" size={10} />
58
58
  </TouchableOpacity>
59
59
  </View>
60
60
  </View>
@@ -1,6 +1,6 @@
1
1
  import React, { memo, useMemo, useState } from 'react';
2
2
  import { View, Text, TouchableOpacity } from 'react-native';
3
- import AntDesign from 'react-native-vector-icons/AntDesign';
3
+ import { IconOutline } from '@ant-design/icons-react-native';
4
4
  import { Colors } from '../../../configs';
5
5
  import styles from './Styles/DeviceItemStyles';
6
6
  import { AccessibilityLabel } from '../../../configs/Constants';
@@ -71,11 +71,11 @@ const EndDevice = ({
71
71
  {name}
72
72
  </Text>
73
73
  {checked && (
74
- <AntDesign name={'check'} color={Colors.Primary} size={20} />
74
+ <IconOutline name={'check'} color={Colors.Primary} size={20} />
75
75
  )}
76
76
 
77
77
  {dataConfig.length > 0 && (
78
- <AntDesign
78
+ <IconOutline
79
79
  onPress={() => toggleExpandEndDevice()}
80
80
  name={isItemExpanded ? 'up' : 'down'}
81
81
  size={20}
@@ -1,5 +1,5 @@
1
1
  import React, { useCallback, useEffect } from 'react';
2
- import AntDesign from 'react-native-vector-icons/AntDesign';
2
+ import { IconOutline } from '@ant-design/icons-react-native';
3
3
  import MaterialIcons from 'react-native-vector-icons/MaterialIcons';
4
4
  import { useNavigation, useIsFocused } from '@react-navigation/native';
5
5
  import { StyleSheet, TouchableOpacity, View } from 'react-native';
@@ -83,7 +83,7 @@ const UnitMemberList = ({ route }) => {
83
83
  style={styles.rightHeader}
84
84
  >
85
85
  {isOwner ? (
86
- <AntDesign name={'plus'} size={27} color={Colors.Black} />
86
+ <IconOutline name={'plus'} size={27} color={Colors.Black} />
87
87
  ) : (
88
88
  <MaterialIcons name={'more-vert'} size={27} color={Colors.Black} />
89
89
  )}
@@ -1,7 +1,7 @@
1
1
  import React, { memo, useCallback, useEffect, useState } from 'react';
2
2
  import { View, ScrollView, ActivityIndicator } from 'react-native';
3
3
  import { useNavigation, CommonActions } from '@react-navigation/native';
4
- import AntDesign from 'react-native-vector-icons/AntDesign';
4
+ import { IconOutline } from '@ant-design/icons-react-native';
5
5
 
6
6
  import _TextInput from '../../../commons/Form/TextInput';
7
7
  import Text from '../../../commons/Text';
@@ -134,7 +134,7 @@ const SuccessfullyConnected = memo(({ route }) => {
134
134
  <View style={styles.wrap}>
135
135
  <ScrollView>
136
136
  <View style={styles.body}>
137
- <AntDesign name="check-circle" size={28} color={Colors.Green6} />
137
+ <IconOutline name="check-circle" size={28} color={Colors.Green6} />
138
138
  <Text bold style={styles.connectingText}>
139
139
  {t('successfully_connected')}
140
140
  </Text>
@@ -9,8 +9,9 @@ import { AccessibilityLabel } from '../../../configs/Constants';
9
9
  import TextInput from '../../../commons/Form/TextInput';
10
10
  import { ModalCustom } from '../../../commons/Modal';
11
11
  import { TouchableOpacity } from 'react-native';
12
- import AntDesign from 'react-native-vector-icons/AntDesign';
12
+
13
13
  import MaterialIcons from 'react-native-vector-icons/MaterialIcons';
14
+ import { IconOutline } from '@ant-design/icons-react-native';
14
15
 
15
16
  const wrapComponent = (route) => (
16
17
  <SCProvider initState={mockSCStore({})}>
@@ -133,7 +134,7 @@ describe('Test GroupButtonByType', () => {
133
134
  const icon = instance.find(
134
135
  (el) =>
135
136
  el.props.accessibilityLabel ===
136
- AccessibilityLabel.ICON_OUTLINE_TYPE_RELOAD && el.type === AntDesign
137
+ AccessibilityLabel.ICON_OUTLINE_TYPE_RELOAD && el.type === IconOutline
137
138
  );
138
139
  await act(async () => {
139
140
  await touch.props.onPress();
@@ -5,7 +5,7 @@ import { useTranslations } from '../../../../hooks/Common/useTranslations';
5
5
  import SmartTiviActionTemplate from '../../../../commons/ActionGroup/SmartTiviActionTemplate/SmartTiviActionTemplate';
6
6
  import Text from '../../../../commons/Text';
7
7
  import { ModalCustom } from '../../../../commons/Modal';
8
- import AntDesign from 'react-native-vector-icons/AntDesign';
8
+ import { IconOutline } from '@ant-design/icons-react-native';
9
9
  import MaterialIcons from 'react-native-vector-icons/MaterialIcons';
10
10
  import { Colors } from '../../../../configs';
11
11
  import TextInput from '../../../../commons/Form/TextInput';
@@ -58,7 +58,7 @@ const GroupButtonByType = memo(({ route }) => {
58
58
  style={[styles.headerButton]}
59
59
  accessibilityLabel={AccessibilityLabel.HEADER_BUTTON_TYPE_RELOAD}
60
60
  >
61
- <AntDesign
61
+ <IconOutline
62
62
  name={'reload1'}
63
63
  size={27}
64
64
  color={Colors.Black}
@@ -5,7 +5,7 @@ import { HeaderCustom } from '../../../commons/Header';
5
5
  import { useTranslations } from '../../../hooks/Common/useTranslations';
6
6
  import Routes from '../../../utils/Route';
7
7
  import { RowItem } from '../../../commons/RowItem';
8
- import AntDesign from 'react-native-vector-icons/AntDesign';
8
+ import { IconOutline } from '@ant-design/icons-react-native';
9
9
  import { Colors } from '../../../configs';
10
10
 
11
11
  import styles from './SelectBrandStyles';
@@ -47,7 +47,7 @@ const SelectDeviceType = memo(({ route }) => {
47
47
  key={index.toString()}
48
48
  isShowSubText={false}
49
49
  rightComponent={
50
- <AntDesign name="right" size={20} color={Colors.Gray7} />
50
+ <IconOutline name="right" size={20} color={Colors.Gray7} />
51
51
  }
52
52
  />
53
53
  );
@@ -18,7 +18,7 @@ import AlertAction from '../../commons/AlertAction';
18
18
  import _TextInput from '../../commons/Form/TextInput';
19
19
  import Text from '../../commons/Text';
20
20
  import { AccessibilityLabel } from '../../configs/Constants';
21
- import AntDesign from 'react-native-vector-icons/AntDesign';
21
+ import { IconOutline } from '@ant-design/icons-react-native';
22
22
  import { useEmeragencyContacts } from './hooks/useEmergencyContacts';
23
23
  import useKeyboardAnimated from '../../hooks/Explore/useKeyboardAnimated';
24
24
  import styles from './EditSubUnitStyles';
@@ -207,7 +207,7 @@ const EditSubUnit = ({ route }) => {
207
207
  <Text type={'H4'} color={Colors.Gray9}>
208
208
  {t('emergency_contacts')}
209
209
  </Text>
210
- <AntDesign name={'right'} size={20} color={Colors.Gray8} />
210
+ <IconOutline name={'right'} size={20} color={Colors.Gray8} />
211
211
  </TouchableOpacity>
212
212
  <Text
213
213
  type={'Body'}
@@ -14,7 +14,7 @@ import WrapHeaderScrollable from '../../commons/Sharing/WrapHeaderScrollable';
14
14
  import Text from '../../commons/Text';
15
15
 
16
16
  import styles from './ManageSubUnitStyles';
17
- import AntDesign from 'react-native-vector-icons/AntDesign';
17
+ import { IconOutline } from '@ant-design/icons-react-native';
18
18
  import MaterialIcons from 'react-native-vector-icons/MaterialIcons';
19
19
  import Routes from '../../utils/Route';
20
20
  import { RowItem } from '../../commons/RowItem';
@@ -54,7 +54,7 @@ const ManageSubUnit = ({ route }) => {
54
54
  onPress={addSubUnit}
55
55
  style={styles.headerButton}
56
56
  >
57
- <AntDesign name={'plus'} size={27} color={Colors.Black} />
57
+ <IconOutline name={'plus'} size={27} color={Colors.Black} />
58
58
  </TouchableOpacity>
59
59
  <TouchableOpacity
60
60
  // onPress={handleShowMenuAction}
@@ -112,7 +112,7 @@ const ManageSubUnit = ({ route }) => {
112
112
  } devices`}
113
113
  onPress={() => goToEditSubUnit(item, unit)}
114
114
  rightComponent={
115
- <AntDesign
115
+ <IconOutline
116
116
  name="right"
117
117
  size={20}
118
118
  color={Colors.Gray6}
@@ -8,7 +8,7 @@ import React, {
8
8
  } from 'react';
9
9
  import { View, ScrollView, TouchableOpacity } from 'react-native';
10
10
  import { useNavigation } from '@react-navigation/native';
11
- import AntDesign from 'react-native-vector-icons/AntDesign';
11
+ import { IconOutline } from '@ant-design/icons-react-native';
12
12
  import { HeaderCustom } from '../../commons/Header';
13
13
  import Text from '../../commons/Text';
14
14
  import NavBar from '../../commons/NavBar';
@@ -142,7 +142,7 @@ const SelectAddToFavorites = memo(({ route }) => {
142
142
  style={styles.buttonClose}
143
143
  onPress={goBack}
144
144
  >
145
- <AntDesign name={'close'} size={24} color={Colors.Black} />
145
+ <IconOutline name={'close'} size={24} color={Colors.Black} />
146
146
  </TouchableOpacity>
147
147
  ),
148
148
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -2,7 +2,7 @@ import React, { memo, useCallback, useEffect, useRef, useState } from 'react';
2
2
  import { TouchableOpacity, View, ScrollView } from 'react-native';
3
3
  import MapView, { Marker, Circle, PROVIDER_GOOGLE } from 'react-native-maps';
4
4
  import { useNavigation } from '@react-navigation/native';
5
- import AntDesign from 'react-native-vector-icons/AntDesign';
5
+ import { IconOutline } from '@ant-design/icons-react-native';
6
6
  import MaterialIcons from 'react-native-vector-icons/MaterialIcons';
7
7
  import { check, RESULTS } from 'react-native-permissions';
8
8
  import { openPromptEnableLocation } from '../../utils/Setting/Location';
@@ -210,7 +210,7 @@ const SelectAddress = memo(({ route }) => {
210
210
  style={styles.button}
211
211
  accessibilityLabel={AccessibilityLabel.BUTTON_CHOOSE_ON_MAP}
212
212
  >
213
- <AntDesign name="enviroment" size={27} color={Colors.Primary} />
213
+ <IconOutline name="enviroment" size={27} color={Colors.Primary} />
214
214
  <Text type="Body" color={Colors.Gray9} style={styles.text} bold>
215
215
  {t('choose_on_map')}
216
216
  </Text>
@@ -248,7 +248,7 @@ const SelectAddress = memo(({ route }) => {
248
248
  }}
249
249
  tracksViewChanges={false}
250
250
  >
251
- <AntDesign name="enviroment" size={27} color={Colors.Blue10} />
251
+ <IconOutline name="enviroment" size={27} color={Colors.Blue10} />
252
252
  </Marker>
253
253
  </>
254
254
  )}
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { View, TouchableWithoutFeedback } from 'react-native';
3
- import AntDesign from 'react-native-vector-icons/AntDesign';
3
+ import { IconOutline } from '@ant-design/icons-react-native';
4
4
  import { useTranslations } from '../../../../hooks/Common/useTranslations';
5
5
  import Text from '../../../../commons/Text';
6
6
  import FImage from '../../../../commons/FImage';
@@ -61,7 +61,7 @@ const AutomateScript = ({ automate, onPress, isSelected }) => {
61
61
  <Text numberOfLines={1} type={'Label'} color={Colors.Gray7}>
62
62
  {t('created_by', { name: author })}
63
63
  </Text>
64
- <AntDesign name="right" size={12} />
64
+ <IconOutline name="right" size={12} />
65
65
  </View>
66
66
  </View>
67
67
  </View>
@@ -2,7 +2,7 @@ import React, { memo } from 'react';
2
2
  import { View, TouchableOpacity, Image } from 'react-native';
3
3
  import Text from '../../../../commons/Text';
4
4
  import { Colors } from '../../../../configs';
5
- import AntDesign from 'react-native-vector-icons/AntDesign';
5
+ import { IconOutline } from '@ant-design/icons-react-native';
6
6
  import { AccessibilityLabel } from '../../../../configs/Constants';
7
7
  import styles from './styles';
8
8
 
@@ -46,10 +46,10 @@ const ButtonWrapper = ({
46
46
  <Image source={{ uri: value }} style={styles.avatar} />
47
47
  ) : (
48
48
  <View style={styles.avatar}>
49
- <AntDesign name={'user'} size={27} />
49
+ <IconOutline name={'user'} size={27} />
50
50
  </View>
51
51
  )}
52
- <AntDesign name="right" size={20} color={Colors.Gray7} />
52
+ <IconOutline name="right" size={20} color={Colors.Gray7} />
53
53
  </View>
54
54
  </View>
55
55
  {children}
@@ -1,7 +1,7 @@
1
1
  import React, { useCallback, useRef, useState } from 'react';
2
2
  import { Dimensions, View, TouchableOpacity, StyleSheet } from 'react-native';
3
3
  import Popover from '../../../../commons/Popover';
4
- import AntDesign from 'react-native-vector-icons/AntDesign';
4
+ import { IconOutline } from '@ant-design/icons-react-native';
5
5
  import MaterialIcons from 'react-native-vector-icons/MaterialIcons';
6
6
  import { useTranslations } from '../../../../hooks/Common/useTranslations';
7
7
 
@@ -98,7 +98,7 @@ const HeaderComponent = ({ title, goBack, dark, hideRight, style }) => {
98
98
  onPress={() => setShowModal(true)}
99
99
  style={styles.rightHeader}
100
100
  >
101
- <AntDesign
101
+ <IconOutline
102
102
  name="plus"
103
103
  size={32}
104
104
  color={dark ? Colors.Black : Colors.White}
@@ -1,7 +1,7 @@
1
1
  import React, { Fragment, useCallback } from 'react';
2
2
  import { View, Image, TouchableOpacity } from 'react-native';
3
3
  import { useTranslations } from '../../../../hooks/Common/useTranslations';
4
- import AntDesign from 'react-native-vector-icons/AntDesign';
4
+ import { IconFill, IconOutline } from '@ant-design/icons-react-native';
5
5
 
6
6
  import { API, Colors, Images } from '../../../../configs';
7
7
  import Text from '../../../../commons/Text';
@@ -88,7 +88,7 @@ const SharedUnit = ({
88
88
  {isOptions && (
89
89
  <Fragment>
90
90
  {item.is_pin ? (
91
- <AntDesign
91
+ <IconOutline
92
92
  name="pushpin"
93
93
  size={20}
94
94
  color={Colors.Blue10}
@@ -98,7 +98,7 @@ const SharedUnit = ({
98
98
  }
99
99
  />
100
100
  ) : (
101
- <AntDesign
101
+ <IconOutline
102
102
  name="pushpin"
103
103
  size={20}
104
104
  onPress={addPinSharedUnit}
@@ -106,7 +106,7 @@ const SharedUnit = ({
106
106
  />
107
107
  )}
108
108
  {item.is_star ? (
109
- <AntDesign
109
+ <IconFill
110
110
  name="star"
111
111
  size={20}
112
112
  color={Colors.Yellow6}
@@ -116,7 +116,7 @@ const SharedUnit = ({
116
116
  }
117
117
  />
118
118
  ) : (
119
- <AntDesign
119
+ <IconOutline
120
120
  name="star"
121
121
  size={20}
122
122
  onPress={addStarSharedUnit}
@@ -1,6 +1,6 @@
1
1
  import React, { memo, useCallback, useMemo, useState } from 'react';
2
2
  import { TouchableOpacity, View } from 'react-native';
3
- import AntDesign from 'react-native-vector-icons/AntDesign';
3
+ import { IconOutline } from '@ant-design/icons-react-native';
4
4
  import MaterialCommunityIcons from 'react-native-vector-icons/MaterialCommunityIcons';
5
5
 
6
6
  import styles from './styles';
@@ -80,7 +80,7 @@ const AirQuality = memo(({ summaryDetail }) => {
80
80
  <View
81
81
  style={[styles.boxEmotion, { backgroundColor: outdoorColor }]}
82
82
  >
83
- <AntDesign name={outdoorIcon} size={35} />
83
+ <IconOutline name={outdoorIcon} size={35} />
84
84
  </View>
85
85
  <View
86
86
  style={[
@@ -1,6 +1,6 @@
1
1
  import React, { memo } from 'react';
2
2
  import { View, StyleSheet, TouchableOpacity } from 'react-native';
3
- import AntDesign from 'react-native-vector-icons/AntDesign';
3
+ import { IconOutline } from '@ant-design/icons-react-native';
4
4
  import { useNavigation } from '@react-navigation/native';
5
5
 
6
6
  import Text from '../../../../../commons/Text';
@@ -23,7 +23,7 @@ const Item = memo(({ id, svgMain, title, measure, des, color, waterType }) => {
23
23
  <Text>{title}</Text>
24
24
  {waterType && (
25
25
  <TouchableOpacity onPress={goToDetail} style={styles.buttonInfo}>
26
- <AntDesign
26
+ <IconOutline
27
27
  style={styles.row}
28
28
  name="infocirlceo"
29
29
  size={20}
@@ -2,7 +2,7 @@ import React, { memo, useCallback, useEffect, useState } from 'react';
2
2
  import { View, StyleSheet } from 'react-native';
3
3
  import { useNavigation } from '@react-navigation/native';
4
4
  import { TouchableOpacity } from 'react-native';
5
- import AntDesign from 'react-native-vector-icons/AntDesign';
5
+ import { IconOutline } from '@ant-design/icons-react-native';
6
6
  import moment from 'moment';
7
7
 
8
8
  import { useTranslations } from '../../hooks/Common/useTranslations';
@@ -168,8 +168,8 @@ const UnitSummary = memo(({ route }) => {
168
168
  accessibilityLabel={AccessibilityLabel.UNIT_SUMMARY_GUIDE_TOUCH}
169
169
  onPress={() => navigation.navigate(GuideName)}
170
170
  >
171
- <AntDesign
172
- name={'infocirlceo'}
171
+ <IconOutline
172
+ name="info-circle"
173
173
  size={25}
174
174
  color={Colors.Black}
175
175
  />
@@ -1320,6 +1320,8 @@ export default {
1320
1320
  smart_supplier: 'Nhà Cung Cấp Thông Minh',
1321
1321
  text_email_or_phone_number: 'Email hoặc Số điện thoại',
1322
1322
  enter_password: 'Mật khẩu',
1323
+ you_need_to_enter_password:
1324
+ 'Bạn cần nhập mật khẩu để xác nhận yêu cầu của mình',
1323
1325
  connecting_smart_account: 'Đang kết nối tài khoản',
1324
1326
  warning_connecting_smart_account:
1325
1327
  'Đừng tắt thiết bị hoặc đóng ứng dụng này trong quá trình thiết lập. Quá trình thiết lập có thể mất vài ' +