Closed jizerozz closed 6 days ago
이 PR은 전략 세부 정보 페이지의 기본 정보를 위한 MSW(Mock Service Worker)를 구현합니다. 변경 사항에는 API 목(mock) 설정, 날짜 형식화 유틸리티 추가, 새로운 데이터 구조와 함께 작동하도록 전략 세부 구성 요소 리팩토링이 포함됩니다. 이 구현은 실제 API 엔드포인트 및 TanStack Query와의 향후 통합을 준비합니다.
sequenceDiagram
participant User
participant StrategyDetailPage
participant useFetchStrategyDetail
participant API
User->>StrategyDetailPage: 전략 세부 정보 페이지에 접근
StrategyDetailPage->>useFetchStrategyDetail: strategyId로 훅 호출
useFetchStrategyDetail->>API: fetchDefaultStrategyDetail(strategyId)
API-->>useFetchStrategyDetail: 전략 데이터 반환
useFetchStrategyDetail-->>StrategyDetailPage: 전략 데이터 제공
StrategyDetailPage-->>User: 전략 세부 정보 표시
classDiagram
class StrategyDetailPage {
+useFetchStrategyDetail(strategyId: string)
}
class StrategyTitleSection {
+id: number
+title: string
+traderId: string
+traderName: string
+imgUrl: string
+date: string
+followers: number
+minimumInvestment: string
+lastUpdatedDate: string
}
class StrategyContent {
+content: string
}
class useFetchStrategyDetail {
+strategy: StrategyDetailRes
}
class StrategyDetailRes {
+tradingTypeName: string
+tradingTypeIcon: string
+strategyIACEntities: InvestmentAssetClass[]
+tradingCycleName: string
+tradingCycleIcon: string
+traderId: string
+traderName: string
+traderImage: string
+strategyId: number
+strategyTitle: string
+minInvestmentAmout: string
+strategyOverview: string
+followersCount: number
+writedAt: string
+isPosted: 'Y' | 'N'
+isGranted: 'Y' | 'N'
}
StrategyDetailPage --> useFetchStrategyDetail
StrategyTitleSection --> StrategyDetailRes
StrategyContent --> StrategyDetailRes
변경 사항 | 세부 사항 | 파일 |
---|---|---|
전략 세부 데이터에 대한 MSW 핸들러 구현 |
|
src/mocks/handlers/strategyDetail.handlers.ts src/mocks/handlers/index.ts |
전략 세부 정보에 대한 API 통합 레이어 추가 |
|
src/api/strategyDetail.ts src/hooks/useFetchStrategyDetail.ts |
전략 세부 페이지 구성 요소 리팩토링 |
|
src/pages/strategy/StrategyDetailPage.tsx src/components/page/strategy-detail/StrategyTitleSection.tsx src/components/page/strategy-detail/StrategyContent.tsx |
날짜 형식화 유틸리티 추가 |
|
src/utils/dateFormat.ts |
Name | Link |
---|---|
Latest commit | c4f3376c777c2f8740b2fa0f278a68f6eca1da0b |
Latest deploy log | https://app.netlify.com/sites/sysmetics/deploys/673c6de093346500081e4125 |
Deploy Preview | https://deploy-preview-160--sysmetics.netlify.app |
Preview on mobile | Toggle QR Code...Use your smartphone camera to open QR code link. |
To edit notification comments on pull requests, go to your Netlify site configuration.
🚀 풀 리퀘스트 제안
📋 작업 내용
🔧 변경 사항
주요 변경 사항을 요약해 주세요.
📸 스크린샷 (선택 사항)
수정된 화면 또는 기능을 시연할 수 있는 스크린샷을 첨부해 주세요.
📄 기타
추가적으로 전달하고 싶은 내용이나 특별한 요구 사항이 있으면 작성해 주세요.
Sourcery에 의한 요약
초기 데이터를 처리하기 위해 전략 세부 페이지에 MSW를 적용하고, 전략 세부 정보를 가져오는 새로운 훅을 구현합니다. 날짜 형식을 위한 유틸리티 함수를 도입하고, 이러한 새로운 기능을 활용하도록 컴포넌트를 업데이트합니다.
새로운 기능:
개선 사항:
테스트:
Original summary in English
## Summary by Sourcery Apply MSW to the strategy detail page for handling initial data and implement a new hook for fetching strategy details. Introduce a utility function for date formatting and update components to utilize these new features. New Features: - Introduce a new hook, useFetchStrategyDetail, to fetch strategy details using a strategy ID. - Add a new utility function, formatDate, to format timestamps into human-readable date strings. Enhancements: - Refactor StrategyDetailPage to use the new useFetchStrategyDetail hook for fetching strategy details. - Update StrategyTitleSection to include additional fields such as minimum investment and last updated date. Tests: - Add mock handlers for strategy detail API requests to support testing with MSW.