@ovok/native 1.16.1-dev.2135 → 1.16.1-dev.2139
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.
- package/lib/commonjs/modules/bt-management/components/bt-provider-child-wrapper.js +1 -0
- package/lib/commonjs/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
- package/lib/commonjs/modules/bt-management/hooks/runtime-context.js.map +1 -1
- package/lib/commonjs/modules/bt-management/index.js +12 -0
- package/lib/commonjs/modules/bt-management/index.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/bt-manager.js +50 -0
- package/lib/commonjs/modules/bt-management/services/bt-manager.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/custom/define-custom-device.js +3 -0
- package/lib/commonjs/modules/bt-management/services/custom/define-custom-device.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-command-writer.js +4 -2
- package/lib/commonjs/modules/bt-management/services/devices/bt-command-writer.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-connection-handler.js +97 -28
- package/lib/commonjs/modules/bt-management/services/devices/bt-connection-handler.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-current-time.js +59 -0
- package/lib/commonjs/modules/bt-management/services/devices/bt-current-time.js.map +1 -0
- package/lib/commonjs/modules/bt-management/services/devices/bt-device-information.js +18 -37
- package/lib/commonjs/modules/bt-management/services/devices/bt-device-information.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js +12 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-notification-readiness.js +68 -0
- package/lib/commonjs/modules/bt-management/services/devices/bt-notification-readiness.js.map +1 -0
- package/lib/commonjs/modules/bt-management/services/devices/bt-pairing-retry.js +70 -0
- package/lib/commonjs/modules/bt-management/services/devices/bt-pairing-retry.js.map +1 -0
- package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js +14 -0
- package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-details.js +77 -0
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-details.js.map +1 -0
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-frame.js +49 -0
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-frame.js.map +1 -0
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-racp.js +89 -0
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-racp.js.map +1 -0
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose.js +35 -42
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/record-cursor.js +70 -0
- package/lib/commonjs/modules/bt-management/services/record-cursor.js.map +1 -0
- package/lib/commonjs/modules/bt-management/testing/fake-ble-manager.js +8 -0
- package/lib/commonjs/modules/bt-management/testing/fake-ble-manager.js.map +1 -1
- package/lib/commonjs/modules/bt-management/types/glucose-record-details.js +2 -0
- package/lib/commonjs/modules/bt-management/types/glucose-record-details.js.map +1 -0
- package/lib/commonjs/modules/bt-management/utils/wait.js +10 -0
- package/lib/commonjs/modules/bt-management/utils/wait.js.map +1 -0
- package/lib/commonjs/modules/next/bluetooth/ble-plx/ble-link.js +41 -4
- package/lib/commonjs/modules/next/bluetooth/ble-plx/ble-link.js.map +1 -1
- package/lib/commonjs/modules/next/bluetooth/connections.js +4 -0
- package/lib/commonjs/modules/next/bluetooth/connections.js.map +1 -1
- package/lib/commonjs/modules/next/bluetooth/driver.js +6 -0
- package/lib/commonjs/modules/next/bluetooth/driver.js.map +1 -1
- package/lib/commonjs/modules/next/bluetooth/react-native/ovok-sink.js +12 -1
- package/lib/commonjs/modules/next/bluetooth/react-native/ovok-sink.js.map +1 -1
- package/lib/commonjs/modules/next/bluetooth/readings.js +2 -1
- package/lib/commonjs/modules/next/bluetooth/readings.js.map +1 -1
- package/lib/module/modules/bt-management/components/bt-provider-child-wrapper.js +1 -0
- package/lib/module/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
- package/lib/module/modules/bt-management/hooks/runtime-context.js.map +1 -1
- package/lib/module/modules/bt-management/index.js +1 -0
- package/lib/module/modules/bt-management/index.js.map +1 -1
- package/lib/module/modules/bt-management/services/bt-manager.js +50 -0
- package/lib/module/modules/bt-management/services/bt-manager.js.map +1 -1
- package/lib/module/modules/bt-management/services/custom/define-custom-device.js +3 -0
- package/lib/module/modules/bt-management/services/custom/define-custom-device.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-command-writer.js +4 -2
- package/lib/module/modules/bt-management/services/devices/bt-command-writer.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-connection-handler.js +97 -28
- package/lib/module/modules/bt-management/services/devices/bt-connection-handler.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-current-time.js +55 -0
- package/lib/module/modules/bt-management/services/devices/bt-current-time.js.map +1 -0
- package/lib/module/modules/bt-management/services/devices/bt-device-information.js +18 -37
- package/lib/module/modules/bt-management/services/devices/bt-device-information.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-managed-device.js +13 -2
- package/lib/module/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-notification-readiness.js +65 -0
- package/lib/module/modules/bt-management/services/devices/bt-notification-readiness.js.map +1 -0
- package/lib/module/modules/bt-management/services/devices/bt-pairing-retry.js +65 -0
- package/lib/module/modules/bt-management/services/devices/bt-pairing-retry.js.map +1 -0
- package/lib/module/modules/bt-management/services/devices/custom/custom.device.js +14 -0
- package/lib/module/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-details.js +72 -0
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-details.js.map +1 -0
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-frame.js +40 -0
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-frame.js.map +1 -0
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-racp.js +85 -0
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-racp.js.map +1 -0
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose.js +25 -32
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose.js.map +1 -1
- package/lib/module/modules/bt-management/services/record-cursor.js +66 -0
- package/lib/module/modules/bt-management/services/record-cursor.js.map +1 -0
- package/lib/module/modules/bt-management/testing/fake-ble-manager.js +8 -0
- package/lib/module/modules/bt-management/testing/fake-ble-manager.js.map +1 -1
- package/lib/module/modules/bt-management/types/custom-device-definition.js +4 -0
- package/lib/module/modules/bt-management/types/custom-device-definition.js.map +1 -1
- package/lib/module/modules/bt-management/types/glucose-record-details.js +2 -0
- package/lib/module/modules/bt-management/types/glucose-record-details.js.map +1 -0
- package/lib/module/modules/bt-management/utils/wait.js +5 -0
- package/lib/module/modules/bt-management/utils/wait.js.map +1 -0
- package/lib/module/modules/next/bluetooth/ble-plx/ble-link.js +41 -4
- package/lib/module/modules/next/bluetooth/ble-plx/ble-link.js.map +1 -1
- package/lib/module/modules/next/bluetooth/connections.js +4 -0
- package/lib/module/modules/next/bluetooth/connections.js.map +1 -1
- package/lib/module/modules/next/bluetooth/driver.js +6 -0
- package/lib/module/modules/next/bluetooth/driver.js.map +1 -1
- package/lib/module/modules/next/bluetooth/react-native/ovok-sink.js +12 -1
- package/lib/module/modules/next/bluetooth/react-native/ovok-sink.js.map +1 -1
- package/lib/module/modules/next/bluetooth/readings.js +2 -1
- package/lib/module/modules/next/bluetooth/readings.js.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/hooks/use-sign-in.d.ts +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/runtime-context.d.ts +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/runtime-context.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/bt-manager.d.ts +20 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/bt-manager.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/custom/define-custom-device.d.ts +2 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/custom/define-custom-device.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-command-writer.d.ts +3 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-command-writer.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-connection-handler.d.ts +14 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-connection-handler.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-current-time.d.ts +11 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-current-time.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-device-information.d.ts +2 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-device-information.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts +9 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-notification-readiness.d.ts +15 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-notification-readiness.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-pairing-retry.d.ts +21 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-pairing-retry.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/custom/custom.device.d.ts +2 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-details.d.ts +7 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-details.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-frame.d.ts +16 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-frame.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-racp.d.ts +8 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-racp.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/record-cursor.d.ts +21 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/record-cursor.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/testing/fake-ble-manager.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/command-sequencer.d.ts +6 -2
- package/lib/typescript/commonjs/src/modules/bt-management/types/command-sequencer.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/create-device-params.d.ts +3 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/create-device-params.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/custom-device-definition.d.ts +14 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/custom-device-definition.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/glucose-record-details.d.ts +33 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/glucose-record-details.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/utils/wait.d.ts +3 -0
- package/lib/typescript/commonjs/src/modules/bt-management/utils/wait.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/data-sync/services/managers/sync-progress-manager.d.ts +1 -1
- package/lib/typescript/commonjs/src/modules/next/bluetooth/ble-plx/ble-link.d.ts +1 -1
- package/lib/typescript/commonjs/src/modules/next/bluetooth/ble-plx/ble-link.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/next/bluetooth/connections.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/next/bluetooth/driver.d.ts +6 -1
- package/lib/typescript/commonjs/src/modules/next/bluetooth/driver.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/next/bluetooth/index.d.ts +1 -1
- package/lib/typescript/commonjs/src/modules/next/bluetooth/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/next/bluetooth/link.d.ts +12 -1
- package/lib/typescript/commonjs/src/modules/next/bluetooth/link.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/next/bluetooth/react-native/ovok-sink.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/next/bluetooth/snapshot.d.ts +4 -1
- package/lib/typescript/commonjs/src/modules/next/bluetooth/snapshot.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/hooks/use-sign-in.d.ts +1 -1
- package/lib/typescript/module/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/hooks/runtime-context.d.ts +1 -1
- package/lib/typescript/module/src/modules/bt-management/hooks/runtime-context.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/index.d.ts +1 -0
- package/lib/typescript/module/src/modules/bt-management/index.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/bt-manager.d.ts +20 -0
- package/lib/typescript/module/src/modules/bt-management/services/bt-manager.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/custom/define-custom-device.d.ts +2 -1
- package/lib/typescript/module/src/modules/bt-management/services/custom/define-custom-device.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-command-writer.d.ts +3 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-command-writer.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-connection-handler.d.ts +14 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-connection-handler.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-current-time.d.ts +11 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-current-time.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-device-information.d.ts +2 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-device-information.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts +9 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-notification-readiness.d.ts +15 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-notification-readiness.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-pairing-retry.d.ts +21 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-pairing-retry.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/custom/custom.device.d.ts +2 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-details.d.ts +7 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-details.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-frame.d.ts +16 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-frame.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-racp.d.ts +8 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-racp.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/record-cursor.d.ts +21 -0
- package/lib/typescript/module/src/modules/bt-management/services/record-cursor.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/testing/fake-ble-manager.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/command-sequencer.d.ts +6 -2
- package/lib/typescript/module/src/modules/bt-management/types/command-sequencer.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/create-device-params.d.ts +3 -0
- package/lib/typescript/module/src/modules/bt-management/types/create-device-params.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/custom-device-definition.d.ts +14 -1
- package/lib/typescript/module/src/modules/bt-management/types/custom-device-definition.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/glucose-record-details.d.ts +33 -0
- package/lib/typescript/module/src/modules/bt-management/types/glucose-record-details.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/utils/wait.d.ts +3 -0
- package/lib/typescript/module/src/modules/bt-management/utils/wait.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/data-sync/services/managers/sync-progress-manager.d.ts +1 -1
- package/lib/typescript/module/src/modules/next/bluetooth/ble-plx/ble-link.d.ts +1 -1
- package/lib/typescript/module/src/modules/next/bluetooth/ble-plx/ble-link.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/next/bluetooth/connections.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/next/bluetooth/driver.d.ts +6 -1
- package/lib/typescript/module/src/modules/next/bluetooth/driver.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/next/bluetooth/index.d.ts +1 -1
- package/lib/typescript/module/src/modules/next/bluetooth/index.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/next/bluetooth/link.d.ts +12 -1
- package/lib/typescript/module/src/modules/next/bluetooth/link.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/next/bluetooth/react-native/ovok-sink.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/next/bluetooth/snapshot.d.ts +4 -1
- package/lib/typescript/module/src/modules/next/bluetooth/snapshot.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -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","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":";;;;;;AAKA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,wBAAA,GAAAH,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AACA,IAAAK,eAAA,GAAAL,OAAA;AACA,IAAAM,UAAA,GAAAN,OAAA;AAQA,IAAAO,aAAA,GAAAP,OAAA;AAQA,IAAAQ,WAAA,GAAAR,OAAA;AACA,IAAAS,qBAAA,GAAAT,OAAA;AACA,IAAAU,eAAA,GAAAV,OAAA;AACA,IAAAW,6BAAA,GAAAX,OAAA;AAEA,IAAAY,oBAAA,GAAAZ,OAAA;AACA,IAAAa,gBAAA,GAAAb,OAAA;AACA,IAAAc,wBAAA,GAAAd,OAAA;AAlCA;;AAoCA;AACA;AACA;AACA;AACO,MAAee,eAAe,CAErC;EACE;;EAKQC,SAAS,GAAG,KAAK;EACjBC,SAAS,GAAG,KAAK;;EAOzB;;EAEQC,4BAA4B,GAAG,KAAK;EACpCC,qBAAqB,GAAG,KAAK;EAC7BC,mBAAmB,GAAG,KAAK;EAC3BC,wBAAwB,GAAG,IAAIC,GAAG,CAAqB,CAAC;EACxDC,mBAAmB,GAAG,IAAID,GAAG,CAAS,CAAC;EACvCE,kBAAkB,GAAG,CAAC;;EAE9B;;EAGA;AACF;AACA;;EAGE;AACF;AACA;AACA;EACYC,+BAA+BA,CAAA,EAAyB;IAChE,MAAMC,QAAQ,GAAG,IAAAC,0DAA4B,EAAC,IAAI,CAACC,YAAY,CAAC;IAEhE,OAAOF,QAAQ,CAACG,MAAM,GAAG,CAAC,GACtBH,QAAQ,GACR,CAAC,IAAII,mDAA0B,CAAC,IAAI,CAACC,UAAU,CAACC,IAAI,CAAsB,IAAI,EAAE,CAAC,CAAC;EACxF;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;;EAOE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;EAGE;AACF;AACA;AACA;AACA;AACA;AACA;;EAGE;AACF;AACA;AACA;AACA;AACA;;EAGE;EACUC,kBAAkB,GAAG,KAAK;;EAEpC;AACF;AACA;AACA;AACA;AACA;;EAIE;EACUC,mBAAmBA,CAC3BC,cAAoD,EACpDC,gBAA0B,EACV;IAChB;EACF;;EAEA;EACUC,oBAAoBA,CAAA,EAAS,CAAC;;EAExC;;EAGA;;EAMA;;EAKA;;EAGA;;EAGA;EACUC,SAAS,GAAIC,kBAAsC,IAC3D,IAAI,CAACC,YAAY,EAAEC,aAAa,GAAGF,kBAAkB,CAAC,IACtD,IAAI,CAACC,YAAY,EAAEE,OAAO,IAC1B,KAAK;;EAEP;EACUC,YAAY,GAAIC,MAAc,IACtC,IAAI,CAACC,QAAQ,GACXD,MACF,CAAC;EAEHE,WAAWA,CAET;EACgBC,MAAc,EAE9B;IACEC,UAAU;IACVC,OAAO,EAAEC,eAAe;IACxBC,qBAAqB,EAAEC,6BAA6B;IACpDP,QAAQ,EAAEQ,gBAAgB;IAC1BC,aAAa,EAAEC,qBAAqB;IACpCC,iBAAiB,EAAEC,yBAAyB;IAC5CC,oBAAoB,EAAEC,4BAA4B;IAClDC,uBAAuB;IACvBpB;EACqB,CAAC,EACxB;IAAA,KAbgBO,MAAc,GAAdA,MAAc;IAc9B,IAAI,CAACa,uBAAuB,GAAGA,uBAAuB,KAAK,IAAI;IAC/D,IAAI,CAACpB,YAAY,GAAGA,YAAY;IAChC,IAAI,CAACqB,mBAAmB,GACtBrB,YAAY,EAAEE,OAAO,KAAKoB,SAAS,IACnCtB,YAAY,EAAEC,aAAa,KAAKqB,SAAS;IAC3C,IAAAC,0BAAY,EAAC,MAAM,EAAE,sCAAsC,CAAC;IAC5D,IAAI,CAAChC,UAAU,GAAG;MAChBiC,EAAE,EAAEjB,MAAM,CAACiB,EAAE;MACbhC,IAAI,EAAEgB,UAAU;MAChBiB,SAAS,EAAElB,MAAM,CAACkB,SAAS,IAAI,EAAE;MACjCC,gBAAgB,EAAEnB,MAAM,CAACmB,gBAAgB,IAAI,EAAE;MAC/CC,EAAE,EAAE,EAAE;MAEN;MACAC,gBAAgB,EAAE,EAAE;MACpBC,SAAS,EAAE,IAAAC,uCAA4B,EAACtB,UAAU;IACpD,CAAC;;IAED;IACA,MAAMuB,OAAO,GACX,IAAAC,iCAAiB,EAACC,MAAM,CAACzB,UAAU,CAAC,EAAED,MAAM,CAACf,IAAI,IAAI,EAAE,CAAC,IACxD,IAAAwC,iCAAiB,EAACC,MAAM,CAACzB,UAAU,CAAC,EAAED,MAAM,CAACkB,SAAS,IAAI,EAAE,CAAC;IAE/D,IAAIM,OAAO,EAAE;MACX,IAAI,CAACxC,UAAU,CAACwC,OAAO,GAAG;QACxBG,YAAY,EAAEH,OAAO,CAACG,YAAY;QAClCC,KAAK,EAAEJ,OAAO,CAACI;MACjB,CAAC;IACH;IAEA,IAAI,CAACX,EAAE,GAAGjB,MAAM,CAACiB,EAAE;IAEnB,IAAI,CAACb,qBAAqB,GAAG,CAC3ByB,MAAoB,EACpBrC,kBAAuC,KACpC;MACH,IAAAwB,0BAAY,EACV,MAAM,EACN,oDAAoD,EACpD;QACEa,MAAM;QACNrC;MACF,CACF,CAAC;MACD,IAAAsC,2BAAgB,EAAC,uBAAuB,EAAE;QACxCF,KAAK,EAAE,IAAI,CAAC5C,UAAU,CAACC,IAAI;QAC3B4C,MAAM;QACNrC,kBAAkB,EAAEA,kBAAkB,IAAI;MAC5C,CAAC,CAAC;MACFa,6BAA6B,GAAG;QAC9BrB,UAAU,EAAE,IAAI,CAACA,UAAU;QAC3B6C,MAAM,EAAEA,MAAM;QACdrC;MACF,CAAC,CAAC;IACJ,CAAC;IACD,IAAI,CAACU,OAAO,GAAI6B,KAAgC,IAAK;MACnD,MAAMC,UAAU,GAAG,IAAAC,gCAAgB,EAACF,KAAK,CAAC;MAE1C,IAAAf,0BAAY,EAAC,OAAO,EAAE,sCAAsC,EAAE;QAC5DkB,SAAS,EAAEF,UAAU,CAACG;MACxB,CAAC,CAAC;MAEFhC,eAAe,GAAG;QAChBnB,UAAU,EAAE,IAAI,CAACA,UAAU;QAC3B,GAAG,IAAAoD,0CAAoB,EAACJ,UAAU;MACpC,CAAC,CAAC;IACJ,CAAC;IACD,IAAI,CAAClC,QAAQ,GAAG,CAAC;MACfuC,QAAQ,EAAEC,CAAC;MACX,GAAGC;IAC2B,CAAC,KAAK;MACpC,MAAM/C,kBAAkB,GAAG+C,IAAI,CAAC/C,kBAAkB;MAClD,MAAMgD,mBAAmB,GAAG,IAAI,CAAC/C,YAAY,EAAE+C,mBAAmB;MAElE,IAAIA,mBAAmB,IAAI,CAAC,IAAAC,oCAAwB,EAACF,IAAI,EAAEC,mBAAmB,CAAC,EAAE;QAC/E,IAAAxB,0BAAY,EAAC,MAAM,EAAE,uDAAuD,EAAE;UAC5ExB;QACF,CAAC,CAAC;QAEF;MACF;MAEA,MAAMkD,MAAM,GAAG,IAAI,CAACnD,SAAS,CAACC,kBAAkB,CAAC;;MAEjD;MACA,IAAIkD,MAAM,KAAK,QAAQ,IAAIlC,qBAAqB,GAAG,IAAI,CAACxB,UAAU,EAAEuD,IAAmB,CAAC,EAAE;QACxF;MACF;MAEA,IACE,IAAI,CAAC1B,uBAAuB,IAC5B,CAAC,IAAI,CAACC,mBAAmB,IACzB,IAAI,CAAC3C,4BAA4B,EACjC;QACA;MACF;MAEA,IAAIuE,MAAM,KAAK,uCAAuC,EAAE;QACtD,IAAI,IAAI,CAACpE,wBAAwB,CAACqE,GAAG,CAACnD,kBAAkB,CAAC,EAAE;UACzD;QACF;QACA,IAAI,CAAClB,wBAAwB,CAACsE,GAAG,CAACpD,kBAAkB,CAAC;MACvD;MAEA,IAAIkD,MAAM,KAAK,mBAAmB,EAAE;QAClC;QACA;QACA,MAAMG,GAAG,GAAG,IAAAC,4BAAa,EAACP,IAAI,EAAEQ,IAAI,CAACC,GAAG,CAAC,CAAC,CAAC;QAE3C,IAAIH,GAAG,KAAK,QAAQ,EAAE;UACpB;QACF;QAEA,IAAIA,GAAG,EAAE;UACP,MAAMI,GAAG,GAAG,GAAGzD,kBAAkB,IAAIqD,GAAG,EAAE;UAE1C,IAAI,IAAI,CAACrE,mBAAmB,CAACmE,GAAG,CAACM,GAAG,CAAC,EAAE;YACrC;UACF;UAEA,IAAI,CAACzE,mBAAmB,CAACoE,GAAG,CAACK,GAAG,CAAC;QACnC;MACF;MAEA,IAAI,CAAC9E,4BAA4B,GAAG,IAAI;MACxC,IAAI,CAACM,kBAAkB,IAAI,CAAC;MAC5B,IAAAyE,2BAAgB,EAAC,wBAAwB,EAAE,CAAC,EAAE;QAC5CtB,KAAK,EAAE,IAAI,CAAC5C,UAAU,CAACC,IAAI;QAC3BO;MACF,CAAC,CAAC;MACF,IAAAsC,2BAAgB,EAAC,kBAAkB,EAAE;QACnCF,KAAK,EAAE,IAAI,CAAC5C,UAAU,CAACC,IAAI;QAC3BO;MACF,CAAC,CAAC;MACF,IAAAwB,0BAAY,EAAC,MAAM,EAAE,uCAAuC,EAAE;QAC5DxB;MACF,CAAC,CAAC;MACF,IAAI,IAAI,CAACpB,qBAAqB,EAAE;QAC9BsC,yBAAyB,GAAG;UAC1B1B,UAAU,EAAE,IAAI,CAACA,UAAU;UAC3BmE,IAAI,EAAE,kBAAkB;UACxBC,QAAQ,EAAE;YAAEC,OAAO,EAAE,IAAI,CAAC5E;UAAmB;QAC/C,CAAC,CAAC;MACJ;MACA,MAAMoB,MAAM,GAAG;QAAEb,UAAU,EAAE,IAAI,CAACA,UAAU;QAAEuD;MAAK,CAIlD;MAGDe,MAAM,CAACC,cAAc,CAAC1D,MAAM,EAAE,IAAI,EAAE;QAClC2D,KAAK,EAAE,IAAAC,oCAAoB,EAAC,IAAI,CAACzE,UAAU,EAAEuD,IAAmB,CAAC;QACjEmB,UAAU,EAAE,IAAI;QAChBC,QAAQ,EAAE;MACZ,CAAC,CAAC;MACFL,MAAM,CAACC,cAAc,CAAC1D,MAAM,EAAE,UAAU,EAAE;QACxC2D,KAAK,EAAE,IAAAI,oCAAoB,EAAC,IAAI,CAAC5E,UAAU,EAAEuD,IAAmB,CAAC;QACjEmB,UAAU,EAAE,IAAI;QAChBC,QAAQ,EAAE;MACZ,CAAC,CAAC;MACFrD,gBAAgB,GAAGT,MAAM,CAAC;IAC5B,CAAC;IACD,IAAI,CAACc,oBAAoB,GAAGC,4BAA4B;IACxD,IAAI,CAACH,iBAAiB,GAAGC,yBAAyB;EACpD;;EAEA;EACOmD,OAAO,GAAGA,CAAA,KAAM;IACrB,IAAI,CAAC3F,SAAS,GAAG,IAAI;IACrB,IAAI,CAACoB,oBAAoB,CAAC,CAAC;IAC3B,IAAA0B,0BAAY,EAAC,MAAM,EAAE,+BAA+B,CAAC;IACrD,IAAI,CAAC8C,iBAAiB,EAAED,OAAO,CAAC,CAAC;IACjC,IAAI,CAACE,aAAa,EAAEF,OAAO,CAAC,CAAC;IAC7B,IAAI,CAAC3D,OAAO,GAAGa,SAAS;IACxB,IAAI,CAACX,qBAAqB,GAAGW,SAAS;IACtC,IAAI,CAACjB,QAAQ,GAAGiB,SAAS;IACzB,IAAI,CAACN,iBAAiB,GAAGM,SAAS;EACpC,CAAC;;EAED;EACOiD,UAAU,GAAG,MAAAA,CAAA,KAAY;IAC9B,IAAI,CAAC/F,SAAS,GAAG,KAAK;IACtB,IAAI,CAAC4F,OAAO,CAAC,CAAC;IAEd,IAAI;MACF,MAAM,IAAI,CAAC7D,MAAM,CAACiE,gBAAgB,CAAC,CAAC;IACtC,CAAC,CAAC,OAAOlC,KAAK,EAAE;MACd,MAAMC,UAAU,GAAG,IAAAC,gCAAgB,EAACF,KAAK,CAAC;MAE1C,IAAAf,0BAAY,EAAC,MAAM,EAAE,6CAA6C,EAAE;QAClEkB,SAAS,EAAEF,UAAU,CAACG;MACxB,CAAC,CAAC;IACJ;EACF,CAAC;EAEO+B,eAAe,GAAG,MAAAA,CAAA,KAAY;IACpC,IAAI,CAAC/F,4BAA4B,GAAG,KAAK;IACzC,IAAI,CAACG,wBAAwB,CAAC6F,KAAK,CAAC,CAAC;IACrC,IAAI,CAAC3F,mBAAmB,CAAC2F,KAAK,CAAC,CAAC;IAChC,IAAI,CAAC1F,kBAAkB,GAAG,CAAC;;IAE3B;IACA,IAAI,CAACO,UAAU,CAACqC,gBAAgB,GAAG,IAAI,CAAC3C,+BAA+B,CAAC,CAAC;IAEzE,MAAM0F,SAA2B,GAC/B,IAAI,CAACC,sBAAsB,GAAG,CAAC,IAAI,IAAAC,4CAAmB,EAAC,IAAI,CAACzF,YAAY,CAAC;IAE3E,IAAI,CAACT,qBAAqB,GAAGgG,SAAS,CAACG,iBAAiB,GAAG,CAAC,KAAK,IAAI;IAErE,IAAI,CAACT,iBAAiB,GAAG,IAAIU,wCAAmB,CAC9C,IAAI,CAACxE,MAAM,EACX,IAAI,CAACnB,YAAY,EACjB;MACE4F,eAAe,EAAG5C,MAAM,IAAK;QAC3B,IAAI,CAAC5D,SAAS,GAAG4D,MAAM,KAAK6C,0BAAY,CAACC,SAAS;QAClD,IAAI,CAACvE,qBAAqB,EAAEwE,IAAI,CAAC,IAAI,CAAC,CAAC/C,MAAM,CAAC;QAC9C,IACEA,MAAM,KAAK6C,0BAAY,CAACC,SAAS,IACjC,IAAI,CAACzF,kBAAkB,IACvB,CAAC,IAAI,CAACb,mBAAmB,EACzB;UACA,IAAI,CAACA,mBAAmB,GAAG,IAAI;UAC/B,IAAI,CAACoC,iBAAiB,GAAG;YACvBzB,UAAU,EAAE,IAAI,CAACA,UAAU;YAC3BmE,IAAI,EAAE;UACR,CAAC,CAAC;QACJ;QACA,IAAItB,MAAM,KAAK6C,0BAAY,CAACC,SAAS,EAAE;UACrC,IAAI,CAAClE,iBAAiB,GAAG;YACvBzB,UAAU,EAAE,IAAI,CAACA,UAAU;YAC3BmE,IAAI,EAAE;UACR,CAAC,CAAC;QACJ;QACA,IAAItB,MAAM,KAAK6C,0BAAY,CAACG,YAAY,EAAE;UACxC,IAAI,CAAClE,oBAAoB,GAAG,CAAC;UAC7B,IAAI,CAACkD,OAAO,CAAC,CAAC;QAChB;MACF,CAAC;MACD3D,OAAO,EAAG6B,KAAK,IAAK,IAAI,CAAC7B,OAAO,EAAE0E,IAAI,CAAC,IAAI,CAAC,CAAC7C,KAAK,CAAC;MACnDtB,iBAAiB,EAAGqE,KAAK,IACvB,IAAI,CAACrE,iBAAiB,GAAG;QAAEzB,UAAU,EAAE,IAAI,CAACA,UAAU;QAAE,GAAG8F;MAAM,CAAC,CAAC;MACrEC,cAAc,EAAEA,CAACC,IAAI,EAAEC,QAAQ,KAAK;QAClC,IAAI,CAAClB,aAAa,EAAEmB,WAAW,CAACF,IAAI,EAAEC,QAAQ,CAAC;MACjD,CAAC;MACDE,YAAY,EAAGC,IAAI,IAAK;QACtB,IAAIA,IAAI,CAACnG,IAAI,EAAE;UACb,IAAI,CAACD,UAAU,CAACkC,SAAS,GAAGkE,IAAI,CAACnG,IAAI;QACvC;QACA,IAAImG,IAAI,CAACC,gBAAgB,EAAE;UACzB,IAAI,CAACrG,UAAU,CAACqG,gBAAgB,GAAGD,IAAI,CAACC,gBAAgB;QAC1D;QACA,IAAID,IAAI,CAACxD,KAAK,EAAE;UACd,IAAI,CAAC5C,UAAU,CAAC4C,KAAK,GAAGwD,IAAI,CAACxD,KAAK;QACpC;QACA,IAAIwD,IAAI,CAACE,YAAY,EAAE;UACrB,IAAI,CAACtG,UAAU,CAACoC,EAAE,GAAGgE,IAAI,CAACE,YAAY;QACxC;MACF,CAAC;MACDC,oBAAoB,EAAGC,KAAK,IAAKpB,SAAS,CAACmB,oBAAoB,GAAGC,KAAK,CAAC;MACxEC,eAAe,EAAEA,CAAA,KAAMrB,SAAS,CAACqB,eAAe,CAAC,CAAC;MAClDC,aAAa,EAAEA,CAAA,KAAM;QACnB,IAAI,CAAC3B,aAAa,EAAE4B,eAAe,CAAC,CAAC;QACrC,IAAI,CAAC5B,aAAa,EAAE6B,iBAAiB,CAAC,CAAC;MACzC,CAAC;MACDC,kBAAkB,EAAEA,CAAA,KAAMzB,SAAS,CAACyB,kBAAkB,GAAG,CAAC,IAAI;IAChE,CAAC,EACD,IAAI,CAACC,YACP,CAAC;IAED,IAAI,CAAC/B,aAAa,GAAG,IAAIgC,gCAAe,CACtC,IAAI,CAAC/F,MAAM,EACX,IAAI,CAACnB,YAAY,EACjB,IAAI,CAACmH,gBAAgB,EACrB;MACEvB,eAAe,EAAE,IAAI,CAACrE,qBAAqB,EAAEwE,IAAI,CAAC,IAAI,CAAC;MACvDqB,aAAa,EAAE,IAAI,CAACA,aAAa,EAAErB,IAAI,CAAC,IAAI,CAAC;MAC7CsB,gBAAgB,EAAE,IAAI,CAAC5G,oBAAoB,CAACsF,IAAI,CAAC,IAAI,CAAC;MACtDuB,eAAe,EAAE,IAAI,CAACA,eAAe,EAAEvB,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,KAAK,CAAC;MAClE9E,QAAQ,EAAEA,CAACsG,UAAU,EAAEC,eAAe,KAAK;QACzC,IAAI;UACF,OAAO,IAAI,CAAClH,mBAAmB,CAACyF,IAAI,CAAC,IAAI,CAAC,CACxCwB,UAAU,EACVC,eACF,CAAC;QACH,CAAC,CAAC,OAAOtE,KAAK,EAAE;UACd,IAAI,CAAC7B,OAAO,EAAE0E,IAAI,CAAC,IAAI,CAAC,CAAC7C,KAAyB,CAAC;QACrD;MACF,CAAC;MACDuE,WAAW,EAAEA,CAACC,KAAK,EAAEvB,IAAI,KAAKZ,SAAS,CAACkC,WAAW,CAACC,KAAK,EAAEvB,IAAI,CAAC;MAChEwB,YAAY,EAAGC,QAAQ,IACrB,KAAK,IAAI,CAAC3C,iBAAiB,EAAE0C,YAAY,CAACC,QAAQ,CAAC;MACrDC,gBAAgB,EAAEA,CAAA,KAAMtC,SAAS,CAACsC,gBAAgB,GAAG,CAAC;MACtDC,gBAAgB,EAAEA,CAAA,KAAMvC,SAAS,CAACuC,gBAAgB,GAAG,CAAC,IAAI,CAAC,CAAC;MAC5DC,eAAe,EAAGL,KAAK,IACrBnC,SAAS,CAACwC,eAAe,GAAGL,KAAK,CAAC,IAAI,UAAU;MAClDrG,OAAO,EAAE,IAAI,CAACA,OAAO,EAAE0E,IAAI,CAAC,IAAI,CAAC;MACjCiC,qBAAqB,EAAE,IAAI,CAACA,qBAAqB,EAAEjC,IAAI,CAAC,IAAI;IAC9D,CAAC,EACD,IAAI,CAACkC,WACP,CAAC;IAED,MAAM,IAAI,CAAChD,iBAAiB,CAACiD,OAAO,CAAC,CAAC;EACxC,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;AACA;EACSA,OAAO,GAAGA,CAAA,KAAqB;IACpC,IAAI,IAAI,CAAC7I,SAAS,EAAE;MAClB,OAAO8I,OAAO,CAACC,MAAM,CAAC,IAAIC,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjF;IAEA,IAAI,IAAI,CAACC,iBAAiB,EAAE;MAC1B,OAAO,IAAI,CAACA,iBAAiB;IAC/B;IAEA,IAAI,IAAI,CAAClJ,SAAS,EAAE;MAClB,OAAO+I,OAAO,CAACI,OAAO,CAAC,CAAC;IAC1B;IAEA,IAAI,CAACD,iBAAiB,GAAG,IAAI,CAACjD,eAAe,CAAC,CAAC,CAACmD,OAAO,CAAC,MAAM;MAC5D,IAAI,CAACF,iBAAiB,GAAGpG,SAAS;IACpC,CAAC,CAAC;IAEF,OAAO,IAAI,CAACoG,iBAAiB;EAC/B,CAAC;AACH;AAACG,OAAA,CAAAtJ,eAAA,GAAAA,eAAA","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","syncsCurrentTime","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","clockSync","policyPicksDelivery","undefined","clockSyncOptions","sentryLogger","id","localName","manufacturerData","sn","measurementTypes","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","currentTimeSync","isClockSyncEnabled","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":[]}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.awaitNotificationsEnabled = void 0;
|
|
7
|
+
var _sentryLogger = require("../../../helpers/utils/sentry-logger.js");
|
|
8
|
+
var _bluetoothError = require("../../types/bluetooth-error.js");
|
|
9
|
+
var _base64ToHex = require("../../utils/base-64-to-hex.js");
|
|
10
|
+
var _wait = require("../../utils/wait.js");
|
|
11
|
+
/** Client Characteristic Configuration descriptor, where a device keeps whether notifications are on. */
|
|
12
|
+
const CCCD_UUID = "00002902-0000-1000-8000-00805f9b34fb";
|
|
13
|
+
|
|
14
|
+
/** Bit 0 enables notifications and bit 1 indications. */
|
|
15
|
+
const NOTIFICATIONS_OR_INDICATIONS = 0x03;
|
|
16
|
+
const CCCD_POLL_ATTEMPTS = 10;
|
|
17
|
+
const CCCD_POLL_INTERVAL_MS = 100;
|
|
18
|
+
|
|
19
|
+
/** For platforms that cannot read the descriptor, which is how long the write usually takes. */
|
|
20
|
+
const UNREADABLE_CCCD_SETTLE_MS = 300;
|
|
21
|
+
|
|
22
|
+
/** A characteristic whose notifications were just requested. */
|
|
23
|
+
|
|
24
|
+
const isEnabled = cccdValue => {
|
|
25
|
+
const [firstByte] = cccdValue ? (0, _base64ToHex.base64ToHex)(cccdValue) : [];
|
|
26
|
+
return (Number.parseInt(firstByte ?? "", 16) & NOTIFICATIONS_OR_INDICATIONS) !== 0;
|
|
27
|
+
};
|
|
28
|
+
const isNotificationsEnabled = async (device, {
|
|
29
|
+
serviceUuid,
|
|
30
|
+
characteristicUuid
|
|
31
|
+
}) => {
|
|
32
|
+
for (let attempt = 1;; attempt += 1) {
|
|
33
|
+
const descriptor = await device.readDescriptorForService(serviceUuid, characteristicUuid, CCCD_UUID);
|
|
34
|
+
if (isEnabled(descriptor.value)) {
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
if (attempt === CCCD_POLL_ATTEMPTS) {
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
await (0, _wait.wait)(CCCD_POLL_INTERVAL_MS);
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Resolves once the device reports notifications on for every characteristic, because
|
|
46
|
+
* `monitorCharacteristicForService` returns before its descriptor write completes.
|
|
47
|
+
* A platform that cannot read the descriptor gets a fixed settle time instead.
|
|
48
|
+
*/
|
|
49
|
+
const awaitNotificationsEnabled = async (device, characteristics) => {
|
|
50
|
+
if (characteristics.length === 0 || typeof device.readDescriptorForService !== "function") {
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
try {
|
|
54
|
+
const enabled = await Promise.all(characteristics.map(characteristic => isNotificationsEnabled(device, characteristic)));
|
|
55
|
+
if (!enabled.every(Boolean)) {
|
|
56
|
+
(0, _sentryLogger.sentryLogger)("info", "DEVICE: Notifications not confirmed before the first command", {
|
|
57
|
+
characteristics: characteristics.length
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
} catch (error) {
|
|
61
|
+
(0, _sentryLogger.sentryLogger)("info", "DEVICE: Notification state unreadable, waiting a fixed time", {
|
|
62
|
+
errorCode: (0, _bluetoothError.toBluetoothError)(error).code
|
|
63
|
+
});
|
|
64
|
+
await (0, _wait.wait)(UNREADABLE_CCCD_SETTLE_MS);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
exports.awaitNotificationsEnabled = awaitNotificationsEnabled;
|
|
68
|
+
//# sourceMappingURL=bt-notification-readiness.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_sentryLogger","require","_bluetoothError","_base64ToHex","_wait","CCCD_UUID","NOTIFICATIONS_OR_INDICATIONS","CCCD_POLL_ATTEMPTS","CCCD_POLL_INTERVAL_MS","UNREADABLE_CCCD_SETTLE_MS","isEnabled","cccdValue","firstByte","base64ToHex","Number","parseInt","isNotificationsEnabled","device","serviceUuid","characteristicUuid","attempt","descriptor","readDescriptorForService","value","wait","awaitNotificationsEnabled","characteristics","length","enabled","Promise","all","map","characteristic","every","Boolean","sentryLogger","error","errorCode","toBluetoothError","code","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-notification-readiness.ts"],"mappings":";;;;;;AAEA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAEA;AACA,MAAMI,SAAS,GAAG,sCAAsC;;AAExD;AACA,MAAMC,4BAA4B,GAAG,IAAI;AAEzC,MAAMC,kBAAkB,GAAG,EAAE;AAC7B,MAAMC,qBAAqB,GAAG,GAAG;;AAEjC;AACA,MAAMC,yBAAyB,GAAG,GAAG;;AAErC;;AAMA,MAAMC,SAAS,GAAIC,SAAoC,IAAc;EACnE,MAAM,CAACC,SAAS,CAAC,GAAGD,SAAS,GAAG,IAAAE,wBAAW,EAACF,SAAS,CAAC,GAAG,EAAE;EAE3D,OAAO,CAACG,MAAM,CAACC,QAAQ,CAACH,SAAS,IAAI,EAAE,EAAE,EAAE,CAAC,GAAGN,4BAA4B,MAAM,CAAC;AACpF,CAAC;AAED,MAAMU,sBAAsB,GAAG,MAAAA,CAC7BC,MAAc,EACd;EAAEC,WAAW;EAAEC;AAA4C,CAAC,KACvC;EACrB,KAAK,IAAIC,OAAO,GAAG,CAAC,GAAIA,OAAO,IAAI,CAAC,EAAE;IACpC,MAAMC,UAAU,GAAG,MAAMJ,MAAM,CAACK,wBAAwB,CACtDJ,WAAW,EACXC,kBAAkB,EAClBd,SACF,CAAC;IAED,IAAIK,SAAS,CAACW,UAAU,CAACE,KAAK,CAAC,EAAE;MAC/B,OAAO,IAAI;IACb;IAEA,IAAIH,OAAO,KAAKb,kBAAkB,EAAE;MAClC,OAAO,KAAK;IACd;IAEA,MAAM,IAAAiB,UAAI,EAAChB,qBAAqB,CAAC;EACnC;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,MAAMiB,yBAAyB,GAAG,MAAAA,CAChCR,MAAc,EACdS,eAAmD,KACjC;EAClB,IAAIA,eAAe,CAACC,MAAM,KAAK,CAAC,IAAI,OAAOV,MAAM,CAACK,wBAAwB,KAAK,UAAU,EAAE;IACzF;EACF;EAEA,IAAI;IACF,MAAMM,OAAO,GAAG,MAAMC,OAAO,CAACC,GAAG,CAC/BJ,eAAe,CAACK,GAAG,CAAEC,cAAc,IAAKhB,sBAAsB,CAACC,MAAM,EAAEe,cAAc,CAAC,CACxF,CAAC;IAED,IAAI,CAACJ,OAAO,CAACK,KAAK,CAACC,OAAO,CAAC,EAAE;MAC3B,IAAAC,0BAAY,EAAC,MAAM,EAAE,8DAA8D,EAAE;QACnFT,eAAe,EAAEA,eAAe,CAACC;MACnC,CAAC,CAAC;IACJ;EACF,CAAC,CAAC,OAAOS,KAAK,EAAE;IACd,IAAAD,0BAAY,EAAC,MAAM,EAAE,6DAA6D,EAAE;MAClFE,SAAS,EAAE,IAAAC,gCAAgB,EAACF,KAAK,CAAC,CAACG;IACrC,CAAC,CAAC;IACF,MAAM,IAAAf,UAAI,EAACf,yBAAyB,CAAC;EACvC;AACF,CAAC;AAAC+B,OAAA,CAAAf,yBAAA,GAAAA,yBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.runOnce = exports.isPairingRequired = exports.BTPairingRetry = void 0;
|
|
7
|
+
var _sentryLogger = require("../../../helpers/utils/sentry-logger.js");
|
|
8
|
+
var _bluetoothError = require("../../types/bluetooth-error.js");
|
|
9
|
+
var _wait = require("../../utils/wait.js");
|
|
10
|
+
/** How long the user has to finish the system pairing before the step is given up. */
|
|
11
|
+
const PAIRING_WINDOW_MS = 30_000;
|
|
12
|
+
|
|
13
|
+
/** ble-plx cannot report the bond state, so the step itself is tried again at this interval. */
|
|
14
|
+
const PAIRING_RETRY_INTERVAL_MS = 3_000;
|
|
15
|
+
|
|
16
|
+
/** Runs `operation`; when the device needs pairing for it, runs it again once the user has paired. */
|
|
17
|
+
|
|
18
|
+
const isPairingRequired = error => (0, _bluetoothError.toBluetoothError)(error).code === _bluetoothError.BluetoothErrorCode.PAIRING_REQUIRED;
|
|
19
|
+
exports.isPairingRequired = isPairingRequired;
|
|
20
|
+
const runOnce = operation => operation();
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Keeps the link while the system pairing (raised by the encrypted access itself) runs,
|
|
24
|
+
* then retries the step that needed it. After a wait ran out, later steps fail at once.
|
|
25
|
+
*/
|
|
26
|
+
exports.runOnce = runOnce;
|
|
27
|
+
class BTPairingRetry {
|
|
28
|
+
abandoned = false;
|
|
29
|
+
constructor(device, onPairingRequired) {
|
|
30
|
+
this.device = device;
|
|
31
|
+
this.onPairingRequired = onPairingRequired;
|
|
32
|
+
}
|
|
33
|
+
run = async operation => {
|
|
34
|
+
try {
|
|
35
|
+
return await operation();
|
|
36
|
+
} catch (error) {
|
|
37
|
+
if (this.abandoned || !isPairingRequired(error)) {
|
|
38
|
+
throw error;
|
|
39
|
+
}
|
|
40
|
+
this.onPairingRequired();
|
|
41
|
+
return this.retryUntilPaired(operation, error);
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
retryUntilPaired = async (operation, firstError) => {
|
|
45
|
+
const deadline = Date.now() + PAIRING_WINDOW_MS;
|
|
46
|
+
let lastError = firstError;
|
|
47
|
+
while (Date.now() < deadline) {
|
|
48
|
+
await (0, _wait.wait)(PAIRING_RETRY_INTERVAL_MS);
|
|
49
|
+
if (!(await this.stillConnected())) {
|
|
50
|
+
break;
|
|
51
|
+
}
|
|
52
|
+
try {
|
|
53
|
+
return await operation();
|
|
54
|
+
} catch (error) {
|
|
55
|
+
if (!isPairingRequired(error)) {
|
|
56
|
+
throw error;
|
|
57
|
+
}
|
|
58
|
+
lastError = error;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
this.abandoned = true;
|
|
62
|
+
(0, _sentryLogger.sentryLogger)("info", "DEVICE: Pairing did not finish, giving up the step", {
|
|
63
|
+
errorCode: _bluetoothError.BluetoothErrorCode.PAIRING_REQUIRED
|
|
64
|
+
});
|
|
65
|
+
throw lastError;
|
|
66
|
+
};
|
|
67
|
+
stillConnected = () => this.device.isConnected().catch(() => false);
|
|
68
|
+
}
|
|
69
|
+
exports.BTPairingRetry = BTPairingRetry;
|
|
70
|
+
//# sourceMappingURL=bt-pairing-retry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_sentryLogger","require","_bluetoothError","_wait","PAIRING_WINDOW_MS","PAIRING_RETRY_INTERVAL_MS","isPairingRequired","error","toBluetoothError","code","BluetoothErrorCode","PAIRING_REQUIRED","exports","runOnce","operation","BTPairingRetry","abandoned","constructor","device","onPairingRequired","run","retryUntilPaired","firstError","deadline","Date","now","lastError","wait","stillConnected","sentryLogger","errorCode","isConnected","catch"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-pairing-retry.ts"],"mappings":";;;;;;AAEA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAEA;AACA,MAAMG,iBAAiB,GAAG,MAAM;;AAEhC;AACA,MAAMC,yBAAyB,GAAG,KAAK;;AAEvC;;AAGA,MAAMC,iBAAiB,GAAIC,KAAc,IACvC,IAAAC,gCAAgB,EAACD,KAAK,CAAC,CAACE,IAAI,KAAKC,kCAAkB,CAACC,gBAAgB;AAACC,OAAA,CAAAN,iBAAA,GAAAA,iBAAA;AAEvE,MAAMO,OAAqB,GAAIC,SAAS,IAAKA,SAAS,CAAC,CAAC;;AAExD;AACA;AACA;AACA;AAHAF,OAAA,CAAAC,OAAA,GAAAA,OAAA;AAIA,MAAME,cAAc,CAAC;EACXC,SAAS,GAAG,KAAK;EAElBC,WAAWA,CACCC,MAAc,EACdC,iBAA6B,EAC9C;IAAA,KAFiBD,MAAc,GAAdA,MAAc;IAAA,KACdC,iBAA6B,GAA7BA,iBAA6B;EAC7C;EAEIC,GAAG,GAAiB,MAAON,SAAS,IAAK;IAC9C,IAAI;MACF,OAAO,MAAMA,SAAS,CAAC,CAAC;IAC1B,CAAC,CAAC,OAAOP,KAAK,EAAE;MACd,IAAI,IAAI,CAACS,SAAS,IAAI,CAACV,iBAAiB,CAACC,KAAK,CAAC,EAAE;QAC/C,MAAMA,KAAK;MACb;MAEA,IAAI,CAACY,iBAAiB,CAAC,CAAC;MAExB,OAAO,IAAI,CAACE,gBAAgB,CAACP,SAAS,EAAEP,KAAK,CAAC;IAChD;EACF,CAAC;EAEOc,gBAAgB,GAAG,MAAAA,CACzBP,SAA2B,EAC3BQ,UAAmB,KACJ;IACf,MAAMC,QAAQ,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGrB,iBAAiB;IAC/C,IAAIsB,SAAS,GAAGJ,UAAU;IAE1B,OAAOE,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGF,QAAQ,EAAE;MAC5B,MAAM,IAAAI,UAAI,EAACtB,yBAAyB,CAAC;MAErC,IAAI,EAAE,MAAM,IAAI,CAACuB,cAAc,CAAC,CAAC,CAAC,EAAE;QAClC;MACF;MAEA,IAAI;QACF,OAAO,MAAMd,SAAS,CAAC,CAAC;MAC1B,CAAC,CAAC,OAAOP,KAAK,EAAE;QACd,IAAI,CAACD,iBAAiB,CAACC,KAAK,CAAC,EAAE;UAC7B,MAAMA,KAAK;QACb;QAEAmB,SAAS,GAAGnB,KAAK;MACnB;IACF;IAEA,IAAI,CAACS,SAAS,GAAG,IAAI;IACrB,IAAAa,0BAAY,EAAC,MAAM,EAAE,oDAAoD,EAAE;MACzEC,SAAS,EAAEpB,kCAAkB,CAACC;IAChC,CAAC,CAAC;IAEF,MAAMe,SAAS;EACjB,CAAC;EAEOE,cAAc,GAAGA,CAAA,KACvB,IAAI,CAACV,MAAM,CAACa,WAAW,CAAC,CAAC,CAACC,KAAK,CAAC,MAAM,KAAK,CAAC;AAChD;AAACpB,OAAA,CAAAG,cAAA,GAAAA,cAAA","ignoreList":[]}
|
|
@@ -49,16 +49,30 @@ class CustomDevice extends _btManagedDevice.BTManagedDevice {
|
|
|
49
49
|
this.frameReader = definition.frameReader;
|
|
50
50
|
this.stuckDataTimeout = definition.stuckDataTimeout;
|
|
51
51
|
this.reportsBondedEvent = definition.reportsBondedEvent === true;
|
|
52
|
+
this.syncsCurrentTime = definition.clockSync === "unknown";
|
|
52
53
|
if (definition.preferredMtu !== undefined) {
|
|
53
54
|
this.preferredMtu = definition.preferredMtu;
|
|
54
55
|
}
|
|
55
56
|
this.declareLepuProtocol(definition, params.clockSync);
|
|
56
57
|
this.declareTmbProtocol(definition, params.clockSync);
|
|
58
|
+
this.declareSequencerFactory(definition, params);
|
|
57
59
|
definition.frames.forEach((frame, uuid) => {
|
|
58
60
|
this.validators.set(uuid, (0, _createFrameValidator.createFrameValidator)(frame));
|
|
59
61
|
});
|
|
60
62
|
}
|
|
61
63
|
|
|
64
|
+
/** Gives a declaration that computes its commands at connect time the context it needs to do so. */
|
|
65
|
+
declareSequencerFactory(definition, params) {
|
|
66
|
+
const create = definition.createCommandSequencer;
|
|
67
|
+
if (!create) {
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
this.createCommandSequencer = () => create({
|
|
71
|
+
deviceId: this.device.id,
|
|
72
|
+
recordCursorStorage: params.recordCursorStorage
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
|
|
62
76
|
/** Gives a TMB declaration its length-prefixed reader and history command sequence. */
|
|
63
77
|
declareTmbProtocol(definition, clockSync) {
|
|
64
78
|
const tmb = definition.tmb;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_next","require","_caseType","_createFrameValidator","_parseMeasurement","_rejectCustomReading","_bp2Files","_btManagedDevice","_lepuCommandBuilder","_lepuEcgTransfer","_lepuFrameReader","_tmbCommandSequencer","_tmbFrameReader","_viatomBp3Files","_viatomEcgFiles","_customLepuSequencer","CustomDevice","BTManagedDevice","reportedHistoryIds","Set","validators","Map","sessionAggregates","constructor","device","params","definition","oneReadingPerConnection","frameHandler","createFrameHandler","sessionPolicy","deviceData","clockSync","deliveredFileNames","deliveredEcgFileNames","selectedLepu","lepu","selectLepu","manufacturerData","undefined","mainServices","manufacturerDataProtocol","filter","service","uuid","write","serviceUuid","frameReader","stuckDataTimeout","reportsBondedEvent","preferredMtu","declareLepuProtocol","declareTmbProtocol","frames","forEach","frame","set","createFrameValidator","tmb","TmbFrameReader","createCommandSequencer","TmbCommandSequencer","protocol","LepuFrameReader","startBytes","fileTransfer","clear","LepuEcgTransferSequencer","characteristicUuid","builder","LepuCommandBuilder","rejectEncryptionAtBytes","expectedDeviceTypes","onIdentified","onRefused","onIdentityRefused","onFile","reportViatomEcgFile","reportViatomBp2File","reportViatomBp3File","skipFiles","acceptFile","name","ecgFileDecoder","test","pollCommand","pollIntervalMs","afterTransfer","build","onError","reason","Error","onProgress","progress","onConnectionEvent","kind","current","receivedBytes","total","totalBytes","createLepuSequencer","file","decoded","decodeViatomEcgRecording","content","samples","length","onResult","measurementTypeKey","MeasurementTypeKey","ecg","caseType","CaseType","RESULT","diagramPoints","duration","recordedAt","recordedAtFromViatomFileName","recordingId","decodeBP2File","reportHistoryOnce","decodeViatomBp3File","has","add","info","recordLepuIdentity","id","validatePackage","pkg","validate","get","String","toLowerCase","handleDependentResult","data","parsingCase","requiresStream","isMeasuring","OTHER","handleFrame","parsedData","handlerOnly","captureSessionSample","STREAM","shouldReportDependentResult","reportFrame","error","_data","handleSuccessResult","successResult","collectedValues","emit","reading","handleMeasurementEnd","policy","aggregates","values","sessionStartedAt","aggregate","count","minSamples","summary","sample","Object","fromEntries","sums","entries","map","sessionAverage","decorateReading","value","decimals","fields","Math","trunc","Number","toFixed","measurements","frameRecordedAt","Date","measurement","createMeasurement","rejection","measurementRejection","policyFor","key","existing","readingFields","fieldNames","recordOffset","decorate","repeated","repeatedRecords","report","records","floor","from","recordBytes","record","parseMeasurement","discard","reportMeasurement","discardedReadingError","parsedFields","rejectCustomReading","find","message","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/custom/custom.device.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_next","require","_caseType","_createFrameValidator","_parseMeasurement","_rejectCustomReading","_bp2Files","_btManagedDevice","_lepuCommandBuilder","_lepuEcgTransfer","_lepuFrameReader","_tmbCommandSequencer","_tmbFrameReader","_viatomBp3Files","_viatomEcgFiles","_customLepuSequencer","CustomDevice","BTManagedDevice","reportedHistoryIds","Set","validators","Map","sessionAggregates","constructor","device","params","definition","oneReadingPerConnection","frameHandler","createFrameHandler","sessionPolicy","deviceData","clockSync","deliveredFileNames","deliveredEcgFileNames","selectedLepu","lepu","selectLepu","manufacturerData","undefined","mainServices","manufacturerDataProtocol","filter","service","uuid","write","serviceUuid","frameReader","stuckDataTimeout","reportsBondedEvent","syncsCurrentTime","preferredMtu","declareLepuProtocol","declareTmbProtocol","declareSequencerFactory","frames","forEach","frame","set","createFrameValidator","create","createCommandSequencer","deviceId","id","recordCursorStorage","tmb","TmbFrameReader","TmbCommandSequencer","protocol","LepuFrameReader","startBytes","fileTransfer","clear","LepuEcgTransferSequencer","characteristicUuid","builder","LepuCommandBuilder","rejectEncryptionAtBytes","expectedDeviceTypes","onIdentified","onRefused","onIdentityRefused","onFile","reportViatomEcgFile","reportViatomBp2File","reportViatomBp3File","skipFiles","acceptFile","name","ecgFileDecoder","test","pollCommand","pollIntervalMs","afterTransfer","build","onError","reason","Error","onProgress","progress","onConnectionEvent","kind","current","receivedBytes","total","totalBytes","createLepuSequencer","file","decoded","decodeViatomEcgRecording","content","samples","length","onResult","measurementTypeKey","MeasurementTypeKey","ecg","caseType","CaseType","RESULT","diagramPoints","duration","recordedAt","recordedAtFromViatomFileName","recordingId","decodeBP2File","reportHistoryOnce","decodeViatomBp3File","has","add","info","recordLepuIdentity","validatePackage","pkg","validate","get","String","toLowerCase","handleDependentResult","data","parsingCase","requiresStream","isMeasuring","OTHER","handleFrame","parsedData","handlerOnly","captureSessionSample","STREAM","shouldReportDependentResult","reportFrame","error","_data","handleSuccessResult","successResult","collectedValues","emit","reading","handleMeasurementEnd","policy","aggregates","values","sessionStartedAt","aggregate","count","minSamples","summary","sample","Object","fromEntries","sums","entries","map","sessionAverage","decorateReading","value","decimals","fields","Math","trunc","Number","toFixed","measurements","frameRecordedAt","Date","measurement","createMeasurement","rejection","measurementRejection","policyFor","key","existing","readingFields","fieldNames","recordOffset","decorate","repeated","repeatedRecords","report","records","floor","from","recordBytes","record","parseMeasurement","discard","reportMeasurement","discardedReadingError","parsedFields","rejectCustomReading","find","message","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/custom/custom.device.ts"],"mappings":";;;;;;AACA,IAAAA,KAAA,GAAAC,OAAA;AAGA,IAAAC,SAAA,GAAAD,OAAA;AAcA,IAAAE,qBAAA,GAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AACA,IAAAI,oBAAA,GAAAJ,OAAA;AAIA,IAAAK,SAAA,GAAAL,OAAA;AACA,IAAAM,gBAAA,GAAAN,OAAA;AACA,IAAAO,mBAAA,GAAAP,OAAA;AAEA,IAAAQ,gBAAA,GAAAR,OAAA;AAEA,IAAAS,gBAAA,GAAAT,OAAA;AACA,IAAAU,oBAAA,GAAAV,OAAA;AACA,IAAAW,eAAA,GAAAX,OAAA;AACA,IAAAY,eAAA,GAAAZ,OAAA;AACA,IAAAa,eAAA,GAAAb,OAAA;AAKA,IAAAc,oBAAA,GAAAd,OAAA;AAvCA;;AAsDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMe,YAAY,SAASC,gCAAe,CAAiB;EAOxDC,kBAAkB,GAAG,IAAIC,GAAG,CAAS,CAAC;EAC7BC,UAAU,GAAG,IAAIC,GAAG,CAAsC,CAAC;EAE3DC,iBAAiB,GAAG,IAAID,GAAG,CAA2B,CAAC;EAGxEE,WAAWA,CACTC,MAAc,EACdC,MAA0C,EAC1CC,UAAkC,EAClC;IACA,KAAK,CAACF,MAAM,EAAE;MACZ,GAAGC,MAAM;MACTE,uBAAuB,EACrBF,MAAM,CAACE,uBAAuB,IAAID,UAAU,CAACC;IACjD,CAAC,CAAC;IAEF,IAAI,CAACD,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACE,YAAY,GAAGF,UAAU,CAACG,kBAAkB,GAAG,CAAC;IACrD,IAAI,CAACC,aAAa,GAAGJ,UAAU,CAACI,aAAa;IAC7C,IAAI,CAACC,UAAU,CAACC,SAAS,GAAGN,UAAU,CAACM,SAAS;IAChD,IAAI,CAACC,kBAAkB,GAAG,IAAId,GAAG,CAAC,CAChC,IAAIM,MAAM,CAACS,qBAAqB,IAAI,EAAE,CAAC,EACvC,IAAIT,MAAM,CAACQ,kBAAkB,IAAI,EAAE,CAAC,CACrC,CAAC;IACF,MAAME,YAAY,GAAGT,UAAU,CAACU,IAAI,GAChC,IAAAC,+BAAU,EAACX,UAAU,CAACU,IAAI,EAAEZ,MAAM,CAACc,gBAAgB,IAAIC,SAAS,CAAC,GACjEA,SAAS;IAEb,IAAI,CAACC,YAAY,GACfL,YAAY,EAAEM,wBAAwB,KAAK,eAAe,GACtDf,UAAU,CAACc,YAAY,CAACE,MAAM,CAC3BC,OAAO,IAAKA,OAAO,CAACC,IAAI,KAAKT,YAAY,CAACU,KAAK,CAACC,WACnD,CAAC,GACDpB,UAAU,CAACc,YAAY;IAC7B,IAAI,CAACO,WAAW,GAAGrB,UAAU,CAACqB,WAAW;IACzC,IAAI,CAACC,gBAAgB,GAAGtB,UAAU,CAACsB,gBAAgB;IACnD,IAAI,CAACC,kBAAkB,GAAGvB,UAAU,CAACuB,kBAAkB,KAAK,IAAI;IAChE,IAAI,CAACC,gBAAgB,GAAGxB,UAAU,CAACM,SAAS,KAAK,SAAS;IAE1D,IAAIN,UAAU,CAACyB,YAAY,KAAKZ,SAAS,EAAE;MACzC,IAAI,CAACY,YAAY,GAAGzB,UAAU,CAACyB,YAAY;IAC7C;IAEA,IAAI,CAACC,mBAAmB,CAAC1B,UAAU,EAAED,MAAM,CAACO,SAAS,CAAC;IACtD,IAAI,CAACqB,kBAAkB,CAAC3B,UAAU,EAAED,MAAM,CAACO,SAAS,CAAC;IACrD,IAAI,CAACsB,uBAAuB,CAAC5B,UAAU,EAAED,MAAM,CAAC;IAEhDC,UAAU,CAAC6B,MAAM,CAACC,OAAO,CAAC,CAACC,KAAK,EAAEb,IAAI,KAAK;MACzC,IAAI,CAACxB,UAAU,CAACsC,GAAG,CAACd,IAAI,EAAE,IAAAe,0CAAoB,EAACF,KAAK,CAAC,CAAC;IACxD,CAAC,CAAC;EACJ;;EAEA;EACQH,uBAAuBA,CAC7B5B,UAAkC,EAClCD,MAA0C,EACpC;IACN,MAAMmC,MAAM,GAAGlC,UAAU,CAACmC,sBAAsB;IAEhD,IAAI,CAACD,MAAM,EAAE;MACX;IACF;IAEA,IAAI,CAACC,sBAAsB,GAAG,MAC5BD,MAAM,CAAC;MACLE,QAAQ,EAAE,IAAI,CAACtC,MAAM,CAACuC,EAAE;MACxBC,mBAAmB,EAAEvC,MAAM,CAACuC;IAC9B,CAAC,CAAC;EACN;;EAEA;EACQX,kBAAkBA,CACxB3B,UAAkC,EAClCM,SAA0D,EACpD;IACN,MAAMiC,GAAG,GAAGvC,UAAU,CAACuC,GAAG;IAE1B,IAAI,CAACA,GAAG,EAAE;MACR;IACF;IAEA,IAAI,CAAClB,WAAW,GAAG,IAAImB,8BAAc,CAAC,CAAC;IACvC,IAAI,CAACL,sBAAsB,GAAG,MAC5B,IAAIM,wCAAmB,CAAC;MACtBC,QAAQ,EAAEH,GAAG;MACbjC;IACF,CAAC,CAAC;EACN;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACUoB,mBAAmBA,CACzB1B,UAAkC,EAClCM,SAA0D,EACpD;IACN,MAAMI,IAAI,GAAGV,UAAU,CAACU,IAAI;IAE5B,IAAI,CAACA,IAAI,EAAE;MACT;IACF;IAEA,IAAI,CAACW,WAAW,GAAG,IAAIsB,gCAAe,CAACjC,IAAI,CAACkC,UAAU,CAAC;IAEvD,IAAI,CAACT,sBAAsB,GAAG,MAAM;MAClC,IAAIzB,IAAI,CAACmC,YAAY,KAAKhC,SAAS,EAAE;QACnC,IAAI,CAACrB,kBAAkB,CAACsD,KAAK,CAAC,CAAC;QAE/B,OAAO,IAAIC,yCAAwB,CAAC;UAClC5B,KAAK,EAAE;YACLC,WAAW,EAAEV,IAAI,CAACS,KAAK,CAACC,WAAW;YACnC4B,kBAAkB,EAAEtC,IAAI,CAACS,KAAK,CAAC6B;UACjC,CAAC;UACDC,OAAO,EAAE,IAAIC,sCAAkB,CAACxC,IAAI,CAACkC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;UAC3DtC,SAAS;UACTM,gBAAgB,EAAE,IAAI,CAACd,MAAM,CAACc,gBAAgB,IAAIC,SAAS;UAC3DsC,uBAAuB,EAAEzC,IAAI,CAACyC,uBAAuB;UACrDC,mBAAmB,EAAE1C,IAAI,CAAC0C,mBAAmB;UAC7CC,YAAY,EAAE,IAAI,CAACA,YAAY;UAC/BC,SAAS,EAAE,IAAI,CAACC,iBAAiB;UACjCC,MAAM,EACJ9C,IAAI,CAACmC,YAAY,KAAK,KAAK,GACvB,IAAI,CAACY,mBAAmB,GACxB/C,IAAI,CAACmC,YAAY,KAAK,KAAK,GACzB,IAAI,CAACa,mBAAmB,GACxB,IAAI,CAACC,mBAAmB;UAChCC,SAAS,EACPlD,IAAI,CAACmC,YAAY,KAAK,KAAK,GAAGhC,SAAS,GAAG,IAAI,CAACN,kBAAkB;UACnEsD,UAAU,EACRnD,IAAI,CAACmC,YAAY,KAAK,KAAK,GACtBiB,IAAI,IACHpD,IAAI,CAACqD,cAAc,KAAK,WAAW,IAAI,KAAK,CAACC,IAAI,CAACF,IAAI,CAAC,GACzDpD,IAAI,CAACmC,YAAY,KAAK,KAAK,GACxBiB,IAAI,IAAK,aAAa,CAACE,IAAI,CAACF,IAAI,CAAC,GAClCjD,SAAS;UACjBoD,WAAW,EACTvD,IAAI,CAACmC,YAAY,KAAK,KAAK,GAAGhC,SAAS,GAAGH,IAAI,CAACuD,WAAW;UAC5DC,cAAc,EACZxD,IAAI,CAACmC,YAAY,KAAK,KAAK,GAAGhC,SAAS,GAAGH,IAAI,CAACwD,cAAc;UAC/DC,aAAa,EACXzD,IAAI,CAACmC,YAAY,KAAK,KAAK,IAAInC,IAAI,CAACuD,WAAW,GAC3C,MAAM,CACJ;YACE7C,WAAW,EAAEV,IAAI,CAACS,KAAK,CAACC,WAAW;YACnC4B,kBAAkB,EAAEtC,IAAI,CAACS,KAAK,CAAC6B,kBAAkB;YACjDjB,KAAK,EAAE,IAAImB,sCAAkB,CAC3BxC,IAAI,CAACkC,UAAU,CAAC,CAAC,CAAC,IAAI,IACxB,CAAC,CAACwB,KAAK,CAAC1D,IAAI,CAACuD,WAAY;UAC3B,CAAC,CACF,GACDpD,SAAS;UACfwD,OAAO,EAAGC,MAAM,IACd,IAAI,CAACD,OAAO,GAAG,IAAIE,KAAK,CAAC,eAAeD,MAAM,EAAE,CAAC,CAAC;UACpDE,UAAU,EAAGC,QAAQ,IACnB,IAAI,CAACC,iBAAiB,GAAG;YACvBrE,UAAU,EAAE,IAAI,CAACA,UAAU;YAC3BsE,IAAI,EAAE,kBAAkB;YACxBF,QAAQ,EAAE;cACRG,OAAO,EAAEH,QAAQ,CAACI,aAAa;cAC/BC,KAAK,EAAEL,QAAQ,CAACM;YAClB;UACF,CAAC;QACL,CAAC,CAAC;MACJ;MAEA,OAAO,IAAAC,wCAAmB,EACxBtE,IAAI,EACJ;QACE2C,YAAY,EAAE,IAAI,CAACA,YAAY;QAC/BC,SAAS,EAAE,IAAI,CAACC;MAClB,CAAC,EACDjD,SAAS,EACT,IAAI,CAACR,MAAM,CAACc,gBAAgB,IAAIC,SAClC,CAAC;IACH,CAAC;EACH;EAEQ4C,mBAAmB,GAAIwB,IAAc,IAAW;IACtD,MAAMC,OAAO,GAAG,IAAAC,wCAAwB,EAACF,IAAI,CAACG,OAAO,CAAC;IAEtD,IAAIF,OAAO,CAACG,OAAO,CAACC,MAAM,KAAK,CAAC,EAAE;MAChC,IAAI,CAACjB,OAAO,GACV,IAAIE,KAAK,CAAC,qBAAqBU,IAAI,CAACnB,IAAI,mBAAmB,CAC7D,CAAC;MAED;IACF;IAEA,IAAI,CAACyB,QAAQ,GAAG;MACdC,kBAAkB,EAAEC,wBAAkB,CAACC,GAAG;MAC1CC,QAAQ,EAAEC,kBAAQ,CAACC,MAAM;MACzBC,aAAa,EAAEZ,OAAO,CAACG,OAAO;MAC9BU,QAAQ,EAAEb,OAAO,CAACa,QAAQ;MAC1BC,UAAU,EAAE,IAAAC,4CAA4B,EAAChB,IAAI,CAACnB,IAAI,CAAC;MACnDoC,WAAW,EAAEjB,IAAI,CAACnB;IACpB,CAA4B,CAAC;EAC/B,CAAC;EAEOJ,mBAAmB,GAAIuB,IAAc,IAAW;IACtD,MAAMC,OAAO,GAAG,IAAAiB,uBAAa,EAAClB,IAAI,CAACnB,IAAI,EAAEmB,IAAI,CAACG,OAAO,CAAC;IAEtD,IAAIF,OAAO,EAAE;MACX,IAAI,CAACkB,iBAAiB,CAAClB,OAAO,CAAC;IACjC;EACF,CAAC;EAEOvB,mBAAmB,GAAIsB,IAAc,IAAW;IACtD,IAAAoB,mCAAmB,EAACpB,IAAI,CAACnB,IAAI,EAAEmB,IAAI,CAACG,OAAO,CAAC,EAAEtD,OAAO,CAAEoD,OAAO,IAAK;MACjE,IAAI,CAAC,IAAI,CAAC3E,kBAAkB,CAAC+F,GAAG,CAACpB,OAAO,CAACgB,WAAW,CAAC,EAAE;QACrD,IAAI,CAACE,iBAAiB,CAAClB,OAAO,CAAC;MACjC;IACF,CAAC,CAAC;EACJ,CAAC;;EAED;EACQkB,iBAAiB,GAAIlB,OAAgC,IAAW;IACtE,IAAI,IAAI,CAAC1F,kBAAkB,CAAC8G,GAAG,CAACpB,OAAO,CAACgB,WAAW,CAAC,EAAE;MACpD;IACF;IAEA,IAAI,CAAC1G,kBAAkB,CAAC+G,GAAG,CAACrB,OAAO,CAACgB,WAAW,CAAC;IAChD,IAAI,CAACX,QAAQ,GAAG;MACd,GAAGL,OAAO;MACVS,QAAQ,EAAEC,kBAAQ,CAACC;IACrB,CAA4B,CAAC;EAC/B,CAAC;EAEOxC,YAAY,GAAImD,IAAoB,IAC1C,IAAAC,uCAAkB,EAAC,IAAI,CAACpG,UAAU,EAAEmG,IAAI,CAAC;EAEnCjD,iBAAiB,GAAIe,MAAc,IAAW;IACpD,IAAI,CAACD,OAAO,GACV,IAAIE,KAAK,CACP,kBAAkB,IAAI,CAACvE,UAAU,CAACqC,EAAE,wBAAwBiC,MAAM,GACpE,CACF,CAAC;EACH,CAAC;EAESoC,eAAe,GAAGA,CAACC,GAAa,EAAEzF,IAAY,KAAc;IACpE,MAAM0F,QAAQ,GAAG,IAAI,CAAClH,UAAU,CAACmH,GAAG,CAACC,MAAM,CAAC5F,IAAI,IAAI,EAAE,CAAC,CAAC6F,WAAW,CAAC,CAAC,CAAC;IAEtE,IAAI,CAACH,QAAQ,EAAE;MACb,OAAO,KAAK;IACd;IAEA,OAAOA,QAAQ,CAACD,GAAG,CAAC;EACtB,CAAC;;EAED;AACF;AACA;AACA;AACA;EACYK,qBAAqB,GAC7BC,IAAuD,IACD;IACtD,IAAI;MACF,IAAIA,IAAI,CAACC,WAAW,CAACC,cAAc,IAAI,CAACF,IAAI,CAACG,WAAW,EAAE;QACxD,OAAO;UACL,GAAGH,IAAI;UACPC,WAAW,EAAE;YAAE,GAAGD,IAAI,CAACC,WAAW;YAAEvB,QAAQ,EAAEC,kBAAQ,CAACyB;UAAM;QAC/D,CAAC;MACH;MAEA,IAAI,CAACC,WAAW,CACdL,IAAI,CAACM,UAAU,EACfN,IAAI,CAACC,WAAW,EAChBD,IAAI,CAAClF,KAAK,IAAI,EAAE,EAChBkF,IAAI,CAACG,WAAW,KAAK,IACvB,CAAC;MAED,IAAIH,IAAI,CAACC,WAAW,CAACM,WAAW,EAAE;QAChC,OAAO;UACL,GAAGP,IAAI;UACPC,WAAW,EAAE;YAAE,GAAGD,IAAI,CAACC,WAAW;YAAEvB,QAAQ,EAAEC,kBAAQ,CAACyB;UAAM;QAC/D,CAAC;MACH;MAEA,IAAI,IAAI,CAACjH,aAAa,EAAE;QACtB,IAAI,CAACqH,oBAAoB,CAACR,IAAI,CAAC;QAE/B,OAAO;UACL,GAAGA,IAAI;UACPC,WAAW,EAAE;YAAE,GAAGD,IAAI,CAACC,WAAW;YAAEvB,QAAQ,EAAEC,kBAAQ,CAAC8B;UAAO;QAChE,CAAC;MACH;MAEA,IAAI,IAAI,CAACC,2BAA2B,CAACV,IAAI,CAAC,EAAE;QAC1C,IAAI,CAACW,WAAW,CAACX,IAAI,CAAC;MACxB;IACF,CAAC,CAAC,OAAOY,KAAK,EAAE;MACd,IAAI,CAACxD,OAAO,GAAGwD,KAAc,CAAC;IAChC;IAEA,OAAO;MACL,GAAGZ,IAAI;MACPC,WAAW,EAAE;QAAE,GAAGD,IAAI,CAACC,WAAW;QAAEvB,QAAQ,EAAEC,kBAAQ,CAACyB;MAAM;IAC/D,CAAC;EACH,CAAC;;EAED;EACUM,2BAA2B,GACnCG,KAAwD,IAC5C,IAAI;;EAElB;AACF;AACA;AACA;EACYC,mBAAmBA,CAC3BC,aAA2B,EAC3BC,eAAyB,EACT;IAChB,IAAI,CAACX,WAAW,CAACU,aAAa,EAAEnH,SAAS,EAAEoH,eAAe,EAAE,IAAI,CAAC;IAEjE;EACF;EAEQX,WAAWA,CACjBC,UAAwB,EACxBL,WAAoC,EACpCnF,KAAwB,EACxBqF,WAAoB,EACd;IACN,IAAI,CAAClH,YAAY,GAAG;MAClBqH,UAAU;MACVL,WAAW;MACXnF,KAAK;MACLqF,WAAW;MACXc,IAAI,EAAGC,OAAO,IACZ,IAAI,CAAC5C,QAAQ,GAAG;QACd,GAAG4C,OAAO;QACVxC,QAAQ,EAAEC,kBAAQ,CAACC;MACrB,CAAiB;IACrB,CAAC,CAAC;EACJ;;EAEA;EACUuC,oBAAoBA,CAAA,EAAS;IACrC,MAAMC,MAAM,GAAG,IAAI,CAACjI,aAAa;IAEjC,IAAI,CAACiI,MAAM,EAAE;MACX;IACF;IAEA,MAAMC,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC1I,iBAAiB,CAAC2I,MAAM,CAAC,CAAC,CAAC;IAEvD,IAAI,CAAC3I,iBAAiB,CAACkD,KAAK,CAAC,CAAC;IAC9B,MAAMkD,UAAU,GAAG,IAAI,CAACwC,gBAAgB;IAExC,IAAI,CAACA,gBAAgB,GAAG3H,SAAS;IAEjC,IAAI,CAACmF,UAAU,IAAIqC,MAAM,CAACH,IAAI,KAAK,MAAM,EAAE;MACzC;IACF;IAEAI,UAAU,CAACxG,OAAO,CAAE2G,SAAS,IAAK;MAChC,IAAIA,SAAS,CAACC,KAAK,GAAGL,MAAM,CAACM,UAAU,EAAE;QACvC;MACF;MAEA,MAAMC,OAAO,GAAG;QACd,GAAGH,SAAS,CAACI,MAAM;QACnB,GAAGC,MAAM,CAACC,WAAW,CACnB,CAAC,GAAGN,SAAS,CAACO,IAAI,CAACC,OAAO,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAACpF,IAAI,EAAEgB,KAAK,CAAC,KAAK,CACnDhB,IAAI,EACJ,IAAI,CAACqF,cAAc,CACjBV,SAAS,CAACI,MAAM,CAACrD,kBAAkB,EACnC1B,IAAI,EACJgB,KAAK,GAAG2D,SAAS,CAACC,KACpB,CAAC,CACF,CACH,CAAC;QACD/C,QAAQ,EAAEC,kBAAQ,CAACC,MAAM;QACzBG;MACF,CAA4B;MAE5B,IAAI,CAACkC,IAAI,CAAC,IAAI,CAACkB,eAAe,CAACR,OAAO,CAAC,CAAC;IAC1C,CAAC,CAAC;EACJ;EAEQO,cAAcA,CACpB3D,kBAAsC,EACtC1B,IAAY,EACZuF,KAAa,EACL;IACR,MAAMC,QAAQ,GAAG,IAAI,CAACtJ,UAAU,CAACuJ,MAAM,CAAC1C,GAAG,CACzC,GAAGrB,kBAAkB,IAAI1B,IAAI,EAC/B,CAAC,EAAEwF,QAAQ;IAEX,OAAOA,QAAQ,KAAKzI,SAAS,GACzB2I,IAAI,CAACC,KAAK,CAACJ,KAAK,CAAC,GACjBK,MAAM,CAACL,KAAK,CAACM,OAAO,CAACL,QAAQ,CAAC,CAAC;EACrC;;EAEA;EACQ7B,oBAAoBA,CAC1BR,IAAuD,EACjD;IACN,MAAM2C,YAAY,GAAG3C,IAAI,CAACC,WAAW,CAAC0C,YAAY,IAAI,EAAE;IACxD,MAAMC,eAAe,GAAG,IAAI,CAACrB,gBAAgB,IAAI,IAAIsB,IAAI,CAAC,CAAC;IAE3DF,YAAY,CAAC9H,OAAO,CAAEiI,WAAW,IAAK;MACpC,MAAM5B,OAAO,GAAG,IAAI,CAAC6B,iBAAiB,CAAC/C,IAAI,CAACM,UAAU,EAAEwC,WAAW,CAAC;MACpE,MAAME,SAAS,GAAG,IAAI,CAACC,oBAAoB,CAAC/B,OAAO,EAAE4B,WAAW,CAAC;;MAEjE;MACA;MACA,IAAIE,SAAS,EAAE;QACb;MACF;;MAEA;MACA,IAAI,IAAI,CAACE,SAAS,CAACJ,WAAW,CAACvE,kBAAkB,CAAC,KAAK,QAAQ,EAAE;QAC/D,IAAI,CAACD,QAAQ,GAAG4C,OAAO,CAAC;QAExB;MACF;MAEA,MAAMiC,GAAG,GAAGtD,MAAM,CAACiD,WAAW,CAACvE,kBAAkB,CAAC;MAClD,MAAM6E,QAAQ,GAAG,IAAI,CAACzK,iBAAiB,CAACiH,GAAG,CAACuD,GAAG,CAAC;MAChD,MAAMpB,IAAI,GAAGqB,QAAQ,EAAErB,IAAI,IAAI,IAAIrJ,GAAG,CAAiB,CAAC;MACxD,MAAM2K,aAAa,GAAGnC,OAAiD;MAEvE4B,WAAW,CAACQ,UAAU,CAACzI,OAAO,CAAEgC,IAAI,IAAK;QACvC,MAAMuF,KAAK,GAAGiB,aAAa,CAACxG,IAAI,CAAC;QAEjC,IAAI,OAAOuF,KAAK,KAAK,QAAQ,EAAE;UAC7BL,IAAI,CAAChH,GAAG,CAAC8B,IAAI,EAAE,CAACkF,IAAI,CAACnC,GAAG,CAAC/C,IAAI,CAAC,IAAI,CAAC,IAAIuF,KAAK,CAAC;QAC/C;MACF,CAAC,CAAC;MAEF,IAAI,CAACzJ,iBAAiB,CAACoC,GAAG,CAACoI,GAAG,EAAE;QAC9B1B,KAAK,EAAE,CAAC2B,QAAQ,EAAE3B,KAAK,IAAI,CAAC,IAAI,CAAC;QACjCG,MAAM,EAAEwB,QAAQ,EAAExB,MAAM,IAAIV,OAAO;QACnCa;MACF,CAAC,CAAC;MACF,IAAI,CAACR,gBAAgB,KAAKqB,eAAe;IAC3C,CAAC,CAAC;EACJ;;EAEA;EACUT,eAAe,GAAGA,CAC1BjB,OAAqB,EACrBpG,KAAyB,EACzByI,YAAqB,KACG;IACxB,MAAMC,QAAQ,GAAG,IAAI,CAACzK,UAAU,CAACoJ,eAAe;IAEhD,OAAOqB,QAAQ,GACVA,QAAQ,CAACtC,OAAO,EAAEpG,KAAK,EAAEyI,YAAY,CAAC,GACvCrC,OAAO;EACb,CAAC;EAEOD,IAAIA,CAACC,OAA4B,EAAQ;IAC/C,IAAIA,OAAO,EAAE;MACX,IAAI,CAAC5C,QAAQ,GAAG4C,OAAO,CAAC;IAC1B;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACUP,WAAWA,CAACX,IAAuD,EAAE;IAC3E,MAAMyD,QAAQ,GAAGzD,IAAI,CAACC,WAAW,CAACyD,eAAe;IAEjD,IAAI,CAACD,QAAQ,IAAI,CAACzD,IAAI,CAAClF,KAAK,EAAE;MAC5B,IAAI,CAAC6I,MAAM,CAAC3D,IAAI,CAACM,UAAU,EAAEN,IAAI,CAACC,WAAW,EAAED,IAAI,CAAClF,KAAK,CAAC;MAE1D;IACF;IAEA,MAAM8I,OAAO,GAAGrB,IAAI,CAACsB,KAAK,CACxB,CAAC7D,IAAI,CAAClF,KAAK,CAACuD,MAAM,GAAGoF,QAAQ,CAACK,IAAI,IAAIL,QAAQ,CAACM,WACjD,CAAC;IAED,KAAK,IAAIC,MAAM,GAAG,CAAC,EAAEA,MAAM,GAAGJ,OAAO,EAAEI,MAAM,EAAE,EAAE;MAC/C,IAAI,CAACL,MAAM,CACT,IAAAM,kCAAgB,EACdjE,IAAI,CAAClF,KAAK,EACVkF,IAAI,CAACC,WAAW,EAChBwD,QAAQ,CAACK,IAAI,GAAGE,MAAM,GAAGP,QAAQ,CAACM,WACpC,CAAC,EACD/D,IAAI,CAACC,WAAW,EAChBD,IAAI,CAAClF,KAAK,EACV2I,QAAQ,CAACK,IAAI,GAAGE,MAAM,GAAGP,QAAQ,CAACM,WACpC,CAAC;IACH;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACUJ,MAAMA,CACZrD,UAAwB,EACxBL,WAAwB,EACxBnF,KAAyB,EACzByI,YAAqB,EACf;IACN,MAAMZ,YAAY,GAAG1C,WAAW,CAAC0C,YAAY,IAAI,EAAE;IAEnD,IAAIA,YAAY,CAACtE,MAAM,KAAK,CAAC,EAAE;MAC7B,IAAI,CAAC6F,OAAO,CAAC,4CAA4C,EAAE5D,UAAU,CAAC;MAEtE;IACF;IAEAqC,YAAY,CAAC9H,OAAO,CAAEiI,WAAW,IAC/B,IAAI,CAACqB,iBAAiB,CAAC7D,UAAU,EAAEwC,WAAW,EAAEhI,KAAK,EAAEyI,YAAY,CACrE,CAAC;EACH;EAEQW,OAAOA,CAAC7G,MAAc,EAAEiD,UAAwB,EAAQ;IAC9D,IAAI,CAAClD,OAAO,GACV,IAAAgH,0CAAqB,EAAC,IAAI,CAACrL,UAAU,CAACqC,EAAE,EAAEiC,MAAM,EAAEiD,UAAU,CAC9D,CAAC;EACH;EAEQ6D,iBAAiBA,CACvB7D,UAAwB,EACxBwC,WAA6B,EAC7BhI,KAAyB,EACzByI,YAAqB,EACf;IACN,MAAMrC,OAAO,GAAG,IAAI,CAAC6B,iBAAiB,CAACzC,UAAU,EAAEwC,WAAW,CAAC;IAC/D,MAAME,SAAS,GAAG,IAAI,CAACC,oBAAoB,CAAC/B,OAAO,EAAE4B,WAAW,CAAC;IAEjE,IAAIE,SAAS,EAAE;MACb,IAAI,CAACkB,OAAO,CAAClB,SAAS,EAAE9B,OAAO,CAAC;MAEhC;IACF;IAEA,IAAI,CAACD,IAAI,CAAC,IAAI,CAACkB,eAAe,CAACjB,OAAO,EAAEpG,KAAK,EAAEyI,YAAY,CAAC,CAAC;EAC/D;EAEQR,iBAAiBA,CACvBzC,UAAwB,EACxBwC,WAA6B,EACf;IACd,MAAM5B,OAAO,GAAG;MACdxC,QAAQ,EAAE4B,UAAU,CAAC5B,QAAQ;MAC7BH,kBAAkB,EAAEuE,WAAW,CAACvE;IAClC,CAAiB;IAEjB,MAAM8E,aAAa,GAAGnC,OAAiD;IACvE,MAAMmD,YAAY,GAAG/D,UAAoD;IAEzEwC,WAAW,CAACQ,UAAU,CAACzI,OAAO,CAAEgC,IAAI,IAAK;MACvCwG,aAAa,CAACxG,IAAI,CAAC,GAAGwH,YAAY,CAACxH,IAAI,CAAC;IAC1C,CAAC,CAAC;IAEF,OAAOqE,OAAO;EAChB;EAEQ+B,oBAAoBA,CAC1B/B,OAAqB,EACrB4B,WAA6B,EACT;IACpB,OAAOA,WAAW,CAACQ,UAAU,CAC1BrB,GAAG,CAAEpF,IAAI,IACR,IAAAyH,wCAAmB,EACjB,IAAI,CAACvL,UAAU,CAACuJ,MAAM,EACtBQ,WAAW,CAACvE,kBAAkB,EAC9B1B,IAAI,EACHqE,OAAO,CAA4CrE,IAAI,CAC1D,CACF,CAAC,CACA0H,IAAI,CAAEC,OAAO,IAAKA,OAAO,KAAK5K,SAAS,CAAC;EAC7C;AACF;AAAC6K,OAAA,CAAApM,YAAA,GAAAA,YAAA","ignoreList":[]}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.hasUnusableSensorStatus = exports.glucoseRecordDetails = void 0;
|
|
7
|
+
var _standardGattGlucoseFrame = require("./standard-gatt.glucose-frame.js");
|
|
8
|
+
const NIBBLE_BITS = 4;
|
|
9
|
+
const NIBBLE_MASK = 0x0f;
|
|
10
|
+
|
|
11
|
+
/** Indexed by the specimen type code; 0, 10 (control solution) and 11-15 are not a patient sample. */
|
|
12
|
+
const SPECIMEN_TYPES = [undefined, "capillaryWholeBlood", "capillaryPlasma", "venousWholeBlood", "venousPlasma", "arterialWholeBlood", "arterialPlasma", "undeterminedWholeBlood", "undeterminedPlasma", "interstitialFluid"];
|
|
13
|
+
|
|
14
|
+
/** Indexed by the sample location code; 0, 4 (control solution), 5-14 and 15 (not available) say nothing. */
|
|
15
|
+
const SAMPLE_LOCATIONS = [undefined, "finger", "alternateSite", "earlobe"];
|
|
16
|
+
const STATUS_BATTERY_LOW = 0x0001;
|
|
17
|
+
const STATUS_SENSOR_MALFUNCTION = 0x0002;
|
|
18
|
+
const STATUS_SAMPLE_TOO_SMALL = 0x0004;
|
|
19
|
+
const STATUS_STRIP_INSERTION_ERROR = 0x0008;
|
|
20
|
+
const STATUS_STRIP_TYPE_INCORRECT = 0x0010;
|
|
21
|
+
const STATUS_RESULT_TOO_HIGH = 0x0020;
|
|
22
|
+
const STATUS_RESULT_TOO_LOW = 0x0040;
|
|
23
|
+
const STATUS_TEMPERATURE_TOO_HIGH = 0x0080;
|
|
24
|
+
const STATUS_TEMPERATURE_TOO_LOW = 0x0100;
|
|
25
|
+
const STATUS_READ_INTERRUPTED = 0x0200;
|
|
26
|
+
const STATUS_DEVICE_FAULT = 0x0400;
|
|
27
|
+
const STATUS_TIME_FAULT = 0x0800;
|
|
28
|
+
|
|
29
|
+
/** The test did not take place properly, so the concentration is not a patient's result. */
|
|
30
|
+
const UNUSABLE_STATUS = STATUS_SENSOR_MALFUNCTION | STATUS_SAMPLE_TOO_SMALL | STATUS_STRIP_INSERTION_ERROR | STATUS_STRIP_TYPE_INCORRECT | STATUS_READ_INTERRUPTED | STATUS_DEVICE_FAULT;
|
|
31
|
+
const SENSOR_WARNINGS = [[STATUS_BATTERY_LOW, "batteryLow"], [STATUS_TEMPERATURE_TOO_HIGH, "temperatureTooHigh"], [STATUS_TEMPERATURE_TOO_LOW, "temperatureTooLow"], [STATUS_TIME_FAULT, "timeFault"]];
|
|
32
|
+
const reportedUnit = frame => (0, _standardGattGlucoseFrame.hasFlag)((0, _standardGattGlucoseFrame.byte)(frame, 0) ?? 0, _standardGattGlucoseFrame.FLAG_MOL_PER_L) ? "mmol/L" : "mg/dL";
|
|
33
|
+
const outOfRange = status => {
|
|
34
|
+
if ((0, _standardGattGlucoseFrame.hasFlag)(status, STATUS_RESULT_TOO_HIGH)) {
|
|
35
|
+
return "high";
|
|
36
|
+
}
|
|
37
|
+
return (0, _standardGattGlucoseFrame.hasFlag)(status, STATUS_RESULT_TOO_LOW) ? "low" : undefined;
|
|
38
|
+
};
|
|
39
|
+
const sensorWarnings = status => SENSOR_WARNINGS.filter(([flag]) => (0, _standardGattGlucoseFrame.hasFlag)(status, flag)).map(([, warning]) => warning);
|
|
40
|
+
|
|
41
|
+
/** Whether the meter flagged the record as a test that failed rather than a result. */
|
|
42
|
+
const hasUnusableSensorStatus = frame => {
|
|
43
|
+
const status = (0, _standardGattGlucoseFrame.sensorStatusFromGlucoseFrame)(frame);
|
|
44
|
+
return status !== undefined && (0, _standardGattGlucoseFrame.hasFlag)(status, UNUSABLE_STATUS);
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
/** What the record says about itself, beside its concentration. */
|
|
48
|
+
exports.hasUnusableSensorStatus = hasUnusableSensorStatus;
|
|
49
|
+
const glucoseRecordDetails = frame => {
|
|
50
|
+
const sequenceNumber = (0, _standardGattGlucoseFrame.sequenceNumberFromGlucoseFrame)(frame);
|
|
51
|
+
const typeAndLocation = (0, _standardGattGlucoseFrame.typeAndLocationFromGlucoseFrame)(frame);
|
|
52
|
+
const status = (0, _standardGattGlucoseFrame.sensorStatusFromGlucoseFrame)(frame);
|
|
53
|
+
const specimen = typeAndLocation === undefined ? undefined : SPECIMEN_TYPES[typeAndLocation & NIBBLE_MASK];
|
|
54
|
+
const sampleLocation = typeAndLocation === undefined ? undefined : SAMPLE_LOCATIONS[typeAndLocation >> NIBBLE_BITS];
|
|
55
|
+
const range = status === undefined ? undefined : outOfRange(status);
|
|
56
|
+
const warnings = status === undefined ? [] : sensorWarnings(status);
|
|
57
|
+
return {
|
|
58
|
+
reportedUnit: reportedUnit(frame),
|
|
59
|
+
...(sequenceNumber !== undefined && {
|
|
60
|
+
sequenceNumber
|
|
61
|
+
}),
|
|
62
|
+
...(specimen && {
|
|
63
|
+
specimen
|
|
64
|
+
}),
|
|
65
|
+
...(sampleLocation && {
|
|
66
|
+
sampleLocation
|
|
67
|
+
}),
|
|
68
|
+
...(range && {
|
|
69
|
+
outOfRange: range
|
|
70
|
+
}),
|
|
71
|
+
...(warnings.length > 0 && {
|
|
72
|
+
sensorStatus: warnings
|
|
73
|
+
})
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
exports.glucoseRecordDetails = glucoseRecordDetails;
|
|
77
|
+
//# sourceMappingURL=standard-gatt.glucose-details.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_standardGattGlucoseFrame","require","NIBBLE_BITS","NIBBLE_MASK","SPECIMEN_TYPES","undefined","SAMPLE_LOCATIONS","STATUS_BATTERY_LOW","STATUS_SENSOR_MALFUNCTION","STATUS_SAMPLE_TOO_SMALL","STATUS_STRIP_INSERTION_ERROR","STATUS_STRIP_TYPE_INCORRECT","STATUS_RESULT_TOO_HIGH","STATUS_RESULT_TOO_LOW","STATUS_TEMPERATURE_TOO_HIGH","STATUS_TEMPERATURE_TOO_LOW","STATUS_READ_INTERRUPTED","STATUS_DEVICE_FAULT","STATUS_TIME_FAULT","UNUSABLE_STATUS","SENSOR_WARNINGS","reportedUnit","frame","hasFlag","byte","FLAG_MOL_PER_L","outOfRange","status","sensorWarnings","filter","flag","map","warning","hasUnusableSensorStatus","sensorStatusFromGlucoseFrame","exports","glucoseRecordDetails","sequenceNumber","sequenceNumberFromGlucoseFrame","typeAndLocation","typeAndLocationFromGlucoseFrame","specimen","sampleLocation","range","warnings","length","sensorStatus"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-details.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.typeAndLocationFromGlucoseFrame = exports.sequenceNumberFromGlucoseFrame = exports.sensorStatusFromGlucoseFrame = exports.hasFlag = exports.concentrationIndex = exports.byte = exports.TIME_OFFSET_INDEX = exports.FLAG_TIME_OFFSET = exports.FLAG_MOL_PER_L = exports.FLAG_CONCENTRATION = exports.BASE_TIME_INDEX = void 0;
|
|
7
|
+
const FLAG_TIME_OFFSET = exports.FLAG_TIME_OFFSET = 0x01;
|
|
8
|
+
const FLAG_CONCENTRATION = exports.FLAG_CONCENTRATION = 0x02;
|
|
9
|
+
const FLAG_MOL_PER_L = exports.FLAG_MOL_PER_L = 0x04;
|
|
10
|
+
const FLAG_SENSOR_STATUS = 0x08;
|
|
11
|
+
const SEQUENCE_NUMBER_INDEX = 1;
|
|
12
|
+
const BASE_TIME_INDEX = exports.BASE_TIME_INDEX = 3;
|
|
13
|
+
const TIME_OFFSET_INDEX = exports.TIME_OFFSET_INDEX = 10;
|
|
14
|
+
const BYTE_BITS = 8;
|
|
15
|
+
const TYPE_AND_LOCATION_OFFSET = 2;
|
|
16
|
+
const SENSOR_STATUS_OFFSET = 3;
|
|
17
|
+
const hasFlag = (flags, flag) => (flags & flag) !== 0;
|
|
18
|
+
exports.hasFlag = hasFlag;
|
|
19
|
+
const concentrationIndex = flags => hasFlag(flags, FLAG_TIME_OFFSET) ? TIME_OFFSET_INDEX + 2 : TIME_OFFSET_INDEX;
|
|
20
|
+
exports.concentrationIndex = concentrationIndex;
|
|
21
|
+
const byte = (frame, index) => {
|
|
22
|
+
const value = Number.parseInt(frame[index] ?? "", 16);
|
|
23
|
+
return Number.isInteger(value) ? value : undefined;
|
|
24
|
+
};
|
|
25
|
+
exports.byte = byte;
|
|
26
|
+
const uint16 = (frame, index) => {
|
|
27
|
+
const low = byte(frame, index);
|
|
28
|
+
const high = byte(frame, index + 1);
|
|
29
|
+
return low === undefined || high === undefined ? undefined : low | high << BYTE_BITS;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
/** The meter's number for the record, in bytes 1-2 of every Glucose Measurement. */
|
|
33
|
+
const sequenceNumberFromGlucoseFrame = frame => uint16(frame, SEQUENCE_NUMBER_INDEX);
|
|
34
|
+
|
|
35
|
+
/** Specimen type in the low nibble and sample location in the high one; only a record with a concentration has it. */
|
|
36
|
+
exports.sequenceNumberFromGlucoseFrame = sequenceNumberFromGlucoseFrame;
|
|
37
|
+
const typeAndLocationFromGlucoseFrame = frame => {
|
|
38
|
+
const flags = byte(frame, 0) ?? 0;
|
|
39
|
+
return hasFlag(flags, FLAG_CONCENTRATION) ? byte(frame, concentrationIndex(flags) + TYPE_AND_LOCATION_OFFSET) : undefined;
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
/** The Sensor Status Annunciation bits, which only a record that sets flag bit 3 carries. */
|
|
43
|
+
exports.typeAndLocationFromGlucoseFrame = typeAndLocationFromGlucoseFrame;
|
|
44
|
+
const sensorStatusFromGlucoseFrame = frame => {
|
|
45
|
+
const flags = byte(frame, 0) ?? 0;
|
|
46
|
+
return hasFlag(flags, FLAG_SENSOR_STATUS) && hasFlag(flags, FLAG_CONCENTRATION) ? uint16(frame, concentrationIndex(flags) + SENSOR_STATUS_OFFSET) : undefined;
|
|
47
|
+
};
|
|
48
|
+
exports.sensorStatusFromGlucoseFrame = sensorStatusFromGlucoseFrame;
|
|
49
|
+
//# sourceMappingURL=standard-gatt.glucose-frame.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["FLAG_TIME_OFFSET","exports","FLAG_CONCENTRATION","FLAG_MOL_PER_L","FLAG_SENSOR_STATUS","SEQUENCE_NUMBER_INDEX","BASE_TIME_INDEX","TIME_OFFSET_INDEX","BYTE_BITS","TYPE_AND_LOCATION_OFFSET","SENSOR_STATUS_OFFSET","hasFlag","flags","flag","concentrationIndex","byte","frame","index","value","Number","parseInt","isInteger","undefined","uint16","low","high","sequenceNumberFromGlucoseFrame","typeAndLocationFromGlucoseFrame","sensorStatusFromGlucoseFrame"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-frame.ts"],"mappings":";;;;;;AAAA,MAAMA,gBAAgB,GAAAC,OAAA,CAAAD,gBAAA,GAAG,IAAI;AAC7B,MAAME,kBAAkB,GAAAD,OAAA,CAAAC,kBAAA,GAAG,IAAI;AAC/B,MAAMC,cAAc,GAAAF,OAAA,CAAAE,cAAA,GAAG,IAAI;AAC3B,MAAMC,kBAAkB,GAAG,IAAI;AAE/B,MAAMC,qBAAqB,GAAG,CAAC;AAC/B,MAAMC,eAAe,GAAAL,OAAA,CAAAK,eAAA,GAAG,CAAC;AACzB,MAAMC,iBAAiB,GAAAN,OAAA,CAAAM,iBAAA,GAAG,EAAE;AAE5B,MAAMC,SAAS,GAAG,CAAC;AACnB,MAAMC,wBAAwB,GAAG,CAAC;AAClC,MAAMC,oBAAoB,GAAG,CAAC;AAE9B,MAAMC,OAAO,GAAGA,CAACC,KAAa,EAAEC,IAAY,KAAc,CAACD,KAAK,GAAGC,IAAI,MAAM,CAAC;AAACZ,OAAA,CAAAU,OAAA,GAAAA,OAAA;AAE/E,MAAMG,kBAAkB,GAAIF,KAAa,IACvCD,OAAO,CAACC,KAAK,EAAEZ,gBAAgB,CAAC,GAAGO,iBAAiB,GAAG,CAAC,GAAGA,iBAAiB;AAACN,OAAA,CAAAa,kBAAA,GAAAA,kBAAA;AAE/E,MAAMC,IAAI,GAAGA,CAACC,KAAwB,EAAEC,KAAa,KAAyB;EAC5E,MAAMC,KAAK,GAAGC,MAAM,CAACC,QAAQ,CAACJ,KAAK,CAACC,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC;EAErD,OAAOE,MAAM,CAACE,SAAS,CAACH,KAAK,CAAC,GAAGA,KAAK,GAAGI,SAAS;AACpD,CAAC;AAACrB,OAAA,CAAAc,IAAA,GAAAA,IAAA;AAEF,MAAMQ,MAAM,GAAGA,CAACP,KAAwB,EAAEC,KAAa,KAAyB;EAC9E,MAAMO,GAAG,GAAGT,IAAI,CAACC,KAAK,EAAEC,KAAK,CAAC;EAC9B,MAAMQ,IAAI,GAAGV,IAAI,CAACC,KAAK,EAAEC,KAAK,GAAG,CAAC,CAAC;EAEnC,OAAOO,GAAG,KAAKF,SAAS,IAAIG,IAAI,KAAKH,SAAS,GAC1CA,SAAS,GACTE,GAAG,GAAIC,IAAI,IAAIjB,SAAU;AAC/B,CAAC;;AAED;AACA,MAAMkB,8BAA8B,GAClCV,KAAwB,IACDO,MAAM,CAACP,KAAK,EAAEX,qBAAqB,CAAC;;AAE7D;AAAAJ,OAAA,CAAAyB,8BAAA,GAAAA,8BAAA;AACA,MAAMC,+BAA+B,GACnCX,KAAwB,IACD;EACvB,MAAMJ,KAAK,GAAGG,IAAI,CAACC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC;EAEjC,OAAOL,OAAO,CAACC,KAAK,EAAEV,kBAAkB,CAAC,GACrCa,IAAI,CAACC,KAAK,EAAEF,kBAAkB,CAACF,KAAK,CAAC,GAAGH,wBAAwB,CAAC,GACjEa,SAAS;AACf,CAAC;;AAED;AAAArB,OAAA,CAAA0B,+BAAA,GAAAA,+BAAA;AACA,MAAMC,4BAA4B,GAChCZ,KAAwB,IACD;EACvB,MAAMJ,KAAK,GAAGG,IAAI,CAACC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC;EAEjC,OAAOL,OAAO,CAACC,KAAK,EAAER,kBAAkB,CAAC,IAAIO,OAAO,CAACC,KAAK,EAAEV,kBAAkB,CAAC,GAC3EqB,MAAM,CAACP,KAAK,EAAEF,kBAAkB,CAACF,KAAK,CAAC,GAAGF,oBAAoB,CAAC,GAC/DY,SAAS;AACf,CAAC;AAACrB,OAAA,CAAA2B,4BAAA,GAAAA,4BAAA","ignoreList":[]}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createGlucoseSequencer = exports.RECORD_ACCESS_CONTROL_POINT_UUID = exports.GLUCOSE_SERVICE_UUID = exports.GLUCOSE_MEASUREMENT_UUID = void 0;
|
|
7
|
+
var _bytesToHex = require("../../../utils/bytes-to-hex.js");
|
|
8
|
+
var _sigUuid = require("../../../utils/sig-uuid.js");
|
|
9
|
+
var _recordCursor = require("../../record-cursor.js");
|
|
10
|
+
var _standardGattGlucoseFrame = require("./standard-gatt.glucose-frame.js");
|
|
11
|
+
const GLUCOSE_SERVICE_UUID = exports.GLUCOSE_SERVICE_UUID = (0, _sigUuid.sigUuid)("1808");
|
|
12
|
+
const GLUCOSE_MEASUREMENT_UUID = exports.GLUCOSE_MEASUREMENT_UUID = (0, _sigUuid.sigUuid)("2a18");
|
|
13
|
+
const RECORD_ACCESS_CONTROL_POINT_UUID = exports.RECORD_ACCESS_CONTROL_POINT_UUID = (0, _sigUuid.sigUuid)("2a52");
|
|
14
|
+
const RACP_REPORT_STORED_RECORDS = 0x01;
|
|
15
|
+
const RACP_RESPONSE_CODE = 0x06;
|
|
16
|
+
const RACP_OPERATOR_ALL_RECORDS = 0x01;
|
|
17
|
+
const RACP_OPERATOR_GREATER_OR_EQUAL = 0x03;
|
|
18
|
+
const RACP_FILTER_SEQUENCE_NUMBER = 0x01;
|
|
19
|
+
const RESPONSE_OPCODE_INDEX = 0;
|
|
20
|
+
const RESPONSE_REQUEST_INDEX = 2;
|
|
21
|
+
const RESPONSE_RESULT_INDEX = 3;
|
|
22
|
+
|
|
23
|
+
/** Invalid operator, operator not supported, invalid operand and operand not supported. */
|
|
24
|
+
const FILTER_REFUSALS = new Set([0x03, 0x04, 0x05, 0x09]);
|
|
25
|
+
const BYTE_BITS = 8;
|
|
26
|
+
const MAX_SEQUENCE_NUMBER = 0xffff;
|
|
27
|
+
const CURSOR_KEY_PREFIX = "@ovok/native/glucose-sequence";
|
|
28
|
+
const reportAllRecords = () => (0, _bytesToHex.bytesToHex)([RACP_REPORT_STORED_RECORDS, RACP_OPERATOR_ALL_RECORDS]);
|
|
29
|
+
const reportRecordsFrom = sequenceNumber => (0, _bytesToHex.bytesToHex)([RACP_REPORT_STORED_RECORDS, RACP_OPERATOR_GREATER_OR_EQUAL, RACP_FILTER_SEQUENCE_NUMBER, sequenceNumber, sequenceNumber >> BYTE_BITS]);
|
|
30
|
+
|
|
31
|
+
/** The first number worth asking for, or nothing when none is known or the one after it cannot be written. */
|
|
32
|
+
const sequenceToAskFrom = newestStored => newestStored === undefined || newestStored >= MAX_SEQUENCE_NUMBER ? undefined : newestStored + 1;
|
|
33
|
+
|
|
34
|
+
/** Whether the meter answered "report stored records" by refusing the filter it was given. */
|
|
35
|
+
const refusesFilter = frame => {
|
|
36
|
+
const result = (0, _standardGattGlucoseFrame.byte)(frame, RESPONSE_RESULT_INDEX);
|
|
37
|
+
return (0, _standardGattGlucoseFrame.byte)(frame, RESPONSE_OPCODE_INDEX) === RACP_RESPONSE_CODE && (0, _standardGattGlucoseFrame.byte)(frame, RESPONSE_REQUEST_INDEX) === RACP_REPORT_STORED_RECORDS && result !== undefined && FILTER_REFUSALS.has(result);
|
|
38
|
+
};
|
|
39
|
+
const racpCommand = frame => ({
|
|
40
|
+
serviceUuid: GLUCOSE_SERVICE_UUID,
|
|
41
|
+
characteristicUuid: RECORD_ACCESS_CONTROL_POINT_UUID,
|
|
42
|
+
frame
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Asks a glucose meter for the records stored after the newest one already read, and keeps
|
|
47
|
+
* count of the sequence numbers it sends. A meter that refuses the sequence-number filter is
|
|
48
|
+
* asked for every record instead, once.
|
|
49
|
+
*
|
|
50
|
+
* Every Glucose Measurement counts, usable or not: a record the SDK withholds is no reason to
|
|
51
|
+
* download it again.
|
|
52
|
+
*/
|
|
53
|
+
class GlucoseRecordSequencer {
|
|
54
|
+
filtered = false;
|
|
55
|
+
constructor(cursor) {
|
|
56
|
+
this.cursor = cursor;
|
|
57
|
+
}
|
|
58
|
+
initialCommands = async () => {
|
|
59
|
+
const from = sequenceToAskFrom(await this.cursor.load());
|
|
60
|
+
this.filtered = from !== undefined;
|
|
61
|
+
return [racpCommand(from === undefined ? reportAllRecords() : reportRecordsFrom(from))];
|
|
62
|
+
};
|
|
63
|
+
nextCommand = (frame, characteristicUuid) => {
|
|
64
|
+
const uuid = characteristicUuid?.toLowerCase();
|
|
65
|
+
if (uuid === GLUCOSE_MEASUREMENT_UUID) {
|
|
66
|
+
this.countRecord(frame);
|
|
67
|
+
return undefined;
|
|
68
|
+
}
|
|
69
|
+
if (uuid === RECORD_ACCESS_CONTROL_POINT_UUID && this.filtered && refusesFilter(frame)) {
|
|
70
|
+
this.filtered = false;
|
|
71
|
+
return [racpCommand(reportAllRecords())];
|
|
72
|
+
}
|
|
73
|
+
return undefined;
|
|
74
|
+
};
|
|
75
|
+
countRecord(frame) {
|
|
76
|
+
const sequenceNumber = (0, _standardGattGlucoseFrame.sequenceNumberFromGlucoseFrame)(frame);
|
|
77
|
+
if (sequenceNumber !== undefined) {
|
|
78
|
+
this.cursor.advance(sequenceNumber);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/** Gives each connection to a glucose meter its own sequencer over that meter's stored cursor. */
|
|
84
|
+
const createGlucoseSequencer = ({
|
|
85
|
+
deviceId,
|
|
86
|
+
recordCursorStorage
|
|
87
|
+
}) => new GlucoseRecordSequencer(new _recordCursor.RecordCursor(recordCursorStorage, `${CURSOR_KEY_PREFIX}/${deviceId}`));
|
|
88
|
+
exports.createGlucoseSequencer = createGlucoseSequencer;
|
|
89
|
+
//# sourceMappingURL=standard-gatt.glucose-racp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_bytesToHex","require","_sigUuid","_recordCursor","_standardGattGlucoseFrame","GLUCOSE_SERVICE_UUID","exports","sigUuid","GLUCOSE_MEASUREMENT_UUID","RECORD_ACCESS_CONTROL_POINT_UUID","RACP_REPORT_STORED_RECORDS","RACP_RESPONSE_CODE","RACP_OPERATOR_ALL_RECORDS","RACP_OPERATOR_GREATER_OR_EQUAL","RACP_FILTER_SEQUENCE_NUMBER","RESPONSE_OPCODE_INDEX","RESPONSE_REQUEST_INDEX","RESPONSE_RESULT_INDEX","FILTER_REFUSALS","Set","BYTE_BITS","MAX_SEQUENCE_NUMBER","CURSOR_KEY_PREFIX","reportAllRecords","bytesToHex","reportRecordsFrom","sequenceNumber","sequenceToAskFrom","newestStored","undefined","refusesFilter","frame","result","byte","has","racpCommand","serviceUuid","characteristicUuid","GlucoseRecordSequencer","filtered","constructor","cursor","initialCommands","from","load","nextCommand","uuid","toLowerCase","countRecord","sequenceNumberFromGlucoseFrame","advance","createGlucoseSequencer","deviceId","recordCursorStorage","RecordCursor"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/standard-gatt/standard-gatt.glucose-racp.ts"],"mappings":"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","ignoreList":[]}
|