@ovok/native 1.16.1-dev.2133 → 1.16.1-dev.2135

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 (27) hide show
  1. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js +5 -0
  2. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  3. package/lib/commonjs/modules/bt-management/utils/result-identity.js +26 -13
  4. package/lib/commonjs/modules/bt-management/utils/result-identity.js.map +1 -1
  5. package/lib/commonjs/modules/next/bluetooth/stable-hash.js +16 -7
  6. package/lib/commonjs/modules/next/bluetooth/stable-hash.js.map +1 -1
  7. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js +6 -1
  8. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  9. package/lib/module/modules/bt-management/utils/result-identity.js +24 -12
  10. package/lib/module/modules/bt-management/utils/result-identity.js.map +1 -1
  11. package/lib/module/modules/next/bluetooth/stable-hash.js +15 -6
  12. package/lib/module/modules/next/bluetooth/stable-hash.js.map +1 -1
  13. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  14. package/lib/typescript/commonjs/src/modules/bt-management/types/result-callback.d.ts +2 -0
  15. package/lib/typescript/commonjs/src/modules/bt-management/types/result-callback.d.ts.map +1 -1
  16. package/lib/typescript/commonjs/src/modules/bt-management/utils/result-identity.d.ts +5 -4
  17. package/lib/typescript/commonjs/src/modules/bt-management/utils/result-identity.d.ts.map +1 -1
  18. package/lib/typescript/commonjs/src/modules/next/bluetooth/stable-hash.d.ts +5 -2
  19. package/lib/typescript/commonjs/src/modules/next/bluetooth/stable-hash.d.ts.map +1 -1
  20. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  21. package/lib/typescript/module/src/modules/bt-management/types/result-callback.d.ts +2 -0
  22. package/lib/typescript/module/src/modules/bt-management/types/result-callback.d.ts.map +1 -1
  23. package/lib/typescript/module/src/modules/bt-management/utils/result-identity.d.ts +5 -4
  24. package/lib/typescript/module/src/modules/bt-management/utils/result-identity.d.ts.map +1 -1
  25. package/lib/typescript/module/src/modules/next/bluetooth/stable-hash.d.ts +5 -2
  26. package/lib/typescript/module/src/modules/next/bluetooth/stable-hash.d.ts.map +1 -1
  27. package/package.json +1 -1
@@ -259,6 +259,11 @@ class BTManagedDevice {
259
259
  enumerable: true,
260
260
  writable: false
261
261
  });
262
+ Object.defineProperty(result, "legacyId", {
263
+ value: (0, _resultIdentity.createLegacyResultId)(this.deviceData, data),
264
+ enumerable: true,
265
+ writable: false
266
+ });
262
267
  onResultCallback?.(result);
263
268
  };
264
269
  this.onDeviceDisconnected = onDeviceDisconnectedCallback;
@@ -1 +1 @@
1
- {"version":3,"names":["_sentryLogger","require","_telemetry","_dailyTotalDay","_builtInMeasurementTypes","_deviceVariants","_bluetoothError","_clockSync","_deviceStatus","_deviceUser","_errorCallbackPayload","_resultIdentity","_supportedMeasurementTypeKeys","_btConnectionHandler","_btDataProcessor","_pollingCommandSequencer","BTManagedDevice","connected","destroyed","resultReportedThisConnection","historyTransferActive","bondedEventReported","reportedMeasurementKinds","Set","reportedDailyTotals","historyResultCount","getSupportedMeasurementTypeKeys","declared","supportedMeasurementTypeKeys","mainServices","length","BUILT_IN_MEASUREMENT_TYPES","deviceData","name","reportsBondedEvent","handleSuccessResult","_successResult","_collectedValues","handleMeasurementEnd","policyFor","measurementTypeKey","resultPolicy","byMeasurement","default","reportResult","result","onResult","constructor","device","deviceName","onError","onErrorCallback","onDeviceStatusChanged","onDeviceStatusChangedCallback","onResultCallback","onSeriesValue","onSeriesValueCallback","onConnectionEvent","onConnectionEventCallback","onDeviceDisconnected","onDeviceDisconnectedCallback","oneReadingPerConnection","policyPicksDelivery","undefined","sentryLogger","id","localName","manufacturerData","sn","measurementTypes","clockSync","clockSyncCapabilityForDevice","variant","findDeviceVariant","String","manufacturer","model","status","addOvokSpanEvent","error","normalized","toBluetoothError","errorCode","code","errorCallbackPayload","caseType","_","data","acceptedMemorySlots","isFromAcceptedMemorySlot","policy","has","add","day","dailyTotalDay","Date","now","key","recordOvokMetric","kind","progress","current","Object","defineProperty","value","createStableResultId","enumerable","writable","destroy","connectionHandler","dataProcessor","disconnect","cancelConnection","connectInternal","clear","sequencer","createCommandSequencer","pollingSequencerFor","isHistoryTransfer","BTConnectionHandler","onStatusChanged","DeviceStatus","CONNECTED","bind","DISCONNECTED","event","onDataReceived","uuid","hexValue","processData","onDeviceInfo","info","manufacturerName","serialNumber","onServicesDiscovered","uuids","initialCommands","onCommandSent","armStuckTimeout","armCommandTimeout","isNormalDisconnect","preferredMtu","BTDataProcessor","stuckDataTimeout","onStreamStart","onMeasurementEnd","validatePackage","parsedData","collectedValues","nextCommand","frame","sendCommands","commands","commandTimeoutMs","onCommandTimeout","commandProgress","handleDependentResult","frameReader","connect","Promise","reject","Error","connectionPromise","resolve","finally","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-managed-device.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_sentryLogger","require","_telemetry","_dailyTotalDay","_builtInMeasurementTypes","_deviceVariants","_bluetoothError","_clockSync","_deviceStatus","_deviceUser","_errorCallbackPayload","_resultIdentity","_supportedMeasurementTypeKeys","_btConnectionHandler","_btDataProcessor","_pollingCommandSequencer","BTManagedDevice","connected","destroyed","resultReportedThisConnection","historyTransferActive","bondedEventReported","reportedMeasurementKinds","Set","reportedDailyTotals","historyResultCount","getSupportedMeasurementTypeKeys","declared","supportedMeasurementTypeKeys","mainServices","length","BUILT_IN_MEASUREMENT_TYPES","deviceData","name","reportsBondedEvent","handleSuccessResult","_successResult","_collectedValues","handleMeasurementEnd","policyFor","measurementTypeKey","resultPolicy","byMeasurement","default","reportResult","result","onResult","constructor","device","deviceName","onError","onErrorCallback","onDeviceStatusChanged","onDeviceStatusChangedCallback","onResultCallback","onSeriesValue","onSeriesValueCallback","onConnectionEvent","onConnectionEventCallback","onDeviceDisconnected","onDeviceDisconnectedCallback","oneReadingPerConnection","policyPicksDelivery","undefined","sentryLogger","id","localName","manufacturerData","sn","measurementTypes","clockSync","clockSyncCapabilityForDevice","variant","findDeviceVariant","String","manufacturer","model","status","addOvokSpanEvent","error","normalized","toBluetoothError","errorCode","code","errorCallbackPayload","caseType","_","data","acceptedMemorySlots","isFromAcceptedMemorySlot","policy","has","add","day","dailyTotalDay","Date","now","key","recordOvokMetric","kind","progress","current","Object","defineProperty","value","createStableResultId","enumerable","writable","createLegacyResultId","destroy","connectionHandler","dataProcessor","disconnect","cancelConnection","connectInternal","clear","sequencer","createCommandSequencer","pollingSequencerFor","isHistoryTransfer","BTConnectionHandler","onStatusChanged","DeviceStatus","CONNECTED","bind","DISCONNECTED","event","onDataReceived","uuid","hexValue","processData","onDeviceInfo","info","manufacturerName","serialNumber","onServicesDiscovered","uuids","initialCommands","onCommandSent","armStuckTimeout","armCommandTimeout","isNormalDisconnect","preferredMtu","BTDataProcessor","stuckDataTimeout","onStreamStart","onMeasurementEnd","validatePackage","parsedData","collectedValues","nextCommand","frame","sendCommands","commands","commandTimeoutMs","onCommandTimeout","commandProgress","handleDependentResult","frameReader","connect","Promise","reject","Error","connectionPromise","resolve","finally","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-managed-device.ts"],"mappings":"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","ignoreList":[]}
@@ -3,26 +3,39 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.reviveResultDates = exports.createStableResultId = void 0;
6
+ exports.reviveResultDates = exports.createStableResultId = exports.createLegacyResultId = void 0;
7
+ var _driver = require("../../next/bluetooth/driver.js");
7
8
  var _stableHash = require("../../next/bluetooth/stable-hash.js");
8
9
  /* eslint-disable import/group-exports */
9
10
 
11
+ /** Reading properties added after result ids were first issued; leaving them out keeps every earlier id. */
12
+ const ADDED_READING_PROPERTIES = new Set(["sequenceNumber", "specimen", "sampleLocation", "sensorStatus", "outOfRange", "meal", "reportedUnit", "temperatureType", "rrIntervals"]);
13
+ const identifyingData = data => Object.fromEntries(Object.entries(data).filter(([key]) => !ADDED_READING_PROPERTIES.has(key)));
14
+ const deviceIdentityOf = deviceData => deviceData.sn || deviceData.manufacturerData || deviceData.model || deviceData.name || deviceData.id;
15
+
10
16
  /**
11
- * Creates an identity that is stable when a device sends its stored history again.
12
- * Recording IDs, timestamps and indexes are retained in the canonical payload; transient
13
- * delivery metadata is deliberately not part of the key.
17
+ * Creates an identity that is stable when a device sends its stored history again, in any time zone. A reading
18
+ * without a time of its own is a new measurement each time, so it is told apart by when it arrived.
14
19
  */
15
- const createStableResultId = (deviceData, data) => {
16
- const deviceIdentity = deviceData.sn || deviceData.manufacturerData || deviceData.model || deviceData.name || deviceData.id;
17
- return `ovok:${(0, _stableHash.stableHash)({
18
- device: deviceIdentity,
19
- name: deviceData.name,
20
- data
21
- })}`;
22
- };
20
+ const createStableResultId = (deviceData, data, receivedAt = new Date()) => `ovok:${(0, _stableHash.stableHash)({
21
+ device: deviceIdentityOf(deviceData),
22
+ name: deviceData.name,
23
+ data: identifyingData(data),
24
+ ...((0, _driver.isTimestamped)(data) ? {} : {
25
+ receivedAt: receivedAt.toISOString()
26
+ })
27
+ })}`;
23
28
 
24
- /** Converts the ISO date strings of `recordedAt`, `start` and `end` fields back to `Date`s, recursively. */
29
+ /** The id SDKs before 1.16.1 gave the same reading, to find what they saved. */
25
30
  exports.createStableResultId = createStableResultId;
31
+ const createLegacyResultId = (deviceData, data) => `ovok:${(0, _stableHash.instantStableHash)({
32
+ device: deviceIdentityOf(deviceData),
33
+ name: deviceData.name,
34
+ data: identifyingData(data)
35
+ })}`;
36
+
37
+ /** Converts the ISO date strings of `recordedAt`, `start` and `end` fields back to `Date`s, recursively. */
38
+ exports.createLegacyResultId = createLegacyResultId;
26
39
  const reviveResultDates = value => {
27
40
  const revive = (current, key) => {
28
41
  if (typeof current === "string" && ["recordedAt", "start", "end"].includes(key ?? "")) {
@@ -1 +1 @@
1
- {"version":3,"names":["_stableHash","require","createStableResultId","deviceData","data","deviceIdentity","sn","manufacturerData","model","name","id","stableHash","device","exports","reviveResultDates","value","revive","current","key","includes","date","Date","Number","isNaN","getTime","Array","isArray","map","item","Object","fromEntries","entries","childKey","childValue"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/utils/result-identity.ts"],"mappings":";;;;;;AAIA,IAAAA,WAAA,GAAAC,OAAA;AAJA;;AAOA;AACA;AACA;AACA;AACA;AACO,MAAMC,oBAAoB,GAAGA,CAClCC,UAAsB,EACtBC,IAAiB,KACN;EACX,MAAMC,cAAc,GAClBF,UAAU,CAACG,EAAE,IACbH,UAAU,CAACI,gBAAgB,IAC3BJ,UAAU,CAACK,KAAK,IAChBL,UAAU,CAACM,IAAI,IACfN,UAAU,CAACO,EAAE;EAEf,OAAO,QAAQ,IAAAC,sBAAU,EAAC;IACxBC,MAAM,EAAEP,cAAc;IACtBI,IAAI,EAAEN,UAAU,CAACM,IAAI;IACrBL;EACF,CAAC,CAAC,EAAE;AACN,CAAC;;AAED;AAAAS,OAAA,CAAAX,oBAAA,GAAAA,oBAAA;AACO,MAAMY,iBAAiB,GAAOC,KAAQ,IAAQ;EACnD,MAAMC,MAAM,GAAGA,CAACC,OAAgB,EAAEC,GAAY,KAAc;IAC1D,IACE,OAAOD,OAAO,KAAK,QAAQ,IAC3B,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,CAACE,QAAQ,CAACD,GAAG,IAAI,EAAE,CAAC,EAClD;MACA,MAAME,IAAI,GAAG,IAAIC,IAAI,CAACJ,OAAO,CAAC;MAE9B,OAAOK,MAAM,CAACC,KAAK,CAACH,IAAI,CAACI,OAAO,CAAC,CAAC,CAAC,GAAGP,OAAO,GAAGG,IAAI;IACtD;IAEA,IAAIK,KAAK,CAACC,OAAO,CAACT,OAAO,CAAC,EAAE;MAC1B,OAAOA,OAAO,CAACU,GAAG,CAAEC,IAAI,IAAKZ,MAAM,CAACY,IAAI,CAAC,CAAC;IAC5C;IAEA,IAAIX,OAAO,IAAI,OAAOA,OAAO,KAAK,QAAQ,EAAE;MAC1C,OAAOY,MAAM,CAACC,WAAW,CACvBD,MAAM,CAACE,OAAO,CAACd,OAAO,CAAC,CAACU,GAAG,CAAC,CAAC,CAACK,QAAQ,EAAEC,UAAU,CAAC,KAAK,CACtDD,QAAQ,EACRhB,MAAM,CAACiB,UAAU,EAAED,QAAQ,CAAC,CAC7B,CACH,CAAC;IACH;IAEA,OAAOf,OAAO;EAChB,CAAC;EAED,OAAOD,MAAM,CAACD,KAAK,CAAC;AACtB,CAAC;AAACF,OAAA,CAAAC,iBAAA,GAAAA,iBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_driver","require","_stableHash","ADDED_READING_PROPERTIES","Set","identifyingData","data","Object","fromEntries","entries","filter","key","has","deviceIdentityOf","deviceData","sn","manufacturerData","model","name","id","createStableResultId","receivedAt","Date","stableHash","device","isTimestamped","toISOString","exports","createLegacyResultId","instantStableHash","reviveResultDates","value","revive","current","includes","date","Number","isNaN","getTime","Array","isArray","map","item","childKey","childValue"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/utils/result-identity.ts"],"mappings":"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","ignoreList":[]}
@@ -3,16 +3,21 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.stableHash = void 0;
7
- const canonicalize = value => {
6
+ exports.stableHash = exports.instantStableHash = void 0;
7
+ const padded = (value, digits = 2) => String(value).padStart(digits, "0");
8
+
9
+ /** The date as a clock on the wall reads it, which a device's stored record keeps in every time zone. */
10
+ const wallClock = date => `${date.getFullYear()}-${padded(date.getMonth() + 1)}-${padded(date.getDate())}T${padded(date.getHours())}:${padded(date.getMinutes())}:${padded(date.getSeconds())}.${padded(date.getMilliseconds(), 3)}`;
11
+ const instant = date => date.toISOString();
12
+ const canonicalize = (value, formatDate) => {
8
13
  if (value instanceof Date) {
9
- return value.toISOString();
14
+ return formatDate(value);
10
15
  }
11
16
  if (Array.isArray(value)) {
12
- return value.map(canonicalize);
17
+ return value.map(item => canonicalize(item, formatDate));
13
18
  }
14
19
  if (value && typeof value === "object") {
15
- return Object.fromEntries(Object.entries(value).sort(([left], [right]) => left.localeCompare(right)).map(([key, nested]) => [key, canonicalize(nested)]));
20
+ return Object.fromEntries(Object.entries(value).sort(([left], [right]) => left.localeCompare(right)).map(([key, nested]) => [key, canonicalize(nested, formatDate)]));
16
21
  }
17
22
  return value;
18
23
  };
@@ -27,7 +32,11 @@ const hash = value => {
27
32
  return `${(first >>> 0).toString(16).padStart(8, "0")}${(second >>> 0).toString(16).padStart(8, "0")}`;
28
33
  };
29
34
 
30
- /** A short hash of `value` that ignores key order and is the same on every run. */
31
- const stableHash = value => hash(JSON.stringify(canonicalize(value)));
35
+ /** A short hash of `value` that ignores key order, is the same on every run and reads dates by their wall clock. */
36
+ const stableHash = value => hash(JSON.stringify(canonicalize(value, wallClock)));
37
+
38
+ /** `stableHash` as SDKs before 1.16.1 computed it, reading dates as instants; for finding what they saved. */
32
39
  exports.stableHash = stableHash;
40
+ const instantStableHash = value => hash(JSON.stringify(canonicalize(value, instant)));
41
+ exports.instantStableHash = instantStableHash;
33
42
  //# sourceMappingURL=stable-hash.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["canonicalize","value","Date","toISOString","Array","isArray","map","Object","fromEntries","entries","sort","left","right","localeCompare","key","nested","hash","first","second","index","length","code","charCodeAt","Math","imul","toString","padStart","stableHash","JSON","stringify","exports"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/stable-hash.ts"],"mappings":";;;;;;AAAA,MAAMA,YAAY,GAAIC,KAAc,IAAc;EAChD,IAAIA,KAAK,YAAYC,IAAI,EAAE;IACzB,OAAOD,KAAK,CAACE,WAAW,CAAC,CAAC;EAC5B;EAEA,IAAIC,KAAK,CAACC,OAAO,CAACJ,KAAK,CAAC,EAAE;IACxB,OAAOA,KAAK,CAACK,GAAG,CAACN,YAAY,CAAC;EAChC;EAEA,IAAIC,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IACtC,OAAOM,MAAM,CAACC,WAAW,CACvBD,MAAM,CAACE,OAAO,CAACR,KAAK,CAAC,CAClBS,IAAI,CAAC,CAAC,CAACC,IAAI,CAAC,EAAE,CAACC,KAAK,CAAC,KAAKD,IAAI,CAACE,aAAa,CAACD,KAAK,CAAC,CAAC,CACpDN,GAAG,CAAC,CAAC,CAACQ,GAAG,EAAEC,MAAM,CAAC,KAAK,CAACD,GAAG,EAAEd,YAAY,CAACe,MAAM,CAAC,CAAC,CACvD,CAAC;EACH;EAEA,OAAOd,KAAK;AACd,CAAC;AAED,MAAMe,IAAI,GAAIf,KAAa,IAAa;EACtC,IAAIgB,KAAK,GAAG,UAAU;EACtB,IAAIC,MAAM,GAAG,UAAU;EAEvB,KAAK,IAAIC,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGlB,KAAK,CAACmB,MAAM,EAAED,KAAK,IAAI,CAAC,EAAE;IACpD,MAAME,IAAI,GAAGpB,KAAK,CAACqB,UAAU,CAACH,KAAK,CAAC;IAEpCF,KAAK,GAAGM,IAAI,CAACC,IAAI,CAACP,KAAK,GAAGI,IAAI,EAAE,UAAU,CAAC;IAC3CH,MAAM,GAAGK,IAAI,CAACC,IAAI,CAACN,MAAM,GAAIG,IAAI,GAAGF,KAAM,EAAE,UAAU,CAAC;EACzD;EAEA,OAAO,GAAG,CAACF,KAAK,KAAK,CAAC,EAAEQ,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CACtDR,MAAM,KAAK,CAAC,EACZO,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;AACnC,CAAC;;AAED;AACO,MAAMC,UAAU,GAAI1B,KAAc,IAAae,IAAI,CAACY,IAAI,CAACC,SAAS,CAAC7B,YAAY,CAACC,KAAK,CAAC,CAAC,CAAC;AAAC6B,OAAA,CAAAH,UAAA,GAAAA,UAAA","ignoreList":[]}
1
+ {"version":3,"names":["padded","value","digits","String","padStart","wallClock","date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","instant","toISOString","canonicalize","formatDate","Date","Array","isArray","map","item","Object","fromEntries","entries","sort","left","right","localeCompare","key","nested","hash","first","second","index","length","code","charCodeAt","Math","imul","toString","stableHash","JSON","stringify","exports","instantStableHash"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/stable-hash.ts"],"mappings":"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","ignoreList":[]}
@@ -12,7 +12,7 @@ import { clockSyncCapabilityForDevice } from "../../types/clock-sync.js";
12
12
  import { DeviceStatus } from "../../types/device-status.js";
13
13
  import { isFromAcceptedMemorySlot } from "../../utils/device-user.js";
14
14
  import { errorCallbackPayload } from "../../utils/error-callback-payload.js";
15
- import { createStableResultId } from "../../utils/result-identity.js";
15
+ import { createLegacyResultId, createStableResultId } from "../../utils/result-identity.js";
16
16
  import { supportedMeasurementTypeKeys } from "../../utils/supported-measurement-type-keys.js";
17
17
  import { BTConnectionHandler } from "./bt-connection-handler.js";
18
18
  import { BTDataProcessor } from "./bt-data-processor.js";
@@ -256,6 +256,11 @@ export class BTManagedDevice {
256
256
  enumerable: true,
257
257
  writable: false
258
258
  });
259
+ Object.defineProperty(result, "legacyId", {
260
+ value: createLegacyResultId(this.deviceData, data),
261
+ enumerable: true,
262
+ writable: false
263
+ });
259
264
  onResultCallback?.(result);
260
265
  };
261
266
  this.onDeviceDisconnected = onDeviceDisconnectedCallback;
@@ -1 +1 @@
1
- {"version":3,"names":["sentryLogger","addOvokSpanEvent","recordOvokMetric","dailyTotalDay","BUILT_IN_MEASUREMENT_TYPES","findDeviceVariant","toBluetoothError","clockSyncCapabilityForDevice","DeviceStatus","isFromAcceptedMemorySlot","errorCallbackPayload","createStableResultId","supportedMeasurementTypeKeys","BTConnectionHandler","BTDataProcessor","pollingSequencerFor","BTManagedDevice","connected","destroyed","resultReportedThisConnection","historyTransferActive","bondedEventReported","reportedMeasurementKinds","Set","reportedDailyTotals","historyResultCount","getSupportedMeasurementTypeKeys","declared","mainServices","length","deviceData","name","reportsBondedEvent","handleSuccessResult","_successResult","_collectedValues","handleMeasurementEnd","policyFor","measurementTypeKey","resultPolicy","byMeasurement","default","reportResult","result","onResult","constructor","device","deviceName","onError","onErrorCallback","onDeviceStatusChanged","onDeviceStatusChangedCallback","onResultCallback","onSeriesValue","onSeriesValueCallback","onConnectionEvent","onConnectionEventCallback","onDeviceDisconnected","onDeviceDisconnectedCallback","oneReadingPerConnection","policyPicksDelivery","undefined","id","localName","manufacturerData","sn","measurementTypes","clockSync","variant","String","manufacturer","model","status","error","normalized","errorCode","code","caseType","_","data","acceptedMemorySlots","policy","has","add","day","Date","now","key","kind","progress","current","Object","defineProperty","value","enumerable","writable","destroy","connectionHandler","dataProcessor","disconnect","cancelConnection","connectInternal","clear","sequencer","createCommandSequencer","isHistoryTransfer","onStatusChanged","CONNECTED","bind","DISCONNECTED","event","onDataReceived","uuid","hexValue","processData","onDeviceInfo","info","manufacturerName","serialNumber","onServicesDiscovered","uuids","initialCommands","onCommandSent","armStuckTimeout","armCommandTimeout","isNormalDisconnect","preferredMtu","stuckDataTimeout","onStreamStart","onMeasurementEnd","validatePackage","parsedData","collectedValues","nextCommand","frame","sendCommands","commands","commandTimeoutMs","onCommandTimeout","commandProgress","handleDependentResult","frameReader","connect","Promise","reject","Error","connectionPromise","resolve","finally"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-managed-device.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["sentryLogger","addOvokSpanEvent","recordOvokMetric","dailyTotalDay","BUILT_IN_MEASUREMENT_TYPES","findDeviceVariant","toBluetoothError","clockSyncCapabilityForDevice","DeviceStatus","isFromAcceptedMemorySlot","errorCallbackPayload","createLegacyResultId","createStableResultId","supportedMeasurementTypeKeys","BTConnectionHandler","BTDataProcessor","pollingSequencerFor","BTManagedDevice","connected","destroyed","resultReportedThisConnection","historyTransferActive","bondedEventReported","reportedMeasurementKinds","Set","reportedDailyTotals","historyResultCount","getSupportedMeasurementTypeKeys","declared","mainServices","length","deviceData","name","reportsBondedEvent","handleSuccessResult","_successResult","_collectedValues","handleMeasurementEnd","policyFor","measurementTypeKey","resultPolicy","byMeasurement","default","reportResult","result","onResult","constructor","device","deviceName","onError","onErrorCallback","onDeviceStatusChanged","onDeviceStatusChangedCallback","onResultCallback","onSeriesValue","onSeriesValueCallback","onConnectionEvent","onConnectionEventCallback","onDeviceDisconnected","onDeviceDisconnectedCallback","oneReadingPerConnection","policyPicksDelivery","undefined","id","localName","manufacturerData","sn","measurementTypes","clockSync","variant","String","manufacturer","model","status","error","normalized","errorCode","code","caseType","_","data","acceptedMemorySlots","policy","has","add","day","Date","now","key","kind","progress","current","Object","defineProperty","value","enumerable","writable","destroy","connectionHandler","dataProcessor","disconnect","cancelConnection","connectInternal","clear","sequencer","createCommandSequencer","isHistoryTransfer","onStatusChanged","CONNECTED","bind","DISCONNECTED","event","onDataReceived","uuid","hexValue","processData","onDeviceInfo","info","manufacturerName","serialNumber","onServicesDiscovered","uuids","initialCommands","onCommandSent","armStuckTimeout","armCommandTimeout","isNormalDisconnect","preferredMtu","stuckDataTimeout","onStreamStart","onMeasurementEnd","validatePackage","parsedData","collectedValues","nextCommand","frame","sendCommands","commands","commandTimeoutMs","onCommandTimeout","commandProgress","handleDependentResult","frameReader","connect","Promise","reject","Error","connectionPromise","resolve","finally"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-managed-device.ts"],"mappings":"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","ignoreList":[]}
@@ -2,20 +2,32 @@
2
2
 
3
3
  /* eslint-disable import/group-exports */
4
4
 
5
- import { stableHash } from "../../next/bluetooth/stable-hash.js";
5
+ import { isTimestamped } from "../../next/bluetooth/driver.js";
6
+ import { instantStableHash, stableHash } from "../../next/bluetooth/stable-hash.js";
7
+ /** Reading properties added after result ids were first issued; leaving them out keeps every earlier id. */
8
+ const ADDED_READING_PROPERTIES = new Set(["sequenceNumber", "specimen", "sampleLocation", "sensorStatus", "outOfRange", "meal", "reportedUnit", "temperatureType", "rrIntervals"]);
9
+ const identifyingData = data => Object.fromEntries(Object.entries(data).filter(([key]) => !ADDED_READING_PROPERTIES.has(key)));
10
+ const deviceIdentityOf = deviceData => deviceData.sn || deviceData.manufacturerData || deviceData.model || deviceData.name || deviceData.id;
11
+
6
12
  /**
7
- * Creates an identity that is stable when a device sends its stored history again.
8
- * Recording IDs, timestamps and indexes are retained in the canonical payload; transient
9
- * delivery metadata is deliberately not part of the key.
13
+ * Creates an identity that is stable when a device sends its stored history again, in any time zone. A reading
14
+ * without a time of its own is a new measurement each time, so it is told apart by when it arrived.
10
15
  */
11
- export const createStableResultId = (deviceData, data) => {
12
- const deviceIdentity = deviceData.sn || deviceData.manufacturerData || deviceData.model || deviceData.name || deviceData.id;
13
- return `ovok:${stableHash({
14
- device: deviceIdentity,
15
- name: deviceData.name,
16
- data
17
- })}`;
18
- };
16
+ export const createStableResultId = (deviceData, data, receivedAt = new Date()) => `ovok:${stableHash({
17
+ device: deviceIdentityOf(deviceData),
18
+ name: deviceData.name,
19
+ data: identifyingData(data),
20
+ ...(isTimestamped(data) ? {} : {
21
+ receivedAt: receivedAt.toISOString()
22
+ })
23
+ })}`;
24
+
25
+ /** The id SDKs before 1.16.1 gave the same reading, to find what they saved. */
26
+ export const createLegacyResultId = (deviceData, data) => `ovok:${instantStableHash({
27
+ device: deviceIdentityOf(deviceData),
28
+ name: deviceData.name,
29
+ data: identifyingData(data)
30
+ })}`;
19
31
 
20
32
  /** Converts the ISO date strings of `recordedAt`, `start` and `end` fields back to `Date`s, recursively. */
21
33
  export const reviveResultDates = value => {
@@ -1 +1 @@
1
- {"version":3,"names":["stableHash","createStableResultId","deviceData","data","deviceIdentity","sn","manufacturerData","model","name","id","device","reviveResultDates","value","revive","current","key","includes","date","Date","Number","isNaN","getTime","Array","isArray","map","item","Object","fromEntries","entries","childKey","childValue"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/utils/result-identity.ts"],"mappings":";;AAAA;;AAIA,SAASA,UAAU,QAAQ,qCAAkC;AAG7D;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,oBAAoB,GAAGA,CAClCC,UAAsB,EACtBC,IAAiB,KACN;EACX,MAAMC,cAAc,GAClBF,UAAU,CAACG,EAAE,IACbH,UAAU,CAACI,gBAAgB,IAC3BJ,UAAU,CAACK,KAAK,IAChBL,UAAU,CAACM,IAAI,IACfN,UAAU,CAACO,EAAE;EAEf,OAAO,QAAQT,UAAU,CAAC;IACxBU,MAAM,EAAEN,cAAc;IACtBI,IAAI,EAAEN,UAAU,CAACM,IAAI;IACrBL;EACF,CAAC,CAAC,EAAE;AACN,CAAC;;AAED;AACA,OAAO,MAAMQ,iBAAiB,GAAOC,KAAQ,IAAQ;EACnD,MAAMC,MAAM,GAAGA,CAACC,OAAgB,EAAEC,GAAY,KAAc;IAC1D,IACE,OAAOD,OAAO,KAAK,QAAQ,IAC3B,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,CAACE,QAAQ,CAACD,GAAG,IAAI,EAAE,CAAC,EAClD;MACA,MAAME,IAAI,GAAG,IAAIC,IAAI,CAACJ,OAAO,CAAC;MAE9B,OAAOK,MAAM,CAACC,KAAK,CAACH,IAAI,CAACI,OAAO,CAAC,CAAC,CAAC,GAAGP,OAAO,GAAGG,IAAI;IACtD;IAEA,IAAIK,KAAK,CAACC,OAAO,CAACT,OAAO,CAAC,EAAE;MAC1B,OAAOA,OAAO,CAACU,GAAG,CAAEC,IAAI,IAAKZ,MAAM,CAACY,IAAI,CAAC,CAAC;IAC5C;IAEA,IAAIX,OAAO,IAAI,OAAOA,OAAO,KAAK,QAAQ,EAAE;MAC1C,OAAOY,MAAM,CAACC,WAAW,CACvBD,MAAM,CAACE,OAAO,CAACd,OAAO,CAAC,CAACU,GAAG,CAAC,CAAC,CAACK,QAAQ,EAAEC,UAAU,CAAC,KAAK,CACtDD,QAAQ,EACRhB,MAAM,CAACiB,UAAU,EAAED,QAAQ,CAAC,CAC7B,CACH,CAAC;IACH;IAEA,OAAOf,OAAO;EAChB,CAAC;EAED,OAAOD,MAAM,CAACD,KAAK,CAAC;AACtB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["isTimestamped","instantStableHash","stableHash","ADDED_READING_PROPERTIES","Set","identifyingData","data","Object","fromEntries","entries","filter","key","has","deviceIdentityOf","deviceData","sn","manufacturerData","model","name","id","createStableResultId","receivedAt","Date","device","toISOString","createLegacyResultId","reviveResultDates","value","revive","current","includes","date","Number","isNaN","getTime","Array","isArray","map","item","childKey","childValue"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/utils/result-identity.ts"],"mappings":";;AAAA;;AAIA,SAASA,aAAa,QAAQ,gCAA6B;AAC3D,SAASC,iBAAiB,EAAEC,UAAU,QAAQ,qCAAkC;AAGhF;AACA,MAAMC,wBAAwB,GAAG,IAAIC,GAAG,CAAC,CACvC,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,MAAM,EACN,cAAc,EACd,iBAAiB,EACjB,aAAa,CACd,CAAC;AAEF,MAAMC,eAAe,GAAIC,IAAiB,IACxCC,MAAM,CAACC,WAAW,CAACD,MAAM,CAACE,OAAO,CAACH,IAAI,CAAC,CAACI,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,KAAK,CAACR,wBAAwB,CAACS,GAAG,CAACD,GAAG,CAAC,CAAC,CAAC;AAEhG,MAAME,gBAAgB,GAAIC,UAAsB,IAC9CA,UAAU,CAACC,EAAE,IACbD,UAAU,CAACE,gBAAgB,IAC3BF,UAAU,CAACG,KAAK,IAChBH,UAAU,CAACI,IAAI,IACfJ,UAAU,CAACK,EAAE;;AAEf;AACA;AACA;AACA;AACA,OAAO,MAAMC,oBAAoB,GAAGA,CAClCN,UAAsB,EACtBR,IAAiB,EACjBe,UAAgB,GAAG,IAAIC,IAAI,CAAC,CAAC,KAE7B,QAAQpB,UAAU,CAAC;EACjBqB,MAAM,EAAEV,gBAAgB,CAACC,UAAU,CAAC;EACpCI,IAAI,EAAEJ,UAAU,CAACI,IAAI;EACrBZ,IAAI,EAAED,eAAe,CAACC,IAAI,CAAC;EAC3B,IAAIN,aAAa,CAACM,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG;IAAEe,UAAU,EAAEA,UAAU,CAACG,WAAW,CAAC;EAAE,CAAC;AACzE,CAAC,CAAC,EAAE;;AAEN;AACA,OAAO,MAAMC,oBAAoB,GAAGA,CAACX,UAAsB,EAAER,IAAiB,KAC5E,QAAQL,iBAAiB,CAAC;EACxBsB,MAAM,EAAEV,gBAAgB,CAACC,UAAU,CAAC;EACpCI,IAAI,EAAEJ,UAAU,CAACI,IAAI;EACrBZ,IAAI,EAAED,eAAe,CAACC,IAAI;AAC5B,CAAC,CAAC,EAAE;;AAEN;AACA,OAAO,MAAMoB,iBAAiB,GAAOC,KAAQ,IAAQ;EACnD,MAAMC,MAAM,GAAGA,CAACC,OAAgB,EAAElB,GAAY,KAAc;IAC1D,IACE,OAAOkB,OAAO,KAAK,QAAQ,IAC3B,CAAC,YAAY,EAAE,OAAO,EAAE,KAAK,CAAC,CAACC,QAAQ,CAACnB,GAAG,IAAI,EAAE,CAAC,EAClD;MACA,MAAMoB,IAAI,GAAG,IAAIT,IAAI,CAACO,OAAO,CAAC;MAE9B,OAAOG,MAAM,CAACC,KAAK,CAACF,IAAI,CAACG,OAAO,CAAC,CAAC,CAAC,GAAGL,OAAO,GAAGE,IAAI;IACtD;IAEA,IAAII,KAAK,CAACC,OAAO,CAACP,OAAO,CAAC,EAAE;MAC1B,OAAOA,OAAO,CAACQ,GAAG,CAAEC,IAAI,IAAKV,MAAM,CAACU,IAAI,CAAC,CAAC;IAC5C;IAEA,IAAIT,OAAO,IAAI,OAAOA,OAAO,KAAK,QAAQ,EAAE;MAC1C,OAAOtB,MAAM,CAACC,WAAW,CACvBD,MAAM,CAACE,OAAO,CAACoB,OAAO,CAAC,CAACQ,GAAG,CAAC,CAAC,CAACE,QAAQ,EAAEC,UAAU,CAAC,KAAK,CACtDD,QAAQ,EACRX,MAAM,CAACY,UAAU,EAAED,QAAQ,CAAC,CAC7B,CACH,CAAC;IACH;IAEA,OAAOV,OAAO;EAChB,CAAC;EAED,OAAOD,MAAM,CAACD,KAAK,CAAC;AACtB,CAAC","ignoreList":[]}
@@ -1,14 +1,19 @@
1
1
  "use strict";
2
2
 
3
- const canonicalize = value => {
3
+ const padded = (value, digits = 2) => String(value).padStart(digits, "0");
4
+
5
+ /** The date as a clock on the wall reads it, which a device's stored record keeps in every time zone. */
6
+ const wallClock = date => `${date.getFullYear()}-${padded(date.getMonth() + 1)}-${padded(date.getDate())}T${padded(date.getHours())}:${padded(date.getMinutes())}:${padded(date.getSeconds())}.${padded(date.getMilliseconds(), 3)}`;
7
+ const instant = date => date.toISOString();
8
+ const canonicalize = (value, formatDate) => {
4
9
  if (value instanceof Date) {
5
- return value.toISOString();
10
+ return formatDate(value);
6
11
  }
7
12
  if (Array.isArray(value)) {
8
- return value.map(canonicalize);
13
+ return value.map(item => canonicalize(item, formatDate));
9
14
  }
10
15
  if (value && typeof value === "object") {
11
- return Object.fromEntries(Object.entries(value).sort(([left], [right]) => left.localeCompare(right)).map(([key, nested]) => [key, canonicalize(nested)]));
16
+ return Object.fromEntries(Object.entries(value).sort(([left], [right]) => left.localeCompare(right)).map(([key, nested]) => [key, canonicalize(nested, formatDate)]));
12
17
  }
13
18
  return value;
14
19
  };
@@ -23,6 +28,10 @@ const hash = value => {
23
28
  return `${(first >>> 0).toString(16).padStart(8, "0")}${(second >>> 0).toString(16).padStart(8, "0")}`;
24
29
  };
25
30
 
26
- /** A short hash of `value` that ignores key order and is the same on every run. */
27
- export const stableHash = value => hash(JSON.stringify(canonicalize(value)));
31
+ /** A short hash of `value` that ignores key order, is the same on every run and reads dates by their wall clock. */
32
+ const stableHash = value => hash(JSON.stringify(canonicalize(value, wallClock)));
33
+
34
+ /** `stableHash` as SDKs before 1.16.1 computed it, reading dates as instants; for finding what they saved. */
35
+ const instantStableHash = value => hash(JSON.stringify(canonicalize(value, instant)));
36
+ export { instantStableHash, stableHash };
28
37
  //# sourceMappingURL=stable-hash.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["canonicalize","value","Date","toISOString","Array","isArray","map","Object","fromEntries","entries","sort","left","right","localeCompare","key","nested","hash","first","second","index","length","code","charCodeAt","Math","imul","toString","padStart","stableHash","JSON","stringify"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/stable-hash.ts"],"mappings":";;AAAA,MAAMA,YAAY,GAAIC,KAAc,IAAc;EAChD,IAAIA,KAAK,YAAYC,IAAI,EAAE;IACzB,OAAOD,KAAK,CAACE,WAAW,CAAC,CAAC;EAC5B;EAEA,IAAIC,KAAK,CAACC,OAAO,CAACJ,KAAK,CAAC,EAAE;IACxB,OAAOA,KAAK,CAACK,GAAG,CAACN,YAAY,CAAC;EAChC;EAEA,IAAIC,KAAK,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IACtC,OAAOM,MAAM,CAACC,WAAW,CACvBD,MAAM,CAACE,OAAO,CAACR,KAAK,CAAC,CAClBS,IAAI,CAAC,CAAC,CAACC,IAAI,CAAC,EAAE,CAACC,KAAK,CAAC,KAAKD,IAAI,CAACE,aAAa,CAACD,KAAK,CAAC,CAAC,CACpDN,GAAG,CAAC,CAAC,CAACQ,GAAG,EAAEC,MAAM,CAAC,KAAK,CAACD,GAAG,EAAEd,YAAY,CAACe,MAAM,CAAC,CAAC,CACvD,CAAC;EACH;EAEA,OAAOd,KAAK;AACd,CAAC;AAED,MAAMe,IAAI,GAAIf,KAAa,IAAa;EACtC,IAAIgB,KAAK,GAAG,UAAU;EACtB,IAAIC,MAAM,GAAG,UAAU;EAEvB,KAAK,IAAIC,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGlB,KAAK,CAACmB,MAAM,EAAED,KAAK,IAAI,CAAC,EAAE;IACpD,MAAME,IAAI,GAAGpB,KAAK,CAACqB,UAAU,CAACH,KAAK,CAAC;IAEpCF,KAAK,GAAGM,IAAI,CAACC,IAAI,CAACP,KAAK,GAAGI,IAAI,EAAE,UAAU,CAAC;IAC3CH,MAAM,GAAGK,IAAI,CAACC,IAAI,CAACN,MAAM,GAAIG,IAAI,GAAGF,KAAM,EAAE,UAAU,CAAC;EACzD;EAEA,OAAO,GAAG,CAACF,KAAK,KAAK,CAAC,EAAEQ,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CACtDR,MAAM,KAAK,CAAC,EACZO,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;AACnC,CAAC;;AAED;AACA,OAAO,MAAMC,UAAU,GAAI1B,KAAc,IAAae,IAAI,CAACY,IAAI,CAACC,SAAS,CAAC7B,YAAY,CAACC,KAAK,CAAC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["padded","value","digits","String","padStart","wallClock","date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","instant","toISOString","canonicalize","formatDate","Date","Array","isArray","map","item","Object","fromEntries","entries","sort","left","right","localeCompare","key","nested","hash","first","second","index","length","code","charCodeAt","Math","imul","toString","stableHash","JSON","stringify","instantStableHash"],"sourceRoot":"../../../../../src","sources":["modules/next/bluetooth/stable-hash.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"bt-managed-device.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-managed-device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bt-managed-device.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-managed-device.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AASxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAEjF,OAAO,EAAsB,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAU7E;;;GAGG;AACH,8BAAsB,eAAe,CAAC,CAAC,SAAS,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAC/E,YAAW,gBAAgB;IAgJzB,iCAAiC;aACjB,MAAM,EAAE,MAAM;IA/IhC,wDAAwD;IACjD,EAAE,EAAE,MAAM,CAAC;IAElB,OAAO,CAAC,iBAAiB,CAAkC;IAC3D,OAAO,CAAC,iBAAiB,CAA4B;IACrD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,aAAa,CAEP;IACd,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAU;IAClD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiC;IAE9D,gHAAgH;IAChH,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAU;IAC9C,OAAO,CAAC,4BAA4B,CAAS;IAC7C,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,wBAAwB,CAAiC;IACjE,OAAO,CAAC,mBAAmB,CAAqB;IAChD,OAAO,CAAC,kBAAkB,CAAK;IAE/B,uFAAuF;IAChF,UAAU,EAAE,UAAU,CAAC;IAE9B;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAE5C;;;OAGG;IACH,SAAS,CAAC,+BAA+B,IAAI,kBAAkB,EAAE;IAQjE;;;;;;;OAOG;IACH,SAAS,CAAC,qBAAqB,CAAC,EAAE,CAChC,IAAI,EAAE,4BAA4B,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAC/D,4BAA4B,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAElE,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;IAE/D;;;;;;;;;OASG;IACH,SAAS,CAAC,sBAAsB,CAAC,EAAE,MAAM,gBAAgB,CAAC;IAE1D;;;;;;OAMG;IACH,SAAS,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;IAEpC;;;;;OAKG;IACH,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEhC,8EAA8E;IAC9E,SAAS,CAAC,kBAAkB,UAAS;IAErC;;;;;OAKG;IACH,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACrE,SAAS,CAAC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAErC,sFAAsF;IACtF,SAAS,CAAC,mBAAmB,CAC3B,cAAc,EAAE,uBAAuB,CAAC,WAAW,CAAC,EACpD,gBAAgB,EAAE,MAAM,EAAE,GACzB,IAAI,GAAG,OAAO;IAIjB,6EAA6E;IAC7E,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAEtC,4DAA4D;IACrD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,KAAK,IAAI,CAAC;IAE5D,iDAAiD;IAC1C,qBAAqB,CAAC,EAAE,CAC7B,MAAM,EAAE,YAAY,EACpB,kBAAkB,CAAC,EAAE,kBAAkB,KACpC,IAAI,CAAC;IAEV,wFAAwF;IACjF,QAAQ,CAAC,EAAE,CAChB,IAAI,EAAE,uBAAuB,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAC1D,IAAI,CAAC;IAEV,0CAA0C;IACnC,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAEzC,4FAA4F;IACrF,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAEjE,6CAA6C;IAC7C,SAAS,CAAC,SAAS,GAAI,oBAAoB,kBAAkB,KAAG,YAAY,CAGpE;IAER,2FAA2F;IAC3F,SAAS,CAAC,YAAY,GAAI,QAAQ,MAAM,KAAG,IAAI,CAG3C;;IAIF,iCAAiC;IACjB,MAAM,EAAE,MAAM,EAE9B,EACE,UAAU,EACV,OAAO,EAAE,eAAe,EACxB,qBAAqB,EAAE,6BAA6B,EACpD,QAAQ,EAAE,gBAAgB,EAC1B,aAAa,EAAE,qBAAqB,EACpC,iBAAiB,EAAE,yBAAyB,EAC5C,oBAAoB,EAAE,4BAA4B,EAClD,uBAAuB,EACvB,YAAY,GACb,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAyK1B,yEAAyE;IAClE,OAAO,aAUZ;IAEF,uEAAuE;IAChE,UAAU,sBAaf;IAEF,OAAO,CAAC,eAAe,CA2GrB;IAEF;;;;;;OAMG;IACI,OAAO,QAAO,OAAO,CAAC,IAAI,CAAC,CAkBhC;CACH"}
@@ -11,6 +11,8 @@ type ResultCallbackData<T extends DeviceKey> = OmitCaseType<MeasurementTypeForDe
11
11
  interface ResultCallback<T extends DeviceKey> {
12
12
  /** Stable identity derived from the peripheral and recorded reading. */
13
13
  id: string;
14
+ /** The id SDKs before 1.16.1 gave this reading, to recognise one they already saved. */
15
+ legacyId?: string;
14
16
  /** Device that produced the result. */
15
17
  deviceData: DeviceData;
16
18
  /** The measurement. */
@@ -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,uEAAuE;AACvE,KAAK,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAAI,YAAY,CACzD,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAC/B,CAAC;AAEF,+CAA+C;AAC/C,UAAU,cAAc,CAAC,CAAC,SAAS,SAAS;IAE1C,wEAAwE;IACxE,EAAE,EAAE,MAAM,CAAC;IAEX,uCAAuC;IACvC,UAAU,EAAE,UAAU,CAAC;IAEvB,uBAAuB;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
+ {"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,uEAAuE;AACvE,KAAK,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAAI,YAAY,CACzD,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAC/B,CAAC;AAEF,+CAA+C;AAC/C,UAAU,cAAc,CAAC,CAAC,SAAS,SAAS;IAE1C,wEAAwE;IACxE,EAAE,EAAE,MAAM,CAAC;IAEX,wFAAwF;IACxF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,uCAAuC;IACvC,UAAU,EAAE,UAAU,CAAC;IAEvB,uBAAuB;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,11 +1,12 @@
1
1
  import { Measurement } from "@ovok/core/next";
2
2
  import { DeviceData } from "../types/device-data";
3
3
  /**
4
- * Creates an identity that is stable when a device sends its stored history again.
5
- * Recording IDs, timestamps and indexes are retained in the canonical payload; transient
6
- * delivery metadata is deliberately not part of the key.
4
+ * Creates an identity that is stable when a device sends its stored history again, in any time zone. A reading
5
+ * without a time of its own is a new measurement each time, so it is told apart by when it arrived.
7
6
  */
8
- export declare const createStableResultId: (deviceData: DeviceData, data: Measurement) => string;
7
+ export declare const createStableResultId: (deviceData: DeviceData, data: Measurement, receivedAt?: Date) => string;
8
+ /** The id SDKs before 1.16.1 gave the same reading, to find what they saved. */
9
+ export declare const createLegacyResultId: (deviceData: DeviceData, data: Measurement) => string;
9
10
  /** Converts the ISO date strings of `recordedAt`, `start` and `end` fields back to `Date`s, recursively. */
10
11
  export declare const reviveResultDates: <T>(value: T) => T;
11
12
  //# sourceMappingURL=result-identity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"result-identity.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/utils/result-identity.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAC/B,YAAY,UAAU,EACtB,MAAM,WAAW,KAChB,MAaF,CAAC;AAEF,4GAA4G;AAC5G,eAAO,MAAM,iBAAiB,GAAI,CAAC,EAAE,OAAO,CAAC,KAAG,CA4B/C,CAAC"}
1
+ {"version":3,"file":"result-identity.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/utils/result-identity.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAI9C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAyBlD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAC/B,YAAY,UAAU,EACtB,MAAM,WAAW,EACjB,aAAY,IAAiB,KAC5B,MAMG,CAAC;AAEP,gFAAgF;AAChF,eAAO,MAAM,oBAAoB,GAAI,YAAY,UAAU,EAAE,MAAM,WAAW,KAAG,MAK3E,CAAC;AAEP,4GAA4G;AAC5G,eAAO,MAAM,iBAAiB,GAAI,CAAC,EAAE,OAAO,CAAC,KAAG,CA4B/C,CAAC"}
@@ -1,3 +1,6 @@
1
- /** A short hash of `value` that ignores key order and is the same on every run. */
2
- export declare const stableHash: (value: unknown) => string;
1
+ /** A short hash of `value` that ignores key order, is the same on every run and reads dates by their wall clock. */
2
+ declare const stableHash: (value: unknown) => string;
3
+ /** `stableHash` as SDKs before 1.16.1 computed it, reading dates as instants; for finding what they saved. */
4
+ declare const instantStableHash: (value: unknown) => string;
5
+ export { instantStableHash, stableHash };
3
6
  //# sourceMappingURL=stable-hash.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stable-hash.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/stable-hash.ts"],"names":[],"mappings":"AAoCA,mFAAmF;AACnF,eAAO,MAAM,UAAU,GAAI,OAAO,OAAO,KAAG,MAAmD,CAAC"}
1
+ {"version":3,"file":"stable-hash.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/stable-hash.ts"],"names":[],"mappings":"AA8CA,oHAAoH;AACpH,QAAA,MAAM,UAAU,GAAI,OAAO,OAAO,KAAG,MAA8D,CAAC;AAEpG,8GAA8G;AAC9G,QAAA,MAAM,iBAAiB,GAAI,OAAO,OAAO,KAAG,MAA4D,CAAC;AAEzG,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bt-managed-device.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-managed-device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bt-managed-device.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-managed-device.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@ type ResultCallbackData<T extends DeviceKey> = OmitCaseType<MeasurementTypeForDe
11
11
  interface ResultCallback<T extends DeviceKey> {
12
12
  /** Stable identity derived from the peripheral and recorded reading. */
13
13
  id: string;
14
+ /** The id SDKs before 1.16.1 gave this reading, to recognise one they already saved. */
15
+ legacyId?: string;
14
16
  /** Device that produced the result. */
15
17
  deviceData: DeviceData;
16
18
  /** The measurement. */
@@ -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,uEAAuE;AACvE,KAAK,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAAI,YAAY,CACzD,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAC/B,CAAC;AAEF,+CAA+C;AAC/C,UAAU,cAAc,CAAC,CAAC,SAAS,SAAS;IAE1C,wEAAwE;IACxE,EAAE,EAAE,MAAM,CAAC;IAEX,uCAAuC;IACvC,UAAU,EAAE,UAAU,CAAC;IAEvB,uBAAuB;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
+ {"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,uEAAuE;AACvE,KAAK,kBAAkB,CAAC,CAAC,SAAS,SAAS,IAAI,YAAY,CACzD,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAC/B,CAAC;AAEF,+CAA+C;AAC/C,UAAU,cAAc,CAAC,CAAC,SAAS,SAAS;IAE1C,wEAAwE;IACxE,EAAE,EAAE,MAAM,CAAC;IAEX,wFAAwF;IACxF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,uCAAuC;IACvC,UAAU,EAAE,UAAU,CAAC;IAEvB,uBAAuB;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,11 +1,12 @@
1
1
  import { Measurement } from "@ovok/core/next";
2
2
  import { DeviceData } from "../types/device-data";
3
3
  /**
4
- * Creates an identity that is stable when a device sends its stored history again.
5
- * Recording IDs, timestamps and indexes are retained in the canonical payload; transient
6
- * delivery metadata is deliberately not part of the key.
4
+ * Creates an identity that is stable when a device sends its stored history again, in any time zone. A reading
5
+ * without a time of its own is a new measurement each time, so it is told apart by when it arrived.
7
6
  */
8
- export declare const createStableResultId: (deviceData: DeviceData, data: Measurement) => string;
7
+ export declare const createStableResultId: (deviceData: DeviceData, data: Measurement, receivedAt?: Date) => string;
8
+ /** The id SDKs before 1.16.1 gave the same reading, to find what they saved. */
9
+ export declare const createLegacyResultId: (deviceData: DeviceData, data: Measurement) => string;
9
10
  /** Converts the ISO date strings of `recordedAt`, `start` and `end` fields back to `Date`s, recursively. */
10
11
  export declare const reviveResultDates: <T>(value: T) => T;
11
12
  //# sourceMappingURL=result-identity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"result-identity.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/utils/result-identity.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAC/B,YAAY,UAAU,EACtB,MAAM,WAAW,KAChB,MAaF,CAAC;AAEF,4GAA4G;AAC5G,eAAO,MAAM,iBAAiB,GAAI,CAAC,EAAE,OAAO,CAAC,KAAG,CA4B/C,CAAC"}
1
+ {"version":3,"file":"result-identity.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/utils/result-identity.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAI9C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAyBlD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAC/B,YAAY,UAAU,EACtB,MAAM,WAAW,EACjB,aAAY,IAAiB,KAC5B,MAMG,CAAC;AAEP,gFAAgF;AAChF,eAAO,MAAM,oBAAoB,GAAI,YAAY,UAAU,EAAE,MAAM,WAAW,KAAG,MAK3E,CAAC;AAEP,4GAA4G;AAC5G,eAAO,MAAM,iBAAiB,GAAI,CAAC,EAAE,OAAO,CAAC,KAAG,CA4B/C,CAAC"}
@@ -1,3 +1,6 @@
1
- /** A short hash of `value` that ignores key order and is the same on every run. */
2
- export declare const stableHash: (value: unknown) => string;
1
+ /** A short hash of `value` that ignores key order, is the same on every run and reads dates by their wall clock. */
2
+ declare const stableHash: (value: unknown) => string;
3
+ /** `stableHash` as SDKs before 1.16.1 computed it, reading dates as instants; for finding what they saved. */
4
+ declare const instantStableHash: (value: unknown) => string;
5
+ export { instantStableHash, stableHash };
3
6
  //# sourceMappingURL=stable-hash.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stable-hash.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/stable-hash.ts"],"names":[],"mappings":"AAoCA,mFAAmF;AACnF,eAAO,MAAM,UAAU,GAAI,OAAO,OAAO,KAAG,MAAmD,CAAC"}
1
+ {"version":3,"file":"stable-hash.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/next/bluetooth/stable-hash.ts"],"names":[],"mappings":"AA8CA,oHAAoH;AACpH,QAAA,MAAM,UAAU,GAAI,OAAO,OAAO,KAAG,MAA8D,CAAC;AAEpG,8GAA8G;AAC9G,QAAA,MAAM,iBAAiB,GAAI,OAAO,OAAO,KAAG,MAA4D,CAAC;AAEzG,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ovok/native",
3
- "version": "1.16.1-dev.2133+8072ba2",
3
+ "version": "1.16.1-dev.2135+4193d93",
4
4
  "description": "React native component sdk for OVOK",
5
5
  "source": "./src/index.tsx",
6
6
  "main": "./lib/commonjs/index.js",