react-native-healthkit-bridge
Version:
A comprehensive React Native bridge for Apple HealthKit with TypeScript support, advanced authorization, and flexible data queries
29 lines (28 loc) • 989 B
JavaScript
import { HealthKitRepositoryImpl } from '../../data/repositories/HealthKitRepositoryImpl';
import { NativeHealthKitDataSource } from '../../data/datasources/NativeHealthKitDataSource';
export class HealthKitContainer {
constructor() {
this.repository = null;
}
static getInstance() {
if (!HealthKitContainer.instance) {
HealthKitContainer.instance = new HealthKitContainer();
}
return HealthKitContainer.instance;
}
getRepository(config) {
if (!this.repository) {
const dataSource = new NativeHealthKitDataSource();
this.repository = new HealthKitRepositoryImpl(dataSource, config);
}
return this.repository;
}
// Método para reset (útil para testes)
reset() {
this.repository = null;
}
}
// Factory function para facilitar o uso
export function createHealthKitRepository(config) {
return HealthKitContainer.getInstance().getRepository(config);
}