@ray-js/lock-sdk 1.1.3-beta.9 → 1.2.0-beta.1
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 +1 -1
- package/lib/api/index.js +10 -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 +110 -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/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 +20 -0
- package/lib/entries/main/exports/index.js +20 -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 +4 -0
- package/lib/entries/main/exports/screen/bind.js +8 -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/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 +4 -0
- package/lib/entries/screen/exports/index.js +4 -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/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.d.ts +4 -0
- package/lib/feature/screen/bind.js +181 -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 +56 -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 +167 -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 +50 -3
- package/lib/{utils → platform}/device.d.ts +48 -0
- package/lib/{utils → platform}/device.js +153 -2
- 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 +11 -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 +22 -13
- package/lib/utils/index.js +39 -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/utils/errors.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
const errors = {
|
|
2
|
+
1000: "Missing DeviceId or devInfo",
|
|
2
3
|
1001: "Device offline",
|
|
3
4
|
1002: "Operation timeout",
|
|
4
5
|
1003: "Remote unlocking failure",
|
|
5
|
-
1004: "Device reports that
|
|
6
|
+
1004: "Device reports that unlocking failed",
|
|
6
7
|
1005: "Remote unlocking failure",
|
|
7
8
|
1006: "Secret key times has been used up",
|
|
8
9
|
1007: "Secret key is not valid",
|
|
@@ -29,16 +30,16 @@ const errors = {
|
|
|
29
30
|
1028: "Delete failed",
|
|
30
31
|
1029: "Hardware ID cannot be deleted",
|
|
31
32
|
1030: "Only numeric passwords are supported",
|
|
32
|
-
1031: "
|
|
33
|
+
1031: "name length cannot exceed 20 characters",
|
|
33
34
|
1032: "Validity not configured",
|
|
34
35
|
1033: "Validity start date not configured",
|
|
35
36
|
1034: "Validity end date not configured",
|
|
36
37
|
1035: "Weekly repeat validity configuration not set",
|
|
37
38
|
1036: "Monthly repeat validity configuration not set",
|
|
38
39
|
1037: "Password already exists",
|
|
39
|
-
1038: "
|
|
40
|
+
1038: "name is duplicated",
|
|
40
41
|
1039: "Password effective time and end time are incorrect",
|
|
41
|
-
1040: "
|
|
42
|
+
1040: "Record does not exist",
|
|
42
43
|
1041: "Device has no hardware ID available",
|
|
43
44
|
1042: "Failed to add temporary password",
|
|
44
45
|
1043: "Temporary password addition failed, pre-allocated number not obtained from cloud",
|
|
@@ -68,6 +69,40 @@ const errors = {
|
|
|
68
69
|
1067: "Password limit reached within this period",
|
|
69
70
|
1068: "There is already a member with the same name",
|
|
70
71
|
1069: "No permission to modify member validity",
|
|
72
|
+
1070: "Lock SDK runtime already registered for device {0}",
|
|
73
|
+
1071: "SDK instance not set, please call init",
|
|
74
|
+
1072: "Does not support deleting family members",
|
|
75
|
+
1073: "User has been frozen",
|
|
76
|
+
1074: "User has expired",
|
|
77
|
+
1075: "User has not taken effect",
|
|
78
|
+
1076: "Share user or normal member has no permission to open/close the door",
|
|
79
|
+
1077: "Bluetooth unlocking, host ID error",
|
|
80
|
+
1078: "Bluetooth unlocking, slave ID error",
|
|
81
|
+
1079: "Bluetooth unlocking, random number error",
|
|
82
|
+
1080: "Bluetooth unlocking, parameter error",
|
|
83
|
+
1081: "Bluetooth unlocking, electronic anti-lock refuses to unlock",
|
|
84
|
+
1082: "Failed to modify temporary password",
|
|
85
|
+
1083: "Does not support emojis",
|
|
86
|
+
1084: "Incorrect sharing account",
|
|
87
|
+
1085: "Virtual key is not available",
|
|
88
|
+
1086: "Device does not exist",
|
|
89
|
+
1087: "Bluetooth sharing name already exists",
|
|
90
|
+
1088: "Fitting not bound to a lock",
|
|
91
|
+
1089: "Lock not found",
|
|
92
|
+
1090: "Update failed",
|
|
93
|
+
1091: "Parameter error",
|
|
94
|
+
1092: "No record on the device",
|
|
95
|
+
1093: "Non-admin has no permission to operate",
|
|
96
|
+
1094: "Illegal user request",
|
|
97
|
+
1095: "Lock not found",
|
|
98
|
+
1096: "Accessory and lock are not in the same home",
|
|
99
|
+
1097: "Target lock is not online",
|
|
100
|
+
1098: "Target lock does not support accessory binding",
|
|
101
|
+
1099: "Accessory does not support binding to a lock",
|
|
102
|
+
1100: "Binding limit reached",
|
|
103
|
+
1101: "The lock has already been bound, please do not bind it again",
|
|
104
|
+
1102: "Lock is binding",
|
|
105
|
+
1103: "Binding failed"
|
|
71
106
|
};
|
|
72
107
|
export const getError = (code, ...places) => {
|
|
73
108
|
if (errors[code]) {
|
package/lib/utils/event.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { sdkLog } from "./sdk-log";
|
|
1
2
|
function createEmitter() {
|
|
2
3
|
let listeners = {};
|
|
3
4
|
let cachedEvents = {};
|
|
@@ -65,7 +66,7 @@ function createEmitter() {
|
|
|
65
66
|
cb(data);
|
|
66
67
|
}
|
|
67
68
|
catch (e) {
|
|
68
|
-
|
|
69
|
+
sdkLog("warn", "event", "listenerError", { error: e });
|
|
69
70
|
}
|
|
70
71
|
}
|
|
71
72
|
}
|
package/lib/utils/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { UserType } from "../constant";
|
|
2
|
-
import { EffectiveConfig,
|
|
2
|
+
import type { EffectiveConfig, Week } from "../interface";
|
|
3
3
|
import { LoopTypes } from "./constant";
|
|
4
4
|
export declare const get24Time: (time: number) => number[];
|
|
5
5
|
export declare const getNowTime: () => number;
|
|
@@ -102,18 +102,9 @@ export declare const getPermanentSetting: () => {
|
|
|
102
102
|
};
|
|
103
103
|
export declare const isAdmin: (userType: UserType) => boolean;
|
|
104
104
|
export declare const validateEffectiveConfig: (effective?: EffectiveConfig) => void;
|
|
105
|
-
export declare const isUseNearChannel: () => boolean;
|
|
106
|
-
export declare const parseOfflinePassword: (value: string) => string;
|
|
107
105
|
export declare const formatTimestampToMilliseconds: (timestamp: number) => number;
|
|
108
|
-
export declare const
|
|
109
|
-
export declare const
|
|
110
|
-
export declare const getUnlockMethodTypeById: (id: number | string) => UnlockMethodConfig;
|
|
111
|
-
export declare const getUnlockMethodTypeByType: (type: string) => UnlockMethodConfig;
|
|
112
|
-
export declare const parallelMerge: <T extends (...args: any[]) => Promise<any>>(cb: T) => (...args: Parameters<T>) => ReturnType<T>;
|
|
113
|
-
export declare const parallelOnly: <T extends (...args: any[]) => Promise<any>>(cb: T) => (...args: Parameters<T>) => ReturnType<T>;
|
|
114
|
-
declare const preFetchKeys: readonly ["getRotate", "getCurrentUser", "getDeviceProperties"];
|
|
115
|
-
type PreFetchKey = (typeof preFetchKeys)[number];
|
|
116
|
-
export declare const getDataWithPreFetch: <T>(key: PreFetchKey, apiCb: () => Promise<T>) => Promise<T>;
|
|
106
|
+
export declare const parallelMerge: <T extends (...args: any[]) => Promise<any>>(cb: T) => (this: unknown, ...args: Parameters<T>) => Promise<any>;
|
|
107
|
+
export declare const parallelOnly: <T extends (...args: any[]) => Promise<any>>(cb: T) => (this: unknown, ...args: Parameters<T>) => Promise<any>;
|
|
117
108
|
export declare const equels: (source: any, target: any) => boolean;
|
|
118
109
|
export declare const sleep: (ms: number) => Promise<unknown>;
|
|
119
110
|
export declare const getHomeInfo: () => Promise<{
|
|
@@ -124,4 +115,22 @@ export declare const getHomeInfo: () => Promise<{
|
|
|
124
115
|
address: string;
|
|
125
116
|
admin: boolean;
|
|
126
117
|
}>;
|
|
127
|
-
export {
|
|
118
|
+
export declare const transformEffectiveConfigToValidConfig: (effective: EffectiveConfig) => {
|
|
119
|
+
startTime: number;
|
|
120
|
+
endTime: number;
|
|
121
|
+
loop: LoopTypes;
|
|
122
|
+
loopConfig: number;
|
|
123
|
+
weeks: number[];
|
|
124
|
+
days: never[];
|
|
125
|
+
startHour: number;
|
|
126
|
+
startMinute: number;
|
|
127
|
+
endHour: number;
|
|
128
|
+
endMinute: number;
|
|
129
|
+
};
|
|
130
|
+
export declare const formatPasswordToList: (password: string) => number[];
|
|
131
|
+
export declare const getAppUser: () => {
|
|
132
|
+
nickName: string;
|
|
133
|
+
avatarUrl: string;
|
|
134
|
+
phoneCode: string;
|
|
135
|
+
isTemporaryUser: boolean;
|
|
136
|
+
} | null;
|
package/lib/utils/index.js
CHANGED
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
import config, { hasCapability } from "../config";
|
|
2
|
-
import dpCodes from "../config/dp-code";
|
|
3
|
-
import { ProductCommunicationType } from "../constant";
|
|
4
1
|
import { LoopTypes } from "./constant";
|
|
5
|
-
import {
|
|
2
|
+
import { getAppUserInfo, getCurrentHomeInfo } from "../platform/device";
|
|
6
3
|
import { getError } from "./errors";
|
|
7
4
|
export const get24Time = (time) => {
|
|
8
5
|
const hours = Math.floor(time / 60);
|
|
@@ -97,97 +94,16 @@ export const validateEffectiveConfig = (effective) => {
|
|
|
97
94
|
break;
|
|
98
95
|
}
|
|
99
96
|
};
|
|
100
|
-
export const isUseNearChannel = () => {
|
|
101
|
-
const { onlineType, devInfo } = config;
|
|
102
|
-
const isBleOnline = isOnlineByType(onlineType, 2);
|
|
103
|
-
const isSupportWifi = hasCapability(ProductCommunicationType.WIFI);
|
|
104
|
-
const isSupportBle = hasCapability(ProductCommunicationType.BLUETOOTH);
|
|
105
|
-
const isSupportThread = hasCapability(ProductCommunicationType.THREAD);
|
|
106
|
-
if (isSupportWifi && isSupportBle) {
|
|
107
|
-
return isBleOnline;
|
|
108
|
-
}
|
|
109
|
-
if (isSupportThread && isSupportBle) {
|
|
110
|
-
return isBleOnline && !devInfo.isCloudOnline && !devInfo.isLocalOnline;
|
|
111
|
-
}
|
|
112
|
-
return isBleOnline;
|
|
113
|
-
};
|
|
114
|
-
export const parseOfflinePassword = (value) => {
|
|
115
|
-
if (config.passwordDigitalBase === 10) {
|
|
116
|
-
return value;
|
|
117
|
-
}
|
|
118
|
-
let digitalCode = Number(value).toString(config.passwordDigitalBase);
|
|
119
|
-
const zeroList = value.match(/(^0+)/);
|
|
120
|
-
if (zeroList) {
|
|
121
|
-
digitalCode = zeroList[0] + digitalCode;
|
|
122
|
-
}
|
|
123
|
-
if (config.passwordSupportZero === false) {
|
|
124
|
-
digitalCode = digitalCode
|
|
125
|
-
.split("")
|
|
126
|
-
.map((n) => {
|
|
127
|
-
return Number(n) + 1;
|
|
128
|
-
})
|
|
129
|
-
.join("");
|
|
130
|
-
}
|
|
131
|
-
return digitalCode;
|
|
132
|
-
};
|
|
133
97
|
export const formatTimestampToMilliseconds = (timestamp) => {
|
|
134
98
|
const isMilliseconds = timestamp.toString().length >= 13;
|
|
135
99
|
return isMilliseconds ? timestamp : timestamp * 1000;
|
|
136
100
|
};
|
|
137
|
-
export const unlockMethodConfigs = [
|
|
138
|
-
{
|
|
139
|
-
type: "password",
|
|
140
|
-
code: dpCodes.unlockPassword,
|
|
141
|
-
id: 1,
|
|
142
|
-
},
|
|
143
|
-
{
|
|
144
|
-
type: "card",
|
|
145
|
-
code: dpCodes.unlockCard,
|
|
146
|
-
id: 2,
|
|
147
|
-
},
|
|
148
|
-
{
|
|
149
|
-
type: "finger",
|
|
150
|
-
code: dpCodes.unlockFingerprint,
|
|
151
|
-
id: 3,
|
|
152
|
-
},
|
|
153
|
-
{
|
|
154
|
-
type: "face",
|
|
155
|
-
code: dpCodes.unlockFace,
|
|
156
|
-
id: 4,
|
|
157
|
-
},
|
|
158
|
-
{
|
|
159
|
-
type: "hand",
|
|
160
|
-
code: dpCodes.unlockHand,
|
|
161
|
-
id: 5,
|
|
162
|
-
},
|
|
163
|
-
{
|
|
164
|
-
type: "fingerVein",
|
|
165
|
-
code: dpCodes.unlockFingerVein,
|
|
166
|
-
id: 6,
|
|
167
|
-
},
|
|
168
|
-
];
|
|
169
|
-
const getUnlockMethodType = (cb) => {
|
|
170
|
-
const result = unlockMethodConfigs.find(cb);
|
|
171
|
-
if (result && config.dpSchema[result.code]) {
|
|
172
|
-
return result;
|
|
173
|
-
}
|
|
174
|
-
throw getError(1014);
|
|
175
|
-
};
|
|
176
|
-
export const getUnlockMethodTypeByDpCode = (dpCode) => {
|
|
177
|
-
return getUnlockMethodType((item) => item.code === dpCode);
|
|
178
|
-
};
|
|
179
|
-
export const getUnlockMethodTypeById = (id) => {
|
|
180
|
-
return getUnlockMethodType((item) => item.id === id);
|
|
181
|
-
};
|
|
182
|
-
export const getUnlockMethodTypeByType = (type) => {
|
|
183
|
-
return getUnlockMethodType((item) => item.type === type);
|
|
184
|
-
};
|
|
185
101
|
let cbIndex = 0;
|
|
186
102
|
const cbMap = {};
|
|
187
103
|
export const parallelMerge = (cb) => {
|
|
188
104
|
let isRuning = false;
|
|
189
105
|
let cbId = cbIndex++;
|
|
190
|
-
return async (...args)
|
|
106
|
+
return async function (...args) {
|
|
191
107
|
const key = JSON.stringify(args);
|
|
192
108
|
if (isRuning) {
|
|
193
109
|
if (!cbMap[cbId]) {
|
|
@@ -202,7 +118,7 @@ export const parallelMerge = (cb) => {
|
|
|
202
118
|
}
|
|
203
119
|
isRuning = true;
|
|
204
120
|
try {
|
|
205
|
-
const result = await cb(
|
|
121
|
+
const result = await cb.apply(this, args);
|
|
206
122
|
isRuning = false;
|
|
207
123
|
if (cbMap[cbId] && cbMap[cbId][key]) {
|
|
208
124
|
let list = cbMap[cbId][key];
|
|
@@ -229,14 +145,14 @@ export const parallelMerge = (cb) => {
|
|
|
229
145
|
export const parallelOnly = (cb) => {
|
|
230
146
|
let isRuning = false;
|
|
231
147
|
let cbId = cbIndex++;
|
|
232
|
-
return async (...args)
|
|
148
|
+
return async function (...args) {
|
|
233
149
|
let key;
|
|
234
150
|
if (isRuning) {
|
|
235
151
|
throw getError(1052);
|
|
236
152
|
}
|
|
237
153
|
isRuning = true;
|
|
238
154
|
try {
|
|
239
|
-
const result = await cb(
|
|
155
|
+
const result = await cb.apply(this, args);
|
|
240
156
|
isRuning = false;
|
|
241
157
|
return result;
|
|
242
158
|
}
|
|
@@ -246,35 +162,6 @@ export const parallelOnly = (cb) => {
|
|
|
246
162
|
}
|
|
247
163
|
};
|
|
248
164
|
};
|
|
249
|
-
const preFetchKeys = [
|
|
250
|
-
"getRotate",
|
|
251
|
-
"getCurrentUser",
|
|
252
|
-
"getDeviceProperties",
|
|
253
|
-
];
|
|
254
|
-
const preFetchData = {};
|
|
255
|
-
onBackgroundFetchData(preFetchKeys, (res) => {
|
|
256
|
-
Object.keys(res?.fetchedData ?? {}).forEach((key) => {
|
|
257
|
-
preFetchData[key] = res.fetchedData[key].fetchedData;
|
|
258
|
-
});
|
|
259
|
-
});
|
|
260
|
-
export const getDataWithPreFetch = async (key, apiCb) => {
|
|
261
|
-
if (config.preFetch) {
|
|
262
|
-
if (preFetchData[key]) {
|
|
263
|
-
return preFetchData[key];
|
|
264
|
-
}
|
|
265
|
-
try {
|
|
266
|
-
const result = await getBackgroundFetchData([key]);
|
|
267
|
-
if (result &&
|
|
268
|
-
result.fetchedData[key] &&
|
|
269
|
-
result.fetchedData[key].fetchedData) {
|
|
270
|
-
return result.fetchedData[key].fetchedData;
|
|
271
|
-
}
|
|
272
|
-
}
|
|
273
|
-
catch {
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
return apiCb();
|
|
277
|
-
};
|
|
278
165
|
export const equels = (source, target) => {
|
|
279
166
|
return JSON.stringify(source) === JSON.stringify(target);
|
|
280
167
|
};
|
|
@@ -289,3 +176,37 @@ export const getHomeInfo = async () => {
|
|
|
289
176
|
homeInfo = await getCurrentHomeInfo();
|
|
290
177
|
return homeInfo;
|
|
291
178
|
};
|
|
179
|
+
export const transformEffectiveConfigToValidConfig = (effective) => {
|
|
180
|
+
const loopType = effective?.repeat
|
|
181
|
+
?
|
|
182
|
+
LoopTypes[effective?.repeat?.toUpperCase()]
|
|
183
|
+
: LoopTypes.NONE;
|
|
184
|
+
const { effectiveTime = 0, expiredTime = 1439 } = effective;
|
|
185
|
+
return {
|
|
186
|
+
startTime: effective.effectiveDate,
|
|
187
|
+
endTime: effective.expiredDate,
|
|
188
|
+
loop: loopType,
|
|
189
|
+
loopConfig: 0,
|
|
190
|
+
weeks: effective.weeks ? effective.weeks : [0, 0, 0, 0, 0, 0, 0],
|
|
191
|
+
days: [],
|
|
192
|
+
startHour: Math.floor(effectiveTime / 60),
|
|
193
|
+
startMinute: effectiveTime % 60,
|
|
194
|
+
endHour: Math.floor(expiredTime / 60),
|
|
195
|
+
endMinute: expiredTime % 60,
|
|
196
|
+
};
|
|
197
|
+
};
|
|
198
|
+
export const formatPasswordToList = (password) => {
|
|
199
|
+
return password.split("").map(Number);
|
|
200
|
+
};
|
|
201
|
+
let userInfo = null;
|
|
202
|
+
export const getAppUser = () => {
|
|
203
|
+
return userInfo;
|
|
204
|
+
};
|
|
205
|
+
const getAppUserAsync = async () => {
|
|
206
|
+
const res = await getAppUserInfo();
|
|
207
|
+
userInfo = res;
|
|
208
|
+
return res;
|
|
209
|
+
};
|
|
210
|
+
getAppUserAsync().catch(() => {
|
|
211
|
+
getAppUserAsync().catch(() => undefined);
|
|
212
|
+
});
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export type SDKLogLevel = "off" | "error" | "warn" | "info" | "debug" | "trace";
|
|
2
|
+
export interface SDKLogEntry {
|
|
3
|
+
ts: number;
|
|
4
|
+
level: Exclude<SDKLogLevel, "off">;
|
|
5
|
+
module: string;
|
|
6
|
+
action: string;
|
|
7
|
+
devId?: string;
|
|
8
|
+
traceId?: string;
|
|
9
|
+
duration?: number;
|
|
10
|
+
data?: Record<string, unknown>;
|
|
11
|
+
error?: {
|
|
12
|
+
message: string;
|
|
13
|
+
code?: number;
|
|
14
|
+
stack?: string;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
export type SDKLogSink = (entry: SDKLogEntry) => void;
|
|
18
|
+
export interface SDKLogConfig {
|
|
19
|
+
level: SDKLogLevel;
|
|
20
|
+
sink?: SDKLogSink;
|
|
21
|
+
console?: boolean;
|
|
22
|
+
}
|
|
23
|
+
type SDKLogPayload = Omit<SDKLogEntry, "ts" | "level" | "module" | "action" | "error"> & {
|
|
24
|
+
error?: unknown;
|
|
25
|
+
};
|
|
26
|
+
export declare function setSDKLogConfig(next: Partial<SDKLogConfig>): void;
|
|
27
|
+
export declare function sdkLog(level: Exclude<SDKLogLevel, "off">, module: string, action: string, payload?: SDKLogPayload): void;
|
|
28
|
+
export {};
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
const levelWeights = {
|
|
2
|
+
off: 0,
|
|
3
|
+
error: 1,
|
|
4
|
+
warn: 2,
|
|
5
|
+
info: 3,
|
|
6
|
+
debug: 4,
|
|
7
|
+
trace: 5,
|
|
8
|
+
};
|
|
9
|
+
let config = {
|
|
10
|
+
level: "warn",
|
|
11
|
+
console: false,
|
|
12
|
+
};
|
|
13
|
+
const sensitiveKeyPattern = /password|pwd|token|key|secret|ins|devUnlockId|raw|dpValue/i;
|
|
14
|
+
let defaultLogManager;
|
|
15
|
+
function getDefaultLogManager() {
|
|
16
|
+
if (defaultLogManager) {
|
|
17
|
+
return defaultLogManager;
|
|
18
|
+
}
|
|
19
|
+
try {
|
|
20
|
+
if (typeof ty === "undefined") {
|
|
21
|
+
return undefined;
|
|
22
|
+
}
|
|
23
|
+
const getLogManager = ty.getLogManager;
|
|
24
|
+
if (typeof getLogManager === "function") {
|
|
25
|
+
defaultLogManager = getLogManager({ tag: "lock-sdk" });
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
defaultLogManager = null;
|
|
30
|
+
}
|
|
31
|
+
return defaultLogManager ?? undefined;
|
|
32
|
+
}
|
|
33
|
+
function getDefaultSink() {
|
|
34
|
+
const manager = getDefaultLogManager();
|
|
35
|
+
if (!manager) {
|
|
36
|
+
return undefined;
|
|
37
|
+
}
|
|
38
|
+
return (entry) => {
|
|
39
|
+
const message = JSON.stringify(entry);
|
|
40
|
+
if (typeof manager[entry.level] === "function") {
|
|
41
|
+
manager[entry.level]({
|
|
42
|
+
message,
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
manager.log({ message });
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
function sanitize(value) {
|
|
51
|
+
if (!value || typeof value !== "object") {
|
|
52
|
+
return value;
|
|
53
|
+
}
|
|
54
|
+
if (Array.isArray(value)) {
|
|
55
|
+
return value.map(sanitize);
|
|
56
|
+
}
|
|
57
|
+
return Object.keys(value).reduce((acc, key) => {
|
|
58
|
+
acc[key] = sensitiveKeyPattern.test(key)
|
|
59
|
+
? "[REDACTED]"
|
|
60
|
+
: sanitize(value[key]);
|
|
61
|
+
return acc;
|
|
62
|
+
}, {});
|
|
63
|
+
}
|
|
64
|
+
function normalizeError(error) {
|
|
65
|
+
if (!error) {
|
|
66
|
+
return undefined;
|
|
67
|
+
}
|
|
68
|
+
if (error instanceof Error) {
|
|
69
|
+
return {
|
|
70
|
+
message: error.message,
|
|
71
|
+
stack: error.stack,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
if (typeof error === "object") {
|
|
75
|
+
const err = error;
|
|
76
|
+
const rawCode = err["code"] ?? err["errorCode"];
|
|
77
|
+
const code = typeof rawCode === "number"
|
|
78
|
+
? rawCode
|
|
79
|
+
: typeof rawCode === "string"
|
|
80
|
+
? Number(rawCode)
|
|
81
|
+
: undefined;
|
|
82
|
+
return {
|
|
83
|
+
message: String(err["message"] ?? err["errorMsg"] ?? "Unknown error"),
|
|
84
|
+
code: Number.isFinite(code) ? code : undefined,
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
return {
|
|
88
|
+
message: String(error),
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
export function setSDKLogConfig(next) {
|
|
92
|
+
config = {
|
|
93
|
+
...config,
|
|
94
|
+
...next,
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
export function sdkLog(level, module, action, payload = {}) {
|
|
98
|
+
if (levelWeights[config.level] < levelWeights[level]) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
const entry = {
|
|
102
|
+
ts: Date.now(),
|
|
103
|
+
level,
|
|
104
|
+
module,
|
|
105
|
+
action,
|
|
106
|
+
devId: payload.devId,
|
|
107
|
+
traceId: payload.traceId,
|
|
108
|
+
duration: payload.duration,
|
|
109
|
+
data: sanitize(payload.data),
|
|
110
|
+
error: normalizeError(payload.error),
|
|
111
|
+
};
|
|
112
|
+
try {
|
|
113
|
+
const sink = config.sink ?? getDefaultSink();
|
|
114
|
+
sink?.(entry);
|
|
115
|
+
if (config.console) {
|
|
116
|
+
let fn = console.log;
|
|
117
|
+
if (level === "error") {
|
|
118
|
+
fn = console.error;
|
|
119
|
+
}
|
|
120
|
+
else if (level === "warn") {
|
|
121
|
+
fn = console.warn;
|
|
122
|
+
}
|
|
123
|
+
fn("[lock-sdk]", level, entry);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
catch (error) {
|
|
127
|
+
}
|
|
128
|
+
}
|
package/package.json
CHANGED
|
@@ -1,17 +1,38 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ray-js/lock-sdk",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0-beta.1",
|
|
4
4
|
"files": [
|
|
5
5
|
"lib",
|
|
6
6
|
"LICENSE.md"
|
|
7
7
|
],
|
|
8
8
|
"main": "lib/index.js",
|
|
9
9
|
"types": "lib/index.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"types": "./lib/index.d.ts",
|
|
13
|
+
"import": "./lib/index.js",
|
|
14
|
+
"default": "./lib/index.js"
|
|
15
|
+
},
|
|
16
|
+
"./fit": {
|
|
17
|
+
"types": "./lib/fit.d.ts",
|
|
18
|
+
"import": "./lib/fit.js",
|
|
19
|
+
"default": "./lib/fit.js"
|
|
20
|
+
},
|
|
21
|
+
"./screen": {
|
|
22
|
+
"types": "./lib/screen.d.ts",
|
|
23
|
+
"import": "./lib/screen.js",
|
|
24
|
+
"default": "./lib/screen.js"
|
|
25
|
+
}
|
|
26
|
+
},
|
|
10
27
|
"scripts": {
|
|
11
|
-
"build": "tsc",
|
|
12
|
-
"compile": "tsc",
|
|
28
|
+
"build": "tsc && tsc-alias -p tsconfig.json",
|
|
29
|
+
"compile": "tsc && tsc-alias -p tsconfig.json",
|
|
13
30
|
"lint": "eslint . --max-warnings 0",
|
|
14
|
-
"check-types": "tsc --noEmit"
|
|
31
|
+
"check-types": "tsc --noEmit",
|
|
32
|
+
"test": "vitest run",
|
|
33
|
+
"test:watch": "vitest",
|
|
34
|
+
"audit:api-tests": "vitest run _tests/api-test-audit.test.ts",
|
|
35
|
+
"audit:api-tests:update": "UPDATE_API_AUDIT=1 vitest run _tests/api-test-audit.test.ts"
|
|
15
36
|
},
|
|
16
37
|
"maintainers": [
|
|
17
38
|
"tuya_npm",
|
|
@@ -23,9 +44,7 @@
|
|
|
23
44
|
"devDependencies": {
|
|
24
45
|
"@turbo/gen": "^2.4.0",
|
|
25
46
|
"@types/node": "^22.13.0",
|
|
26
|
-
"@types/react": "19.0.8"
|
|
27
|
-
"eslint": "^9.21.0",
|
|
28
|
-
"typescript": "5.7.3"
|
|
47
|
+
"@types/react": "19.0.8"
|
|
29
48
|
},
|
|
30
49
|
"peerDependencies": {
|
|
31
50
|
"react": "^19.0.0"
|
package/lib/capability.d.ts
DELETED
package/lib/config/index.d.ts
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { ProductCommunicationType } from "../constant";
|
|
2
|
-
import { CapabilityInfo, DeviceInfo, DpSchema, RemotePermission, DeviceStatus, LockSDKOption } from "../interface";
|
|
3
|
-
declare const config: {
|
|
4
|
-
devInfo: DeviceInfo;
|
|
5
|
-
dpSchema: Record<string, DpSchema>;
|
|
6
|
-
codesById: Record<string, string>;
|
|
7
|
-
idsByCode: Record<string, number>;
|
|
8
|
-
remoteOpenEnabled: boolean;
|
|
9
|
-
remoteOpenPermission: RemotePermission;
|
|
10
|
-
capabilities: CapabilityInfo | null;
|
|
11
|
-
onlineType: number;
|
|
12
|
-
communication: ProductCommunicationType[];
|
|
13
|
-
supportBigData: boolean;
|
|
14
|
-
passwordDigitalBase: number;
|
|
15
|
-
passwordSupportZero: boolean;
|
|
16
|
-
strictMode: boolean;
|
|
17
|
-
imageAngle: number;
|
|
18
|
-
videoAngle: number;
|
|
19
|
-
supportMultipleFace: boolean;
|
|
20
|
-
supportOfflineDps: boolean;
|
|
21
|
-
preFetch: boolean;
|
|
22
|
-
deviceStatus: DeviceStatus;
|
|
23
|
-
};
|
|
24
|
-
type UpdateConfigParams = Omit<LockSDKOption, "devInfo" | "deviceId" | "preFetch">;
|
|
25
|
-
export declare const updateConfig: (options: UpdateConfigParams) => void;
|
|
26
|
-
export declare const hasCapability: (capability: ProductCommunicationType) => boolean;
|
|
27
|
-
export declare const hasDp: (dpCode: string) => boolean;
|
|
28
|
-
export default config;
|
package/lib/config/index.js
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
const config = {
|
|
2
|
-
devInfo: {},
|
|
3
|
-
dpSchema: {},
|
|
4
|
-
codesById: {},
|
|
5
|
-
idsByCode: {},
|
|
6
|
-
remoteOpenEnabled: false,
|
|
7
|
-
remoteOpenPermission: "everyOne",
|
|
8
|
-
capabilities: null,
|
|
9
|
-
onlineType: 0,
|
|
10
|
-
communication: [0],
|
|
11
|
-
supportBigData: false,
|
|
12
|
-
passwordDigitalBase: 10,
|
|
13
|
-
passwordSupportZero: true,
|
|
14
|
-
strictMode: true,
|
|
15
|
-
imageAngle: 0,
|
|
16
|
-
videoAngle: 0,
|
|
17
|
-
supportMultipleFace: false,
|
|
18
|
-
supportOfflineDps: false,
|
|
19
|
-
preFetch: false,
|
|
20
|
-
deviceStatus: {
|
|
21
|
-
type: "offline",
|
|
22
|
-
connectEnable: false,
|
|
23
|
-
onlineType: "none",
|
|
24
|
-
isWifiActive: false,
|
|
25
|
-
},
|
|
26
|
-
};
|
|
27
|
-
export const updateConfig = (options) => {
|
|
28
|
-
Object.keys(options).forEach((key) => {
|
|
29
|
-
const value = options[key];
|
|
30
|
-
if (value !== undefined) {
|
|
31
|
-
config[key] = value;
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
};
|
|
35
|
-
export const hasCapability = (capability) => {
|
|
36
|
-
return config.communication.includes(capability);
|
|
37
|
-
};
|
|
38
|
-
export const hasDp = (dpCode) => {
|
|
39
|
-
return !!config.dpSchema[dpCode];
|
|
40
|
-
};
|
|
41
|
-
export default config;
|
package/lib/event.d.ts
DELETED
package/lib/event.js
DELETED
package/lib/linkage.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export declare const getRemainingInfo: () => Promise<{
|
|
2
|
-
message: number;
|
|
3
|
-
phone: number;
|
|
4
|
-
}>;
|
|
5
|
-
export declare const getDoorbellService: () => Promise<import("./api/linkage").LinkageRule | undefined>;
|
|
6
|
-
export declare const enableDoorbellService: () => Promise<void>;
|
|
7
|
-
export declare const disableDoorbellService: () => Promise<void>;
|
|
8
|
-
export declare const toSetDoorbellService: () => Promise<void>;
|