@ovok/native 1.16.1-dev.2185 → 1.16.1-dev.2187

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/lib/commonjs/modules/next/bluetooth/ble-plx/legacy-driver.js +13 -1
  2. package/lib/commonjs/modules/next/bluetooth/ble-plx/legacy-driver.js.map +1 -1
  3. package/lib/commonjs/modules/next/bluetooth/connections.js +25 -0
  4. package/lib/commonjs/modules/next/bluetooth/connections.js.map +1 -1
  5. package/lib/commonjs/modules/next/bluetooth/driver.js.map +1 -1
  6. package/lib/commonjs/modules/next/bluetooth/errors.js.map +1 -1
  7. package/lib/commonjs/modules/next/bluetooth/runtime.js +13 -0
  8. package/lib/commonjs/modules/next/bluetooth/runtime.js.map +1 -1
  9. package/lib/module/modules/next/bluetooth/ble-plx/legacy-driver.js +13 -1
  10. package/lib/module/modules/next/bluetooth/ble-plx/legacy-driver.js.map +1 -1
  11. package/lib/module/modules/next/bluetooth/connections.js +25 -0
  12. package/lib/module/modules/next/bluetooth/connections.js.map +1 -1
  13. package/lib/module/modules/next/bluetooth/driver.js.map +1 -1
  14. package/lib/module/modules/next/bluetooth/errors.js.map +1 -1
  15. package/lib/module/modules/next/bluetooth/runtime.js +13 -0
  16. package/lib/module/modules/next/bluetooth/runtime.js.map +1 -1
  17. package/lib/typescript/commonjs/src/modules/next/bluetooth/ble-plx/legacy-driver.d.ts.map +1 -1
  18. package/lib/typescript/commonjs/src/modules/next/bluetooth/connections.d.ts +7 -0
  19. package/lib/typescript/commonjs/src/modules/next/bluetooth/connections.d.ts.map +1 -1
  20. package/lib/typescript/commonjs/src/modules/next/bluetooth/driver.d.ts +8 -0
  21. package/lib/typescript/commonjs/src/modules/next/bluetooth/driver.d.ts.map +1 -1
  22. package/lib/typescript/commonjs/src/modules/next/bluetooth/errors.d.ts +1 -1
  23. package/lib/typescript/commonjs/src/modules/next/bluetooth/errors.d.ts.map +1 -1
  24. package/lib/typescript/commonjs/src/modules/next/bluetooth/index.d.ts +1 -1
  25. package/lib/typescript/commonjs/src/modules/next/bluetooth/index.d.ts.map +1 -1
  26. package/lib/typescript/commonjs/src/modules/next/bluetooth/runtime.d.ts +7 -0
  27. package/lib/typescript/commonjs/src/modules/next/bluetooth/runtime.d.ts.map +1 -1
  28. package/lib/typescript/commonjs/src/modules/next/bluetooth/snapshot.d.ts +15 -1
  29. package/lib/typescript/commonjs/src/modules/next/bluetooth/snapshot.d.ts.map +1 -1
  30. package/lib/typescript/module/src/modules/next/bluetooth/ble-plx/legacy-driver.d.ts.map +1 -1
  31. package/lib/typescript/module/src/modules/next/bluetooth/connections.d.ts +7 -0
  32. package/lib/typescript/module/src/modules/next/bluetooth/connections.d.ts.map +1 -1
  33. package/lib/typescript/module/src/modules/next/bluetooth/driver.d.ts +8 -0
  34. package/lib/typescript/module/src/modules/next/bluetooth/driver.d.ts.map +1 -1
  35. package/lib/typescript/module/src/modules/next/bluetooth/errors.d.ts +1 -1
  36. package/lib/typescript/module/src/modules/next/bluetooth/errors.d.ts.map +1 -1
  37. package/lib/typescript/module/src/modules/next/bluetooth/index.d.ts +1 -1
  38. package/lib/typescript/module/src/modules/next/bluetooth/index.d.ts.map +1 -1
  39. package/lib/typescript/module/src/modules/next/bluetooth/runtime.d.ts +7 -0
  40. package/lib/typescript/module/src/modules/next/bluetooth/runtime.d.ts.map +1 -1
  41. package/lib/typescript/module/src/modules/next/bluetooth/snapshot.d.ts +15 -1
  42. package/lib/typescript/module/src/modules/next/bluetooth/snapshot.d.ts.map +1 -1
  43. package/package.json +1 -1
@@ -55,7 +55,19 @@ const legacyDriver = (creator, deviceName) => (peripheral, signal) => {
55
55
  }) => events.push({
56
56
  kind: "error",
57
57
  error: (0, _bleErrors.fromBleError)(error)
58
- })
58
+ }),
59
+ onConnectionEvent: ({
60
+ kind,
61
+ recording
62
+ }) => {
63
+ if (kind === "recording") {
64
+ events.push({
65
+ kind: "recording",
66
+ recording: recording ?? null,
67
+ stop: () => managed.stopRecording()
68
+ });
69
+ }
70
+ }
59
71
  });
60
72
  signal.addEventListener("abort", stop, {
61
73
  once: true
@@ -1 +1 @@
1
- {"version":3,"names":["_deviceStatus","require","_channel","_driver","_bleErrors","_blePeripheral","STATUSES","DeviceStatus","CONNECTED","MEASURING","DISCONNECTED","legacyDriver","creator","deviceName","peripheral","signal","stop","events","end","Channel","removeEventListener","managed","disconnect","createDevice","device","bleDeviceOf","onResult","id","data","reading","push","kind","isTimestamped","onDeviceStatusChanged","status","mapped","onError","error","fromBleError","addEventListener","once","connect","catch","fail","exports"],"sourceRoot":"../../../../../../src","sources":["modules/next/bluetooth/ble-plx/legacy-driver.ts"],"mappings":";;;;;;AAKA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAEA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AAEA,MAAMK,QAAmF,GAAG;EAC1F,CAACC,0BAAY,CAACC,SAAS,GAAG,WAAW;EACrC,CAACD,0BAAY,CAACE,SAAS,GAAG,WAAW;EACrC,CAACF,0BAAY,CAACG,YAAY,GAAG;AAC/B,CAAC;;AAED;AACA,MAAMC,YAAY,GAAGA,CAACC,OAAiD,EAAEC,UAAqB,KAC5F,CAACC,UAAU,EAAEC,MAAM,KAAK;EACtB,MAAMC,IAAI,GAAGA,CAAA,KAAMC,MAAM,CAACC,GAAG,CAAC,CAAC;EAE/B,MAAMD,MAAM,GAAG,IAAIE,gBAAO,CAAc,MAAM;IAC5CJ,MAAM,CAACK,mBAAmB,CAAC,OAAO,EAAEJ,IAAI,CAAC;IACzC,KAAKK,OAAO,CAACC,UAAU,CAAC,CAAC;EAC3B,CAAC,CAAC;EAEF,MAAMD,OAAO,GAAGT,OAAO,CAACW,YAAY,CAAC;IACnCC,MAAM,EAAE,IAAAC,0BAAW,EAACX,UAAU,CAAC;IAC/BD,UAAU;IACVa,QAAQ,EAAEA,CAAC;MAAEC,EAAE;MAAEC;IAAK,CAAC,KAAK;MAC1B,MAAMC,OAAO,GAAGD,IAAmB;MAEnCX,MAAM,CAACa,IAAI,CAAC;QAAEC,IAAI,EAAE,SAAS;QAAEJ,EAAE,EAAE,IAAAK,qBAAa,EAACH,OAAO,CAAC,GAAGF,EAAE,GAAG,IAAI;QAAEE;MAAQ,CAAC,CAAC;IACnF,CAAC;IACDI,qBAAqB,EAAEA,CAAC;MAAEC;IAAO,CAAC,KAAK;MACrC,MAAMC,MAAM,GAAG7B,QAAQ,CAAC4B,MAAM,CAAC;MAE/B,IAAIC,MAAM,EAAE;QACVlB,MAAM,CAACa,IAAI,CAAC;UAAEC,IAAI,EAAE,QAAQ;UAAEG,MAAM,EAAEC;QAAO,CAAC,CAAC;MACjD;MACA,IAAID,MAAM,KAAK3B,0BAAY,CAACG,YAAY,EAAE;QACxCO,MAAM,CAACC,GAAG,CAAC,CAAC;MACd;IACF,CAAC;IACDkB,OAAO,EAAEA,CAAC;MAAEC;IAAM,CAAC,KAAKpB,MAAM,CAACa,IAAI,CAAC;MAAEC,IAAI,EAAE,OAAO;MAAEM,KAAK,EAAE,IAAAC,uBAAY,EAACD,KAAK;IAAE,CAAC;EACnF,CAAC,CAAC;EAEFtB,MAAM,CAACwB,gBAAgB,CAAC,OAAO,EAAEvB,IAAI,EAAE;IAAEwB,IAAI,EAAE;EAAK,CAAC,CAAC;EACtDnB,OAAO,CAACoB,OAAO,CAAC,CAAC,CAACC,KAAK,CAAEL,KAAc,IAAKpB,MAAM,CAAC0B,IAAI,CAAC,IAAAL,uBAAY,EAACD,KAAK,CAAC,CAAC,CAAC;EAE7E,OAAOpB,MAAM;AACf,CAAC;AAAC2B,OAAA,CAAAjC,YAAA,GAAAA,YAAA","ignoreList":[]}
1
+ {"version":3,"names":["_deviceStatus","require","_channel","_driver","_bleErrors","_blePeripheral","STATUSES","DeviceStatus","CONNECTED","MEASURING","DISCONNECTED","legacyDriver","creator","deviceName","peripheral","signal","stop","events","end","Channel","removeEventListener","managed","disconnect","createDevice","device","bleDeviceOf","onResult","id","data","reading","push","kind","isTimestamped","onDeviceStatusChanged","status","mapped","onError","error","fromBleError","onConnectionEvent","recording","stopRecording","addEventListener","once","connect","catch","fail","exports"],"sourceRoot":"../../../../../../src","sources":["modules/next/bluetooth/ble-plx/legacy-driver.ts"],"mappings":";;;;;;AAKA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AAEA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AAEA,MAAMK,QAAmF,GAAG;EAC1F,CAACC,0BAAY,CAACC,SAAS,GAAG,WAAW;EACrC,CAACD,0BAAY,CAACE,SAAS,GAAG,WAAW;EACrC,CAACF,0BAAY,CAACG,YAAY,GAAG;AAC/B,CAAC;;AAED;AACA,MAAMC,YAAY,GAAGA,CAACC,OAAiD,EAAEC,UAAqB,KAC5F,CAACC,UAAU,EAAEC,MAAM,KAAK;EACtB,MAAMC,IAAI,GAAGA,CAAA,KAAMC,MAAM,CAACC,GAAG,CAAC,CAAC;EAE/B,MAAMD,MAAM,GAAG,IAAIE,gBAAO,CAAc,MAAM;IAC5CJ,MAAM,CAACK,mBAAmB,CAAC,OAAO,EAAEJ,IAAI,CAAC;IACzC,KAAKK,OAAO,CAACC,UAAU,CAAC,CAAC;EAC3B,CAAC,CAAC;EAEF,MAAMD,OAAO,GAAGT,OAAO,CAACW,YAAY,CAAC;IACnCC,MAAM,EAAE,IAAAC,0BAAW,EAACX,UAAU,CAAC;IAC/BD,UAAU;IACVa,QAAQ,EAAEA,CAAC;MAAEC,EAAE;MAAEC;IAAK,CAAC,KAAK;MAC1B,MAAMC,OAAO,GAAGD,IAAmB;MAEnCX,MAAM,CAACa,IAAI,CAAC;QAAEC,IAAI,EAAE,SAAS;QAAEJ,EAAE,EAAE,IAAAK,qBAAa,EAACH,OAAO,CAAC,GAAGF,EAAE,GAAG,IAAI;QAAEE;MAAQ,CAAC,CAAC;IACnF,CAAC;IACDI,qBAAqB,EAAEA,CAAC;MAAEC;IAAO,CAAC,KAAK;MACrC,MAAMC,MAAM,GAAG7B,QAAQ,CAAC4B,MAAM,CAAC;MAE/B,IAAIC,MAAM,EAAE;QACVlB,MAAM,CAACa,IAAI,CAAC;UAAEC,IAAI,EAAE,QAAQ;UAAEG,MAAM,EAAEC;QAAO,CAAC,CAAC;MACjD;MACA,IAAID,MAAM,KAAK3B,0BAAY,CAACG,YAAY,EAAE;QACxCO,MAAM,CAACC,GAAG,CAAC,CAAC;MACd;IACF,CAAC;IACDkB,OAAO,EAAEA,CAAC;MAAEC;IAAM,CAAC,KAAKpB,MAAM,CAACa,IAAI,CAAC;MAAEC,IAAI,EAAE,OAAO;MAAEM,KAAK,EAAE,IAAAC,uBAAY,EAACD,KAAK;IAAE,CAAC,CAAC;IAClFE,iBAAiB,EAAEA,CAAC;MAAER,IAAI;MAAES;IAAU,CAAC,KAAK;MAC1C,IAAIT,IAAI,KAAK,WAAW,EAAE;QACxBd,MAAM,CAACa,IAAI,CAAC;UAAEC,IAAI,EAAE,WAAW;UAAES,SAAS,EAAEA,SAAS,IAAI,IAAI;UAAExB,IAAI,EAAEA,CAAA,KAAMK,OAAO,CAACoB,aAAa,CAAC;QAAE,CAAC,CAAC;MACvG;IACF;EACF,CAAC,CAAC;EAEF1B,MAAM,CAAC2B,gBAAgB,CAAC,OAAO,EAAE1B,IAAI,EAAE;IAAE2B,IAAI,EAAE;EAAK,CAAC,CAAC;EACtDtB,OAAO,CAACuB,OAAO,CAAC,CAAC,CAACC,KAAK,CAAER,KAAc,IAAKpB,MAAM,CAAC6B,IAAI,CAAC,IAAAR,uBAAY,EAACD,KAAK,CAAC,CAAC,CAAC;EAE7E,OAAOpB,MAAM;AACf,CAAC;AAAC8B,OAAA,CAAApC,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -11,6 +11,7 @@ const endedBeforeConnecting = () => new _errors.BluetoothError("connection-faile
11
11
  /** One driver run per connected device, its events folded into the snapshot. */
12
12
  class Connections {
13
13
  sessions = new Map();
14
+ recordingStops = new Map();
14
15
  constructor(store, readings, policy, onEnded) {
15
16
  this.store = store;
16
17
  this.readings = readings;
@@ -36,6 +37,21 @@ class Connections {
36
37
  await session?.ended;
37
38
  }
38
39
 
40
+ /**
41
+ * Stops the recording a connected device holds open.
42
+ *
43
+ * @throws BluetoothError `no-open-recording` when the device holds none.
44
+ */
45
+ async stopRecording(id) {
46
+ const stop = this.recordingStops.get(id);
47
+ if (!stop || !this.store.device(id)?.recording) {
48
+ throw new _errors.BluetoothError("no-open-recording", "The device holds no open recording to stop");
49
+ }
50
+ await stop().catch(error => {
51
+ throw (0, _errors.asBluetoothError)(error, "no-open-recording");
52
+ });
53
+ }
54
+
39
55
  /** Disconnects every device; resolves once every connection has ended. */
40
56
  async disconnectAll() {
41
57
  await Promise.all([...this.sessions.keys()].map(id => this.disconnect(id)));
@@ -71,6 +87,10 @@ class Connections {
71
87
  failConnecting(failure);
72
88
  }).finally(() => {
73
89
  this.sessions.delete(id);
90
+ this.recordingStops.delete(id);
91
+ this.store.updateDevice(id, {
92
+ recording: undefined
93
+ });
74
94
  this.onEnded(id);
75
95
  });
76
96
  const session = {
@@ -98,6 +118,11 @@ class Connections {
98
118
  this.store.updateDevice(id, {
99
119
  information: event.information
100
120
  });
121
+ } else if (event.kind === "recording") {
122
+ this.recordingStops.set(id, event.stop);
123
+ this.store.updateDevice(id, {
124
+ recording: event.recording ?? undefined
125
+ });
101
126
  } else if (event.kind === "reading") {
102
127
  const device = this.store.device(id);
103
128
  if (device) {
@@ -1 +1 @@
1
- {"version":3,"names":["_errors","require","_resultPolicy","endedBeforeConnecting","BluetoothError","Connections","sessions","Map","constructor","store","readings","policy","onEnded","isActive","id","has","connect","peripheral","driver","current","get","controller","signal","aborted","ended","start","connected","disconnect","session","abort","disconnectAll","Promise","all","keys","map","AbortController","markConnected","undefined","failConnecting","resolve","reject","updateDevice","connection","error","run","then","catch","failure","asBluetoothError","finally","delete","set","event","keepReadings","apply","kind","status","information","device","receive","reading","exports"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/connections.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_errors","require","_resultPolicy","endedBeforeConnecting","BluetoothError","Connections","sessions","Map","recordingStops","constructor","store","readings","policy","onEnded","isActive","id","has","connect","peripheral","driver","current","get","controller","signal","aborted","ended","start","connected","disconnect","session","abort","stopRecording","stop","device","recording","catch","error","asBluetoothError","disconnectAll","Promise","all","keys","map","AbortController","markConnected","undefined","failConnecting","resolve","reject","updateDevice","connection","run","then","failure","finally","delete","set","event","keepReadings","apply","kind","status","information","receive","reading","exports"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/connections.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_stableHash","require","isTimestamped","reading","temporal","recordedAt","start","end","some","value","Date","exports","readingId","key","peripheral","stableHash","id","gattDriver","protocol","signal","link","openLink","kind","status","deviceInformation","information","close"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/driver.ts"],"mappings":";;;;;;AAIA,IAAAA,WAAA,GAAAC,OAAA;AAGA;;AAsCA;;AAGA;;AAGA;AACA,MAAMC,aAAa,GAAIC,OAAoB,IAAc;EACvD,MAAMC,QAAQ,GAAGD,OAAmE;EAEpF,OAAO,CAACC,QAAQ,CAACC,UAAU,EAAED,QAAQ,CAACE,KAAK,EAAEF,QAAQ,CAACG,GAAG,CAAC,CAACC,IAAI,CAAEC,KAAK,IAAKA,KAAK,YAAYC,IAAI,CAAC;AACnG,CAAC;;AAED;AAAAC,OAAA,CAAAT,aAAA,GAAAA,aAAA;AACA,MAAMU,SAAS,GAAGA,CAACC,GAAW,EAAEC,UAAsB,EAAEX,OAAoB,KAC1ED,aAAa,CAACC,OAAO,CAAC,GAAG,QAAQ,IAAAY,sBAAU,EAAC;EAAEF,GAAG;EAAEC,UAAU,EAAEA,UAAU,CAACE,EAAE;EAAEb;AAAQ,CAAC,CAAC,EAAE,GAAG,IAAI;;AAEnG;AACA,MAAMc,UAAU,GAAGA,CAACJ,GAAW,EAAEK,QAAwB,KACvD,iBAAiBJ,UAAU,EAAEK,MAAM,EAAE;EACnC,MAAMC,IAAI,GAAG,MAAMN,UAAU,CAACO,QAAQ,CAACF,MAAM,CAAC;EAE9C,IAAI;IACF,MAAM;MAAEG,IAAI,EAAE,QAAQ;MAAEC,MAAM,EAAE;IAAY,CAAC;IAC7C,IAAIH,IAAI,CAACI,iBAAiB,EAAE;MAC1B,MAAM;QAAEF,IAAI,EAAE,aAAa;QAAEG,WAAW,EAAEL,IAAI,CAACI;MAAkB,CAAC;IACpE;IACA,WAAW,MAAMrB,OAAO,IAAIe,QAAQ,CAACE,IAAI,CAAC,EAAE;MAC1C,MAAM;QAAEE,IAAI,EAAE,SAAS;QAAEN,EAAE,EAAEJ,SAAS,CAACC,GAAG,EAAEC,UAAU,EAAEX,OAAO,CAAC;QAAEA;MAAQ,CAAC;IAC7E;IACA,MAAM;MAAEmB,IAAI,EAAE,QAAQ;MAAEC,MAAM,EAAE;IAAe,CAAC;EAClD,CAAC,SAAS;IACR,MAAMH,IAAI,CAACM,KAAK,CAAC,CAAC;EACpB;AACF,CAAC;AAACf,OAAA,CAAAM,UAAA,GAAAA,UAAA","ignoreList":[]}
1
+ {"version":3,"names":["_stableHash","require","isTimestamped","reading","temporal","recordedAt","start","end","some","value","Date","exports","readingId","key","peripheral","stableHash","id","gattDriver","protocol","signal","link","openLink","kind","status","deviceInformation","information","close"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/driver.ts"],"mappings":";;;;;;AAKA,IAAAA,WAAA,GAAAC,OAAA;AAGA;;AAiDA;;AAGA;;AAGA;AACA,MAAMC,aAAa,GAAIC,OAAoB,IAAc;EACvD,MAAMC,QAAQ,GAAGD,OAAmE;EAEpF,OAAO,CAACC,QAAQ,CAACC,UAAU,EAAED,QAAQ,CAACE,KAAK,EAAEF,QAAQ,CAACG,GAAG,CAAC,CAACC,IAAI,CAAEC,KAAK,IAAKA,KAAK,YAAYC,IAAI,CAAC;AACnG,CAAC;;AAED;AAAAC,OAAA,CAAAT,aAAA,GAAAA,aAAA;AACA,MAAMU,SAAS,GAAGA,CAACC,GAAW,EAAEC,UAAsB,EAAEX,OAAoB,KAC1ED,aAAa,CAACC,OAAO,CAAC,GAAG,QAAQ,IAAAY,sBAAU,EAAC;EAAEF,GAAG;EAAEC,UAAU,EAAEA,UAAU,CAACE,EAAE;EAAEb;AAAQ,CAAC,CAAC,EAAE,GAAG,IAAI;;AAEnG;AACA,MAAMc,UAAU,GAAGA,CAACJ,GAAW,EAAEK,QAAwB,KACvD,iBAAiBJ,UAAU,EAAEK,MAAM,EAAE;EACnC,MAAMC,IAAI,GAAG,MAAMN,UAAU,CAACO,QAAQ,CAACF,MAAM,CAAC;EAE9C,IAAI;IACF,MAAM;MAAEG,IAAI,EAAE,QAAQ;MAAEC,MAAM,EAAE;IAAY,CAAC;IAC7C,IAAIH,IAAI,CAACI,iBAAiB,EAAE;MAC1B,MAAM;QAAEF,IAAI,EAAE,aAAa;QAAEG,WAAW,EAAEL,IAAI,CAACI;MAAkB,CAAC;IACpE;IACA,WAAW,MAAMrB,OAAO,IAAIe,QAAQ,CAACE,IAAI,CAAC,EAAE;MAC1C,MAAM;QAAEE,IAAI,EAAE,SAAS;QAAEN,EAAE,EAAEJ,SAAS,CAACC,GAAG,EAAEC,UAAU,EAAEX,OAAO,CAAC;QAAEA;MAAQ,CAAC;IAC7E;IACA,MAAM;MAAEmB,IAAI,EAAE,QAAQ;MAAEC,MAAM,EAAE;IAAe,CAAC;EAClD,CAAC,SAAS;IACR,MAAMH,IAAI,CAACM,KAAK,CAAC,CAAC;EACpB;AACF,CAAC;AAACf,OAAA,CAAAM,UAAA,GAAAA,UAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["BluetoothError","Error","name","constructor","code","message","cause","exports","asBluetoothError","error","String"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/errors.ts"],"mappings":";;;;;;AAAA;;AAiBA;AACA,MAAMA,cAAc,SAASC,KAAK,CAAC;EACjC;EACgBC,IAAI,GAAG,gBAAgB;EAEhCC,WAAWA,CAEhB;EACgBC,IAAwB,EACxCC,OAAe,EACfC,KAAe,EACf;IACA,KAAK,CAACD,OAAO,EAAE;MAAEC;IAAM,CAAC,CAAC;IAAC,KAJVF,IAAwB,GAAxBA,IAAwB;EAK1C;AACF;;AAEA;AAAAG,OAAA,CAAAP,cAAA,GAAAA,cAAA;AACA,MAAMQ,gBAAgB,GAAGA,CAACC,KAAc,EAAEL,IAAwB,KAChEK,KAAK,YAAYT,cAAc,GAC3BS,KAAK,GACL,IAAIT,cAAc,CAACI,IAAI,EAAEK,KAAK,YAAYR,KAAK,GAAGQ,KAAK,CAACJ,OAAO,GAAGK,MAAM,CAACD,KAAK,CAAC,EAAEA,KAAK,CAAC;AAACF,OAAA,CAAAC,gBAAA,GAAAA,gBAAA","ignoreList":[]}
1
+ {"version":3,"names":["BluetoothError","Error","name","constructor","code","message","cause","exports","asBluetoothError","error","String"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/errors.ts"],"mappings":";;;;;;AAAA;;AAkBA;AACA,MAAMA,cAAc,SAASC,KAAK,CAAC;EACjC;EACgBC,IAAI,GAAG,gBAAgB;EAEhCC,WAAWA,CAEhB;EACgBC,IAAwB,EACxCC,OAAe,EACfC,KAAe,EACf;IACA,KAAK,CAACD,OAAO,EAAE;MAAEC;IAAM,CAAC,CAAC;IAAC,KAJVF,IAAwB,GAAxBA,IAAwB;EAK1C;AACF;;AAEA;AAAAG,OAAA,CAAAP,cAAA,GAAAA,cAAA;AACA,MAAMQ,gBAAgB,GAAGA,CAACC,KAAc,EAAEL,IAAwB,KAChEK,KAAK,YAAYT,cAAc,GAC3BS,KAAK,GACL,IAAIT,cAAc,CAACI,IAAI,EAAEK,KAAK,YAAYR,KAAK,GAAGQ,KAAK,CAACJ,OAAO,GAAGK,MAAM,CAACD,KAAK,CAAC,EAAEA,KAAK,CAAC;AAACF,OAAA,CAAAC,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -13,6 +13,8 @@ var _readings = require("./readings.js");
13
13
  var _resultPolicy = require("./result-policy.js");
14
14
  var _scanLoop = require("./scan-loop.js");
15
15
  var _store = require("./store.js");
16
+ /* eslint-disable max-lines */
17
+
16
18
  /** What a `BluetoothRuntime` is built from. */
17
19
 
18
20
  /**
@@ -109,6 +111,17 @@ class BluetoothRuntime {
109
111
  await this.connections.connect(peripheral, match.driver);
110
112
  }
111
113
 
114
+ /**
115
+ * Stops the recording a connected recorder holds open, for instance once the user confirms it while
116
+ * its `recording.leadOffSince` is set. The stored recording then arrives as a reading.
117
+ *
118
+ * @throws BluetoothError `no-open-recording` when the device holds none; `runtime-disposed` after `dispose`.
119
+ */
120
+ async stopRecording(deviceId) {
121
+ this.assertLive();
122
+ await this.connections.stopRecording(deviceId);
123
+ }
124
+
112
125
  /** Disconnects a device; a paired one stays disconnected until `connect` or `pair` is called again. */
113
126
  async disconnect(deviceId) {
114
127
  this.held.add(deviceId);
@@ -1 +1 @@
1
- {"version":3,"names":["_autoConnect","require","_connections","_devices","_errors","_paired","_readings","_resultPolicy","_scanLoop","_store","BluetoothRuntime","store","SnapshotStore","known","Map","held","Set","backoff","AutoConnectBackoff","retryTimers","scanRequest","disposed","constructor","options","readings","ReadingLog","sink","connections","Connections","resultPolicy","everyReading","id","connectionEnded","paired","PairedDevices","set","pairedStorage","scan","ScanLoop","scanner","peripheral","found","unwatchAdapter","watchState","adapter","sync","checkPermission","catch","undefined","getSnapshot","get","subscribe","listener","recordPermission","permissions","check","requestPermission","request","openPermissionSettings","openSettings","startScan","assertLive","permission","BluetoothError","scanning","stopScan","connect","deviceId","match","delete","driver","disconnect","add","pair","forget","remove","retrySaves","dispose","close","forEach","clearTimeout","disconnectAll","matchDevice","devices","advertisement","device","key","name","connection","error","connectIfPaired","waiting","has","isActive","allows","succeeded","restartScan","timer","setTimeout","failed","running","restart","exports"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/runtime.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_autoConnect","require","_connections","_devices","_errors","_paired","_readings","_resultPolicy","_scanLoop","_store","BluetoothRuntime","store","SnapshotStore","known","Map","held","Set","backoff","AutoConnectBackoff","retryTimers","scanRequest","disposed","constructor","options","readings","ReadingLog","sink","connections","Connections","resultPolicy","everyReading","id","connectionEnded","paired","PairedDevices","set","pairedStorage","scan","ScanLoop","scanner","peripheral","found","unwatchAdapter","watchState","adapter","sync","checkPermission","catch","undefined","getSnapshot","get","subscribe","listener","recordPermission","permissions","check","requestPermission","request","openPermissionSettings","openSettings","startScan","assertLive","permission","BluetoothError","scanning","stopScan","connect","deviceId","match","delete","driver","stopRecording","disconnect","add","pair","forget","remove","retrySaves","dispose","close","forEach","clearTimeout","disconnectAll","matchDevice","devices","advertisement","device","key","name","connection","error","connectIfPaired","waiting","has","isActive","allows","succeeded","restartScan","timer","setTimeout","failed","running","restart","exports"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/runtime.ts"],"mappings":";;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AAEA,IAAAK,SAAA,GAAAL,OAAA;AACA,IAAAM,aAAA,GAAAN,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AAGA,IAAAQ,MAAA,GAAAR,OAAA;AAdA;;AAiBA;;AAwBA;AACA;AACA;AACA;AACA,MAAMS,gBAAgB,CAAC;EACJC,KAAK,GAAG,IAAIC,oBAAa,CAAC,CAAC;EAC3BC,KAAK,GAAG,IAAIC,GAAG,CAAsB,CAAC;EACtCC,IAAI,GAAG,IAAIC,GAAG,CAAS,CAAC;EACxBC,OAAO,GAAG,IAAIC,+BAAkB,CAAC,CAAC;EAClCC,WAAW,GAAG,IAAIH,GAAG,CAAgC,CAAC;EAM/DI,WAAW,GAAG,CAAC;EACfC,QAAQ,GAAG,KAAK;EAEjBC,WAAWA,CAAkBC,OAAgC,EAAE;IAAA,KAAlCA,OAAgC,GAAhCA,OAAgC;IAClE,IAAI,CAACC,QAAQ,GAAG,IAAIC,oBAAU,CAAC,IAAI,CAACd,KAAK,EAAEY,OAAO,CAACG,IAAI,CAAC;IACxD,IAAI,CAACC,WAAW,GAAG,IAAIC,wBAAW,CAAC,IAAI,CAACjB,KAAK,EAAE,IAAI,CAACa,QAAQ,EAAED,OAAO,CAACM,YAAY,IAAIC,0BAAY,EAAGC,EAAE,IACrG,IAAI,CAACC,eAAe,CAACD,EAAE,CAAC,CAAC;IAC3B,IAAI,CAACE,MAAM,GAAG,IAAIC,qBAAa,CAAED,MAAM,IAAK,IAAI,CAACtB,KAAK,CAACwB,GAAG,CAAC;MAAEF;IAAO,CAAC,CAAC,EAAEV,OAAO,CAACa,aAAa,CAAC;IAC9F,IAAI,CAACC,IAAI,GAAG,IAAIC,kBAAQ,CAACf,OAAO,CAACgB,OAAO,EAAE,IAAI,CAAC5B,KAAK,EAAG6B,UAAU,IAAK,IAAI,CAACC,KAAK,CAACD,UAAU,CAAC,CAAC;IAC7F,IAAI,CAACE,cAAc,GAAGnB,OAAO,CAACgB,OAAO,CAACI,UAAU,CAAEC,OAAO,IAAK;MAC5D,IAAI,CAACjC,KAAK,CAACwB,GAAG,CAAC;QAAES;MAAQ,CAAC,CAAC;MAC3B,IAAI,CAACP,IAAI,CAACQ,IAAI,CAAC,CAAC;IAClB,CAAC,CAAC;IACF,KAAK,IAAI,CAACC,eAAe,CAAC,CAAC,CAACC,KAAK,CAAC,MAAMC,SAAS,CAAC;EACpD;;EAEA;EACOC,WAAW,GAAGA,CAAA,KAAyB,IAAI,CAACtC,KAAK,CAACuC,GAAG,CAAC,CAAC;;EAE9D;EACOC,SAAS,GAAIC,QAAoB,IAAmB,IAAI,CAACzC,KAAK,CAACwC,SAAS,CAACC,QAAQ,CAAC;;EAEzF;EACA,MAAaN,eAAeA,CAAA,EAAiC;IAC3D,OAAO,IAAI,CAACO,gBAAgB,CAAC,MAAM,IAAI,CAAC9B,OAAO,CAAC+B,WAAW,CAACC,KAAK,CAAC,CAAC,CAAC;EACtE;;EAEA;EACA,MAAaC,iBAAiBA,CAAA,EAAiC;IAC7D,OAAO,IAAI,CAACH,gBAAgB,CAAC,MAAM,IAAI,CAAC9B,OAAO,CAAC+B,WAAW,CAACG,OAAO,CAAC,CAAC,CAAC;EACxE;;EAEA;EACOC,sBAAsBA,CAAA,EAAkB;IAC7C,OAAO,IAAI,CAACnC,OAAO,CAAC+B,WAAW,CAACK,YAAY,CAAC,CAAC;EAChD;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAaC,SAASA,CAAA,EAAkB;IACtC,IAAI,CAACC,UAAU,CAAC,CAAC;IAEjB,MAAMJ,OAAO,GAAG,EAAE,IAAI,CAACrC,WAAW;IAClC,MAAM0C,UAAU,GAAG,IAAI,CAACnD,KAAK,CAACuC,GAAG,CAAC,CAAC,CAACY,UAAU,KAAK,SAAS,GAAG,SAAS,GAAG,MAAM,IAAI,CAACN,iBAAiB,CAAC,CAAC;IAEzG,IAAIM,UAAU,KAAK,SAAS,EAAE;MAC5B,MAAM,IAAIC,sBAAc,CAAC,mBAAmB,EAAE,qCAAqC,CAAC;IACtF;IACA,IAAIN,OAAO,KAAK,IAAI,CAACrC,WAAW,IAAI,CAAC,IAAI,CAACC,QAAQ,EAAE;MAClD,IAAI,CAACV,KAAK,CAACwB,GAAG,CAAC;QAAE6B,QAAQ,EAAE;MAAK,CAAC,CAAC;MAClC,IAAI,CAAC3B,IAAI,CAACQ,IAAI,CAAC,CAAC;IAClB;EACF;;EAEA;EACOoB,QAAQA,CAAA,EAAS;IACtB,IAAI,CAAC7C,WAAW,IAAI,CAAC;IACrB,IAAI,CAACT,KAAK,CAACwB,GAAG,CAAC;MAAE6B,QAAQ,EAAE;IAAM,CAAC,CAAC;IACnC,IAAI,CAAC3B,IAAI,CAACQ,IAAI,CAAC,CAAC;EAClB;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAaqB,OAAOA,CAACC,QAAgB,EAAiB;IACpD,IAAI,CAACN,UAAU,CAAC,CAAC;IAEjB,MAAM;MAAErB,UAAU;MAAE4B;IAAM,CAAC,GAAG,IAAI,CAACnE,OAAO,CAACkE,QAAQ,CAAC;IAEpD,IAAI,CAACpD,IAAI,CAACsD,MAAM,CAACF,QAAQ,CAAC;IAC1B,MAAM,IAAI,CAACxC,WAAW,CAACuC,OAAO,CAAC1B,UAAU,EAAE4B,KAAK,CAACE,MAAM,CAAC;EAC1D;;EAEA;AACF;AACA;AACA;AACA;AACA;EACE,MAAaC,aAAaA,CAACJ,QAAgB,EAAiB;IAC1D,IAAI,CAACN,UAAU,CAAC,CAAC;IACjB,MAAM,IAAI,CAAClC,WAAW,CAAC4C,aAAa,CAACJ,QAAQ,CAAC;EAChD;;EAEA;EACA,MAAaK,UAAUA,CAACL,QAAgB,EAAiB;IACvD,IAAI,CAACpD,IAAI,CAAC0D,GAAG,CAACN,QAAQ,CAAC;IACvB,MAAM,IAAI,CAACxC,WAAW,CAAC6C,UAAU,CAACL,QAAQ,CAAC;EAC7C;;EAEA;EACA,MAAaO,IAAIA,CAACP,QAAgB,EAAiB;IACjD,IAAI,CAAClE,OAAO,CAACkE,QAAQ,CAAC;IACtB,MAAM,IAAI,CAAClC,MAAM,CAACwC,GAAG,CAACN,QAAQ,CAAC;IAC/B,MAAM,IAAI,CAACD,OAAO,CAACC,QAAQ,CAAC;EAC9B;;EAEA;EACA,MAAaQ,MAAMA,CAACR,QAAgB,EAAiB;IACnD,MAAM,IAAI,CAAClC,MAAM,CAAC2C,MAAM,CAACT,QAAQ,CAAC;IAClC,MAAM,IAAI,CAACK,UAAU,CAACL,QAAQ,CAAC;EACjC;;EAEA;EACOU,UAAUA,CAAA,EAAkB;IACjC,OAAO,IAAI,CAACrD,QAAQ,CAACqD,UAAU,CAAC,CAAC;EACnC;;EAEA;EACA,MAAaC,OAAOA,CAAA,EAAkB;IACpC,IAAI,IAAI,CAACzD,QAAQ,EAAE;MACjB;IACF;IAEA,IAAI,CAAC4C,QAAQ,CAAC,CAAC;IACf,IAAI,CAAC5C,QAAQ,GAAG,IAAI;IACpB,IAAI,CAACgB,IAAI,CAAC0C,KAAK,CAAC,CAAC;IACjB,IAAI,CAACrC,cAAc,CAAC,CAAC;IACrB,IAAI,CAACvB,WAAW,CAAC6D,OAAO,CAACC,YAAY,CAAC;IACtC,MAAM,IAAI,CAACtD,WAAW,CAACuD,aAAa,CAAC,CAAC;IACtC,IAAI,CAACvE,KAAK,CAACoE,KAAK,CAAC,CAAC;EACpB;EAEQ1B,gBAAgBA,CAACS,UAA+B,EAAuB;IAC7E,IAAI,CAACnD,KAAK,CAACwB,GAAG,CAAC;MAAE2B;IAAW,CAAC,CAAC;IAE9B,OAAOA,UAAU;EACnB;EAEQrB,KAAKA,CAACD,UAAsB,EAAQ;IAC1C,MAAM3B,KAAK,GAAG,IAAI,CAACA,KAAK,CAACqC,GAAG,CAACV,UAAU,CAACT,EAAE,CAAC;IAC3C,MAAMqC,KAAK,GAAGvD,KAAK,EAAEuD,KAAK,IAAI,IAAAe,oBAAW,EAAC,IAAI,CAAC5D,OAAO,CAAC6D,OAAO,EAAE5C,UAAU,CAAC6C,aAAa,CAAC;IAEzF,IAAI,CAACjB,KAAK,EAAE;MACV;IACF;IAEA,IAAI,CAACvD,KAAK,CAACsB,GAAG,CAACK,UAAU,CAACT,EAAE,EAAE;MAAES,UAAU;MAAE4B;IAAM,CAAC,CAAC;IACpD,IAAI,CAACvD,KAAK,EAAE;MACV,MAAMyE,MAAM,GAAG;QAAEvD,EAAE,EAAES,UAAU,CAACT,EAAE;QAAEwD,GAAG,EAAEnB,KAAK,CAACmB,GAAG;QAAEC,IAAI,EAAEhD,UAAU,CAAC6C,aAAa,CAACG;MAAK,CAAC;MAEzF,IAAI,CAAC7E,KAAK,CAACwB,GAAG,CAAC;QAAEiD,OAAO,EAAE,CAAC,GAAG,IAAI,CAACzE,KAAK,CAACuC,GAAG,CAAC,CAAC,CAACkC,OAAO,EAAE;UAAE,GAAGE,MAAM;UAAEG,UAAU,EAAE,MAAM;UAAEC,KAAK,EAAE;QAAK,CAAC;MAAE,CAAC,CAAC;IAC5G;IACA,IAAI,CAACC,eAAe,CAACnD,UAAU,CAACT,EAAE,CAAC;EACrC;EAEQ4D,eAAeA,CAAC5D,EAAU,EAAQ;IACxC,MAAM6D,OAAO,GAAG,IAAI,CAAC7E,IAAI,CAAC8E,GAAG,CAAC9D,EAAE,CAAC,IAAI,IAAI,CAACJ,WAAW,CAACmE,QAAQ,CAAC/D,EAAE,CAAC,IAAI,CAAC,IAAI,CAACd,OAAO,CAAC8E,MAAM,CAAChE,EAAE,CAAC;IAE9F,IAAI,IAAI,CAACE,MAAM,CAAC4D,GAAG,CAAC9D,EAAE,CAAC,IAAI,CAAC6D,OAAO,EAAE;MACnC,IAAI,CAAC1B,OAAO,CAACnC,EAAE,CAAC,CAACgB,KAAK,CAAC,MAAMC,SAAS,CAAC;IACzC;EACF;;EAEA;EACQhB,eAAeA,CAACD,EAAU,EAAQ;IACxC,IAAI,CAAC,IAAI,CAACE,MAAM,CAAC4D,GAAG,CAAC9D,EAAE,CAAC,IAAI,IAAI,CAAChB,IAAI,CAAC8E,GAAG,CAAC9D,EAAE,CAAC,IAAI,IAAI,CAACV,QAAQ,EAAE;MAC9D;IACF;IAEA,IAAI,IAAI,CAACV,KAAK,CAAC2E,MAAM,CAACvD,EAAE,CAAC,EAAE0D,UAAU,KAAK,QAAQ,EAAE;MAClD,IAAI,CAACxE,OAAO,CAAC+E,SAAS,CAACjE,EAAE,CAAC;MAC1B,IAAI,CAACkE,WAAW,CAAC,CAAC;MAElB;IACF;IAEA,MAAMC,KAAK,GAAGC,UAAU,CAAC,MAAM;MAC7B,IAAI,CAAChF,WAAW,CAACkD,MAAM,CAAC6B,KAAK,CAAC;MAC9B,IAAI,CAACD,WAAW,CAAC,CAAC;IACpB,CAAC,EAAE,IAAI,CAAChF,OAAO,CAACmF,MAAM,CAACrE,EAAE,CAAC,CAAC;IAE3B,IAAI,CAACZ,WAAW,CAACsD,GAAG,CAACyB,KAAK,CAAC;EAC7B;EAEQD,WAAWA,CAAA,EAAS;IAC1B,IAAI,IAAI,CAAC5D,IAAI,CAACgE,OAAO,EAAE;MACrB,IAAI,CAAChE,IAAI,CAACiE,OAAO,CAAC,CAAC;IACrB;EACF;EAEQrG,OAAOA,CAACkE,QAAgB,EAAe;IAC7C,MAAMmB,MAAM,GAAG,IAAI,CAACzE,KAAK,CAACqC,GAAG,CAACiB,QAAQ,CAAC;IAEvC,IAAI,CAACmB,MAAM,EAAE;MACX,MAAM,IAAIvB,sBAAc,CAAC,kBAAkB,EAAE,aAAaI,QAAQ,wBAAwB,CAAC;IAC7F;IAEA,OAAOmB,MAAM;EACf;EAEQzB,UAAUA,CAAA,EAAS;IACzB,IAAI,IAAI,CAACxC,QAAQ,EAAE;MACjB,MAAM,IAAI0C,sBAAc,CAAC,kBAAkB,EAAE,oCAAoC,CAAC;IACpF;EACF;AACF;AAACwC,OAAA,CAAA7F,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -51,7 +51,19 @@ const legacyDriver = (creator, deviceName) => (peripheral, signal) => {
51
51
  }) => events.push({
52
52
  kind: "error",
53
53
  error: fromBleError(error)
54
- })
54
+ }),
55
+ onConnectionEvent: ({
56
+ kind,
57
+ recording
58
+ }) => {
59
+ if (kind === "recording") {
60
+ events.push({
61
+ kind: "recording",
62
+ recording: recording ?? null,
63
+ stop: () => managed.stopRecording()
64
+ });
65
+ }
66
+ }
55
67
  });
56
68
  signal.addEventListener("abort", stop, {
57
69
  once: true
@@ -1 +1 @@
1
- {"version":3,"names":["DeviceStatus","Channel","isTimestamped","fromBleError","bleDeviceOf","STATUSES","CONNECTED","MEASURING","DISCONNECTED","legacyDriver","creator","deviceName","peripheral","signal","stop","events","end","removeEventListener","managed","disconnect","createDevice","device","onResult","id","data","reading","push","kind","onDeviceStatusChanged","status","mapped","onError","error","addEventListener","once","connect","catch","fail"],"sourceRoot":"../../../../../../src","sources":["modules/next/bluetooth/ble-plx/legacy-driver.ts"],"mappings":";;AAKA,SAASA,YAAY,QAAQ,+CAA4C;AACzE,SAASC,OAAO,QAAQ,eAAY;AACpC,SAA8BC,aAAa,QAAQ,cAAW;AAE9D,SAASC,YAAY,QAAQ,iBAAc;AAC3C,SAASC,WAAW,QAAQ,qBAAkB;AAE9C,MAAMC,QAAmF,GAAG;EAC1F,CAACL,YAAY,CAACM,SAAS,GAAG,WAAW;EACrC,CAACN,YAAY,CAACO,SAAS,GAAG,WAAW;EACrC,CAACP,YAAY,CAACQ,YAAY,GAAG;AAC/B,CAAC;;AAED;AACA,MAAMC,YAAY,GAAGA,CAACC,OAAiD,EAAEC,UAAqB,KAC5F,CAACC,UAAU,EAAEC,MAAM,KAAK;EACtB,MAAMC,IAAI,GAAGA,CAAA,KAAMC,MAAM,CAACC,GAAG,CAAC,CAAC;EAE/B,MAAMD,MAAM,GAAG,IAAId,OAAO,CAAc,MAAM;IAC5CY,MAAM,CAACI,mBAAmB,CAAC,OAAO,EAAEH,IAAI,CAAC;IACzC,KAAKI,OAAO,CAACC,UAAU,CAAC,CAAC;EAC3B,CAAC,CAAC;EAEF,MAAMD,OAAO,GAAGR,OAAO,CAACU,YAAY,CAAC;IACnCC,MAAM,EAAEjB,WAAW,CAACQ,UAAU,CAAC;IAC/BD,UAAU;IACVW,QAAQ,EAAEA,CAAC;MAAEC,EAAE;MAAEC;IAAK,CAAC,KAAK;MAC1B,MAAMC,OAAO,GAAGD,IAAmB;MAEnCT,MAAM,CAACW,IAAI,CAAC;QAAEC,IAAI,EAAE,SAAS;QAAEJ,EAAE,EAAErB,aAAa,CAACuB,OAAO,CAAC,GAAGF,EAAE,GAAG,IAAI;QAAEE;MAAQ,CAAC,CAAC;IACnF,CAAC;IACDG,qBAAqB,EAAEA,CAAC;MAAEC;IAAO,CAAC,KAAK;MACrC,MAAMC,MAAM,GAAGzB,QAAQ,CAACwB,MAAM,CAAC;MAE/B,IAAIC,MAAM,EAAE;QACVf,MAAM,CAACW,IAAI,CAAC;UAAEC,IAAI,EAAE,QAAQ;UAAEE,MAAM,EAAEC;QAAO,CAAC,CAAC;MACjD;MACA,IAAID,MAAM,KAAK7B,YAAY,CAACQ,YAAY,EAAE;QACxCO,MAAM,CAACC,GAAG,CAAC,CAAC;MACd;IACF,CAAC;IACDe,OAAO,EAAEA,CAAC;MAAEC;IAAM,CAAC,KAAKjB,MAAM,CAACW,IAAI,CAAC;MAAEC,IAAI,EAAE,OAAO;MAAEK,KAAK,EAAE7B,YAAY,CAAC6B,KAAK;IAAE,CAAC;EACnF,CAAC,CAAC;EAEFnB,MAAM,CAACoB,gBAAgB,CAAC,OAAO,EAAEnB,IAAI,EAAE;IAAEoB,IAAI,EAAE;EAAK,CAAC,CAAC;EACtDhB,OAAO,CAACiB,OAAO,CAAC,CAAC,CAACC,KAAK,CAAEJ,KAAc,IAAKjB,MAAM,CAACsB,IAAI,CAAClC,YAAY,CAAC6B,KAAK,CAAC,CAAC,CAAC;EAE7E,OAAOjB,MAAM;AACf,CAAC;AAEH,SAASN,YAAY","ignoreList":[]}
1
+ {"version":3,"names":["DeviceStatus","Channel","isTimestamped","fromBleError","bleDeviceOf","STATUSES","CONNECTED","MEASURING","DISCONNECTED","legacyDriver","creator","deviceName","peripheral","signal","stop","events","end","removeEventListener","managed","disconnect","createDevice","device","onResult","id","data","reading","push","kind","onDeviceStatusChanged","status","mapped","onError","error","onConnectionEvent","recording","stopRecording","addEventListener","once","connect","catch","fail"],"sourceRoot":"../../../../../../src","sources":["modules/next/bluetooth/ble-plx/legacy-driver.ts"],"mappings":";;AAKA,SAASA,YAAY,QAAQ,+CAA4C;AACzE,SAASC,OAAO,QAAQ,eAAY;AACpC,SAA8BC,aAAa,QAAQ,cAAW;AAE9D,SAASC,YAAY,QAAQ,iBAAc;AAC3C,SAASC,WAAW,QAAQ,qBAAkB;AAE9C,MAAMC,QAAmF,GAAG;EAC1F,CAACL,YAAY,CAACM,SAAS,GAAG,WAAW;EACrC,CAACN,YAAY,CAACO,SAAS,GAAG,WAAW;EACrC,CAACP,YAAY,CAACQ,YAAY,GAAG;AAC/B,CAAC;;AAED;AACA,MAAMC,YAAY,GAAGA,CAACC,OAAiD,EAAEC,UAAqB,KAC5F,CAACC,UAAU,EAAEC,MAAM,KAAK;EACtB,MAAMC,IAAI,GAAGA,CAAA,KAAMC,MAAM,CAACC,GAAG,CAAC,CAAC;EAE/B,MAAMD,MAAM,GAAG,IAAId,OAAO,CAAc,MAAM;IAC5CY,MAAM,CAACI,mBAAmB,CAAC,OAAO,EAAEH,IAAI,CAAC;IACzC,KAAKI,OAAO,CAACC,UAAU,CAAC,CAAC;EAC3B,CAAC,CAAC;EAEF,MAAMD,OAAO,GAAGR,OAAO,CAACU,YAAY,CAAC;IACnCC,MAAM,EAAEjB,WAAW,CAACQ,UAAU,CAAC;IAC/BD,UAAU;IACVW,QAAQ,EAAEA,CAAC;MAAEC,EAAE;MAAEC;IAAK,CAAC,KAAK;MAC1B,MAAMC,OAAO,GAAGD,IAAmB;MAEnCT,MAAM,CAACW,IAAI,CAAC;QAAEC,IAAI,EAAE,SAAS;QAAEJ,EAAE,EAAErB,aAAa,CAACuB,OAAO,CAAC,GAAGF,EAAE,GAAG,IAAI;QAAEE;MAAQ,CAAC,CAAC;IACnF,CAAC;IACDG,qBAAqB,EAAEA,CAAC;MAAEC;IAAO,CAAC,KAAK;MACrC,MAAMC,MAAM,GAAGzB,QAAQ,CAACwB,MAAM,CAAC;MAE/B,IAAIC,MAAM,EAAE;QACVf,MAAM,CAACW,IAAI,CAAC;UAAEC,IAAI,EAAE,QAAQ;UAAEE,MAAM,EAAEC;QAAO,CAAC,CAAC;MACjD;MACA,IAAID,MAAM,KAAK7B,YAAY,CAACQ,YAAY,EAAE;QACxCO,MAAM,CAACC,GAAG,CAAC,CAAC;MACd;IACF,CAAC;IACDe,OAAO,EAAEA,CAAC;MAAEC;IAAM,CAAC,KAAKjB,MAAM,CAACW,IAAI,CAAC;MAAEC,IAAI,EAAE,OAAO;MAAEK,KAAK,EAAE7B,YAAY,CAAC6B,KAAK;IAAE,CAAC,CAAC;IAClFC,iBAAiB,EAAEA,CAAC;MAAEN,IAAI;MAAEO;IAAU,CAAC,KAAK;MAC1C,IAAIP,IAAI,KAAK,WAAW,EAAE;QACxBZ,MAAM,CAACW,IAAI,CAAC;UAAEC,IAAI,EAAE,WAAW;UAAEO,SAAS,EAAEA,SAAS,IAAI,IAAI;UAAEpB,IAAI,EAAEA,CAAA,KAAMI,OAAO,CAACiB,aAAa,CAAC;QAAE,CAAC,CAAC;MACvG;IACF;EACF,CAAC,CAAC;EAEFtB,MAAM,CAACuB,gBAAgB,CAAC,OAAO,EAAEtB,IAAI,EAAE;IAAEuB,IAAI,EAAE;EAAK,CAAC,CAAC;EACtDnB,OAAO,CAACoB,OAAO,CAAC,CAAC,CAACC,KAAK,CAAEP,KAAc,IAAKjB,MAAM,CAACyB,IAAI,CAACrC,YAAY,CAAC6B,KAAK,CAAC,CAAC,CAAC;EAE7E,OAAOjB,MAAM;AACf,CAAC;AAEH,SAASN,YAAY","ignoreList":[]}
@@ -7,6 +7,7 @@ const endedBeforeConnecting = () => new BluetoothError("connection-failed", "The
7
7
  /** One driver run per connected device, its events folded into the snapshot. */
8
8
  class Connections {
9
9
  sessions = new Map();
10
+ recordingStops = new Map();
10
11
  constructor(store, readings, policy, onEnded) {
11
12
  this.store = store;
12
13
  this.readings = readings;
@@ -32,6 +33,21 @@ class Connections {
32
33
  await session?.ended;
33
34
  }
34
35
 
36
+ /**
37
+ * Stops the recording a connected device holds open.
38
+ *
39
+ * @throws BluetoothError `no-open-recording` when the device holds none.
40
+ */
41
+ async stopRecording(id) {
42
+ const stop = this.recordingStops.get(id);
43
+ if (!stop || !this.store.device(id)?.recording) {
44
+ throw new BluetoothError("no-open-recording", "The device holds no open recording to stop");
45
+ }
46
+ await stop().catch(error => {
47
+ throw asBluetoothError(error, "no-open-recording");
48
+ });
49
+ }
50
+
35
51
  /** Disconnects every device; resolves once every connection has ended. */
36
52
  async disconnectAll() {
37
53
  await Promise.all([...this.sessions.keys()].map(id => this.disconnect(id)));
@@ -67,6 +83,10 @@ class Connections {
67
83
  failConnecting(failure);
68
84
  }).finally(() => {
69
85
  this.sessions.delete(id);
86
+ this.recordingStops.delete(id);
87
+ this.store.updateDevice(id, {
88
+ recording: undefined
89
+ });
70
90
  this.onEnded(id);
71
91
  });
72
92
  const session = {
@@ -94,6 +114,11 @@ class Connections {
94
114
  this.store.updateDevice(id, {
95
115
  information: event.information
96
116
  });
117
+ } else if (event.kind === "recording") {
118
+ this.recordingStops.set(id, event.stop);
119
+ this.store.updateDevice(id, {
120
+ recording: event.recording ?? undefined
121
+ });
97
122
  } else if (event.kind === "reading") {
98
123
  const device = this.store.device(id);
99
124
  if (device) {
@@ -1 +1 @@
1
- {"version":3,"names":["asBluetoothError","BluetoothError","keepReadings","endedBeforeConnecting","Connections","sessions","Map","constructor","store","readings","policy","onEnded","isActive","id","has","connect","peripheral","driver","current","get","controller","signal","aborted","ended","start","connected","disconnect","session","abort","disconnectAll","Promise","all","keys","map","AbortController","markConnected","undefined","failConnecting","resolve","reject","updateDevice","connection","error","run","then","catch","failure","finally","delete","set","event","apply","kind","status","information","device","receive","reading"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/connections.ts"],"mappings":";;AACA,SAASA,gBAAgB,EAAEC,cAAc,QAAQ,aAAU;AAE3D,SAASC,YAAY,QAAsB,oBAAiB;AAM5D,MAAMC,qBAAqB,GAAGA,CAAA,KAC5B,IAAIF,cAAc,CAAC,mBAAmB,EAAE,6CAA6C,CAAC;;AAExF;AACA,MAAMG,WAAW,CAAC;EACCC,QAAQ,GAAG,IAAIC,GAAG,CAAkB,CAAC;EAE/CC,WAAWA,CACCC,KAAoB,EACpBC,QAAoB,EACpBC,MAAoB,EACpBC,OAA6B,EAC9C;IAAA,KAJiBH,KAAoB,GAApBA,KAAoB;IAAA,KACpBC,QAAoB,GAApBA,QAAoB;IAAA,KACpBC,MAAoB,GAApBA,MAAoB;IAAA,KACpBC,OAA6B,GAA7BA,OAA6B;EAC7C;EAEIC,QAAQA,CAACC,EAAU,EAAW;IACnC,OAAO,IAAI,CAACR,QAAQ,CAACS,GAAG,CAACD,EAAE,CAAC;EAC9B;;EAEA;EACA,MAAaE,OAAOA,CAACC,UAAsB,EAAEC,MAAc,EAAiB;IAC1E,MAAMC,OAAO,GAAG,IAAI,CAACb,QAAQ,CAACc,GAAG,CAACH,UAAU,CAACH,EAAE,CAAC;IAEhD,IAAIK,OAAO,EAAEE,UAAU,CAACC,MAAM,CAACC,OAAO,EAAE;MACtC,MAAMJ,OAAO,CAACK,KAAK;MAEnB,OAAO,IAAI,CAACR,OAAO,CAACC,UAAU,EAAEC,MAAM,CAAC;IACzC;IAEA,OAAO,CAACC,OAAO,IAAI,IAAI,CAACM,KAAK,CAACR,UAAU,EAAEC,MAAM,CAAC,EAAEQ,SAAS;EAC9D;EAEA,MAAaC,UAAUA,CAACb,EAAU,EAAiB;IACjD,MAAMc,OAAO,GAAG,IAAI,CAACtB,QAAQ,CAACc,GAAG,CAACN,EAAE,CAAC;IAErCc,OAAO,EAAEP,UAAU,CAACQ,KAAK,CAAC,CAAC;IAC3B,MAAMD,OAAO,EAAEJ,KAAK;EACtB;;EAEA;EACA,MAAaM,aAAaA,CAAA,EAAkB;IAC1C,MAAMC,OAAO,CAACC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC1B,QAAQ,CAAC2B,IAAI,CAAC,CAAC,CAAC,CAACC,GAAG,CAAEpB,EAAE,IAAK,IAAI,CAACa,UAAU,CAACb,EAAE,CAAC,CAAC,CAAC;EAC/E;EAEQW,KAAKA,CAACR,UAAsB,EAAEC,MAAc,EAAW;IAC7D,MAAM;MAAEJ;IAAG,CAAC,GAAGG,UAAU;IACzB,MAAMI,UAAU,GAAG,IAAIc,eAAe,CAAC,CAAC;IACxC,IAAIC,aAAa,GAAGA,CAAA,KAAMC,SAAiB;IAC3C,IAAIC,cAA+C,GAAGA,CAAA,KAAMD,SAAS;IAErE,MAAMX,SAAS,GAAG,IAAIK,OAAO,CAAO,CAACQ,OAAO,EAAEC,MAAM,KAAK;MACvDJ,aAAa,GAAGG,OAAO;MACvBD,cAAc,GAAGE,MAAM;IACzB,CAAC,CAAC;IAEF,IAAI,CAAC/B,KAAK,CAACgC,YAAY,CAAC3B,EAAE,EAAE;MAAE4B,UAAU,EAAE,YAAY;MAAEC,KAAK,EAAE;IAAK,CAAC,CAAC;IAEtE,MAAMnB,KAAK,GAAG,IAAI,CAACoB,GAAG,CAAC3B,UAAU,EAAEC,MAAM,EAAEG,UAAU,CAACC,MAAM,EAAE,MAAMc,aAAa,CAAC,CAAC,CAAC,CACjFS,IAAI,CAAC,MAAM;MACV,IAAI,CAACpC,KAAK,CAACgC,YAAY,CAAC3B,EAAE,EAAE;QAAE4B,UAAU,EAAE;MAAe,CAAC,CAAC;MAC3DJ,cAAc,CAAClC,qBAAqB,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CACD0C,KAAK,CAAEH,KAAc,IAAK;MACzB,MAAMI,OAAO,GAAG9C,gBAAgB,CAAC0C,KAAK,EAAE,mBAAmB,CAAC;MAE5D,IAAI,CAAClC,KAAK,CAACgC,YAAY,CAAC3B,EAAE,EAAEO,UAAU,CAACC,MAAM,CAACC,OAAO,GACjD;QAAEmB,UAAU,EAAE;MAAe,CAAC,GAC9B;QAAEA,UAAU,EAAE,QAAQ;QAAEC,KAAK,EAAEI;MAAQ,CAAC,CAAC;MAC7CT,cAAc,CAACS,OAAO,CAAC;IACzB,CAAC,CAAC,CACDC,OAAO,CAAC,MAAM;MACb,IAAI,CAAC1C,QAAQ,CAAC2C,MAAM,CAACnC,EAAE,CAAC;MACxB,IAAI,CAACF,OAAO,CAACE,EAAE,CAAC;IAClB,CAAC,CAAC;IAEJ,MAAMc,OAAO,GAAG;MAAEP,UAAU;MAAEK,SAAS;MAAEF;IAAM,CAAC;IAEhD,IAAI,CAAClB,QAAQ,CAAC4C,GAAG,CAACpC,EAAE,EAAEc,OAAO,CAAC;IAE9B,OAAOA,OAAO;EAChB;EAEA,MAAcgB,GAAGA,CAAC3B,UAAsB,EAAEC,MAAc,EAAEI,MAAmB,EAAEI,SAAqB,EAAiB;IACnH,WAAW,MAAMyB,KAAK,IAAIhD,YAAY,CAACe,MAAM,CAACD,UAAU,EAAEK,MAAM,CAAC,EAAE,IAAI,CAACX,MAAM,CAAC,EAAE;MAC/E,IAAI,CAACyC,KAAK,CAACnC,UAAU,CAACH,EAAE,EAAEqC,KAAK,EAAEzB,SAAS,CAAC;IAC7C;EACF;EAEQ0B,KAAKA,CAACtC,EAAU,EAAEqC,KAAkB,EAAEzB,SAAqB,EAAQ;IACzE,IAAIyB,KAAK,CAACE,IAAI,KAAK,QAAQ,EAAE;MAC3B,IAAIF,KAAK,CAACG,MAAM,KAAK,cAAc,EAAE;QACnC5B,SAAS,CAAC,CAAC;MACb;MACA,IAAI,CAACjB,KAAK,CAACgC,YAAY,CAAC3B,EAAE,EAAE;QAAE4B,UAAU,EAAES,KAAK,CAACG;MAAO,CAAC,CAAC;IAC3D,CAAC,MAAM,IAAIH,KAAK,CAACE,IAAI,KAAK,aAAa,EAAE;MACvC,IAAI,CAAC5C,KAAK,CAACgC,YAAY,CAAC3B,EAAE,EAAE;QAAEyC,WAAW,EAAEJ,KAAK,CAACI;MAAY,CAAC,CAAC;IACjE,CAAC,MAAM,IAAIJ,KAAK,CAACE,IAAI,KAAK,SAAS,EAAE;MACnC,MAAMG,MAAM,GAAG,IAAI,CAAC/C,KAAK,CAAC+C,MAAM,CAAC1C,EAAE,CAAC;MAEpC,IAAI0C,MAAM,EAAE;QACV,IAAI,CAAC9C,QAAQ,CAAC+C,OAAO,CAACD,MAAM,EAAEL,KAAK,CAACrC,EAAE,EAAEqC,KAAK,CAACO,OAAO,CAAC;MACxD;IACF,CAAC,MAAM;MACL,IAAI,CAACjD,KAAK,CAACgC,YAAY,CAAC3B,EAAE,EAAE;QAAE6B,KAAK,EAAEQ,KAAK,CAACR;MAAM,CAAC,CAAC;IACrD;EACF;AACF;AAEA,SAAStC,WAAW","ignoreList":[]}
1
+ {"version":3,"names":["asBluetoothError","BluetoothError","keepReadings","endedBeforeConnecting","Connections","sessions","Map","recordingStops","constructor","store","readings","policy","onEnded","isActive","id","has","connect","peripheral","driver","current","get","controller","signal","aborted","ended","start","connected","disconnect","session","abort","stopRecording","stop","device","recording","catch","error","disconnectAll","Promise","all","keys","map","AbortController","markConnected","undefined","failConnecting","resolve","reject","updateDevice","connection","run","then","failure","finally","delete","set","event","apply","kind","status","information","receive","reading"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/connections.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["stableHash","isTimestamped","reading","temporal","recordedAt","start","end","some","value","Date","readingId","key","peripheral","id","gattDriver","protocol","signal","link","openLink","kind","status","deviceInformation","information","close"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/driver.ts"],"mappings":";;AAIA,SAASA,UAAU,QAAQ,kBAAe;;AAG1C;;AAsCA;;AAGA;;AAGA;AACA,MAAMC,aAAa,GAAIC,OAAoB,IAAc;EACvD,MAAMC,QAAQ,GAAGD,OAAmE;EAEpF,OAAO,CAACC,QAAQ,CAACC,UAAU,EAAED,QAAQ,CAACE,KAAK,EAAEF,QAAQ,CAACG,GAAG,CAAC,CAACC,IAAI,CAAEC,KAAK,IAAKA,KAAK,YAAYC,IAAI,CAAC;AACnG,CAAC;;AAED;AACA,MAAMC,SAAS,GAAGA,CAACC,GAAW,EAAEC,UAAsB,EAAEV,OAAoB,KAC1ED,aAAa,CAACC,OAAO,CAAC,GAAG,QAAQF,UAAU,CAAC;EAAEW,GAAG;EAAEC,UAAU,EAAEA,UAAU,CAACC,EAAE;EAAEX;AAAQ,CAAC,CAAC,EAAE,GAAG,IAAI;;AAEnG;AACA,MAAMY,UAAU,GAAGA,CAACH,GAAW,EAAEI,QAAwB,KACvD,iBAAiBH,UAAU,EAAEI,MAAM,EAAE;EACnC,MAAMC,IAAI,GAAG,MAAML,UAAU,CAACM,QAAQ,CAACF,MAAM,CAAC;EAE9C,IAAI;IACF,MAAM;MAAEG,IAAI,EAAE,QAAQ;MAAEC,MAAM,EAAE;IAAY,CAAC;IAC7C,IAAIH,IAAI,CAACI,iBAAiB,EAAE;MAC1B,MAAM;QAAEF,IAAI,EAAE,aAAa;QAAEG,WAAW,EAAEL,IAAI,CAACI;MAAkB,CAAC;IACpE;IACA,WAAW,MAAMnB,OAAO,IAAIa,QAAQ,CAACE,IAAI,CAAC,EAAE;MAC1C,MAAM;QAAEE,IAAI,EAAE,SAAS;QAAEN,EAAE,EAAEH,SAAS,CAACC,GAAG,EAAEC,UAAU,EAAEV,OAAO,CAAC;QAAEA;MAAQ,CAAC;IAC7E;IACA,MAAM;MAAEiB,IAAI,EAAE,QAAQ;MAAEC,MAAM,EAAE;IAAe,CAAC;EAClD,CAAC,SAAS;IACR,MAAMH,IAAI,CAACM,KAAK,CAAC,CAAC;EACpB;AACF,CAAC;AAEH,SAAST,UAAU,EAAEb,aAAa","ignoreList":[]}
1
+ {"version":3,"names":["stableHash","isTimestamped","reading","temporal","recordedAt","start","end","some","value","Date","readingId","key","peripheral","id","gattDriver","protocol","signal","link","openLink","kind","status","deviceInformation","information","close"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/driver.ts"],"mappings":";;AAKA,SAASA,UAAU,QAAQ,kBAAe;;AAG1C;;AAiDA;;AAGA;;AAGA;AACA,MAAMC,aAAa,GAAIC,OAAoB,IAAc;EACvD,MAAMC,QAAQ,GAAGD,OAAmE;EAEpF,OAAO,CAACC,QAAQ,CAACC,UAAU,EAAED,QAAQ,CAACE,KAAK,EAAEF,QAAQ,CAACG,GAAG,CAAC,CAACC,IAAI,CAAEC,KAAK,IAAKA,KAAK,YAAYC,IAAI,CAAC;AACnG,CAAC;;AAED;AACA,MAAMC,SAAS,GAAGA,CAACC,GAAW,EAAEC,UAAsB,EAAEV,OAAoB,KAC1ED,aAAa,CAACC,OAAO,CAAC,GAAG,QAAQF,UAAU,CAAC;EAAEW,GAAG;EAAEC,UAAU,EAAEA,UAAU,CAACC,EAAE;EAAEX;AAAQ,CAAC,CAAC,EAAE,GAAG,IAAI;;AAEnG;AACA,MAAMY,UAAU,GAAGA,CAACH,GAAW,EAAEI,QAAwB,KACvD,iBAAiBH,UAAU,EAAEI,MAAM,EAAE;EACnC,MAAMC,IAAI,GAAG,MAAML,UAAU,CAACM,QAAQ,CAACF,MAAM,CAAC;EAE9C,IAAI;IACF,MAAM;MAAEG,IAAI,EAAE,QAAQ;MAAEC,MAAM,EAAE;IAAY,CAAC;IAC7C,IAAIH,IAAI,CAACI,iBAAiB,EAAE;MAC1B,MAAM;QAAEF,IAAI,EAAE,aAAa;QAAEG,WAAW,EAAEL,IAAI,CAACI;MAAkB,CAAC;IACpE;IACA,WAAW,MAAMnB,OAAO,IAAIa,QAAQ,CAACE,IAAI,CAAC,EAAE;MAC1C,MAAM;QAAEE,IAAI,EAAE,SAAS;QAAEN,EAAE,EAAEH,SAAS,CAACC,GAAG,EAAEC,UAAU,EAAEV,OAAO,CAAC;QAAEA;MAAQ,CAAC;IAC7E;IACA,MAAM;MAAEiB,IAAI,EAAE,QAAQ;MAAEC,MAAM,EAAE;IAAe,CAAC;EAClD,CAAC,SAAS;IACR,MAAMH,IAAI,CAACM,KAAK,CAAC,CAAC;EACpB;AACF,CAAC;AAEH,SAAST,UAAU,EAAEb,aAAa","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["BluetoothError","Error","name","constructor","code","message","cause","asBluetoothError","error","String"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/errors.ts"],"mappings":";;AAAA;;AAiBA;AACA,MAAMA,cAAc,SAASC,KAAK,CAAC;EACjC;EACgBC,IAAI,GAAG,gBAAgB;EAEhCC,WAAWA,CAEhB;EACgBC,IAAwB,EACxCC,OAAe,EACfC,KAAe,EACf;IACA,KAAK,CAACD,OAAO,EAAE;MAAEC;IAAM,CAAC,CAAC;IAAC,KAJVF,IAAwB,GAAxBA,IAAwB;EAK1C;AACF;;AAEA;AACA,MAAMG,gBAAgB,GAAGA,CAACC,KAAc,EAAEJ,IAAwB,KAChEI,KAAK,YAAYR,cAAc,GAC3BQ,KAAK,GACL,IAAIR,cAAc,CAACI,IAAI,EAAEI,KAAK,YAAYP,KAAK,GAAGO,KAAK,CAACH,OAAO,GAAGI,MAAM,CAACD,KAAK,CAAC,EAAEA,KAAK,CAAC;AAE7F,SAASD,gBAAgB,EAAEP,cAAc","ignoreList":[]}
1
+ {"version":3,"names":["BluetoothError","Error","name","constructor","code","message","cause","asBluetoothError","error","String"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/errors.ts"],"mappings":";;AAAA;;AAkBA;AACA,MAAMA,cAAc,SAASC,KAAK,CAAC;EACjC;EACgBC,IAAI,GAAG,gBAAgB;EAEhCC,WAAWA,CAEhB;EACgBC,IAAwB,EACxCC,OAAe,EACfC,KAAe,EACf;IACA,KAAK,CAACD,OAAO,EAAE;MAAEC;IAAM,CAAC,CAAC;IAAC,KAJVF,IAAwB,GAAxBA,IAAwB;EAK1C;AACF;;AAEA;AACA,MAAMG,gBAAgB,GAAGA,CAACC,KAAc,EAAEJ,IAAwB,KAChEI,KAAK,YAAYR,cAAc,GAC3BQ,KAAK,GACL,IAAIR,cAAc,CAACI,IAAI,EAAEI,KAAK,YAAYP,KAAK,GAAGO,KAAK,CAACH,OAAO,GAAGI,MAAM,CAACD,KAAK,CAAC,EAAEA,KAAK,CAAC;AAE7F,SAASD,gBAAgB,EAAEP,cAAc","ignoreList":[]}
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ /* eslint-disable max-lines */
4
+
3
5
  import { AutoConnectBackoff } from "./auto-connect.js";
4
6
  import { Connections } from "./connections.js";
5
7
  import { matchDevice } from "./devices.js";
@@ -106,6 +108,17 @@ class BluetoothRuntime {
106
108
  await this.connections.connect(peripheral, match.driver);
107
109
  }
108
110
 
111
+ /**
112
+ * Stops the recording a connected recorder holds open, for instance once the user confirms it while
113
+ * its `recording.leadOffSince` is set. The stored recording then arrives as a reading.
114
+ *
115
+ * @throws BluetoothError `no-open-recording` when the device holds none; `runtime-disposed` after `dispose`.
116
+ */
117
+ async stopRecording(deviceId) {
118
+ this.assertLive();
119
+ await this.connections.stopRecording(deviceId);
120
+ }
121
+
109
122
  /** Disconnects a device; a paired one stays disconnected until `connect` or `pair` is called again. */
110
123
  async disconnect(deviceId) {
111
124
  this.held.add(deviceId);
@@ -1 +1 @@
1
- {"version":3,"names":["AutoConnectBackoff","Connections","matchDevice","BluetoothError","PairedDevices","ReadingLog","everyReading","ScanLoop","SnapshotStore","BluetoothRuntime","store","known","Map","held","Set","backoff","retryTimers","scanRequest","disposed","constructor","options","readings","sink","connections","resultPolicy","id","connectionEnded","paired","set","pairedStorage","scan","scanner","peripheral","found","unwatchAdapter","watchState","adapter","sync","checkPermission","catch","undefined","getSnapshot","get","subscribe","listener","recordPermission","permissions","check","requestPermission","request","openPermissionSettings","openSettings","startScan","assertLive","permission","scanning","stopScan","connect","deviceId","match","require","delete","driver","disconnect","add","pair","forget","remove","retrySaves","dispose","close","forEach","clearTimeout","disconnectAll","devices","advertisement","device","key","name","connection","error","connectIfPaired","waiting","has","isActive","allows","succeeded","restartScan","timer","setTimeout","failed","running","restart"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/runtime.ts"],"mappings":";;AAEA,SAASA,kBAAkB,QAAQ,mBAAgB;AACnD,SAASC,WAAW,QAAQ,kBAAe;AAC3C,SAAqCC,WAAW,QAAQ,cAAW;AACnE,SAASC,cAAc,QAAQ,aAAU;AACzC,SAASC,aAAa,QAAQ,aAAU;AAExC,SAASC,UAAU,QAAQ,eAAY;AACvC,SAASC,YAAY,QAAsB,oBAAiB;AAC5D,SAASC,QAAQ,QAAQ,gBAAa;AAGtC,SAASC,aAAa,QAAQ,YAAS;;AAGvC;;AAwBA;AACA;AACA;AACA;AACA,MAAMC,gBAAgB,CAAC;EACJC,KAAK,GAAG,IAAIF,aAAa,CAAC,CAAC;EAC3BG,KAAK,GAAG,IAAIC,GAAG,CAAsB,CAAC;EACtCC,IAAI,GAAG,IAAIC,GAAG,CAAS,CAAC;EACxBC,OAAO,GAAG,IAAIf,kBAAkB,CAAC,CAAC;EAClCgB,WAAW,GAAG,IAAIF,GAAG,CAAgC,CAAC;EAM/DG,WAAW,GAAG,CAAC;EACfC,QAAQ,GAAG,KAAK;EAEjBC,WAAWA,CAAkBC,OAAgC,EAAE;IAAA,KAAlCA,OAAgC,GAAhCA,OAAgC;IAClE,IAAI,CAACC,QAAQ,GAAG,IAAIhB,UAAU,CAAC,IAAI,CAACK,KAAK,EAAEU,OAAO,CAACE,IAAI,CAAC;IACxD,IAAI,CAACC,WAAW,GAAG,IAAItB,WAAW,CAAC,IAAI,CAACS,KAAK,EAAE,IAAI,CAACW,QAAQ,EAAED,OAAO,CAACI,YAAY,IAAIlB,YAAY,EAAGmB,EAAE,IACrG,IAAI,CAACC,eAAe,CAACD,EAAE,CAAC,CAAC;IAC3B,IAAI,CAACE,MAAM,GAAG,IAAIvB,aAAa,CAAEuB,MAAM,IAAK,IAAI,CAACjB,KAAK,CAACkB,GAAG,CAAC;MAAED;IAAO,CAAC,CAAC,EAAEP,OAAO,CAACS,aAAa,CAAC;IAC9F,IAAI,CAACC,IAAI,GAAG,IAAIvB,QAAQ,CAACa,OAAO,CAACW,OAAO,EAAE,IAAI,CAACrB,KAAK,EAAGsB,UAAU,IAAK,IAAI,CAACC,KAAK,CAACD,UAAU,CAAC,CAAC;IAC7F,IAAI,CAACE,cAAc,GAAGd,OAAO,CAACW,OAAO,CAACI,UAAU,CAAEC,OAAO,IAAK;MAC5D,IAAI,CAAC1B,KAAK,CAACkB,GAAG,CAAC;QAAEQ;MAAQ,CAAC,CAAC;MAC3B,IAAI,CAACN,IAAI,CAACO,IAAI,CAAC,CAAC;IAClB,CAAC,CAAC;IACF,KAAK,IAAI,CAACC,eAAe,CAAC,CAAC,CAACC,KAAK,CAAC,MAAMC,SAAS,CAAC;EACpD;;EAEA;EACOC,WAAW,GAAGA,CAAA,KAAyB,IAAI,CAAC/B,KAAK,CAACgC,GAAG,CAAC,CAAC;;EAE9D;EACOC,SAAS,GAAIC,QAAoB,IAAmB,IAAI,CAAClC,KAAK,CAACiC,SAAS,CAACC,QAAQ,CAAC;;EAEzF;EACA,MAAaN,eAAeA,CAAA,EAAiC;IAC3D,OAAO,IAAI,CAACO,gBAAgB,CAAC,MAAM,IAAI,CAACzB,OAAO,CAAC0B,WAAW,CAACC,KAAK,CAAC,CAAC,CAAC;EACtE;;EAEA;EACA,MAAaC,iBAAiBA,CAAA,EAAiC;IAC7D,OAAO,IAAI,CAACH,gBAAgB,CAAC,MAAM,IAAI,CAACzB,OAAO,CAAC0B,WAAW,CAACG,OAAO,CAAC,CAAC,CAAC;EACxE;;EAEA;EACOC,sBAAsBA,CAAA,EAAkB;IAC7C,OAAO,IAAI,CAAC9B,OAAO,CAAC0B,WAAW,CAACK,YAAY,CAAC,CAAC;EAChD;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAaC,SAASA,CAAA,EAAkB;IACtC,IAAI,CAACC,UAAU,CAAC,CAAC;IAEjB,MAAMJ,OAAO,GAAG,EAAE,IAAI,CAAChC,WAAW;IAClC,MAAMqC,UAAU,GAAG,IAAI,CAAC5C,KAAK,CAACgC,GAAG,CAAC,CAAC,CAACY,UAAU,KAAK,SAAS,GAAG,SAAS,GAAG,MAAM,IAAI,CAACN,iBAAiB,CAAC,CAAC;IAEzG,IAAIM,UAAU,KAAK,SAAS,EAAE;MAC5B,MAAM,IAAInD,cAAc,CAAC,mBAAmB,EAAE,qCAAqC,CAAC;IACtF;IACA,IAAI8C,OAAO,KAAK,IAAI,CAAChC,WAAW,IAAI,CAAC,IAAI,CAACC,QAAQ,EAAE;MAClD,IAAI,CAACR,KAAK,CAACkB,GAAG,CAAC;QAAE2B,QAAQ,EAAE;MAAK,CAAC,CAAC;MAClC,IAAI,CAACzB,IAAI,CAACO,IAAI,CAAC,CAAC;IAClB;EACF;;EAEA;EACOmB,QAAQA,CAAA,EAAS;IACtB,IAAI,CAACvC,WAAW,IAAI,CAAC;IACrB,IAAI,CAACP,KAAK,CAACkB,GAAG,CAAC;MAAE2B,QAAQ,EAAE;IAAM,CAAC,CAAC;IACnC,IAAI,CAACzB,IAAI,CAACO,IAAI,CAAC,CAAC;EAClB;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAaoB,OAAOA,CAACC,QAAgB,EAAiB;IACpD,IAAI,CAACL,UAAU,CAAC,CAAC;IAEjB,MAAM;MAAErB,UAAU;MAAE2B;IAAM,CAAC,GAAG,IAAI,CAACC,OAAO,CAACF,QAAQ,CAAC;IAEpD,IAAI,CAAC7C,IAAI,CAACgD,MAAM,CAACH,QAAQ,CAAC;IAC1B,MAAM,IAAI,CAACnC,WAAW,CAACkC,OAAO,CAACzB,UAAU,EAAE2B,KAAK,CAACG,MAAM,CAAC;EAC1D;;EAEA;EACA,MAAaC,UAAUA,CAACL,QAAgB,EAAiB;IACvD,IAAI,CAAC7C,IAAI,CAACmD,GAAG,CAACN,QAAQ,CAAC;IACvB,MAAM,IAAI,CAACnC,WAAW,CAACwC,UAAU,CAACL,QAAQ,CAAC;EAC7C;;EAEA;EACA,MAAaO,IAAIA,CAACP,QAAgB,EAAiB;IACjD,IAAI,CAACE,OAAO,CAACF,QAAQ,CAAC;IACtB,MAAM,IAAI,CAAC/B,MAAM,CAACqC,GAAG,CAACN,QAAQ,CAAC;IAC/B,MAAM,IAAI,CAACD,OAAO,CAACC,QAAQ,CAAC;EAC9B;;EAEA;EACA,MAAaQ,MAAMA,CAACR,QAAgB,EAAiB;IACnD,MAAM,IAAI,CAAC/B,MAAM,CAACwC,MAAM,CAACT,QAAQ,CAAC;IAClC,MAAM,IAAI,CAACK,UAAU,CAACL,QAAQ,CAAC;EACjC;;EAEA;EACOU,UAAUA,CAAA,EAAkB;IACjC,OAAO,IAAI,CAAC/C,QAAQ,CAAC+C,UAAU,CAAC,CAAC;EACnC;;EAEA;EACA,MAAaC,OAAOA,CAAA,EAAkB;IACpC,IAAI,IAAI,CAACnD,QAAQ,EAAE;MACjB;IACF;IAEA,IAAI,CAACsC,QAAQ,CAAC,CAAC;IACf,IAAI,CAACtC,QAAQ,GAAG,IAAI;IACpB,IAAI,CAACY,IAAI,CAACwC,KAAK,CAAC,CAAC;IACjB,IAAI,CAACpC,cAAc,CAAC,CAAC;IACrB,IAAI,CAAClB,WAAW,CAACuD,OAAO,CAACC,YAAY,CAAC;IACtC,MAAM,IAAI,CAACjD,WAAW,CAACkD,aAAa,CAAC,CAAC;IACtC,IAAI,CAAC/D,KAAK,CAAC4D,KAAK,CAAC,CAAC;EACpB;EAEQzB,gBAAgBA,CAACS,UAA+B,EAAuB;IAC7E,IAAI,CAAC5C,KAAK,CAACkB,GAAG,CAAC;MAAE0B;IAAW,CAAC,CAAC;IAE9B,OAAOA,UAAU;EACnB;EAEQrB,KAAKA,CAACD,UAAsB,EAAQ;IAC1C,MAAMrB,KAAK,GAAG,IAAI,CAACA,KAAK,CAAC+B,GAAG,CAACV,UAAU,CAACP,EAAE,CAAC;IAC3C,MAAMkC,KAAK,GAAGhD,KAAK,EAAEgD,KAAK,IAAIzD,WAAW,CAAC,IAAI,CAACkB,OAAO,CAACsD,OAAO,EAAE1C,UAAU,CAAC2C,aAAa,CAAC;IAEzF,IAAI,CAAChB,KAAK,EAAE;MACV;IACF;IAEA,IAAI,CAAChD,KAAK,CAACiB,GAAG,CAACI,UAAU,CAACP,EAAE,EAAE;MAAEO,UAAU;MAAE2B;IAAM,CAAC,CAAC;IACpD,IAAI,CAAChD,KAAK,EAAE;MACV,MAAMiE,MAAM,GAAG;QAAEnD,EAAE,EAAEO,UAAU,CAACP,EAAE;QAAEoD,GAAG,EAAElB,KAAK,CAACkB,GAAG;QAAEC,IAAI,EAAE9C,UAAU,CAAC2C,aAAa,CAACG;MAAK,CAAC;MAEzF,IAAI,CAACpE,KAAK,CAACkB,GAAG,CAAC;QAAE8C,OAAO,EAAE,CAAC,GAAG,IAAI,CAAChE,KAAK,CAACgC,GAAG,CAAC,CAAC,CAACgC,OAAO,EAAE;UAAE,GAAGE,MAAM;UAAEG,UAAU,EAAE,MAAM;UAAEC,KAAK,EAAE;QAAK,CAAC;MAAE,CAAC,CAAC;IAC5G;IACA,IAAI,CAACC,eAAe,CAACjD,UAAU,CAACP,EAAE,CAAC;EACrC;EAEQwD,eAAeA,CAACxD,EAAU,EAAQ;IACxC,MAAMyD,OAAO,GAAG,IAAI,CAACrE,IAAI,CAACsE,GAAG,CAAC1D,EAAE,CAAC,IAAI,IAAI,CAACF,WAAW,CAAC6D,QAAQ,CAAC3D,EAAE,CAAC,IAAI,CAAC,IAAI,CAACV,OAAO,CAACsE,MAAM,CAAC5D,EAAE,CAAC;IAE9F,IAAI,IAAI,CAACE,MAAM,CAACwD,GAAG,CAAC1D,EAAE,CAAC,IAAI,CAACyD,OAAO,EAAE;MACnC,IAAI,CAACzB,OAAO,CAAChC,EAAE,CAAC,CAACc,KAAK,CAAC,MAAMC,SAAS,CAAC;IACzC;EACF;;EAEA;EACQd,eAAeA,CAACD,EAAU,EAAQ;IACxC,IAAI,CAAC,IAAI,CAACE,MAAM,CAACwD,GAAG,CAAC1D,EAAE,CAAC,IAAI,IAAI,CAACZ,IAAI,CAACsE,GAAG,CAAC1D,EAAE,CAAC,IAAI,IAAI,CAACP,QAAQ,EAAE;MAC9D;IACF;IAEA,IAAI,IAAI,CAACR,KAAK,CAACkE,MAAM,CAACnD,EAAE,CAAC,EAAEsD,UAAU,KAAK,QAAQ,EAAE;MAClD,IAAI,CAAChE,OAAO,CAACuE,SAAS,CAAC7D,EAAE,CAAC;MAC1B,IAAI,CAAC8D,WAAW,CAAC,CAAC;MAElB;IACF;IAEA,MAAMC,KAAK,GAAGC,UAAU,CAAC,MAAM;MAC7B,IAAI,CAACzE,WAAW,CAAC6C,MAAM,CAAC2B,KAAK,CAAC;MAC9B,IAAI,CAACD,WAAW,CAAC,CAAC;IACpB,CAAC,EAAE,IAAI,CAACxE,OAAO,CAAC2E,MAAM,CAACjE,EAAE,CAAC,CAAC;IAE3B,IAAI,CAACT,WAAW,CAACgD,GAAG,CAACwB,KAAK,CAAC;EAC7B;EAEQD,WAAWA,CAAA,EAAS;IAC1B,IAAI,IAAI,CAACzD,IAAI,CAAC6D,OAAO,EAAE;MACrB,IAAI,CAAC7D,IAAI,CAAC8D,OAAO,CAAC,CAAC;IACrB;EACF;EAEQhC,OAAOA,CAACF,QAAgB,EAAe;IAC7C,MAAMkB,MAAM,GAAG,IAAI,CAACjE,KAAK,CAAC+B,GAAG,CAACgB,QAAQ,CAAC;IAEvC,IAAI,CAACkB,MAAM,EAAE;MACX,MAAM,IAAIzE,cAAc,CAAC,kBAAkB,EAAE,aAAauD,QAAQ,wBAAwB,CAAC;IAC7F;IAEA,OAAOkB,MAAM;EACf;EAEQvB,UAAUA,CAAA,EAAS;IACzB,IAAI,IAAI,CAACnC,QAAQ,EAAE;MACjB,MAAM,IAAIf,cAAc,CAAC,kBAAkB,EAAE,oCAAoC,CAAC;IACpF;EACF;AACF;AAEA,SAASM,gBAAgB","ignoreList":[]}
1
+ {"version":3,"names":["AutoConnectBackoff","Connections","matchDevice","BluetoothError","PairedDevices","ReadingLog","everyReading","ScanLoop","SnapshotStore","BluetoothRuntime","store","known","Map","held","Set","backoff","retryTimers","scanRequest","disposed","constructor","options","readings","sink","connections","resultPolicy","id","connectionEnded","paired","set","pairedStorage","scan","scanner","peripheral","found","unwatchAdapter","watchState","adapter","sync","checkPermission","catch","undefined","getSnapshot","get","subscribe","listener","recordPermission","permissions","check","requestPermission","request","openPermissionSettings","openSettings","startScan","assertLive","permission","scanning","stopScan","connect","deviceId","match","require","delete","driver","stopRecording","disconnect","add","pair","forget","remove","retrySaves","dispose","close","forEach","clearTimeout","disconnectAll","devices","advertisement","device","key","name","connection","error","connectIfPaired","waiting","has","isActive","allows","succeeded","restartScan","timer","setTimeout","failed","running","restart"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/runtime.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"legacy-driver.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/next/bluetooth/ble-plx/legacy-driver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,8CAA8C,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGpE,OAAO,EAAe,MAAM,EAAiB,MAAM,WAAW,CAAC;AAW/D,4GAA4G;AAC5G,QAAA,MAAM,YAAY,GAAI,SAAS,aAAa,CAAC,SAAS,cAAc,EAAE,CAAC,EAAE,YAAY,SAAS,KAAG,MAkC9F,CAAC;AAEJ,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"legacy-driver.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/next/bluetooth/ble-plx/legacy-driver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,8CAA8C,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGpE,OAAO,EAAe,MAAM,EAAiB,MAAM,WAAW,CAAC;AAW/D,4GAA4G;AAC5G,QAAA,MAAM,YAAY,GAAI,SAAS,aAAa,CAAC,SAAS,cAAc,EAAE,CAAC,EAAE,YAAY,SAAS,KAAG,MAuC9F,CAAC;AAEJ,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -10,11 +10,18 @@ declare class Connections {
10
10
  private readonly policy;
11
11
  private readonly onEnded;
12
12
  private readonly sessions;
13
+ private readonly recordingStops;
13
14
  constructor(store: SnapshotStore, readings: ReadingLog, policy: ResultPolicy, onEnded: (id: string) => void);
14
15
  isActive(id: string): boolean;
15
16
  /** Resolves once connected; joins a connection still opening or open, and waits out one being closed. */
16
17
  connect(peripheral: Peripheral, driver: Driver): Promise<void>;
17
18
  disconnect(id: string): Promise<void>;
19
+ /**
20
+ * Stops the recording a connected device holds open.
21
+ *
22
+ * @throws BluetoothError `no-open-recording` when the device holds none.
23
+ */
24
+ stopRecording(id: string): Promise<void>;
18
25
  /** Disconnects every device; resolves once every connection has ended. */
19
26
  disconnectAll(): Promise<void>;
20
27
  private start;
@@ -1 +1 @@
1
- {"version":3,"file":"connections.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/connections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAgB,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAOzC,gFAAgF;AAChF,cAAM,WAAW;IAIb,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;gBAGpC,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI;IAGzC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIpC,yGAAyG;IAC5F,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY9D,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOlD,0EAA0E;IAC7D,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3C,OAAO,CAAC,KAAK;YAsCC,GAAG;IAMjB,OAAO,CAAC,KAAK;CAkBd;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"connections.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/connections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAgB,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAOzC,gFAAgF;AAChF,cAAM,WAAW;IAKb,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAP1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IACvD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0C;gBAGtD,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI;IAGzC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIpC,yGAAyG;IAC5F,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY9D,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOlD;;;;OAIG;IACU,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYrD,0EAA0E;IAC7D,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3C,OAAO,CAAC,KAAK;YAwCC,GAAG;IAMjB,OAAO,CAAC,KAAK;CAqBd;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { Measurement } from "@ovok/core/next";
2
2
  import { BluetoothError } from "./errors";
3
3
  import { DeviceInformation, Link } from "./link";
4
+ import { DeviceRecording } from "./snapshot";
4
5
  import { Peripheral } from "./transport";
5
6
  /** What a driver reports while it runs. */
6
7
  type DeviceEvent = {
@@ -20,6 +21,13 @@ type DeviceEvent = {
20
21
  id: string | null;
21
22
  /** The decoded reading. */
22
23
  reading: Measurement;
24
+ } | {
25
+ /** The recording the device holds open changed. */
26
+ kind: "recording";
27
+ /** The open recording, or `null` once it has closed. */
28
+ recording: DeviceRecording | null;
29
+ /** Stops the open recording. */
30
+ stop: () => Promise<void>;
23
31
  } | {
24
32
  /** The device or its protocol reported an error; the connection may continue. */
25
33
  kind: "error";
@@ -1 +1 @@
1
- {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,2CAA2C;AAC3C,KAAK,WAAW,GACZ;IAEA,+BAA+B;IAC/B,IAAI,EAAE,QAAQ,CAAC;IAEf,2BAA2B;IAC3B,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,cAAc,CAAC;CACpD,GACC;IAEA,gFAAgF;IAChF,IAAI,EAAE,aAAa,CAAC;IAEpB,wBAAwB;IACxB,WAAW,EAAE,iBAAiB,CAAC;CAChC,GACC;IAEA,iCAAiC;IACjC,IAAI,EAAE,SAAS,CAAC;IAEhB,+GAA+G;IAC/G,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAElB,2BAA2B;IAC3B,OAAO,EAAE,WAAW,CAAC;CACtB,GACC;IAEA,iFAAiF;IACjF,IAAI,EAAE,OAAO,CAAC;IAEd,iBAAiB;IACjB,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEJ,iGAAiG;AACjG,KAAK,MAAM,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,KAAK,aAAa,CAAC,WAAW,CAAC,CAAC;AAE1F,0EAA0E;AAC1E,KAAK,cAAc,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,aAAa,CAAC,WAAW,CAAC,CAAC;AAEjE,8GAA8G;AAC9G,QAAA,MAAM,aAAa,GAAI,SAAS,WAAW,KAAG,OAI7C,CAAC;AAMF,yCAAyC;AACzC,QAAA,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,UAAU,cAAc,KAAG,MAgBzD,CAAC;AAEJ,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,2CAA2C;AAC3C,KAAK,WAAW,GACZ;IAEA,+BAA+B;IAC/B,IAAI,EAAE,QAAQ,CAAC;IAEf,2BAA2B;IAC3B,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,cAAc,CAAC;CACpD,GACC;IAEA,gFAAgF;IAChF,IAAI,EAAE,aAAa,CAAC;IAEpB,wBAAwB;IACxB,WAAW,EAAE,iBAAiB,CAAC;CAChC,GACC;IAEA,iCAAiC;IACjC,IAAI,EAAE,SAAS,CAAC;IAEhB,+GAA+G;IAC/G,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAElB,2BAA2B;IAC3B,OAAO,EAAE,WAAW,CAAC;CACtB,GACC;IAEA,mDAAmD;IACnD,IAAI,EAAE,WAAW,CAAC;IAElB,wDAAwD;IACxD,SAAS,EAAE,eAAe,GAAG,IAAI,CAAC;IAElC,gCAAgC;IAChC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B,GACC;IAEA,iFAAiF;IACjF,IAAI,EAAE,OAAO,CAAC;IAEd,iBAAiB;IACjB,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEJ,iGAAiG;AACjG,KAAK,MAAM,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,KAAK,aAAa,CAAC,WAAW,CAAC,CAAC;AAE1F,0EAA0E;AAC1E,KAAK,cAAc,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,aAAa,CAAC,WAAW,CAAC,CAAC;AAEjE,8GAA8G;AAC9G,QAAA,MAAM,aAAa,GAAI,SAAS,WAAW,KAAG,OAI7C,CAAC;AAMF,yCAAyC;AACzC,QAAA,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,UAAU,cAAc,KAAG,MAgBzD,CAAC;AAEJ,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /** Why a Bluetooth operation failed. */
2
- type BluetoothErrorCode = "permission-denied" | "powered-off" | "unsupported" | "scan-failed" | "connection-failed" | "pairing-required" | "discovery-failed" | "device-error" | "frame-invalid" | "measurement-failed" | "device-not-found" | "runtime-disposed" | "save-failed" | "unknown";
2
+ type BluetoothErrorCode = "permission-denied" | "powered-off" | "unsupported" | "scan-failed" | "connection-failed" | "pairing-required" | "discovery-failed" | "device-error" | "frame-invalid" | "measurement-failed" | "device-not-found" | "no-open-recording" | "runtime-disposed" | "save-failed" | "unknown";
3
3
  /** Every failure the Bluetooth runtime reports; `cause` holds the underlying error, when any. */
4
4
  declare class BluetoothError extends Error {
5
5
  /** Why it failed. */
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/errors.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,KAAK,kBAAkB,GACnB,mBAAmB,GACnB,aAAa,GACb,aAAa,GACb,aAAa,GACb,mBAAmB,GACnB,kBAAkB,GAClB,kBAAkB,GAClB,cAAc,GACd,eAAe,GACf,oBAAoB,GACpB,kBAAkB,GAClB,kBAAkB,GAClB,aAAa,GACb,SAAS,CAAC;AAEd,iGAAiG;AACjG,cAAM,cAAe,SAAQ,KAAK;IAM9B,qBAAqB;aACL,IAAI,EAAE,kBAAkB;IAN1C,iCAAiC;IACjC,SAAgB,IAAI,oBAAoB;;IAItC,qBAAqB;IACL,IAAI,EAAE,kBAAkB,EACxC,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,OAAO;CAIlB;AAED,oFAAoF;AACpF,QAAA,MAAM,gBAAgB,GAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,KAAG,cAGwB,CAAC;AAE9F,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC;AAC5C,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/errors.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,KAAK,kBAAkB,GACnB,mBAAmB,GACnB,aAAa,GACb,aAAa,GACb,aAAa,GACb,mBAAmB,GACnB,kBAAkB,GAClB,kBAAkB,GAClB,cAAc,GACd,eAAe,GACf,oBAAoB,GACpB,kBAAkB,GAClB,mBAAmB,GACnB,kBAAkB,GAClB,aAAa,GACb,SAAS,CAAC;AAEd,iGAAiG;AACjG,cAAM,cAAe,SAAQ,KAAK;IAM9B,qBAAqB;aACL,IAAI,EAAE,kBAAkB;IAN1C,iCAAiC;IACjC,SAAgB,IAAI,oBAAoB;;IAItC,qBAAqB;IACL,IAAI,EAAE,kBAAkB,EACxC,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,OAAO;CAIlB;AAED,oFAAoF;AACpF,QAAA,MAAM,gBAAgB,GAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,KAAG,cAGwB,CAAC;AAE9F,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC;AAC5C,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
@@ -11,7 +11,7 @@ export { BluetoothRuntime } from "./runtime";
11
11
  export type { BluetoothRuntimeOptions } from "./runtime";
12
12
  export { BluetoothError } from "./errors";
13
13
  export type { BluetoothErrorCode } from "./errors";
14
- export type { BluetoothSnapshot, ConnectionState, DeviceReading, NearbyDevice, SaveState } from "./snapshot";
14
+ export type { BluetoothSnapshot, ConnectionState, DeviceReading, DeviceRecording, NearbyDevice, SaveState } from "./snapshot";
15
15
  export type { AdapterState, Advertisement, BluetoothScanner, Peripheral } from "./transport";
16
16
  export type { BluetoothPermission, BluetoothPermissions } from "./permissions";
17
17
  export type { ReadingSink, SaveResult } from "./sink";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,YAAY,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,YAAY,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AACnD,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC7G,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC7F,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAC/E,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC9E,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACpE,YAAY,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACtD,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,YAAY,EACZ,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACjF,YAAY,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACjF,YAAY,EAAE,6BAA6B,EAAE,MAAM,yCAAyC,CAAC;AAE7F,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAClE,YAAY,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,YAAY,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,YAAY,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,YAAY,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AACnD,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC9H,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC7F,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAC/E,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC9E,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACpE,YAAY,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACtD,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,YAAY,EACZ,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACjF,YAAY,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACjF,YAAY,EAAE,6BAA6B,EAAE,MAAM,yCAAyC,CAAC;AAE7F,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAClE,YAAY,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,YAAY,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC"}
@@ -63,6 +63,13 @@ declare class BluetoothRuntime {
63
63
  * @throws BluetoothError `device-not-found`, `connection-failed` or the driver's failure.
64
64
  */
65
65
  connect(deviceId: string): Promise<void>;
66
+ /**
67
+ * Stops the recording a connected recorder holds open, for instance once the user confirms it while
68
+ * its `recording.leadOffSince` is set. The stored recording then arrives as a reading.
69
+ *
70
+ * @throws BluetoothError `no-open-recording` when the device holds none; `runtime-disposed` after `dispose`.
71
+ */
72
+ stopRecording(deviceId: string): Promise<void>;
66
73
  /** Disconnects a device; a paired one stays disconnected until `connect` or `pair` is called again. */
67
74
  disconnect(deviceId: string): Promise<void>;
68
75
  /** Remembers a device, so it connects whenever the scan finds it, and connects to it now. */
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/runtime.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,20 @@ type NearbyDevice = {
19
19
  error: BluetoothError | null;
20
20
  /** What the device reported about itself on its last connection; absent until it has connected. */
21
21
  information?: DeviceInformation;
22
+ /** The recording the device holds open, for recorders that report one; absent when none is open. */
23
+ recording?: DeviceRecording;
24
+ };
25
+ /** A recording a recorder holds open, as its last realtime answer reported it. */
26
+ type DeviceRecording = {
27
+ /** Seconds recorded so far, as of the last change. */
28
+ seconds: number;
29
+ /**
30
+ * When the electrodes lost contact, while they have none; the recording stays open until it is
31
+ * stopped. An app can offer `stopRecording` once this is old enough, as the vendor app does.
32
+ */
33
+ leadOffSince?: Date;
34
+ /** Stopping now stores the recording; a shorter one is discarded by the device. */
35
+ storesOnStop: boolean;
22
36
  };
23
37
  /** Where saving a reading stands. */
24
38
  type SaveState = {
@@ -68,5 +82,5 @@ type BluetoothSnapshot = {
68
82
  /** Recent readings, oldest first. */
69
83
  readings: readonly DeviceReading[];
70
84
  };
71
- export type { BluetoothSnapshot, ConnectionState, DeviceReading, NearbyDevice, SaveState };
85
+ export type { BluetoothSnapshot, ConnectionState, DeviceReading, DeviceRecording, NearbyDevice, SaveState };
72
86
  //# sourceMappingURL=snapshot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,0CAA0C;AAC1C,KAAK,eAAe,GAAG,MAAM,GAAG,YAAY,GAAG,WAAW,GAAG,WAAW,GAAG,cAAc,GAAG,QAAQ,CAAC;AAErG,6CAA6C;AAC7C,KAAK,YAAY,GAAG;IAElB,6CAA6C;IAC7C,EAAE,EAAE,MAAM,CAAC;IAEX,+CAA+C;IAC/C,GAAG,EAAE,MAAM,CAAC;IAEZ,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IAEb,4BAA4B;IAC5B,UAAU,EAAE,eAAe,CAAC;IAE5B,yDAAyD;IACzD,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAE7B,mGAAmG;IACnG,WAAW,CAAC,EAAE,iBAAiB,CAAC;CACjC,CAAC;AAEF,qCAAqC;AACrC,KAAK,SAAS,GACV;IAEA,qCAAqC;IACrC,MAAM,EAAE,QAAQ,CAAC;CAClB,GACC;IAEA,aAAa;IACb,MAAM,EAAE,OAAO,CAAC;CACjB,GACC;IAEA,uDAAuD;IACvD,MAAM,EAAE,QAAQ,CAAC;IAEjB,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;CACjB,GACC;IAEA,qEAAqE;IACrE,MAAM,EAAE,QAAQ,CAAC;IAEjB,oCAAoC;IACpC,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEJ,8DAA8D;AAC9D,KAAK,aAAa,GAAG;IAEnB,mFAAmF;IACnF,EAAE,EAAE,MAAM,CAAC;IAEX,+BAA+B;IAC/B,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,KAAK,GAAG,MAAM,GAAG,aAAa,CAAC,CAAC;IAElE,+BAA+B;IAC/B,WAAW,EAAE,WAAW,CAAC;IAEzB,gCAAgC;IAChC,UAAU,EAAE,IAAI,CAAC;IAEjB,8BAA8B;IAC9B,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC;AAEF,6EAA6E;AAC7E,KAAK,iBAAiB,GAAG;IAEvB,+BAA+B;IAC/B,OAAO,EAAE,YAAY,CAAC;IAEtB,2DAA2D;IAC3D,UAAU,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAE5C,uEAAuE;IACvE,QAAQ,EAAE,OAAO,CAAC;IAElB,kEAAkE;IAClE,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IAEjC,uDAAuD;IACvD,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;IAEjC,6EAA6E;IAC7E,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAE1B,qCAAqC;IACrC,QAAQ,EAAE,SAAS,aAAa,EAAE,CAAC;CACpC,CAAC;AAEF,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,0CAA0C;AAC1C,KAAK,eAAe,GAAG,MAAM,GAAG,YAAY,GAAG,WAAW,GAAG,WAAW,GAAG,cAAc,GAAG,QAAQ,CAAC;AAErG,6CAA6C;AAC7C,KAAK,YAAY,GAAG;IAElB,6CAA6C;IAC7C,EAAE,EAAE,MAAM,CAAC;IAEX,+CAA+C;IAC/C,GAAG,EAAE,MAAM,CAAC;IAEZ,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IAEb,4BAA4B;IAC5B,UAAU,EAAE,eAAe,CAAC;IAE5B,yDAAyD;IACzD,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAE7B,mGAAmG;IACnG,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAEhC,oGAAoG;IACpG,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B,CAAC;AAEF,kFAAkF;AAClF,KAAK,eAAe,GAAG;IAErB,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,YAAY,CAAC,EAAE,IAAI,CAAC;IAEpB,mFAAmF;IACnF,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,qCAAqC;AACrC,KAAK,SAAS,GACV;IAEA,qCAAqC;IACrC,MAAM,EAAE,QAAQ,CAAC;CAClB,GACC;IAEA,aAAa;IACb,MAAM,EAAE,OAAO,CAAC;CACjB,GACC;IAEA,uDAAuD;IACvD,MAAM,EAAE,QAAQ,CAAC;IAEjB,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;CACjB,GACC;IAEA,qEAAqE;IACrE,MAAM,EAAE,QAAQ,CAAC;IAEjB,oCAAoC;IACpC,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEJ,8DAA8D;AAC9D,KAAK,aAAa,GAAG;IAEnB,mFAAmF;IACnF,EAAE,EAAE,MAAM,CAAC;IAEX,+BAA+B;IAC/B,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,KAAK,GAAG,MAAM,GAAG,aAAa,CAAC,CAAC;IAElE,+BAA+B;IAC/B,WAAW,EAAE,WAAW,CAAC;IAEzB,gCAAgC;IAChC,UAAU,EAAE,IAAI,CAAC;IAEjB,8BAA8B;IAC9B,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC;AAEF,6EAA6E;AAC7E,KAAK,iBAAiB,GAAG;IAEvB,+BAA+B;IAC/B,OAAO,EAAE,YAAY,CAAC;IAEtB,2DAA2D;IAC3D,UAAU,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAE5C,uEAAuE;IACvE,QAAQ,EAAE,OAAO,CAAC;IAElB,kEAAkE;IAClE,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IAEjC,uDAAuD;IACvD,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;IAEjC,6EAA6E;IAC7E,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAE1B,qCAAqC;IACrC,QAAQ,EAAE,SAAS,aAAa,EAAE,CAAC;CACpC,CAAC;AAEF,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"legacy-driver.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/next/bluetooth/ble-plx/legacy-driver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,8CAA8C,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGpE,OAAO,EAAe,MAAM,EAAiB,MAAM,WAAW,CAAC;AAW/D,4GAA4G;AAC5G,QAAA,MAAM,YAAY,GAAI,SAAS,aAAa,CAAC,SAAS,cAAc,EAAE,CAAC,EAAE,YAAY,SAAS,KAAG,MAkC9F,CAAC;AAEJ,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"legacy-driver.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/next/bluetooth/ble-plx/legacy-driver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,8CAA8C,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGpE,OAAO,EAAe,MAAM,EAAiB,MAAM,WAAW,CAAC;AAW/D,4GAA4G;AAC5G,QAAA,MAAM,YAAY,GAAI,SAAS,aAAa,CAAC,SAAS,cAAc,EAAE,CAAC,EAAE,YAAY,SAAS,KAAG,MAuC9F,CAAC;AAEJ,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -10,11 +10,18 @@ declare class Connections {
10
10
  private readonly policy;
11
11
  private readonly onEnded;
12
12
  private readonly sessions;
13
+ private readonly recordingStops;
13
14
  constructor(store: SnapshotStore, readings: ReadingLog, policy: ResultPolicy, onEnded: (id: string) => void);
14
15
  isActive(id: string): boolean;
15
16
  /** Resolves once connected; joins a connection still opening or open, and waits out one being closed. */
16
17
  connect(peripheral: Peripheral, driver: Driver): Promise<void>;
17
18
  disconnect(id: string): Promise<void>;
19
+ /**
20
+ * Stops the recording a connected device holds open.
21
+ *
22
+ * @throws BluetoothError `no-open-recording` when the device holds none.
23
+ */
24
+ stopRecording(id: string): Promise<void>;
18
25
  /** Disconnects every device; resolves once every connection has ended. */
19
26
  disconnectAll(): Promise<void>;
20
27
  private start;
@@ -1 +1 @@
1
- {"version":3,"file":"connections.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/connections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAgB,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAOzC,gFAAgF;AAChF,cAAM,WAAW;IAIb,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;gBAGpC,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI;IAGzC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIpC,yGAAyG;IAC5F,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY9D,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOlD,0EAA0E;IAC7D,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3C,OAAO,CAAC,KAAK;YAsCC,GAAG;IAMjB,OAAO,CAAC,KAAK;CAkBd;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"connections.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/connections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAgB,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAOzC,gFAAgF;AAChF,cAAM,WAAW;IAKb,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAP1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IACvD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0C;gBAGtD,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI;IAGzC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIpC,yGAAyG;IAC5F,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY9D,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOlD;;;;OAIG;IACU,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYrD,0EAA0E;IAC7D,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3C,OAAO,CAAC,KAAK;YAwCC,GAAG;IAMjB,OAAO,CAAC,KAAK;CAqBd;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { Measurement } from "@ovok/core/next";
2
2
  import { BluetoothError } from "./errors";
3
3
  import { DeviceInformation, Link } from "./link";
4
+ import { DeviceRecording } from "./snapshot";
4
5
  import { Peripheral } from "./transport";
5
6
  /** What a driver reports while it runs. */
6
7
  type DeviceEvent = {
@@ -20,6 +21,13 @@ type DeviceEvent = {
20
21
  id: string | null;
21
22
  /** The decoded reading. */
22
23
  reading: Measurement;
24
+ } | {
25
+ /** The recording the device holds open changed. */
26
+ kind: "recording";
27
+ /** The open recording, or `null` once it has closed. */
28
+ recording: DeviceRecording | null;
29
+ /** Stops the open recording. */
30
+ stop: () => Promise<void>;
23
31
  } | {
24
32
  /** The device or its protocol reported an error; the connection may continue. */
25
33
  kind: "error";
@@ -1 +1 @@
1
- {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,2CAA2C;AAC3C,KAAK,WAAW,GACZ;IAEA,+BAA+B;IAC/B,IAAI,EAAE,QAAQ,CAAC;IAEf,2BAA2B;IAC3B,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,cAAc,CAAC;CACpD,GACC;IAEA,gFAAgF;IAChF,IAAI,EAAE,aAAa,CAAC;IAEpB,wBAAwB;IACxB,WAAW,EAAE,iBAAiB,CAAC;CAChC,GACC;IAEA,iCAAiC;IACjC,IAAI,EAAE,SAAS,CAAC;IAEhB,+GAA+G;IAC/G,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAElB,2BAA2B;IAC3B,OAAO,EAAE,WAAW,CAAC;CACtB,GACC;IAEA,iFAAiF;IACjF,IAAI,EAAE,OAAO,CAAC;IAEd,iBAAiB;IACjB,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEJ,iGAAiG;AACjG,KAAK,MAAM,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,KAAK,aAAa,CAAC,WAAW,CAAC,CAAC;AAE1F,0EAA0E;AAC1E,KAAK,cAAc,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,aAAa,CAAC,WAAW,CAAC,CAAC;AAEjE,8GAA8G;AAC9G,QAAA,MAAM,aAAa,GAAI,SAAS,WAAW,KAAG,OAI7C,CAAC;AAMF,yCAAyC;AACzC,QAAA,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,UAAU,cAAc,KAAG,MAgBzD,CAAC;AAEJ,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,2CAA2C;AAC3C,KAAK,WAAW,GACZ;IAEA,+BAA+B;IAC/B,IAAI,EAAE,QAAQ,CAAC;IAEf,2BAA2B;IAC3B,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,cAAc,CAAC;CACpD,GACC;IAEA,gFAAgF;IAChF,IAAI,EAAE,aAAa,CAAC;IAEpB,wBAAwB;IACxB,WAAW,EAAE,iBAAiB,CAAC;CAChC,GACC;IAEA,iCAAiC;IACjC,IAAI,EAAE,SAAS,CAAC;IAEhB,+GAA+G;IAC/G,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAElB,2BAA2B;IAC3B,OAAO,EAAE,WAAW,CAAC;CACtB,GACC;IAEA,mDAAmD;IACnD,IAAI,EAAE,WAAW,CAAC;IAElB,wDAAwD;IACxD,SAAS,EAAE,eAAe,GAAG,IAAI,CAAC;IAElC,gCAAgC;IAChC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B,GACC;IAEA,iFAAiF;IACjF,IAAI,EAAE,OAAO,CAAC;IAEd,iBAAiB;IACjB,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEJ,iGAAiG;AACjG,KAAK,MAAM,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,KAAK,aAAa,CAAC,WAAW,CAAC,CAAC;AAE1F,0EAA0E;AAC1E,KAAK,cAAc,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,aAAa,CAAC,WAAW,CAAC,CAAC;AAEjE,8GAA8G;AAC9G,QAAA,MAAM,aAAa,GAAI,SAAS,WAAW,KAAG,OAI7C,CAAC;AAMF,yCAAyC;AACzC,QAAA,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,UAAU,cAAc,KAAG,MAgBzD,CAAC;AAEJ,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC;AACrC,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /** Why a Bluetooth operation failed. */
2
- type BluetoothErrorCode = "permission-denied" | "powered-off" | "unsupported" | "scan-failed" | "connection-failed" | "pairing-required" | "discovery-failed" | "device-error" | "frame-invalid" | "measurement-failed" | "device-not-found" | "runtime-disposed" | "save-failed" | "unknown";
2
+ type BluetoothErrorCode = "permission-denied" | "powered-off" | "unsupported" | "scan-failed" | "connection-failed" | "pairing-required" | "discovery-failed" | "device-error" | "frame-invalid" | "measurement-failed" | "device-not-found" | "no-open-recording" | "runtime-disposed" | "save-failed" | "unknown";
3
3
  /** Every failure the Bluetooth runtime reports; `cause` holds the underlying error, when any. */
4
4
  declare class BluetoothError extends Error {
5
5
  /** Why it failed. */
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/errors.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,KAAK,kBAAkB,GACnB,mBAAmB,GACnB,aAAa,GACb,aAAa,GACb,aAAa,GACb,mBAAmB,GACnB,kBAAkB,GAClB,kBAAkB,GAClB,cAAc,GACd,eAAe,GACf,oBAAoB,GACpB,kBAAkB,GAClB,kBAAkB,GAClB,aAAa,GACb,SAAS,CAAC;AAEd,iGAAiG;AACjG,cAAM,cAAe,SAAQ,KAAK;IAM9B,qBAAqB;aACL,IAAI,EAAE,kBAAkB;IAN1C,iCAAiC;IACjC,SAAgB,IAAI,oBAAoB;;IAItC,qBAAqB;IACL,IAAI,EAAE,kBAAkB,EACxC,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,OAAO;CAIlB;AAED,oFAAoF;AACpF,QAAA,MAAM,gBAAgB,GAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,KAAG,cAGwB,CAAC;AAE9F,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC;AAC5C,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/errors.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,KAAK,kBAAkB,GACnB,mBAAmB,GACnB,aAAa,GACb,aAAa,GACb,aAAa,GACb,mBAAmB,GACnB,kBAAkB,GAClB,kBAAkB,GAClB,cAAc,GACd,eAAe,GACf,oBAAoB,GACpB,kBAAkB,GAClB,mBAAmB,GACnB,kBAAkB,GAClB,aAAa,GACb,SAAS,CAAC;AAEd,iGAAiG;AACjG,cAAM,cAAe,SAAQ,KAAK;IAM9B,qBAAqB;aACL,IAAI,EAAE,kBAAkB;IAN1C,iCAAiC;IACjC,SAAgB,IAAI,oBAAoB;;IAItC,qBAAqB;IACL,IAAI,EAAE,kBAAkB,EACxC,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,OAAO;CAIlB;AAED,oFAAoF;AACpF,QAAA,MAAM,gBAAgB,GAAI,OAAO,OAAO,EAAE,MAAM,kBAAkB,KAAG,cAGwB,CAAC;AAE9F,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC;AAC5C,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
@@ -11,7 +11,7 @@ export { BluetoothRuntime } from "./runtime";
11
11
  export type { BluetoothRuntimeOptions } from "./runtime";
12
12
  export { BluetoothError } from "./errors";
13
13
  export type { BluetoothErrorCode } from "./errors";
14
- export type { BluetoothSnapshot, ConnectionState, DeviceReading, NearbyDevice, SaveState } from "./snapshot";
14
+ export type { BluetoothSnapshot, ConnectionState, DeviceReading, DeviceRecording, NearbyDevice, SaveState } from "./snapshot";
15
15
  export type { AdapterState, Advertisement, BluetoothScanner, Peripheral } from "./transport";
16
16
  export type { BluetoothPermission, BluetoothPermissions } from "./permissions";
17
17
  export type { ReadingSink, SaveResult } from "./sink";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,YAAY,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,YAAY,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AACnD,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC7G,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC7F,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAC/E,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC9E,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACpE,YAAY,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACtD,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,YAAY,EACZ,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACjF,YAAY,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACjF,YAAY,EAAE,6BAA6B,EAAE,MAAM,yCAAyC,CAAC;AAE7F,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAClE,YAAY,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,YAAY,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,YAAY,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,YAAY,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AACnD,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC9H,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC7F,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAC/E,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC9E,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACpE,YAAY,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACtD,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,YAAY,EACZ,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAC;AACjF,YAAY,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACjF,YAAY,EAAE,6BAA6B,EAAE,MAAM,yCAAyC,CAAC;AAE7F,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAClE,YAAY,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,YAAY,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC"}
@@ -63,6 +63,13 @@ declare class BluetoothRuntime {
63
63
  * @throws BluetoothError `device-not-found`, `connection-failed` or the driver's failure.
64
64
  */
65
65
  connect(deviceId: string): Promise<void>;
66
+ /**
67
+ * Stops the recording a connected recorder holds open, for instance once the user confirms it while
68
+ * its `recording.leadOffSince` is set. The stored recording then arrives as a reading.
69
+ *
70
+ * @throws BluetoothError `no-open-recording` when the device holds none; `runtime-disposed` after `dispose`.
71
+ */
72
+ stopRecording(deviceId: string): Promise<void>;
66
73
  /** Disconnects a device; a paired one stays disconnected until `connect` or `pair` is called again. */
67
74
  disconnect(deviceId: string): Promise<void>;
68
75
  /** Remembers a device, so it connects whenever the scan finds it, and connects to it now. */
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/runtime.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAI9C,OAAO,EAAe,aAAa,EAAe,MAAM,WAAW,CAAC;AAGpE,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAE1E,OAAO,EAAgB,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAAE,gBAAgB,EAAc,MAAM,aAAa,CAAC;AAE3D,+CAA+C;AAC/C,KAAK,uBAAuB,GAAG;IAE7B,uBAAuB;IACvB,OAAO,EAAE,gBAAgB,CAAC;IAE1B,iCAAiC;IACjC,WAAW,EAAE,oBAAoB,CAAC;IAElC,gCAAgC;IAChC,IAAI,EAAE,WAAW,CAAC;IAElB,uFAAuF;IACvF,OAAO,EAAE,SAAS,aAAa,EAAE,CAAC;IAElC,yEAAyE;IACzE,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B,mGAAmG;IACnG,aAAa,CAAC,EAAE,WAAW,CAAC;CAC7B,CAAC;AAIF;;;GAGG;AACH,cAAM,gBAAgB;IAcD,OAAO,CAAC,QAAQ,CAAC,OAAO;IAb3C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuB;IAC7C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAkC;IACxD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAqB;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IACpD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA4C;IACxE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAa;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAW;IAChC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAa;IAC5C,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,QAAQ,CAAS;gBAEW,OAAO,EAAE,uBAAuB;IAapE,yBAAyB;IAClB,WAAW,QAAO,iBAAiB,CAAqB;IAE/D,0EAA0E;IACnE,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAAmC;IAE1F,8CAA8C;IACjC,eAAe,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAI5D,wDAAwD;IAC3C,iBAAiB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAI9D,kFAAkF;IAC3E,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9C;;;;OAIG;IACU,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAevC,wDAAwD;IACjD,QAAQ,IAAI,IAAI;IAMvB;;;;OAIG;IACU,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASrD;;;;;OAKG;IACU,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3D,uGAAuG;IAC1F,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxD,6FAA6F;IAChF,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMlD,kDAAkD;IACrC,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpD,4FAA4F;IACrF,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIlC,sHAAsH;IACzG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAcrC,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,KAAK;IAiBb,OAAO,CAAC,eAAe;IAQvB,gGAAgG;IAChG,OAAO,CAAC,eAAe;IAoBvB,OAAO,CAAC,WAAW;IAMnB,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,UAAU;CAKnB;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC5B,YAAY,EAAE,uBAAuB,EAAE,CAAC"}
@@ -19,6 +19,20 @@ type NearbyDevice = {
19
19
  error: BluetoothError | null;
20
20
  /** What the device reported about itself on its last connection; absent until it has connected. */
21
21
  information?: DeviceInformation;
22
+ /** The recording the device holds open, for recorders that report one; absent when none is open. */
23
+ recording?: DeviceRecording;
24
+ };
25
+ /** A recording a recorder holds open, as its last realtime answer reported it. */
26
+ type DeviceRecording = {
27
+ /** Seconds recorded so far, as of the last change. */
28
+ seconds: number;
29
+ /**
30
+ * When the electrodes lost contact, while they have none; the recording stays open until it is
31
+ * stopped. An app can offer `stopRecording` once this is old enough, as the vendor app does.
32
+ */
33
+ leadOffSince?: Date;
34
+ /** Stopping now stores the recording; a shorter one is discarded by the device. */
35
+ storesOnStop: boolean;
22
36
  };
23
37
  /** Where saving a reading stands. */
24
38
  type SaveState = {
@@ -68,5 +82,5 @@ type BluetoothSnapshot = {
68
82
  /** Recent readings, oldest first. */
69
83
  readings: readonly DeviceReading[];
70
84
  };
71
- export type { BluetoothSnapshot, ConnectionState, DeviceReading, NearbyDevice, SaveState };
85
+ export type { BluetoothSnapshot, ConnectionState, DeviceReading, DeviceRecording, NearbyDevice, SaveState };
72
86
  //# sourceMappingURL=snapshot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,0CAA0C;AAC1C,KAAK,eAAe,GAAG,MAAM,GAAG,YAAY,GAAG,WAAW,GAAG,WAAW,GAAG,cAAc,GAAG,QAAQ,CAAC;AAErG,6CAA6C;AAC7C,KAAK,YAAY,GAAG;IAElB,6CAA6C;IAC7C,EAAE,EAAE,MAAM,CAAC;IAEX,+CAA+C;IAC/C,GAAG,EAAE,MAAM,CAAC;IAEZ,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IAEb,4BAA4B;IAC5B,UAAU,EAAE,eAAe,CAAC;IAE5B,yDAAyD;IACzD,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAE7B,mGAAmG;IACnG,WAAW,CAAC,EAAE,iBAAiB,CAAC;CACjC,CAAC;AAEF,qCAAqC;AACrC,KAAK,SAAS,GACV;IAEA,qCAAqC;IACrC,MAAM,EAAE,QAAQ,CAAC;CAClB,GACC;IAEA,aAAa;IACb,MAAM,EAAE,OAAO,CAAC;CACjB,GACC;IAEA,uDAAuD;IACvD,MAAM,EAAE,QAAQ,CAAC;IAEjB,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;CACjB,GACC;IAEA,qEAAqE;IACrE,MAAM,EAAE,QAAQ,CAAC;IAEjB,oCAAoC;IACpC,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEJ,8DAA8D;AAC9D,KAAK,aAAa,GAAG;IAEnB,mFAAmF;IACnF,EAAE,EAAE,MAAM,CAAC;IAEX,+BAA+B;IAC/B,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,KAAK,GAAG,MAAM,GAAG,aAAa,CAAC,CAAC;IAElE,+BAA+B;IAC/B,WAAW,EAAE,WAAW,CAAC;IAEzB,gCAAgC;IAChC,UAAU,EAAE,IAAI,CAAC;IAEjB,8BAA8B;IAC9B,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC;AAEF,6EAA6E;AAC7E,KAAK,iBAAiB,GAAG;IAEvB,+BAA+B;IAC/B,OAAO,EAAE,YAAY,CAAC;IAEtB,2DAA2D;IAC3D,UAAU,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAE5C,uEAAuE;IACvE,QAAQ,EAAE,OAAO,CAAC;IAElB,kEAAkE;IAClE,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IAEjC,uDAAuD;IACvD,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;IAEjC,6EAA6E;IAC7E,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAE1B,qCAAqC;IACrC,QAAQ,EAAE,SAAS,aAAa,EAAE,CAAC;CACpC,CAAC;AAEF,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,0CAA0C;AAC1C,KAAK,eAAe,GAAG,MAAM,GAAG,YAAY,GAAG,WAAW,GAAG,WAAW,GAAG,cAAc,GAAG,QAAQ,CAAC;AAErG,6CAA6C;AAC7C,KAAK,YAAY,GAAG;IAElB,6CAA6C;IAC7C,EAAE,EAAE,MAAM,CAAC;IAEX,+CAA+C;IAC/C,GAAG,EAAE,MAAM,CAAC;IAEZ,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IAEb,4BAA4B;IAC5B,UAAU,EAAE,eAAe,CAAC;IAE5B,yDAAyD;IACzD,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAE7B,mGAAmG;IACnG,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAEhC,oGAAoG;IACpG,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B,CAAC;AAEF,kFAAkF;AAClF,KAAK,eAAe,GAAG;IAErB,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,YAAY,CAAC,EAAE,IAAI,CAAC;IAEpB,mFAAmF;IACnF,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,qCAAqC;AACrC,KAAK,SAAS,GACV;IAEA,qCAAqC;IACrC,MAAM,EAAE,QAAQ,CAAC;CAClB,GACC;IAEA,aAAa;IACb,MAAM,EAAE,OAAO,CAAC;CACjB,GACC;IAEA,uDAAuD;IACvD,MAAM,EAAE,QAAQ,CAAC;IAEjB,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;CACjB,GACC;IAEA,qEAAqE;IACrE,MAAM,EAAE,QAAQ,CAAC;IAEjB,oCAAoC;IACpC,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEJ,8DAA8D;AAC9D,KAAK,aAAa,GAAG;IAEnB,mFAAmF;IACnF,EAAE,EAAE,MAAM,CAAC;IAEX,+BAA+B;IAC/B,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,KAAK,GAAG,MAAM,GAAG,aAAa,CAAC,CAAC;IAElE,+BAA+B;IAC/B,WAAW,EAAE,WAAW,CAAC;IAEzB,gCAAgC;IAChC,UAAU,EAAE,IAAI,CAAC;IAEjB,8BAA8B;IAC9B,IAAI,EAAE,SAAS,CAAC;CACjB,CAAC;AAEF,6EAA6E;AAC7E,KAAK,iBAAiB,GAAG;IAEvB,+BAA+B;IAC/B,OAAO,EAAE,YAAY,CAAC;IAEtB,2DAA2D;IAC3D,UAAU,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAE5C,uEAAuE;IACvE,QAAQ,EAAE,OAAO,CAAC;IAElB,kEAAkE;IAClE,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IAEjC,uDAAuD;IACvD,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;IAEjC,6EAA6E;IAC7E,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAE1B,qCAAqC;IACrC,QAAQ,EAAE,SAAS,aAAa,EAAE,CAAC;CACpC,CAAC;AAEF,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ovok/native",
3
- "version": "1.16.1-dev.2185+8cb0297",
3
+ "version": "1.16.1-dev.2187+fea3e76",
4
4
  "description": "React native component sdk for OVOK",
5
5
  "source": "./src/index.tsx",
6
6
  "main": "./lib/commonjs/index.js",