- OpenLayers(ol) 패키지 제거 (미사용, import 0건) - common/ 디렉토리 생성: components, hooks, services, store, types, utils - 17개 공통 파일을 common/으로 이동 (git mv, blame 이력 보존) - MainTab 타입을 App.tsx에서 common/types/navigation.ts로 분리 - tsconfig path alias (@common/*, @tabs/*) + vite resolve.alias 설정 - 42개 import 경로를 @common/ alias 또는 상대경로로 수정 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
127 lines
3.6 KiB
TypeScript
Executable File
127 lines
3.6 KiB
TypeScript
Executable File
import type { BacktrackConditions, BacktrackVessel, ReplayShip, CollisionEvent } from '@common/types/backtrack'
|
|
|
|
export const MOCK_CONDITIONS: BacktrackConditions = {
|
|
estimatedSpillTime: '02-10 06:30',
|
|
analysisRange: '±12시간',
|
|
searchRadius: '10 NM',
|
|
spillLocation: { lat: 34.7312, lon: 127.6845 },
|
|
totalVessels: 47,
|
|
}
|
|
|
|
export const MOCK_VESSELS: BacktrackVessel[] = [
|
|
{
|
|
rank: 1,
|
|
name: 'ORIENTAL GLORY',
|
|
imo: '9412856',
|
|
type: '유조선',
|
|
flag: '🇰🇷',
|
|
flagCountry: '대한민국',
|
|
probability: 96.7,
|
|
closestTime: '06:28',
|
|
closestDistance: 0.02,
|
|
speedChange: '급감속',
|
|
aisStatus: '충돌신호',
|
|
description: '06:28 HAI FENG 168과 충돌 → 06:30 No.1P 탱크 파공 → 벙커C유 유출 개시. AIS 충돌경보 발신, 속력 8.3kts→0.2kts 급감속.',
|
|
color: '#ef4444',
|
|
},
|
|
{
|
|
rank: 2,
|
|
name: 'HAI FENG 168',
|
|
imo: '9538721',
|
|
type: '벌크선',
|
|
flag: '🇨🇳',
|
|
flagCountry: '중국',
|
|
probability: 23.4,
|
|
closestTime: '06:28',
|
|
closestDistance: 0.02,
|
|
speedChange: '급감속',
|
|
aisStatus: '미확인',
|
|
description: '충돌 당사선. 구상선수 손상으로 연료유탱크 미세 누유 가능성. 자체 연료(벙커C) 1,200톤 적재.',
|
|
color: '#f97316',
|
|
},
|
|
{
|
|
rank: 3,
|
|
name: 'DONG JIN STAR',
|
|
imo: '9287403',
|
|
type: '케미컬탱커',
|
|
flag: '🇰🇷',
|
|
flagCountry: '대한민국',
|
|
probability: 4.1,
|
|
closestTime: '05:45',
|
|
closestDistance: 1.8,
|
|
speedChange: '정상',
|
|
aisStatus: '정상',
|
|
description: '',
|
|
color: '#64788c',
|
|
},
|
|
]
|
|
|
|
export const MOCK_REPLAY_SHIPS: ReplayShip[] = [
|
|
{
|
|
vesselName: 'ORIENTAL GLORY',
|
|
color: '#ef4444',
|
|
path: [
|
|
{ lat: 34.82, lon: 127.58 },
|
|
{ lat: 34.80, lon: 127.60 },
|
|
{ lat: 34.78, lon: 127.62 },
|
|
{ lat: 34.76, lon: 127.64 },
|
|
{ lat: 34.75, lon: 127.66 },
|
|
{ lat: 34.74, lon: 127.67 },
|
|
{ lat: 34.73, lon: 127.68 },
|
|
{ lat: 34.7312, lon: 127.6845 },
|
|
{ lat: 34.7312, lon: 127.6845 },
|
|
],
|
|
speedLabels: [
|
|
'8.3 kts · 215°', '8.3 kts · 215°', '8.3 kts · 215°',
|
|
'8.3 kts · 215°', '8.3 kts · 215°', '8.3 kts · 215°',
|
|
'2.1 kts · 215°', '0.2 kts · 정지', '0.2 kts · 정지',
|
|
],
|
|
},
|
|
{
|
|
vesselName: 'HAI FENG 168',
|
|
color: '#f97316',
|
|
path: [
|
|
{ lat: 34.64, lon: 127.78 },
|
|
{ lat: 34.66, lon: 127.76 },
|
|
{ lat: 34.68, lon: 127.74 },
|
|
{ lat: 34.70, lon: 127.72 },
|
|
{ lat: 34.71, lon: 127.71 },
|
|
{ lat: 34.72, lon: 127.70 },
|
|
{ lat: 34.73, lon: 127.69 },
|
|
{ lat: 34.7312, lon: 127.6845 },
|
|
{ lat: 34.7315, lon: 127.6840 },
|
|
],
|
|
speedLabels: [
|
|
'11.2 kts · 038°', '11.2 kts · 038°', '11.2 kts · 038°',
|
|
'11.2 kts · 038°', '11.2 kts · 038°', '11.2 kts · 038°',
|
|
'3.4 kts · 038°', '0.5 kts · 정지', '0.5 kts · 정지',
|
|
],
|
|
},
|
|
{
|
|
vesselName: 'DONG JIN STAR',
|
|
color: '#64788c',
|
|
path: [
|
|
{ lat: 34.82, lon: 127.52 },
|
|
{ lat: 34.80, lon: 127.53 },
|
|
{ lat: 34.78, lon: 127.54 },
|
|
{ lat: 34.76, lon: 127.55 },
|
|
{ lat: 34.74, lon: 127.56 },
|
|
{ lat: 34.72, lon: 127.57 },
|
|
{ lat: 34.70, lon: 127.58 },
|
|
{ lat: 34.68, lon: 127.59 },
|
|
{ lat: 34.66, lon: 127.60 },
|
|
],
|
|
speedLabels: [
|
|
'10.5 kts · 180°', '10.5 kts · 180°', '10.5 kts · 180°',
|
|
'10.5 kts · 180°', '10.5 kts · 180°', '10.5 kts · 180°',
|
|
'10.5 kts · 180°', '10.5 kts · 180°', '10.5 kts · 180°',
|
|
],
|
|
},
|
|
]
|
|
|
|
export const MOCK_COLLISION: CollisionEvent = {
|
|
position: { lat: 34.7312, lon: 127.6845 },
|
|
timeLabel: '06:28 충돌',
|
|
progressPercent: 75,
|
|
}
|