@eohjsc/react-native-smart-city 0.5.9 → 0.6.0-rc1

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 (304) hide show
  1. package/README.md +1 -1
  2. package/android/build.gradle +8 -10
  3. package/package.json +52 -69
  4. package/src/commons/Action/__test__/ItemQuickAction.test.js +2 -2
  5. package/src/commons/ActionGroup/NumberUpDownActionTemplate.js +3 -3
  6. package/src/commons/ActionGroup/OnOffSmartLock/AutoLock/ButtonWrapper.js +3 -3
  7. package/src/commons/ActionGroup/OnOffSmartLock/PasscodeList/__test__/index.test.js +3 -3
  8. package/src/commons/ActionGroup/OnOffSmartLock/PasscodeList/index.js +3 -3
  9. package/src/commons/ActionGroup/OnOffSmartLock/SetupGeneratePasscode/ButtonWrapper.js +2 -2
  10. package/src/commons/ActionGroup/OnOffSmartLock/SetupGeneratePasscode/__test__/index.test.js +0 -15
  11. package/src/commons/ActionGroup/OnOffTemplate/OnOffSimpleTemplate.js +2 -2
  12. package/src/commons/ActionGroup/OptionsDropdownActionTemplate.js +2 -2
  13. package/src/commons/ActionGroup/SmartTiviActionTemplate/SmartTiviActionTemplate.js +2 -2
  14. package/src/commons/ActionGroup/SmartTiviActionTemplate/component/CircleButton.js +5 -5
  15. package/src/commons/ActionGroup/SmartTiviActionTemplate/component/ControlPlay.js +3 -3
  16. package/src/commons/ActionGroup/TerminalBoxTemplate.js +2 -2
  17. package/src/commons/ActionGroup/TextBoxTemplate.js +2 -2
  18. package/src/commons/ActionGroup/ThreeButtonTemplate/__test__/ThreeButtonTemplate.test.js +4 -4
  19. package/src/commons/ActionGroup/TimerActionTemplate.js +3 -4
  20. package/src/commons/ActionGroup/TwoButtonTemplate/index.js +2 -2
  21. package/src/commons/ActionGroup/__test__/NumberUpDownTemplate.test.js +2 -9
  22. package/src/commons/ActionGroup/__test__/OnOffButtonTemplate.test.js +4 -11
  23. package/src/commons/ActionGroup/__test__/OnOffSmartLock.test.js +2 -9
  24. package/src/commons/ActionGroup/__test__/OnOffTemplate.test.js +4 -18
  25. package/src/commons/ActionGroup/__test__/OneBigButtonTemplate.test.js +2 -2
  26. package/src/commons/ActionGroup/__test__/OptionsDropdownTemplate.test.js +1 -8
  27. package/src/commons/ActionGroup/__test__/StatesGridActionTemplate.test.js +0 -7
  28. package/src/commons/ActionGroup/__test__/SwitchButtonTemplate.test.js +4 -15
  29. package/src/commons/ActionGroup/__test__/TerminalBoxTemplate.test.js +0 -7
  30. package/src/commons/ActionGroup/__test__/TextBoxTemplate.test.js +1 -8
  31. package/src/commons/ActionGroup/__test__/TimerActionTemplate.test.js +1 -8
  32. package/src/commons/ActionGroup/__test__/TimerActionTemplateWithutConfigValue.test.js +1 -8
  33. package/src/commons/ActionGroup/__test__/TwoButtonTemplate.test.js +2 -9
  34. package/src/commons/ActionGroup/__test__/index.test.js +14 -21
  35. package/src/commons/ActionTemplate/__test__/index.test.js +2 -0
  36. package/src/commons/ActionTemplate/__test__/utils.js +21 -0
  37. package/src/commons/ActionTemplate/index.js +1 -2
  38. package/src/commons/BackDefault/index.js +2 -2
  39. package/src/commons/ButtonPopup/index.js +2 -2
  40. package/src/commons/Dashboard/MyPinnedSharedUnit/__test__/MyPinnedSharedUnit.test.js +1 -12
  41. package/src/commons/Dashboard/MyUnit/__test__/MyUnit.test.js +27 -20
  42. package/src/commons/Dashboard/MyUnit/index.js +0 -1
  43. package/src/commons/DateTimeRangeChange/DateTimeButton.js +2 -2
  44. package/src/commons/Device/ConnectedViewHeader.js +2 -2
  45. package/src/commons/Device/DisconnectedView.js +2 -2
  46. package/src/commons/Device/Emergency/EmergencyDetail.js +3 -3
  47. package/src/commons/Device/Emergency/__test__/EmergencyDetail.test.js +2 -2
  48. package/src/commons/Device/FlatListItems.js +3 -3
  49. package/src/commons/Device/Hanet/ItemHanetDevice.js +3 -3
  50. package/src/commons/Device/Hanet/ItemHanetDevice.test.js +3 -11
  51. package/src/commons/Device/HorizontalBarChart.js +1 -1
  52. package/src/commons/Device/ItemAddNew/index.js +2 -2
  53. package/src/commons/Device/ItemDevice.js +2 -2
  54. package/src/commons/Device/PowerConsumptionChart.js +154 -0
  55. package/src/commons/Device/SonosSpeaker/index.js +3 -3
  56. package/src/commons/Device/WaterPurifierStatus/AlertStatusMachine.js +2 -2
  57. package/src/commons/Device/WaterQualitySensor/QualityIndicatorsItem.js +2 -6
  58. package/src/commons/DisplayChecking/index.js +2 -2
  59. package/src/commons/EmergencyButton/AlertSendConfirm.js +2 -2
  60. package/src/commons/EmergencyButton/AlertSent.js +2 -2
  61. package/src/commons/FieldTemplate/ChooseUserField/index.js +2 -2
  62. package/src/commons/Form/CurrencyInput.js +1 -15
  63. package/src/commons/Header/HeaderCustom.js +3 -3
  64. package/src/commons/HeaderAni/index.js +2 -2
  65. package/src/commons/IconComponent/index.js +3 -3
  66. package/src/commons/MenuActionAddnew/__test__/MenuActionAddNew.test.js +1 -1
  67. package/src/commons/MenuActionList/__test__/MenuActionList.test.js +1 -0
  68. package/src/commons/NavBar/index.js +2 -2
  69. package/src/commons/OneTapTemplate/NumberUpDownActionTemplate.js +3 -3
  70. package/src/commons/PreventAccess/__test__/PreventAccess.test.js +1 -13
  71. package/src/commons/Processing/__test__/Connecting.test.js +3 -14
  72. package/src/commons/SearchLocation/index.js +2 -2
  73. package/src/commons/SelectActionCard/index.js +2 -2
  74. package/src/commons/SelectSubUnit/__test__/SelectSubUnit.test.js +1 -18
  75. package/src/commons/SelectSubUnit/index.js +2 -2
  76. package/src/commons/SelectUnit/__test__/SelectUnit.test.js +1 -13
  77. package/src/commons/Sharing/BtnRemoveMember.js +2 -2
  78. package/src/commons/Sharing/StationDevicePermissions.js +2 -2
  79. package/src/commons/Sharing/WrapHeaderScrollable.js +1 -1
  80. package/src/commons/Sharing/__test__/DevicePermissionsCheckbox.test.js +1 -1
  81. package/src/commons/SubUnit/DeviceTemplate/ConfigAndEvaluation/ConfigAndEvaluation.js +2 -2
  82. package/src/commons/SubUnit/DeviceTemplate/ConfigValue/ConfigValue.js +2 -2
  83. package/src/commons/SubUnit/DeviceTemplate/EvaluationOverConfig/EvaluationOverConfig.js +2 -2
  84. package/src/commons/SubUnit/Item/index.js +2 -2
  85. package/src/commons/SubUnit/OneTap/ItemOneTap.js +2 -2
  86. package/src/commons/SubUnit/OneTap/__test__/SubUnitAutomate.test.js +11 -8
  87. package/src/commons/SubUnit/__test__/Favorites.test.js +1 -13
  88. package/src/commons/SubUnit/__test__/ShortDetail.test.js +5 -16
  89. package/src/commons/Tabbar/__test__/index.test.js +0 -11
  90. package/src/commons/Unit/HeaderUnit/index.js +4 -4
  91. package/src/commons/Unit/SharedUnit.js +5 -5
  92. package/src/commons/Unit/__test__/HeaderUnit.test.js +3 -15
  93. package/src/commons/Unit/__test__/SharedUnit.test.js +94 -105
  94. package/src/commons/UnitSummary/AirQuality/SegmentedRoundDisplay/index.js +11 -30
  95. package/src/commons/UnitSummary/ConfigHistoryChart/index.js +6 -61
  96. package/src/commons/Widgets/IFrame/IFrame.js +54 -0
  97. package/src/commons/Widgets/IFrame/IFrameStyles.js +35 -0
  98. package/src/commons/Widgets/IFrame/__tests__/IFrame.test.js +74 -0
  99. package/src/commons/Widgets/IFrame/index.js +0 -0
  100. package/src/commons/Widgets/IFrameWithConfig/IFrameWithConfig.js +163 -0
  101. package/src/commons/Widgets/IFrameWithConfig/IFrameWithConfigStyles.js +9 -0
  102. package/src/commons/Widgets/IFrameWithConfig/__tests__/IFrameWithConfig.test.js +284 -0
  103. package/src/commons/Widgets/IFrameWithConfig/index.js +0 -0
  104. package/src/commons/Widgets/Widget.js +0 -0
  105. package/src/commons/Widgets/index.js +0 -0
  106. package/src/configs/Constants.js +5 -0
  107. package/src/hooks/Common/__test__/useAndroidTranslucentStatusBar.test.js +4 -15
  108. package/src/hooks/Common/useDevicesStatus.js +23 -23
  109. package/src/hooks/IoT/__test__/useRemoteControl.test.js +1 -1
  110. package/src/hooks/IoT/__test__/useWatchConfigs.test.js +0 -7
  111. package/src/iot/RemoteControl/HomeAssistant.js +1 -1
  112. package/src/iot/RemoteControl/__test__/Bluetooth.test.js +234 -232
  113. package/src/navigations/AutomateStack.js +2 -2
  114. package/src/navigations/EmergencyContactsStack.js +2 -2
  115. package/src/navigations/SharedStack.js +2 -2
  116. package/src/navigations/UnitStack.js +2 -2
  117. package/src/screens/ActivityLog/hooks/index.js +7 -4
  118. package/src/screens/ActivityLog/index.js +2 -2
  119. package/src/screens/AddCommon/__test__/SelectSubUnit.test.js +4 -21
  120. package/src/screens/AddCommon/__test__/SelectUnit.test.js +7 -19
  121. package/src/screens/AddLocationMaps/__test__/index.test.js +3 -13
  122. package/src/screens/AddLocationMaps/index.js +4 -4
  123. package/src/screens/AddNewDevice/__test__/AddNewDevice.test.js +3 -20
  124. package/src/screens/AddNewGateway/PlugAndPlay/__test__/FirstWarning.test.js +11 -18
  125. package/src/screens/AddNewGateway/PlugAndPlay/__test__/ZigbeeDeviceConnectGuide.test.js +4 -21
  126. package/src/screens/AddNewGateway/RenameNewDevices.js +2 -2
  127. package/src/screens/AddNewGateway/__test__/AddNewGateway.test.js +3 -3
  128. package/src/screens/AddNewGateway/__test__/ConnectingModbusDevice.test.js +0 -17
  129. package/src/screens/AddNewGateway/__test__/ConnectingWifiDevice.test.js +4 -19
  130. package/src/screens/AddNewGateway/__test__/ConnectingWifiGuide.test.js +3 -15
  131. package/src/screens/AddNewGateway/__test__/ConnectingZigbeeDevice.test.js +31 -51
  132. package/src/screens/AddNewGateway/__test__/RenameNewDevices.test.js +9 -22
  133. package/src/screens/AddNewGateway/__test__/ScanGatewayQR.test.js +12 -19
  134. package/src/screens/AddNewGateway/__test__/ScanModbusQR.test.js +6 -16
  135. package/src/screens/AddNewGateway/__test__/ScanWifiDeviceQR.test.js +4 -15
  136. package/src/screens/AddNewGateway/__test__/SelectDeviceSubUnit.test.js +3 -3
  137. package/src/screens/AddNewGateway/__test__/SelectDeviceType.test.js +18 -10
  138. package/src/screens/AddNewGateway/__test__/SelectDeviceUnit.test.js +1 -1
  139. package/src/screens/AddNewGateway/__test__/SelectModbusGateway.test.js +12 -9
  140. package/src/screens/AddNewGateway/__test__/SelectZigbeeGateway.test.js +12 -9
  141. package/src/screens/AddNewGateway/__test__/ShareWifiPassword.test.js +7 -21
  142. package/src/screens/AddNewGateway/hooks/__Tests__/index.test.js +1 -10
  143. package/src/screens/AllGateway/DetailConfigActionInternal/__test__/index.test.js +0 -20
  144. package/src/screens/AllGateway/DetailConfigActionModbus/__test__/index.test.js +7 -24
  145. package/src/screens/AllGateway/DeviceGatewayInfo/__test__/index.test.js +0 -17
  146. package/src/screens/AllGateway/DeviceInternalDetail/__test__/index.test.js +84 -100
  147. package/src/screens/AllGateway/DeviceModbusDetail/__test__/index.test.js +64 -82
  148. package/src/screens/AllGateway/DeviceZigbeeDetail/__test__/index.test.js +36 -55
  149. package/src/screens/AllGateway/GatewayConnectionMethods/__test__/index.test.js +9 -18
  150. package/src/screens/AllGateway/GatewayDetail/__test__/index.test.js +10 -37
  151. package/src/screens/AllGateway/GatewayInfo/__test__/index.test.js +7 -32
  152. package/src/screens/AllGateway/__test__/index.test.js +1 -14
  153. package/src/screens/AllGateway/components/GatewayItem/__test__/index.test.js +0 -12
  154. package/src/screens/AllGateway/components/TabPaneCT/__test__/index.test.js +1 -13
  155. package/src/screens/AllGateway/components/TabPaneCT/index.js +1 -1
  156. package/src/screens/AllGateway/hooks/__test__/index.test.js +1 -8
  157. package/src/screens/AllGateway/test-utils.js +1 -1
  158. package/src/screens/Automate/AddNewAction/NewActionWrapper.js +2 -2
  159. package/src/screens/Automate/AddNewAction/SetupConfigCondition.js +27 -28
  160. package/src/screens/Automate/AddNewAction/__test__/ChooseAction.test.js +3 -3
  161. package/src/screens/Automate/AddNewAction/__test__/ChooseConfig.test.js +8 -5
  162. package/src/screens/Automate/AddNewAction/__test__/SelectControlDevices.test.js +2 -2
  163. package/src/screens/Automate/AddNewAction/__test__/SelectMonitorDevices.test.js +1 -18
  164. package/src/screens/Automate/AddNewAction/__test__/SetupConfigCondition.test.js +17 -15
  165. package/src/screens/Automate/AddNewAutoSmart/__test__/AddNewAutoSmart.test.js +4 -4
  166. package/src/screens/Automate/EditActionsList/__tests__/UpdateActionScript.test.js +38 -55
  167. package/src/screens/Automate/EditActionsList/__tests__/UpdateDelayScript.test.js +0 -18
  168. package/src/screens/Automate/EditActionsList/__tests__/UpdateNotifyScript.test.js +1 -19
  169. package/src/screens/Automate/EditActionsList/__tests__/index.test.js +14 -11
  170. package/src/screens/Automate/OneTap/__test__/AddNewOneTap.test.js +3 -3
  171. package/src/screens/Automate/Scenario/__test__/AddNewOneTap.test.js +2 -2
  172. package/src/screens/Automate/ScriptDetail/Components/AddActionScript.js +2 -2
  173. package/src/screens/Automate/ScriptDetail/__test__/index.test.js +33 -25
  174. package/src/screens/Automate/ScriptDetail/index.js +5 -6
  175. package/src/screens/Automate/SetSchedule/__test__/index.test.js +4 -4
  176. package/src/screens/Automate/SetSchedule/components/RowItem.js +3 -3
  177. package/src/screens/Automate/__test__/MultiUnits.test.js +5 -5
  178. package/src/screens/Automate/__test__/index.test.js +6 -6
  179. package/src/screens/Automate/index.js +2 -2
  180. package/src/screens/ChangePosition/__test__/index.test.js +1 -14
  181. package/src/screens/ConfirmUnitDeletion/__test__/ConfirmUnitDeletion.test.js +0 -12
  182. package/src/screens/Device/EditDevice/__test__/EditDevice.test.js +1 -11
  183. package/src/screens/Device/EditDevice/index.js +2 -2
  184. package/src/screens/Device/__test__/detail.test.js +11 -11
  185. package/src/screens/Device/__test__/sensorDisplayItem.test.js +3 -15
  186. package/src/screens/Device/components/SensorDisplayItem.js +23 -5
  187. package/src/screens/Device/components/__test__/VisualChart.test.js +2 -9
  188. package/src/screens/Device/detail.js +11 -10
  189. package/src/screens/Drawer/Drawer.test.js +3 -11
  190. package/src/screens/Drawer/index.js +3 -4
  191. package/src/screens/EmergencyContacts/EmergencyContactsList.js +4 -8
  192. package/src/screens/EmergencyContacts/EmergencyContactsSelectContacts.js +3 -3
  193. package/src/screens/EmergencyContacts/__test__/EmergencyContactAddNew.test.js +4 -17
  194. package/src/screens/EmergencyContacts/__test__/EmergencyContactList.test.js +3 -14
  195. package/src/screens/EmergencyContacts/__test__/EmergencyContactsSelectContacts.test.js +0 -10
  196. package/src/screens/EmergencySetting/components/DropDownItem.js +2 -2
  197. package/src/screens/EnterPassword/__test__/EnterPassword.test.js +4 -17
  198. package/src/screens/GuestInfo/__test__/index.test.js +0 -11
  199. package/src/screens/GuestInfo/components/RowGuestInfo.js +2 -2
  200. package/src/screens/GuestInfo/index.js +2 -2
  201. package/src/screens/HanetCamera/Detail.js +2 -2
  202. package/src/screens/HanetCamera/ManageAccess.js +3 -4
  203. package/src/screens/HanetCamera/MemberInfo.js +4 -4
  204. package/src/screens/HanetCamera/__test__/CaptureFaceID.test.js +2 -16
  205. package/src/screens/HanetCamera/__test__/Detail.test.js +1 -12
  206. package/src/screens/HanetCamera/__test__/ManageAccess.test.js +5 -16
  207. package/src/screens/HanetCamera/__test__/MemberInfo.test.js +5 -18
  208. package/src/screens/HanetCamera/components/RequestFaceIDPopup.js +2 -2
  209. package/src/screens/ManageAccess/__test__/ManageAccess.test.js +3 -19
  210. package/src/screens/ManageAccess/index.js +3 -3
  211. package/src/screens/MoveToAnotherSubUnit/__test__/index.test.js +5 -5
  212. package/src/screens/Notification/__test__/NotificationItem.test.js +9 -19
  213. package/src/screens/Notification/index.js +3 -3
  214. package/src/screens/PlayBackCamera/Styles/index.js +2 -4
  215. package/src/screens/PlayBackCamera/Timer.js +65 -47
  216. package/src/screens/PlayBackCamera/__test__/index.test.js +32 -33
  217. package/src/screens/PlayBackCamera/index.js +115 -112
  218. package/src/screens/ScanChipQR/components/QRScan/__test__/QRScan.test.js +0 -11
  219. package/src/screens/ScanChipQR/components/QRScan/index.js +3 -3
  220. package/src/screens/SelectUnit/__test__/index.test.js +1 -21
  221. package/src/screens/SelectUnit/index.js +2 -2
  222. package/src/screens/SharedUnit/TabHeader.js +2 -2
  223. package/src/screens/Sharing/Components/EndDevice.js +3 -3
  224. package/src/screens/Sharing/UnitMemberList.js +2 -2
  225. package/src/screens/Sharing/__test__/InfoMemberUnit.test.js +9 -4
  226. package/src/screens/Sharing/__test__/SelectShareDevice.test.js +2 -15
  227. package/src/screens/Sharing/__test__/SelectUser.test.js +2 -22
  228. package/src/screens/Sharing/__test__/UnitMemberList.test.js +2 -2
  229. package/src/screens/Sharing/__test__/UpdateShareDevice.test.js +4 -17
  230. package/src/screens/Sharing/hooks/__test__/index.test.js +2 -13
  231. package/src/screens/SmartAccount/Connecting/index.js +0 -2
  232. package/src/screens/SmartAccount/ListDevice/__test__/ListDevice.test.js +3 -18
  233. package/src/screens/SmartAccount/SuccessfullyConnected/__test__/SuccessfullyConnected.test.js +11 -21
  234. package/src/screens/SmartAccount/SuccessfullyConnected/index.js +3 -4
  235. package/src/screens/SmartAccount/__test__/Connecting.test.js +30 -36
  236. package/src/screens/SmartAccount/__test__/SmartAccount.test.js +12 -21
  237. package/src/screens/SmartIr/__test__/GroupButtonByType.test.js +7 -17
  238. package/src/screens/SmartIr/__test__/SelectBrand.test.js +1 -11
  239. package/src/screens/SmartIr/__test__/SelectDeviceType.test.js +1 -12
  240. package/src/screens/SmartIr/__test__/SmartIr.test.js +3 -11
  241. package/src/screens/SmartIr/components/GroupButtonByType/GroupButtonByType.js +3 -3
  242. package/src/screens/SmartIr/components/SelectBrand.js +2 -2
  243. package/src/screens/SubUnit/AddSubUnit.js +1 -0
  244. package/src/screens/SubUnit/EditSubUnit.js +3 -2
  245. package/src/screens/SubUnit/ManageSubUnit.js +4 -5
  246. package/src/screens/SubUnit/__test__/AddSubUnit.test.js +9 -31
  247. package/src/screens/SubUnit/__test__/Detail.test.js +4 -28
  248. package/src/screens/SubUnit/__test__/EditSubUnit.test.js +12 -30
  249. package/src/screens/SubUnit/__test__/ManageSubUnit.test.js +2 -2
  250. package/src/screens/SubUnit/hooks/__test__/useManageSubUnit.test.js +0 -12
  251. package/src/screens/SyncLGDevice/__test__/AddLGDevice.test.js +7 -20
  252. package/src/screens/Template/__test__/EditTemplate.test.js +2 -13
  253. package/src/screens/Template/__test__/GatewayList.test.js +0 -9
  254. package/src/screens/Template/__test__/detail.test.js +4 -4
  255. package/src/screens/Template/__test__/index.test.js +1 -12
  256. package/src/screens/Template/detail.js +2 -2
  257. package/src/screens/Unit/SelectAddToFavorites.js +2 -2
  258. package/src/screens/Unit/SelectAddress.js +4 -4
  259. package/src/screens/Unit/SmartAccountItem.js +2 -2
  260. package/src/screens/Unit/Summaries.js +3 -2
  261. package/src/screens/Unit/__test__/AddMenu.test.js +5 -2
  262. package/src/screens/Unit/__test__/CheckSendEmail.test.js +0 -12
  263. package/src/screens/Unit/__test__/ChooseLocation.test.js +1 -4
  264. package/src/screens/Unit/__test__/Detail.test.js +5 -5
  265. package/src/screens/Unit/__test__/ManageUnit.test.js +2 -17
  266. package/src/screens/Unit/__test__/MoreMenu.test.js +1 -11
  267. package/src/screens/Unit/__test__/SelectAddToFavorites.test.js +3 -14
  268. package/src/screens/Unit/__test__/SelectAddress.test.js +4 -17
  269. package/src/screens/Unit/__test__/SmartAccount.test.js +14 -11
  270. package/src/screens/Unit/__test__/SmartAccountItem.test.js +0 -11
  271. package/src/screens/Unit/__test__/Summaries.test.js +2 -14
  272. package/src/screens/Unit/components/AutomateScript/index.js +2 -2
  273. package/src/screens/Unit/components/ButtonWrapper/index.js +3 -4
  274. package/src/screens/Unit/components/Header/index.js +3 -3
  275. package/src/screens/Unit/components/SharedUnit/index.js +5 -5
  276. package/src/screens/Unit/components/__test__/Header.test.js +1 -14
  277. package/src/screens/Unit/components/__test__/MyUnitDevice.test.js +1 -11
  278. package/src/screens/Unit/components/__test__/SharedUnit.test.js +1 -11
  279. package/src/screens/UnitSummary/__test__/index.test.js +51 -17
  280. package/src/screens/UnitSummary/components/3PPowerConsumption/__test__/3PPowerConsumption.test.js +0 -12
  281. package/src/screens/UnitSummary/components/3PPowerConsumption/index.js +10 -23
  282. package/src/screens/UnitSummary/components/AirQuality/__test__/index.test.js +1 -7
  283. package/src/screens/UnitSummary/components/AirQuality/index.js +3 -3
  284. package/src/screens/UnitSummary/components/PowerConsumption/__test__/PowerConsumption.test.js +38 -14
  285. package/src/screens/UnitSummary/components/PowerConsumption/index.js +21 -30
  286. package/src/screens/UnitSummary/components/RunningDevices/__test__/index.test.js +1 -16
  287. package/src/screens/UnitSummary/components/Temperature/index.js +5 -1
  288. package/src/screens/UnitSummary/components/UvIndex/__test__/index.test.js +0 -8
  289. package/src/screens/UnitSummary/components/UvIndex/index.js +2 -2
  290. package/src/screens/UnitSummary/components/WaterQuality/Item/index.js +2 -2
  291. package/src/screens/UnitSummary/components/WaterQuality/__test__/index.test.js +14 -18
  292. package/src/screens/UnitSummary/index.js +4 -8
  293. package/src/utils/Converter/__test__/timer.test.js +8 -0
  294. package/src/utils/Functions/preloadImages.js +13 -14
  295. package/src/utils/Storage.js +1 -1
  296. package/src/commons/Device/HistoryChart.js +0 -225
  297. package/src/commons/Device/WindSpeed/LinearChart/__test__/LinearChart.test.js +0 -48
  298. package/src/commons/Device/WindSpeed/LinearChart/index.js +0 -155
  299. package/src/commons/UnitSummary/ConfigHistoryChart/__test__/ConfigHistoryChart.test.js +0 -289
  300. package/src/screens/Device/__test__/DetailHistoryChart.test.js +0 -69
  301. package/src/screens/Device/components/DetailHistoryChart.js +0 -118
  302. package/src/screens/UnitSummary/components/Temperature/ChartAverage/index.js +0 -62
  303. package/src/screens/UnitSummary/components/Temperature/__test__/ChartAverage.test.js +0 -17
  304. package/src/utils/dateHelper/getTickValues.js +0 -22
@@ -16,19 +16,8 @@ import { Action } from '../../../../context/actionType';
16
16
 
17
17
  const mock = new MockAdapter(api.axiosInstance);
18
18
 
19
- const mockedNavigate = jest.fn();
20
19
  const mockSetAction = jest.fn();
21
20
 
22
- jest.mock('@react-navigation/native', () => {
23
- return {
24
- ...jest.requireActual('@react-navigation/native'),
25
- useNavigation: () => ({
26
- navigate: mockedNavigate,
27
- }),
28
- useIsFocused: () => true,
29
- };
30
- });
31
-
32
21
  jest.mock('react', () => {
33
22
  return {
34
23
  ...jest.requireActual('react'),
@@ -74,7 +63,7 @@ describe('Test MyPinnedSharedUnit', () => {
74
63
  await act(async () => {
75
64
  goToAllSharedUnits.props.onPress();
76
65
  });
77
- expect(mockedNavigate).toHaveBeenCalled();
66
+ expect(global.mockedNavigate).toHaveBeenCalled();
78
67
  expect(mockSetAction).toBeCalledWith(
79
68
  Action.IS_CHECK_CLEAR_CACHE_UNITS,
80
69
  false
@@ -10,22 +10,12 @@ import { mockSCStore } from '../../../../context/mockStore';
10
10
  import api from '../../../../utils/Apis/axios';
11
11
  import { API } from '../../../../configs';
12
12
  import Routes from '../../../../utils/Route';
13
+ import { flushPromises } from '../../../../screens/AllGateway/test-utils';
14
+ import FastImage from 'react-native-fast-image';
15
+ import { removeMultiple, STORAGE_KEY } from '../../../../utils/Storage';
13
16
 
14
17
  const mock = new MockAdapter(api.axiosInstance);
15
18
 
16
- const mockedNavigate = jest.fn();
17
-
18
- jest.mock('@react-navigation/native', () => {
19
- return {
20
- ...jest.requireActual('@react-navigation/native'),
21
- useNavigation: () => ({
22
- navigate: mockedNavigate,
23
- }),
24
- useIsFocused: () => true,
25
- useFocusEffect: jest.fn(),
26
- };
27
- });
28
-
29
19
  const wrapComponent = (data = {}) => (
30
20
  <SCProvider initState={mockSCStore(data)}>
31
21
  <MyUnit refreshing={true} />
@@ -34,7 +24,7 @@ const wrapComponent = (data = {}) => (
34
24
 
35
25
  describe('Test MyUnit', () => {
36
26
  let tree;
37
- let storeData = {
27
+ let stateData = {
38
28
  app: { isDeleteUnitSuccessFully: true, isNeedUpdateCache: true },
39
29
  };
40
30
  let data = [
@@ -69,9 +59,10 @@ describe('Test MyUnit', () => {
69
59
  },
70
60
  ];
71
61
 
72
- beforeEach(() => {
62
+ beforeEach(async () => {
73
63
  mock.resetHistory();
74
- mockedNavigate.mockClear();
64
+ FastImage.preload.mockClear();
65
+ await removeMultiple([STORAGE_KEY.IS_FIRST_TIME_LOAD_MY_UNITS]);
75
66
  });
76
67
 
77
68
  const getElement = (instance) => {
@@ -89,7 +80,7 @@ describe('Test MyUnit', () => {
89
80
 
90
81
  it('MyUnit no Unit', async () => {
91
82
  await act(async () => {
92
- tree = await renderer.create(wrapComponent(storeData));
83
+ tree = await renderer.create(wrapComponent(stateData));
93
84
  });
94
85
  const instance = tree.root;
95
86
  const { textNoUnit } = getElement(instance);
@@ -99,8 +90,9 @@ describe('Test MyUnit', () => {
99
90
  it('MyUnit with unit', async () => {
100
91
  mock.onGet(API.UNIT.MY_UNITS()).replyOnce(200, data);
101
92
  await act(async () => {
102
- tree = await renderer.create(wrapComponent(storeData));
93
+ tree = await renderer.create(wrapComponent(stateData));
103
94
  });
95
+ await flushPromises();
104
96
  const instance = tree.root;
105
97
  const devices = instance.findAllByType(MyUnitDevice);
106
98
  expect(devices).toHaveLength(2);
@@ -111,7 +103,7 @@ describe('Test MyUnit', () => {
111
103
  await act(async () => {
112
104
  await button.props.onPress(data[0]);
113
105
  });
114
- expect(mockedNavigate).toBeCalledWith(Routes.UnitStack, {
106
+ expect(global.mockedNavigate).toBeCalledWith(Routes.UnitStack, {
115
107
  params: { unitId: 1 },
116
108
  screen: Routes.UnitDetail,
117
109
  });
@@ -131,9 +123,24 @@ describe('Test MyUnit', () => {
131
123
  await act(async () => {
132
124
  await button.props.onPress(data[1]);
133
125
  });
134
- expect(mockedNavigate).toBeCalledWith('UnitStack', {
126
+ expect(global.mockedNavigate).toBeCalledWith('UnitStack', {
135
127
  params: { unitId: 2 },
136
128
  screen: 'UnitDetail',
137
129
  });
138
130
  });
131
+
132
+ it('Test preload image', async () => {
133
+ mock.onGet(API.UNIT.MY_UNITS()).replyOnce(200, [data[1]]);
134
+ mock.onGet(API.UNIT.UNIT_DETAIL(2)).replyOnce(200, {
135
+ stations: [{ background: 'background' }],
136
+ });
137
+ await act(async () => {
138
+ tree = await renderer.create(
139
+ wrapComponent({ app: { isNeedUpdateCache: false } })
140
+ );
141
+ });
142
+ expect(FastImage.preload).toHaveBeenCalledWith([
143
+ { uri: 'background', priority: FastImage.priority.high },
144
+ ]);
145
+ });
139
146
  });
@@ -208,7 +208,6 @@ const MyUnit = ({ refreshing }) => {
208
208
  <View style={styles.container}>
209
209
  {myUnits.length ? (
210
210
  <Carousel
211
- ref={carouselRef}
212
211
  layout={'default'}
213
212
  data={myUnits}
214
213
  sliderWidth={screenWidth}
@@ -1,13 +1,13 @@
1
1
  import React, { memo } from 'react';
2
2
  import { StyleSheet, TouchableOpacity } from 'react-native';
3
- import { IconOutline } from '@ant-design/icons-react-native';
3
+ import AntDesign from 'react-native-vector-icons/AntDesign';
4
4
  import { Colors } from '../../configs';
5
5
 
6
6
  const DateTimeButton = memo(({ onPress, style, children }) => {
7
7
  return (
8
8
  <TouchableOpacity style={[styles.dateSelect, style]} onPress={onPress}>
9
9
  {children}
10
- <IconOutline style={styles.iconDateTime} name={'calendar'} />
10
+ <AntDesign style={styles.iconDateTime} name={'calendar'} />
11
11
  </TouchableOpacity>
12
12
  );
13
13
  });
@@ -1,6 +1,6 @@
1
1
  import React, { memo } from 'react';
2
2
  import { StyleSheet, View } from 'react-native';
3
- import { IconOutline } from '@ant-design/icons-react-native';
3
+ import AntDesign from 'react-native-vector-icons/AntDesign';
4
4
  import { useTranslations } from '../../hooks/Common/useTranslations';
5
5
  import { Colors } from '../../configs';
6
6
  import Text from '../../commons/Text';
@@ -30,7 +30,7 @@ const ConnectedViewHeader = memo(
30
30
  return (
31
31
  <View style={styles.statusContainer}>
32
32
  <View style={styles.connectStatus}>
33
- <IconOutline name={'wifi'} color={Colors.Green6} size={16} />
33
+ <AntDesign name={'wifi'} color={Colors.Green6} size={16} />
34
34
  <DisplayTextConnected type={type} />
35
35
  </View>
36
36
  {isDisplayTime && (
@@ -1,6 +1,6 @@
1
1
  import React, { memo } from 'react';
2
2
  import { StyleSheet, View } from 'react-native';
3
- import { IconOutline } from '@ant-design/icons-react-native';
3
+ import AntDesign from 'react-native-vector-icons/AntDesign';
4
4
  import { useTranslations } from '../../hooks/Common/useTranslations';
5
5
 
6
6
  import { Colors } from '../../configs';
@@ -57,7 +57,7 @@ const DisconnectedView = memo(({ sensor, type, isDeviceHasBle }) => {
57
57
  </View>
58
58
  <View style={styles.disconnectSuggestionContainer} testID={'suggestions'}>
59
59
  <View style={styles.row}>
60
- <IconOutline name={'alert'} size={16} />
60
+ <AntDesign name={'alert'} size={16} />
61
61
  <Text bold style={styles.boldText}>
62
62
  {t('suggestions')}:
63
63
  </Text>
@@ -6,7 +6,7 @@ import MediaPlayer from '../../MediaPlayer';
6
6
  import { standardizeCameraScreenSize } from '../../../utils/Utils';
7
7
  import { Colors, Device } from '../../../configs';
8
8
  import { RowUser } from '../../RowUser';
9
- import { IconFill, IconOutline } from '@ant-design/icons-react-native';
9
+ import AntDesign from 'react-native-vector-icons/AntDesign';
10
10
  import { useEmeragencyContacts } from '../../../screens/EmergencyContacts/hook';
11
11
  import { useIsFocused } from '@react-navigation/native';
12
12
 
@@ -49,12 +49,12 @@ const EmergencyDetail = memo(({ item }) => {
49
49
  key={contact.id.toString()}
50
50
  index={index}
51
51
  leftIcon={
52
- <IconOutline name={'user'} size={20} color={Colors.White} />
52
+ <AntDesign name={'user'} size={20} color={Colors.White} />
53
53
  }
54
54
  text={contact.name}
55
55
  rightComponent={
56
56
  <View style={styles.rightComponent}>
57
- <IconFill
57
+ <AntDesign
58
58
  name={'phone'}
59
59
  size={20}
60
60
  color={Colors.Gray9}
@@ -12,11 +12,11 @@ const wrapComponent = (item) => (
12
12
  </SCProvider>
13
13
  );
14
14
 
15
- const mockUseIsFocused = jest.fn();
15
+ const mockedUseIsFocused = jest.fn();
16
16
  jest.mock('@react-navigation/core', () => {
17
17
  return {
18
18
  ...jest.requireActual('@react-navigation/core'),
19
- useIsFocused: mockUseIsFocused,
19
+ useIsFocused: mockedUseIsFocused,
20
20
  };
21
21
  });
22
22
 
@@ -5,7 +5,7 @@ import AlertStatusMachine from './WaterPurifierStatus/AlertStatusMachine';
5
5
  import { useBoolean } from '../../hooks/Common';
6
6
  import Text from '../Text';
7
7
  import Routes from '../../utils/Route';
8
- import { IconFill, IconOutline } from '@ant-design/icons-react-native';
8
+ import AntDesign from 'react-native-vector-icons/AntDesign';
9
9
  import { Colors, Constants } from '../../configs';
10
10
  import { useTranslations } from '../../hooks/Common/useTranslations';
11
11
  import { AccessibilityLabel } from '../../configs/Constants';
@@ -75,7 +75,7 @@ const FlatListItems = memo(({ data, style, title, offsetTitle }) => {
75
75
  style={styles.iconInfo}
76
76
  accessibilityLabel={AccessibilityLabel.TOUCH_INFO_FLAT_LIST_ITEM}
77
77
  >
78
- <IconOutline name={'info-circle'} size={16} color={Colors.Gray8} />
78
+ <AntDesign name={'info-circle'} size={16} color={Colors.Gray8} />
79
79
  </TouchableOpacity>
80
80
  )}
81
81
  </View>
@@ -97,7 +97,7 @@ const FlatListItems = memo(({ data, style, title, offsetTitle }) => {
97
97
  onPress={() => setViewFull(true)}
98
98
  >
99
99
  <Text style={styles.textSeeMore}>{t('see_more')}</Text>
100
- <IconFill name={'caret-down'} color={Colors.Gray8} size={16} />
100
+ <AntDesign name={'caretdown'} color={Colors.Gray8} size={16} />
101
101
  </TouchableOpacity>
102
102
  )}
103
103
 
@@ -5,7 +5,7 @@ import {
5
5
  TouchableWithoutFeedback,
6
6
  View,
7
7
  } from 'react-native';
8
- import { IconFill, IconOutline } from '@ant-design/icons-react-native';
8
+ import AntDesign from 'react-native-vector-icons/AntDesign';
9
9
  import { useNavigation } from '@react-navigation/native';
10
10
 
11
11
  import Text from '../../Text';
@@ -35,7 +35,7 @@ const ItemHanetDevice = memo(
35
35
  return iconKit ? (
36
36
  <FImage source={{ uri: iconKit }} style={styles.iconSensor} />
37
37
  ) : (
38
- <IconFill name={svgMain} size={32} color={Colors.Red6} />
38
+ <AntDesign name={svgMain} size={32} color={Colors.Red6} />
39
39
  );
40
40
  };
41
41
 
@@ -58,7 +58,7 @@ const ItemHanetDevice = memo(
58
58
  {title}
59
59
  </Text>
60
60
  <View style={styles.row}>
61
- <IconOutline name="right" size={12} />
61
+ <AntDesign name="right" size={12} />
62
62
  </View>
63
63
  </TouchableOpacity>
64
64
  </View>
@@ -4,6 +4,7 @@ import renderer, { act } from 'react-test-renderer';
4
4
  import ItemHanetDevice from './ItemHanetDevice';
5
5
  import { SCProvider } from '../../../context';
6
6
  import { mockSCStore } from '../../../context/mockStore';
7
+ import { useNavigation } from '@react-navigation/native';
7
8
 
8
9
  const wrapComponent = (props) => (
9
10
  <SCProvider initState={mockSCStore({})}>
@@ -11,18 +12,9 @@ const wrapComponent = (props) => (
11
12
  </SCProvider>
12
13
  );
13
14
 
14
- const mockNavigate = jest.fn();
15
- jest.mock('@react-navigation/native', () => {
16
- return {
17
- ...jest.requireActual('@react-navigation/native'),
18
- useNavigation: () => ({
19
- navigate: mockNavigate,
20
- }),
21
- };
22
- });
23
-
24
15
  describe('Test ItemHanetDevice', () => {
25
16
  let tree, props;
17
+ const { navigate } = useNavigation();
26
18
 
27
19
  beforeEach(() => {
28
20
  props = {
@@ -43,7 +35,7 @@ describe('Test ItemHanetDevice', () => {
43
35
  await act(async () => {
44
36
  tree = touches[0].props.onPress();
45
37
  });
46
- expect(mockNavigate).toBeCalled();
38
+ expect(navigate).toBeCalled();
47
39
  });
48
40
 
49
41
  it('render ItemHanetDevice sensor has icon', async () => {
@@ -123,7 +123,7 @@ const HorizontalBarChart = memo(({ datas, config }) => {
123
123
  y: item.y,
124
124
  };
125
125
  });
126
- const dataX = (datas[0].data || []).map((item) => item.x);
126
+ const dataX = (datas[0]?.data || []).map((item) => item.x);
127
127
  const maxY = getMaxValueIndex(dataY);
128
128
  if (!isEmpty(maxY.max)) {
129
129
  dataY.splice(maxY._index, 1, { ...maxY.max, color: Colors.Primary });
@@ -1,6 +1,6 @@
1
1
  import React, { memo } from 'react';
2
2
  import { TouchableWithoutFeedback, View } from 'react-native';
3
- import { IconOutline } from '@ant-design/icons-react-native';
3
+ import AntDesign from 'react-native-vector-icons/AntDesign';
4
4
  import Text from '../../Text';
5
5
 
6
6
  import { Colors } from '../../../configs';
@@ -16,7 +16,7 @@ const ItemAddNew = memo(({ title, onAddNew, wrapStyle }) => {
16
16
  <View style={[styles.container, wrapStyle]}>
17
17
  <View style={styles.boxIcon}>
18
18
  <View style={styles.buttonPlus}>
19
- <IconOutline name="plus" size={22} color={Colors.Gray8} />
19
+ <AntDesign name="plus" size={22} color={Colors.Gray8} />
20
20
  </View>
21
21
  </View>
22
22
  <View>
@@ -1,7 +1,7 @@
1
1
  import React, { memo, useCallback, useMemo } from 'react';
2
2
  import { Platform, StyleSheet, TouchableOpacity, View } from 'react-native';
3
3
  import Routes from '../../utils/Route';
4
- import { IconOutline } from '@ant-design/icons-react-native';
4
+ import AntDesign from 'react-native-vector-icons/AntDesign';
5
5
  import { useNavigation } from '@react-navigation/native';
6
6
  import { useTranslations } from '../../hooks/Common/useTranslations';
7
7
  import ItemQuickAction from '../../commons/Action/ItemQuickAction';
@@ -146,7 +146,7 @@ const ItemDevice = memo(
146
146
  >
147
147
  {description || textConnected}
148
148
  </Text>
149
- <IconOutline name="right" size={12} />
149
+ <AntDesign name="right" size={12} />
150
150
  </View>
151
151
  </TouchableOpacity>
152
152
  </ItemDeviceWrapper>
@@ -0,0 +1,154 @@
1
+ import React, { memo, useCallback, useState, useMemo, useEffect } from 'react';
2
+ import { StyleSheet, View } from 'react-native';
3
+ import moment from 'moment';
4
+ import { useTranslations } from '../../hooks/Common/useTranslations';
5
+
6
+ import { Colors } from '../../configs';
7
+ import Text from '../Text';
8
+ import Button from '../Button';
9
+ import CurrencyInput from '../Form/CurrencyInput';
10
+ import DateTimeRangeChange from '../DateTimeRangeChange';
11
+ import HorizontalBarChart from './HorizontalBarChart';
12
+ import ChartAggregationOption from '../ChartAggregationOption';
13
+ import { formatMoney } from '../../utils/Utils';
14
+
15
+ const PowerConsumptionChart = memo(
16
+ ({
17
+ datas,
18
+ chartConfig,
19
+ setChartConfig,
20
+ style,
21
+ groupBy,
22
+ setGroupBy,
23
+ onChangeDate,
24
+ }) => {
25
+ const t = useTranslations();
26
+ const [price, setPrice] = useState(null);
27
+
28
+ const onCalculateCost = useCallback(() => {
29
+ setChartConfig((config) => ({
30
+ ...config,
31
+ price,
32
+ }));
33
+ }, [setChartConfig, price]);
34
+
35
+ const totalPrice = useMemo(() => {
36
+ const { price: chartPrice } = chartConfig;
37
+ if (chartPrice === '' || isNaN(chartPrice)) {
38
+ return null;
39
+ }
40
+ const sum = datas[0].data.reduce((a, b) => a + b.y, 0);
41
+ const roundedSum = sum * chartPrice;
42
+ return roundedSum.toFixed();
43
+ }, [datas, chartConfig]);
44
+
45
+ const renderChart = useMemo(() => {
46
+ return <HorizontalBarChart datas={datas} config={chartConfig} />;
47
+ }, [chartConfig, datas]);
48
+
49
+ const [value, setValue] = useState([
50
+ moment().subtract(6, 'days'),
51
+ moment(),
52
+ ]);
53
+
54
+ useEffect(() => {
55
+ onChangeDate(value[0], value[1]);
56
+ }, [onChangeDate, value]);
57
+
58
+ const selectStart = (date) => {
59
+ setValue((state) => [date, state[1]]);
60
+ };
61
+ const selectEnd = (date) => {
62
+ setValue((state) => [state[0], date]);
63
+ };
64
+
65
+ return (
66
+ <View style={style}>
67
+ <View style={styles.historyView}>
68
+ <View style={styles.titleHistory}>
69
+ <Text size={20} semibold color={Colors.Gray9}>
70
+ {t('history')}
71
+ </Text>
72
+
73
+ <ChartAggregationOption groupBy={groupBy} setGroupBy={setGroupBy} />
74
+ </View>
75
+ {groupBy === 'date' && (
76
+ <DateTimeRangeChange
77
+ startTime={value[0]}
78
+ endTime={value[1]}
79
+ selectStart={selectStart}
80
+ selectEnd={selectEnd}
81
+ />
82
+ )}
83
+ </View>
84
+
85
+ <View style={styles.wrapCalculateCost}>
86
+ <Text type="H4">
87
+ {t('input_price_to_calculate_electricity_cost')}
88
+ </Text>
89
+ <View style={styles.row}>
90
+ <CurrencyInput
91
+ value={price}
92
+ onChange={setPrice}
93
+ minValue={0}
94
+ maxValue={100000000}
95
+ placeholder={'0'}
96
+ onSubmitEditing={onCalculateCost}
97
+ />
98
+ <Button
99
+ type="primary"
100
+ title={t('calculate_cost')}
101
+ onPress={onCalculateCost}
102
+ style={styles.buttonCalculate}
103
+ textSemiBold={false}
104
+ />
105
+ </View>
106
+ </View>
107
+
108
+ {renderChart}
109
+ {!!chartConfig.price && (
110
+ <Text type="H4">
111
+ {t('total_power_price')} <Text bold>{formatMoney(totalPrice)}</Text>
112
+ </Text>
113
+ )}
114
+ </View>
115
+ );
116
+ }
117
+ );
118
+
119
+ export default PowerConsumptionChart;
120
+
121
+ const styles = StyleSheet.create({
122
+ historyView: {
123
+ paddingTop: 16,
124
+ },
125
+ titleHistory: {
126
+ flexDirection: 'row',
127
+ alignItems: 'center',
128
+ justifyContent: 'space-between',
129
+ },
130
+ chartInfo: {
131
+ flexDirection: 'row',
132
+ justifyContent: 'center',
133
+ alignItems: 'center',
134
+ },
135
+ chartContainer: {
136
+ marginLeft: -8,
137
+ },
138
+ chart: {
139
+ height: 300,
140
+ },
141
+ wrapCalculateCost: {
142
+ marginTop: 12,
143
+ },
144
+ row: {
145
+ flexDirection: 'row',
146
+ alignItems: 'center',
147
+ marginTop: 8,
148
+ },
149
+ buttonCalculate: {
150
+ width: null,
151
+ flex: null,
152
+ paddingHorizontal: 12,
153
+ },
154
+ });
@@ -1,7 +1,7 @@
1
1
  import React, { memo, useState } from 'react';
2
2
  import { View, TouchableOpacity } from 'react-native';
3
3
  import { useTranslations } from '../../../hooks/Common/useTranslations';
4
- import { Icon } from '@ant-design/react-native';
4
+ import AntDesign from 'react-native-vector-icons/AntDesign';
5
5
  import { Slider } from '@miblanchard/react-native-slider';
6
6
 
7
7
  import Text from '../../Text';
@@ -44,7 +44,7 @@ const SonosSpeaker = memo(() => {
44
44
  </TouchableOpacity>
45
45
  <View style={styles.threeButton}>
46
46
  <TouchableOpacity style={styles.buttonLeft}>
47
- <Icon name={'backward'} size={35} color={Colors.Black} />
47
+ <AntDesign name={'backward'} size={35} color={Colors.Black} />
48
48
  </TouchableOpacity>
49
49
  <TouchableOpacity
50
50
  style={styles.buttonCenter}
@@ -53,7 +53,7 @@ const SonosSpeaker = memo(() => {
53
53
  {active ? <SvgButtonPauseActive /> : <SvgButtonPauseNotActive />}
54
54
  </TouchableOpacity>
55
55
  <TouchableOpacity style={styles.buttonRight}>
56
- <Icon name={'forward'} size={35} color={Colors.Black} />
56
+ <AntDesign name={'forward'} size={35} color={Colors.Black} />
57
57
  </TouchableOpacity>
58
58
  </View>
59
59
  </View>
@@ -1,12 +1,12 @@
1
1
  import React, { memo } from 'react';
2
2
  import { View, StyleSheet } from 'react-native';
3
3
  import Text from '../../../commons/Text';
4
- import { IconOutline } from '@ant-design/icons-react-native';
4
+ import AntDesign from 'react-native-vector-icons/AntDesign';
5
5
 
6
6
  const AlertStatusMachine = memo(({ message, style, icon }) => {
7
7
  return (
8
8
  <View style={[styles.container, style]}>
9
- <IconOutline
9
+ <AntDesign
10
10
  name={icon}
11
11
  size={20}
12
12
  color={style.borderColor}
@@ -1,6 +1,6 @@
1
1
  import React, { memo } from 'react';
2
2
  import { View, Dimensions, StyleSheet, TouchableOpacity } from 'react-native';
3
- import { IconOutline } from '@ant-design/icons-react-native';
3
+ import AntDesign from 'react-native-vector-icons/AntDesign';
4
4
  import { useNavigation } from '@react-navigation/native';
5
5
 
6
6
  import { Colors } from '../../../configs';
@@ -35,11 +35,7 @@ const QualityIndicatorItem = memo(
35
35
  onPress={() => navigation.navigate(descriptionScreen)}
36
36
  style={styles.iconInfo}
37
37
  >
38
- <IconOutline
39
- name={'info-circle'}
40
- size={18}
41
- color={Colors.Gray8}
42
- />
38
+ <AntDesign name={'info-circle'} size={18} color={Colors.Gray8} />
43
39
  </TouchableOpacity>
44
40
  )}
45
41
  </View>
@@ -3,7 +3,7 @@ import { View, TouchableOpacity } from 'react-native';
3
3
 
4
4
  import { Colors } from '../../configs';
5
5
  import Text from '../../commons/Text';
6
- import { IconOutline } from '@ant-design/icons-react-native';
6
+ import AntDesign from 'react-native-vector-icons/AntDesign';
7
7
  import styles from './styles';
8
8
  import { ModalCustom } from '../Modal';
9
9
  import Loading from '../../screens/Automate/Components/Loading';
@@ -18,7 +18,7 @@ const LoadingMessage = memo(({ visible, onClose, message }) => {
18
18
  onPress={onClose}
19
19
  >
20
20
  <Loading
21
- icon={<IconOutline name={'sync'} color={Colors.Green6} size={16} />}
21
+ icon={<AntDesign name={'sync'} color={Colors.Green6} size={16} />}
22
22
  />
23
23
  <Text type={'Body'} style={styles.text}>
24
24
  {message}
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import { StyleSheet, View } from 'react-native';
3
3
  import { ButtonPopup } from '../index';
4
4
  import { useTranslations } from '../../hooks/Common/useTranslations';
5
- import { IconOutline } from '@ant-design/icons-react-native';
5
+ import AntDesign from 'react-native-vector-icons/AntDesign';
6
6
  import Text from '../Text';
7
7
  import { Colors } from '../../configs';
8
8
 
@@ -29,7 +29,7 @@ const AlertSendConfirm = ({
29
29
  bodyStyle={styles.buttonPopupBody}
30
30
  >
31
31
  <View style={styles.firstInfo}>
32
- <IconOutline name="clock-circle" size={42} style={styles.clock} />
32
+ <AntDesign name="clock-circle" size={42} style={styles.clock} />
33
33
  <Text semibold type="H4" style={styles.textAlertWillBe}>
34
34
  {t('alert_will_be_sent_in')}
35
35
  </Text>
@@ -2,7 +2,7 @@ import React, { useMemo } from 'react';
2
2
  import { StyleSheet } from 'react-native';
3
3
  import { ButtonPopup } from '../index';
4
4
  import { useTranslations } from '../../hooks/Common/useTranslations';
5
- import { IconFill } from '@ant-design/icons-react-native';
5
+ import AntDesign from 'react-native-vector-icons/AntDesign';
6
6
  import Text from '../Text';
7
7
  import { Colors } from '../../configs';
8
8
 
@@ -59,7 +59,7 @@ const AlertSent = ({
59
59
  type="H5"
60
60
  style={styles.location}
61
61
  >{`${unit?.name} - ${station?.name}`}</Text>
62
- <IconFill name="alert" size={42} style={styles.alert} />
62
+ <AntDesign name="alert" size={42} style={styles.alert} />
63
63
  <Text semibold style={styles.textAlertSent}>
64
64
  {data.title}
65
65
  </Text>
@@ -1,5 +1,5 @@
1
1
  import React, { memo, useEffect, useState } from 'react';
2
- import { IconOutline } from '@ant-design/icons-react-native';
2
+ import AntDesign from 'react-native-vector-icons/AntDesign';
3
3
  import { TouchableOpacity, View } from 'react-native';
4
4
 
5
5
  import styles from './ChooseFieldStyles';
@@ -47,7 +47,7 @@ const ChooseUserField = ({ unit, dataItem, index, setDataForm, dataForm }) => {
47
47
  onPress={setShowFilterPopup}
48
48
  >
49
49
  <Text style={styles.value}>{choose.name}</Text>
50
- <IconOutline name="right" size={20} color={Colors.Gray8} />
50
+ <AntDesign name="right" size={20} color={Colors.Gray8} />
51
51
  </TouchableOpacity>
52
52
  <ChoosePopup
53
53
  isVisible={showFilterPopup}