Files
zellyy-finance/src/utils/sync/config.ts
gpt-engineer-app[bot] 8e6eb9d8aa Review and refine sync logic
This commit reviews and refines the synchronization logic to ensure proper functionality and data integrity.
2025-03-21 11:24:40 +00:00

44 lines
1.3 KiB
TypeScript

/**
* 동기화 설정 관리
*/
// 동기화 활성화 여부 확인
export const isSyncEnabled = (): boolean => {
try {
const value = localStorage.getItem('syncEnabled');
return value === 'true';
} catch (error) {
console.error('동기화 설정 조회 오류:', error);
return false;
}
};
// 동기화 설정 변경
export const setSyncEnabled = (enabled: boolean): void => {
try {
localStorage.setItem('syncEnabled', enabled ? 'true' : 'false');
// 상태 변경 이벤트 발생
window.dispatchEvent(new Event('syncSettingChanged'));
window.dispatchEvent(new StorageEvent('storage', {
key: 'syncEnabled',
newValue: enabled ? 'true' : 'false'
}));
console.log('동기화 설정이 변경되었습니다:', enabled ? '활성화' : '비활성화');
} catch (error) {
console.error('동기화 설정 변경 오류:', error);
}
};
// 동기화 설정 초기화
export const initSyncSettings = (): void => {
// 이미 설정이 있으면 초기화하지 않음
if (localStorage.getItem('syncEnabled') === null) {
setSyncEnabled(false); // 기본값: 비활성화
}
console.log('동기화 설정 초기화 완료, 현재 상태:', isSyncEnabled() ? '활성화' : '비활성화');
};