@ovok/core 0.4.36 → 0.4.38

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 (127) hide show
  1. package/dist/client/auth/account-storage.d.ts +1 -0
  2. package/dist/client/auth/account-storage.js +2 -1
  3. package/dist/{utils → client}/auth/exchange-code.d.ts +1 -1
  4. package/dist/{utils → client}/auth/generate-code-challenge-and-verifier.js +5 -17
  5. package/dist/{utils → client}/auth/handle-tenant-code.d.ts +1 -1
  6. package/dist/{utils → client}/auth/handle-tenant-code.js +1 -1
  7. package/dist/client/auth/methods/appleLogin.js +2 -6
  8. package/dist/client/auth/methods/changePassword.js +2 -1
  9. package/dist/client/auth/methods/getSessions.js +2 -1
  10. package/dist/client/auth/methods/googleLogin.js +2 -6
  11. package/dist/client/auth/methods/login.js +26 -44
  12. package/dist/client/auth/methods/logout.js +2 -1
  13. package/dist/client/auth/methods/requestDeleteUser.js +5 -4
  14. package/dist/client/auth/methods/revokeSessions.js +2 -1
  15. package/dist/client/auth/methods/socialLogin.d.ts +7 -0
  16. package/dist/client/auth/methods/socialLogin.js +11 -0
  17. package/dist/client/auth/session-fetch.d.ts +35 -0
  18. package/dist/client/auth/session-fetch.js +206 -0
  19. package/dist/client/auth/session-http.d.ts +11 -0
  20. package/dist/client/auth/session-http.js +169 -0
  21. package/dist/client/auth/sha256.d.ts +2 -0
  22. package/dist/client/auth/sha256.js +65 -0
  23. package/dist/{utils → client}/auth/start-login.d.ts +2 -2
  24. package/dist/client/change-history/methods.js +2 -1
  25. package/dist/client/cms/methods.js +16 -28
  26. package/dist/client/consent/methods.js +3 -2
  27. package/dist/client/email/methods.js +2 -1
  28. package/dist/client/errors/ovok-error-utils.d.ts +6 -0
  29. package/dist/client/errors/ovok-error-utils.js +10 -1
  30. package/dist/client/errors/ovok-error.js +6 -13
  31. package/dist/client/errors/rate-limit-error.js +2 -6
  32. package/dist/client/experience/methods.js +28 -37
  33. package/dist/client/invites/methods.js +8 -12
  34. package/dist/client/notifications/methods.js +5 -5
  35. package/dist/client/observation/fhir-systems.d.ts +4 -0
  36. package/dist/client/observation/fhir-systems.js +7 -0
  37. package/dist/client/observation/methods/generateObservationBodiesByMeasurement.js +23 -29
  38. package/dist/client/observation/methods/getLatestObservationsByCodes.js +6 -9
  39. package/dist/client/observation/methods/observationsToMeasurements.js +44 -91
  40. package/dist/client/observation/services/base-observation-service.js +4 -3
  41. package/dist/client/observation/services/blood-pressure.js +1 -4
  42. package/dist/client/observation/services/{baby-sleep.d.ts → component-observation-services.d.ts} +18 -13
  43. package/dist/client/observation/services/component-observation-services.js +69 -0
  44. package/dist/client/observation/services/creator.d.ts +1 -2
  45. package/dist/client/observation/services/creator.js +15 -33
  46. package/dist/client/observation/services/ecg-observation-fragments.js +5 -6
  47. package/dist/client/observation/services/ecg.js +3 -2
  48. package/dist/client/observation/services/lipid-panel.js +8 -12
  49. package/dist/client/observation/services/measurement-time.d.ts +4 -0
  50. package/dist/client/observation/services/measurement-time.js +6 -0
  51. package/dist/client/observation/services/single-value-services.d.ts +36 -0
  52. package/dist/client/observation/services/single-value-services.js +100 -0
  53. package/dist/client/observation/services/uric-acid-service.js +6 -7
  54. package/dist/client/observation/types/generate-measurement/HealthConnectTypes.d.ts +2 -458
  55. package/dist/client/observation/types/generate-measurement/HealthConnectTypes.js +0 -6
  56. package/dist/client/offline/offline-measurement-queue.js +31 -28
  57. package/dist/client/ovok-client.d.ts +7 -15
  58. package/dist/client/ovok-client.js +54 -398
  59. package/dist/client/patient/methods.js +27 -36
  60. package/dist/client/patient-sharing/methods.js +4 -4
  61. package/dist/client/platform/methods.js +21 -30
  62. package/dist/client/platform/types.d.ts +3 -6
  63. package/dist/client/query-string.d.ts +3 -0
  64. package/dist/client/query-string.js +15 -0
  65. package/dist/client/questionnaire-response/methods/createQuestionnaireResponseWithObservations.js +2 -1
  66. package/dist/client/questionnaire-response/methods/extractQuestionnaireObservations.js +1 -2
  67. package/dist/client/questionnaire-response/methods/populateQuestionnaire.js +1 -2
  68. package/dist/client/questionnaire-response/methods/submitQuestionnaireResponse.js +2 -1
  69. package/dist/client/request-options.d.ts +2 -0
  70. package/dist/client/request-options.js +6 -0
  71. package/dist/client/signals/errors.js +2 -6
  72. package/dist/client/signals/methods.js +22 -22
  73. package/dist/client/slim/live-read.d.ts +4 -0
  74. package/dist/client/slim/live-read.js +87 -0
  75. package/dist/client/slim/methods.d.ts +3 -0
  76. package/dist/client/slim/methods.js +73 -166
  77. package/dist/client/storage.js +3 -2
  78. package/dist/conformance/capability-requirements.js +1 -1
  79. package/dist/conformance/capability.js +8 -7
  80. package/dist/hooks/account-hooks.js +6 -68
  81. package/dist/hooks/api-hooks.d.ts +10 -6
  82. package/dist/hooks/api-hooks.js +29 -88
  83. package/dist/hooks/cms-hooks.js +8 -13
  84. package/dist/hooks/email-hooks.js +1 -40
  85. package/dist/hooks/experience-hooks.js +4 -60
  86. package/dist/hooks/index.d.ts +2 -2
  87. package/dist/hooks/index.js +4 -4
  88. package/dist/hooks/invites-hooks.js +0 -1
  89. package/dist/hooks/notification-hooks.d.ts +4 -1
  90. package/dist/hooks/notification-hooks.js +29 -86
  91. package/dist/hooks/notification-invalidation.d.ts +6 -0
  92. package/dist/hooks/notification-invalidation.js +52 -0
  93. package/dist/hooks/notification-note-hooks.js +13 -28
  94. package/dist/hooks/observation-hooks.js +2 -4
  95. package/dist/hooks/patient-hooks.js +13 -113
  96. package/dist/hooks/patient-sharing-hooks.js +2 -7
  97. package/dist/hooks/platform-hooks.js +3 -51
  98. package/dist/hooks/poll-hooks.js +10 -8
  99. package/dist/hooks/signals-alert-hooks.js +4 -6
  100. package/dist/hooks/signals-hooks.js +2 -45
  101. package/package.json +1 -1
  102. package/dist/client/observation/services/baby-sleep.js +0 -69
  103. package/dist/client/observation/services/blood-glucose.d.ts +0 -12
  104. package/dist/client/observation/services/blood-glucose.js +0 -36
  105. package/dist/client/observation/services/body-temperature.d.ts +0 -13
  106. package/dist/client/observation/services/body-temperature.js +0 -36
  107. package/dist/client/observation/services/body-weight.d.ts +0 -13
  108. package/dist/client/observation/services/body-weight.js +0 -36
  109. package/dist/client/observation/services/heart-rate-variability.d.ts +0 -13
  110. package/dist/client/observation/services/heart-rate-variability.js +0 -38
  111. package/dist/client/observation/services/heart-rate.d.ts +0 -13
  112. package/dist/client/observation/services/heart-rate.js +0 -39
  113. package/dist/client/observation/services/respiratory-rate.d.ts +0 -13
  114. package/dist/client/observation/services/respiratory-rate.js +0 -38
  115. package/dist/client/observation/services/respiratory-therapy.d.ts +0 -28
  116. package/dist/client/observation/services/respiratory-therapy.js +0 -69
  117. package/dist/client/observation/services/resting-heart-rate.d.ts +0 -13
  118. package/dist/client/observation/services/resting-heart-rate.js +0 -38
  119. package/dist/client/observation/services/vo2-max.d.ts +0 -13
  120. package/dist/client/observation/services/vo2-max.js +0 -38
  121. package/dist/client/observation/services/walking-heart-rate-average.d.ts +0 -12
  122. package/dist/client/observation/services/walking-heart-rate-average.js +0 -38
  123. package/dist/utils/auth/sha256.d.ts +0 -8
  124. package/dist/utils/auth/sha256.js +0 -300
  125. /package/dist/{utils → client}/auth/exchange-code.js +0 -0
  126. /package/dist/{utils → client}/auth/generate-code-challenge-and-verifier.d.ts +0 -0
  127. /package/dist/{utils → client}/auth/start-login.js +0 -0
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BloodGlucoseService = void 0;
4
- const types_1 = require("../../../types");
5
- const base_observation_service_1 = require("./base-observation-service");
6
- class BloodGlucoseService extends base_observation_service_1.BaseObservationService {
7
- constructor() {
8
- super(...arguments);
9
- this.measurementTypeKey = types_1.MeasurementTypeKey.bloodGlucose;
10
- this.measurementTypeName = "blood glucose";
11
- this.observationMetadata = [
12
- {
13
- primaryCode: types_1.ObservationCode.BLOOD_GLUCOSE,
14
- additionalCodes: [],
15
- display: "Blood Glucose",
16
- unit: "mg/dL",
17
- valueKey: "bloodGlucose",
18
- toFixed: 1,
19
- },
20
- ];
21
- }
22
- convertSamplesToMeasurement(samples) {
23
- return {
24
- bloodGlucose: samples.length > 0 ? samples[0].quantity : undefined,
25
- measurementTypeKey: types_1.MeasurementTypeKey.bloodGlucose,
26
- };
27
- }
28
- convertRecordToMeasurement(record) {
29
- const bloodGlucoseRecord = record;
30
- return {
31
- bloodGlucose: bloodGlucoseRecord.level.inMilligramsPerDeciliter,
32
- measurementTypeKey: types_1.MeasurementTypeKey.bloodGlucose,
33
- };
34
- }
35
- }
36
- exports.BloodGlucoseService = BloodGlucoseService;
@@ -1,13 +0,0 @@
1
- import { MeasurementTypeKey } from "../../../types";
2
- import { RecordResult, RecordType } from "../types/generate-measurement/HealthConnectTypes";
3
- import { Sample } from "../types/generate-measurement/Sample";
4
- import { BodyTemperatureMeasurement } from "../types/measurement/BodyTemperatureMeasurement";
5
- import { ObservationMetadata } from "../types/service/ObservationMetadata";
6
- import { BaseObservationService } from "./base-observation-service";
7
- export declare class BodyTemperatureService extends BaseObservationService<BodyTemperatureMeasurement> {
8
- protected measurementTypeKey: MeasurementTypeKey;
9
- protected measurementTypeName: string;
10
- protected observationMetadata: ObservationMetadata<BodyTemperatureMeasurement>[];
11
- convertSamplesToMeasurement(samples: Sample[]): BodyTemperatureMeasurement;
12
- convertRecordToMeasurement(record: RecordResult<RecordType>): BodyTemperatureMeasurement;
13
- }
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BodyTemperatureService = void 0;
4
- const types_1 = require("../../../types");
5
- const base_observation_service_1 = require("./base-observation-service");
6
- class BodyTemperatureService extends base_observation_service_1.BaseObservationService {
7
- constructor() {
8
- super(...arguments);
9
- this.measurementTypeKey = types_1.MeasurementTypeKey.temperature;
10
- this.measurementTypeName = "body temperature";
11
- this.observationMetadata = [
12
- {
13
- primaryCode: types_1.ObservationCode.BODY_TEMPERATURE,
14
- additionalCodes: [],
15
- display: "Body Temperature",
16
- unit: "°C",
17
- valueKey: "bodyTemp",
18
- toFixed: 2,
19
- },
20
- ];
21
- }
22
- convertSamplesToMeasurement(samples) {
23
- return {
24
- bodyTemp: samples.length > 0 ? samples[0].quantity : undefined,
25
- measurementTypeKey: types_1.MeasurementTypeKey.temperature,
26
- };
27
- }
28
- convertRecordToMeasurement(record) {
29
- const bodyTemperatureRecord = record;
30
- return {
31
- bodyTemp: bodyTemperatureRecord.temperature.inCelsius,
32
- measurementTypeKey: types_1.MeasurementTypeKey.temperature,
33
- };
34
- }
35
- }
36
- exports.BodyTemperatureService = BodyTemperatureService;
@@ -1,13 +0,0 @@
1
- import { MeasurementTypeKey } from "../../../types";
2
- import { RecordResult, RecordType } from "../types/generate-measurement/HealthConnectTypes";
3
- import { Sample } from "../types/generate-measurement/Sample";
4
- import { BodyWeightMeasurement } from "../types/measurement/BodyWeightMeasurmement";
5
- import { ObservationMetadata } from "../types/service/ObservationMetadata";
6
- import { BaseObservationService } from "./base-observation-service";
7
- export declare class BodyWeightService extends BaseObservationService<BodyWeightMeasurement> {
8
- protected measurementTypeKey: MeasurementTypeKey;
9
- protected measurementTypeName: string;
10
- protected observationMetadata: ObservationMetadata<BodyWeightMeasurement>[];
11
- convertSamplesToMeasurement(samples: Sample[]): BodyWeightMeasurement;
12
- convertRecordToMeasurement(record: RecordResult<RecordType>): BodyWeightMeasurement;
13
- }
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BodyWeightService = void 0;
4
- const types_1 = require("../../../types");
5
- const base_observation_service_1 = require("./base-observation-service");
6
- class BodyWeightService extends base_observation_service_1.BaseObservationService {
7
- constructor() {
8
- super(...arguments);
9
- this.measurementTypeKey = types_1.MeasurementTypeKey.bodyWeight;
10
- this.measurementTypeName = "body weight";
11
- this.observationMetadata = [
12
- {
13
- primaryCode: types_1.ObservationCode.BODY_WEIGHT,
14
- additionalCodes: [],
15
- display: "Body Weight",
16
- unit: "kg",
17
- valueKey: "bodyWeight",
18
- toFixed: 2,
19
- },
20
- ];
21
- }
22
- convertSamplesToMeasurement(samples) {
23
- return {
24
- bodyWeight: samples.length > 0 ? samples[0].quantity : undefined,
25
- measurementTypeKey: types_1.MeasurementTypeKey.bodyWeight,
26
- };
27
- }
28
- convertRecordToMeasurement(record) {
29
- const weightRecord = record;
30
- return {
31
- bodyWeight: weightRecord.weight.inKilograms,
32
- measurementTypeKey: types_1.MeasurementTypeKey.bodyWeight,
33
- };
34
- }
35
- }
36
- exports.BodyWeightService = BodyWeightService;
@@ -1,13 +0,0 @@
1
- import { MeasurementTypeKey } from "../../../types";
2
- import { RecordResult, RecordType } from "../types/generate-measurement/HealthConnectTypes";
3
- import { Sample } from "../types/generate-measurement/Sample";
4
- import { HeartRateVariabilityMeasurement } from "../types/measurement/HeartRateVariabilityMeasurement";
5
- import { ObservationMetadata } from "../types/service/ObservationMetadata";
6
- import { BaseObservationService } from "./base-observation-service";
7
- export declare class HeartRateVariabilityService extends BaseObservationService<HeartRateVariabilityMeasurement> {
8
- protected measurementTypeKey: MeasurementTypeKey;
9
- protected measurementTypeName: string;
10
- protected observationMetadata: ObservationMetadata<HeartRateVariabilityMeasurement>[];
11
- convertSamplesToMeasurement(samples: Sample[]): HeartRateVariabilityMeasurement;
12
- convertRecordToMeasurement(record: RecordResult<RecordType>): HeartRateVariabilityMeasurement;
13
- }
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HeartRateVariabilityService = void 0;
4
- const types_1 = require("../../../types");
5
- const base_observation_service_1 = require("./base-observation-service");
6
- class HeartRateVariabilityService extends base_observation_service_1.BaseObservationService {
7
- constructor() {
8
- super(...arguments);
9
- this.measurementTypeKey = types_1.MeasurementTypeKey.heartRateVariability;
10
- this.measurementTypeName = "heart rate variability";
11
- this.observationMetadata = [
12
- {
13
- primaryCode: types_1.ObservationCode.HEART_RATE_VARIABILITY,
14
- additionalCodes: [],
15
- display: "Heart Rate Variability",
16
- unit: "ms",
17
- valueKey: "heartRateVariability",
18
- toFixed: 1,
19
- },
20
- ];
21
- }
22
- convertSamplesToMeasurement(samples) {
23
- var _a;
24
- const heartRateVariabilityQuantity = (_a = samples.find((x) => x.quantityType === "HKQuantityTypeIdentifierHeartRateVariabilitySDNN")) === null || _a === void 0 ? void 0 : _a.quantity;
25
- return {
26
- heartRateVariability: heartRateVariabilityQuantity,
27
- measurementTypeKey: types_1.MeasurementTypeKey.heartRateVariability,
28
- };
29
- }
30
- convertRecordToMeasurement(record) {
31
- const heartRateVariabilityRecord = record;
32
- return {
33
- heartRateVariability: heartRateVariabilityRecord.heartRateVariabilityMillis,
34
- measurementTypeKey: types_1.MeasurementTypeKey.heartRateVariability,
35
- };
36
- }
37
- }
38
- exports.HeartRateVariabilityService = HeartRateVariabilityService;
@@ -1,13 +0,0 @@
1
- import { MeasurementTypeKey } from "../../../types";
2
- import { RecordResult, RecordType } from "../types/generate-measurement/HealthConnectTypes";
3
- import { Sample } from "../types/generate-measurement/Sample";
4
- import { HeartRateMeasurement } from "../types/measurement/HeartRateMeasurement";
5
- import { ObservationMetadata } from "../types/service/ObservationMetadata";
6
- import { BaseObservationService } from "./base-observation-service";
7
- export declare class HeartRateService extends BaseObservationService<HeartRateMeasurement> {
8
- protected measurementTypeKey: MeasurementTypeKey;
9
- protected measurementTypeName: string;
10
- protected observationMetadata: ObservationMetadata<HeartRateMeasurement>[];
11
- convertSamplesToMeasurement(samples: Sample[]): HeartRateMeasurement;
12
- convertRecordToMeasurement(record: RecordResult<RecordType>): HeartRateMeasurement;
13
- }
@@ -1,39 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HeartRateService = void 0;
4
- const types_1 = require("../../../types");
5
- const base_observation_service_1 = require("./base-observation-service");
6
- class HeartRateService extends base_observation_service_1.BaseObservationService {
7
- constructor() {
8
- super(...arguments);
9
- this.measurementTypeKey = types_1.MeasurementTypeKey.heartRate;
10
- this.measurementTypeName = "heart rate";
11
- this.observationMetadata = [
12
- {
13
- primaryCode: types_1.ObservationCode.HEART_RATE,
14
- additionalCodes: [],
15
- display: "Heart Rate",
16
- unit: "bpm",
17
- valueKey: "heartRate",
18
- toFixed: 0,
19
- },
20
- ];
21
- }
22
- convertSamplesToMeasurement(samples) {
23
- var _a;
24
- const heartRateQuantity = (_a = samples.find((x) => x.quantityType === "HKQuantityTypeIdentifierHeartRate")) === null || _a === void 0 ? void 0 : _a.quantity;
25
- return {
26
- heartRate: heartRateQuantity,
27
- measurementTypeKey: types_1.MeasurementTypeKey.heartRate,
28
- };
29
- }
30
- convertRecordToMeasurement(record) {
31
- var _a, _b;
32
- const heartRateRecord = record;
33
- return {
34
- heartRate: (_b = (_a = heartRateRecord.samples) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.beatsPerMinute,
35
- measurementTypeKey: types_1.MeasurementTypeKey.heartRate,
36
- };
37
- }
38
- }
39
- exports.HeartRateService = HeartRateService;
@@ -1,13 +0,0 @@
1
- import { MeasurementTypeKey } from "../../../types";
2
- import { RecordResult, RecordType } from "../types/generate-measurement/HealthConnectTypes";
3
- import { Sample } from "../types/generate-measurement/Sample";
4
- import { RespiratoryRateMeasurement } from "../types/measurement/RespiratoryRateMeasurement";
5
- import { ObservationMetadata } from "../types/service/ObservationMetadata";
6
- import { BaseObservationService } from "./base-observation-service";
7
- export declare class RespiratoryRateService extends BaseObservationService<RespiratoryRateMeasurement> {
8
- protected measurementTypeKey: MeasurementTypeKey;
9
- protected measurementTypeName: string;
10
- protected observationMetadata: ObservationMetadata<RespiratoryRateMeasurement>[];
11
- convertSamplesToMeasurement(samples: Sample[]): RespiratoryRateMeasurement;
12
- convertRecordToMeasurement(record: RecordResult<RecordType>): RespiratoryRateMeasurement;
13
- }
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RespiratoryRateService = void 0;
4
- const types_1 = require("../../../types");
5
- const base_observation_service_1 = require("./base-observation-service");
6
- class RespiratoryRateService extends base_observation_service_1.BaseObservationService {
7
- constructor() {
8
- super(...arguments);
9
- this.measurementTypeKey = types_1.MeasurementTypeKey.respiratoryRate;
10
- this.measurementTypeName = "respiratory rate";
11
- this.observationMetadata = [
12
- {
13
- primaryCode: types_1.ObservationCode.RESPIRATORY_RATE,
14
- additionalCodes: [],
15
- display: "Respiratory Rate",
16
- unit: "breaths/min",
17
- valueKey: "respiratoryRate",
18
- toFixed: 1,
19
- },
20
- ];
21
- }
22
- convertSamplesToMeasurement(samples) {
23
- var _a;
24
- const respiratoryRateQuantity = (_a = samples.find((x) => x.quantityType === "HKQuantityTypeIdentifierRespiratoryRate")) === null || _a === void 0 ? void 0 : _a.quantity;
25
- return {
26
- respiratoryRate: respiratoryRateQuantity,
27
- measurementTypeKey: types_1.MeasurementTypeKey.respiratoryRate,
28
- };
29
- }
30
- convertRecordToMeasurement(record) {
31
- const respiratoryRateRecord = record;
32
- return {
33
- respiratoryRate: respiratoryRateRecord.rate,
34
- measurementTypeKey: types_1.MeasurementTypeKey.respiratoryRate,
35
- };
36
- }
37
- }
38
- exports.RespiratoryRateService = RespiratoryRateService;
@@ -1,28 +0,0 @@
1
- import { Observation } from "@medplum/fhirtypes";
2
- import { Measurement, MeasurementTypeKey, ObservationCode, RespiratoryTherapyMeasurement } from "../../../types";
3
- import { RecordResult, RecordType } from "../types/generate-measurement/HealthConnectTypes";
4
- import { Sample } from "../types/generate-measurement/Sample";
5
- import { ObservationFragment } from "../types/generate-observation-body/ObservationFragment";
6
- import { ObservationValue } from "../types/generate-observation-body/ObservationValue";
7
- import { ObservationMetadata } from "../types/service/ObservationMetadata";
8
- import { BaseObservationService } from "./base-observation-service";
9
- export declare class RespiratoryTherapyService extends BaseObservationService<RespiratoryTherapyMeasurement> {
10
- protected measurementTypeKey: MeasurementTypeKey;
11
- protected measurementTypeName: string;
12
- protected observationMetadata: ObservationMetadata<RespiratoryTherapyMeasurement>[];
13
- generateObservationFragments(measurement: Measurement): ObservationFragment[];
14
- getObservationCodes(): {
15
- coding: {
16
- code: ObservationCode;
17
- display: string;
18
- system: string;
19
- }[];
20
- }[];
21
- getAdditionalProperties(measurement: Measurement): Partial<Observation>[];
22
- generateValues(_measurement: Measurement): ObservationValue[];
23
- getUnits(): string[];
24
- getMeasurementDisplay(measurement: Measurement): string;
25
- getObservationDisplay(observations: Observation[]): string | undefined;
26
- convertSamplesToMeasurement(_samples: Sample[]): RespiratoryTherapyMeasurement;
27
- convertRecordToMeasurement(_record: RecordResult<RecordType>): RespiratoryTherapyMeasurement;
28
- }
@@ -1,69 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RespiratoryTherapyService = void 0;
4
- const types_1 = require("../../../types");
5
- const base_observation_service_1 = require("./base-observation-service");
6
- const RESPIRATORY_THERAPY_SYSTEM = "https://sdk.ovok.com/fhir/CodeSystem/measurement-type";
7
- const recordedAt = (measurement) => measurement.recordedAt instanceof Date &&
8
- !Number.isNaN(measurement.recordedAt.getTime())
9
- ? measurement.recordedAt.toISOString()
10
- : new Date().toISOString();
11
- class RespiratoryTherapyService extends base_observation_service_1.BaseObservationService {
12
- constructor() {
13
- super(...arguments);
14
- this.measurementTypeKey = types_1.MeasurementTypeKey.respiratoryTherapy;
15
- this.measurementTypeName = "respiratory therapy";
16
- this.observationMetadata = [];
17
- }
18
- generateObservationFragments(measurement) {
19
- const respiratoryTherapy = this.getCastedMeasurement(measurement);
20
- if (respiratoryTherapy.components.length === 0) {
21
- return [];
22
- }
23
- return [{
24
- code: {
25
- coding: [{
26
- code: types_1.ObservationCode.RESPIRATORY_THERAPY,
27
- display: "Respiratory therapy observation",
28
- system: RESPIRATORY_THERAPY_SYSTEM,
29
- }],
30
- },
31
- additionalProperties: {
32
- effectiveDateTime: recordedAt(respiratoryTherapy),
33
- component: respiratoryTherapy.components,
34
- },
35
- }];
36
- }
37
- getObservationCodes() {
38
- return [{
39
- coding: [{
40
- code: types_1.ObservationCode.RESPIRATORY_THERAPY,
41
- display: "Respiratory therapy observation",
42
- system: RESPIRATORY_THERAPY_SYSTEM,
43
- }],
44
- }];
45
- }
46
- getAdditionalProperties(measurement) {
47
- return [{ effectiveDateTime: recordedAt(this.getCastedMeasurement(measurement)) }];
48
- }
49
- generateValues(_measurement) {
50
- return [];
51
- }
52
- getUnits() {
53
- return [];
54
- }
55
- getMeasurementDisplay(measurement) {
56
- return `${this.getCastedMeasurement(measurement).components.length} respiratory therapy metrics`;
57
- }
58
- getObservationDisplay(observations) {
59
- const count = observations.reduce((total, observation) => { var _a, _b; return total + ((_b = (_a = observation.component) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0); }, 0);
60
- return count ? `${count} respiratory therapy metrics` : undefined;
61
- }
62
- convertSamplesToMeasurement(_samples) {
63
- throw new Error("Respiratory therapy samples are not supported.");
64
- }
65
- convertRecordToMeasurement(_record) {
66
- throw new Error("Respiratory therapy Health Connect records are not supported.");
67
- }
68
- }
69
- exports.RespiratoryTherapyService = RespiratoryTherapyService;
@@ -1,13 +0,0 @@
1
- import { MeasurementTypeKey } from "../../../types";
2
- import { RecordResult, RecordType } from "../types/generate-measurement/HealthConnectTypes";
3
- import { Sample } from "../types/generate-measurement/Sample";
4
- import { RestingHeartRateMeasurement } from "../types/measurement/RestingHeartRateMeasurement";
5
- import { ObservationMetadata } from "../types/service/ObservationMetadata";
6
- import { BaseObservationService } from "./base-observation-service";
7
- export declare class RestingHeartRateService extends BaseObservationService<RestingHeartRateMeasurement> {
8
- protected measurementTypeKey: MeasurementTypeKey;
9
- protected measurementTypeName: string;
10
- protected observationMetadata: ObservationMetadata<RestingHeartRateMeasurement>[];
11
- convertSamplesToMeasurement(samples: Sample[]): RestingHeartRateMeasurement;
12
- convertRecordToMeasurement(record: RecordResult<RecordType>): RestingHeartRateMeasurement;
13
- }
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RestingHeartRateService = void 0;
4
- const types_1 = require("../../../types");
5
- const base_observation_service_1 = require("./base-observation-service");
6
- class RestingHeartRateService extends base_observation_service_1.BaseObservationService {
7
- constructor() {
8
- super(...arguments);
9
- this.measurementTypeKey = types_1.MeasurementTypeKey.restingHeartRate;
10
- this.measurementTypeName = "resting heart rate";
11
- this.observationMetadata = [
12
- {
13
- primaryCode: types_1.ObservationCode.RESTING_HEART_RATE,
14
- additionalCodes: [],
15
- display: "Resting Heart Rate",
16
- unit: "bpm",
17
- valueKey: "restingHeartRate",
18
- toFixed: 0,
19
- },
20
- ];
21
- }
22
- convertSamplesToMeasurement(samples) {
23
- var _a;
24
- const restingHeartRateQuantity = (_a = samples.find((x) => x.quantityType === "HKQuantityTypeIdentifierRestingHeartRate")) === null || _a === void 0 ? void 0 : _a.quantity;
25
- return {
26
- restingHeartRate: restingHeartRateQuantity,
27
- measurementTypeKey: types_1.MeasurementTypeKey.restingHeartRate,
28
- };
29
- }
30
- convertRecordToMeasurement(record) {
31
- const restingHeartRateRecord = record;
32
- return {
33
- restingHeartRate: restingHeartRateRecord.beatsPerMinute,
34
- measurementTypeKey: types_1.MeasurementTypeKey.restingHeartRate,
35
- };
36
- }
37
- }
38
- exports.RestingHeartRateService = RestingHeartRateService;
@@ -1,13 +0,0 @@
1
- import { MeasurementTypeKey } from "../../../types";
2
- import { RecordResult, RecordType } from "../types/generate-measurement/HealthConnectTypes";
3
- import { Sample } from "../types/generate-measurement/Sample";
4
- import { Vo2MaxMeasurement } from "../types/measurement/Vo2MaxMeasurement";
5
- import { ObservationMetadata } from "../types/service/ObservationMetadata";
6
- import { BaseObservationService } from "./base-observation-service";
7
- export declare class Vo2MaxService extends BaseObservationService<Vo2MaxMeasurement> {
8
- protected measurementTypeKey: MeasurementTypeKey;
9
- protected measurementTypeName: string;
10
- protected observationMetadata: ObservationMetadata<Vo2MaxMeasurement>[];
11
- convertSamplesToMeasurement(samples: Sample[]): Vo2MaxMeasurement;
12
- convertRecordToMeasurement(record: RecordResult<RecordType>): Vo2MaxMeasurement;
13
- }
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Vo2MaxService = void 0;
4
- const types_1 = require("../../../types");
5
- const base_observation_service_1 = require("./base-observation-service");
6
- class Vo2MaxService extends base_observation_service_1.BaseObservationService {
7
- constructor() {
8
- super(...arguments);
9
- this.measurementTypeKey = types_1.MeasurementTypeKey.vo2Max;
10
- this.measurementTypeName = "VO2 max";
11
- this.observationMetadata = [
12
- {
13
- primaryCode: types_1.ObservationCode.VO2_MAX,
14
- additionalCodes: [],
15
- display: "VO2 Max",
16
- unit: "mL/kg/min",
17
- valueKey: "vo2Max",
18
- toFixed: 1,
19
- },
20
- ];
21
- }
22
- convertSamplesToMeasurement(samples) {
23
- var _a;
24
- const vo2maxQuantity = (_a = samples.find((x) => x.quantityType === "HKQuantityTypeIdentifierVO2Max")) === null || _a === void 0 ? void 0 : _a.quantity;
25
- return {
26
- vo2Max: vo2maxQuantity,
27
- measurementTypeKey: types_1.MeasurementTypeKey.vo2Max,
28
- };
29
- }
30
- convertRecordToMeasurement(record) {
31
- const vo2MaxRecord = record;
32
- return {
33
- vo2Max: vo2MaxRecord.vo2MillilitersPerMinuteKilogram,
34
- measurementTypeKey: types_1.MeasurementTypeKey.vo2Max,
35
- };
36
- }
37
- }
38
- exports.Vo2MaxService = Vo2MaxService;
@@ -1,12 +0,0 @@
1
- import { MeasurementTypeKey } from "../../../types";
2
- import { Sample } from "../types/generate-measurement/Sample";
3
- import { WalkingHeartRateAverageMeasurement } from "../types/measurement/WalkingHeartRateAverageMeasurement";
4
- import { ObservationMetadata } from "../types/service/ObservationMetadata";
5
- import { BaseObservationService } from "./base-observation-service";
6
- export declare class WalkingHeartRateAverageService extends BaseObservationService<WalkingHeartRateAverageMeasurement> {
7
- protected measurementTypeKey: MeasurementTypeKey;
8
- protected measurementTypeName: string;
9
- protected observationMetadata: ObservationMetadata<WalkingHeartRateAverageMeasurement>[];
10
- convertSamplesToMeasurement(samples: Sample[]): WalkingHeartRateAverageMeasurement;
11
- convertRecordToMeasurement(): WalkingHeartRateAverageMeasurement;
12
- }
@@ -1,38 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WalkingHeartRateAverageService = void 0;
4
- const types_1 = require("../../../types");
5
- const base_observation_service_1 = require("./base-observation-service");
6
- class WalkingHeartRateAverageService extends base_observation_service_1.BaseObservationService {
7
- constructor() {
8
- super(...arguments);
9
- this.measurementTypeKey = types_1.MeasurementTypeKey.walkingHeartRateAverage;
10
- this.measurementTypeName = "walking heart rate average";
11
- this.observationMetadata = [
12
- {
13
- primaryCode: types_1.ObservationCode.WALKING_HEART_RATE_AVERAGE,
14
- additionalCodes: [],
15
- display: "Walking Heart Rate Average",
16
- unit: "bpm",
17
- valueKey: "walkingHeartRateAverage",
18
- toFixed: 0,
19
- },
20
- ];
21
- }
22
- convertSamplesToMeasurement(samples) {
23
- var _a;
24
- const walkingHeartRateAverageQuantity = (_a = samples.find((x) => x.quantityType === "HKQuantityTypeIdentifierWalkingHeartRateAverage")) === null || _a === void 0 ? void 0 : _a.quantity;
25
- return {
26
- walkingHeartRateAverage: walkingHeartRateAverageQuantity,
27
- measurementTypeKey: types_1.MeasurementTypeKey.walkingHeartRateAverage,
28
- };
29
- }
30
- convertRecordToMeasurement() {
31
- // Android doesn't have a walking heart rate average record type
32
- return {
33
- walkingHeartRateAverage: 0,
34
- measurementTypeKey: types_1.MeasurementTypeKey.walkingHeartRateAverage,
35
- };
36
- }
37
- }
38
- exports.WalkingHeartRateAverageService = WalkingHeartRateAverageService;
@@ -1,8 +0,0 @@
1
- export declare const sha256: {
2
- hex: (s: string) => string;
3
- b64: (k: string, d: string) => string;
4
- any: (k: string, d: string, e: string) => string;
5
- hex_hmac: (k: string, d: string) => string;
6
- b64_hmac: (k: string, d: string) => string;
7
- any_hmac: (k: string, d: string, e: string) => string;
8
- };