@microbit/microbit-connection 0.9.0-apps.alpha.16 → 0.9.0-apps.alpha.18
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/build/cjs/async-util.d.ts +3 -1
- package/build/cjs/async-util.js +5 -1
- package/build/cjs/async-util.js.map +1 -1
- package/build/cjs/bluetooth/ble-error.d.ts +10 -0
- package/build/cjs/bluetooth/ble-error.js +47 -0
- package/build/cjs/bluetooth/ble-error.js.map +1 -0
- package/build/cjs/bluetooth/connection.d.ts +137 -0
- package/build/cjs/{bluetooth.js → bluetooth/connection.js} +158 -106
- package/build/cjs/bluetooth/connection.js.map +1 -0
- package/build/cjs/{bluetooth.test.js → bluetooth/connection.test.js} +9 -9
- package/build/cjs/bluetooth/connection.test.js.map +1 -0
- package/build/cjs/bluetooth/device-bond-state.js.map +1 -0
- package/build/cjs/{bluetooth-device-wrapper.d.ts → bluetooth/device-wrapper.d.ts} +11 -11
- package/build/cjs/{bluetooth-device-wrapper.js → bluetooth/device-wrapper.js} +38 -42
- package/build/cjs/bluetooth/device-wrapper.js.map +1 -0
- package/build/cjs/{flashing → bluetooth/flashing}/flashing-full.d.ts +2 -2
- package/build/cjs/{flashing → bluetooth/flashing}/flashing-full.js +6 -5
- package/build/cjs/bluetooth/flashing/flashing-full.js.map +1 -0
- package/build/cjs/{flashing → bluetooth/flashing}/flashing-makecode.d.ts +1 -1
- package/build/cjs/bluetooth/flashing/flashing-makecode.js.map +1 -0
- package/build/cjs/{flashing → bluetooth/flashing}/flashing-makecode.test.js +3 -3
- package/build/cjs/bluetooth/flashing/flashing-makecode.test.js.map +1 -0
- package/build/cjs/{flashing → bluetooth/flashing}/flashing-partial.d.ts +2 -2
- package/build/cjs/{flashing → bluetooth/flashing}/flashing-partial.js +7 -6
- package/build/cjs/bluetooth/flashing/flashing-partial.js.map +1 -0
- package/build/cjs/bluetooth/flashing/flashing-v1.js.map +1 -0
- package/build/cjs/{flashing → bluetooth/flashing}/nordic-dfu.d.ts +2 -2
- package/build/cjs/{flashing → bluetooth/flashing}/nordic-dfu.js +15 -11
- package/build/cjs/bluetooth/flashing/nordic-dfu.js.map +1 -0
- package/build/cjs/bluetooth/flashing/zip.js.map +1 -0
- package/build/cjs/bluetooth/flashing/zip.test.js.map +1 -0
- package/build/cjs/bluetooth/index.d.ts +5 -0
- package/build/cjs/bluetooth/index.js +9 -0
- package/build/cjs/bluetooth/index.js.map +1 -0
- package/build/cjs/{bluetooth-profile.js → bluetooth/profile.js} +1 -1
- package/build/cjs/bluetooth/profile.js.map +1 -0
- package/build/cjs/{accelerometer-service.d.ts → bluetooth/services/accelerometer-service.d.ts} +2 -3
- package/build/cjs/{accelerometer-service.js → bluetooth/services/accelerometer-service.js} +17 -12
- package/build/cjs/bluetooth/services/accelerometer-service.js.map +1 -0
- package/build/{esm → cjs/bluetooth/services}/button-service.d.ts +2 -3
- package/build/cjs/{button-service.js → bluetooth/services/button-service.js} +24 -14
- package/build/cjs/bluetooth/services/button-service.js.map +1 -0
- package/build/{esm → cjs/bluetooth/services}/device-information-service.d.ts +1 -1
- package/build/cjs/bluetooth/services/device-information-service.js +29 -0
- package/build/cjs/bluetooth/services/device-information-service.js.map +1 -0
- package/build/cjs/{dfu-service.js → bluetooth/services/dfu-service.js} +2 -2
- package/build/cjs/bluetooth/services/dfu-service.js.map +1 -0
- package/build/{esm → cjs/bluetooth/services}/led-service.d.ts +2 -3
- package/build/cjs/{led-service.js → bluetooth/services/led-service.js} +10 -7
- package/build/cjs/bluetooth/services/led-service.js.map +1 -0
- package/build/cjs/{magnetometer-service.d.ts → bluetooth/services/magnetometer-service.d.ts} +2 -3
- package/build/cjs/{magnetometer-service.js → bluetooth/services/magnetometer-service.js} +19 -14
- package/build/cjs/bluetooth/services/magnetometer-service.js.map +1 -0
- package/build/{esm → cjs/bluetooth/services}/partial-flashing-service.d.ts +1 -1
- package/build/cjs/{partial-flashing-service.js → bluetooth/services/partial-flashing-service.js} +8 -8
- package/build/cjs/bluetooth/services/partial-flashing-service.js.map +1 -0
- package/build/cjs/{uart-service.d.ts → bluetooth/services/uart-service.d.ts} +2 -2
- package/build/cjs/{uart-service.js → bluetooth/services/uart-service.js} +21 -9
- package/build/cjs/bluetooth/services/uart-service.js.map +1 -0
- package/build/cjs/board-id.d.ts +1 -1
- package/build/cjs/board-id.js.map +1 -1
- package/build/cjs/device.d.ts +145 -123
- package/build/cjs/device.js +47 -128
- package/build/cjs/device.js.map +1 -1
- package/build/cjs/events.d.ts +8 -108
- package/build/cjs/events.js +27 -88
- package/build/cjs/events.js.map +1 -1
- package/build/cjs/events.test.js +54 -48
- package/build/cjs/events.test.js.map +1 -1
- package/build/cjs/hex-util.d.ts +1 -0
- package/build/cjs/hex-util.js +15 -0
- package/build/cjs/hex-util.js.map +1 -0
- package/build/cjs/index.d.ts +7 -17
- package/build/cjs/index.js +6 -28
- package/build/cjs/index.js.map +1 -1
- package/build/cjs/radio-bridge/connection.d.ts +52 -0
- package/build/cjs/{usb-radio-bridge.js → radio-bridge/connection.js} +69 -37
- package/build/cjs/radio-bridge/connection.js.map +1 -0
- package/build/cjs/radio-bridge/index.d.ts +4 -0
- package/build/cjs/radio-bridge/index.js +9 -0
- package/build/cjs/radio-bridge/index.js.map +1 -0
- package/build/cjs/{usb-serial-protocol.js → radio-bridge/serial-protocol.js} +1 -1
- package/build/cjs/radio-bridge/serial-protocol.js.map +1 -0
- package/build/cjs/service-events.d.ts +43 -14
- package/build/cjs/service-events.js +6 -36
- package/build/cjs/service-events.js.map +1 -1
- package/build/{esm/hex-flash-data-source.d.ts → cjs/universal-hex/flash-data-source.d.ts} +1 -2
- package/build/cjs/{hex-flash-data-source.js → universal-hex/flash-data-source.js} +7 -15
- package/build/cjs/universal-hex/flash-data-source.js.map +1 -0
- package/build/cjs/universal-hex/index.d.ts +4 -0
- package/build/cjs/universal-hex/index.js +9 -0
- package/build/cjs/universal-hex/index.js.map +1 -0
- package/build/cjs/usb/arm-debug.d.ts +137 -0
- package/build/cjs/usb/arm-debug.js +414 -0
- package/build/cjs/usb/arm-debug.js.map +1 -0
- package/build/cjs/usb/arm-debug.test.js +333 -0
- package/build/cjs/usb/arm-debug.test.js.map +1 -0
- package/build/{esm → cjs/usb}/board-serial-info.d.ts +2 -1
- package/build/cjs/{board-serial-info.js → usb/board-serial-info.js} +10 -7
- package/build/cjs/usb/board-serial-info.js.map +1 -0
- package/build/cjs/{board-serial-info.test.js → usb/board-serial-info.test.js} +2 -4
- package/build/cjs/usb/board-serial-info.test.js.map +1 -0
- package/build/cjs/usb/cdc-saturation.d.ts +36 -0
- package/build/cjs/usb/cdc-saturation.js +151 -0
- package/build/cjs/usb/cdc-saturation.js.map +1 -0
- package/build/cjs/usb/cmsis-dap.d.ts +113 -0
- package/build/cjs/usb/cmsis-dap.js +349 -0
- package/build/cjs/usb/cmsis-dap.js.map +1 -0
- package/build/cjs/usb/cmsis-dap.test.js +350 -0
- package/build/cjs/usb/cmsis-dap.test.js.map +1 -0
- package/build/cjs/usb/connection.d.ts +96 -0
- package/build/cjs/{usb.js → usb/connection.js} +257 -173
- package/build/cjs/usb/connection.js.map +1 -0
- package/build/cjs/{usb.test.js → usb/connection.test.js} +52 -42
- package/build/cjs/usb/connection.test.js.map +1 -0
- package/build/cjs/usb/cortex-m.d.ts +72 -0
- package/build/cjs/usb/cortex-m.js +165 -0
- package/build/cjs/usb/cortex-m.js.map +1 -0
- package/build/cjs/usb/cortex-m.test.js +217 -0
- package/build/cjs/usb/cortex-m.test.js.map +1 -0
- package/build/cjs/usb/daplink.d.ts +69 -0
- package/build/cjs/usb/daplink.js +238 -0
- package/build/cjs/usb/daplink.js.map +1 -0
- package/build/cjs/usb/daplink.test.js +290 -0
- package/build/cjs/usb/daplink.test.js.map +1 -0
- package/build/cjs/usb/device-wrapper.d.ts +34 -0
- package/build/cjs/usb/device-wrapper.js +102 -0
- package/build/cjs/usb/device-wrapper.js.map +1 -0
- package/build/cjs/usb/index.d.ts +5 -0
- package/build/cjs/usb/index.js +10 -0
- package/build/cjs/usb/index.js.map +1 -0
- package/build/{esm/usb-partial-flashing-utils.d.ts → cjs/usb/partial-flashing-utils.d.ts} +6 -9
- package/build/cjs/{usb-partial-flashing-utils.js → usb/partial-flashing-utils.js} +6 -49
- package/build/cjs/usb/partial-flashing-utils.js.map +1 -0
- package/build/{esm/usb-partial-flashing.d.ts → cjs/usb/partial-flashing.d.ts} +37 -11
- package/build/cjs/{usb-partial-flashing.js → usb/partial-flashing.js} +170 -135
- package/build/cjs/usb/partial-flashing.js.map +1 -0
- package/build/cjs/usb/promise-queue.js.map +1 -0
- package/build/cjs/usb/promise-queue.test.js.map +1 -0
- package/build/cjs/usb/serial-events.d.ts +16 -0
- package/build/cjs/{led.js → usb/serial-events.js} +1 -1
- package/build/cjs/usb/serial-events.js.map +1 -0
- package/build/cjs/usb/transport.d.ts +42 -0
- package/build/cjs/usb/transport.js +155 -0
- package/build/cjs/usb/transport.js.map +1 -0
- package/build/esm/async-util.d.ts +3 -1
- package/build/esm/async-util.js +5 -1
- package/build/esm/async-util.js.map +1 -1
- package/build/esm/bluetooth/ble-error.d.ts +10 -0
- package/build/esm/bluetooth/ble-error.js +42 -0
- package/build/esm/bluetooth/ble-error.js.map +1 -0
- package/build/esm/bluetooth/connection.d.ts +137 -0
- package/build/esm/{bluetooth.js → bluetooth/connection.js} +152 -100
- package/build/esm/bluetooth/connection.js.map +1 -0
- package/build/esm/{bluetooth.test.js → bluetooth/connection.test.js} +9 -9
- package/build/esm/bluetooth/connection.test.js.map +1 -0
- package/build/esm/bluetooth/device-bond-state.js.map +1 -0
- package/build/esm/{bluetooth-device-wrapper.d.ts → bluetooth/device-wrapper.d.ts} +11 -11
- package/build/esm/{bluetooth-device-wrapper.js → bluetooth/device-wrapper.js} +35 -39
- package/build/esm/bluetooth/device-wrapper.js.map +1 -0
- package/build/esm/{flashing → bluetooth/flashing}/flashing-full.d.ts +2 -2
- package/build/esm/{flashing → bluetooth/flashing}/flashing-full.js +6 -5
- package/build/esm/bluetooth/flashing/flashing-full.js.map +1 -0
- package/build/esm/{flashing → bluetooth/flashing}/flashing-makecode.d.ts +1 -1
- package/build/esm/bluetooth/flashing/flashing-makecode.js.map +1 -0
- package/build/esm/{flashing → bluetooth/flashing}/flashing-makecode.test.js +2 -2
- package/build/esm/bluetooth/flashing/flashing-makecode.test.js.map +1 -0
- package/build/esm/{flashing → bluetooth/flashing}/flashing-partial.d.ts +2 -2
- package/build/esm/{flashing → bluetooth/flashing}/flashing-partial.js +6 -5
- package/build/esm/bluetooth/flashing/flashing-partial.js.map +1 -0
- package/build/esm/bluetooth/flashing/flashing-v1.js.map +1 -0
- package/build/esm/{flashing → bluetooth/flashing}/nordic-dfu.d.ts +2 -2
- package/build/esm/{flashing → bluetooth/flashing}/nordic-dfu.js +15 -11
- package/build/esm/bluetooth/flashing/nordic-dfu.js.map +1 -0
- package/build/esm/bluetooth/flashing/zip.js.map +1 -0
- package/build/esm/bluetooth/flashing/zip.test.d.ts +1 -0
- package/build/esm/bluetooth/flashing/zip.test.js.map +1 -0
- package/build/esm/bluetooth/index.d.ts +5 -0
- package/build/esm/bluetooth/index.js +5 -0
- package/build/esm/bluetooth/index.js.map +1 -0
- package/build/esm/{bluetooth-profile.js → bluetooth/profile.js} +1 -1
- package/build/{cjs/bluetooth-profile.js.map → esm/bluetooth/profile.js.map} +1 -1
- package/build/esm/{accelerometer-service.d.ts → bluetooth/services/accelerometer-service.d.ts} +2 -3
- package/build/esm/{accelerometer-service.js → bluetooth/services/accelerometer-service.js} +11 -6
- package/build/esm/bluetooth/services/accelerometer-service.js.map +1 -0
- package/build/{cjs → esm/bluetooth/services}/button-service.d.ts +2 -3
- package/build/esm/{button-service.js → bluetooth/services/button-service.js} +20 -10
- package/build/esm/bluetooth/services/button-service.js.map +1 -0
- package/build/{cjs → esm/bluetooth/services}/device-information-service.d.ts +1 -1
- package/build/esm/bluetooth/services/device-information-service.js +25 -0
- package/build/esm/bluetooth/services/device-information-service.js.map +1 -0
- package/build/esm/{dfu-service.js → bluetooth/services/dfu-service.js} +1 -1
- package/build/esm/bluetooth/services/dfu-service.js.map +1 -0
- package/build/{cjs → esm/bluetooth/services}/led-service.d.ts +2 -3
- package/build/esm/{led-service.js → bluetooth/services/led-service.js} +4 -1
- package/build/esm/bluetooth/services/led-service.js.map +1 -0
- package/build/esm/{magnetometer-service.d.ts → bluetooth/services/magnetometer-service.d.ts} +2 -3
- package/build/esm/{magnetometer-service.js → bluetooth/services/magnetometer-service.js} +11 -6
- package/build/esm/bluetooth/services/magnetometer-service.js.map +1 -0
- package/build/{cjs → esm/bluetooth/services}/partial-flashing-service.d.ts +1 -1
- package/build/esm/{partial-flashing-service.js → bluetooth/services/partial-flashing-service.js} +4 -4
- package/build/esm/bluetooth/services/partial-flashing-service.js.map +1 -0
- package/build/esm/{uart-service.d.ts → bluetooth/services/uart-service.d.ts} +2 -2
- package/build/esm/{uart-service.js → bluetooth/services/uart-service.js} +18 -6
- package/build/esm/bluetooth/services/uart-service.js.map +1 -0
- package/build/esm/board-id.d.ts +1 -1
- package/build/esm/board-id.js.map +1 -1
- package/build/esm/device.d.ts +145 -123
- package/build/esm/device.js +45 -122
- package/build/esm/device.js.map +1 -1
- package/build/esm/events.d.ts +8 -108
- package/build/esm/events.js +26 -86
- package/build/esm/events.js.map +1 -1
- package/build/esm/events.test.js +55 -49
- package/build/esm/events.test.js.map +1 -1
- package/build/esm/hex-util.d.ts +1 -0
- package/build/esm/hex-util.js +11 -0
- package/build/esm/hex-util.js.map +1 -0
- package/build/esm/index.d.ts +7 -17
- package/build/esm/index.js +6 -11
- package/build/esm/index.js.map +1 -1
- package/build/esm/radio-bridge/connection.d.ts +52 -0
- package/build/esm/{usb-radio-bridge.js → radio-bridge/connection.js} +69 -37
- package/build/esm/radio-bridge/connection.js.map +1 -0
- package/build/esm/radio-bridge/index.d.ts +4 -0
- package/build/esm/radio-bridge/index.js +5 -0
- package/build/esm/radio-bridge/index.js.map +1 -0
- package/build/esm/{usb-serial-protocol.js → radio-bridge/serial-protocol.js} +1 -1
- package/build/esm/radio-bridge/serial-protocol.js.map +1 -0
- package/build/esm/service-events.d.ts +43 -14
- package/build/esm/service-events.js +5 -34
- package/build/esm/service-events.js.map +1 -1
- package/build/{cjs/hex-flash-data-source.d.ts → esm/universal-hex/flash-data-source.d.ts} +1 -2
- package/build/esm/{hex-flash-data-source.js → universal-hex/flash-data-source.js} +6 -13
- package/build/esm/universal-hex/flash-data-source.js.map +1 -0
- package/build/esm/universal-hex/index.d.ts +4 -0
- package/build/esm/universal-hex/index.js +5 -0
- package/build/esm/universal-hex/index.js.map +1 -0
- package/build/esm/usb/arm-debug.d.ts +137 -0
- package/build/esm/usb/arm-debug.js +409 -0
- package/build/esm/usb/arm-debug.js.map +1 -0
- package/build/esm/usb/arm-debug.test.d.ts +1 -0
- package/build/esm/usb/arm-debug.test.js +331 -0
- package/build/esm/usb/arm-debug.test.js.map +1 -0
- package/build/{cjs → esm/usb}/board-serial-info.d.ts +2 -1
- package/build/esm/{board-serial-info.js → usb/board-serial-info.js} +10 -7
- package/build/esm/usb/board-serial-info.js.map +1 -0
- package/build/esm/usb/board-serial-info.test.d.ts +1 -0
- package/build/esm/{board-serial-info.test.js → usb/board-serial-info.test.js} +2 -4
- package/build/esm/usb/board-serial-info.test.js.map +1 -0
- package/build/esm/usb/cdc-saturation.d.ts +36 -0
- package/build/esm/usb/cdc-saturation.js +148 -0
- package/build/esm/usb/cdc-saturation.js.map +1 -0
- package/build/esm/usb/cmsis-dap.d.ts +113 -0
- package/build/esm/usb/cmsis-dap.js +342 -0
- package/build/esm/usb/cmsis-dap.js.map +1 -0
- package/build/esm/usb/cmsis-dap.test.d.ts +1 -0
- package/build/esm/usb/cmsis-dap.test.js +348 -0
- package/build/esm/usb/cmsis-dap.test.js.map +1 -0
- package/build/esm/usb/connection.d.ts +96 -0
- package/build/esm/{usb.js → usb/connection.js} +253 -168
- package/build/esm/usb/connection.js.map +1 -0
- package/build/esm/usb/connection.test.d.ts +1 -0
- package/build/esm/{usb.test.js → usb/connection.test.js} +47 -37
- package/build/esm/usb/connection.test.js.map +1 -0
- package/build/esm/usb/cortex-m.d.ts +72 -0
- package/build/esm/usb/cortex-m.js +161 -0
- package/build/esm/usb/cortex-m.js.map +1 -0
- package/build/esm/usb/cortex-m.test.d.ts +1 -0
- package/build/esm/usb/cortex-m.test.js +215 -0
- package/build/esm/usb/cortex-m.test.js.map +1 -0
- package/build/esm/usb/daplink.d.ts +69 -0
- package/build/esm/usb/daplink.js +231 -0
- package/build/esm/usb/daplink.js.map +1 -0
- package/build/esm/usb/daplink.test.d.ts +1 -0
- package/build/esm/usb/daplink.test.js +288 -0
- package/build/esm/usb/daplink.test.js.map +1 -0
- package/build/esm/usb/device-wrapper.d.ts +34 -0
- package/build/esm/usb/device-wrapper.js +98 -0
- package/build/esm/usb/device-wrapper.js.map +1 -0
- package/build/esm/usb/index.d.ts +5 -0
- package/build/esm/usb/index.js +5 -0
- package/build/esm/usb/index.js.map +1 -0
- package/build/{cjs/usb-partial-flashing-utils.d.ts → esm/usb/partial-flashing-utils.d.ts} +6 -9
- package/build/esm/{usb-partial-flashing-utils.js → usb/partial-flashing-utils.js} +4 -44
- package/build/esm/usb/partial-flashing-utils.js.map +1 -0
- package/build/{cjs/usb-partial-flashing.d.ts → esm/usb/partial-flashing.d.ts} +37 -11
- package/build/esm/{usb-partial-flashing.js → usb/partial-flashing.js} +169 -111
- package/build/esm/usb/partial-flashing.js.map +1 -0
- package/build/esm/usb/promise-queue.js.map +1 -0
- package/build/esm/usb/promise-queue.test.d.ts +1 -0
- package/build/esm/usb/promise-queue.test.js.map +1 -0
- package/build/esm/usb/serial-events.d.ts +16 -0
- package/build/esm/usb/serial-events.js +2 -0
- package/build/esm/usb/serial-events.js.map +1 -0
- package/build/esm/usb/transport.d.ts +42 -0
- package/build/esm/usb/transport.js +151 -0
- package/build/esm/usb/transport.js.map +1 -0
- package/package.json +43 -2
- package/build/cjs/accelerometer-service.js.map +0 -1
- package/build/cjs/accelerometer.d.ts +0 -9
- package/build/cjs/accelerometer.js +0 -16
- package/build/cjs/accelerometer.js.map +0 -1
- package/build/cjs/bluetooth-device-wrapper.js.map +0 -1
- package/build/cjs/bluetooth.d.ts +0 -114
- package/build/cjs/bluetooth.js.map +0 -1
- package/build/cjs/bluetooth.test.js.map +0 -1
- package/build/cjs/board-serial-info.js.map +0 -1
- package/build/cjs/board-serial-info.test.js.map +0 -1
- package/build/cjs/button-service.js.map +0 -1
- package/build/cjs/buttons.d.ts +0 -10
- package/build/cjs/buttons.js +0 -22
- package/build/cjs/buttons.js.map +0 -1
- package/build/cjs/constants.d.ts +0 -48
- package/build/cjs/constants.js +0 -73
- package/build/cjs/constants.js.map +0 -1
- package/build/cjs/device-bond-state.js.map +0 -1
- package/build/cjs/device-information-service.js +0 -34
- package/build/cjs/device-information-service.js.map +0 -1
- package/build/cjs/dfu-service.js.map +0 -1
- package/build/cjs/flashing/flashing-full.js.map +0 -1
- package/build/cjs/flashing/flashing-makecode.js.map +0 -1
- package/build/cjs/flashing/flashing-makecode.test.js.map +0 -1
- package/build/cjs/flashing/flashing-partial.js.map +0 -1
- package/build/cjs/flashing/flashing-v1.js.map +0 -1
- package/build/cjs/flashing/nordic-dfu.js.map +0 -1
- package/build/cjs/flashing/zip.js.map +0 -1
- package/build/cjs/flashing/zip.test.js.map +0 -1
- package/build/cjs/hex-flash-data-source.js.map +0 -1
- package/build/cjs/led-service.js.map +0 -1
- package/build/cjs/led.d.ts +0 -6
- package/build/cjs/led.js.map +0 -1
- package/build/cjs/magnetometer-service.js.map +0 -1
- package/build/cjs/magnetometer.d.ts +0 -9
- package/build/cjs/magnetometer.js +0 -16
- package/build/cjs/magnetometer.js.map +0 -1
- package/build/cjs/partial-flashing-service.js.map +0 -1
- package/build/cjs/promise-queue.js.map +0 -1
- package/build/cjs/promise-queue.test.js.map +0 -1
- package/build/cjs/serial-events.d.ts +0 -20
- package/build/cjs/serial-events.js +0 -69
- package/build/cjs/serial-events.js.map +0 -1
- package/build/cjs/uart-service.js.map +0 -1
- package/build/cjs/uart.d.ts +0 -4
- package/build/cjs/uart.js +0 -16
- package/build/cjs/uart.js.map +0 -1
- package/build/cjs/usb-device-wrapper.d.ts +0 -47
- package/build/cjs/usb-device-wrapper.js +0 -437
- package/build/cjs/usb-device-wrapper.js.map +0 -1
- package/build/cjs/usb-partial-flashing-utils.js.map +0 -1
- package/build/cjs/usb-partial-flashing.js.map +0 -1
- package/build/cjs/usb-radio-bridge.d.ts +0 -24
- package/build/cjs/usb-radio-bridge.js.map +0 -1
- package/build/cjs/usb-serial-protocol.js.map +0 -1
- package/build/cjs/usb.d.ts +0 -66
- package/build/cjs/usb.js.map +0 -1
- package/build/cjs/usb.test.js.map +0 -1
- package/build/esm/accelerometer-service.js.map +0 -1
- package/build/esm/accelerometer.d.ts +0 -9
- package/build/esm/accelerometer.js +0 -12
- package/build/esm/accelerometer.js.map +0 -1
- package/build/esm/bluetooth-device-wrapper.js.map +0 -1
- package/build/esm/bluetooth-profile.js.map +0 -1
- package/build/esm/bluetooth.d.ts +0 -114
- package/build/esm/bluetooth.js.map +0 -1
- package/build/esm/bluetooth.test.js.map +0 -1
- package/build/esm/board-serial-info.js.map +0 -1
- package/build/esm/board-serial-info.test.js.map +0 -1
- package/build/esm/button-service.js.map +0 -1
- package/build/esm/buttons.d.ts +0 -10
- package/build/esm/buttons.js +0 -18
- package/build/esm/buttons.js.map +0 -1
- package/build/esm/constants.d.ts +0 -48
- package/build/esm/constants.js +0 -70
- package/build/esm/constants.js.map +0 -1
- package/build/esm/device-bond-state.js.map +0 -1
- package/build/esm/device-information-service.js +0 -30
- package/build/esm/device-information-service.js.map +0 -1
- package/build/esm/dfu-service.js.map +0 -1
- package/build/esm/flashing/flashing-full.js.map +0 -1
- package/build/esm/flashing/flashing-makecode.js.map +0 -1
- package/build/esm/flashing/flashing-makecode.test.js.map +0 -1
- package/build/esm/flashing/flashing-partial.js.map +0 -1
- package/build/esm/flashing/flashing-v1.js.map +0 -1
- package/build/esm/flashing/nordic-dfu.js.map +0 -1
- package/build/esm/flashing/zip.js.map +0 -1
- package/build/esm/flashing/zip.test.js.map +0 -1
- package/build/esm/hex-flash-data-source.js.map +0 -1
- package/build/esm/led-service.js.map +0 -1
- package/build/esm/led.d.ts +0 -6
- package/build/esm/led.js +0 -2
- package/build/esm/led.js.map +0 -1
- package/build/esm/magnetometer-service.js.map +0 -1
- package/build/esm/magnetometer.d.ts +0 -9
- package/build/esm/magnetometer.js +0 -12
- package/build/esm/magnetometer.js.map +0 -1
- package/build/esm/partial-flashing-service.js.map +0 -1
- package/build/esm/promise-queue.js.map +0 -1
- package/build/esm/promise-queue.test.js.map +0 -1
- package/build/esm/serial-events.d.ts +0 -20
- package/build/esm/serial-events.js +0 -61
- package/build/esm/serial-events.js.map +0 -1
- package/build/esm/uart-service.js.map +0 -1
- package/build/esm/uart.d.ts +0 -4
- package/build/esm/uart.js +0 -12
- package/build/esm/uart.js.map +0 -1
- package/build/esm/usb-device-wrapper.d.ts +0 -47
- package/build/esm/usb-device-wrapper.js +0 -410
- package/build/esm/usb-device-wrapper.js.map +0 -1
- package/build/esm/usb-partial-flashing-utils.js.map +0 -1
- package/build/esm/usb-partial-flashing.js.map +0 -1
- package/build/esm/usb-radio-bridge.d.ts +0 -24
- package/build/esm/usb-radio-bridge.js.map +0 -1
- package/build/esm/usb-serial-protocol.js.map +0 -1
- package/build/esm/usb.d.ts +0 -66
- package/build/esm/usb.js.map +0 -1
- package/build/esm/usb.test.js.map +0 -1
- /package/build/cjs/{bluetooth.test.d.ts → bluetooth/connection.test.d.ts} +0 -0
- /package/build/cjs/{device-bond-state.d.ts → bluetooth/device-bond-state.d.ts} +0 -0
- /package/build/cjs/{device-bond-state.js → bluetooth/device-bond-state.js} +0 -0
- /package/build/cjs/{flashing → bluetooth/flashing}/flashing-makecode.js +0 -0
- /package/build/cjs/{flashing → bluetooth/flashing}/flashing-makecode.test.d.ts +0 -0
- /package/build/cjs/{flashing → bluetooth/flashing}/flashing-v1.d.ts +0 -0
- /package/build/cjs/{flashing → bluetooth/flashing}/flashing-v1.js +0 -0
- /package/build/cjs/{flashing → bluetooth/flashing}/zip.d.ts +0 -0
- /package/build/cjs/{flashing → bluetooth/flashing}/zip.js +0 -0
- /package/build/cjs/{flashing → bluetooth/flashing}/zip.test.d.ts +0 -0
- /package/build/cjs/{flashing → bluetooth/flashing}/zip.test.js +0 -0
- /package/build/cjs/{bluetooth-profile.d.ts → bluetooth/profile.d.ts} +0 -0
- /package/build/cjs/{dfu-service.d.ts → bluetooth/services/dfu-service.d.ts} +0 -0
- /package/build/cjs/{usb-serial-protocol.d.ts → radio-bridge/serial-protocol.d.ts} +0 -0
- /package/build/cjs/{board-serial-info.test.d.ts → usb/arm-debug.test.d.ts} +0 -0
- /package/build/{esm → cjs/usb}/board-serial-info.test.d.ts +0 -0
- /package/build/cjs/{promise-queue.test.d.ts → usb/cmsis-dap.test.d.ts} +0 -0
- /package/build/cjs/{usb.test.d.ts → usb/connection.test.d.ts} +0 -0
- /package/build/{esm/bluetooth.test.d.ts → cjs/usb/cortex-m.test.d.ts} +0 -0
- /package/build/{esm/flashing/flashing-makecode.test.d.ts → cjs/usb/daplink.test.d.ts} +0 -0
- /package/build/cjs/{promise-queue.d.ts → usb/promise-queue.d.ts} +0 -0
- /package/build/cjs/{promise-queue.js → usb/promise-queue.js} +0 -0
- /package/build/{esm → cjs/usb}/promise-queue.test.d.ts +0 -0
- /package/build/cjs/{promise-queue.test.js → usb/promise-queue.test.js} +0 -0
- /package/build/esm/{flashing/zip.test.d.ts → bluetooth/connection.test.d.ts} +0 -0
- /package/build/esm/{device-bond-state.d.ts → bluetooth/device-bond-state.d.ts} +0 -0
- /package/build/esm/{device-bond-state.js → bluetooth/device-bond-state.js} +0 -0
- /package/build/esm/{flashing → bluetooth/flashing}/flashing-makecode.js +0 -0
- /package/build/esm/{usb.test.d.ts → bluetooth/flashing/flashing-makecode.test.d.ts} +0 -0
- /package/build/esm/{flashing → bluetooth/flashing}/flashing-v1.d.ts +0 -0
- /package/build/esm/{flashing → bluetooth/flashing}/flashing-v1.js +0 -0
- /package/build/esm/{flashing → bluetooth/flashing}/zip.d.ts +0 -0
- /package/build/esm/{flashing → bluetooth/flashing}/zip.js +0 -0
- /package/build/esm/{flashing → bluetooth/flashing}/zip.test.js +0 -0
- /package/build/esm/{bluetooth-profile.d.ts → bluetooth/profile.d.ts} +0 -0
- /package/build/esm/{dfu-service.d.ts → bluetooth/services/dfu-service.d.ts} +0 -0
- /package/build/esm/{usb-serial-protocol.d.ts → radio-bridge/serial-protocol.d.ts} +0 -0
- /package/build/esm/{promise-queue.d.ts → usb/promise-queue.d.ts} +0 -0
- /package/build/esm/{promise-queue.js → usb/promise-queue.js} +0 -0
- /package/build/esm/{promise-queue.test.js → usb/promise-queue.test.js} +0 -0
package/build/cjs/device.d.ts
CHANGED
|
@@ -3,124 +3,121 @@
|
|
|
3
3
|
*
|
|
4
4
|
* SPDX-License-Identifier: MIT
|
|
5
5
|
*/
|
|
6
|
-
import { TypedEventTarget, ValueIsEvent } from "./events.js";
|
|
7
6
|
/**
|
|
8
7
|
* Connection availability status returned by checkAvailability().
|
|
9
8
|
* Used for pre-flight UX decisions before attempting to connect.
|
|
10
9
|
*/
|
|
11
10
|
export type ConnectionAvailabilityStatus = "available" | "unsupported" | "disabled" | "permission-denied" | "location-disabled";
|
|
12
11
|
/**
|
|
13
|
-
*
|
|
12
|
+
* Error codes identifying specific failure modes.
|
|
14
13
|
*
|
|
15
|
-
*
|
|
14
|
+
* Each code represents a distinct category of failure that apps can
|
|
15
|
+
* match on to decide what message to show or what recovery to attempt.
|
|
16
|
+
* New codes may be added in future minor releases.
|
|
17
|
+
*
|
|
18
|
+
* Codes are annotated with **USB**, **BLE**, or **USB, BLE** to indicate
|
|
19
|
+
* which connection types can produce them. USB-only apps can ignore
|
|
20
|
+
* BLE-only codes.
|
|
16
21
|
*/
|
|
17
22
|
export type DeviceErrorCode =
|
|
18
23
|
/**
|
|
19
|
-
*
|
|
24
|
+
* **BLE.** The operation was cancelled via an {@link AbortSignal}
|
|
25
|
+
* supplied by the caller. No user-facing error is needed.
|
|
20
26
|
*/
|
|
21
27
|
"aborted"
|
|
22
28
|
/**
|
|
23
|
-
*
|
|
29
|
+
* **USB, BLE.** The user dismissed the device-picker dialog without
|
|
30
|
+
* selecting a device. Typically no error message is needed — the user
|
|
31
|
+
* chose not to proceed.
|
|
24
32
|
*/
|
|
25
33
|
| "no-device-selected"
|
|
26
34
|
/**
|
|
27
|
-
*
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* Unable to claim the interface, usually because it's in use in another tab/window.
|
|
32
|
-
*/
|
|
33
|
-
| "clear-connect"
|
|
34
|
-
/**
|
|
35
|
-
* The device was found to be disconnected.
|
|
36
|
-
*/
|
|
37
|
-
| "device-disconnected"
|
|
38
|
-
/**
|
|
39
|
-
* A communication timeout occurred.
|
|
40
|
-
*/
|
|
41
|
-
| "timeout-error"
|
|
42
|
-
/**
|
|
43
|
-
* This is the fallback error case suggesting that the user reconnects their device.
|
|
35
|
+
* **USB, BLE.** The connection type is not supported on this platform
|
|
36
|
+
* or browser. Corresponds to {@link ConnectionAvailabilityStatus}
|
|
37
|
+
* `"unsupported"`.
|
|
44
38
|
*/
|
|
45
|
-
| "
|
|
39
|
+
| "unsupported"
|
|
46
40
|
/**
|
|
47
|
-
*
|
|
41
|
+
* **BLE.** Bluetooth is turned off at the OS level. Prompt the user
|
|
42
|
+
* to enable it in system settings. Corresponds to
|
|
43
|
+
* {@link ConnectionAvailabilityStatus} `"disabled"`.
|
|
48
44
|
*/
|
|
49
|
-
| "
|
|
45
|
+
| "disabled"
|
|
50
46
|
/**
|
|
51
|
-
*
|
|
47
|
+
* **BLE.** The app does not have the required Bluetooth permissions
|
|
48
|
+
* (iOS/Android). Prompt the user to grant permission in system
|
|
49
|
+
* settings. Corresponds to {@link ConnectionAvailabilityStatus}
|
|
50
|
+
* `"permission-denied"`.
|
|
52
51
|
*/
|
|
53
|
-
| "
|
|
52
|
+
| "permission-denied"
|
|
54
53
|
/**
|
|
55
|
-
*
|
|
54
|
+
* **BLE.** Location services are disabled. Required on Android
|
|
55
|
+
* versions before 12 for Bluetooth scanning. Prompt the user to
|
|
56
|
+
* enable location in system settings. Corresponds to
|
|
57
|
+
* {@link ConnectionAvailabilityStatus} `"location-disabled"`.
|
|
56
58
|
*/
|
|
57
|
-
| "
|
|
59
|
+
| "location-disabled"
|
|
58
60
|
/**
|
|
59
|
-
*
|
|
61
|
+
* **USB, BLE.** A method was called that requires an active
|
|
62
|
+
* connection, but no connection is currently open. Call
|
|
63
|
+
* {@link DeviceConnection.connect} first.
|
|
60
64
|
*/
|
|
61
|
-
| "
|
|
65
|
+
| "not-connected"
|
|
62
66
|
/**
|
|
63
|
-
*
|
|
67
|
+
* **USB.** The USB interface could not be claimed, usually because
|
|
68
|
+
* another browser tab or application already has an open connection
|
|
69
|
+
* to the device.
|
|
64
70
|
*/
|
|
65
|
-
| "
|
|
71
|
+
| "device-in-use"
|
|
66
72
|
/**
|
|
67
|
-
*
|
|
73
|
+
* **USB, BLE.** The device disconnected during an operation.
|
|
74
|
+
* The physical USB or Bluetooth connection was lost.
|
|
68
75
|
*/
|
|
69
|
-
| "
|
|
76
|
+
| "device-disconnected"
|
|
70
77
|
/**
|
|
71
|
-
*
|
|
78
|
+
* **USB, BLE.** A communication timeout — the device did not respond
|
|
79
|
+
* within the expected time. This may indicate the device is busy,
|
|
80
|
+
* hung, or that the connection is degraded.
|
|
72
81
|
*/
|
|
73
|
-
| "
|
|
82
|
+
| "timeout"
|
|
74
83
|
/**
|
|
75
|
-
*
|
|
76
|
-
*
|
|
84
|
+
* **USB, BLE.** A communication failure that does not match any more
|
|
85
|
+
* specific code. Typical handling: prompt the user to physically
|
|
86
|
+
* disconnect and reconnect the device, then retry.
|
|
77
87
|
*/
|
|
78
|
-
| "
|
|
88
|
+
| "connection-error"
|
|
79
89
|
/**
|
|
80
|
-
*
|
|
81
|
-
*
|
|
90
|
+
* **USB.** The USB device was found but lacks the expected CMSIS-DAP
|
|
91
|
+
* interface. On micro:bit V1 this indicates the DAPLink firmware is
|
|
92
|
+
* too old and needs updating.
|
|
82
93
|
*/
|
|
83
|
-
| "
|
|
94
|
+
| "firmware-update-required"
|
|
84
95
|
/**
|
|
85
|
-
*
|
|
86
|
-
*
|
|
96
|
+
* **BLE.** The micro:bit's Bluetooth pairing/bonding information has
|
|
97
|
+
* been lost (e.g. after a firmware reflash). The user needs to
|
|
98
|
+
* re-pair the device. Currently only detected on iOS.
|
|
87
99
|
*/
|
|
88
|
-
| "
|
|
100
|
+
| "pairing-information-lost";
|
|
89
101
|
/**
|
|
90
|
-
*
|
|
91
|
-
* Aligns with ConnectionAvailabilityStatus "location-disabled".
|
|
102
|
+
* Stages reported by the progress callback during connection and flashing.
|
|
92
103
|
*/
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
ResettingDevice = "ResettingDevice",
|
|
111
|
-
/**
|
|
112
|
-
* Connecting for flashing.
|
|
113
|
-
*/
|
|
114
|
-
Connecting = "Connecting",
|
|
115
|
-
/**
|
|
116
|
-
* Partial flashing.
|
|
117
|
-
*/
|
|
118
|
-
PartialFlashing = "PartialFlashing",
|
|
119
|
-
/**
|
|
120
|
-
* Full flashing.
|
|
121
|
-
*/
|
|
122
|
-
FullFlashing = "FullFlashing"
|
|
123
|
-
}
|
|
104
|
+
export declare const ProgressStage: {
|
|
105
|
+
/** Checking permissions and availability before connecting. */
|
|
106
|
+
readonly Initializing: "Initializing";
|
|
107
|
+
/** Finding device. */
|
|
108
|
+
readonly FindingDevice: "FindingDevice";
|
|
109
|
+
/** Checking that a bond is established. Only applicable on Native platforms. */
|
|
110
|
+
readonly CheckingBond: "CheckingBond";
|
|
111
|
+
/** Resetting device in preparation for flashing. Only applicable on Native platforms. */
|
|
112
|
+
readonly ResettingDevice: "ResettingDevice";
|
|
113
|
+
/** Connecting for flashing. */
|
|
114
|
+
readonly Connecting: "Connecting";
|
|
115
|
+
/** Partial flashing. */
|
|
116
|
+
readonly PartialFlashing: "PartialFlashing";
|
|
117
|
+
/** Full flashing. */
|
|
118
|
+
readonly FullFlashing: "FullFlashing";
|
|
119
|
+
};
|
|
120
|
+
export type ProgressStage = (typeof ProgressStage)[keyof typeof ProgressStage];
|
|
124
121
|
/**
|
|
125
122
|
* Progress callback for tracking operation stages (connection and flashing).
|
|
126
123
|
*
|
|
@@ -151,15 +148,21 @@ export type ProgressCallback = (stage: ProgressStage, progress?: number) => void
|
|
|
151
148
|
*/
|
|
152
149
|
export declare class DeviceError extends Error {
|
|
153
150
|
code: DeviceErrorCode;
|
|
154
|
-
constructor({ code, message }: {
|
|
151
|
+
constructor({ code, message, cause, }: {
|
|
155
152
|
code: DeviceErrorCode;
|
|
156
153
|
message?: string;
|
|
154
|
+
cause?: unknown;
|
|
157
155
|
});
|
|
158
156
|
}
|
|
157
|
+
/**
|
|
158
|
+
* Asserts that a connection is active, throwing a {@link DeviceError}
|
|
159
|
+
* with code `"not-connected"` if it is not.
|
|
160
|
+
*/
|
|
161
|
+
export declare function assertConnected<T>(connection: T | undefined): asserts connection is T;
|
|
159
162
|
/**
|
|
160
163
|
* Tracks connection status.
|
|
161
164
|
*/
|
|
162
|
-
export declare
|
|
165
|
+
export declare const ConnectionStatus: {
|
|
163
166
|
/**
|
|
164
167
|
* No device available.
|
|
165
168
|
*
|
|
@@ -169,26 +172,21 @@ export declare enum ConnectionStatus {
|
|
|
169
172
|
* Use checkAvailability() to determine whether the connection type is
|
|
170
173
|
* supported before attempting to connect.
|
|
171
174
|
*/
|
|
172
|
-
|
|
173
|
-
/**
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
/**
|
|
178
|
-
|
|
179
|
-
*/
|
|
180
|
-
CONNECTED = "CONNECTED",
|
|
181
|
-
/**
|
|
182
|
-
* Connecting.
|
|
183
|
-
*/
|
|
184
|
-
CONNECTING = "CONNECTING",
|
|
175
|
+
readonly NoAuthorizedDevice: "NoAuthorizedDevice";
|
|
176
|
+
/** Authorized device available but we haven't connected to it. */
|
|
177
|
+
readonly Disconnected: "Disconnected";
|
|
178
|
+
/** Connected. */
|
|
179
|
+
readonly Connected: "Connected";
|
|
180
|
+
/** Connecting. */
|
|
181
|
+
readonly Connecting: "Connecting";
|
|
185
182
|
/**
|
|
186
183
|
* Paused due to tab visibility. The connection was temporarily suspended
|
|
187
184
|
* because the browser tab became hidden. Reconnection will be attempted
|
|
188
185
|
* automatically when the tab becomes visible again.
|
|
189
186
|
*/
|
|
190
|
-
|
|
191
|
-
}
|
|
187
|
+
readonly Paused: "Paused";
|
|
188
|
+
};
|
|
189
|
+
export type ConnectionStatus = (typeof ConnectionStatus)[keyof typeof ConnectionStatus];
|
|
192
190
|
export interface ConnectOptions {
|
|
193
191
|
/**
|
|
194
192
|
* Optional progress callback for tracking connection stages.
|
|
@@ -238,29 +236,33 @@ export declare class FlashDataError extends Error {
|
|
|
238
236
|
}
|
|
239
237
|
export type FlashDataSource = (boardVersion: BoardVersion) => Promise<string | Uint8Array>;
|
|
240
238
|
export type BoardVersion = "V1" | "V2";
|
|
241
|
-
export
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
constructor(status: ConnectionStatus, previousStatus: ConnectionStatus);
|
|
245
|
-
}
|
|
246
|
-
export declare class BeforeRequestDevice extends Event {
|
|
247
|
-
constructor();
|
|
248
|
-
}
|
|
249
|
-
export declare class AfterRequestDevice extends Event {
|
|
250
|
-
constructor();
|
|
239
|
+
export interface ConnectionStatusChange {
|
|
240
|
+
status: ConnectionStatus;
|
|
241
|
+
previousStatus: ConnectionStatus;
|
|
251
242
|
}
|
|
252
|
-
export
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
constructor(errorMessage: string, error?: unknown);
|
|
243
|
+
export interface BackgroundErrorData {
|
|
244
|
+
error: DeviceError;
|
|
245
|
+
event?: string;
|
|
256
246
|
}
|
|
257
|
-
export
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
247
|
+
export interface DeviceConnectionEventMap {
|
|
248
|
+
status: ConnectionStatusChange;
|
|
249
|
+
backgrounderror: BackgroundErrorData;
|
|
250
|
+
beforerequestdevice: void;
|
|
251
|
+
afterrequestdevice: void;
|
|
252
|
+
flash: void;
|
|
262
253
|
}
|
|
263
|
-
export interface DeviceConnection
|
|
254
|
+
export interface DeviceConnection {
|
|
255
|
+
addEventListener(type: "status", listener: (data: ConnectionStatusChange) => void): void;
|
|
256
|
+
addEventListener(type: "backgrounderror", listener: (data: BackgroundErrorData) => void): void;
|
|
257
|
+
addEventListener(type: "beforerequestdevice", listener: () => void): void;
|
|
258
|
+
addEventListener(type: "afterrequestdevice", listener: () => void): void;
|
|
259
|
+
addEventListener(type: "flash", listener: () => void): void;
|
|
260
|
+
removeEventListener(type: "status", listener: (data: ConnectionStatusChange) => void): void;
|
|
261
|
+
removeEventListener(type: "backgrounderror", listener: (data: BackgroundErrorData) => void): void;
|
|
262
|
+
removeEventListener(type: "beforerequestdevice", listener: () => void): void;
|
|
263
|
+
removeEventListener(type: "afterrequestdevice", listener: () => void): void;
|
|
264
|
+
removeEventListener(type: "flash", listener: () => void): void;
|
|
265
|
+
readonly type: string;
|
|
264
266
|
status: ConnectionStatus;
|
|
265
267
|
/**
|
|
266
268
|
* Initializes the device.
|
|
@@ -289,22 +291,42 @@ export interface DeviceConnection<M extends ValueIsEvent<M>> extends TypedEventT
|
|
|
289
291
|
/**
|
|
290
292
|
* Get the board version.
|
|
291
293
|
*
|
|
292
|
-
*
|
|
294
|
+
* Cached after the first successful connection until {@link clearDevice}
|
|
295
|
+
* is called, so remains available after disconnection.
|
|
296
|
+
*
|
|
297
|
+
* @returns the board version.
|
|
298
|
+
* @throws {DeviceError} with code `not-connected` if no device has been connected.
|
|
293
299
|
*/
|
|
294
|
-
getBoardVersion(): BoardVersion
|
|
300
|
+
getBoardVersion(): BoardVersion;
|
|
295
301
|
/**
|
|
296
302
|
* Disconnect from the device.
|
|
297
303
|
*/
|
|
298
304
|
disconnect(): Promise<void>;
|
|
299
305
|
/**
|
|
300
|
-
*
|
|
306
|
+
* Flash the micro:bit.
|
|
307
|
+
*
|
|
308
|
+
* Not all connection types support flashing. For example, radio bridge
|
|
309
|
+
* connections do not support flashing, and Bluetooth connections only
|
|
310
|
+
* support flashing on native platforms (not Web).
|
|
311
|
+
*
|
|
312
|
+
* Post-flash connection state differs by transport:
|
|
313
|
+
*
|
|
314
|
+
* - **USB**: The connection remains in {@link ConnectionStatus.Connected} state.
|
|
315
|
+
* USB connects to the micro:bit's interface chip (running DAPLink firmware),
|
|
316
|
+
* which is not affected by flashing the application processor, so the
|
|
317
|
+
* connection persists and serial communication is automatically reinitialised.
|
|
301
318
|
*
|
|
302
|
-
*
|
|
319
|
+
* - **Bluetooth**: The connection is always left in {@link ConnectionStatus.Disconnected}
|
|
320
|
+
* state. Bluetooth connects to the application processor directly, which
|
|
321
|
+
* reboots after flashing, so the connection is necessarily lost. Callers
|
|
322
|
+
* must call {@link connect} again after flashing.
|
|
303
323
|
*
|
|
304
|
-
* @param
|
|
305
|
-
* @
|
|
324
|
+
* @param dataSource The data to use.
|
|
325
|
+
* @param options Flash options and progress callback.
|
|
326
|
+
* @throws {DeviceError} On flash failure. The error.code property indicates the failure type.
|
|
327
|
+
* @throws {FlashDataError} If data preparation fails.
|
|
306
328
|
*/
|
|
307
|
-
|
|
329
|
+
flash?(dataSource: FlashDataSource, options: FlashOptions): Promise<void>;
|
|
308
330
|
/**
|
|
309
331
|
* Clear device to enable chooseDevice.
|
|
310
332
|
*/
|
package/build/cjs/device.js
CHANGED
|
@@ -1,37 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* (c) 2021, Micro:bit Educational Foundation and contributors
|
|
4
|
+
*
|
|
5
|
+
* SPDX-License-Identifier: MIT
|
|
6
|
+
*/
|
|
2
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
*/
|
|
25
|
-
ProgressStage["Connecting"] = "Connecting";
|
|
26
|
-
/**
|
|
27
|
-
* Partial flashing.
|
|
28
|
-
*/
|
|
29
|
-
ProgressStage["PartialFlashing"] = "PartialFlashing";
|
|
30
|
-
/**
|
|
31
|
-
* Full flashing.
|
|
32
|
-
*/
|
|
33
|
-
ProgressStage["FullFlashing"] = "FullFlashing";
|
|
34
|
-
})(ProgressStage || (exports.ProgressStage = ProgressStage = {}));
|
|
8
|
+
exports.FlashDataError = exports.ConnectionStatus = exports.DeviceError = exports.ProgressStage = void 0;
|
|
9
|
+
exports.assertConnected = assertConnected;
|
|
10
|
+
/**
|
|
11
|
+
* Stages reported by the progress callback during connection and flashing.
|
|
12
|
+
*/
|
|
13
|
+
exports.ProgressStage = {
|
|
14
|
+
/** Checking permissions and availability before connecting. */
|
|
15
|
+
Initializing: "Initializing",
|
|
16
|
+
/** Finding device. */
|
|
17
|
+
FindingDevice: "FindingDevice",
|
|
18
|
+
/** Checking that a bond is established. Only applicable on Native platforms. */
|
|
19
|
+
CheckingBond: "CheckingBond",
|
|
20
|
+
/** Resetting device in preparation for flashing. Only applicable on Native platforms. */
|
|
21
|
+
ResettingDevice: "ResettingDevice",
|
|
22
|
+
/** Connecting for flashing. */
|
|
23
|
+
Connecting: "Connecting",
|
|
24
|
+
/** Partial flashing. */
|
|
25
|
+
PartialFlashing: "PartialFlashing",
|
|
26
|
+
/** Full flashing. */
|
|
27
|
+
FullFlashing: "FullFlashing",
|
|
28
|
+
};
|
|
35
29
|
/**
|
|
36
30
|
* Error type used for all interactions with this module.
|
|
37
31
|
*
|
|
@@ -42,8 +36,8 @@ var ProgressStage;
|
|
|
42
36
|
* English.
|
|
43
37
|
*/
|
|
44
38
|
class DeviceError extends Error {
|
|
45
|
-
constructor({ code, message }) {
|
|
46
|
-
super(message);
|
|
39
|
+
constructor({ code, message, cause, }) {
|
|
40
|
+
super(message, { cause });
|
|
47
41
|
Object.defineProperty(this, "code", {
|
|
48
42
|
enumerable: true,
|
|
49
43
|
configurable: true,
|
|
@@ -54,11 +48,19 @@ class DeviceError extends Error {
|
|
|
54
48
|
}
|
|
55
49
|
}
|
|
56
50
|
exports.DeviceError = DeviceError;
|
|
51
|
+
/**
|
|
52
|
+
* Asserts that a connection is active, throwing a {@link DeviceError}
|
|
53
|
+
* with code `"not-connected"` if it is not.
|
|
54
|
+
*/
|
|
55
|
+
function assertConnected(connection) {
|
|
56
|
+
if (!connection) {
|
|
57
|
+
throw new DeviceError({ code: "not-connected", message: "Not connected" });
|
|
58
|
+
}
|
|
59
|
+
}
|
|
57
60
|
/**
|
|
58
61
|
* Tracks connection status.
|
|
59
62
|
*/
|
|
60
|
-
|
|
61
|
-
(function (ConnectionStatus) {
|
|
63
|
+
exports.ConnectionStatus = {
|
|
62
64
|
/**
|
|
63
65
|
* No device available.
|
|
64
66
|
*
|
|
@@ -68,104 +70,21 @@ var ConnectionStatus;
|
|
|
68
70
|
* Use checkAvailability() to determine whether the connection type is
|
|
69
71
|
* supported before attempting to connect.
|
|
70
72
|
*/
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
/**
|
|
77
|
-
|
|
78
|
-
*/
|
|
79
|
-
ConnectionStatus["CONNECTED"] = "CONNECTED";
|
|
80
|
-
/**
|
|
81
|
-
* Connecting.
|
|
82
|
-
*/
|
|
83
|
-
ConnectionStatus["CONNECTING"] = "CONNECTING";
|
|
73
|
+
NoAuthorizedDevice: "NoAuthorizedDevice",
|
|
74
|
+
/** Authorized device available but we haven't connected to it. */
|
|
75
|
+
Disconnected: "Disconnected",
|
|
76
|
+
/** Connected. */
|
|
77
|
+
Connected: "Connected",
|
|
78
|
+
/** Connecting. */
|
|
79
|
+
Connecting: "Connecting",
|
|
84
80
|
/**
|
|
85
81
|
* Paused due to tab visibility. The connection was temporarily suspended
|
|
86
82
|
* because the browser tab became hidden. Reconnection will be attempted
|
|
87
83
|
* automatically when the tab becomes visible again.
|
|
88
84
|
*/
|
|
89
|
-
|
|
90
|
-
}
|
|
85
|
+
Paused: "Paused",
|
|
86
|
+
};
|
|
91
87
|
class FlashDataError extends Error {
|
|
92
88
|
}
|
|
93
89
|
exports.FlashDataError = FlashDataError;
|
|
94
|
-
class ConnectionStatusEvent extends Event {
|
|
95
|
-
constructor(status, previousStatus) {
|
|
96
|
-
super("status");
|
|
97
|
-
Object.defineProperty(this, "status", {
|
|
98
|
-
enumerable: true,
|
|
99
|
-
configurable: true,
|
|
100
|
-
writable: true,
|
|
101
|
-
value: status
|
|
102
|
-
});
|
|
103
|
-
Object.defineProperty(this, "previousStatus", {
|
|
104
|
-
enumerable: true,
|
|
105
|
-
configurable: true,
|
|
106
|
-
writable: true,
|
|
107
|
-
value: previousStatus
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
exports.ConnectionStatusEvent = ConnectionStatusEvent;
|
|
112
|
-
class BeforeRequestDevice extends Event {
|
|
113
|
-
constructor() {
|
|
114
|
-
super("beforerequestdevice");
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
exports.BeforeRequestDevice = BeforeRequestDevice;
|
|
118
|
-
class AfterRequestDevice extends Event {
|
|
119
|
-
constructor() {
|
|
120
|
-
super("afterrequestdevice");
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
exports.AfterRequestDevice = AfterRequestDevice;
|
|
124
|
-
class BackgroundErrorEvent extends Event {
|
|
125
|
-
constructor(errorMessage, error) {
|
|
126
|
-
super("backgrounderror");
|
|
127
|
-
Object.defineProperty(this, "errorMessage", {
|
|
128
|
-
enumerable: true,
|
|
129
|
-
configurable: true,
|
|
130
|
-
writable: true,
|
|
131
|
-
value: errorMessage
|
|
132
|
-
});
|
|
133
|
-
Object.defineProperty(this, "error", {
|
|
134
|
-
enumerable: true,
|
|
135
|
-
configurable: true,
|
|
136
|
-
writable: true,
|
|
137
|
-
value: error
|
|
138
|
-
});
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
exports.BackgroundErrorEvent = BackgroundErrorEvent;
|
|
142
|
-
class DeviceConnectionEventMap {
|
|
143
|
-
constructor() {
|
|
144
|
-
Object.defineProperty(this, "status", {
|
|
145
|
-
enumerable: true,
|
|
146
|
-
configurable: true,
|
|
147
|
-
writable: true,
|
|
148
|
-
value: void 0
|
|
149
|
-
});
|
|
150
|
-
Object.defineProperty(this, "backgrounderror", {
|
|
151
|
-
enumerable: true,
|
|
152
|
-
configurable: true,
|
|
153
|
-
writable: true,
|
|
154
|
-
value: void 0
|
|
155
|
-
});
|
|
156
|
-
Object.defineProperty(this, "beforerequestdevice", {
|
|
157
|
-
enumerable: true,
|
|
158
|
-
configurable: true,
|
|
159
|
-
writable: true,
|
|
160
|
-
value: void 0
|
|
161
|
-
});
|
|
162
|
-
Object.defineProperty(this, "afterrequestdevice", {
|
|
163
|
-
enumerable: true,
|
|
164
|
-
configurable: true,
|
|
165
|
-
writable: true,
|
|
166
|
-
value: void 0
|
|
167
|
-
});
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
exports.DeviceConnectionEventMap = DeviceConnectionEventMap;
|
|
171
90
|
//# sourceMappingURL=device.js.map
|
package/build/cjs/device.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/device.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/device.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAgMH,0CAMC;AAhFD;;GAEG;AACU,QAAA,aAAa,GAAG;IAC3B,+DAA+D;IAC/D,YAAY,EAAE,cAAc;IAC5B,sBAAsB;IACtB,aAAa,EAAE,eAAe;IAC9B,gFAAgF;IAChF,YAAY,EAAE,cAAc;IAC5B,yFAAyF;IACzF,eAAe,EAAE,iBAAiB;IAClC,+BAA+B;IAC/B,UAAU,EAAE,YAAY;IACxB,wBAAwB;IACxB,eAAe,EAAE,iBAAiB;IAClC,qBAAqB;IACrB,YAAY,EAAE,cAAc;CACpB,CAAC;AA2BX;;;;;;;;GAQG;AACH,MAAa,WAAY,SAAQ,KAAK;IAEpC,YAAY,EACV,IAAI,EACJ,OAAO,EACP,KAAK,GAKN;QACC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAV5B;;;;;WAAsB;QAWpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAdD,kCAcC;AAED;;;GAGG;AACH,SAAgB,eAAe,CAC7B,UAAyB;IAEzB,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,WAAW,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;IAC7E,CAAC;AACH,CAAC;AAED;;GAEG;AACU,QAAA,gBAAgB,GAAG;IAC9B;;;;;;;;OAQG;IACH,kBAAkB,EAAE,oBAAoB;IACxC,kEAAkE;IAClE,YAAY,EAAE,cAAc;IAC5B,iBAAiB;IACjB,SAAS,EAAE,WAAW;IACtB,kBAAkB;IAClB,UAAU,EAAE,YAAY;IACxB;;;;OAIG;IACH,MAAM,EAAE,QAAQ;CACR,CAAC;AAoDX,MAAa,cAAe,SAAQ,KAAK;CAAG;AAA5C,wCAA4C"}
|