gc-wing/apps/web/src/features/trackReplay/services/replayStreamService.ts
htlee 6acf2045b2 chore: vessel-track 브랜치 병합 (squash)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 22:12:48 +09:00

36 lines
898 B
TypeScript

import type { ReplayStreamQueryRequest } from '../model/track.types';
export interface ReplayStreamHandlers {
onConnected?: () => void;
onDisconnected?: () => void;
onError?: (error: Error) => void;
onChunk?: (chunk: unknown) => void;
onCompleted?: () => void;
}
class ReplayStreamService {
private readonly enabled = String(import.meta.env.VITE_TRACKING_WS_ENABLED || 'false') === 'true';
async connect(handlers?: ReplayStreamHandlers): Promise<boolean> {
void handlers;
if (!this.enabled) return false;
return false;
}
async startQuery(request: ReplayStreamQueryRequest): Promise<boolean> {
void request;
if (!this.enabled) return false;
return false;
}
async cancel(): Promise<void> {
if (!this.enabled) return;
}
disconnect(): void {
if (!this.enabled) return;
}
}
export const replayStreamService = new ReplayStreamService();