@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
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import { IDLE_CLOSE_MS, isLive, MAX_SLOTS, NOT_MEASURED, readStored, slotCount, SLOT_MS, toOpenSeries, toResult } from "./series-slots.js";
3
+ import { hasEnded, IDLE_CLOSE_MS, isLive, NOT_MEASURED, readStored, slotCount, SLOT_MS, toOpenSeries, toResult } from "./series-slots.js";
4
4
 
5
5
  // ponytail: open series are stored at most this often, so a killed app loses up to 30 s of values; store on
6
6
  // every value if that matters more than the writes.
@@ -30,8 +30,9 @@ class SeriesRecorder {
30
30
  return false;
31
31
  }
32
32
  const key = `${deviceData.id}:${reading.measurementTypeKey}`;
33
+ const ownerKey = this.options.getOwnerKey?.();
33
34
  let series = this.open.get(key);
34
- if (series && (now - series.updatedAt >= IDLE_CLOSE_MS || now - series.start >= MAX_SLOTS * SLOT_MS)) {
35
+ if (series && hasEnded(series, now, ownerKey)) {
35
36
  this.close(key);
36
37
  series = undefined;
37
38
  }
@@ -41,7 +42,10 @@ class SeriesRecorder {
41
42
  measurementTypeKey: reading.measurementTypeKey,
42
43
  start: Math.floor(now / SLOT_MS) * SLOT_MS,
43
44
  updatedAt: now,
44
- values: {}
45
+ values: {},
46
+ ...(ownerKey && {
47
+ ownerKey
48
+ })
45
49
  };
46
50
  this.open.set(key, series);
47
51
  }
@@ -68,10 +72,10 @@ class SeriesRecorder {
68
72
  return true;
69
73
  };
70
74
 
71
- /** Closes every series that has gone quiet. `add` does it for its own; call this now and then for the rest. */
75
+ /** Closes every series that's over: quiet, full, or another account's (handed to that account). Call it now and then. */
72
76
  closeIdle = () => {
73
77
  const now = this.now();
74
- [...this.open.entries()].filter(([, series]) => now - series.updatedAt >= IDLE_CLOSE_MS).forEach(([key]) => this.close(key));
78
+ [...this.open.entries()].filter(([, series]) => hasEnded(series, now, this.options.getOwnerKey?.())).forEach(([key]) => this.close(key));
75
79
  };
76
80
 
77
81
  /** Hands closed series to `receiver`, those waiting and those still to close; `undefined` makes them wait. */
@@ -117,7 +121,7 @@ class SeriesRecorder {
117
121
  void this.store();
118
122
  };
119
123
  changed = () => {
120
- this.snapshot = [...this.open.values()].map(toOpenSeries);
124
+ this.snapshot = [...this.open.values()].filter(series => series.ownerKey === this.options.getOwnerKey?.()).map(toOpenSeries);
121
125
  this.listeners.forEach(listener => listener());
122
126
  };
123
127
  storeSoon = () => {
@@ -1 +1 @@
1
- {"version":3,"names":["IDLE_CLOSE_MS","isLive","MAX_SLOTS","NOT_MEASURED","readStored","slotCount","SLOT_MS","toOpenSeries","toResult","STORE_EVERY_MS","DEFAULT_SERIES_KEY","SeriesRecorder","open","Map","closed","listeners","Set","snapshot","storing","Promise","resolve","constructor","options","restored","restore","add","deviceData","reading","now","key","id","measurementTypeKey","series","get","updatedAt","start","close","undefined","Math","floor","values","set","current","slot","Object","entries","forEach","property","value","Number","isFinite","has","length","push","changed","storeSoon","closeIdle","filter","deliverTo","receiver","then","deliver","getOpen","subscribe","listener","delete","destroy","clearTimeout","storeTimer","store","Date","ready","map","storage","setTimeout","state","setItem","storageKey","JSON","stringify","catch"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/services/series-recorder.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["hasEnded","IDLE_CLOSE_MS","isLive","NOT_MEASURED","readStored","slotCount","SLOT_MS","toOpenSeries","toResult","STORE_EVERY_MS","DEFAULT_SERIES_KEY","SeriesRecorder","open","Map","closed","listeners","Set","snapshot","storing","Promise","resolve","constructor","options","restored","restore","add","deviceData","reading","now","key","id","measurementTypeKey","ownerKey","getOwnerKey","series","get","close","undefined","start","Math","floor","updatedAt","values","set","current","slot","Object","entries","forEach","property","value","Number","isFinite","has","length","push","changed","storeSoon","closeIdle","filter","deliverTo","receiver","then","deliver","getOpen","subscribe","listener","delete","destroy","clearTimeout","storeTimer","store","Date","ready","map","storage","setTimeout","state","setItem","storageKey","JSON","stringify","catch"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/services/series-recorder.ts"],"mappings":"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","ignoreList":[]}
@@ -15,6 +15,9 @@ const NOT_MEASURED = new Set(["memorySlot"]);
15
15
 
16
16
  /** Whether a reading is a live value rather than a stored record dated earlier. */
17
17
  const isLive = (reading, now) => !(reading.recordedAt instanceof Date) || Math.abs(now - reading.recordedAt.getTime()) <= LIVE_TOLERANCE_MS;
18
+
19
+ /** Whether a series takes no more values: it went quiet, is full, or was recorded for another account. */
20
+ const hasEnded = (series, now, ownerKey) => series.ownerKey !== ownerKey || now - series.updatedAt >= IDLE_CLOSE_MS || now - series.start >= MAX_SLOTS * SLOT_MS;
18
21
  const slotCount = series => Math.max(0, ...Object.values(series.values).map(values => values.length));
19
22
 
20
23
  /** Every property's values, all as long as the series. */
@@ -57,7 +60,10 @@ const toResult = series => {
57
60
  start,
58
61
  periodMs: SLOT_MS,
59
62
  values
60
- }
63
+ },
64
+ ...(series.ownerKey && {
65
+ recordedFor: series.ownerKey
66
+ })
61
67
  };
62
68
  };
63
69
 
@@ -81,5 +87,5 @@ const readStored = async (storage, key) => {
81
87
  return undefined;
82
88
  }
83
89
  };
84
- export { IDLE_CLOSE_MS, isLive, MAX_SLOTS, NOT_MEASURED, readStored, slotCount, SLOT_MS, toOpenSeries, toResult };
90
+ export { hasEnded, IDLE_CLOSE_MS, isLive, MAX_SLOTS, NOT_MEASURED, readStored, slotCount, SLOT_MS, toOpenSeries, toResult };
85
91
  //# sourceMappingURL=series-slots.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["SLOT_MS","MAX_SLOTS","IDLE_CLOSE_MS","LIVE_TOLERANCE_MS","NOT_MEASURED","Set","isLive","reading","now","recordedAt","Date","Math","abs","getTime","slotCount","series","max","Object","values","map","length","paddedValues","fromEntries","entries","property","Array","fill","lastValue","slot","value","undefined","lastValues","flatMap","last","meanValues","slots","present","filter","reduce","total","toResult","start","id","deviceData","sn","measurementTypeKey","toISOString","data","periodMs","toOpenSeries","updatedAt","latest","readStored","storage","key","stored","getItem","JSON","parse"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/services/series-slots.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["SLOT_MS","MAX_SLOTS","IDLE_CLOSE_MS","LIVE_TOLERANCE_MS","NOT_MEASURED","Set","isLive","reading","now","recordedAt","Date","Math","abs","getTime","hasEnded","series","ownerKey","updatedAt","start","slotCount","max","Object","values","map","length","paddedValues","fromEntries","entries","property","Array","fill","lastValue","slot","value","undefined","lastValues","flatMap","last","meanValues","slots","present","filter","reduce","total","toResult","id","deviceData","sn","measurementTypeKey","toISOString","data","periodMs","recordedFor","toOpenSeries","latest","readStored","storage","key","stored","getItem","JSON","parse"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/services/series-slots.ts"],"mappings":"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","ignoreList":[]}
@@ -11,6 +11,9 @@ import { finishedHourWindows, toHourlySeries } from "./hourly-series.js";
11
11
  */
12
12
  const getHealthKitSeries = async (typeIdentifier, startDate) => {
13
13
  const unit = healthUnitFor(typeIdentifier);
14
+
15
+ // HealthKit gives a percentage as a fraction (0.97); a reading of it says 97 %, as a single sample's does.
16
+ const scale = unit === "%" ? 100 : 1;
14
17
  const minutes = [];
15
18
  for (const {
16
19
  from,
@@ -26,7 +29,7 @@ const getHealthKitSeries = async (typeIdentifier, startDate) => {
26
29
  if (value !== undefined) {
27
30
  minutes.push({
28
31
  start: new Date(from.getTime() + index * SERIES_SLOT_MS),
29
- value
32
+ value: value * scale
30
33
  });
31
34
  }
32
35
  });
@@ -1 +1 @@
1
- {"version":3,"names":["Healthkit","HKStatisticsOptions","SERIES_SLOT_MS","healthUnitFor","finishedHourWindows","toHourlySeries","getHealthKitSeries","typeIdentifier","startDate","unit","minutes","from","to","statistics","queryStatisticsCollectionForQuantity","discreteAverage","minute","forEach","statistic","index","value","averageQuantity","quantity","undefined","push","start","Date","getTime","data","anchor"],"sourceRoot":"../../../../../src","sources":["modules/data-sync/utils/healthkit-series.ts"],"mappings":";;AAAA,OAAOA,SAAS,IAA8BC,mBAAmB,QAAQ,oCAAoC;AAE7G,SAASC,cAAc,QAAQ,iBAAc;AAG7C,SAASC,aAAa,QAAQ,mBAAgB;AAC9C,SAASC,mBAAmB,EAAeC,cAAc,QAAQ,oBAAiB;;AAElF;AACA;AACA;AACA;AACA,MAAMC,kBAAkB,GAAG,MAAAA,CACzBC,cAAwC,EACxCC,SAAe,KAC8C;EAC7D,MAAMC,IAAI,GAAGN,aAAa,CAACI,cAAc,CAAC;EAC1C,MAAMG,OAAsB,GAAG,EAAE;EAEjC,KAAK,MAAM;IAAEC,IAAI;IAAEC;EAAG,CAAC,IAAIR,mBAAmB,CAACI,SAAS,CAAC,EAAE;IACzD,MAAMK,UAAU,GAAG,MAAMb,SAAS,CAACc,oCAAoC,CACrEP,cAAc,EACd,CAACN,mBAAmB,CAACc,eAAe,CAAC,EACrCJ,IAAI,EACJ;MAAEK,MAAM,EAAE;IAAE,CAAC,EACbL,IAAI,EACJC,EAAE,EACFH,IACF,CAAC;;IAED;IACAI,UAAU,CAACI,OAAO,CAAC,CAACC,SAAS,EAAEC,KAAK,KAAK;MACvC,MAAMC,KAAK,GAAGF,SAAS,CAACG,eAAe,EAAEC,QAAQ;MAEjD,IAAIF,KAAK,KAAKG,SAAS,EAAE;QACvBb,OAAO,CAACc,IAAI,CAAC;UAAEC,KAAK,EAAE,IAAIC,IAAI,CAACf,IAAI,CAACgB,OAAO,CAAC,CAAC,GAAGR,KAAK,GAAGjB,cAAc,CAAC;UAAEkB;QAAM,CAAC,CAAC;MACnF;IACF,CAAC,CAAC;EACJ;EAEA,OAAO;IAAEQ,IAAI,EAAEvB,cAAc,CAACE,cAAc,EAAEE,IAAI,IAAI,GAAG,EAAEC,OAAO,CAAC;IAAEmB,MAAM,EAAEN;EAAU,CAAC;AAC1F,CAAC;AAED,SAASjB,kBAAkB","ignoreList":[]}
1
+ {"version":3,"names":["Healthkit","HKStatisticsOptions","SERIES_SLOT_MS","healthUnitFor","finishedHourWindows","toHourlySeries","getHealthKitSeries","typeIdentifier","startDate","unit","scale","minutes","from","to","statistics","queryStatisticsCollectionForQuantity","discreteAverage","minute","forEach","statistic","index","value","averageQuantity","quantity","undefined","push","start","Date","getTime","data","anchor"],"sourceRoot":"../../../../../src","sources":["modules/data-sync/utils/healthkit-series.ts"],"mappings":";;AAAA,OAAOA,SAAS,IAA8BC,mBAAmB,QAAQ,oCAAoC;AAE7G,SAASC,cAAc,QAAQ,iBAAc;AAG7C,SAASC,aAAa,QAAQ,mBAAgB;AAC9C,SAASC,mBAAmB,EAAeC,cAAc,QAAQ,oBAAiB;;AAElF;AACA;AACA;AACA;AACA,MAAMC,kBAAkB,GAAG,MAAAA,CACzBC,cAAwC,EACxCC,SAAe,KAC8C;EAC7D,MAAMC,IAAI,GAAGN,aAAa,CAACI,cAAc,CAAC;;EAE1C;EACA,MAAMG,KAAK,GAAGD,IAAI,KAAK,GAAG,GAAG,GAAG,GAAG,CAAC;EACpC,MAAME,OAAsB,GAAG,EAAE;EAEjC,KAAK,MAAM;IAAEC,IAAI;IAAEC;EAAG,CAAC,IAAIT,mBAAmB,CAACI,SAAS,CAAC,EAAE;IACzD,MAAMM,UAAU,GAAG,MAAMd,SAAS,CAACe,oCAAoC,CACrER,cAAc,EACd,CAACN,mBAAmB,CAACe,eAAe,CAAC,EACrCJ,IAAI,EACJ;MAAEK,MAAM,EAAE;IAAE,CAAC,EACbL,IAAI,EACJC,EAAE,EACFJ,IACF,CAAC;;IAED;IACAK,UAAU,CAACI,OAAO,CAAC,CAACC,SAAS,EAAEC,KAAK,KAAK;MACvC,MAAMC,KAAK,GAAGF,SAAS,CAACG,eAAe,EAAEC,QAAQ;MAEjD,IAAIF,KAAK,KAAKG,SAAS,EAAE;QACvBb,OAAO,CAACc,IAAI,CAAC;UAAEC,KAAK,EAAE,IAAIC,IAAI,CAACf,IAAI,CAACgB,OAAO,CAAC,CAAC,GAAGR,KAAK,GAAGlB,cAAc,CAAC;UAAEmB,KAAK,EAAEA,KAAK,GAAGX;QAAM,CAAC,CAAC;MAClG;IACF,CAAC,CAAC;EACJ;EAEA,OAAO;IAAEmB,IAAI,EAAExB,cAAc,CAACE,cAAc,EAAEE,IAAI,IAAI,GAAG,EAAEE,OAAO,CAAC;IAAEmB,MAAM,EAAEN;EAAU,CAAC;AAC1F,CAAC;AAED,SAASlB,kBAAkB","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"bt-provider-child-wrapper.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/components/bt-provider-child-wrapper.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAsCjF,eAAO,MAAM,sBAAsB,GAAI,CAAC,SAAS,SAAS,cAAc,EAAE,EAAE,mWAqBvE,KAAK,CAAC,iBAAiB,CACxB,2BAA2B,CAAC,CAAC,CAAC,GAAG;IAAE,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAAE,CACxE,sBAqgBF,CAAC"}
1
+ {"version":3,"file":"bt-provider-child-wrapper.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/components/bt-provider-child-wrapper.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAsCjF,eAAO,MAAM,sBAAsB,GAAI,CAAC,SAAS,SAAS,cAAc,EAAE,EAAE,mWAqBvE,KAAK,CAAC,iBAAiB,CACxB,2BAA2B,CAAC,CAAC,CAAC,GAAG;IAAE,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAAE,CACxE,sBAiiBF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"background-sync-coordinator.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/background-sync/background-sync-coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,0BAA0B,EAE3B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAE1F,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAIL,iBAAiB,EAIlB,MAAM,yBAAyB,CAAC;AAEjC,+GAA+G;AAC/G,KAAK,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAAI,qBAAqB,CAAC,CAAC,CAAC,GAAG;IACxE,WAAW,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CACvC,CAAC;AAWF,cAAM,yBAAyB,CAAC,CAAC,SAAS,SAAS;IACjD,OAAO,CAAC,OAAO,CAA2B;IAC1C,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,MAAM,CAA0C;IACxD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;gBAEhC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAI1C,aAAa,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI;IAInD,OAAO,GAAI,QAAQ,cAAc,CAAC,CAAC,CAAC,KAAG,OAAO,CAAC,IAAI,CAAC,CA6BzD;IAEK,KAAK,GAAI,UAAS,0BAA+B,KAAG,OAAO,CAAC,IAAI,CAAC,CAOnE;IAEL;;;OAGG;IACI,SAAS,QAAO,SAAS,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAgB;IAEzE,4GAA4G;IACrG,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAUrD;IAEF,OAAO,CAAC,OAAO,CAeb;IAEF,OAAO,CAAC,YAAY,CAMlB;IAEF,OAAO,CAAC,UAAU,CA+GhB;CACH;AAED,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,CAAC;AACxD,YAAY,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"background-sync-coordinator.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/background-sync/background-sync-coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,0BAA0B,EAE3B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAE1F,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D,OAAO,EAGL,iBAAiB,EAGlB,MAAM,yBAAyB,CAAC;AAEjC,+GAA+G;AAC/G,KAAK,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAAI,qBAAqB,CAAC,CAAC,CAAC,GAAG;IACxE,WAAW,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CACvC,CAAC;AAWF,cAAM,yBAAyB,CAAC,CAAC,SAAS,SAAS;IACjD,OAAO,CAAC,OAAO,CAA2B;IAC1C,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,MAAM,CAA0C;IACxD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;gBAEhC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAI1C,aAAa,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI;IAInD,OAAO,GAAI,QAAQ,cAAc,CAAC,CAAC,CAAC,KAAG,OAAO,CAAC,IAAI,CAAC,CA6BzD;IAEK,KAAK,GAAI,UAAS,0BAA+B,KAAG,OAAO,CAAC,IAAI,CAAC,CAOnE;IAEL;;;OAGG;IACI,SAAS,QAAO,SAAS,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAgB;IAEzE,4GAA4G;IACrG,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAUrD;IAEF,OAAO,CAAC,OAAO,CAeb;IAEF,OAAO,CAAC,YAAY,CAMlB;IAEF,OAAO,CAAC,UAAU,CAoEhB;CACH;AAED,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,CAAC;AACxD,YAAY,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { StoredBackgroundSyncItem } from "./background-sync-queue";
2
+ import { BackgroundSyncOptions } from "../../types/background-sync";
3
+ import { DeviceKey } from "../../types/device-key";
4
+ /** Hands every due result to `onResults` at once; whether they were all accepted, and so taken off the queue. */
5
+ declare const deliverTogether: <T extends DeviceKey>(queue: StoredBackgroundSyncItem<T>[], due: StoredBackgroundSyncItem<T>[], syncOptions: BackgroundSyncOptions<T>) => Promise<boolean>;
6
+ /** Hands one result to `onResult`: off the queue once accepted, otherwise tried again later, or kept as exhausted. */
7
+ declare const deliver: <T extends DeviceKey>(queue: StoredBackgroundSyncItem<T>[], item: StoredBackgroundSyncItem<T>, syncOptions: BackgroundSyncOptions<T>) => Promise<void>;
8
+ export { deliver, deliverTogether };
9
+ //# sourceMappingURL=background-sync-delivery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"background-sync-delivery.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/background-sync/background-sync-delivery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAGxE,OAAO,EAAE,qBAAqB,EAAwB,MAAM,6BAA6B,CAAC;AAE1F,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAanD,iHAAiH;AACjH,QAAA,MAAM,eAAe,GAAU,CAAC,SAAS,SAAS,EAChD,OAAO,wBAAwB,CAAC,CAAC,CAAC,EAAE,EACpC,KAAK,wBAAwB,CAAC,CAAC,CAAC,EAAE,EAClC,aAAa,qBAAqB,CAAC,CAAC,CAAC,KACpC,OAAO,CAAC,OAAO,CAoBjB,CAAC;AAEF,sHAAsH;AACtH,QAAA,MAAM,OAAO,GAAU,CAAC,SAAS,SAAS,EACxC,OAAO,wBAAwB,CAAC,CAAC,CAAC,EAAE,EACpC,MAAM,wBAAwB,CAAC,CAAC,CAAC,EACjC,aAAa,qBAAqB,CAAC,CAAC,CAAC,KACpC,OAAO,CAAC,IAAI,CA4Cd,CAAC;AAEF,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -27,6 +27,8 @@ interface BTManagerOptions {
27
27
  * results queue in. Without it they live in memory, and a closed app loses the series it was recording.
28
28
  */
29
29
  seriesStorage?: BackgroundSyncStorage;
30
+ /** The signed-in account, which each series is recorded for. */
31
+ getOwnerKey?: () => string | undefined;
30
32
  clockSync?: ClockSyncOptions;
31
33
  /** Connect one newly discovered device automatically after the scan settles. */
32
34
  autoConnect?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"bt-manager.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/bt-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bt-manager.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/bt-manager.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,8 @@ interface SeriesRecorderOptions {
9
9
  storage?: BackgroundSyncStorage;
10
10
  storageKey?: string;
11
11
  now?: () => number;
12
+ /** The signed-in account: a series is recorded for it and queued for it, even if someone else signs in meanwhile. */
13
+ getOwnerKey?: () => string | undefined;
12
14
  }
13
15
  /**
14
16
  * Keeps each device's live values of a kind as a series of one-second slots, for a result policy of `"series"`. A
@@ -29,7 +31,7 @@ declare class SeriesRecorder {
29
31
  constructor(options?: SeriesRecorderOptions);
30
32
  /** Records a reading's values, or returns false for a stored record, which isn't part of a series. */
31
33
  add: (deviceData: DeviceData, reading: Reading) => boolean;
32
- /** Closes every series that has gone quiet. `add` does it for its own; call this now and then for the rest. */
34
+ /** Closes every series that's over: quiet, full, or another account's (handed to that account). Call it now and then. */
33
35
  closeIdle: () => void;
34
36
  /** Hands closed series to `receiver`, those waiting and those still to close; `undefined` makes them wait. */
35
37
  deliverTo: (receiver: ((result: ResultCallback<DeviceKey>) => void) | undefined) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"series-recorder.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/series-recorder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAML,OAAO,EAMR,MAAM,gBAAgB,CAAC;AAexB,UAAU,qBAAqB;IAE7B,+FAA+F;IAC/F,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,cAAM,cAAc;IAUC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAT3C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAsC;IAC3D,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;IACnD,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,QAAQ,CAA4D;IAC5E,OAAO,CAAC,UAAU,CAA4C;IAC9D,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;gBAEL,OAAO,GAAE,qBAA0B;IAIvE,sGAAsG;IAC/F,GAAG,GAAI,YAAY,UAAU,EAAE,SAAS,OAAO,KAAG,OAAO,CAmD9D;IAEF,+GAA+G;IACxG,SAAS,QAAO,IAAI,CAMzB;IAEF,8GAA8G;IACvG,SAAS,GAAI,UAAU,CAAC,CAAC,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,KAAG,IAAI,CAG5F;IAEF,sGAAsG;IAC/F,OAAO,QAAO,SAAS,UAAU,EAAE,CAAkB;IAErD,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAMrD;IAEF,+FAA+F;IACxF,OAAO,QAAO,OAAO,CAAC,IAAI,CAAC,CAKhC;IAEF,OAAO,CAAC,GAAG,CAAoD;IAE/D,OAAO,CAAC,KAAK,CAYX;IAEF,OAAO,CAAC,OAAO,CAYb;IAEF,OAAO,CAAC,OAAO,CAGb;IAEF,OAAO,CAAC,SAAS,CASf;IAEF,6EAA6E;IAC7E,OAAO,CAAC,KAAK,CAiBX;IAEF;;;OAGG;IACH,OAAO,CAAC,OAAO,CAqBb;CACH;AAED,OAAO,EAAE,cAAc,EAAE,CAAC;AAC1B,YAAY,EAAE,qBAAqB,EAAE,CAAC"}
1
+ {"version":3,"file":"series-recorder.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/series-recorder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAML,OAAO,EAMR,MAAM,gBAAgB,CAAC;AAexB,UAAU,qBAAqB;IAE7B,+FAA+F;IAC/F,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAEnB,qHAAqH;IACrH,WAAW,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CACxC;AAED;;;;;GAKG;AACH,cAAM,cAAc;IAUC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAT3C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAsC;IAC3D,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;IACnD,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,QAAQ,CAA4D;IAC5E,OAAO,CAAC,UAAU,CAA4C;IAC9D,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;gBAEL,OAAO,GAAE,qBAA0B;IAIvE,sGAAsG;IAC/F,GAAG,GAAI,YAAY,UAAU,EAAE,SAAS,OAAO,KAAG,OAAO,CAqD9D;IAEF,yHAAyH;IAClH,SAAS,QAAO,IAAI,CAMzB;IAEF,8GAA8G;IACvG,SAAS,GAAI,UAAU,CAAC,CAAC,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,KAAG,IAAI,CAG5F;IAEF,sGAAsG;IAC/F,OAAO,QAAO,SAAS,UAAU,EAAE,CAAkB;IAErD,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAMrD;IAEF,+FAA+F;IACxF,OAAO,QAAO,OAAO,CAAC,IAAI,CAAC,CAKhC;IAEF,OAAO,CAAC,GAAG,CAAoD;IAE/D,OAAO,CAAC,KAAK,CAYX;IAEF,OAAO,CAAC,OAAO,CAYb;IAEF,OAAO,CAAC,OAAO,CAGb;IAEF,OAAO,CAAC,SAAS,CASf;IAEF,6EAA6E;IAC7E,OAAO,CAAC,KAAK,CAiBX;IAEF;;;OAGG;IACH,OAAO,CAAC,OAAO,CAqBb;CACH;AAED,OAAO,EAAE,cAAc,EAAE,CAAC;AAC1B,YAAY,EAAE,qBAAqB,EAAE,CAAC"}
@@ -17,6 +17,7 @@ type Reading = {
17
17
  /** A series as it is kept and stored: plain JSON. */
18
18
  interface RecordingSeries {
19
19
  deviceData: DeviceData;
20
+ ownerKey?: string;
20
21
  measurementTypeKey: MeasurementTypeKey;
21
22
  start: number;
22
23
  updatedAt: number;
@@ -24,6 +25,8 @@ interface RecordingSeries {
24
25
  }
25
26
  /** Whether a reading is a live value rather than a stored record dated earlier. */
26
27
  declare const isLive: (reading: Reading, now: number) => boolean;
28
+ /** Whether a series takes no more values: it went quiet, is full, or was recorded for another account. */
29
+ declare const hasEnded: (series: RecordingSeries, now: number, ownerKey: string | undefined) => boolean;
27
30
  declare const slotCount: (series: RecordingSeries) => number;
28
31
  /** A closed series as a result: its values in `series`, their means in `data`. */
29
32
  declare const toResult: (series: RecordingSeries) => ResultCallback<DeviceKey>;
@@ -31,6 +34,6 @@ declare const toResult: (series: RecordingSeries) => ResultCallback<DeviceKey>;
31
34
  declare const toOpenSeries: (series: RecordingSeries) => OpenSeries;
32
35
  /** What an earlier run stored, or `undefined` when nothing readable was. */
33
36
  declare const readStored: <T>(storage: BackgroundSyncStorage, key: string) => Promise<T | undefined>;
34
- export { IDLE_CLOSE_MS, isLive, MAX_SLOTS, NOT_MEASURED, readStored, slotCount, SLOT_MS, toOpenSeries, toResult, };
37
+ export { hasEnded, IDLE_CLOSE_MS, isLive, MAX_SLOTS, NOT_MEASURED, readStored, slotCount, SLOT_MS, toOpenSeries, toResult, };
35
38
  export type { Reading, RecordingSeries };
36
39
  //# sourceMappingURL=series-slots.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"series-slots.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/series-slots.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAsB,MAAM,0BAA0B,CAAC;AAE9E,iGAAiG;AACjG,QAAA,MAAM,OAAO,OAAQ,CAAC;AACtB,QAAA,MAAM,SAAS,OAAQ,CAAC;AACxB,QAAA,MAAM,aAAa,QAAc,CAAC;AAMlC,gFAAgF;AAChF,QAAA,MAAM,YAAY,aAA0B,CAAC;AAE7C,KAAK,OAAO,GAAG;IAAE,kBAAkB,EAAE,kBAAkB,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEhF,qDAAqD;AACrD,UAAU,eAAe;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;CAC9C;AAID,mFAAmF;AACnF,QAAA,MAAM,MAAM,GAAI,SAAS,OAAO,EAAE,KAAK,MAAM,KAAG,OAEmB,CAAC;AAEpE,QAAA,MAAM,SAAS,GAAI,QAAQ,eAAe,KAAG,MACgC,CAAC;AA8C9E,kFAAkF;AAClF,QAAA,MAAM,QAAQ,GAAI,QAAQ,eAAe,KAAG,cAAc,CAAC,SAAS,CAcnE,CAAC;AAEF,kDAAkD;AAClD,QAAA,MAAM,YAAY,GAAI,QAAQ,eAAe,KAAG,UAQ9C,CAAC;AAEH,4EAA4E;AAC5E,QAAA,MAAM,UAAU,GAAU,CAAC,EAAE,SAAS,qBAAqB,EAAE,KAAK,MAAM,KAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAQ/F,CAAC;AAEF,OAAO,EACL,aAAa,EACb,MAAM,EACN,SAAS,EACT,YAAY,EACZ,UAAU,EACV,SAAS,EACT,OAAO,EACP,YAAY,EACZ,QAAQ,GACT,CAAC;AACF,YAAY,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"series-slots.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/series-slots.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAsB,MAAM,0BAA0B,CAAC;AAE9E,iGAAiG;AACjG,QAAA,MAAM,OAAO,OAAQ,CAAC;AACtB,QAAA,MAAM,SAAS,OAAQ,CAAC;AACxB,QAAA,MAAM,aAAa,QAAc,CAAC;AAMlC,gFAAgF;AAChF,QAAA,MAAM,YAAY,aAA0B,CAAC;AAE7C,KAAK,OAAO,GAAG;IAAE,kBAAkB,EAAE,kBAAkB,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEhF,qDAAqD;AACrD,UAAU,eAAe;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;CAC9C;AAID,mFAAmF;AACnF,QAAA,MAAM,MAAM,GAAI,SAAS,OAAO,EAAE,KAAK,MAAM,KAAG,OAEmB,CAAC;AAEpE,0GAA0G;AAC1G,QAAA,MAAM,QAAQ,GAAI,QAAQ,eAAe,EAAE,KAAK,MAAM,EAAE,UAAU,MAAM,GAAG,SAAS,KAAG,OAC+B,CAAC;AAEvH,QAAA,MAAM,SAAS,GAAI,QAAQ,eAAe,KAAG,MACgC,CAAC;AA8C9E,kFAAkF;AAClF,QAAA,MAAM,QAAQ,GAAI,QAAQ,eAAe,KAAG,cAAc,CAAC,SAAS,CAenE,CAAC;AAEF,kDAAkD;AAClD,QAAA,MAAM,YAAY,GAAI,QAAQ,eAAe,KAAG,UAQ9C,CAAC;AAEH,4EAA4E;AAC5E,QAAA,MAAM,UAAU,GAAU,CAAC,EAAE,SAAS,qBAAqB,EAAE,KAAK,MAAM,KAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAQ/F,CAAC;AAEF,OAAO,EACL,QAAQ,EACR,aAAa,EACb,MAAM,EACN,SAAS,EACT,YAAY,EACZ,UAAU,EACV,SAAS,EACT,OAAO,EACP,YAAY,EACZ,QAAQ,GACT,CAAC;AACF,YAAY,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -23,6 +23,12 @@ interface BackgroundSyncOptions<T extends DeviceKey = DeviceKey> {
23
23
  storage: BackgroundSyncStorage;
24
24
  /** Called after a result is persisted. Resolve only after the result is accepted. */
25
25
  onResult: (result: BackgroundSyncResult<T>) => Promise<void>;
26
+ /**
27
+ * Takes every result that is due at once, so a device emptying its memory is saved in a few requests rather than one
28
+ * a reading. Resolve only after all of them are accepted. When it rejects, each is delivered by `onResult` on its
29
+ * own, so one that can't be saved doesn't hold back the rest; delivering a result twice must be harmless.
30
+ */
31
+ onResults?: (results: BackgroundSyncResult<T>[]) => Promise<void>;
26
32
  /**
27
33
  * Returns the stable, opaque key for the account currently able to accept a
28
34
  * result. Required at runtime before queueing or delivering account-owned data.
@@ -1 +1 @@
1
- {"version":3,"file":"background-sync.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/background-sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAEnF,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,UAAU,qBAAqB;IAC7B,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACjD,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED,UAAU,oBAAoB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,CAC5D,SAAQ,cAAc,CAAC,CAAC,CAAC;IAEzB,kFAAkF;IAClF,EAAE,EAAE,MAAM,CAAC;IAEX,gGAAgG;IAChG,QAAQ,EAAE,MAAM,CAAC;IAEjB,wFAAwF;IACxF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,qBAAqB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS;IAE7D,qCAAqC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,mGAAmG;IACnG,OAAO,EAAE,qBAAqB,CAAC;IAE/B,qFAAqF;IACrF,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7D;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IAEvC,mEAAmE;IACnE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAEjC,qCAAqC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,sFAAsF;IACtF,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAEjC,gFAAgF;IAChF,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC;;;OAGG;IACH,OAAO,CAAC,EAAE;QACR,iBAAiB,CAAC,EAAE,wCAAwC,CAAC;KAC9D,CAAC;IAEF,kFAAkF;IAClF,aAAa,CAAC,EAAE;QACd,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;QAE9D,0EAA0E;QAC1E,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC;QAC5D,IAAI,CAAC,EACD,uBAAuB,CAAC,MAAM,CAAC,GAC/B,CAAC,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;KAC5E,CAAC;IAEF,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,iFAAiF;IACjF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,CAAC"}
1
+ {"version":3,"file":"background-sync.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/background-sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAEnF,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,UAAU,qBAAqB;IAC7B,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACjD,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED,UAAU,oBAAoB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,CAC5D,SAAQ,cAAc,CAAC,CAAC,CAAC;IAEzB,kFAAkF;IAClF,EAAE,EAAE,MAAM,CAAC;IAEX,gGAAgG;IAChG,QAAQ,EAAE,MAAM,CAAC;IAEjB,wFAAwF;IACxF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,qBAAqB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS;IAE7D,qCAAqC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,mGAAmG;IACnG,OAAO,EAAE,qBAAqB,CAAC;IAE/B,qFAAqF;IACrF,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7D;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAElE;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IAEvC,mEAAmE;IACnE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAEjC,qCAAqC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,sFAAsF;IACtF,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAEjC,gFAAgF;IAChF,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC;;;OAGG;IACH,OAAO,CAAC,EAAE;QACR,iBAAiB,CAAC,EAAE,wCAAwC,CAAC;KAC9D,CAAC;IAEF,kFAAkF;IAClF,aAAa,CAAC,EAAE;QACd,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;QAE9D,0EAA0E;QAC1E,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC;QAC5D,IAAI,CAAC,EACD,uBAAuB,CAAC,MAAM,CAAC,GAC/B,CAAC,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;KAC5E,CAAC;IAEF,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,iFAAiF;IACjF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,CAAC"}
@@ -16,6 +16,11 @@ interface ResultCallback<T extends DeviceKey> {
16
16
  * `data` then holds each property's mean, from the series' start.
17
17
  */
18
18
  series?: MeasurementSeries;
19
+ /**
20
+ * The account a series was recorded for. It closes later, perhaps after someone else signs in, and is queued for
21
+ * this account, not for whoever is signed in then.
22
+ */
23
+ recordedFor?: string;
19
24
  }
20
25
  export type { ResultCallback, ResultCallbackData };
21
26
  //# sourceMappingURL=result-callback.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"result-callback.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/result-callback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,GAClD,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,GACnB,KAAK,CAAC;AAEV,KAAK,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAAI,YAAY,CACzD,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAC/B,CAAC;AAEF,UAAU,cAAc,CAAC,CAAC,SAAS,SAAS;IAE1C,wEAAwE;IACxE,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAE5B;;;OAGG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AAED,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"result-callback.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/result-callback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,GAClD,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,GACnB,KAAK,CAAC;AAEV,KAAK,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAAI,YAAY,CACzD,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAC/B,CAAC;AAEF,UAAU,cAAc,CAAC,CAAC,SAAS,SAAS;IAE1C,wEAAwE;IACxE,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAE5B;;;OAGG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAE3B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"healthkit-series.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/data-sync/utils/healthkit-series.ts"],"names":[],"mappings":"AAAA,OAAkB,EAAE,wBAAwB,EAAuB,MAAM,oCAAoC,CAAC;AAG9G,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAKxD;;;GAGG;AACH,QAAA,MAAM,kBAAkB,GACtB,gBAAgB,wBAAwB,EACxC,WAAW,IAAI,KACd,OAAO,CAAC;IAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CA0BzD,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"healthkit-series.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/data-sync/utils/healthkit-series.ts"],"names":[],"mappings":"AAAA,OAAkB,EAAE,wBAAwB,EAAuB,MAAM,oCAAoC,CAAC;AAG9G,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAKxD;;;GAGG;AACH,QAAA,MAAM,kBAAkB,GACtB,gBAAgB,wBAAwB,EACxC,WAAW,IAAI,KACd,OAAO,CAAC;IAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CA6BzD,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bt-provider-child-wrapper.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/components/bt-provider-child-wrapper.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAsCjF,eAAO,MAAM,sBAAsB,GAAI,CAAC,SAAS,SAAS,cAAc,EAAE,EAAE,mWAqBvE,KAAK,CAAC,iBAAiB,CACxB,2BAA2B,CAAC,CAAC,CAAC,GAAG;IAAE,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAAE,CACxE,sBAqgBF,CAAC"}
1
+ {"version":3,"file":"bt-provider-child-wrapper.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/components/bt-provider-child-wrapper.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAsCjF,eAAO,MAAM,sBAAsB,GAAI,CAAC,SAAS,SAAS,cAAc,EAAE,EAAE,mWAqBvE,KAAK,CAAC,iBAAiB,CACxB,2BAA2B,CAAC,CAAC,CAAC,GAAG;IAAE,wBAAwB,CAAC,EAAE,OAAO,CAAA;CAAE,CACxE,sBAiiBF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"background-sync-coordinator.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/background-sync/background-sync-coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,0BAA0B,EAE3B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAE1F,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAIL,iBAAiB,EAIlB,MAAM,yBAAyB,CAAC;AAEjC,+GAA+G;AAC/G,KAAK,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAAI,qBAAqB,CAAC,CAAC,CAAC,GAAG;IACxE,WAAW,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CACvC,CAAC;AAWF,cAAM,yBAAyB,CAAC,CAAC,SAAS,SAAS;IACjD,OAAO,CAAC,OAAO,CAA2B;IAC1C,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,MAAM,CAA0C;IACxD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;gBAEhC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAI1C,aAAa,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI;IAInD,OAAO,GAAI,QAAQ,cAAc,CAAC,CAAC,CAAC,KAAG,OAAO,CAAC,IAAI,CAAC,CA6BzD;IAEK,KAAK,GAAI,UAAS,0BAA+B,KAAG,OAAO,CAAC,IAAI,CAAC,CAOnE;IAEL;;;OAGG;IACI,SAAS,QAAO,SAAS,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAgB;IAEzE,4GAA4G;IACrG,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAUrD;IAEF,OAAO,CAAC,OAAO,CAeb;IAEF,OAAO,CAAC,YAAY,CAMlB;IAEF,OAAO,CAAC,UAAU,CA+GhB;CACH;AAED,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,CAAC;AACxD,YAAY,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"background-sync-coordinator.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/background-sync/background-sync-coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,0BAA0B,EAE3B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAE1F,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D,OAAO,EAGL,iBAAiB,EAGlB,MAAM,yBAAyB,CAAC;AAEjC,+GAA+G;AAC/G,KAAK,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAAI,qBAAqB,CAAC,CAAC,CAAC,GAAG;IACxE,WAAW,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CACvC,CAAC;AAWF,cAAM,yBAAyB,CAAC,CAAC,SAAS,SAAS;IACjD,OAAO,CAAC,OAAO,CAA2B;IAC1C,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,MAAM,CAA0C;IACxD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;gBAEhC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAI1C,aAAa,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,IAAI;IAInD,OAAO,GAAI,QAAQ,cAAc,CAAC,CAAC,CAAC,KAAG,OAAO,CAAC,IAAI,CAAC,CA6BzD;IAEK,KAAK,GAAI,UAAS,0BAA+B,KAAG,OAAO,CAAC,IAAI,CAAC,CAOnE;IAEL;;;OAGG;IACI,SAAS,QAAO,SAAS,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAgB;IAEzE,4GAA4G;IACrG,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAUrD;IAEF,OAAO,CAAC,OAAO,CAeb;IAEF,OAAO,CAAC,YAAY,CAMlB;IAEF,OAAO,CAAC,UAAU,CAoEhB;CACH;AAED,OAAO,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,CAAC;AACxD,YAAY,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { StoredBackgroundSyncItem } from "./background-sync-queue";
2
+ import { BackgroundSyncOptions } from "../../types/background-sync";
3
+ import { DeviceKey } from "../../types/device-key";
4
+ /** Hands every due result to `onResults` at once; whether they were all accepted, and so taken off the queue. */
5
+ declare const deliverTogether: <T extends DeviceKey>(queue: StoredBackgroundSyncItem<T>[], due: StoredBackgroundSyncItem<T>[], syncOptions: BackgroundSyncOptions<T>) => Promise<boolean>;
6
+ /** Hands one result to `onResult`: off the queue once accepted, otherwise tried again later, or kept as exhausted. */
7
+ declare const deliver: <T extends DeviceKey>(queue: StoredBackgroundSyncItem<T>[], item: StoredBackgroundSyncItem<T>, syncOptions: BackgroundSyncOptions<T>) => Promise<void>;
8
+ export { deliver, deliverTogether };
9
+ //# sourceMappingURL=background-sync-delivery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"background-sync-delivery.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/background-sync/background-sync-delivery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAGxE,OAAO,EAAE,qBAAqB,EAAwB,MAAM,6BAA6B,CAAC;AAE1F,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAanD,iHAAiH;AACjH,QAAA,MAAM,eAAe,GAAU,CAAC,SAAS,SAAS,EAChD,OAAO,wBAAwB,CAAC,CAAC,CAAC,EAAE,EACpC,KAAK,wBAAwB,CAAC,CAAC,CAAC,EAAE,EAClC,aAAa,qBAAqB,CAAC,CAAC,CAAC,KACpC,OAAO,CAAC,OAAO,CAoBjB,CAAC;AAEF,sHAAsH;AACtH,QAAA,MAAM,OAAO,GAAU,CAAC,SAAS,SAAS,EACxC,OAAO,wBAAwB,CAAC,CAAC,CAAC,EAAE,EACpC,MAAM,wBAAwB,CAAC,CAAC,CAAC,EACjC,aAAa,qBAAqB,CAAC,CAAC,CAAC,KACpC,OAAO,CAAC,IAAI,CA4Cd,CAAC;AAEF,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -27,6 +27,8 @@ interface BTManagerOptions {
27
27
  * results queue in. Without it they live in memory, and a closed app loses the series it was recording.
28
28
  */
29
29
  seriesStorage?: BackgroundSyncStorage;
30
+ /** The signed-in account, which each series is recorded for. */
31
+ getOwnerKey?: () => string | undefined;
30
32
  clockSync?: ClockSyncOptions;
31
33
  /** Connect one newly discovered device automatically after the scan settles. */
32
34
  autoConnect?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"bt-manager.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/bt-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bt-manager.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/bt-manager.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,UAAU,EACV,MAAM,EAIP,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAI5D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAG9D,UAAU,gBAAgB;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;;OAGG;IACH,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;IACxC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAE7D;;;OAGG;IACH,aAAa,CAAC,EAAE,qBAAqB,CAAC;IAEtC,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACvC,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAE7B,gFAAgF;IAChF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,qFAAqF;IACrF,yBAAyB,CAAC,EAAE,CAAC,SAAS,EAAE;QACtC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAC;QACtC,MAAM,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KACtD,KAAK,IAAI,CAAC;CACZ;AAED,KAAK,iBAAiB,GAAG,IAAI,CAC3B,eAAe,EACf,IAAI,GAAG,QAAQ,GAAG,YAAY,GAAG,SAAS,CAC3C,CAAC;AAUF,cAAM,SAAS,CAAC,CAAC,SAAS,SAAS,cAAc,EAAE;IAuB/C,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAxB1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAM;IACzC,OAAO,CAAC,OAAO,CAAsD;IACrE,OAAO,CAAC,kBAAkB,CAAqB;IAE/C,OAAO,CAAC,mBAAmB,CAA2B;IACtD,OAAO,CAAC,kBAAkB,CAAsB;IAChD,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO,CAAC,aAAa,CAAmB;IACxC,OAAO,CAAC,qBAAqB,CAAU;IACvC,OAAO,CAAC,qBAAqB,CAAsD;IACnF,OAAO,CAAC,gBAAgB,CAA4C;IACpE,OAAO,CAAC,cAAc,CAA4C;IAClE,OAAO,CAAC,gBAAgB,CAA4C;IACpE,OAAO,CAAC,uBAAuB,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,WAAW,CAA6C;gBAG7C,UAAU,EAAE,UAAU,EACtB,eAAe,EAAE,CAAC,EAClB,OAAO,GAAE,gBAAqB;IAO1C,cAAc,GACnB,kBAAkB,OAAO,GAAG;QAC1B,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,yBAAyB,CAAC,EAAE,gBAAgB,CAAC,2BAA2B,CAAC,CAAC;KAC3E,EACD,UAAU,MAAM,EAChB,4BAA4B,gBAAgB,CAAC,2BAA2B,CAAC,KACxE,IAAI,CAwBL;IAEK,OAAO,aAeZ;IAEF,mGAAmG;IAC5F,aAAa,QAAO,SAAS,UAAU,EAAE,CAA0B;IAE1E,0FAA0F;IACnF,mBAAmB,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAAoC;IAE9F,SAAS,aAmEd;IAEF,+EAA+E;IACxE,wBAAwB,GAAI,SAAS,OAAO,KAAG,IAAI,CAUxD;IAEK,QAAQ,aAuBb;IAEF;;;;;OAKG;IACI,SAAS,aAQd;IAEF;;;;;OAKG;IACI,UAAU,aAOf;IAEF,OAAO,CAAC,WAAW,CAQjB;IAEF,mEAAmE;IACnE,OAAO,CAAC,QAAQ,CAOd;IAEF,OAAO,CAAC,eAAe,CAUrB;IAEF,OAAO,CAAC,iBAAiB,CASvB;IAEF,OAAO,CAAC,yBAAyB,CAgB/B;IAEF,OAAO,CAAC,eAAe,CAgErB;IAEK,cAAc,GAAI,SAAS,SAAS,MAAM,EAAE,UAKjD;IAEF,iFAAiF;IAC1E,gBAAgB,GAAU,UAAU,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC,CAW/D;IAEF,2FAA2F;IACpF,MAAM,GAAU,UAAU,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC,CAGrD;IAEK,aAAa,GAClB,WAAW,CACT,MAAM,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EACvC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,KAClB,OAAO,CAAC,IAAI,CAAC,UAIlB;IAEK,OAAO,GAAI,WAAW,CAAC,IAAI,EAAE,aAAa,KAAK,IAAI,UAGxD;IAEK,qBAAqB,GAC1B,WAAW,CAAC,IAAI,EAAE,0BAA0B,KAAK,IAAI,UAIrD;IAEK,iBAAiB,GACtB,WAAW,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,UAIhD;IAEK,QAAQ,GACb,WAAW,CAAC,IAAI,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,UAOzD;IAGF,OAAO,CAAC,gBAAgB,CAAC,CAAiD;IAC1E,OAAO,CAAC,eAAe,CAAC,CAAgC;IACxD,OAAO,CAAC,qBAAqB,CAAC,CAGX;IACnB,OAAO,CAAC,6BAA6B,CAAC,CAE5B;IACV,OAAO,CAAC,yBAAyB,CAAC,CAAwC;IAE1E,OAAO,CAAC,YAAY,CAuFlB;IAEF,OAAO,CAAC,gBAAgB,CAmDtB;IAEF,OAAO,CAAC,8BAA8B,CAYpC;CACH;AAED,OAAO,EAAE,SAAS,EAAE,CAAC;AACrB,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,CAAC"}
@@ -9,6 +9,8 @@ interface SeriesRecorderOptions {
9
9
  storage?: BackgroundSyncStorage;
10
10
  storageKey?: string;
11
11
  now?: () => number;
12
+ /** The signed-in account: a series is recorded for it and queued for it, even if someone else signs in meanwhile. */
13
+ getOwnerKey?: () => string | undefined;
12
14
  }
13
15
  /**
14
16
  * Keeps each device's live values of a kind as a series of one-second slots, for a result policy of `"series"`. A
@@ -29,7 +31,7 @@ declare class SeriesRecorder {
29
31
  constructor(options?: SeriesRecorderOptions);
30
32
  /** Records a reading's values, or returns false for a stored record, which isn't part of a series. */
31
33
  add: (deviceData: DeviceData, reading: Reading) => boolean;
32
- /** Closes every series that has gone quiet. `add` does it for its own; call this now and then for the rest. */
34
+ /** Closes every series that's over: quiet, full, or another account's (handed to that account). Call it now and then. */
33
35
  closeIdle: () => void;
34
36
  /** Hands closed series to `receiver`, those waiting and those still to close; `undefined` makes them wait. */
35
37
  deliverTo: (receiver: ((result: ResultCallback<DeviceKey>) => void) | undefined) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"series-recorder.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/series-recorder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAML,OAAO,EAMR,MAAM,gBAAgB,CAAC;AAexB,UAAU,qBAAqB;IAE7B,+FAA+F;IAC/F,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,cAAM,cAAc;IAUC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAT3C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAsC;IAC3D,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;IACnD,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,QAAQ,CAA4D;IAC5E,OAAO,CAAC,UAAU,CAA4C;IAC9D,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;gBAEL,OAAO,GAAE,qBAA0B;IAIvE,sGAAsG;IAC/F,GAAG,GAAI,YAAY,UAAU,EAAE,SAAS,OAAO,KAAG,OAAO,CAmD9D;IAEF,+GAA+G;IACxG,SAAS,QAAO,IAAI,CAMzB;IAEF,8GAA8G;IACvG,SAAS,GAAI,UAAU,CAAC,CAAC,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,KAAG,IAAI,CAG5F;IAEF,sGAAsG;IAC/F,OAAO,QAAO,SAAS,UAAU,EAAE,CAAkB;IAErD,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAMrD;IAEF,+FAA+F;IACxF,OAAO,QAAO,OAAO,CAAC,IAAI,CAAC,CAKhC;IAEF,OAAO,CAAC,GAAG,CAAoD;IAE/D,OAAO,CAAC,KAAK,CAYX;IAEF,OAAO,CAAC,OAAO,CAYb;IAEF,OAAO,CAAC,OAAO,CAGb;IAEF,OAAO,CAAC,SAAS,CASf;IAEF,6EAA6E;IAC7E,OAAO,CAAC,KAAK,CAiBX;IAEF;;;OAGG;IACH,OAAO,CAAC,OAAO,CAqBb;CACH;AAED,OAAO,EAAE,cAAc,EAAE,CAAC;AAC1B,YAAY,EAAE,qBAAqB,EAAE,CAAC"}
1
+ {"version":3,"file":"series-recorder.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/series-recorder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAML,OAAO,EAMR,MAAM,gBAAgB,CAAC;AAexB,UAAU,qBAAqB;IAE7B,+FAA+F;IAC/F,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAEnB,qHAAqH;IACrH,WAAW,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CACxC;AAED;;;;;GAKG;AACH,cAAM,cAAc;IAUC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAT3C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAsC;IAC3D,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyB;IACnD,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,QAAQ,CAA4D;IAC5E,OAAO,CAAC,UAAU,CAA4C;IAC9D,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;gBAEL,OAAO,GAAE,qBAA0B;IAIvE,sGAAsG;IAC/F,GAAG,GAAI,YAAY,UAAU,EAAE,SAAS,OAAO,KAAG,OAAO,CAqD9D;IAEF,yHAAyH;IAClH,SAAS,QAAO,IAAI,CAMzB;IAEF,8GAA8G;IACvG,SAAS,GAAI,UAAU,CAAC,CAAC,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,KAAG,IAAI,CAG5F;IAEF,sGAAsG;IAC/F,OAAO,QAAO,SAAS,UAAU,EAAE,CAAkB;IAErD,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAMrD;IAEF,+FAA+F;IACxF,OAAO,QAAO,OAAO,CAAC,IAAI,CAAC,CAKhC;IAEF,OAAO,CAAC,GAAG,CAAoD;IAE/D,OAAO,CAAC,KAAK,CAYX;IAEF,OAAO,CAAC,OAAO,CAYb;IAEF,OAAO,CAAC,OAAO,CAGb;IAEF,OAAO,CAAC,SAAS,CASf;IAEF,6EAA6E;IAC7E,OAAO,CAAC,KAAK,CAiBX;IAEF;;;OAGG;IACH,OAAO,CAAC,OAAO,CAqBb;CACH;AAED,OAAO,EAAE,cAAc,EAAE,CAAC;AAC1B,YAAY,EAAE,qBAAqB,EAAE,CAAC"}
@@ -17,6 +17,7 @@ type Reading = {
17
17
  /** A series as it is kept and stored: plain JSON. */
18
18
  interface RecordingSeries {
19
19
  deviceData: DeviceData;
20
+ ownerKey?: string;
20
21
  measurementTypeKey: MeasurementTypeKey;
21
22
  start: number;
22
23
  updatedAt: number;
@@ -24,6 +25,8 @@ interface RecordingSeries {
24
25
  }
25
26
  /** Whether a reading is a live value rather than a stored record dated earlier. */
26
27
  declare const isLive: (reading: Reading, now: number) => boolean;
28
+ /** Whether a series takes no more values: it went quiet, is full, or was recorded for another account. */
29
+ declare const hasEnded: (series: RecordingSeries, now: number, ownerKey: string | undefined) => boolean;
27
30
  declare const slotCount: (series: RecordingSeries) => number;
28
31
  /** A closed series as a result: its values in `series`, their means in `data`. */
29
32
  declare const toResult: (series: RecordingSeries) => ResultCallback<DeviceKey>;
@@ -31,6 +34,6 @@ declare const toResult: (series: RecordingSeries) => ResultCallback<DeviceKey>;
31
34
  declare const toOpenSeries: (series: RecordingSeries) => OpenSeries;
32
35
  /** What an earlier run stored, or `undefined` when nothing readable was. */
33
36
  declare const readStored: <T>(storage: BackgroundSyncStorage, key: string) => Promise<T | undefined>;
34
- export { IDLE_CLOSE_MS, isLive, MAX_SLOTS, NOT_MEASURED, readStored, slotCount, SLOT_MS, toOpenSeries, toResult, };
37
+ export { hasEnded, IDLE_CLOSE_MS, isLive, MAX_SLOTS, NOT_MEASURED, readStored, slotCount, SLOT_MS, toOpenSeries, toResult, };
35
38
  export type { Reading, RecordingSeries };
36
39
  //# sourceMappingURL=series-slots.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"series-slots.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/series-slots.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAsB,MAAM,0BAA0B,CAAC;AAE9E,iGAAiG;AACjG,QAAA,MAAM,OAAO,OAAQ,CAAC;AACtB,QAAA,MAAM,SAAS,OAAQ,CAAC;AACxB,QAAA,MAAM,aAAa,QAAc,CAAC;AAMlC,gFAAgF;AAChF,QAAA,MAAM,YAAY,aAA0B,CAAC;AAE7C,KAAK,OAAO,GAAG;IAAE,kBAAkB,EAAE,kBAAkB,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEhF,qDAAqD;AACrD,UAAU,eAAe;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;CAC9C;AAID,mFAAmF;AACnF,QAAA,MAAM,MAAM,GAAI,SAAS,OAAO,EAAE,KAAK,MAAM,KAAG,OAEmB,CAAC;AAEpE,QAAA,MAAM,SAAS,GAAI,QAAQ,eAAe,KAAG,MACgC,CAAC;AA8C9E,kFAAkF;AAClF,QAAA,MAAM,QAAQ,GAAI,QAAQ,eAAe,KAAG,cAAc,CAAC,SAAS,CAcnE,CAAC;AAEF,kDAAkD;AAClD,QAAA,MAAM,YAAY,GAAI,QAAQ,eAAe,KAAG,UAQ9C,CAAC;AAEH,4EAA4E;AAC5E,QAAA,MAAM,UAAU,GAAU,CAAC,EAAE,SAAS,qBAAqB,EAAE,KAAK,MAAM,KAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAQ/F,CAAC;AAEF,OAAO,EACL,aAAa,EACb,MAAM,EACN,SAAS,EACT,YAAY,EACZ,UAAU,EACV,SAAS,EACT,OAAO,EACP,YAAY,EACZ,QAAQ,GACT,CAAC;AACF,YAAY,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"series-slots.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/services/series-slots.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAsB,MAAM,0BAA0B,CAAC;AAE9E,iGAAiG;AACjG,QAAA,MAAM,OAAO,OAAQ,CAAC;AACtB,QAAA,MAAM,SAAS,OAAQ,CAAC;AACxB,QAAA,MAAM,aAAa,QAAc,CAAC;AAMlC,gFAAgF;AAChF,QAAA,MAAM,YAAY,aAA0B,CAAC;AAE7C,KAAK,OAAO,GAAG;IAAE,kBAAkB,EAAE,kBAAkB,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEhF,qDAAqD;AACrD,UAAU,eAAe;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;CAC9C;AAID,mFAAmF;AACnF,QAAA,MAAM,MAAM,GAAI,SAAS,OAAO,EAAE,KAAK,MAAM,KAAG,OAEmB,CAAC;AAEpE,0GAA0G;AAC1G,QAAA,MAAM,QAAQ,GAAI,QAAQ,eAAe,EAAE,KAAK,MAAM,EAAE,UAAU,MAAM,GAAG,SAAS,KAAG,OAC+B,CAAC;AAEvH,QAAA,MAAM,SAAS,GAAI,QAAQ,eAAe,KAAG,MACgC,CAAC;AA8C9E,kFAAkF;AAClF,QAAA,MAAM,QAAQ,GAAI,QAAQ,eAAe,KAAG,cAAc,CAAC,SAAS,CAenE,CAAC;AAEF,kDAAkD;AAClD,QAAA,MAAM,YAAY,GAAI,QAAQ,eAAe,KAAG,UAQ9C,CAAC;AAEH,4EAA4E;AAC5E,QAAA,MAAM,UAAU,GAAU,CAAC,EAAE,SAAS,qBAAqB,EAAE,KAAK,MAAM,KAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAQ/F,CAAC;AAEF,OAAO,EACL,QAAQ,EACR,aAAa,EACb,MAAM,EACN,SAAS,EACT,YAAY,EACZ,UAAU,EACV,SAAS,EACT,OAAO,EACP,YAAY,EACZ,QAAQ,GACT,CAAC;AACF,YAAY,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -23,6 +23,12 @@ interface BackgroundSyncOptions<T extends DeviceKey = DeviceKey> {
23
23
  storage: BackgroundSyncStorage;
24
24
  /** Called after a result is persisted. Resolve only after the result is accepted. */
25
25
  onResult: (result: BackgroundSyncResult<T>) => Promise<void>;
26
+ /**
27
+ * Takes every result that is due at once, so a device emptying its memory is saved in a few requests rather than one
28
+ * a reading. Resolve only after all of them are accepted. When it rejects, each is delivered by `onResult` on its
29
+ * own, so one that can't be saved doesn't hold back the rest; delivering a result twice must be harmless.
30
+ */
31
+ onResults?: (results: BackgroundSyncResult<T>[]) => Promise<void>;
26
32
  /**
27
33
  * Returns the stable, opaque key for the account currently able to accept a
28
34
  * result. Required at runtime before queueing or delivering account-owned data.
@@ -1 +1 @@
1
- {"version":3,"file":"background-sync.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/background-sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAEnF,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,UAAU,qBAAqB;IAC7B,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACjD,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED,UAAU,oBAAoB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,CAC5D,SAAQ,cAAc,CAAC,CAAC,CAAC;IAEzB,kFAAkF;IAClF,EAAE,EAAE,MAAM,CAAC;IAEX,gGAAgG;IAChG,QAAQ,EAAE,MAAM,CAAC;IAEjB,wFAAwF;IACxF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,qBAAqB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS;IAE7D,qCAAqC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,mGAAmG;IACnG,OAAO,EAAE,qBAAqB,CAAC;IAE/B,qFAAqF;IACrF,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7D;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IAEvC,mEAAmE;IACnE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAEjC,qCAAqC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,sFAAsF;IACtF,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAEjC,gFAAgF;IAChF,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC;;;OAGG;IACH,OAAO,CAAC,EAAE;QACR,iBAAiB,CAAC,EAAE,wCAAwC,CAAC;KAC9D,CAAC;IAEF,kFAAkF;IAClF,aAAa,CAAC,EAAE;QACd,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;QAE9D,0EAA0E;QAC1E,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC;QAC5D,IAAI,CAAC,EACD,uBAAuB,CAAC,MAAM,CAAC,GAC/B,CAAC,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;KAC5E,CAAC;IAEF,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,iFAAiF;IACjF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,CAAC"}
1
+ {"version":3,"file":"background-sync.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/background-sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAEnF,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,UAAU,qBAAqB;IAC7B,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACjD,OAAO,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED,UAAU,oBAAoB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,CAC5D,SAAQ,cAAc,CAAC,CAAC,CAAC;IAEzB,kFAAkF;IAClF,EAAE,EAAE,MAAM,CAAC;IAEX,gGAAgG;IAChG,QAAQ,EAAE,MAAM,CAAC;IAEjB,wFAAwF;IACxF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,qBAAqB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS;IAE7D,qCAAqC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,mGAAmG;IACnG,OAAO,EAAE,qBAAqB,CAAC;IAE/B,qFAAqF;IACrF,QAAQ,EAAE,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7D;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAElE;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IAEvC,mEAAmE;IACnE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAEjC,qCAAqC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,sFAAsF;IACtF,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAEjC,gFAAgF;IAChF,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC;;;OAGG;IACH,OAAO,CAAC,EAAE;QACR,iBAAiB,CAAC,EAAE,wCAAwC,CAAC;KAC9D,CAAC;IAEF,kFAAkF;IAClF,aAAa,CAAC,EAAE;QACd,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;QAE9D,0EAA0E;QAC1E,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC;QAC5D,IAAI,CAAC,EACD,uBAAuB,CAAC,MAAM,CAAC,GAC/B,CAAC,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;KAC5E,CAAC;IAEF,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,iFAAiF;IACjF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,CAAC"}
@@ -16,6 +16,11 @@ interface ResultCallback<T extends DeviceKey> {
16
16
  * `data` then holds each property's mean, from the series' start.
17
17
  */
18
18
  series?: MeasurementSeries;
19
+ /**
20
+ * The account a series was recorded for. It closes later, perhaps after someone else signs in, and is queued for
21
+ * this account, not for whoever is signed in then.
22
+ */
23
+ recordedFor?: string;
19
24
  }
20
25
  export type { ResultCallback, ResultCallbackData };
21
26
  //# sourceMappingURL=result-callback.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"result-callback.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/result-callback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,GAClD,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,GACnB,KAAK,CAAC;AAEV,KAAK,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAAI,YAAY,CACzD,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAC/B,CAAC;AAEF,UAAU,cAAc,CAAC,CAAC,SAAS,SAAS;IAE1C,wEAAwE;IACxE,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAE5B;;;OAGG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AAED,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"result-callback.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/result-callback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,GAClD,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,GACnB,KAAK,CAAC;AAEV,KAAK,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAAI,YAAY,CACzD,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAC/B,CAAC;AAEF,UAAU,cAAc,CAAC,CAAC,SAAS,SAAS;IAE1C,wEAAwE;IACxE,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAE5B;;;OAGG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAE3B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"healthkit-series.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/data-sync/utils/healthkit-series.ts"],"names":[],"mappings":"AAAA,OAAkB,EAAE,wBAAwB,EAAuB,MAAM,oCAAoC,CAAC;AAG9G,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAKxD;;;GAGG;AACH,QAAA,MAAM,kBAAkB,GACtB,gBAAgB,wBAAwB,EACxC,WAAW,IAAI,KACd,OAAO,CAAC;IAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CA0BzD,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"healthkit-series.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/data-sync/utils/healthkit-series.ts"],"names":[],"mappings":"AAAA,OAAkB,EAAE,wBAAwB,EAAuB,MAAM,oCAAoC,CAAC;AAG9G,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAKxD;;;GAGG;AACH,QAAA,MAAM,kBAAkB,GACtB,gBAAgB,wBAAwB,EACxC,WAAW,IAAI,KACd,OAAO,CAAC;IAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAE,CA6BzD,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ovok/native",
3
- "version": "1.13.0",
3
+ "version": "1.14.0",
4
4
  "description": "React native component sdk for OVOK",
5
5
  "source": "./src/index.tsx",
6
6
  "main": "./lib/commonjs/index.js",