@eohjsc/react-native-smart-city 0.3.90 → 0.3.92

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 (312) hide show
  1. package/package.json +1 -1
  2. package/src/Images/Common/reorder.svg +3 -0
  3. package/src/commons/ActionGroup/OnOffSmartLock/AutoLock/AutoLockStyles.js +1 -1
  4. package/src/commons/ActionGroup/OnOffSmartLock/AutoLock/__test__/index.test.js +3 -1
  5. package/src/commons/ActionGroup/OnOffSmartLock/AutoLock/index.js +3 -3
  6. package/src/commons/ActionGroup/OnOffSmartLock/PasscodeList/__test__/index.test.js +3 -10
  7. package/src/commons/ActionGroup/OnOffSmartLock/PasscodeList/index.js +1 -0
  8. package/src/commons/ActionGroup/OnOffSmartLock/SetupGeneratePasscode/SetupGeneratePasscodeStyles.js +1 -1
  9. package/src/commons/ActionGroup/OnOffTemplate/SwitchButtonTemplate.js +13 -5
  10. package/src/commons/ActionGroup/SliderRangeTemplate.js +100 -69
  11. package/src/commons/ActionGroup/SliderRangeTemplateStyles.js +27 -27
  12. package/src/commons/ActionGroup/StatesGridActionTemplate.js +4 -1
  13. package/src/commons/ActionGroup/__test__/NumberUpDownTemplate.test.js +1 -1
  14. package/src/commons/ActionGroup/__test__/OnOffTemplate.test.js +4 -1
  15. package/src/commons/ActionGroup/__test__/SliderRangeTemplate.test.js +56 -0
  16. package/src/commons/ActionGroup/__test__/StatesGridActionTemplate.test.js +2 -2
  17. package/src/commons/ActionGroup/__test__/SwitchButtonTemplate.test.js +45 -8
  18. package/src/commons/ActionGroup/__test__/index.test.js +0 -19
  19. package/src/commons/ActionGroup/index.js +0 -3
  20. package/src/commons/ActionTemplate/CurtainAction.js +5 -5
  21. package/src/commons/ActionTemplate/CurtainActionStyles.js +1 -1
  22. package/src/commons/ActionTemplate/OnOffButtonAction.js +4 -4
  23. package/src/commons/ActionTemplate/OnOffButtonActionStyles.js +1 -1
  24. package/src/commons/ActionTemplate/OnOffSimpleAction.js +4 -4
  25. package/src/commons/ActionTemplate/OnOffSimpleActionStyles.js +1 -1
  26. package/src/commons/ActionTemplate/OnOffSmartLockAction.js +4 -4
  27. package/src/commons/ActionTemplate/OnOffSmartLockActionStyles.js +1 -1
  28. package/src/commons/ActionTemplate/OneButtonAction.js +3 -3
  29. package/src/commons/ActionTemplate/OneButtonActionStyles.js +1 -1
  30. package/src/commons/ActionTemplate/ThreeButtonAction.js +5 -5
  31. package/src/commons/ActionTemplate/ThreeButtonActionStyles.js +1 -1
  32. package/src/commons/ActionTemplate/__test__/CurtainAction.test.js +1 -1
  33. package/src/commons/ActionTemplate/__test__/OnOffButtonAction.test.js +1 -1
  34. package/src/commons/ActionTemplate/__test__/OnOffSimpleAction.test.js +1 -1
  35. package/src/commons/ActionTemplate/__test__/OnOffSmartLockAction.test.js +1 -1
  36. package/src/commons/ActionTemplate/__test__/OneButtonAction.test.js +1 -1
  37. package/src/commons/ActionTemplate/__test__/ThreeButtonAction.test.js +1 -1
  38. package/src/commons/ActionTemplate/__test__/index.test.js +21 -70
  39. package/src/commons/ActionTemplate/index.js +19 -55
  40. package/src/commons/Alert/__test__/Alert.test.js +1 -1
  41. package/src/commons/Auth/AccountList.js +1 -1
  42. package/src/commons/Auth/__test__/OtpInputList.test.js +17 -19
  43. package/src/commons/Automate/ItemAutomate.js +10 -4
  44. package/src/commons/Automate/__test__/ItemAutomate.test.js +11 -11
  45. package/src/commons/BackDefault/__test__/BackDefault.test.js +1 -1
  46. package/src/commons/Button/__test__/Button.test.js +1 -1
  47. package/src/commons/ButtonPopup/__test__/ButtonPopup.test.js +1 -1
  48. package/src/commons/Calendar/__test__/Calendar.test.js +1 -1
  49. package/src/commons/ChartLoading/__test__/ChartLoading.test.js +1 -1
  50. package/src/commons/CircleButton/__test__/CircleButton.test.js +1 -1
  51. package/src/commons/CircleView/__test__/CircleView.test.js +1 -1
  52. package/src/commons/DateTimeRangeChange/__test__/DateTimeButton.test.js +4 -2
  53. package/src/commons/DateTimeRangeChange/index.js +31 -48
  54. package/src/commons/Device/DeviceAlertStatus.js +2 -1
  55. package/src/commons/Device/Emergency/__test__/EmergencyButton.test.js +2 -2
  56. package/src/commons/Device/Emergency/__test__/EmergencyDetail.test.js +1 -1
  57. package/src/commons/Device/FlatListItems.js +1 -1
  58. package/src/commons/Device/Hanet/ItemHanetDevice.test.js +2 -2
  59. package/src/commons/Device/HistoryChart.js +6 -49
  60. package/src/commons/Device/LinearChart/LinearChart.test.js +1 -1
  61. package/src/commons/Device/ProgressBar/__test__/ProgressBar.test.js +1 -1
  62. package/src/commons/Device/ProgressBar/index.js +5 -11
  63. package/src/commons/Device/ProgressBar/styles.js +11 -3
  64. package/src/commons/Device/RainningSensor/__test__/CurrentRainSensor.test.js +5 -5
  65. package/src/commons/Device/SonosSpeaker/__test__/SonosSpeaker.test.js +3 -3
  66. package/src/commons/Device/WindDirection/Compass/Compass.test.js +2 -2
  67. package/src/commons/Device/WindSpeed/Anemometer/index.js +2 -0
  68. package/src/commons/Device/WindSpeed/LinearChart/__test__/LinearChart.test.js +14 -1
  69. package/src/commons/Device/WindSpeed/LinearChart/index.js +5 -3
  70. package/src/commons/Device/__test__/DeviceAlertStatus.test.js +3 -3
  71. package/src/commons/Device/__test__/DisconnectedView.test.js +2 -2
  72. package/src/commons/Device/__test__/FlatListItems.test.js +1 -1
  73. package/src/commons/Device/__test__/SensorConnectedStatus.test.js +1 -1
  74. package/src/commons/DisplayChecking/__test__/DisplayChecking.test.js +1 -1
  75. package/src/commons/FlatListDnD/__test__/index.test.js +49 -0
  76. package/src/commons/FlatListDnD/index.js +37 -0
  77. package/src/commons/FlatListDnD/styles.js +12 -0
  78. package/src/commons/Form/__test__/CurrencyInput.test.js +2 -2
  79. package/src/commons/Form/__test__/TextInput.test.js +3 -3
  80. package/src/commons/Form/__test__/TextInputPassword.test.js +2 -2
  81. package/src/commons/FullLoading/__test__/index.test.js +2 -2
  82. package/src/commons/Header/HeaderCustom.js +2 -1
  83. package/src/commons/HorizontalPicker/index.js +65 -38
  84. package/src/commons/IconComponent/index.js +3 -2
  85. package/src/commons/ImageButton/__test__/ImageButton.test.js +1 -1
  86. package/src/commons/MediaPlayer/__test__/index.test.js +8 -3
  87. package/src/commons/MediaPlayer/index.js +11 -7
  88. package/src/commons/MenuActionMore/index.js +6 -4
  89. package/src/commons/Modal/ModalBottom.js +2 -3
  90. package/src/commons/Modal/ModalCustom.js +2 -3
  91. package/src/commons/NavBar/index.js +48 -50
  92. package/src/commons/OneTapTemplate/NumberUpDownActionTemplate.js +3 -3
  93. package/src/commons/OneTapTemplate/NumberUpDownActionTemplateStyles.js +1 -1
  94. package/src/commons/OneTapTemplate/OptionsDropdownActionTemplate.js +5 -5
  95. package/src/commons/OneTapTemplate/OptionsDropdownActionTemplateStyles.js +1 -1
  96. package/src/commons/OneTapTemplate/StatesGridActionTemplate.js +5 -5
  97. package/src/commons/OneTapTemplate/StatesGridActionTemplateStyles.js +1 -1
  98. package/src/commons/OneTapTemplate/__test__/NumberUpDownActionTemplate.test.js +2 -2
  99. package/src/commons/OneTapTemplate/__test__/OptionsDropdownActionTemplate.test.js +1 -1
  100. package/src/commons/OneTapTemplate/__test__/StatesGridActionTemplate.test.js +2 -2
  101. package/src/commons/PreventAccess/index.js +1 -1
  102. package/src/commons/RowItem/__test__/RowItem.test.js +1 -1
  103. package/src/commons/RowUser/__test__/RowUser.test.js +1 -1
  104. package/src/commons/Section/Section.test.js +2 -2
  105. package/src/commons/SelectSubUnit/__test__/SelectSubUnit.test.js +1 -1
  106. package/src/commons/SelectUnit/__test__/SelectUnit.test.js +3 -3
  107. package/src/commons/Sharing/StationDevicePermissions.js +4 -4
  108. package/src/commons/Sharing/WrapHeaderScrollable.js +5 -5
  109. package/src/commons/Sharing/__test__/ButtonRemoveMember.test.js +1 -1
  110. package/src/commons/Sharing/__test__/DevicePermissionsCheckbox.test.js +3 -3
  111. package/src/commons/Sharing/__test__/MemberList.test.js +6 -4
  112. package/src/commons/Sharing/__test__/RowMember.test.js +2 -2
  113. package/src/commons/Sharing/__test__/WrapHeaderScrollable.test.js +4 -2
  114. package/src/commons/SubUnit/OneTap/ItemOneTap.js +7 -11
  115. package/src/commons/SubUnit/OneTap/__test__/SubUnitAutomate.test.js +13 -16
  116. package/src/commons/SubUnit/OneTap/index.js +22 -7
  117. package/src/commons/TextButton/__test__/TextButton.test.js +2 -2
  118. package/src/commons/Today/__test__/Today.test.js +1 -1
  119. package/src/commons/TouchableScale/__test__/TouchableScale.test.js +1 -1
  120. package/src/commons/UnitSummary/AirQuality/__test__/index.test.js +4 -0
  121. package/src/commons/UnitSummary/AirQuality/index.js +2 -2
  122. package/src/commons/UnitSummary/ConfigHistoryChart/__test__/ConfigHistoryChart.test.js +1 -1
  123. package/src/commons/UnitSummary/ConfigHistoryChart/index.js +0 -6
  124. package/src/commons/UnitSummary/__test__/TotalPowerBox.test.js +1 -1
  125. package/src/commons/UnitSummary/__test__/TotalPowerConsumption.test.js +1 -1
  126. package/src/commons/ViewButtonBottom/__test__/ViewButtonBottom.test.js +1 -1
  127. package/src/configs/API.js +14 -31
  128. package/src/configs/AccessibilityLabel.js +1 -0
  129. package/src/configs/Colors.js +1 -1
  130. package/src/configs/Constants.js +14 -48
  131. package/src/context/reducer.ts +3 -1
  132. package/src/hoc/__test__/withRemoteControl.test.js +1 -1
  133. package/src/hooks/Common/__test__/useStatusbar.test.js +5 -5
  134. package/src/hooks/Common/index.js +0 -2
  135. package/src/hooks/Common/useKeyboardShow.js +4 -4
  136. package/src/hooks/Common/useStatusBar.js +2 -2
  137. package/src/hooks/Common/useTitleHeader.js +5 -7
  138. package/src/hooks/IoT/__test__/useRemoteControl.test.js +11 -0
  139. package/src/hooks/IoT/useBluetoothConnection.js +6 -3
  140. package/src/hooks/index.js +1 -2
  141. package/src/navigations/UnitStack.js +51 -17
  142. package/src/screens/ActivityLog/FilterPopup.js +4 -4
  143. package/src/screens/ActivityLog/__test__/FilterPopup.test.js +2 -2
  144. package/src/screens/ActivityLog/__test__/index.test.js +2 -2
  145. package/src/screens/AddCommon/__test__/SelectSubUnit.test.js +3 -3
  146. package/src/screens/AddCommon/__test__/SelectUnit.test.js +5 -5
  147. package/src/screens/AddNewAutoSmart/__test__/AddNewAutoSmart.test.js +9 -33
  148. package/src/screens/AddNewAutoSmart/index.js +33 -89
  149. package/src/screens/AddNewGateway/PlugAndPlay/__test__/ConnectRouterGuide.test.js +1 -1
  150. package/src/screens/AddNewGateway/PlugAndPlay/__test__/FirstWarning.test.js +1 -1
  151. package/src/screens/AddNewGateway/PlugAndPlay/__test__/ZigbeeDeviceConnectGuide.test.js +1 -1
  152. package/src/screens/AddNewGateway/SelectDeviceSubUnit.js +1 -2
  153. package/src/screens/AddNewGateway/__test__/AddNewGateway.test.js +5 -17
  154. package/src/screens/AddNewGateway/__test__/ConnectingWifiGuide.test.js +1 -1
  155. package/src/screens/AddNewGateway/__test__/ScanGatewayQR.test.js +2 -2
  156. package/src/screens/AddNewGateway/__test__/ScanModbusQR.test.js +3 -3
  157. package/src/screens/AddNewGateway/__test__/ScanWifiDeviceQR.test.js +2 -2
  158. package/src/screens/AddNewGateway/__test__/SelectDeviceSubUnit.test.js +8 -16
  159. package/src/screens/AddNewGateway/__test__/SelectDeviceUnit.test.js +10 -12
  160. package/src/screens/AddNewGateway/__test__/SelectModbusGateway.test.js +6 -14
  161. package/src/screens/AddNewGateway/__test__/SelectZigbeeGateway.test.js +6 -14
  162. package/src/screens/AddNewGateway/__test__/ShareWifiPassword.test.js +1 -1
  163. package/src/screens/AddNewGateway/hooks/__Tests__/useWifiManage.test.js +3 -2
  164. package/src/screens/AddNewGateway/index.js +1 -1
  165. package/src/screens/AllCamera/__test__/index.test.js +18 -57
  166. package/src/screens/AllCamera/index.js +100 -33
  167. package/src/screens/AllGateway/DetailConfigActionZigbee/__test__/index.test.js +0 -18
  168. package/src/screens/AllGateway/DetailConfigActionZigbee/index.js +1 -1
  169. package/src/screens/AllGateway/DeviceModbusDetail/__test__/index.test.js +5 -2
  170. package/src/screens/AllGateway/hooks/__test__/index.test.js +1 -1
  171. package/src/screens/Automate/AddNewAction/ChooseAction.js +139 -0
  172. package/src/screens/Automate/AddNewAction/ChooseConfig.js +179 -0
  173. package/src/screens/{AddNewAction → Automate/AddNewAction}/Components/LoadingSelectAction.js +1 -1
  174. package/src/screens/Automate/AddNewAction/Components/SelectDevices.js +75 -0
  175. package/src/screens/{AddNewAction → Automate/AddNewAction}/Device/DeviceStyles.js +5 -1
  176. package/src/screens/{AddNewAction → Automate/AddNewAction}/Device/__test__/index.test.js +4 -4
  177. package/src/screens/{AddNewAction → Automate/AddNewAction}/Device/index.js +5 -4
  178. package/src/screens/Automate/AddNewAction/NewActionWrapper.js +56 -0
  179. package/src/screens/Automate/AddNewAction/SelectControlDevices.js +69 -0
  180. package/src/screens/Automate/AddNewAction/SelectMonitorDevices.js +110 -0
  181. package/src/screens/Automate/AddNewAction/SetupConfigCondition.js +196 -0
  182. package/src/screens/{AddNewAction → Automate/AddNewAction}/Styles/SelectActionStyles.js +1 -1
  183. package/src/screens/{AddNewAction → Automate/AddNewAction}/Styles/SelectSensorDevicesStyles.js +1 -1
  184. package/src/screens/{AddNewAction → Automate/AddNewAction}/Styles/SetupSensorStyles.js +5 -3
  185. package/src/screens/{AddNewAction/__test__/SelectAction.test.js → Automate/AddNewAction/__test__/ChooseAction.test.js} +101 -122
  186. package/src/screens/Automate/AddNewAction/__test__/ChooseConfig.test.js +210 -0
  187. package/src/screens/Automate/AddNewAction/__test__/SelectControlDevices.test.js +130 -0
  188. package/src/screens/Automate/AddNewAction/__test__/SelectMonitorDevices.test.js +92 -0
  189. package/src/screens/Automate/AddNewAction/__test__/SetupSensor.test.js +131 -0
  190. package/src/screens/Automate/Components/InputName.js +64 -0
  191. package/src/screens/{AddNewOneTap/AddNewOneTapStyles.js → Automate/Components/InputNameStyles.js} +2 -2
  192. package/src/screens/{EditActionsList → Automate/EditActionsList}/Styles/indexStyles.js +5 -1
  193. package/src/screens/{EditActionsList → Automate/EditActionsList}/__tests__/index.test.js +20 -12
  194. package/src/screens/{EditActionsList → Automate/EditActionsList}/index.js +18 -19
  195. package/src/screens/Automate/MultiUnits.js +70 -68
  196. package/src/screens/Automate/OneTap/__test__/AddNewOneTap.test.js +134 -0
  197. package/src/screens/Automate/OneTap/index.js +16 -0
  198. package/src/screens/Automate/Scenario/ScenarioName.js +15 -0
  199. package/src/screens/{AddNewOneTap → Automate/Scenario}/__test__/AddNewOneTap.test.js +27 -45
  200. package/src/screens/Automate/ScriptDetail/Components/DeleteScript.js +45 -0
  201. package/src/screens/Automate/ScriptDetail/Components/RenameScript.js +58 -0
  202. package/src/screens/{ScriptDetail → Automate/ScriptDetail}/Styles/indexStyles.js +1 -1
  203. package/src/screens/{ScriptDetail → Automate/ScriptDetail}/__test__/index.test.js +67 -76
  204. package/src/screens/{ScriptDetail → Automate/ScriptDetail}/__test__/useStarredScript.test.js +7 -6
  205. package/src/screens/{ScriptDetail → Automate/ScriptDetail}/hooks/useStarredScript.js +4 -4
  206. package/src/screens/Automate/ScriptDetail/index.js +346 -0
  207. package/src/screens/Automate/ScriptDetail/utils.js +113 -0
  208. package/src/screens/{SetSchedule → Automate/SetSchedule}/__test__/SelectWeekday.test.js +2 -2
  209. package/src/screens/{SetSchedule → Automate/SetSchedule}/__test__/index.test.js +21 -46
  210. package/src/screens/{SetSchedule → Automate/SetSchedule}/components/RepeatOptionsPopup.js +4 -4
  211. package/src/screens/{SetSchedule → Automate/SetSchedule}/components/RowItem.js +2 -2
  212. package/src/screens/{SetSchedule → Automate/SetSchedule}/components/SelectWeekday.js +3 -3
  213. package/src/screens/Automate/SetSchedule/index.js +140 -0
  214. package/src/screens/{SetSchedule → Automate/SetSchedule}/styles/RepeatOptionsPopupStyles.js +1 -1
  215. package/src/screens/{SetSchedule → Automate/SetSchedule}/styles/RowItemStyles.js +1 -1
  216. package/src/screens/{SetSchedule → Automate/SetSchedule}/styles/SelectWeekdayStyles.js +1 -1
  217. package/src/screens/{SetSchedule → Automate/SetSchedule}/styles/indexStyles.js +1 -1
  218. package/src/screens/Automate/ValueChange/ValueChangeName.js +16 -0
  219. package/src/screens/Automate/__test__/MultiUnits.test.js +78 -122
  220. package/src/screens/Automate/__test__/index.test.js +21 -47
  221. package/src/screens/Automate/constants.js +0 -0
  222. package/src/screens/Automate/index.js +18 -24
  223. package/src/screens/ChangePosition/__test__/index.test.js +75 -0
  224. package/src/screens/ChangePosition/index.js +112 -0
  225. package/src/screens/ChangePosition/styles.js +87 -0
  226. package/src/screens/Device/__test__/DetailHistoryChart.test.js +2 -2
  227. package/src/screens/Device/__test__/EmergencyCountdown.test.js +4 -2
  228. package/src/screens/Device/__test__/detail.test.js +202 -257
  229. package/src/screens/Device/__test__/sensorDisplayItem.test.js +14 -10
  230. package/src/screens/Device/components/ChartWrapper.js +3 -3
  231. package/src/screens/Device/components/SensorDisplayItem.js +2 -1
  232. package/src/screens/Device/components/VisualChart.js +56 -9
  233. package/src/screens/Device/components/__test__/VisualChart.test.js +1 -1
  234. package/src/screens/Device/detail.js +14 -0
  235. package/src/screens/Device/hooks/__test__/useEmergencyButton.test.js +35 -13
  236. package/src/screens/Device/hooks/useEvaluateValue.js +28 -2
  237. package/src/screens/Device/styles.js +7 -0
  238. package/src/screens/DeviceInfo/__test__/index.test.js +16 -18
  239. package/src/screens/DeviceInfo/index.js +6 -5
  240. package/src/screens/GuestInfo/components/__test__/AccessScheduleSheet.test.js +52 -0
  241. package/src/screens/MoveToAnotherSubUnit/__test__/index.test.js +18 -13
  242. package/src/screens/Notification/__test__/Notification.test.js +64 -73
  243. package/src/screens/Notification/index.js +14 -14
  244. package/src/screens/PlayBackCamera/index.js +2 -3
  245. package/src/screens/SelectUnit/__test__/index.test.js +0 -5
  246. package/src/screens/SelectUnit/index.js +1 -2
  247. package/src/screens/SharedUnit/index.js +5 -4
  248. package/src/screens/Sharing/Components/TitleCheckBox.js +2 -2
  249. package/src/screens/Sharing/SelectUser.js +2 -2
  250. package/src/screens/Sharing/__test__/MemberList.test.js +9 -15
  251. package/src/screens/Sharing/__test__/MemberList2.test.js +10 -16
  252. package/src/screens/Sharing/__test__/SelectUser.test.js +8 -4
  253. package/src/screens/SideMenuDetail/SideMenuDetailStyles.js +1 -1
  254. package/src/screens/SmartAccount/SuccessfullyConnected/__test__/SuccessfullyConnected.test.js +3 -3
  255. package/src/screens/SmartAccount/__test__/Connecting.test.js +1 -1
  256. package/src/screens/SmartAccount/__test__/SmartAccount.test.js +3 -3
  257. package/src/screens/SmartAccount/index.js +1 -0
  258. package/src/screens/SmartIr/__test__/ButtonsBottom.test.js +1 -1
  259. package/src/screens/SmartIr/__test__/GroupButtonByType.test.js +5 -5
  260. package/src/screens/SmartIr/__test__/SelectBrand.test.js +2 -2
  261. package/src/screens/SmartIr/__test__/SelectDeviceType.test.js +2 -2
  262. package/src/screens/SmartIr/__test__/SmartIr.test.js +2 -2
  263. package/src/screens/SubUnit/ManageSubUnit.js +4 -4
  264. package/src/screens/SubUnit/__test__/ManageSubUnit.test.js +9 -28
  265. package/src/screens/TDSGuide/index.js +1 -1
  266. package/src/screens/Template/GatewayList.js +4 -1
  267. package/src/screens/Template/__test__/detail.test.js +24 -22
  268. package/src/screens/Template/detail.js +1 -0
  269. package/src/screens/UVIndexGuide/index.js +2 -2
  270. package/src/screens/Unit/Detail.js +6 -5
  271. package/src/screens/Unit/SelectAddToFavorites.js +1 -1
  272. package/src/screens/Unit/__test__/ChooseLocation.test.js +8 -13
  273. package/src/screens/Unit/__test__/Detail.test.js +10 -14
  274. package/src/screens/Unit/__test__/SelectAddToFavorites.test.js +1 -1
  275. package/src/screens/Unit/__test__/SmartAccount.test.js +8 -14
  276. package/src/screens/Unit/components/__test__/Header.test.js +4 -4
  277. package/src/screens/UnitSummary/components/3PPowerConsumption/__test__/3PPowerConsumption.test.js +1 -1
  278. package/src/screens/UnitSummary/components/3PPowerConsumption/index.js +14 -6
  279. package/src/screens/UnitSummary/components/PowerConsumption/__test__/PowerConsumption.test.js +1 -1
  280. package/src/screens/UnitSummary/components/Temperature/index.js +2 -2
  281. package/src/screens/UnitSummary/components/UvIndex/__test__/index.test.js +4 -0
  282. package/src/screens/UnitSummary/components/UvIndex/index.js +2 -2
  283. package/src/screens/UnitSummary/components/WaterQuality/__test__/index.test.js +6 -11
  284. package/src/screens/UnitSummary/components/WaterQuality/index.js +2 -2
  285. package/src/screens/UnitSummary/components/__test__/TotalPowerBox.test.js +1 -1
  286. package/src/screens/UnitSummary/components/__test__/TotalPowerConsumption.test.js +1 -1
  287. package/src/screens/UnitSummary/components/__test__/index.test.js +2 -2
  288. package/src/screens/WaterQualityGuide/index.js +10 -5
  289. package/src/utils/Apis/axios.js +3 -0
  290. package/src/utils/I18n/translations/en.json +24 -18
  291. package/src/utils/I18n/translations/vi.json +22 -18
  292. package/src/utils/Route/index.js +9 -3
  293. package/src/utils/Utils.js +29 -0
  294. package/src/utils/__test__/Utils.test.js +6 -0
  295. package/src/commons/ActionGroup/CurtainButtonTemplate.js +0 -130
  296. package/src/commons/ActionGroup/__test__/CurtainButtonTemplate.test.js +0 -109
  297. package/src/commons/Auth/SocialButton.js +0 -54
  298. package/src/commons/Auth/__test__/SocialButton.test.js +0 -44
  299. package/src/commons/Sharing/__test__/StationDevicePermission.test.js +0 -85
  300. package/src/hooks/__test__/useInitDeepLink.test.js +0 -28
  301. package/src/hooks/useInitDeepLink.js +0 -25
  302. package/src/screens/AddNewAction/SelectAction.js +0 -570
  303. package/src/screens/AddNewAction/SelectSensorDevices.js +0 -236
  304. package/src/screens/AddNewAction/SetupSensor.js +0 -263
  305. package/src/screens/AddNewAction/__test__/SelectSensorDevices.test.js +0 -181
  306. package/src/screens/AddNewAction/__test__/SetupSensor.test.js +0 -114
  307. package/src/screens/AddNewOneTap/index.js +0 -147
  308. package/src/screens/ScriptDetail/hooks/index.js +0 -136
  309. package/src/screens/ScriptDetail/index.js +0 -525
  310. package/src/screens/SetSchedule/index.js +0 -200
  311. /package/src/screens/{AddNewAction → Automate/AddNewAction}/Components/index.js +0 -0
  312. /package/src/screens/{AddNewAction → Automate/AddNewAction}/__test__/LoadingSelectAction.test.js +0 -0
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import { Alert, ScrollView } from 'react-native';
3
3
  import { act, create } from 'react-test-renderer';
4
4
  import MockAdapter from 'axios-mock-adapter';
5
- import { NavigationContext } from '@react-navigation/native';
5
+ import { NavigationContext, useNavigation } from '@react-navigation/native';
6
6
 
7
7
  import DeviceDetail from '../detail';
8
8
  import { API } from '../../../configs';
@@ -19,20 +19,10 @@ import { mockSCStore } from '../../../context/mockStore';
19
19
  import Routes from '../../../utils/Route';
20
20
  import api from '../../../utils/Apis/axios';
21
21
 
22
- const mockedNavigate = jest.fn();
23
22
  const mockedDispatch = jest.fn();
24
23
 
25
24
  const mock = new MockAdapter(api.axiosInstance);
26
25
 
27
- jest.mock('@react-navigation/native', () => {
28
- return {
29
- ...jest.requireActual('@react-navigation/native'),
30
- useNavigation: () => ({
31
- navigate: mockedNavigate,
32
- }),
33
- };
34
- });
35
-
36
26
  jest.mock('react-redux', () => {
37
27
  return {
38
28
  ...jest.requireActual('react-redux'),
@@ -44,12 +34,6 @@ jest.mock('react-redux', () => {
44
34
  };
45
35
  });
46
36
 
47
- jest.mock('react', () => ({
48
- ...jest.requireActual('react'),
49
- useLayoutEffect: jest.fn(),
50
- memo: (x) => x,
51
- }));
52
-
53
37
  jest.mock('../../../hooks/Common', () => {
54
38
  return {
55
39
  ...jest.requireActual('../../../hooks/Common'),
@@ -62,13 +46,13 @@ const mockAxios = (
62
46
  responseDisplayValueV2,
63
47
  responseRemoteControl = {}
64
48
  ) => {
65
- mock.onGet(API.DEVICE.DISPLAY(1)).reply(200, responseDisplay.data);
49
+ mock.onGet(API.DEVICE.DISPLAY(1)).reply(200, responseDisplay);
66
50
  mock
67
51
  .onGet(API.DEVICE.REMOTE_CONTROL_OPTIONS(1))
68
- .reply(200, responseRemoteControl.data);
52
+ .reply(200, responseRemoteControl);
69
53
  mock
70
54
  .onGet(API.DEVICE.DISPLAY_VALUES_V2(1))
71
- .reply(200, responseDisplayValueV2.data);
55
+ .reply(200, responseDisplayValueV2);
72
56
  };
73
57
 
74
58
  let store = mockSCStore({});
@@ -97,6 +81,7 @@ describe('test DeviceDetail', () => {
97
81
  let tree;
98
82
  let route;
99
83
  let account;
84
+ const mockedNavigate = useNavigation().navigate;
100
85
 
101
86
  beforeEach(() => {
102
87
  route = {
@@ -132,7 +117,7 @@ describe('test DeviceDetail', () => {
132
117
  account = {
133
118
  token: 'abc',
134
119
  };
135
- jest.clearAllTimers();
120
+ jest.useFakeTimers();
136
121
  const setState = jest.fn();
137
122
  const useLayoutEffectSpy = jest.spyOn(React, 'useLayoutEffect');
138
123
  useLayoutEffectSpy.mockImplementation(() => setState);
@@ -160,7 +145,7 @@ describe('test DeviceDetail', () => {
160
145
  'http://admin:admin123@203.205.32.86:10080/Streaming/Channels/2/picture',
161
146
  uri: 'rtsp://admin:admin123@203.205.32.86:10554/Streaming/Channels/1/',
162
147
  },
163
- id: 17,
148
+ id: 18,
164
149
  order: 1,
165
150
  template: 'camera',
166
151
  type: 'camera',
@@ -212,7 +197,7 @@ describe('test DeviceDetail', () => {
212
197
  text3: 'DOWN',
213
198
  },
214
199
  },
215
- id: 18,
200
+ id: 19,
216
201
  order: 2,
217
202
  template: 'action',
218
203
  type: 'action',
@@ -221,29 +206,20 @@ describe('test DeviceDetail', () => {
221
206
  side_menu_items: [{ id: 1, order: 1, name: 'Setup generate passcode' }],
222
207
  };
223
208
  it('render DeviceDetail render SensorDisplayItem', async () => {
224
- const responseDisplay = {
225
- status: 200,
226
- data: data_sensor_display,
227
- };
209
+ const responseDisplay = data_sensor_display;
228
210
 
229
211
  const responseRemoteControl = {
230
- status: 200,
231
- data: {
232
- bluetooth: {
233
- address: 'JUvfa06PMDU8Cqlo',
234
- password: 'MYcNoskxspWTPsnh',
235
- },
236
- internet: {},
212
+ bluetooth: {
213
+ address: 'JUvfa06PMDU8Cqlo',
214
+ password: 'MYcNoskxspWTPsnh',
237
215
  },
216
+ internet: {},
238
217
  };
239
218
 
240
219
  const responseDisplayValueV2 = {
241
- status: 200,
242
- data: {
243
- configs: [],
244
- is_connected: true,
245
- last_updated: '2021-01-24T12:00:00.000Z',
246
- },
220
+ configs: [],
221
+ is_connected: true,
222
+ last_updated: '2021-01-24T12:00:00.000Z',
247
223
  };
248
224
 
249
225
  mockAxios(responseDisplay, responseDisplayValueV2, responseRemoteControl);
@@ -251,6 +227,7 @@ describe('test DeviceDetail', () => {
251
227
  await act(async () => {
252
228
  tree = await create(wrapComponent(store, account, route));
253
229
  });
230
+ jest.useFakeTimers();
254
231
 
255
232
  const instance = tree.root;
256
233
  const sensorDisplayItem = instance.findAll(
@@ -385,138 +362,132 @@ describe('test DeviceDetail', () => {
385
362
 
386
363
  it('Should render SensorDisplayItem', async () => {
387
364
  const responseDisplay = {
388
- status: 200,
389
- data: {
390
- items: [
391
- {
392
- id: 0,
393
- order: 1,
394
- template: 'camera',
395
- type: 'camera',
396
- configuration: {
397
- id: 2,
398
- name: 'E',
399
- uri: 'http://123121',
400
- preview_uri: 'http://123121',
401
- },
365
+ items: [
366
+ {
367
+ id: 0,
368
+ order: 1,
369
+ template: 'camera',
370
+ type: 'camera',
371
+ configuration: {
372
+ id: 2,
373
+ name: 'E',
374
+ uri: 'http://123121',
375
+ preview_uri: 'http://123121',
402
376
  },
403
- {
377
+ },
378
+ {
379
+ id: 1,
380
+ order: 2,
381
+ template: 'action',
382
+ type: 'action',
383
+ configuration: {
404
384
  id: 1,
405
- order: 2,
406
- template: 'action',
407
- type: 'action',
385
+ template: 'three_button_action_template',
386
+ title: '',
408
387
  configuration: {
409
- id: 1,
410
- template: 'three_button_action_template',
411
- title: '',
412
- configuration: {
413
- action1: 'a',
414
- action2: 'b',
415
- action3: 'b',
416
- icon1: 'caret-up',
417
- icon2: 'stop',
418
- icon3: 'caret-down',
419
- text1: 'A',
420
- text2: 'B',
421
- text3: 'C',
422
- action1_data: {
423
- id: 9,
424
- key: 'a',
425
- icon: 'caret-up',
426
- color: '#00979D',
427
- googlehome_actions: [],
428
- command_prefer_over_internet: false,
429
- command_prefer_over_bluetooth: true,
430
- command_prefer_over_googlehome: false,
431
- },
432
- action2_data: {
433
- id: 11,
434
- key: 'c',
435
- icon: 'stop',
436
- color: '#00979D',
437
- googlehome_actions: [],
438
- command_prefer_over_internet: false,
439
- command_prefer_over_bluetooth: true,
440
- command_prefer_over_googlehome: false,
441
- },
442
- action3_data: {
443
- id: 10,
444
- key: 'b',
445
- icon: 'caret-down',
446
- color: '#00979D',
447
- googlehome_actions: [],
448
- command_prefer_over_internet: false,
449
- command_prefer_over_bluetooth: true,
450
- command_prefer_over_googlehome: false,
451
- },
388
+ action1: 'a',
389
+ action2: 'b',
390
+ action3: 'b',
391
+ icon1: 'caret-up',
392
+ icon2: 'stop',
393
+ icon3: 'caret-down',
394
+ text1: 'A',
395
+ text2: 'B',
396
+ text3: 'C',
397
+ action1_data: {
398
+ id: 9,
399
+ key: 'a',
400
+ icon: 'caret-up',
401
+ color: '#00979D',
402
+ googlehome_actions: [],
403
+ command_prefer_over_internet: false,
404
+ command_prefer_over_bluetooth: true,
405
+ command_prefer_over_googlehome: false,
406
+ },
407
+ action2_data: {
408
+ id: 11,
409
+ key: 'c',
410
+ icon: 'stop',
411
+ color: '#00979D',
412
+ googlehome_actions: [],
413
+ command_prefer_over_internet: false,
414
+ command_prefer_over_bluetooth: true,
415
+ command_prefer_over_googlehome: false,
416
+ },
417
+ action3_data: {
418
+ id: 10,
419
+ key: 'b',
420
+ icon: 'caret-down',
421
+ color: '#00979D',
422
+ googlehome_actions: [],
423
+ command_prefer_over_internet: false,
424
+ command_prefer_over_bluetooth: true,
425
+ command_prefer_over_googlehome: false,
452
426
  },
453
427
  },
454
428
  },
455
- {
456
- id: 3,
457
- order: 3,
458
- template: 'action',
459
- type: 'action',
429
+ },
430
+ {
431
+ id: 3,
432
+ order: 3,
433
+ template: 'action',
434
+ type: 'action',
435
+ configuration: {
436
+ id: 25,
437
+ template: 'one_button_action_template',
438
+ title: '',
460
439
  configuration: {
461
- id: 25,
462
- template: 'one_button_action_template',
463
- title: '',
464
- configuration: {
465
- action: 'd',
440
+ action: 'd',
441
+ icon: 'lock',
442
+ text: 'd',
443
+ action_data: {
444
+ id: 77,
445
+ key: 'd',
466
446
  icon: 'lock',
467
- text: 'd',
468
- action_data: {
469
- id: 77,
470
- key: 'd',
471
- icon: 'lock',
472
- color: '#00979D',
473
- googlehome_actions: [],
474
- command_prefer_over_internet: false,
475
- command_prefer_over_bluetooth: true,
476
- command_prefer_over_googlehome: false,
477
- },
447
+ color: '#00979D',
448
+ googlehome_actions: [],
449
+ command_prefer_over_internet: false,
450
+ command_prefer_over_bluetooth: true,
451
+ command_prefer_over_googlehome: false,
478
452
  },
479
453
  },
480
454
  },
481
- {
482
- id: 170,
483
- order: 1,
484
- template: 'value',
485
- type: 'value',
486
- configuration: {
487
- type: 'simple_list',
488
- configs: [
489
- {
490
- id: 428,
491
- standard: 'Temperature',
492
- measure: '°C',
493
- color: 'red',
494
- unit: '°C',
495
- },
496
- ],
497
- },
455
+ },
456
+ {
457
+ id: 170,
458
+ order: 1,
459
+ template: 'value',
460
+ type: 'value',
461
+ configuration: {
462
+ type: 'simple_list',
463
+ configs: [
464
+ {
465
+ id: 428,
466
+ standard: 'Temperature',
467
+ measure: '°C',
468
+ color: 'red',
469
+ unit: '°C',
470
+ },
471
+ ],
498
472
  },
499
- {
500
- configuration: {
501
- id: 3,
502
- name: 'Emergency',
503
- },
504
- id: 17,
505
- order: 1,
506
- template: 'emergency',
507
- type: 'emergency',
473
+ },
474
+ {
475
+ configuration: {
476
+ id: 3,
477
+ name: 'Emergency',
508
478
  },
509
- ],
510
- },
479
+ id: 17,
480
+ order: 1,
481
+ template: 'emergency',
482
+ type: 'emergency',
483
+ },
484
+ ],
511
485
  };
512
486
 
513
487
  const responseDisplayValueV2 = {
514
- status: 200,
515
- data: {
516
- configs: [],
517
- is_connected: true,
518
- last_updated: '2021-01-24T12:00:00.000Z',
519
- },
488
+ configs: [],
489
+ is_connected: true,
490
+ last_updated: '2021-01-24T12:00:00.000Z',
520
491
  };
521
492
 
522
493
  mockAxios(responseDisplay, responseDisplayValueV2);
@@ -535,53 +506,47 @@ describe('test DeviceDetail', () => {
535
506
 
536
507
  it('render SensorDisplayItem emercency', async () => {
537
508
  const responseDisplay = {
538
- status: 200,
539
- data: {
540
- items: [
541
- {
542
- id: 1,
543
- order: 1,
544
- template: 'emergency',
545
- type: 'emergency',
546
- configuration: {
547
- camera: null,
548
- device: {
549
- configs: { id: 521, value: null, time: null },
550
- last_event: { id: 374, reportedAt: '' },
509
+ items: [
510
+ {
511
+ id: 1,
512
+ order: 1,
513
+ template: 'emergency',
514
+ type: 'emergency',
515
+ configuration: {
516
+ camera: null,
517
+ device: {
518
+ configs: { id: 521, value: null, time: null },
519
+ last_event: { id: 374, reportedAt: '' },
520
+ id: 1,
521
+ group: {
551
522
  id: 1,
552
- group: {
553
- id: 1,
554
- contacts: [
555
- {
556
- id: 1,
557
- group: 1,
558
- name: 'user1',
559
- phone_number: '038111111',
560
- },
561
- {
562
- id: 2,
563
- group: 1,
564
- name: 'user1',
565
- phone_number: '038111112',
566
- },
567
- { id: 3, group: 1, name: 'user1', phone_number: '' },
568
- ],
569
- },
523
+ contacts: [
524
+ {
525
+ id: 1,
526
+ group: 1,
527
+ name: 'user1',
528
+ phone_number: '038111111',
529
+ },
530
+ {
531
+ id: 2,
532
+ group: 1,
533
+ name: 'user1',
534
+ phone_number: '038111112',
535
+ },
536
+ { id: 3, group: 1, name: 'user1', phone_number: '' },
537
+ ],
570
538
  },
571
- title: '',
572
539
  },
540
+ title: '',
573
541
  },
574
- ],
575
- },
542
+ },
543
+ ],
576
544
  };
577
545
 
578
546
  const responseDisplayValueV2 = {
579
- status: 200,
580
- data: {
581
- configs: [],
582
- is_connected: true,
583
- last_updated: '2021-01-24T12:00:00.000Z',
584
- },
547
+ configs: [],
548
+ is_connected: true,
549
+ last_updated: '2021-01-24T12:00:00.000Z',
585
550
  };
586
551
 
587
552
  mockAxios(responseDisplay, responseDisplayValueV2);
@@ -600,36 +565,30 @@ describe('test DeviceDetail', () => {
600
565
 
601
566
  it('render CurrentRainSensor', async () => {
602
567
  const responseDisplay = {
603
- status: 200,
604
- data: {
605
- items: [
606
- {
607
- id: 170,
608
- order: 1,
609
- template: 'value',
610
- configuration: {
611
- type: 'circle',
612
- configs: [
613
- {
614
- id: 428,
615
- color: 'red',
616
- standard: 'Temperature',
617
- measure: '°C',
618
- },
619
- ],
620
- },
568
+ items: [
569
+ {
570
+ id: 170,
571
+ order: 1,
572
+ template: 'value',
573
+ configuration: {
574
+ type: 'circle',
575
+ configs: [
576
+ {
577
+ id: 428,
578
+ color: 'red',
579
+ standard: 'Temperature',
580
+ measure: '°C',
581
+ },
582
+ ],
621
583
  },
622
- ],
623
- },
584
+ },
585
+ ],
624
586
  };
625
587
 
626
588
  const responseDisplayValueV2 = {
627
- status: 200,
628
- data: {
629
- configs: [{ id: 428 }],
630
- is_connected: true,
631
- last_updated: '2021-01-24T12:00:00.000Z',
632
- },
589
+ configs: [{ id: 428 }],
590
+ is_connected: true,
591
+ last_updated: '2021-01-24T12:00:00.000Z',
633
592
  };
634
593
 
635
594
  mockAxios(responseDisplay, responseDisplayValueV2);
@@ -722,35 +681,29 @@ describe('test DeviceDetail', () => {
722
681
 
723
682
  it('Go to ActivityLog', async () => {
724
683
  const responseDisplay = {
725
- status: 200,
726
- data: {
727
- items: [
728
- {
684
+ items: [
685
+ {
686
+ configuration: {
687
+ template: 'OnOffSimpleActionTemplate',
729
688
  configuration: {
730
- template: 'OnOffSimpleActionTemplate',
731
- configuration: {
732
- config: 5,
733
- icon: 'up',
734
- is_on_value: [],
735
- },
736
- title: 'Turn on / off',
689
+ config: 5,
690
+ icon: 'up',
691
+ is_on_value: [],
737
692
  },
738
- id: 18,
739
- order: 2,
740
- template: 'action',
741
- type: 'action',
693
+ title: 'Turn on / off',
742
694
  },
743
- ],
744
- },
695
+ id: 18,
696
+ order: 2,
697
+ template: 'action',
698
+ type: 'action',
699
+ },
700
+ ],
745
701
  };
746
702
 
747
703
  const responseDisplayValueV2 = {
748
- status: 200,
749
- data: {
750
- configs: [],
751
- is_connected: true,
752
- last_updated: '2021-01-24T12:00:00.000Z',
753
- },
704
+ configs: [],
705
+ is_connected: true,
706
+ last_updated: '2021-01-24T12:00:00.000Z',
754
707
  };
755
708
 
756
709
  mockAxios(responseDisplay, responseDisplayValueV2);
@@ -779,20 +732,12 @@ describe('test DeviceDetail', () => {
779
732
  it('Open popup ble when server down', async () => {
780
733
  store.bluetooth.isEnabled = false;
781
734
  data_sensor_display.items[2].configuration.configuration.action1_data.command_prefer_over_bluetooth = true;
782
- const responseDisplay = {
783
- status: 200,
784
- data: data_sensor_display,
785
- resp_status: 503,
786
- };
735
+ const responseDisplay = data_sensor_display;
787
736
 
788
737
  const responseDisplayValueV2 = {
789
- status: 503,
790
- resp_status: 503,
791
- data: {
792
- configs: [],
793
- is_connected: true,
794
- last_updated: '2021-01-24T12:00:00.000Z',
795
- },
738
+ configs: [],
739
+ is_connected: true,
740
+ last_updated: '2021-01-24T12:00:00.000Z',
796
741
  };
797
742
 
798
743
  mockAxios(responseDisplay, responseDisplayValueV2);