UNPKG

react-native-healthkit-bridge

Version:

A comprehensive React Native bridge for Apple HealthKit with TypeScript support, advanced authorization, and flexible data queries

51 lines (50 loc) 2.32 kB
export class HealthKitMapper { toQuantitySample(rawData) { return { uuid: rawData.uuid, value: rawData.value, unit: rawData.unit, identifier: rawData.identifier, startDate: new Date(rawData.startDate), endDate: new Date(rawData.endDate), sourceRevision: this.toSourceRevision(rawData.sourceRevision) }; } toCategorySample(rawData) { return { uuid: rawData.uuid, value: rawData.value, identifier: rawData.identifier, startDate: new Date(rawData.startDate), endDate: new Date(rawData.endDate), sourceRevision: this.toSourceRevision(rawData.sourceRevision) }; } toWorkout(rawData) { return { uuid: rawData.uuid, workoutActivityType: rawData.workoutActivityType, duration: rawData.duration, totalEnergyBurned: rawData.totalEnergyBurned, totalDistance: rawData.totalDistance, totalSwimmingStrokeCount: rawData.totalSwimmingStrokeCount, totalFlightsClimbed: rawData.totalFlightsClimbed, metadata: rawData.metadata, startDate: new Date(rawData.startDate), endDate: new Date(rawData.endDate), sourceRevision: this.toSourceRevision(rawData.sourceRevision) }; } toSourceRevision(rawSourceRevision) { var _a, _b; return { source: { name: ((_a = rawSourceRevision === null || rawSourceRevision === void 0 ? void 0 : rawSourceRevision.source) === null || _a === void 0 ? void 0 : _a.name) || '', bundleIdentifier: ((_b = rawSourceRevision === null || rawSourceRevision === void 0 ? void 0 : rawSourceRevision.source) === null || _b === void 0 ? void 0 : _b.bundleIdentifier) || '' }, version: (rawSourceRevision === null || rawSourceRevision === void 0 ? void 0 : rawSourceRevision.version) || '', productType: (rawSourceRevision === null || rawSourceRevision === void 0 ? void 0 : rawSourceRevision.productType) || '', systemVersion: (rawSourceRevision === null || rawSourceRevision === void 0 ? void 0 : rawSourceRevision.systemVersion) || '' }; } }