@microbit/microbit-connection 0.9.0-apps.alpha.6 → 0.9.0-apps.alpha.7

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.
@@ -0,0 +1,14 @@
1
+ /**
2
+ * (c) 2021, Micro:bit Educational Foundation and contributors
3
+ *
4
+ * SPDX-License-Identifier: MIT
5
+ */
6
+ import { ConnectionAvailabilityStatus } from "./device.js";
7
+ /**
8
+ * Throws a DeviceError if the availability status indicates the connection is unavailable.
9
+ * The error codes align with ConnectionAvailabilityStatus values.
10
+ *
11
+ * @param status - The availability status to check.
12
+ * @throws {DeviceError} If status is not "available".
13
+ */
14
+ export declare const throwIfUnavailable: (status: ConnectionAvailabilityStatus) => void;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.throwIfUnavailable = void 0;
4
+ /**
5
+ * (c) 2021, Micro:bit Educational Foundation and contributors
6
+ *
7
+ * SPDX-License-Identifier: MIT
8
+ */
9
+ const device_js_1 = require("./device.js");
10
+ /**
11
+ * Throws a DeviceError if the availability status indicates the connection is unavailable.
12
+ * The error codes align with ConnectionAvailabilityStatus values.
13
+ *
14
+ * @param status - The availability status to check.
15
+ * @throws {DeviceError} If status is not "available".
16
+ */
17
+ const throwIfUnavailable = (status) => {
18
+ switch (status) {
19
+ case "available":
20
+ return;
21
+ case "unsupported":
22
+ throw new device_js_1.DeviceError({
23
+ code: "unsupported",
24
+ message: "Connection type not supported",
25
+ });
26
+ case "disabled":
27
+ throw new device_js_1.DeviceError({
28
+ code: "disabled",
29
+ message: "Connection is disabled",
30
+ });
31
+ case "permission-denied":
32
+ throw new device_js_1.DeviceError({
33
+ code: "permission-denied",
34
+ message: "Permission denied",
35
+ });
36
+ case "location-disabled":
37
+ throw new device_js_1.DeviceError({
38
+ code: "location-disabled",
39
+ message: "Location services disabled",
40
+ });
41
+ }
42
+ };
43
+ exports.throwIfUnavailable = throwIfUnavailable;
44
+ //# sourceMappingURL=availability.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"availability.js","sourceRoot":"","sources":["../../lib/availability.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,2CAAwE;AAExE;;;;;;GAMG;AACI,MAAM,kBAAkB,GAAG,CAChC,MAAoC,EAC9B,EAAE;IACR,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,WAAW;YACd,OAAO;QACT,KAAK,aAAa;YAChB,MAAM,IAAI,uBAAW,CAAC;gBACpB,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,+BAA+B;aACzC,CAAC,CAAC;QACL,KAAK,UAAU;YACb,MAAM,IAAI,uBAAW,CAAC;gBACpB,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE,wBAAwB;aAClC,CAAC,CAAC;QACL,KAAK,mBAAmB;YACtB,MAAM,IAAI,uBAAW,CAAC;gBACpB,IAAI,EAAE,mBAAmB;gBACzB,OAAO,EAAE,mBAAmB;aAC7B,CAAC,CAAC;QACL,KAAK,mBAAmB;YACtB,MAAM,IAAI,uBAAW,CAAC;gBACpB,IAAI,EAAE,mBAAmB;gBACzB,OAAO,EAAE,4BAA4B;aACtC,CAAC,CAAC;IACP,CAAC;AACH,CAAC,CAAC;AA3BW,QAAA,kBAAkB,sBA2B7B"}
@@ -42,6 +42,7 @@ const events_js_1 = require("./events.js");
42
42
  const logging_js_1 = require("./logging.js");
43
43
  const flashing_full_js_1 = require("./flashing/flashing-full.js");
44
44
  const flashing_partial_js_1 = __importStar(require("./flashing/flashing-partial.js"));
45
+ const availability_js_1 = require("./availability.js");
45
46
  let bleClientInitialized = false;
46
47
  /**
47
48
  * A Bluetooth connection factory.
@@ -58,7 +59,7 @@ class MicrobitWebBluetoothConnectionImpl extends events_js_1.TypedEventTarget {
58
59
  enumerable: true,
59
60
  configurable: true,
60
61
  writable: true,
61
- value: device_js_1.ConnectionStatus.SUPPORT_NOT_KNOWN
62
+ value: device_js_1.ConnectionStatus.NO_AUTHORIZED_DEVICE
62
63
  });
63
64
  /**
64
65
  * The USB device we last connected to.
@@ -82,22 +83,6 @@ class MicrobitWebBluetoothConnectionImpl extends events_js_1.TypedEventTarget {
82
83
  writable: true,
83
84
  value: void 0
84
85
  });
85
- Object.defineProperty(this, "availabilityListener", {
86
- enumerable: true,
87
- configurable: true,
88
- writable: true,
89
- value: (e) => {
90
- // TODO: is this called? is `value` correct?
91
- const value = e.value;
92
- this.availability = value;
93
- }
94
- });
95
- Object.defineProperty(this, "availability", {
96
- enumerable: true,
97
- configurable: true,
98
- writable: true,
99
- value: void 0
100
- });
101
86
  Object.defineProperty(this, "nameFilter", {
102
87
  enumerable: true,
103
88
  configurable: true,
@@ -124,23 +109,74 @@ class MicrobitWebBluetoothConnectionImpl extends events_js_1.TypedEventTarget {
124
109
  error(message, e) {
125
110
  this.logging.error(message, e);
126
111
  }
127
- async initialize() {
128
- navigator.bluetooth?.addEventListener("availabilitychanged", this.availabilityListener);
129
- this.availability = await navigator.bluetooth?.getAvailability();
130
- this.setStatus(this.availability
131
- ? device_js_1.ConnectionStatus.NO_AUTHORIZED_DEVICE
132
- : device_js_1.ConnectionStatus.NOT_SUPPORTED);
112
+ async initialize() { }
113
+ dispose() { }
114
+ async checkAvailability() {
115
+ if (core_1.Capacitor.isNativePlatform()) {
116
+ return this.checkNativeBluetoothAvailability();
117
+ }
118
+ return this.checkWebBluetoothAvailability();
133
119
  }
134
- dispose() {
135
- navigator.bluetooth?.removeEventListener("availabilitychanged", this.availabilityListener);
120
+ async checkWebBluetoothAvailability() {
121
+ if (!navigator.bluetooth) {
122
+ return "unsupported";
123
+ }
124
+ try {
125
+ const available = await navigator.bluetooth.getAvailability();
126
+ return available ? "available" : "disabled";
127
+ }
128
+ catch {
129
+ return "disabled";
130
+ }
131
+ }
132
+ async checkNativeBluetoothAvailability() {
133
+ try {
134
+ // On Android, check if location services are enabled. This is only
135
+ // required on Android < 12 (API < 31), but isLocationEnabled() returns
136
+ // true on newer Android, so we can always check it.
137
+ if ((0, bluetooth_device_wrapper_js_1.isAndroid)()) {
138
+ const isLocationEnabled = await bluetooth_le_1.BleClient.isLocationEnabled();
139
+ if (!isLocationEnabled) {
140
+ return "location-disabled";
141
+ }
142
+ }
143
+ // Initialize BLE (requests permissions automatically on first call).
144
+ if (!bleClientInitialized) {
145
+ await bluetooth_le_1.BleClient.initialize({ androidNeverForLocation: true });
146
+ bleClientInitialized = true;
147
+ }
148
+ // Check if Bluetooth is enabled.
149
+ const isBluetoothEnabled = await bluetooth_le_1.BleClient.isEnabled();
150
+ if (!isBluetoothEnabled) {
151
+ return "disabled";
152
+ }
153
+ return "available";
154
+ }
155
+ catch (e) {
156
+ // Handle errors from BleClient.initialize() which rejects for permission
157
+ // or unsupported states. Error messages are hardcoded in the plugin:
158
+ // https://github.com/capacitor-community/bluetooth-le/blob/main/ios/Plugin/DeviceManager.swift
159
+ const errorMessage = e instanceof Error ? e.message : e?.message ?? "";
160
+ this.log(`Bluetooth availability check failed: "${errorMessage}"`);
161
+ if (errorMessage === "BLE permission denied") {
162
+ return "permission-denied";
163
+ }
164
+ if (errorMessage === "BLE unsupported") {
165
+ return "unsupported";
166
+ }
167
+ // Unknown error - default to permission-denied
168
+ return "permission-denied";
169
+ }
136
170
  }
137
171
  getBoardVersion() {
138
172
  return this.connection?.boardVersion;
139
173
  }
140
174
  async connect(options) {
141
175
  const progress = options?.progress ?? (() => { });
176
+ // Check availability before connecting. Done here rather than at initialize()
177
+ // because on Android/iOS that's the appropriate time to ask for permissions.
142
178
  progress(device_js_1.ProgressStage.Initializing);
143
- await this.preConnectInitialization();
179
+ (0, availability_js_1.throwIfUnavailable)(await this.checkAvailability());
144
180
  if (!this.connection) {
145
181
  progress(device_js_1.ProgressStage.FindingDevice);
146
182
  const device = await this.requestDevice();
@@ -157,53 +193,6 @@ class MicrobitWebBluetoothConnectionImpl extends events_js_1.TypedEventTarget {
157
193
  progress(device_js_1.ProgressStage.Connecting);
158
194
  await this.connection.connect();
159
195
  }
160
- /**
161
- * Initializes BLE.
162
- *
163
- * This must happen before requesting a device or connecting.
164
- *
165
- * We do this just before use not at connection initialize because on Android/iOS
166
- * that's the appropriate time to ask for permissions.
167
- */
168
- async preConnectInitialization() {
169
- try {
170
- if ((0, bluetooth_device_wrapper_js_1.isAndroid)()) {
171
- const isLocationEnabled = await bluetooth_le_1.BleClient.isLocationEnabled();
172
- if (!isLocationEnabled) {
173
- throw new device_js_1.DeviceError({
174
- code: "bluetooth-missing-permissions",
175
- message: "Location services is disabled",
176
- });
177
- }
178
- }
179
- if (!bleClientInitialized) {
180
- await bluetooth_le_1.BleClient.initialize({ androidNeverForLocation: true });
181
- bleClientInitialized = true;
182
- }
183
- const isBluetoothEnabled = await bluetooth_le_1.BleClient.isEnabled();
184
- if (!isBluetoothEnabled) {
185
- throw new device_js_1.DeviceError({
186
- code: "bluetooth-disabled",
187
- message: "Bluetooth is disabled",
188
- });
189
- }
190
- }
191
- catch (e) {
192
- this.error("Error initializing Bluetooth", e);
193
- const error = e;
194
- if (error.message === "BLE permission denied") {
195
- // Error thrown for iOS platform.
196
- throw new device_js_1.DeviceError({
197
- code: "bluetooth-disabled",
198
- message: "Bluetooth is disabled",
199
- });
200
- }
201
- throw new device_js_1.DeviceError({
202
- code: "bluetooth-missing-permissions",
203
- message: "Missing permissions",
204
- });
205
- }
206
- }
207
196
  async disconnect() {
208
197
  try {
209
198
  if (this.connection) {
@@ -1 +1 @@
1
- {"version":3,"file":"bluetooth.js","sourceRoot":"","sources":["../../lib/bluetooth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bluetooth.js","sourceRoot":"","sources":["../../lib/bluetooth.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,11 @@
4
4
  * SPDX-License-Identifier: MIT
5
5
  */
6
6
  import { TypedEventTarget, ValueIsEvent } from "./events.js";
7
+ /**
8
+ * Connection availability status returned by checkAvailability().
9
+ * Used for pre-flight UX decisions before attempting to connect.
10
+ */
11
+ export type ConnectionAvailabilityStatus = "available" | "unsupported" | "disabled" | "permission-denied" | "location-disabled";
7
12
  /**
8
13
  * Specific identified error types.
9
14
  *
@@ -46,14 +51,6 @@ export type DeviceErrorCode =
46
51
  * Failed to establish Bluetooth connection.
47
52
  */
48
53
  | "bluetooth-connection-failed"
49
- /**
50
- * Bluetooth is disabled on the device.
51
- */
52
- | "bluetooth-disabled"
53
- /**
54
- * Missing required Bluetooth permissions.
55
- */
56
- | "bluetooth-missing-permissions"
57
54
  /**
58
55
  * Partial flash operation failed.
59
56
  */
@@ -65,7 +62,27 @@ export type DeviceErrorCode =
65
62
  /**
66
63
  * Flash operation was cancelled.
67
64
  */
68
- | "flash-cancelled";
65
+ | "flash-cancelled"
66
+ /**
67
+ * Connection type is not supported on this platform/browser.
68
+ * Aligns with ConnectionAvailabilityStatus "unsupported".
69
+ */
70
+ | "unsupported"
71
+ /**
72
+ * Connection is disabled (e.g., Bluetooth turned off).
73
+ * Aligns with ConnectionAvailabilityStatus "disabled".
74
+ */
75
+ | "disabled"
76
+ /**
77
+ * Required permissions were denied.
78
+ * Aligns with ConnectionAvailabilityStatus "permission-denied".
79
+ */
80
+ | "permission-denied"
81
+ /**
82
+ * Location services are disabled (Android < 12 only).
83
+ * Aligns with ConnectionAvailabilityStatus "location-disabled".
84
+ */
85
+ | "location-disabled";
69
86
  export declare enum ProgressStage {
70
87
  Initializing = "Initializing",
71
88
  FindingDevice = "FindingDevice",
@@ -108,23 +125,17 @@ export declare class DeviceError extends Error {
108
125
  });
109
126
  }
110
127
  /**
111
- * Tracks connection status,
128
+ * Tracks connection status.
112
129
  */
113
130
  export declare enum ConnectionStatus {
114
131
  /**
115
- * Determining whether the connection type is supported requires
116
- * initialize() to complete.
117
- */
118
- SUPPORT_NOT_KNOWN = "SUPPORT_NOT_KNOWN",
119
- /**
120
- * Not supported.
121
- */
122
- NOT_SUPPORTED = "NOT_SUPPORTED",
123
- /**
124
- * Supported but no device available.
132
+ * No device available.
125
133
  *
126
- * This will be the case even when a device is physically connected
127
- * but has not been connected via the browser security UI.
134
+ * This is the initial status and will be the case even when a device is
135
+ * physically connected but has not been connected via the browser security UI.
136
+ *
137
+ * Use checkAvailability() to determine whether the connection type is
138
+ * supported before attempting to connect.
128
139
  */
129
140
  NO_AUTHORIZED_DEVICE = "NO_AUTHORIZED_DEVICE",
130
141
  /**
@@ -207,6 +218,15 @@ export interface DeviceConnection<M extends ValueIsEvent<M>> extends TypedEventT
207
218
  * Initializes the device.
208
219
  */
209
220
  initialize(): Promise<void>;
221
+ /**
222
+ * Checks if this connection type is currently available.
223
+ *
224
+ * Use this for pre-flight UX decisions (e.g., showing "enable Bluetooth" dialog).
225
+ * Note: Even if this returns "available", connect() can still fail.
226
+ *
227
+ * @returns A promise resolving to the current availability status.
228
+ */
229
+ checkAvailability(): Promise<ConnectionAvailabilityStatus>;
210
230
  /**
211
231
  * Removes all listeners.
212
232
  */
@@ -32,24 +32,18 @@ class DeviceError extends Error {
32
32
  }
33
33
  exports.DeviceError = DeviceError;
34
34
  /**
35
- * Tracks connection status,
35
+ * Tracks connection status.
36
36
  */
37
37
  var ConnectionStatus;
38
38
  (function (ConnectionStatus) {
39
39
  /**
40
- * Determining whether the connection type is supported requires
41
- * initialize() to complete.
42
- */
43
- ConnectionStatus["SUPPORT_NOT_KNOWN"] = "SUPPORT_NOT_KNOWN";
44
- /**
45
- * Not supported.
46
- */
47
- ConnectionStatus["NOT_SUPPORTED"] = "NOT_SUPPORTED";
48
- /**
49
- * Supported but no device available.
40
+ * No device available.
41
+ *
42
+ * This is the initial status and will be the case even when a device is
43
+ * physically connected but has not been connected via the browser security UI.
50
44
  *
51
- * This will be the case even when a device is physically connected
52
- * but has not been connected via the browser security UI.
45
+ * Use checkAvailability() to determine whether the connection type is
46
+ * supported before attempting to connect.
53
47
  */
54
48
  ConnectionStatus["NO_AUTHORIZED_DEVICE"] = "NO_AUTHORIZED_DEVICE";
55
49
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sourceRoot":"","sources":["../../lib/device.ts"],"names":[],"mappings":";;;AAsEA,IAAY,aAMX;AAND,WAAY,aAAa;IACvB,8CAA6B,CAAA;IAC7B,gDAA+B,CAAA;IAC/B,0CAAyB,CAAA;IACzB,oDAAmC,CAAA;IACnC,8CAA6B,CAAA;AAC/B,CAAC,EANW,aAAa,6BAAb,aAAa,QAMxB;AAwBD;;;;;;;;GAQG;AACH,MAAa,WAAY,SAAQ,KAAK;IAEpC,YAAY,EAAE,IAAI,EAAE,OAAO,EAA+C;QACxE,KAAK,CAAC,OAAO,CAAC,CAAC;QAFjB;;;;;WAAsB;QAGpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAND,kCAMC;AAED;;GAEG;AACH,IAAY,gBAwCX;AAxCD,WAAY,gBAAgB;IAC1B;;;OAGG;IACH,2DAAuC,CAAA;IACvC;;OAEG;IACH,mDAA+B,CAAA;IAC/B;;;;;OAKG;IACH,iEAA6C,CAAA;IAC7C;;OAEG;IACH,iDAA6B,CAAA;IAC7B;;OAEG;IACH,2CAAuB,CAAA;IACvB;;OAEG;IACH,6CAAyB,CAAA;IACzB;;;OAGG;IACH,iDAA6B,CAAA;IAC7B;;;;OAIG;IACH,qCAAiB,CAAA;AACnB,CAAC,EAxCW,gBAAgB,gCAAhB,gBAAgB,QAwC3B;AA6BD,MAAa,cAAe,SAAQ,KAAK;CAAG;AAA5C,wCAA4C;AAQ5C,MAAa,qBAAsB,SAAQ,KAAK;IAC9C,YAA4B,MAAwB;QAClD,KAAK,CAAC,QAAQ,CAAC,CAAC;QADN;;;;mBAAgB,MAAM;WAAkB;IAEpD,CAAC;CACF;AAJD,sDAIC;AAED,MAAa,mBAAoB,SAAQ,KAAK;IAC5C;QACE,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC/B,CAAC;CACF;AAJD,kDAIC;AAED,MAAa,kBAAmB,SAAQ,KAAK;IAC3C;QACE,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAC9B,CAAC;CACF;AAJD,gDAIC;AAED,MAAa,oBAAqB,SAAQ,KAAK;IAC7C,YACkB,YAAoB,EACpB,KAAe;QAE/B,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAHzB;;;;mBAAgB,YAAY;WAAQ;QACpC;;;;mBAAgB,KAAK;WAAU;IAGjC,CAAC;CACF;AAPD,oDAOC;AAED,MAAa,wBAAwB;IAArC;QACE,4BAAA,QAAQ;;;;;WAAwB;QAChC,4BAAA,iBAAiB;;;;;WAAuB;QACxC,4BAAA,qBAAqB;;;;;WAAQ;QAC7B,4BAAA,oBAAoB;;;;;WAAQ;IAC9B,CAAC;CAAA;AALD,4DAKC"}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../../lib/device.ts"],"names":[],"mappings":";;;AA6FA,IAAY,aAMX;AAND,WAAY,aAAa;IACvB,8CAA6B,CAAA;IAC7B,gDAA+B,CAAA;IAC/B,0CAAyB,CAAA;IACzB,oDAAmC,CAAA;IACnC,8CAA6B,CAAA;AAC/B,CAAC,EANW,aAAa,6BAAb,aAAa,QAMxB;AAwBD;;;;;;;;GAQG;AACH,MAAa,WAAY,SAAQ,KAAK;IAEpC,YAAY,EAAE,IAAI,EAAE,OAAO,EAA+C;QACxE,KAAK,CAAC,OAAO,CAAC,CAAC;QAFjB;;;;;WAAsB;QAGpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAND,kCAMC;AAED;;GAEG;AACH,IAAY,gBAkCX;AAlCD,WAAY,gBAAgB;IAC1B;;;;;;;;OAQG;IACH,iEAA6C,CAAA;IAC7C;;OAEG;IACH,iDAA6B,CAAA;IAC7B;;OAEG;IACH,2CAAuB,CAAA;IACvB;;OAEG;IACH,6CAAyB,CAAA;IACzB;;;OAGG;IACH,iDAA6B,CAAA;IAC7B;;;;OAIG;IACH,qCAAiB,CAAA;AACnB,CAAC,EAlCW,gBAAgB,gCAAhB,gBAAgB,QAkC3B;AA6BD,MAAa,cAAe,SAAQ,KAAK;CAAG;AAA5C,wCAA4C;AAQ5C,MAAa,qBAAsB,SAAQ,KAAK;IAC9C,YAA4B,MAAwB;QAClD,KAAK,CAAC,QAAQ,CAAC,CAAC;QADN;;;;mBAAgB,MAAM;WAAkB;IAEpD,CAAC;CACF;AAJD,sDAIC;AAED,MAAa,mBAAoB,SAAQ,KAAK;IAC5C;QACE,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC/B,CAAC;CACF;AAJD,kDAIC;AAED,MAAa,kBAAmB,SAAQ,KAAK;IAC3C;QACE,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAC9B,CAAC;CACF;AAJD,gDAIC;AAED,MAAa,oBAAqB,SAAQ,KAAK;IAC7C,YACkB,YAAoB,EACpB,KAAe;QAE/B,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAHzB;;;;mBAAgB,YAAY;WAAQ;QACpC;;;;mBAAgB,KAAK;WAAU;IAGjC,CAAC;CACF;AAPD,oDAOC;AAED,MAAa,wBAAwB;IAArC;QACE,4BAAA,QAAQ;;;;;WAAwB;QAChC,4BAAA,iBAAiB;;;;;WAAuB;QACxC,4BAAA,qBAAqB;;;;;WAAQ;QAC7B,4BAAA,oBAAoB;;;;;WAAQ;IAC9B,CAAC;CAAA;AALD,4DAKC"}
@@ -2,7 +2,7 @@ import { AccelerometerData, AccelerometerDataEvent } from "./accelerometer.js";
2
2
  import { createWebBluetoothConnection, MicrobitWebBluetoothConnection, MicrobitWebBluetoothConnectionOptions } from "./bluetooth.js";
3
3
  import { BoardId } from "./board-id.js";
4
4
  import { ButtonEvent, ButtonEventType, ButtonState } from "./buttons.js";
5
- import { AfterRequestDevice, BackgroundErrorEvent, BeforeRequestDevice, BoardVersion, ConnectOptions, ConnectionStatus, ConnectionStatusEvent, DeviceConnection, DeviceConnectionEventMap, DeviceError, DeviceErrorCode, FlashDataError, FlashDataSource, FlashOptions, ProgressCallback, ProgressStage } from "./device.js";
5
+ import { AfterRequestDevice, BackgroundErrorEvent, BeforeRequestDevice, BoardVersion, ConnectOptions, ConnectionAvailabilityStatus, ConnectionStatus, ConnectionStatusEvent, DeviceConnection, DeviceConnectionEventMap, DeviceError, DeviceErrorCode, FlashDataError, FlashDataSource, FlashOptions, ProgressCallback, ProgressStage } from "./device.js";
6
6
  import { TypedEventTarget } from "./events.js";
7
7
  import { createUniversalHexFlashDataSource } from "./hex-flash-data-source.js";
8
8
  import { LedMatrix } from "./led.js";
@@ -14,4 +14,4 @@ import { UARTDataEvent } from "./uart.js";
14
14
  import { createRadioBridgeConnection, MicrobitRadioBridgeConnection, MicrobitRadioBridgeConnectionOptions } from "./usb-radio-bridge.js";
15
15
  import { createWebUSBConnection, DeviceSelectionMode, MicrobitWebUSBConnection, MicrobitWebUSBConnectionOptions } from "./usb.js";
16
16
  export { AfterRequestDevice, BackgroundErrorEvent, BeforeRequestDevice, BoardId, ConnectionStatus, ConnectionStatusEvent, createRadioBridgeConnection, createUniversalHexFlashDataSource, createWebBluetoothConnection, createWebUSBConnection, DeviceConnectionEventMap, DeviceSelectionMode, DeviceError, FlashDataError, FlashEvent, ProgressStage, SerialConnectionEventMap, SerialDataEvent, SerialErrorEvent, SerialResetEvent, ServiceConnectionEventMap, TypedEventTarget, UARTDataEvent, };
17
- export type { AccelerometerData, AccelerometerDataEvent, BoardVersion, ButtonEvent, ButtonEventType, ButtonState, ConnectOptions, DeviceConnection, DeviceErrorCode, FlashDataSource, FlashOptions, LedMatrix, Logging, LoggingEvent, MagnetometerData, MagnetometerDataEvent, MicrobitRadioBridgeConnection, MicrobitRadioBridgeConnectionOptions, MicrobitWebBluetoothConnection, MicrobitWebBluetoothConnectionOptions, MicrobitWebUSBConnection, MicrobitWebUSBConnectionOptions, ProgressCallback, };
17
+ export type { AccelerometerData, AccelerometerDataEvent, BoardVersion, ConnectionAvailabilityStatus, ButtonEvent, ButtonEventType, ButtonState, ConnectOptions, DeviceConnection, DeviceErrorCode, FlashDataSource, FlashOptions, LedMatrix, Logging, LoggingEvent, MagnetometerData, MagnetometerDataEvent, MicrobitRadioBridgeConnection, MicrobitRadioBridgeConnectionOptions, MicrobitWebBluetoothConnection, MicrobitWebBluetoothConnectionOptions, MicrobitWebUSBConnection, MicrobitWebUSBConnectionOptions, ProgressCallback, };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":";;;AACA,iDAIwB;AAwDtB,6GA3DA,2CAA4B,OA2DA;AAvD9B,+CAAwC;AAkDtC,wFAlDO,qBAAO,OAkDP;AAhDT,2CAiBqB;AA4BnB,mGA5CA,8BAAkB,OA4CA;AAClB,qGA5CA,gCAAoB,OA4CA;AACpB,oGA5CA,+BAAmB,OA4CA;AAEnB,iGA3CA,4BAAgB,OA2CA;AAChB,sGA3CA,iCAAqB,OA2CA;AAKrB,yGA9CA,oCAAwB,OA8CA;AAExB,4FA/CA,uBAAW,OA+CA;AACX,+FA9CA,0BAAc,OA8CA;AAEd,8FA5CA,yBAAa,OA4CA;AA1Cf,2CAA+C;AAgD7C,iGAhDO,4BAAgB,OAgDP;AA/ClB,yEAA+E;AAiC7E,kHAjCO,4DAAiC,OAiCP;AA7BnC,yDAM4B;AA8B1B,2FAnCA,6BAAU,OAmCA;AAEV,yGApCA,2CAAwB,OAoCA;AACxB,gGApCA,kCAAe,OAoCA;AACf,iGApCA,mCAAgB,OAoCA;AAChB,iGApCA,mCAAgB,OAoCA;AAlClB,2DAAgE;AAmC9D,0GAnCO,6CAAyB,OAmCP;AAlC3B,uCAA0C;AAoCxC,8FApCO,uBAAa,OAoCP;AAnCf,+DAI+B;AAe7B,4GAlBA,iDAA2B,OAkBA;AAd7B,qCAKkB;AAYhB,uGAhBA,+BAAsB,OAgBA;AAEtB,oGAjBA,4BAAmB,OAiBA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":";;;AACA,iDAIwB;AAyDtB,6GA5DA,2CAA4B,OA4DA;AAxD9B,+CAAwC;AAmDtC,wFAnDO,qBAAO,OAmDP;AAjDT,2CAkBqB;AA4BnB,mGA7CA,8BAAkB,OA6CA;AAClB,qGA7CA,gCAAoB,OA6CA;AACpB,oGA7CA,+BAAmB,OA6CA;AAEnB,iGA3CA,4BAAgB,OA2CA;AAChB,sGA3CA,iCAAqB,OA2CA;AAKrB,yGA9CA,oCAAwB,OA8CA;AAExB,4FA/CA,uBAAW,OA+CA;AACX,+FA9CA,0BAAc,OA8CA;AAEd,8FA5CA,yBAAa,OA4CA;AA1Cf,2CAA+C;AAgD7C,iGAhDO,4BAAgB,OAgDP;AA/ClB,yEAA+E;AAiC7E,kHAjCO,4DAAiC,OAiCP;AA7BnC,yDAM4B;AA8B1B,2FAnCA,6BAAU,OAmCA;AAEV,yGApCA,2CAAwB,OAoCA;AACxB,gGApCA,kCAAe,OAoCA;AACf,iGApCA,mCAAgB,OAoCA;AAChB,iGApCA,mCAAgB,OAoCA;AAlClB,2DAAgE;AAmC9D,0GAnCO,6CAAyB,OAmCP;AAlC3B,uCAA0C;AAoCxC,8FApCO,uBAAa,OAoCP;AAnCf,+DAI+B;AAe7B,4GAlBA,iDAA2B,OAkBA;AAd7B,qCAKkB;AAYhB,uGAhBA,+BAAsB,OAgBA;AAEtB,oGAjBA,4BAAmB,OAiBA"}
@@ -151,6 +151,9 @@ class MicrobitRadioBridgeConnectionImpl extends events_js_1.TypedEventTarget {
151
151
  this.setStatus(this.statusFromDelegate());
152
152
  this.delegate.addEventListener("status", this.delegateStatusListener);
153
153
  }
154
+ async checkAvailability() {
155
+ return this.delegate.checkAvailability();
156
+ }
154
157
  dispose() {
155
158
  this.delegate.removeEventListener("status", this.delegateStatusListener);
156
159
  this.delegate.dispose();
@@ -1 +1 @@
1
- {"version":3,"file":"usb-radio-bridge.js","sourceRoot":"","sources":["../../lib/usb-radio-bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usb-radio-bridge.js","sourceRoot":"","sources":["../../lib/usb-radio-bridge.ts"],"names":[],"mappings":"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"}
package/build/cjs/usb.js CHANGED
@@ -7,6 +7,7 @@ exports.applyDeviceFilters = exports.createWebUSBConnection = exports.DeviceSele
7
7
  * SPDX-License-Identifier: MIT
8
8
  */
9
9
  const async_util_js_1 = require("./async-util.js");
10
+ const availability_js_1 = require("./availability.js");
10
11
  const device_js_1 = require("./device.js");
11
12
  const events_js_1 = require("./events.js");
12
13
  const logging_js_1 = require("./logging.js");
@@ -50,9 +51,7 @@ class MicrobitWebUSBConnectionImpl extends events_js_1.TypedEventTarget {
50
51
  enumerable: true,
51
52
  configurable: true,
52
53
  writable: true,
53
- value: navigator.usb && !(0, exports.isChromeOS105)()
54
- ? device_js_1.ConnectionStatus.NO_AUTHORIZED_DEVICE
55
- : device_js_1.ConnectionStatus.NOT_SUPPORTED
54
+ value: device_js_1.ConnectionStatus.NO_AUTHORIZED_DEVICE
56
55
  });
57
56
  Object.defineProperty(this, "exclusionFilters", {
58
57
  enumerable: true,
@@ -222,6 +221,12 @@ class MicrobitWebUSBConnectionImpl extends events_js_1.TypedEventTarget {
222
221
  }
223
222
  }
224
223
  }
224
+ async checkAvailability() {
225
+ if (!navigator.usb || (0, exports.isChromeOS105)()) {
226
+ return "unsupported";
227
+ }
228
+ return "available";
229
+ }
225
230
  dispose() {
226
231
  if (navigator.usb) {
227
232
  navigator.usb.removeEventListener("disconnect", this.handleDisconnect);
@@ -434,6 +439,7 @@ class MicrobitWebUSBConnectionImpl extends events_js_1.TypedEventTarget {
434
439
  async connectInternal(progress) {
435
440
  const reportProgress = progress ?? (() => { });
436
441
  reportProgress(device_js_1.ProgressStage.Initializing);
442
+ (0, availability_js_1.throwIfUnavailable)(await this.checkAvailability());
437
443
  if (!this.connection && this.device) {
438
444
  reportProgress(device_js_1.ProgressStage.Connecting);
439
445
  this.connection = new usb_device_wrapper_js_1.DAPWrapper(this.device, this.logging);