Skip to content

Conversation

@codemario318
Copy link
Collaborator

  • 사용성 개선 배포

codemario318 and others added 30 commits December 4, 2024 11:13
- compilerOptions에 lib 배열 추가
  - webworker: 웹 워커 API 타입 지원
  - es2015: ES2015(ES6) 기능 지원
- worker 설정 추가
  - format을 'es'로 지정하여 ES 모듈 형식의 웹 워커 지원
- 타이머 기능을 웹 워커로 구현하여 메인 스레드와 분리
- 주요 기능:
  - 타이머 시작/정지/리셋 기능 구현
  - 서버 시간 동기화 지원
  - 타이머 일시정지 및 재개 기능
  - 0.1초 단위 정확도로 시간 계산
- TimerMessage 인터페이스 추가
  - START, STOP, RESET 메시지 타입 정의
  - duration, serverTime 페이로드 정의
- TimerResponse 인터페이스 추가
  - TICK, COMPLETE 응답 타입 정의
  - time 페이로드 정의
- setInterval 방식에서 웹 워커 기반으로 변경하여 정확도 개선
- 새로운 기능 추가:
  - 정지(stop) 기능 추가
  - 리셋(reset) 기능 추가
  - isRunning 상태 제공
  - 서버 시간 동기화 지원
- 웹 워커 생명주기 관리 로직 추가
  - 컴포넌트 언마운트 시 워커 정리
  - 중복 워커 생성 방지
- useTimer 훅을 사용하여 타이머 기능 구현
- 컴포넌트 타입 개선
  - currentQuiz 타입을 CurrentQuiz로 명시
  - 불필요한 playTime prop 제거
- ProgressBar 컴포넌트 props 변경
  - deadlineTime을 time과 playTime으로 분리
- 타이머 자동 시작 기능 추가
- 컴포넌트 인터페이스 변경
  - deadlineTime prop을 playTime과 time으로 분리
  - 타이머 훅과 직접 연동되도록 개선
- 내부 로직 단순화
  - 상태 관리 로직 제거 (타이머 훅으로 이관)
  - setInterval 로직 제거
  - 불필요한 refs 제거
- 진행도 계산 로직 개선
  - 밀리초 단위 변환 적용
  - 최소/최대값 범위 보정
# Conflicts:
#	apps/frontend/src/hook/quizZone/useQuizZone.tsx
방장 나가기 발생했을 때 소켓 연결 끊음 처리 및 얼럿 노출
krokerdile and others added 21 commits December 5, 2024 17:02
- web worker 빌드 옵션 추가
- hash 값 추가
chore: 디렉토리 경로 clean 옵션 추가
fix: 퀴즈셋 검색 시 추천 퀴즈가 앞으로 오도록 수정
…gress-time

Fix/use timer return progress time
@codemario318 codemario318 merged commit 5085d12 into main Dec 5, 2024
6 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🌏 Deploy 배포 관련

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants