@ray-js/lock-sdk 1.1.3 → 1.2.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/ble.d.ts +57 -0
- package/lib/api/ble.js +46 -0
- package/lib/api/fit.d.ts +203 -0
- package/lib/api/fit.js +158 -0
- package/lib/api/index.d.ts +4 -2
- package/lib/api/index.js +26 -0
- package/lib/api/linkage.js +6 -0
- package/lib/api/lock.d.ts +4 -2
- package/lib/api/lock.js +24 -0
- package/lib/api/log.d.ts +49 -22
- package/lib/api/log.js +21 -0
- package/lib/api/request.d.ts +5 -2
- package/lib/api/request.js +34 -2
- package/lib/api/screen.d.ts +111 -0
- package/lib/api/screen.js +52 -0
- package/lib/api/setting.js +2 -0
- package/lib/api/temp.d.ts +24 -3
- package/lib/api/temp.js +27 -0
- package/lib/api/user.d.ts +35 -1
- package/lib/api/user.js +24 -0
- package/lib/api/video.d.ts +27 -0
- package/lib/api/video.js +21 -0
- package/lib/api/voice-file.d.ts +14 -0
- package/lib/api/voice-file.js +18 -0
- package/lib/bootstrap/bootstrap-lock-instance.d.ts +7 -0
- package/lib/bootstrap/bootstrap-lock-instance.js +16 -0
- package/lib/bootstrap/bootstrap.d.ts +4 -0
- package/lib/bootstrap/bootstrap.js +53 -0
- package/lib/bootstrap/lock-instance-runtime-ref.d.ts +3 -0
- package/lib/bootstrap/lock-instance-runtime-ref.js +7 -0
- package/lib/bootstrap/primary-instance.d.ts +6 -0
- package/lib/bootstrap/primary-instance.js +24 -0
- package/lib/bootstrap/resolve-runtime-from-export-this.d.ts +5 -0
- package/lib/bootstrap/resolve-runtime-from-export-this.js +29 -0
- package/lib/bootstrap/top-level-runtime.d.ts +2 -0
- package/lib/bootstrap/top-level-runtime.js +9 -0
- package/lib/config/dp-code/index.d.ts +100 -67
- package/lib/config/dp-code/index.js +33 -1
- package/lib/config/dp-map/ble-check-code.d.ts +41 -0
- package/lib/config/dp-map/ble-check-code.js +55 -0
- package/lib/config/dp-map/ble-key-fit.d.ts +328 -0
- package/lib/config/dp-map/ble-key-fit.js +33 -0
- package/lib/config/dp-map/ble-sync.d.ts +2 -2
- package/lib/config/dp-map/ble-sync.js +2 -2
- package/lib/config/dp-map/ble-unlock-check.d.ts +42 -0
- package/lib/config/dp-map/ble-unlock-check.js +59 -0
- package/lib/config/dp-map/ble-voice-data.d.ts +16 -0
- package/lib/config/dp-map/ble-voice-data.js +7 -0
- package/lib/config/dp-map/bluetooth-unlock.d.ts +10 -0
- package/lib/config/dp-map/bluetooth-unlock.js +16 -0
- package/lib/config/dp-map/registry.d.ts +1137 -0
- package/lib/config/dp-map/registry.js +110 -0
- package/lib/config/dp-map/sync-method-fit.d.ts +3 -0
- package/lib/config/dp-map/sync-method-fit.js +36 -0
- package/lib/config/dp-map/temp-pwd-fit.d.ts +441 -0
- package/lib/config/dp-map/temp-pwd-fit.js +73 -0
- package/lib/config/dp-map/unlock-method-fit.d.ts +302 -0
- package/lib/config/dp-map/unlock-method-fit.js +62 -0
- package/lib/config/dp-map/unlock-method.d.ts +345 -1
- package/lib/config/dp-map/unlock-method.js +37 -1
- package/lib/constant.d.ts +5 -0
- package/lib/constant.js +6 -0
- package/lib/entries/ble/bootstrap/bootstrap-lock-instance.d.ts +7 -0
- package/lib/entries/ble/bootstrap/bootstrap-lock-instance.js +12 -0
- package/lib/entries/ble/bootstrap/bootstrap.d.ts +4 -0
- package/lib/entries/ble/bootstrap/bootstrap.js +53 -0
- package/lib/entries/ble/bootstrap/lock-instance-runtime-ref.d.ts +3 -0
- package/lib/entries/ble/bootstrap/lock-instance-runtime-ref.js +7 -0
- package/lib/entries/ble/bootstrap/primary-instance.d.ts +6 -0
- package/lib/entries/ble/bootstrap/primary-instance.js +24 -0
- package/lib/entries/ble/bootstrap/resolve-runtime-from-export-this.d.ts +5 -0
- package/lib/entries/ble/bootstrap/resolve-runtime-from-export-this.js +29 -0
- package/lib/entries/ble/bootstrap/top-level-runtime.d.ts +2 -0
- package/lib/entries/ble/bootstrap/top-level-runtime.js +9 -0
- package/lib/entries/ble/build-instance.d.ts +9 -0
- package/lib/entries/ble/build-instance.js +50 -0
- package/lib/entries/ble/exports/capability.d.ts +6 -0
- package/lib/entries/ble/exports/capability.js +17 -0
- package/lib/entries/ble/exports/config.d.ts +3 -0
- package/lib/entries/ble/exports/config.js +5 -0
- package/lib/entries/ble/exports/dp.d.ts +9 -0
- package/lib/entries/ble/exports/dp.js +13 -0
- package/lib/entries/ble/exports/index.d.ts +16 -0
- package/lib/entries/ble/exports/index.js +16 -0
- package/lib/entries/ble/exports/linkage.d.ts +5 -0
- package/lib/entries/ble/exports/linkage.js +15 -0
- package/lib/entries/ble/exports/log.d.ts +9 -0
- package/lib/entries/ble/exports/log.js +21 -0
- package/lib/entries/ble/exports/media.d.ts +4 -0
- package/lib/entries/ble/exports/media.js +12 -0
- package/lib/entries/ble/exports/misc.d.ts +19 -0
- package/lib/entries/ble/exports/misc.js +30 -0
- package/lib/entries/ble/exports/offline-dps.d.ts +8 -0
- package/lib/entries/ble/exports/offline-dps.js +24 -0
- package/lib/entries/ble/exports/open/do-open-close-action.d.ts +2 -0
- package/lib/entries/ble/exports/open/do-open-close-action.js +36 -0
- package/lib/entries/ble/exports/open/index.d.ts +18 -0
- package/lib/entries/ble/exports/open/index.js +45 -0
- package/lib/entries/ble/exports/signal.d.ts +6 -0
- package/lib/entries/ble/exports/signal.js +14 -0
- package/lib/entries/ble/exports/sleep.d.ts +13 -0
- package/lib/entries/ble/exports/sleep.js +31 -0
- package/lib/entries/ble/exports/state.d.ts +6 -0
- package/lib/entries/ble/exports/state.js +19 -0
- package/lib/entries/ble/exports/temporary.d.ts +31 -0
- package/lib/entries/ble/exports/temporary.js +91 -0
- package/lib/entries/ble/exports/unlock/sync.d.ts +1 -0
- package/lib/entries/ble/exports/unlock/sync.js +5 -0
- package/lib/entries/ble/exports/unlock-method.d.ts +19 -0
- package/lib/entries/ble/exports/unlock-method.js +58 -0
- package/lib/entries/ble/exports/user/index.d.ts +23 -0
- package/lib/entries/ble/exports/user/index.js +22 -0
- package/lib/entries/ble/exports/user/sync.d.ts +1 -0
- package/lib/entries/ble/exports/user/sync.js +5 -0
- package/lib/entries/ble/index.d.ts +8 -0
- package/lib/entries/ble/index.js +39 -0
- package/lib/entries/fit/bootstrap/bootstrap-lock-instance.d.ts +7 -0
- package/lib/entries/fit/bootstrap/bootstrap-lock-instance.js +12 -0
- package/lib/entries/fit/bootstrap/bootstrap.d.ts +4 -0
- package/lib/entries/fit/bootstrap/bootstrap.js +69 -0
- package/lib/entries/fit/bootstrap/lock-instance-runtime-ref.d.ts +3 -0
- package/lib/entries/fit/bootstrap/lock-instance-runtime-ref.js +7 -0
- package/lib/entries/fit/bootstrap/primary-instance.d.ts +6 -0
- package/lib/entries/fit/bootstrap/primary-instance.js +24 -0
- package/lib/entries/fit/bootstrap/resolve-runtime-from-export-this.d.ts +5 -0
- package/lib/entries/fit/bootstrap/resolve-runtime-from-export-this.js +29 -0
- package/lib/entries/fit/bootstrap/top-level-runtime.d.ts +2 -0
- package/lib/entries/fit/bootstrap/top-level-runtime.js +9 -0
- package/lib/entries/fit/build-instance.d.ts +9 -0
- package/lib/entries/fit/build-instance.js +57 -0
- package/lib/entries/fit/exports/binding.d.ts +8 -0
- package/lib/entries/fit/exports/binding.js +15 -0
- package/lib/entries/fit/exports/device.d.ts +26 -0
- package/lib/entries/fit/exports/device.js +64 -0
- package/lib/entries/fit/exports/index.d.ts +3 -0
- package/lib/entries/fit/exports/index.js +3 -0
- package/lib/entries/fit/exports/temp.d.ts +19 -0
- package/lib/entries/fit/exports/temp.js +18 -0
- package/lib/entries/fit/index.d.ts +8 -0
- package/lib/entries/fit/index.js +36 -0
- package/lib/entries/main/bootstrap/bootstrap-lock-instance.d.ts +7 -0
- package/lib/entries/main/bootstrap/bootstrap-lock-instance.js +12 -0
- package/lib/entries/main/bootstrap/bootstrap.d.ts +4 -0
- package/lib/entries/main/bootstrap/bootstrap.js +69 -0
- package/lib/entries/main/bootstrap/lock-instance-runtime-ref.d.ts +3 -0
- package/lib/entries/main/bootstrap/lock-instance-runtime-ref.js +7 -0
- package/lib/entries/main/bootstrap/primary-instance.d.ts +6 -0
- package/lib/entries/main/bootstrap/primary-instance.js +24 -0
- package/lib/entries/main/bootstrap/resolve-runtime-from-export-this.d.ts +5 -0
- package/lib/entries/main/bootstrap/resolve-runtime-from-export-this.js +29 -0
- package/lib/entries/main/bootstrap/top-level-runtime.d.ts +2 -0
- package/lib/entries/main/bootstrap/top-level-runtime.js +9 -0
- package/lib/entries/main/build-instance.d.ts +7 -0
- package/lib/entries/main/build-instance.js +49 -0
- package/lib/entries/main/exports/accessory-binding.d.ts +1 -0
- package/lib/entries/main/exports/accessory-binding.js +1 -0
- package/lib/entries/main/exports/ai.d.ts +4 -0
- package/lib/entries/main/exports/ai.js +11 -0
- package/lib/entries/main/exports/capability.d.ts +6 -0
- package/lib/entries/main/exports/capability.js +17 -0
- package/lib/entries/main/exports/config.d.ts +3 -0
- package/lib/entries/main/exports/config.js +5 -0
- package/lib/entries/main/exports/dp.d.ts +11 -0
- package/lib/entries/main/exports/dp.js +13 -0
- package/lib/entries/main/exports/fit.d.ts +8 -0
- package/lib/entries/main/exports/fit.js +14 -0
- package/lib/entries/main/exports/index.d.ts +21 -0
- package/lib/entries/main/exports/index.js +21 -0
- package/lib/entries/main/exports/linkage.d.ts +5 -0
- package/lib/entries/main/exports/linkage.js +15 -0
- package/lib/entries/main/exports/log.d.ts +10 -0
- package/lib/entries/main/exports/log.js +24 -0
- package/lib/entries/main/exports/media.d.ts +6 -0
- package/lib/entries/main/exports/media.js +18 -0
- package/lib/entries/main/exports/misc.d.ts +18 -0
- package/lib/entries/main/exports/misc.js +30 -0
- package/lib/entries/main/exports/offline-dps.d.ts +8 -0
- package/lib/entries/main/exports/offline-dps.js +28 -0
- package/lib/entries/main/exports/open/do-open-close-action.d.ts +2 -0
- package/lib/entries/main/exports/open/do-open-close-action.js +68 -0
- package/lib/entries/main/exports/open/index.d.ts +16 -0
- package/lib/entries/main/exports/open/index.js +44 -0
- package/lib/entries/main/exports/open.d.ts +16 -0
- package/lib/entries/main/exports/open.js +44 -0
- package/lib/entries/main/exports/screen/bind.d.ts +7 -0
- package/lib/entries/main/exports/screen/bind.js +15 -0
- package/lib/entries/main/exports/screen/list.d.ts +5 -0
- package/lib/entries/main/exports/screen/list.js +13 -0
- package/lib/entries/main/exports/signal.d.ts +6 -0
- package/lib/entries/main/exports/signal.js +14 -0
- package/lib/entries/main/exports/sleep.d.ts +15 -0
- package/lib/entries/main/exports/sleep.js +31 -0
- package/lib/entries/main/exports/state.d.ts +6 -0
- package/lib/entries/main/exports/state.js +19 -0
- package/lib/entries/main/exports/temporary.d.ts +32 -0
- package/lib/entries/main/exports/temporary.js +86 -0
- package/lib/entries/main/exports/unlock/sync.d.ts +1 -0
- package/lib/entries/main/exports/unlock/sync.js +5 -0
- package/lib/entries/main/exports/unlock-method.d.ts +19 -0
- package/lib/entries/main/exports/unlock-method.js +58 -0
- package/lib/entries/main/exports/user/index.d.ts +33 -0
- package/lib/entries/main/exports/user/index.js +35 -0
- package/lib/entries/main/exports/user/sync.d.ts +1 -0
- package/lib/entries/main/exports/user/sync.js +5 -0
- package/lib/entries/main/exports/voice-file.d.ts +7 -0
- package/lib/entries/main/exports/voice-file.js +17 -0
- package/lib/entries/main/exports/yu-channel.d.ts +5 -0
- package/lib/entries/main/exports/yu-channel.js +17 -0
- package/lib/entries/main/index.d.ts +8 -0
- package/lib/entries/main/index.js +36 -0
- package/lib/entries/screen/bootstrap/bootstrap-lock-instance.d.ts +7 -0
- package/lib/entries/screen/bootstrap/bootstrap-lock-instance.js +12 -0
- package/lib/entries/screen/bootstrap/bootstrap.d.ts +4 -0
- package/lib/entries/screen/bootstrap/bootstrap.js +69 -0
- package/lib/entries/screen/bootstrap/lock-instance-runtime-ref.d.ts +3 -0
- package/lib/entries/screen/bootstrap/lock-instance-runtime-ref.js +7 -0
- package/lib/entries/screen/bootstrap/primary-instance.d.ts +6 -0
- package/lib/entries/screen/bootstrap/primary-instance.js +24 -0
- package/lib/entries/screen/bootstrap/resolve-runtime-from-export-this.d.ts +5 -0
- package/lib/entries/screen/bootstrap/resolve-runtime-from-export-this.js +29 -0
- package/lib/entries/screen/bootstrap/top-level-runtime.d.ts +2 -0
- package/lib/entries/screen/bootstrap/top-level-runtime.js +9 -0
- package/lib/entries/screen/build-instance.d.ts +9 -0
- package/lib/entries/screen/build-instance.js +57 -0
- package/lib/entries/screen/exports/bind-events.d.ts +4 -0
- package/lib/entries/screen/exports/bind-events.js +8 -0
- package/lib/entries/screen/exports/binding.d.ts +6 -0
- package/lib/entries/screen/exports/binding.js +15 -0
- package/lib/entries/screen/exports/device.d.ts +16 -0
- package/lib/entries/screen/exports/device.js +41 -0
- package/lib/entries/screen/exports/event.d.ts +3 -0
- package/lib/entries/screen/exports/event.js +5 -0
- package/lib/entries/screen/exports/index.d.ts +5 -0
- package/lib/entries/screen/exports/index.js +5 -0
- package/lib/entries/screen/exports/user.d.ts +2 -0
- package/lib/entries/screen/exports/user.js +8 -0
- package/lib/entries/screen/index.d.ts +8 -0
- package/lib/entries/screen/index.js +36 -0
- package/lib/feature/ai/report.d.ts +5 -0
- package/lib/feature/ai/report.js +37 -0
- package/lib/feature/dp/get-dp-value.d.ts +3 -0
- package/lib/feature/dp/get-dp-value.js +3 -0
- package/lib/feature/dp/has-dp.d.ts +2 -0
- package/lib/feature/dp/has-dp.js +1 -0
- package/lib/feature/dp/publish-dps.d.ts +7 -0
- package/lib/feature/dp/publish-dps.js +155 -0
- package/lib/feature/fit/bind-fit-to-lock.d.ts +6 -0
- package/lib/feature/fit/bind-fit-to-lock.js +222 -0
- package/lib/feature/fit/bind-lock-to-fit.d.ts +4 -0
- package/lib/feature/fit/bind-lock-to-fit.js +167 -0
- package/lib/feature/fit/ble-key.d.ts +16 -0
- package/lib/feature/fit/ble-key.js +99 -0
- package/lib/feature/fit/list.d.ts +3 -0
- package/lib/feature/fit/list.js +28 -0
- package/lib/feature/fit/method/add-flow.d.ts +7 -0
- package/lib/feature/fit/method/add-flow.js +380 -0
- package/lib/feature/fit/method/add-method-events.d.ts +5 -0
- package/lib/feature/fit/method/add-method-events.js +11 -0
- package/lib/feature/fit/method/add-password.d.ts +3 -0
- package/lib/feature/fit/method/add-password.js +99 -0
- package/lib/feature/fit/method/internal/base.d.ts +19 -0
- package/lib/feature/fit/method/internal/base.js +134 -0
- package/lib/feature/fit/method/list.d.ts +3 -0
- package/lib/feature/fit/method/list.js +64 -0
- package/lib/feature/fit/method/types.d.ts +68 -0
- package/lib/feature/fit/method/types.js +1 -0
- package/lib/feature/fit/method/update-remove.d.ts +4 -0
- package/lib/feature/fit/method/update-remove.js +159 -0
- package/lib/feature/fit/password-list.d.ts +24 -0
- package/lib/feature/fit/password-list.js +31 -0
- package/lib/feature/fit/resolve-slave-id.d.ts +2 -0
- package/lib/feature/fit/resolve-slave-id.js +38 -0
- package/lib/feature/fit/setting.d.ts +2 -0
- package/lib/feature/fit/setting.js +27 -0
- package/lib/feature/fit/shared.d.ts +27 -0
- package/lib/feature/fit/shared.js +118 -0
- package/lib/feature/fit/sync.d.ts +4 -0
- package/lib/feature/fit/sync.js +85 -0
- package/lib/feature/fit/temp-password.d.ts +27 -0
- package/lib/feature/fit/temp-password.js +428 -0
- package/lib/feature/fit/users.d.ts +12 -0
- package/lib/feature/fit/users.js +25 -0
- package/lib/feature/linkage/linkage.d.ts +10 -0
- package/lib/{linkage.js → feature/linkage/linkage.js} +30 -30
- package/lib/feature/log/log.d.ts +63 -0
- package/lib/feature/log/log.js +438 -0
- package/lib/feature/media/media.d.ts +31 -0
- package/lib/feature/media/media.js +66 -0
- package/lib/feature/media/rotate.d.ts +6 -0
- package/lib/feature/media/rotate.js +6 -0
- package/lib/feature/misc/ble-control.d.ts +2 -0
- package/lib/feature/misc/ble-control.js +38 -0
- package/lib/feature/misc/capability.d.ts +8 -0
- package/lib/{capability.js → feature/misc/capability.js} +39 -29
- package/lib/feature/misc/connect-device.d.ts +2 -0
- package/lib/feature/misc/connect-device.js +206 -0
- package/lib/feature/misc/dp-period.d.ts +18 -0
- package/lib/feature/misc/dp-period.js +75 -0
- package/lib/feature/misc/is-use-near-channel-for-runtime.d.ts +2 -0
- package/lib/feature/misc/is-use-near-channel-for-runtime.js +17 -0
- package/lib/feature/misc/open-scene.d.ts +3 -0
- package/lib/feature/misc/open-scene.js +63 -0
- package/lib/feature/misc/signal.d.ts +12 -0
- package/lib/feature/misc/signal.js +36 -0
- package/lib/feature/misc/sleep.d.ts +14 -0
- package/lib/feature/misc/sleep.js +66 -0
- package/lib/feature/misc/types.d.ts +7 -0
- package/lib/feature/misc/types.js +1 -0
- package/lib/feature/misc/update-config.d.ts +4 -0
- package/lib/feature/misc/update-config.js +9 -0
- package/lib/feature/misc/validate-pwd.d.ts +2 -0
- package/lib/feature/misc/validate-pwd.js +10 -0
- package/lib/feature/misc/yu-channel.d.ts +6 -0
- package/lib/feature/misc/yu-channel.js +26 -0
- package/lib/feature/offline-dps/index.d.ts +10 -0
- package/lib/feature/offline-dps/index.js +133 -0
- package/lib/feature/password/ble-temp-payload.d.ts +3 -0
- package/lib/{sync → feature/password}/ble-temp-payload.js +10 -10
- package/lib/feature/password/sync-temp.d.ts +4 -0
- package/lib/feature/password/sync-temp.js +91 -0
- package/lib/feature/password/temporary/custom-dp-ble.d.ts +6 -0
- package/lib/feature/password/temporary/custom-dp-ble.js +263 -0
- package/lib/feature/password/temporary/custom-dp-create-shared.d.ts +34 -0
- package/lib/feature/password/temporary/custom-dp-create-shared.js +64 -0
- package/lib/feature/password/temporary/custom-dp.d.ts +6 -0
- package/lib/feature/password/temporary/custom-dp.js +241 -0
- package/lib/feature/password/temporary/freeze-ble-key.d.ts +4 -0
- package/lib/feature/password/temporary/freeze-ble-key.js +7 -0
- package/lib/feature/password/temporary/freeze-rename.d.ts +5 -0
- package/lib/feature/password/temporary/freeze-rename.js +72 -0
- package/lib/feature/password/temporary/internal/change-password-phase.d.ts +2 -0
- package/lib/feature/password/temporary/internal/change-password-phase.js +48 -0
- package/lib/feature/password/temporary/internal/constants.d.ts +12 -0
- package/lib/feature/password/temporary/internal/constants.js +21 -0
- package/lib/feature/password/temporary/internal/password-helpers.d.ts +4 -0
- package/lib/feature/password/temporary/internal/password-helpers.js +18 -0
- package/lib/feature/password/temporary/internal/password-type-map.d.ts +2 -0
- package/lib/feature/password/temporary/internal/password-type-map.js +7 -0
- package/lib/feature/password/temporary/lists.d.ts +16 -0
- package/lib/feature/password/temporary/lists.js +157 -0
- package/lib/feature/password/temporary/offline-create.d.ts +7 -0
- package/lib/feature/password/temporary/offline-create.js +192 -0
- package/lib/feature/password/temporary/types.d.ts +107 -0
- package/lib/feature/password/temporary/types.js +1 -0
- package/lib/feature/password/temporary/wifi-offline.d.ts +5 -0
- package/lib/feature/password/temporary/wifi-offline.js +85 -0
- package/lib/feature/password/temporary/wifi-online.d.ts +28 -0
- package/lib/feature/password/temporary/wifi-online.js +153 -0
- package/lib/feature/screen/bind-watch.d.ts +18 -0
- package/lib/feature/screen/bind-watch.js +92 -0
- package/lib/feature/screen/bind.d.ts +4 -0
- package/lib/feature/screen/bind.js +151 -0
- package/lib/feature/screen/error.d.ts +1 -0
- package/lib/feature/screen/error.js +34 -0
- package/lib/feature/screen/event.d.ts +3 -0
- package/lib/feature/screen/event.js +19 -0
- package/lib/feature/screen/list.d.ts +13 -0
- package/lib/feature/screen/list.js +69 -0
- package/lib/feature/service/goto-service.d.ts +5 -0
- package/lib/feature/service/goto-service.js +16 -0
- package/lib/feature/state/clear.d.ts +2 -0
- package/lib/feature/state/clear.js +17 -0
- package/lib/feature/state/device-status-events.d.ts +5 -0
- package/lib/feature/state/device-status-events.js +11 -0
- package/lib/feature/state/device-status.d.ts +5 -0
- package/lib/feature/state/device-status.js +130 -0
- package/lib/feature/state/dp-change.d.ts +3 -0
- package/lib/feature/state/dp-change.js +44 -0
- package/lib/feature/state/init-state.d.ts +2 -0
- package/lib/feature/state/init-state.js +175 -0
- package/lib/feature/state/internal/read-is-sleep.d.ts +2 -0
- package/lib/feature/state/internal/read-is-sleep.js +9 -0
- package/lib/feature/state/internal/share-thread-local.d.ts +2 -0
- package/lib/feature/state/internal/share-thread-local.js +4 -0
- package/lib/feature/state/platform-routing.d.ts +3 -0
- package/lib/feature/state/platform-routing.js +155 -0
- package/lib/feature/state/remote-permissions.d.ts +4 -0
- package/lib/feature/state/remote-permissions.js +30 -0
- package/lib/feature/state/sync/offline-dps.d.ts +2 -0
- package/lib/feature/state/sync/offline-dps.js +71 -0
- package/lib/feature/state/sync/remote-serect-key.d.ts +3 -0
- package/lib/feature/state/sync/remote-serect-key.js +74 -0
- package/lib/feature/state/sync/t0.d.ts +3 -0
- package/lib/feature/state/sync/t0.js +64 -0
- package/lib/feature/unlock/door/check-remote.d.ts +2 -0
- package/lib/feature/unlock/door/check-remote.js +40 -0
- package/lib/feature/unlock/door/check-user-valid.d.ts +2 -0
- package/lib/feature/unlock/door/check-user-valid.js +21 -0
- package/lib/feature/unlock/door/door-action.d.ts +2 -0
- package/lib/feature/unlock/door/door-action.js +32 -0
- package/lib/feature/unlock/door/door-ble-only.d.ts +2 -0
- package/lib/feature/unlock/door/door-ble-only.js +102 -0
- package/lib/feature/unlock/door/door-matter-lan.d.ts +2 -0
- package/lib/feature/unlock/door/door-matter-lan.js +15 -0
- package/lib/feature/unlock/door/door-near-dual-mode.d.ts +2 -0
- package/lib/feature/unlock/door/door-near-dual-mode.js +39 -0
- package/lib/feature/unlock/door/door-remote-cloud.d.ts +2 -0
- package/lib/feature/unlock/door/door-remote-cloud.js +69 -0
- package/lib/feature/unlock/door/door-report.d.ts +11 -0
- package/lib/feature/unlock/door/door-report.js +96 -0
- package/lib/feature/unlock/door/internal/report-error.d.ts +2 -0
- package/lib/feature/unlock/door/internal/report-error.js +46 -0
- package/lib/feature/unlock/door/open-close-path.d.ts +3 -0
- package/lib/feature/unlock/door/open-close-path.js +30 -0
- package/lib/feature/unlock/door/remote-permission.d.ts +5 -0
- package/lib/feature/unlock/door/remote-permission.js +67 -0
- package/lib/feature/unlock/door/remove-share-user-once.d.ts +2 -0
- package/lib/feature/unlock/door/remove-share-user-once.js +21 -0
- package/lib/feature/unlock/door/types.d.ts +4 -0
- package/lib/feature/unlock/door/types.js +1 -0
- package/lib/feature/unlock/door/voice-unlock-pwd.d.ts +4 -0
- package/lib/feature/unlock/door/voice-unlock-pwd.js +25 -0
- package/lib/feature/unlock/door/wifi-pro-confirm.d.ts +2 -0
- package/lib/feature/unlock/door/wifi-pro-confirm.js +69 -0
- package/lib/feature/unlock/method/add-flow.d.ts +7 -0
- package/lib/feature/unlock/method/add-flow.js +403 -0
- package/lib/feature/unlock/method/add-method-events.d.ts +5 -0
- package/lib/feature/unlock/method/add-method-events.js +11 -0
- package/lib/feature/unlock/method/add-password.d.ts +3 -0
- package/lib/feature/unlock/method/add-password.js +99 -0
- package/lib/feature/unlock/method/bind-unbind.d.ts +8 -0
- package/lib/feature/unlock/method/bind-unbind.js +113 -0
- package/lib/feature/unlock/method/detail.d.ts +3 -0
- package/lib/feature/unlock/method/detail.js +35 -0
- package/lib/feature/unlock/method/guide.d.ts +3 -0
- package/lib/feature/unlock/method/guide.js +48 -0
- package/lib/feature/unlock/method/internal/base.d.ts +109 -0
- package/lib/feature/unlock/method/internal/base.js +89 -0
- package/lib/feature/unlock/method/internal/errors.d.ts +5 -0
- package/lib/feature/unlock/method/internal/errors.js +13 -0
- package/lib/feature/unlock/method/internal/special-check.d.ts +13 -0
- package/lib/feature/unlock/method/internal/special-check.js +38 -0
- package/lib/feature/unlock/method/types.d.ts +70 -0
- package/lib/feature/unlock/method/types.js +1 -0
- package/lib/feature/unlock/method/update-remove.d.ts +4 -0
- package/lib/feature/unlock/method/update-remove.js +138 -0
- package/lib/feature/unlock/method/verify-code.d.ts +3 -0
- package/lib/feature/unlock/method/verify-code.js +7 -0
- package/lib/feature/unlock/sync/unlock-method.d.ts +3 -0
- package/lib/feature/unlock/sync/unlock-method.js +79 -0
- package/lib/feature/user/current-user.d.ts +3 -0
- package/lib/feature/user/current-user.js +33 -0
- package/lib/feature/user/delete-user-dp.d.ts +3 -0
- package/lib/{utils/user.js → feature/user/delete-user-dp.js} +13 -13
- package/lib/feature/user/share-user.d.ts +29 -0
- package/lib/feature/user/share-user.js +228 -0
- package/lib/feature/user/sync-user.d.ts +2 -0
- package/lib/feature/user/sync-user.js +151 -0
- package/lib/feature/user/user.d.ts +37 -0
- package/lib/feature/user/user.js +484 -0
- package/lib/feature/utils/index.d.ts +12 -0
- package/lib/feature/utils/index.js +165 -0
- package/lib/feature/voice-file/voice-file.d.ts +27 -0
- package/lib/feature/voice-file/voice-file.js +203 -0
- package/lib/fit.d.ts +4 -0
- package/lib/fit.js +3 -0
- package/lib/index.d.ts +2 -21
- package/lib/index.js +1 -74
- package/lib/interface.d.ts +54 -3
- package/lib/{utils → platform}/device.d.ts +49 -1
- package/lib/{utils → platform}/device.js +154 -3
- package/lib/platform/index.d.ts +2 -0
- package/lib/platform/index.js +2 -0
- package/lib/{utils → platform}/ipc.d.ts +3 -0
- package/lib/{utils → platform}/ipc.js +14 -0
- package/lib/platform/transport/index.d.ts +1 -0
- package/lib/platform/transport/index.js +1 -0
- package/lib/runtime/LockDeviceRuntime.d.ts +12 -0
- package/lib/runtime/LockDeviceRuntime.js +34 -0
- package/lib/runtime/device-status/compute-device-status.d.ts +25 -0
- package/lib/runtime/device-status/compute-device-status.js +94 -0
- package/lib/runtime/index.d.ts +5 -0
- package/lib/runtime/index.js +3 -0
- package/lib/runtime/lock-config.d.ts +28 -0
- package/lib/runtime/lock-config.js +37 -0
- package/lib/runtime/registry.d.ts +7 -0
- package/lib/runtime/registry.js +28 -0
- package/lib/runtime/runtime-state-types.d.ts +20 -0
- package/lib/runtime/runtime-state-types.js +1 -0
- package/lib/screen.d.ts +4 -0
- package/lib/screen.js +3 -0
- package/lib/utils/constant.d.ts +3 -0
- package/lib/utils/constant.js +3 -0
- package/lib/utils/errors.js +39 -4
- package/lib/utils/event.js +2 -1
- package/lib/utils/index.d.ts +57 -13
- package/lib/utils/index.js +49 -118
- package/lib/utils/sdk-log.d.ts +28 -0
- package/lib/utils/sdk-log.js +128 -0
- package/package.json +26 -7
- package/lib/capability.d.ts +0 -4
- package/lib/config/index.d.ts +0 -28
- package/lib/config/index.js +0 -41
- package/lib/event.d.ts +0 -2
- package/lib/event.js +0 -2
- package/lib/linkage.d.ts +0 -8
- package/lib/log.d.ts +0 -41
- package/lib/log.js +0 -311
- package/lib/media.d.ts +0 -14
- package/lib/media.js +0 -27
- package/lib/offline-dps.d.ts +0 -9
- package/lib/offline-dps.js +0 -76
- package/lib/open/ble-dedicated-dp.d.ts +0 -4
- package/lib/open/ble-dedicated-dp.js +0 -148
- package/lib/open/ble-remote-no-dp-key.d.ts +0 -4
- package/lib/open/ble-remote-no-dp-key.js +0 -69
- package/lib/open/report-status.d.ts +0 -1
- package/lib/open/report-status.js +0 -23
- package/lib/open.d.ts +0 -22
- package/lib/open.js +0 -262
- package/lib/other.d.ts +0 -31
- package/lib/other.js +0 -291
- package/lib/signal.d.ts +0 -14
- package/lib/signal.js +0 -31
- package/lib/sleep.d.ts +0 -19
- package/lib/sleep.js +0 -79
- package/lib/state.d.ts +0 -16
- package/lib/state.js +0 -351
- package/lib/sync/ble-temp-payload.d.ts +0 -2
- package/lib/sync/offline-dps.d.ts +0 -1
- package/lib/sync/offline-dps.js +0 -29
- package/lib/sync/remote-serect-key.d.ts +0 -2
- package/lib/sync/remote-serect-key.js +0 -43
- package/lib/sync/t0.d.ts +0 -2
- package/lib/sync/t0.js +0 -26
- package/lib/sync/temp.d.ts +0 -3
- package/lib/sync/temp.js +0 -70
- package/lib/sync/unlock-method.d.ts +0 -2
- package/lib/sync/unlock-method.js +0 -42
- package/lib/sync/user.d.ts +0 -2
- package/lib/sync/user.js +0 -68
- package/lib/temporary.d.ts +0 -171
- package/lib/temporary.js +0 -698
- package/lib/unlock-method.d.ts +0 -90
- package/lib/unlock-method.js +0 -701
- package/lib/user.d.ts +0 -30
- package/lib/user.js +0 -298
- package/lib/utils/publishDps.d.ts +0 -6
- package/lib/utils/publishDps.js +0 -78
- package/lib/utils/user.d.ts +0 -2
- /package/lib/{parse/index.d.ts → utils/parse.d.ts} +0 -0
- /package/lib/{parse/index.js → utils/parse.js} +0 -0
package/lib/state.js
DELETED
|
@@ -1,351 +0,0 @@
|
|
|
1
|
-
import config, { hasCapability, hasDp } from "./config";
|
|
2
|
-
import { onDpDataChange, onDeviceInfoUpdated, offDeviceInfoUpdated, offDpDataChange, registerDevice, getDeviceOnlineType, onOnlineChange, offOnlineChange, onBleChange, offBleChange, registerBleStatus, getDeviceInfo, onMqttMessage, registerMQTTDeviceListener, registerMQTTProtocolListener, offMqttMessage, onAppShow, onAppHide, } from "./utils/device";
|
|
3
|
-
import { getDeviceProperties } from "./api/setting";
|
|
4
|
-
import { parseCapabilities } from "./parse";
|
|
5
|
-
import emitter from "./utils/event";
|
|
6
|
-
import { DPCHANGE, LOGCHANGE } from "./utils/constant";
|
|
7
|
-
import dpCodes, { latLogDpCodes } from "./config/dp-code";
|
|
8
|
-
import { getCurrentUserInfo } from "./api/user";
|
|
9
|
-
import { equels, getDataWithPreFetch, isOnlineByType } from "./utils";
|
|
10
|
-
import { getRotateInfo } from "./api/video";
|
|
11
|
-
import syncT0 from "./sync/t0";
|
|
12
|
-
import syncRemoteSerectKey from "./sync/remote-serect-key";
|
|
13
|
-
import { autoSyncUnlockMethod } from "./sync/unlock-method";
|
|
14
|
-
import { autoSyncTemp, handleBleSyncRequestReport } from "./sync/temp";
|
|
15
|
-
import { DEVICE_STATUS_CHANGE_EVENT, SLEEP_EVENT } from "./event";
|
|
16
|
-
import { getSleepPeriod, isSleep } from "./sleep";
|
|
17
|
-
import { ProductCommunicationType } from "./constant";
|
|
18
|
-
import { getDeviceAdvancedAbilities, isShareThead } from "./capability";
|
|
19
|
-
import { isSupportBleControl } from "./other";
|
|
20
|
-
import syncDeleteUsers from "./sync/user";
|
|
21
|
-
import { syncOfflineDps } from "./sync/offline-dps";
|
|
22
|
-
import { checkOfflineDpUpdate } from "./offline-dps";
|
|
23
|
-
let dpState = {};
|
|
24
|
-
let logRefreshTimer = 0;
|
|
25
|
-
export const clearState = () => {
|
|
26
|
-
dpState = {};
|
|
27
|
-
};
|
|
28
|
-
export const getDpValue = (code) => {
|
|
29
|
-
return dpState[code];
|
|
30
|
-
};
|
|
31
|
-
const updateOnlineType = async () => {
|
|
32
|
-
const [devInfo, onlineType] = await Promise.all([
|
|
33
|
-
getDeviceInfo(config.devInfo.devId),
|
|
34
|
-
getDeviceOnlineType(config.devInfo.devId),
|
|
35
|
-
]);
|
|
36
|
-
config.onlineType = onlineType;
|
|
37
|
-
config.devInfo = devInfo;
|
|
38
|
-
updateDeviceStatus();
|
|
39
|
-
};
|
|
40
|
-
export const getDeviceStatus = () => {
|
|
41
|
-
const { onlineType, devInfo: { isCloudOnline, isOnline, wifiEnableState, isMatter }, } = config;
|
|
42
|
-
const supportWifi = hasCapability(ProductCommunicationType.WIFI);
|
|
43
|
-
const supportBle = hasCapability(ProductCommunicationType.BLUETOOTH);
|
|
44
|
-
const supportThread = hasCapability(ProductCommunicationType.THREAD);
|
|
45
|
-
const status = {
|
|
46
|
-
type: isOnline ? "online" : "offline",
|
|
47
|
-
connectEnable: false,
|
|
48
|
-
onlineType: "unknown",
|
|
49
|
-
onlineTypes: [],
|
|
50
|
-
isWifiActive: wifiEnableState !== 1,
|
|
51
|
-
isWifiMatter: !!isMatter && supportWifi,
|
|
52
|
-
};
|
|
53
|
-
const isBleOnline = isOnlineByType(onlineType, 2);
|
|
54
|
-
const isMatterLocal = isOnlineByType(onlineType, 8);
|
|
55
|
-
const isLocalOnline = !isCloudOnline && isOnlineByType(onlineType, 1);
|
|
56
|
-
const hasWirelessAwakeDp = hasDp(dpCodes.wirelessAwake);
|
|
57
|
-
const wirelessAwake = getDpValue(dpCodes.wirelessAwake);
|
|
58
|
-
status.connectEnable = isSupportBleControl() && !isOnline;
|
|
59
|
-
if (supportWifi) {
|
|
60
|
-
if (!status.connectEnable) {
|
|
61
|
-
if (isCloudOnline) {
|
|
62
|
-
status.connectEnable =
|
|
63
|
-
hasWirelessAwakeDp && wirelessAwake === false && !isBleOnline;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
if (isOnline) {
|
|
68
|
-
if (isCloudOnline) {
|
|
69
|
-
if (hasWirelessAwakeDp) {
|
|
70
|
-
if (wirelessAwake) {
|
|
71
|
-
status.onlineTypes.push("cloud");
|
|
72
|
-
}
|
|
73
|
-
else {
|
|
74
|
-
status.type = "offline";
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
status.onlineTypes.push("cloud");
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
if (isLocalOnline) {
|
|
82
|
-
status.onlineTypes.push("local");
|
|
83
|
-
}
|
|
84
|
-
if (isMatterLocal) {
|
|
85
|
-
if (!status.onlineTypes.includes("local")) {
|
|
86
|
-
status.onlineTypes.push("local");
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
if (isBleOnline) {
|
|
90
|
-
status.onlineTypes.push("ble");
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
if (status.onlineTypes.length === 0 && isOnline) {
|
|
94
|
-
status.onlineTypes.push("unknown");
|
|
95
|
-
}
|
|
96
|
-
if (supportThread && supportBle) {
|
|
97
|
-
const isShareThread = isShareThead();
|
|
98
|
-
if (isShareThread && isOnline) {
|
|
99
|
-
if (!status.onlineTypes.includes("local")) {
|
|
100
|
-
status.onlineTypes = ["local"];
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
if (status.onlineTypes.includes("ble")) {
|
|
105
|
-
status.onlineType = "ble";
|
|
106
|
-
}
|
|
107
|
-
else if (status.onlineTypes.includes("cloud")) {
|
|
108
|
-
status.onlineType = "cloud";
|
|
109
|
-
}
|
|
110
|
-
else if (status.onlineTypes.includes("local")) {
|
|
111
|
-
status.onlineType = "local";
|
|
112
|
-
}
|
|
113
|
-
else {
|
|
114
|
-
status.onlineType = "unknown";
|
|
115
|
-
}
|
|
116
|
-
if (!isOnline) {
|
|
117
|
-
if (isSleep()) {
|
|
118
|
-
status.type = "sleep";
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
if (status.type === "sleep") {
|
|
122
|
-
if (getDpValue(dpCodes.dormantSwitch) || getDpValue(dpCodes.onlineSwitch)) {
|
|
123
|
-
status.sleepPeriod = getSleepPeriod();
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
return status;
|
|
127
|
-
};
|
|
128
|
-
const updateDeviceStatus = () => {
|
|
129
|
-
const status = getDeviceStatus();
|
|
130
|
-
if (!equels(config.deviceStatus, status)) {
|
|
131
|
-
config.deviceStatus = status;
|
|
132
|
-
emitter.emit(DEVICE_STATUS_CHANGE_EVENT, status);
|
|
133
|
-
}
|
|
134
|
-
if (status.type === "online") {
|
|
135
|
-
syncDeleteUsers();
|
|
136
|
-
}
|
|
137
|
-
};
|
|
138
|
-
const handleDpChange = (dps, notEmit) => {
|
|
139
|
-
let refleshLogsEnabled = false;
|
|
140
|
-
const dpData = Object.keys(dps).reduce((acc, key) => {
|
|
141
|
-
const code = config.codesById[key];
|
|
142
|
-
if (code) {
|
|
143
|
-
acc[code] = dps[key];
|
|
144
|
-
if (!refleshLogsEnabled && latLogDpCodes.includes(code)) {
|
|
145
|
-
refleshLogsEnabled = true;
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
return acc;
|
|
149
|
-
}, {});
|
|
150
|
-
if (dpData[dpCodes.deviceInfo]) {
|
|
151
|
-
config.capabilities = parseCapabilities(dpData[dpCodes.deviceInfo]);
|
|
152
|
-
}
|
|
153
|
-
Object.assign(dpState, dpData);
|
|
154
|
-
if (!notEmit) {
|
|
155
|
-
emitter.emit(DPCHANGE, dpData);
|
|
156
|
-
if (typeof dpData[dpCodes.linkMode] !== "undefined") {
|
|
157
|
-
emitter.emit(SLEEP_EVENT, {
|
|
158
|
-
sleep: isSleep(),
|
|
159
|
-
});
|
|
160
|
-
}
|
|
161
|
-
if (refleshLogsEnabled) {
|
|
162
|
-
clearTimeout(logRefreshTimer);
|
|
163
|
-
logRefreshTimer = setTimeout(() => {
|
|
164
|
-
emitter.emit(LOGCHANGE, dpData);
|
|
165
|
-
}, 2000);
|
|
166
|
-
}
|
|
167
|
-
checkOfflineDpUpdate(dpData);
|
|
168
|
-
if (typeof dpData[dpCodes.bleSyncRequest] !== "undefined") {
|
|
169
|
-
handleBleSyncRequestReport(dpData[dpCodes.bleSyncRequest]);
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
};
|
|
173
|
-
const handleDeviceDpsChange = ({ dps, deviceId, }) => {
|
|
174
|
-
if (deviceId === config.devInfo.devId) {
|
|
175
|
-
handleDpChange(dps);
|
|
176
|
-
updateDeviceStatus();
|
|
177
|
-
}
|
|
178
|
-
};
|
|
179
|
-
const handleDeviceInfoChange = ({ dps, deviceId, }) => {
|
|
180
|
-
if (deviceId === config.devInfo.devId && dps) {
|
|
181
|
-
handleDpChange(dps);
|
|
182
|
-
}
|
|
183
|
-
updateOnlineType();
|
|
184
|
-
updateDeviceStatus();
|
|
185
|
-
};
|
|
186
|
-
let currentUser = null;
|
|
187
|
-
export const getCurrentUser = async (isForce) => {
|
|
188
|
-
if (currentUser && !isForce) {
|
|
189
|
-
return currentUser;
|
|
190
|
-
}
|
|
191
|
-
if (isForce) {
|
|
192
|
-
currentUser = await getCurrentUserInfo(config.devInfo.devId);
|
|
193
|
-
}
|
|
194
|
-
else {
|
|
195
|
-
currentUser = await getDataWithPreFetch("getCurrentUser", () => getCurrentUserInfo(config.devInfo.devId));
|
|
196
|
-
}
|
|
197
|
-
currentUser.allOpenDps = currentUser.allOpenDps || "";
|
|
198
|
-
return currentUser;
|
|
199
|
-
};
|
|
200
|
-
export const getCurrentUserSync = () => {
|
|
201
|
-
return currentUser;
|
|
202
|
-
};
|
|
203
|
-
export const getMediaRotate = () => {
|
|
204
|
-
return {
|
|
205
|
-
imageAngle: config.imageAngle,
|
|
206
|
-
videoAngle: config.videoAngle,
|
|
207
|
-
};
|
|
208
|
-
};
|
|
209
|
-
export const permissions = [
|
|
210
|
-
"adminsOnly",
|
|
211
|
-
"everyOne",
|
|
212
|
-
"noOne",
|
|
213
|
-
];
|
|
214
|
-
var DeviceProperties;
|
|
215
|
-
(function (DeviceProperties) {
|
|
216
|
-
DeviceProperties["REMOTE_UNLOCK_AUTH"] = "REMOTE_UNLOCK_AUTH";
|
|
217
|
-
DeviceProperties["UNLOCK_PHONE_REMOTE"] = "UNLOCK_PHONE_REMOTE";
|
|
218
|
-
})(DeviceProperties || (DeviceProperties = {}));
|
|
219
|
-
const propsList = [
|
|
220
|
-
DeviceProperties.REMOTE_UNLOCK_AUTH,
|
|
221
|
-
DeviceProperties.UNLOCK_PHONE_REMOTE,
|
|
222
|
-
];
|
|
223
|
-
const fetchDeviceProperties = async (isForce) => {
|
|
224
|
-
let result = null;
|
|
225
|
-
if (isForce) {
|
|
226
|
-
result = await getDeviceProperties(config.devInfo.devId, propsList);
|
|
227
|
-
}
|
|
228
|
-
else {
|
|
229
|
-
result = await getDataWithPreFetch("getDeviceProperties", () => {
|
|
230
|
-
return getDeviceProperties(config.devInfo.devId, propsList);
|
|
231
|
-
});
|
|
232
|
-
}
|
|
233
|
-
config.remoteOpenEnabled =
|
|
234
|
-
result[DeviceProperties.UNLOCK_PHONE_REMOTE] === "true";
|
|
235
|
-
config.remoteOpenPermission =
|
|
236
|
-
permissions[+result[DeviceProperties.REMOTE_UNLOCK_AUTH] || 0];
|
|
237
|
-
};
|
|
238
|
-
export const initState = async () => {
|
|
239
|
-
const { devInfo: { dps, devId }, dpSchema, } = config;
|
|
240
|
-
handleDpChange(dps, true);
|
|
241
|
-
const isSupportVideo = !!dpSchema[dpCodes.initiativeMessage];
|
|
242
|
-
config.deviceStatus = getDeviceStatus();
|
|
243
|
-
const [, , rotateInfo] = await Promise.all([
|
|
244
|
-
updateOnlineType(),
|
|
245
|
-
getCurrentUser(),
|
|
246
|
-
isSupportVideo
|
|
247
|
-
? getDataWithPreFetch("getRotate", () => getRotateInfo(devId))
|
|
248
|
-
: Promise.resolve({
|
|
249
|
-
angle: 0,
|
|
250
|
-
actualAngle: 0,
|
|
251
|
-
}),
|
|
252
|
-
]);
|
|
253
|
-
config.imageAngle = rotateInfo.angle;
|
|
254
|
-
config.videoAngle = rotateInfo.actualAngle;
|
|
255
|
-
fetchDeviceProperties();
|
|
256
|
-
getDeviceAdvancedAbilities();
|
|
257
|
-
syncRemoteSerectKey();
|
|
258
|
-
checkOfflineDpUpdate({}, true).then(() => {
|
|
259
|
-
setTimeout(() => {
|
|
260
|
-
syncOfflineDps();
|
|
261
|
-
}, 3000);
|
|
262
|
-
});
|
|
263
|
-
setTimeout(() => {
|
|
264
|
-
syncT0();
|
|
265
|
-
autoSyncUnlockMethod();
|
|
266
|
-
}, 2000);
|
|
267
|
-
setTimeout(() => {
|
|
268
|
-
autoSyncTemp();
|
|
269
|
-
syncDeleteUsers();
|
|
270
|
-
}, 3000);
|
|
271
|
-
};
|
|
272
|
-
const handleMqttMessage = ({ deviceId, messageData, protocol }) => {
|
|
273
|
-
const { devId } = config.devInfo;
|
|
274
|
-
if (devId === deviceId) {
|
|
275
|
-
switch (+protocol) {
|
|
276
|
-
case 23: {
|
|
277
|
-
if (messageData?.data?.signal || messageData?.data?.signal === 0) {
|
|
278
|
-
const signal = messageData.data.signal;
|
|
279
|
-
let signalText = "bad";
|
|
280
|
-
if (signal > -50) {
|
|
281
|
-
signalText = "good";
|
|
282
|
-
}
|
|
283
|
-
else if (signal <= -50 && signal > -65) {
|
|
284
|
-
signalText = "normal";
|
|
285
|
-
}
|
|
286
|
-
else if (signal <= -65 && signal > -75) {
|
|
287
|
-
signalText = "weak";
|
|
288
|
-
}
|
|
289
|
-
emitter.emit("onWiFiSignalChange", {
|
|
290
|
-
signal,
|
|
291
|
-
level: signalText,
|
|
292
|
-
});
|
|
293
|
-
}
|
|
294
|
-
break;
|
|
295
|
-
}
|
|
296
|
-
}
|
|
297
|
-
}
|
|
298
|
-
};
|
|
299
|
-
let hasEvent = false;
|
|
300
|
-
const handleBleChange = ({ deviceId, status }) => {
|
|
301
|
-
if (deviceId === config.devInfo.devId && status === "CONNECTED") {
|
|
302
|
-
syncRemoteSerectKey();
|
|
303
|
-
autoSyncTemp();
|
|
304
|
-
syncT0();
|
|
305
|
-
syncOfflineDps();
|
|
306
|
-
}
|
|
307
|
-
};
|
|
308
|
-
const handleAppShow = () => {
|
|
309
|
-
getCurrentUser(true);
|
|
310
|
-
fetchDeviceProperties();
|
|
311
|
-
checkOfflineDpUpdate({}, true);
|
|
312
|
-
setTimeout(() => {
|
|
313
|
-
syncDeleteUsers();
|
|
314
|
-
}, 1000);
|
|
315
|
-
};
|
|
316
|
-
const handleAppHide = () => { };
|
|
317
|
-
export const addEvents = () => {
|
|
318
|
-
if (hasEvent) {
|
|
319
|
-
return;
|
|
320
|
-
}
|
|
321
|
-
const { devId } = config.devInfo;
|
|
322
|
-
hasEvent = true;
|
|
323
|
-
registerDevice([devId]);
|
|
324
|
-
registerBleStatus(devId);
|
|
325
|
-
registerMQTTDeviceListener(devId);
|
|
326
|
-
registerMQTTProtocolListener(23);
|
|
327
|
-
onMqttMessage(handleMqttMessage);
|
|
328
|
-
onDpDataChange(handleDeviceDpsChange);
|
|
329
|
-
onDeviceInfoUpdated(handleDeviceInfoChange);
|
|
330
|
-
onOnlineChange(updateOnlineType);
|
|
331
|
-
onBleChange(handleBleChange);
|
|
332
|
-
onAppShow(handleAppShow);
|
|
333
|
-
onAppHide(handleAppHide);
|
|
334
|
-
};
|
|
335
|
-
export const removeEvents = () => {
|
|
336
|
-
if (hasEvent) {
|
|
337
|
-
return;
|
|
338
|
-
}
|
|
339
|
-
hasEvent = false;
|
|
340
|
-
offDpDataChange(handleDeviceDpsChange);
|
|
341
|
-
offDeviceInfoUpdated(handleDeviceInfoChange);
|
|
342
|
-
offOnlineChange(updateOnlineType);
|
|
343
|
-
offBleChange(handleBleChange);
|
|
344
|
-
offMqttMessage(handleMqttMessage);
|
|
345
|
-
};
|
|
346
|
-
export const onDeviceStatusChange = (callback) => {
|
|
347
|
-
emitter.on(DEVICE_STATUS_CHANGE_EVENT, callback);
|
|
348
|
-
};
|
|
349
|
-
export const offDeviceStatusChange = (callback) => {
|
|
350
|
-
emitter.off(DEVICE_STATUS_CHANGE_EVENT, callback);
|
|
351
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const syncOfflineDps: () => Promise<void>;
|
package/lib/sync/offline-dps.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { clearOfflineDpData } from "../api";
|
|
2
|
-
import { getOfflineDps } from "../offline-dps";
|
|
3
|
-
import config from "../config";
|
|
4
|
-
import { isUseNearChannel } from "../utils";
|
|
5
|
-
import { publishDpsOnly } from "../utils/publishDps";
|
|
6
|
-
export const syncOfflineDps = async () => {
|
|
7
|
-
if (config.supportOfflineDps) {
|
|
8
|
-
const useNear = isUseNearChannel();
|
|
9
|
-
if (useNear) {
|
|
10
|
-
const offlineDps = await getOfflineDps();
|
|
11
|
-
try {
|
|
12
|
-
if (Object.keys(offlineDps).length) {
|
|
13
|
-
const hasTask = Object.keys(offlineDps).some((code) => offlineDps[code].pushStatus === false);
|
|
14
|
-
if (hasTask) {
|
|
15
|
-
clearOfflineDpData(config.devInfo.devId);
|
|
16
|
-
const dpData = Object.keys(offlineDps).reduce((acc, code) => {
|
|
17
|
-
acc[code] = offlineDps[code].value;
|
|
18
|
-
return acc;
|
|
19
|
-
}, {});
|
|
20
|
-
publishDpsOnly(dpData);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
catch (error) {
|
|
25
|
-
console.warn(error);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
};
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { checkRemoteKey } from "../api/lock";
|
|
2
|
-
import config from "../config";
|
|
3
|
-
import dpCodes from "../config/dp-code";
|
|
4
|
-
import { getCurrentUser, getDpValue } from "../state";
|
|
5
|
-
import { isUseNearChannel } from "../utils";
|
|
6
|
-
import { stringToBytes } from "../utils/byte";
|
|
7
|
-
import { decrypt } from "../utils/device";
|
|
8
|
-
import { publishDpsOnly } from "../utils/publishDps";
|
|
9
|
-
import dpUtils from "@ray-js/tuya-dp-transform";
|
|
10
|
-
import { reportSetKey as reportSetKeyMap, setKey as setKeyMap, } from "../config/dp-map/open";
|
|
11
|
-
const syncRemoteSerectKey = async (force) => {
|
|
12
|
-
const useNear = isUseNearChannel();
|
|
13
|
-
if (useNear) {
|
|
14
|
-
try {
|
|
15
|
-
if (!force) {
|
|
16
|
-
const keyValue = getDpValue(dpCodes.remoteNoPdSetkey);
|
|
17
|
-
if (keyValue) {
|
|
18
|
-
const keyData = dpUtils.parse(getDpValue(dpCodes.remoteNoPdSetkey), reportSetKeyMap);
|
|
19
|
-
if (keyData.status === 0) {
|
|
20
|
-
return;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
const { lockUserId, userId } = await getCurrentUser();
|
|
25
|
-
const { password, invalidTime, effectiveTime } = await checkRemoteKey(config.devInfo.devId);
|
|
26
|
-
const pw = await decrypt(config.devInfo.devId, password);
|
|
27
|
-
publishDpsOnly({
|
|
28
|
-
[dpCodes.remoteNoPdSetkey]: dpUtils.format({
|
|
29
|
-
valid: true,
|
|
30
|
-
memberId: lockUserId !== 0 ? lockUserId : userId,
|
|
31
|
-
startTime: effectiveTime,
|
|
32
|
-
endTime: invalidTime,
|
|
33
|
-
validNum: 100,
|
|
34
|
-
key: stringToBytes(pw),
|
|
35
|
-
}, setKeyMap),
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
catch (e) {
|
|
39
|
-
console.warn(e);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
};
|
|
43
|
-
export default syncRemoteSerectKey;
|
package/lib/sync/t0.d.ts
DELETED
package/lib/sync/t0.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { getActiveTime } from "../api";
|
|
2
|
-
import config, { hasCapability } from "../config";
|
|
3
|
-
import dpCodes from "../config/dp-code";
|
|
4
|
-
import { ProductCommunicationType } from "../constant";
|
|
5
|
-
import { isUseNearChannel } from "../utils";
|
|
6
|
-
import { publishDpsOnly } from "../utils/publishDps";
|
|
7
|
-
let hasSysncT0 = false;
|
|
8
|
-
const isNeedSync = () => {
|
|
9
|
-
const near = isUseNearChannel();
|
|
10
|
-
return (near ||
|
|
11
|
-
(config.devInfo.isOnline &&
|
|
12
|
-
hasCapability(ProductCommunicationType.THREAD)));
|
|
13
|
-
};
|
|
14
|
-
const syncT0 = async () => {
|
|
15
|
-
if (hasSysncT0) {
|
|
16
|
-
return;
|
|
17
|
-
}
|
|
18
|
-
if (config.dpSchema[dpCodes.passwordOfflineTime]) {
|
|
19
|
-
if (isNeedSync()) {
|
|
20
|
-
hasSysncT0 = true;
|
|
21
|
-
const time = await getActiveTime(config.devInfo.devId);
|
|
22
|
-
publishDpsOnly({ [dpCodes.passwordOfflineTime]: time.toString() });
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
};
|
|
26
|
-
export default syncT0;
|
package/lib/sync/temp.d.ts
DELETED
package/lib/sync/temp.js
DELETED
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { getSyncTempPasswords } from "../api/temp";
|
|
2
|
-
import config, { hasDp } from "../config";
|
|
3
|
-
import dpCodes from "../config/dp-code";
|
|
4
|
-
import { bleSyncRequest as bleSyncRequestMap, reportBleSyncRequest as reportBleSyncRequestMap, } from "../config/dp-map/ble-sync";
|
|
5
|
-
import { isUseNearChannel, parallelOnly } from "../utils";
|
|
6
|
-
import { publishBLETransparentData } from "../utils/device";
|
|
7
|
-
import { publishDpsOnly } from "../utils/publishDps";
|
|
8
|
-
import { buildBleTempPwdSyncPayload } from "./ble-temp-payload";
|
|
9
|
-
import dpUtils from "@ray-js/tuya-dp-transform";
|
|
10
|
-
const CMD_REQUEST_SYNC = 0x01;
|
|
11
|
-
const DATA_TYPE_TEMP_PWD = 0x01;
|
|
12
|
-
const NOTIFY_DEBOUNCE_MS = 2000;
|
|
13
|
-
let notifyTimer = null;
|
|
14
|
-
let isSyncingPayload = false;
|
|
15
|
-
const hasBleSyncDp = () => hasDp(dpCodes.bleSyncRequest);
|
|
16
|
-
const publishBleSyncNotify = async (hasPending) => {
|
|
17
|
-
await publishDpsOnly({
|
|
18
|
-
[dpCodes.bleSyncRequest]: dpUtils.format({ cmd: hasPending ? 0x01 : 0x00 }, bleSyncRequestMap),
|
|
19
|
-
});
|
|
20
|
-
};
|
|
21
|
-
export const notifyBleSyncRequest = parallelOnly(async () => {
|
|
22
|
-
if (!isUseNearChannel() || !hasBleSyncDp()) {
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
const { count } = await getSyncTempPasswords({
|
|
26
|
-
devId: config.devInfo.devId,
|
|
27
|
-
isUpt: false,
|
|
28
|
-
});
|
|
29
|
-
await publishBleSyncNotify(count > 0);
|
|
30
|
-
});
|
|
31
|
-
export const autoSyncTemp = () => {
|
|
32
|
-
if (!isUseNearChannel() || !hasBleSyncDp()) {
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
if (notifyTimer) {
|
|
36
|
-
clearTimeout(notifyTimer);
|
|
37
|
-
}
|
|
38
|
-
notifyTimer = setTimeout(() => {
|
|
39
|
-
notifyTimer = null;
|
|
40
|
-
notifyBleSyncRequest().catch((e) => {
|
|
41
|
-
console.warn("ble_sync_request notify error", e);
|
|
42
|
-
});
|
|
43
|
-
}, NOTIFY_DEBOUNCE_MS);
|
|
44
|
-
};
|
|
45
|
-
export const handleBleSyncRequestReport = async (rawValue) => {
|
|
46
|
-
if (!hasBleSyncDp() || !isUseNearChannel() || isSyncingPayload) {
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
const report = dpUtils.parse(rawValue, reportBleSyncRequestMap);
|
|
50
|
-
if (report.cmd !== CMD_REQUEST_SYNC || report.dataType !== DATA_TYPE_TEMP_PWD) {
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
53
|
-
isSyncingPayload = true;
|
|
54
|
-
try {
|
|
55
|
-
const { count, pwdList } = await getSyncTempPasswords({
|
|
56
|
-
devId: config.devInfo.devId,
|
|
57
|
-
isUpt: false,
|
|
58
|
-
});
|
|
59
|
-
if (count > 0 && pwdList?.length) {
|
|
60
|
-
const payload = await buildBleTempPwdSyncPayload(pwdList);
|
|
61
|
-
await publishBLETransparentData(config.devInfo.devId, payload);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
catch (e) {
|
|
65
|
-
console.warn("ble_sync_request data transfer error", e);
|
|
66
|
-
}
|
|
67
|
-
finally {
|
|
68
|
-
isSyncingPayload = false;
|
|
69
|
-
}
|
|
70
|
-
};
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { fetchSyncUnlockMethodInfo } from "../api/lock";
|
|
2
|
-
import config from "../config";
|
|
3
|
-
import dpCodes from "../config/dp-code";
|
|
4
|
-
import { getCurrentUser } from "../state";
|
|
5
|
-
import { publishDps } from "../utils/publishDps";
|
|
6
|
-
import dpUtils from "@ray-js/tuya-dp-transform";
|
|
7
|
-
import { reportSync as reportSyncMap } from "../config/dp-map/unlock-method";
|
|
8
|
-
import { reportSync as reportSyncBigMap } from "../config/dp-map/unlock-method-big";
|
|
9
|
-
let syncUnlockMethodFirst = true;
|
|
10
|
-
export const syncUnlockMethod = async () => {
|
|
11
|
-
syncUnlockMethodFirst = false;
|
|
12
|
-
const { allOpenDps = "" } = await getCurrentUser();
|
|
13
|
-
const { ins = "", distributed = false } = await fetchSyncUnlockMethodInfo({
|
|
14
|
-
devId: config.devInfo.devId,
|
|
15
|
-
dpIds: allOpenDps.split(","),
|
|
16
|
-
});
|
|
17
|
-
if (ins && distributed) {
|
|
18
|
-
const dpCode = config.supportBigData
|
|
19
|
-
? dpCodes.synchMethodW
|
|
20
|
-
: dpCodes.synchMethod;
|
|
21
|
-
try {
|
|
22
|
-
await publishDps({ [dpCode]: ins }, {
|
|
23
|
-
checkReport: (dpData) => {
|
|
24
|
-
if (typeof dpData[dpCode] !== "undefined") {
|
|
25
|
-
const result = dpUtils.parse(dpData[dpCode], config.supportBigData ? reportSyncBigMap : reportSyncMap);
|
|
26
|
-
if (result.stage === 1) {
|
|
27
|
-
return true;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
return false;
|
|
31
|
-
},
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
catch (error) {
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
export const autoSyncUnlockMethod = async () => {
|
|
39
|
-
if (syncUnlockMethodFirst) {
|
|
40
|
-
await syncUnlockMethod();
|
|
41
|
-
}
|
|
42
|
-
};
|
package/lib/sync/user.d.ts
DELETED
package/lib/sync/user.js
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { getDeviceStatus } from "../state";
|
|
2
|
-
import config from "../config";
|
|
3
|
-
import { getUsersSyncLockData } from "../api/user";
|
|
4
|
-
import { deleteUser } from "../utils/user";
|
|
5
|
-
import { isUseNearChannel } from "../utils";
|
|
6
|
-
let isSyncing = false;
|
|
7
|
-
const syncDeleteUsers = async () => {
|
|
8
|
-
const deviceStatus = getDeviceStatus();
|
|
9
|
-
if (deviceStatus.isWifiActive) {
|
|
10
|
-
return;
|
|
11
|
-
}
|
|
12
|
-
if (deviceStatus.isWifiMatter) {
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
if (!isUseNearChannel()) {
|
|
16
|
-
return;
|
|
17
|
-
}
|
|
18
|
-
if (isSyncing)
|
|
19
|
-
return;
|
|
20
|
-
isSyncing = true;
|
|
21
|
-
let count = 0;
|
|
22
|
-
const handleSync = async () => {
|
|
23
|
-
try {
|
|
24
|
-
const { removedUser = [] } = await getUsersSyncLockData(config.devInfo.devId);
|
|
25
|
-
const deleteSerialCollectFailures = async (users) => {
|
|
26
|
-
const failed = [];
|
|
27
|
-
for (const item of users) {
|
|
28
|
-
try {
|
|
29
|
-
await deleteUser(item);
|
|
30
|
-
}
|
|
31
|
-
catch {
|
|
32
|
-
failed.push(item);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
return failed;
|
|
36
|
-
};
|
|
37
|
-
let failed = await deleteSerialCollectFailures(removedUser);
|
|
38
|
-
if (failed.length > 0) {
|
|
39
|
-
failed = await deleteSerialCollectFailures(failed);
|
|
40
|
-
if (failed.length > 0 && count < 3) {
|
|
41
|
-
count++;
|
|
42
|
-
setTimeout(async () => {
|
|
43
|
-
await handleSync();
|
|
44
|
-
}, 2000);
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
isSyncing = false;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
isSyncing = false;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
catch (e) {
|
|
55
|
-
if (e?.innerError?.errorCode === "DEVICE_KEY_NOT_FOUND" && count < 3) {
|
|
56
|
-
count++;
|
|
57
|
-
setTimeout(async () => {
|
|
58
|
-
await handleSync();
|
|
59
|
-
}, 2000);
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
isSyncing = false;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
};
|
|
66
|
-
handleSync();
|
|
67
|
-
};
|
|
68
|
-
export default syncDeleteUsers;
|