@ovok/native 1.13.0 → 1.14.0

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 (59) hide show
  1. package/lib/commonjs/modules/bt-management/components/bt-provider-child-wrapper.js +48 -27
  2. package/lib/commonjs/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
  3. package/lib/commonjs/modules/bt-management/services/background-sync/background-sync-coordinator.js +14 -41
  4. package/lib/commonjs/modules/bt-management/services/background-sync/background-sync-coordinator.js.map +1 -1
  5. package/lib/commonjs/modules/bt-management/services/background-sync/background-sync-delivery.js +75 -0
  6. package/lib/commonjs/modules/bt-management/services/background-sync/background-sync-delivery.js.map +1 -0
  7. package/lib/commonjs/modules/bt-management/services/bt-manager.js +2 -1
  8. package/lib/commonjs/modules/bt-management/services/bt-manager.js.map +1 -1
  9. package/lib/commonjs/modules/bt-management/services/series-recorder.js +9 -5
  10. package/lib/commonjs/modules/bt-management/services/series-recorder.js.map +1 -1
  11. package/lib/commonjs/modules/bt-management/services/series-slots.js +9 -2
  12. package/lib/commonjs/modules/bt-management/services/series-slots.js.map +1 -1
  13. package/lib/commonjs/modules/data-sync/utils/healthkit-series.js +4 -1
  14. package/lib/commonjs/modules/data-sync/utils/healthkit-series.js.map +1 -1
  15. package/lib/module/modules/bt-management/components/bt-provider-child-wrapper.js +48 -27
  16. package/lib/module/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
  17. package/lib/module/modules/bt-management/services/background-sync/background-sync-coordinator.js +15 -42
  18. package/lib/module/modules/bt-management/services/background-sync/background-sync-coordinator.js.map +1 -1
  19. package/lib/module/modules/bt-management/services/background-sync/background-sync-delivery.js +70 -0
  20. package/lib/module/modules/bt-management/services/background-sync/background-sync-delivery.js.map +1 -0
  21. package/lib/module/modules/bt-management/services/bt-manager.js +2 -1
  22. package/lib/module/modules/bt-management/services/bt-manager.js.map +1 -1
  23. package/lib/module/modules/bt-management/services/series-recorder.js +10 -6
  24. package/lib/module/modules/bt-management/services/series-recorder.js.map +1 -1
  25. package/lib/module/modules/bt-management/services/series-slots.js +8 -2
  26. package/lib/module/modules/bt-management/services/series-slots.js.map +1 -1
  27. package/lib/module/modules/data-sync/utils/healthkit-series.js +4 -1
  28. package/lib/module/modules/data-sync/utils/healthkit-series.js.map +1 -1
  29. package/lib/typescript/commonjs/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
  30. package/lib/typescript/commonjs/src/modules/bt-management/services/background-sync/background-sync-coordinator.d.ts.map +1 -1
  31. package/lib/typescript/commonjs/src/modules/bt-management/services/background-sync/background-sync-delivery.d.ts +9 -0
  32. package/lib/typescript/commonjs/src/modules/bt-management/services/background-sync/background-sync-delivery.d.ts.map +1 -0
  33. package/lib/typescript/commonjs/src/modules/bt-management/services/bt-manager.d.ts +2 -0
  34. package/lib/typescript/commonjs/src/modules/bt-management/services/bt-manager.d.ts.map +1 -1
  35. package/lib/typescript/commonjs/src/modules/bt-management/services/series-recorder.d.ts +3 -1
  36. package/lib/typescript/commonjs/src/modules/bt-management/services/series-recorder.d.ts.map +1 -1
  37. package/lib/typescript/commonjs/src/modules/bt-management/services/series-slots.d.ts +4 -1
  38. package/lib/typescript/commonjs/src/modules/bt-management/services/series-slots.d.ts.map +1 -1
  39. package/lib/typescript/commonjs/src/modules/bt-management/types/background-sync.d.ts +6 -0
  40. package/lib/typescript/commonjs/src/modules/bt-management/types/background-sync.d.ts.map +1 -1
  41. package/lib/typescript/commonjs/src/modules/bt-management/types/result-callback.d.ts +5 -0
  42. package/lib/typescript/commonjs/src/modules/bt-management/types/result-callback.d.ts.map +1 -1
  43. package/lib/typescript/commonjs/src/modules/data-sync/utils/healthkit-series.d.ts.map +1 -1
  44. package/lib/typescript/module/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
  45. package/lib/typescript/module/src/modules/bt-management/services/background-sync/background-sync-coordinator.d.ts.map +1 -1
  46. package/lib/typescript/module/src/modules/bt-management/services/background-sync/background-sync-delivery.d.ts +9 -0
  47. package/lib/typescript/module/src/modules/bt-management/services/background-sync/background-sync-delivery.d.ts.map +1 -0
  48. package/lib/typescript/module/src/modules/bt-management/services/bt-manager.d.ts +2 -0
  49. package/lib/typescript/module/src/modules/bt-management/services/bt-manager.d.ts.map +1 -1
  50. package/lib/typescript/module/src/modules/bt-management/services/series-recorder.d.ts +3 -1
  51. package/lib/typescript/module/src/modules/bt-management/services/series-recorder.d.ts.map +1 -1
  52. package/lib/typescript/module/src/modules/bt-management/services/series-slots.d.ts +4 -1
  53. package/lib/typescript/module/src/modules/bt-management/services/series-slots.d.ts.map +1 -1
  54. package/lib/typescript/module/src/modules/bt-management/types/background-sync.d.ts +6 -0
  55. package/lib/typescript/module/src/modules/bt-management/types/background-sync.d.ts.map +1 -1
  56. package/lib/typescript/module/src/modules/bt-management/types/result-callback.d.ts +5 -0
  57. package/lib/typescript/module/src/modules/bt-management/types/result-callback.d.ts.map +1 -1
  58. package/lib/typescript/module/src/modules/data-sync/utils/healthkit-series.d.ts.map +1 -1
  59. package/package.json +1 -1
@@ -97,6 +97,36 @@ const BTProviderChildWrapper = ({
97
97
  const propsRef = React.useRef(latestProps);
98
98
  const acceptedDevicesRef = React.useRef(acceptedDevices);
99
99
  const backgroundSyncCoordinatorRef = React.useRef(null);
100
+ const deliveringTo = React.useCallback(() => {
101
+ const latest = backgroundSyncRef.current;
102
+ if (!latest || !runtime.getBackgroundScanEnabled()) {
103
+ throw new Error("Queued result delivery is currently disabled");
104
+ }
105
+ return latest;
106
+ }, [runtime]);
107
+ const notifyAccepted = React.useCallback(async (latest, result) => {
108
+ if (latest.notifications?.enabled !== true) {
109
+ return;
110
+ }
111
+ try {
112
+ if (latest.notifications.shouldNotify?.(result) === false) {
113
+ return;
114
+ }
115
+ const body = latest.notifications.body;
116
+ const data = latest.notifications.data;
117
+ await (0, _pushNotification.showBackgroundPushNotification)({
118
+ title: latest.notifications.title ?? "New health measurement",
119
+ body: body === undefined ? `${(0, _deviceTitle.deviceTitle)(result.deviceData)} reported a measurement` : typeof body === "function" ? body(result) : body,
120
+ ...(data === undefined ? {} : {
121
+ data: typeof data === "function" ? data(result) : data
122
+ })
123
+ });
124
+ } catch (error) {
125
+ propsRef.current.onError?.({
126
+ error: (0, _bluetoothError.toBluetoothError)(error)
127
+ });
128
+ }
129
+ }, []);
100
130
  const coordinatorOptionsFor = React.useCallback(current => ({
101
131
  ...current,
102
132
  getOwnerKey: () => backgroundSyncRef.current?.getOwnerKey?.(),
@@ -107,34 +137,23 @@ const BTProviderChildWrapper = ({
107
137
  });
108
138
  },
109
139
  onResult: async result => {
110
- const latest = backgroundSyncRef.current;
111
- if (!latest || !runtime.getBackgroundScanEnabled()) {
112
- throw new Error("Queued result delivery is currently disabled");
113
- }
140
+ const latest = deliveringTo();
114
141
  await latest.onResult(result);
115
- if (latest.notifications?.enabled !== true) {
116
- return;
117
- }
118
- try {
119
- if (latest.notifications.shouldNotify?.(result) === false) {
120
- return;
142
+ await notifyAccepted(latest, result);
143
+ },
144
+ ...(current.onResults && {
145
+ onResults: async results => {
146
+ const latest = deliveringTo();
147
+ if (!latest.onResults) {
148
+ throw new Error("Queued results are delivered one at a time");
149
+ }
150
+ await latest.onResults(results);
151
+ for (const result of results) {
152
+ await notifyAccepted(latest, result);
121
153
  }
122
- const body = latest.notifications.body;
123
- const data = latest.notifications.data;
124
- await (0, _pushNotification.showBackgroundPushNotification)({
125
- title: latest.notifications.title ?? "New health measurement",
126
- body: body === undefined ? `${(0, _deviceTitle.deviceTitle)(result.deviceData)} reported a measurement` : typeof body === "function" ? body(result) : body,
127
- ...(data === undefined ? {} : {
128
- data: typeof data === "function" ? data(result) : data
129
- })
130
- });
131
- } catch (error) {
132
- propsRef.current.onError?.({
133
- error: (0, _bluetoothError.toBluetoothError)(error)
134
- });
135
154
  }
136
- }
137
- }), [runtime]);
155
+ })
156
+ }), [deliveringTo, notifyAccepted]);
138
157
  const hasBackgroundSync = Boolean(backgroundSync);
139
158
  backgroundSyncRef.current = backgroundSync;
140
159
  propsRef.current = latestProps;
@@ -180,8 +199,10 @@ const BTProviderChildWrapper = ({
180
199
  const backgroundOptions = currentBackgroundSync ? {
181
200
  backgroundEnabled: runtime.getBackgroundScanEnabled(),
182
201
  serviceUUIDs: (0, _backgroundServiceUuids.getBackgroundServiceUUIDs)(currentAcceptedDevices, currentBackgroundSync.serviceUUIDs),
183
- // Series being recorded wait in the results queue's store, so one survives the app closing.
184
- seriesStorage: currentBackgroundSync.storage
202
+ // Series being recorded wait in the results queue's store, so one survives the app closing, each kept for
203
+ // the account it was recorded for.
204
+ seriesStorage: currentBackgroundSync.storage,
205
+ getOwnerKey: () => backgroundSyncRef.current?.getOwnerKey?.()
185
206
  } : undefined;
186
207
  const managerOptions = {
187
208
  ...backgroundOptions,
@@ -1 +1 @@
1
- {"version":3,"names":["_netinfo","require","React","_interopRequireWildcard","_reactNative","_sentryLogger","_runtimeContext","_backgroundBleManager","_backgroundServiceUuids","_backgroundSyncCoordinator","_btManager","_pushNotification","_bluetoothError","_deviceStatus","_deviceTitle","_mirrorBluetoothState","_androidBluetoothForegroundService","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","stableSignature","value","JSON","stringify","_key","current","RegExp","source","flags","Map","entries","Set","values","toString","FORCE_FLUSH","includeExhausted","resetExhausted","resetRetryBackoff","BTProviderChildWrapper","bleManager","acceptedDevices","children","oneReadingPerConnection","deliveredEcgFileNames","deliveredFileNames","clearDeviceHistory","onDeviceFound","onError","onDeviceStatusChanged","onConnectionEvent","onResult","resultPolicies","clockSync","autoConnect","autoConnectDelayMs","onDeviceSelectionRequired","backgroundSync","permissionStatus","deferScanUntilPermission","btManagerRef","useRef","managerState","setManager","useState","runtimeRef","createBluetoothRuntime","enabled","runtime","permissionErrorReportedRef","runtimePermissionStatus","useSyncExternalStore","subscribeState","getSnapshot","bluetoothPermissionStatus","backgroundSyncRef","latestProps","propsRef","acceptedDevicesRef","backgroundSyncCoordinatorRef","coordinatorOptionsFor","useCallback","getOwnerKey","error","toBluetoothError","result","latest","getBackgroundScanEnabled","Error","notifications","shouldNotify","body","data","showBackgroundPushNotification","title","undefined","deviceTitle","deviceData","hasBackgroundSync","Boolean","useEffect","setBluetoothPermissionStatus","setBluetoothState","mirrorBluetoothState","acceptedDevicesSignature","managerOptionsSignature","timezone","serviceUUIDs","getBackgroundServiceUUIDs","backgroundScanEnabled","currentAcceptedDevices","length","sentryLogger","currentProps","currentBackgroundSync","backgroundOptions","backgroundEnabled","seriesStorage","storage","managerOptions","now","Date","btManager","keys","BTManager","destroy","coordinator","BackgroundSyncCoordinator","setBackgroundSyncFlush","flush","updateOptions","wasConnected","unsubscribe","addNetworkEventListener","state","isConnected","isInternetReachable","reconnected","flushBackgroundSync","catch","setAutoConnect","manager","device","deviceManager","upsertDevice","runtimeDevice","devices","find","item","id","emit","Promise","resolve","normalized","code","BluetoothErrorCode","PERMISSION_DENIED","callback","enqueue","setDeviceResult","status","measurementTypeKey","DeviceStatus","DISCONNECTED","removeDevice","setDeviceStatus","event","setDeviceConnectionEvent","setBackgroundScanEnabled","AppState","currentState","startScan","restoredState","getRestoredBleState","restoreStateIdentifier","connectedPeripherals","restoreDevices","listener","addEventListener","remove","jsx","BluetoothRuntimeProvider","AndroidBluetoothForegroundService","options","android","foregroundService","exports"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/components/bt-provider-child-wrapper.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_netinfo","require","React","_interopRequireWildcard","_reactNative","_sentryLogger","_runtimeContext","_backgroundBleManager","_backgroundServiceUuids","_backgroundSyncCoordinator","_btManager","_pushNotification","_bluetoothError","_deviceStatus","_deviceTitle","_mirrorBluetoothState","_androidBluetoothForegroundService","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","stableSignature","value","JSON","stringify","_key","current","RegExp","source","flags","Map","entries","Set","values","toString","FORCE_FLUSH","includeExhausted","resetExhausted","resetRetryBackoff","BTProviderChildWrapper","bleManager","acceptedDevices","children","oneReadingPerConnection","deliveredEcgFileNames","deliveredFileNames","clearDeviceHistory","onDeviceFound","onError","onDeviceStatusChanged","onConnectionEvent","onResult","resultPolicies","clockSync","autoConnect","autoConnectDelayMs","onDeviceSelectionRequired","backgroundSync","permissionStatus","deferScanUntilPermission","btManagerRef","useRef","managerState","setManager","useState","runtimeRef","createBluetoothRuntime","enabled","runtime","permissionErrorReportedRef","runtimePermissionStatus","useSyncExternalStore","subscribeState","getSnapshot","bluetoothPermissionStatus","backgroundSyncRef","latestProps","propsRef","acceptedDevicesRef","backgroundSyncCoordinatorRef","deliveringTo","useCallback","latest","getBackgroundScanEnabled","Error","notifyAccepted","result","notifications","shouldNotify","body","data","showBackgroundPushNotification","title","undefined","deviceTitle","deviceData","error","toBluetoothError","coordinatorOptionsFor","getOwnerKey","onResults","results","hasBackgroundSync","Boolean","useEffect","setBluetoothPermissionStatus","setBluetoothState","mirrorBluetoothState","acceptedDevicesSignature","managerOptionsSignature","timezone","serviceUUIDs","getBackgroundServiceUUIDs","backgroundScanEnabled","currentAcceptedDevices","length","sentryLogger","currentProps","currentBackgroundSync","backgroundOptions","backgroundEnabled","seriesStorage","storage","managerOptions","now","Date","btManager","keys","BTManager","destroy","coordinator","BackgroundSyncCoordinator","setBackgroundSyncFlush","flush","updateOptions","wasConnected","unsubscribe","addNetworkEventListener","state","isConnected","isInternetReachable","reconnected","flushBackgroundSync","catch","setAutoConnect","manager","device","deviceManager","upsertDevice","runtimeDevice","devices","find","item","id","emit","Promise","resolve","normalized","code","BluetoothErrorCode","PERMISSION_DENIED","callback","enqueue","setDeviceResult","status","measurementTypeKey","DeviceStatus","DISCONNECTED","removeDevice","setDeviceStatus","event","setDeviceConnectionEvent","setBackgroundScanEnabled","AppState","currentState","startScan","restoredState","getRestoredBleState","restoreStateIdentifier","connectedPeripherals","restoreDevices","listener","addEventListener","remove","jsx","BluetoothRuntimeProvider","AndroidBluetoothForegroundService","options","android","foregroundService","exports"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/components/bt-provider-child-wrapper.tsx"],"mappings":"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","ignoreList":[]}
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "DEFAULT_QUEUE_KEY", {
12
12
  });
13
13
  var _telemetry = require("../../../helpers/utils/telemetry.js");
14
14
  var _bluetoothError = require("../../types/bluetooth-error.js");
15
+ var _backgroundSyncDelivery = require("./background-sync-delivery.js");
15
16
  var _backgroundSyncQueue = require("./background-sync-queue.js");
16
17
  /** A result is queued only for the account `getOwnerKey` returns, so the coordinator can't work without it. */
17
18
 
@@ -33,7 +34,7 @@ class BackgroundSyncCoordinator {
33
34
  this.options = withOwnerKey(options);
34
35
  }
35
36
  enqueue = result => {
36
- const ownerKey = this.options.getOwnerKey?.();
37
+ const ownerKey = result.recordedFor ?? this.options.getOwnerKey?.();
37
38
  return this.runExclusive(async () => {
38
39
  const options = this.options;
39
40
  const queue = await (0, _backgroundSyncQueue.readBackgroundSyncQueue)(options);
@@ -101,6 +102,7 @@ class BackgroundSyncCoordinator {
101
102
  let changed = false;
102
103
  const now = Date.now();
103
104
  let droppedLegacy = 0;
105
+ const due = [];
104
106
  for (const item of [...queue]) {
105
107
  const ownerKey = syncOptions.getOwnerKey?.();
106
108
  if (!item.ownerKey) {
@@ -123,48 +125,19 @@ class BackgroundSyncCoordinator {
123
125
  item.nextAttemptAt = 0;
124
126
  changed = true;
125
127
  }
126
- if (item.exhausted && !options.includeExhausted || item.nextAttemptAt > now) {
127
- continue;
128
+ if (!(item.exhausted && !options.includeExhausted) && item.nextAttemptAt <= now) {
129
+ due.push(item);
128
130
  }
129
- const attempt = item.attempt + 1;
130
- const maxRetries = Math.max(1, syncOptions.maxRetries ?? _backgroundSyncQueue.DEFAULT_MAX_RETRIES);
131
- const retryBackoffMs = Math.max(1, syncOptions.retryBackoffMs ?? _backgroundSyncQueue.DEFAULT_RETRY_BACKOFF_MS);
132
- try {
133
- await syncOptions.onResult({
134
- ...item.result,
135
- id: item.result.id,
136
- ownerKey: item.ownerKey,
137
- queueId: item.queueId,
138
- queuedAt: item.queuedAt,
139
- attempt
140
- });
141
- queue.splice(queue.indexOf(item), 1);
142
- (0, _telemetry.recordOvokMetric)("ovok.queue.delivered", 1, {
143
- attempt,
144
- measurementTypeKey: item.result.data.measurementTypeKey
145
- });
146
- changed = true;
147
- } catch (error) {
148
- item.attempt = attempt;
149
- item.exhausted = attempt >= maxRetries;
150
- item.nextAttemptAt = item.exhausted ? Number.MAX_SAFE_INTEGER : Date.now() + retryBackoffMs * 2 ** (attempt - 1);
151
- const errorCode = error instanceof _bluetoothError.BluetoothError ? error.code : _bluetoothError.BluetoothErrorCode.BACKGROUND_SYNC;
152
- (0, _telemetry.recordOvokMetric)("ovok.queue.retries", 1, {
153
- attempt,
154
- errorCode,
155
- willRetry: !item.exhausted,
156
- exhausted: item.exhausted
157
- });
158
- syncOptions.onError?.(new _bluetoothError.BluetoothError(_bluetoothError.BluetoothErrorCode.BACKGROUND_SYNC, "Background result delivery failed.", undefined, error));
159
- if (item.exhausted) {
160
- (0, _telemetry.recordOvokMetric)("ovok.queue.exhausted", 1, {
161
- attempt,
162
- errorCode,
163
- willRetry: false,
164
- exhausted: true
165
- });
131
+ }
132
+ if (due.length > 1 && (await (0, _backgroundSyncDelivery.deliverTogether)(queue, due, syncOptions))) {
133
+ changed = true;
134
+ } else {
135
+ for (const item of due) {
136
+ // The account can change during a flush; what it queued waits for it.
137
+ if (syncOptions.getOwnerKey?.() === item.ownerKey) {
138
+ await (0, _backgroundSyncDelivery.deliver)(queue, item, syncOptions);
139
+ changed = true;
166
140
  }
167
- changed = true;
168
141
  }
169
142
  }
170
143
  if (changed) {
@@ -1 +1 @@
1
- {"version":3,"names":["_telemetry","require","_bluetoothError","_backgroundSyncQueue","withOwnerKey","options","getOwnerKey","TypeError","BackgroundSyncCoordinator","operation","Promise","resolve","queued","listeners","Set","constructor","updateOptions","enqueue","result","ownerKey","runExclusive","queue","readBackgroundSyncQueue","stableId","id","createResultId","trim","BluetoothError","BluetoothErrorCode","BACKGROUND_SYNC","push","queueId","createQueueId","queuedAt","Date","toISOString","attempt","nextAttemptAt","writeBackgroundSyncQueue","recordOvokMetric","length","flushQueue","publish","flush","syncOptions","getQueued","subscribe","listener","add","size","delete","flatMap","item","forEach","next","then","catch","undefined","changed","now","droppedLegacy","splice","indexOf","exhausted","resetExhausted","resetRetryBackoff","includeExhausted","maxRetries","Math","max","DEFAULT_MAX_RETRIES","retryBackoffMs","DEFAULT_RETRY_BACKOFF_MS","onResult","measurementTypeKey","data","error","Number","MAX_SAFE_INTEGER","errorCode","code","willRetry","onError","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/background-sync/background-sync-coordinator.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_telemetry","require","_bluetoothError","_backgroundSyncDelivery","_backgroundSyncQueue","withOwnerKey","options","getOwnerKey","TypeError","BackgroundSyncCoordinator","operation","Promise","resolve","queued","listeners","Set","constructor","updateOptions","enqueue","result","ownerKey","recordedFor","runExclusive","queue","readBackgroundSyncQueue","stableId","id","createResultId","trim","BluetoothError","BluetoothErrorCode","BACKGROUND_SYNC","push","queueId","createQueueId","queuedAt","Date","toISOString","attempt","nextAttemptAt","writeBackgroundSyncQueue","recordOvokMetric","length","flushQueue","publish","flush","syncOptions","getQueued","subscribe","listener","add","size","delete","flatMap","item","forEach","next","then","catch","undefined","changed","now","droppedLegacy","due","splice","indexOf","exhausted","resetExhausted","resetRetryBackoff","includeExhausted","deliverTogether","deliver","errorCode","onError","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/background-sync/background-sync-coordinator.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.deliverTogether = exports.deliver = void 0;
7
+ var _telemetry = require("../../../helpers/utils/telemetry.js");
8
+ var _bluetoothError = require("../../types/bluetooth-error.js");
9
+ var _backgroundSyncQueue = require("./background-sync-queue.js");
10
+ const toResult = item => ({
11
+ ...item.result,
12
+ id: item.result.id,
13
+ ownerKey: item.ownerKey,
14
+ queueId: item.queueId,
15
+ queuedAt: item.queuedAt,
16
+ attempt: item.attempt + 1
17
+ });
18
+
19
+ /** Hands every due result to `onResults` at once; whether they were all accepted, and so taken off the queue. */
20
+ const deliverTogether = async (queue, due, syncOptions) => {
21
+ if (!syncOptions.onResults || syncOptions.getOwnerKey?.() !== due[0]?.ownerKey) {
22
+ return false;
23
+ }
24
+ try {
25
+ await syncOptions.onResults(due.map(toResult));
26
+ } catch {
27
+ return false;
28
+ }
29
+ due.forEach(item => {
30
+ queue.splice(queue.indexOf(item), 1);
31
+ (0, _telemetry.recordOvokMetric)("ovok.queue.delivered", 1, {
32
+ attempt: item.attempt + 1,
33
+ measurementTypeKey: item.result.data.measurementTypeKey
34
+ });
35
+ });
36
+ return true;
37
+ };
38
+
39
+ /** Hands one result to `onResult`: off the queue once accepted, otherwise tried again later, or kept as exhausted. */
40
+ exports.deliverTogether = deliverTogether;
41
+ const deliver = async (queue, item, syncOptions) => {
42
+ const attempt = item.attempt + 1;
43
+ const maxRetries = Math.max(1, syncOptions.maxRetries ?? _backgroundSyncQueue.DEFAULT_MAX_RETRIES);
44
+ const retryBackoffMs = Math.max(1, syncOptions.retryBackoffMs ?? _backgroundSyncQueue.DEFAULT_RETRY_BACKOFF_MS);
45
+ try {
46
+ await syncOptions.onResult(toResult(item));
47
+ queue.splice(queue.indexOf(item), 1);
48
+ (0, _telemetry.recordOvokMetric)("ovok.queue.delivered", 1, {
49
+ attempt,
50
+ measurementTypeKey: item.result.data.measurementTypeKey
51
+ });
52
+ } catch (error) {
53
+ item.attempt = attempt;
54
+ item.exhausted = attempt >= maxRetries;
55
+ item.nextAttemptAt = item.exhausted ? Number.MAX_SAFE_INTEGER : Date.now() + retryBackoffMs * 2 ** (attempt - 1);
56
+ const errorCode = error instanceof _bluetoothError.BluetoothError ? error.code : _bluetoothError.BluetoothErrorCode.BACKGROUND_SYNC;
57
+ (0, _telemetry.recordOvokMetric)("ovok.queue.retries", 1, {
58
+ attempt,
59
+ errorCode,
60
+ willRetry: !item.exhausted,
61
+ exhausted: item.exhausted
62
+ });
63
+ syncOptions.onError?.(new _bluetoothError.BluetoothError(_bluetoothError.BluetoothErrorCode.BACKGROUND_SYNC, "Background result delivery failed.", undefined, error));
64
+ if (item.exhausted) {
65
+ (0, _telemetry.recordOvokMetric)("ovok.queue.exhausted", 1, {
66
+ attempt,
67
+ errorCode,
68
+ willRetry: false,
69
+ exhausted: true
70
+ });
71
+ }
72
+ }
73
+ };
74
+ exports.deliver = deliver;
75
+ //# sourceMappingURL=background-sync-delivery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_telemetry","require","_bluetoothError","_backgroundSyncQueue","toResult","item","result","id","ownerKey","queueId","queuedAt","attempt","deliverTogether","queue","due","syncOptions","onResults","getOwnerKey","map","forEach","splice","indexOf","recordOvokMetric","measurementTypeKey","data","exports","deliver","maxRetries","Math","max","DEFAULT_MAX_RETRIES","retryBackoffMs","DEFAULT_RETRY_BACKOFF_MS","onResult","error","exhausted","nextAttemptAt","Number","MAX_SAFE_INTEGER","Date","now","errorCode","BluetoothError","code","BluetoothErrorCode","BACKGROUND_SYNC","willRetry","onError","undefined"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/background-sync/background-sync-delivery.ts"],"mappings":"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","ignoreList":[]}
@@ -38,7 +38,8 @@ class BTManager {
38
38
  this.deviceCreator = new _deviceCreator.DeviceCreator(this.acceptedDevices);
39
39
  this.backgroundScanEnabled = options.backgroundEnabled === true;
40
40
  this.series = new _seriesRecorder.SeriesRecorder({
41
- storage: options.seriesStorage
41
+ storage: options.seriesStorage,
42
+ getOwnerKey: options.getOwnerKey
42
43
  });
43
44
  }
44
45
  setAutoConnect = (enabledOrOptions, delayMs, onDeviceSelectionRequired) => {
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_reactNativeBlePlx","_sentryLogger","_telemetry","_bluetoothError","_integratedDevices","_errorCallbackPayload","_deviceCreator","_seriesRecorder","bluetoothErrorCallback","error","errorCallbackPayload","toBluetoothError","SCAN_RETRY_DELAY_MS","SERIES_IDLE_CHECK_MS","BTManager","MAX_DEVICES","devices","Map","forgottenDeviceIds","Set","eventSubscriptions","scanGeneration","scanActive","scanStarting","destroyed","autoConnectCandidates","bluetoothEnablePrompted","constructor","bleManager","acceptedDevices","options","deviceCreator","DeviceCreator","backgroundScanEnabled","backgroundEnabled","series","SeriesRecorder","storage","seriesStorage","setAutoConnect","enabledOrOptions","delayMs","onDeviceSelectionRequired","enabled","nextDelayMs","nextSelectionHandler","autoConnect","autoConnectDelayMs","clear","autoConnectTimer","clearTimeout","undefined","destroy","sentryLogger","stopScan","getOpenSeries","getOpen","subscribeOpenSeries","listener","subscribe","startScan","stateChangeListener","seriesTimer","setInterval","closeIdle","generation","subscription","onStateChange","state","State","PoweredOn","startDeviceScan","stopDeviceScan","PoweredOff","onErrorCallback","Platform","OS","Linking","sendIntent","push","setBackgroundScanEnabled","restartScan","haltScan","forEach","sub","remove","clearInterval","deliverTo","onDeviceFoundCallback","onResultCallback","onDeviceStatusChangedCallback","onConnectionEventCallback","device","disconnect","pauseScan","resumeScan","clearScanTimers","removeStateChangeListener","scanRetryTimer","scanRestartTimer","scheduleScanRetry","setTimeout","index","indexOf","splice","serviceUUIDs","scanServiceUUIDs","length","scanFailed","scanMode","ScanMode","LowPower","Balanced","onScanResult","addOvokSpanEvent","platform","background","restoreDevices","delete","id","disconnectDevice","deviceId","get","forget","add","onDeviceFound","callback","onError","onDeviceStatusChanged","onConnectionEvent","onResult","errorCode","code","advertisedName","name","trim","localName","has","deviceName","getDeviceName","manufacturerData","size","currentSize","deviceClass","createDevice","bind","onSeriesValue","deviceData","reading","hasResultReceiver","oneReadingPerConnection","deliveredEcgFileNames","deliveredFileNames","clearDeviceHistory","resultPolicy","resultPolicies","clockSync","onDeviceDisconnected","removeDeviceFromFoundedDevices","set","recordOvokMetric","queueAutoConnect","IntegratedDevices","TRASENSE_S9","values","candidate","connect","select","selected","Error","Math","max","exports"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/services/bt-manager.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_reactNativeBlePlx","_sentryLogger","_telemetry","_bluetoothError","_integratedDevices","_errorCallbackPayload","_deviceCreator","_seriesRecorder","bluetoothErrorCallback","error","errorCallbackPayload","toBluetoothError","SCAN_RETRY_DELAY_MS","SERIES_IDLE_CHECK_MS","BTManager","MAX_DEVICES","devices","Map","forgottenDeviceIds","Set","eventSubscriptions","scanGeneration","scanActive","scanStarting","destroyed","autoConnectCandidates","bluetoothEnablePrompted","constructor","bleManager","acceptedDevices","options","deviceCreator","DeviceCreator","backgroundScanEnabled","backgroundEnabled","series","SeriesRecorder","storage","seriesStorage","getOwnerKey","setAutoConnect","enabledOrOptions","delayMs","onDeviceSelectionRequired","enabled","nextDelayMs","nextSelectionHandler","autoConnect","autoConnectDelayMs","clear","autoConnectTimer","clearTimeout","undefined","destroy","sentryLogger","stopScan","getOpenSeries","getOpen","subscribeOpenSeries","listener","subscribe","startScan","stateChangeListener","seriesTimer","setInterval","closeIdle","generation","subscription","onStateChange","state","State","PoweredOn","startDeviceScan","stopDeviceScan","PoweredOff","onErrorCallback","Platform","OS","Linking","sendIntent","push","setBackgroundScanEnabled","restartScan","haltScan","forEach","sub","remove","clearInterval","deliverTo","onDeviceFoundCallback","onResultCallback","onDeviceStatusChangedCallback","onConnectionEventCallback","device","disconnect","pauseScan","resumeScan","clearScanTimers","removeStateChangeListener","scanRetryTimer","scanRestartTimer","scheduleScanRetry","setTimeout","index","indexOf","splice","serviceUUIDs","scanServiceUUIDs","length","scanFailed","scanMode","ScanMode","LowPower","Balanced","onScanResult","addOvokSpanEvent","platform","background","restoreDevices","delete","id","disconnectDevice","deviceId","get","forget","add","onDeviceFound","callback","onError","onDeviceStatusChanged","onConnectionEvent","onResult","errorCode","code","advertisedName","name","trim","localName","has","deviceName","getDeviceName","manufacturerData","size","currentSize","deviceClass","createDevice","bind","onSeriesValue","deviceData","reading","hasResultReceiver","oneReadingPerConnection","deliveredEcgFileNames","deliveredFileNames","clearDeviceHistory","resultPolicy","resultPolicies","clockSync","onDeviceDisconnected","removeDeviceFromFoundedDevices","set","recordOvokMetric","queueAutoConnect","IntegratedDevices","TRASENSE_S9","values","candidate","connect","select","selected","Error","Math","max","exports"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/services/bt-manager.ts"],"mappings":"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","ignoreList":[]}
@@ -33,8 +33,9 @@ class SeriesRecorder {
33
33
  return false;
34
34
  }
35
35
  const key = `${deviceData.id}:${reading.measurementTypeKey}`;
36
+ const ownerKey = this.options.getOwnerKey?.();
36
37
  let series = this.open.get(key);
37
- if (series && (now - series.updatedAt >= _seriesSlots.IDLE_CLOSE_MS || now - series.start >= _seriesSlots.MAX_SLOTS * _seriesSlots.SLOT_MS)) {
38
+ if (series && (0, _seriesSlots.hasEnded)(series, now, ownerKey)) {
38
39
  this.close(key);
39
40
  series = undefined;
40
41
  }
@@ -44,7 +45,10 @@ class SeriesRecorder {
44
45
  measurementTypeKey: reading.measurementTypeKey,
45
46
  start: Math.floor(now / _seriesSlots.SLOT_MS) * _seriesSlots.SLOT_MS,
46
47
  updatedAt: now,
47
- values: {}
48
+ values: {},
49
+ ...(ownerKey && {
50
+ ownerKey
51
+ })
48
52
  };
49
53
  this.open.set(key, series);
50
54
  }
@@ -71,10 +75,10 @@ class SeriesRecorder {
71
75
  return true;
72
76
  };
73
77
 
74
- /** Closes every series that has gone quiet. `add` does it for its own; call this now and then for the rest. */
78
+ /** Closes every series that's over: quiet, full, or another account's (handed to that account). Call it now and then. */
75
79
  closeIdle = () => {
76
80
  const now = this.now();
77
- [...this.open.entries()].filter(([, series]) => now - series.updatedAt >= _seriesSlots.IDLE_CLOSE_MS).forEach(([key]) => this.close(key));
81
+ [...this.open.entries()].filter(([, series]) => (0, _seriesSlots.hasEnded)(series, now, this.options.getOwnerKey?.())).forEach(([key]) => this.close(key));
78
82
  };
79
83
 
80
84
  /** Hands closed series to `receiver`, those waiting and those still to close; `undefined` makes them wait. */
@@ -120,7 +124,7 @@ class SeriesRecorder {
120
124
  void this.store();
121
125
  };
122
126
  changed = () => {
123
- this.snapshot = [...this.open.values()].map(_seriesSlots.toOpenSeries);
127
+ this.snapshot = [...this.open.values()].filter(series => series.ownerKey === this.options.getOwnerKey?.()).map(_seriesSlots.toOpenSeries);
124
128
  this.listeners.forEach(listener => listener());
125
129
  };
126
130
  storeSoon = () => {
@@ -1 +1 @@
1
- {"version":3,"names":["_seriesSlots","require","STORE_EVERY_MS","DEFAULT_SERIES_KEY","SeriesRecorder","open","Map","closed","listeners","Set","snapshot","storing","Promise","resolve","constructor","options","restored","restore","add","deviceData","reading","now","isLive","key","id","measurementTypeKey","series","get","updatedAt","IDLE_CLOSE_MS","start","MAX_SLOTS","SLOT_MS","close","undefined","Math","floor","values","set","current","slot","Object","entries","forEach","property","value","Number","isFinite","NOT_MEASURED","has","length","push","changed","storeSoon","closeIdle","filter","deliverTo","receiver","then","deliver","getOpen","subscribe","listener","delete","destroy","clearTimeout","storeTimer","store","Date","slotCount","ready","toResult","map","toOpenSeries","storage","setTimeout","state","setItem","storageKey","JSON","stringify","catch","readStored","exports"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/services/series-recorder.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_seriesSlots","require","STORE_EVERY_MS","DEFAULT_SERIES_KEY","SeriesRecorder","open","Map","closed","listeners","Set","snapshot","storing","Promise","resolve","constructor","options","restored","restore","add","deviceData","reading","now","isLive","key","id","measurementTypeKey","ownerKey","getOwnerKey","series","get","hasEnded","close","undefined","start","Math","floor","SLOT_MS","updatedAt","values","set","current","slot","Object","entries","forEach","property","value","Number","isFinite","NOT_MEASURED","has","length","push","changed","storeSoon","closeIdle","filter","deliverTo","receiver","then","deliver","getOpen","subscribe","listener","delete","destroy","clearTimeout","storeTimer","store","Date","slotCount","ready","toResult","map","toOpenSeries","storage","setTimeout","state","setItem","storageKey","JSON","stringify","catch","readStored","IDLE_CLOSE_MS","exports"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/services/series-recorder.ts"],"mappings":"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","ignoreList":[]}